/* =====================================================
HEIMATKURVE
STYLE.CSS
TEIL 1
Reset • Grundlayout • Navigation • Hero
===================================================== */

/* ---------- RESET ---------- */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
overflow-x:hidden;
}

body{
font-family:Arial, Helvetica, sans-serif;
background:#0f1823;
color:#fff;
line-height:1.7;
overflow-x:hidden;
}

/* ---------- CONTAINER ---------- */

.container{
width:min(1200px,90%);
margin:auto;
}

/* ---------- ALLGEMEIN ---------- */

a{
color:inherit;
text-decoration:none;
}

img{
display:block;
max-width:100%;
height:auto;
}

/* ---------- NAVIGATION ---------- */

.navbar{
position:fixed;
top:20px;
left:50%;
transform:translateX(-50%);

width:min(1200px,92%);
height:72px;

display:flex;
justify-content:center;
align-items:center;

padding:0 35px;

background:rgba(10,18,30,.72);
backdrop-filter:blur(18px);
-webkit-backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.08);
border-radius:999px;

box-shadow:0 10px 35px rgba(0,0,0,.30);

z-index:1000;
}

.logo{
display:flex;
align-items:center;
}

.logo img{
width:125px;
transition:.3s;
}

.logo:hover img{
transform:scale(1.05);
}

/* ---------- MENÜ ---------- */

.menu{
display:flex;
gap:40px;
list-style:none;
align-items:center;
}

.menu a{
color:#fff;
font-size:16px;
font-weight:600;
transition:.3s;
}

.menu a:hover{
color:#00c8ff;
}

.menu-toggle{
display:none;
background:none;
border:none;
color:#fff;
font-size:40px;
cursor:pointer;
}

/* ---------- HERO ---------- */


.hero-logo{
position:absolute;
top:30px;
left:40px;
z-index:1000;
}

.hero-logo img{
width:200px;
height:auto;
filter:drop-shadow(0 0 22px rgba(0,140,255,.55));
transition:.3s;
}

.hero-logo img:hover{
transform:scale(1.05);
}

.hero{

position:relative;

min-height:100vh;

background:

linear-gradient(
rgba(0,0,0,.68),
rgba(0,0,0,.80)
),

url("../hero/IMG_1796.jpeg");

background-size:cover;
background-position:center;
background-repeat:no-repeat;
}

.hero-content{
padding-top:150px;
max-width:900px;

margin:auto;

display:flex;
flex-direction:column;

justify-content:center;
align-items:center;

text-align:center;

z-index:5;
}

.eyebrow{

color:#f0c86a;
letter-spacing:2px;
text-transform:uppercase;
margin-bottom:18px;
}

.hero-content h1{

font-size:6rem;

font-weight:900;

letter-spacing:3px;

text-transform:uppercase;

margin-bottom:25px;

text-shadow:
0 8px 25px rgba(0,0,0,.55);
}
.hero h2{

font-size:2rem;
color:#f0c86a;
margin-top: 10px;
margin-bottom:30px;
}

.hero p{

max-width:700px;

margin-bottom:45px;

color:#d5dde6;
}

/* ---------- BUTTONS ---------- */

.buttons{

display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{

min-width:220px;

padding:16px 34px;

border-radius:40px;

font-weight:bold;

text-align:center;

transition:.3s;
}

.btn-primary{

background:#00c8ff;
color:#fff;
}

.btn-primary:hover{

background:#009fd1;
transform:translateY(-4px);
}

.btn-secondary{

border:2px solid #f0c86a;
color:#f0c86a;
}

.btn-secondary:hover{

background:#f0c86a;
color:#111;
}

/* ---------- SEKTIONEN ---------- */

section{
padding:110px 0;
}

.section-title{
margin-bottom:50px;
}

.section-title span{

color:#f0c86a;
text-transform:uppercase;
letter-spacing:2px;
font-size:.9rem;
}

.section-title h2{

font-size:3rem;
margin:15px 0 20px;
}

.section-title p{

max-width:700px;
margin: 0 auto;
text-align: center;
color:#d5dde6;
}
/* =====================================================
HEIMATKURVE
STYLE.CSS
TEIL 2
Podcast • Wohnzimmer • Plattformen • Galerie
===================================================== */

/* ---------- PODCAST ---------- */

.episode-card{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.episode-image img{
width:100%;
border-radius:20px;
box-shadow:0 20px 45px rgba(0,0,0,.35);
}

.episode-number{
display:block;
margin-bottom:15px;
color:#00c8ff;
font-weight:bold;
}

.episode-content h3{
font-size:2rem;
margin-bottom:20px;
}

.episode-content p{
color:#d5dde6;
margin-bottom:35px;
}

/* ---------- WOHNZIMMER ---------- */

.living-room{
background:#142131;
}

.living-grid{
display:grid;
grid-template-columns:1.1fr 1fr;
gap:70px;
align-items:center;
}

.living-image{
overflow:hidden;
border-radius:22px;
box-shadow:0 20px 45px rgba(0,0,0,.35);
}

.living-image img{
width:100%;
transition:.4s;
}

.living-image:hover img{
transform:scale(1.05);
}

.living-text{
background:#1a2b3d;
padding:45px;
border-radius:22px;
}

.living-text span{
color:#f0c86a;
text-transform:uppercase;
letter-spacing:3px;
font-size:.9rem;
font-weight:bold;
}

.living-text h2{
font-size:3rem;
margin:20px 0;
}

.living-text p{
color:#d5dde6;
margin-bottom:20px;
}

/* ---------- PLATTFORMEN ---------- */

.section-title{text-align:center;
                margin:0 auto 50px;}

.social{
background:#101b29;
}

.platform-grid{
display:flex;
justify-content:center;
margin-top:60px;
}

.platform-card{

width:220px;
height:220px;

display:flex;
justify-content:center;
align-items:center;

background:linear-gradient(180deg,#1b2b3d,#132131);

border:1px solid rgba(255,255,255,.08);
border-radius:28px;

transition:.35s;
}

.platform-card:hover{

transform:translateY(-8px);

border-color:#00c8ff;

box-shadow:0 20px 45px rgba(0,200,255,.25);
}

.platform-logo{

width:110px;
height:110px;

object-fit:contain;
}

.platform-card h3,
.platform-card p{
   display:none;
}

/* ---------- GALERIE ---------- */

.gallery{
background:#142131;
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:25px;
margin-top:50px;
}

.gallery-grid img{
width:100%;
aspect-ratio:4/3;
object-fit:cover;
border-radius:20px;
transition:.35s;
cursor:pointer;
box-shadow:0 20px 45px rgba(0,0,0,.35);
}

.gallery-grid img:hover{
transform:scale(1.03);
}

/* ---------- SOCIAL ---------- */

.social{
text-align:center;
}

.social .platform-grid{
margin-top:40px;
}

/* ---------- ÜBER UNS ---------- */

.about p{
max-width:850px;
margin:auto;
color:#d5dde6;
font-size:1.1rem;
}

/* ---------- KONTAKT ---------- */

.contact{
background:#101b29;
}

.contact-form{
max-width:700px;
margin:50px auto 0;
display:flex;
flex-direction:column;
gap:20px;
}

.contact-form input,
.contact-form textarea{
width:100%;
padding:18px;
border-radius:12px;
border:1px solid rgba(255,255,255,.08);
background:#162333;
color:#fff;
font-size:1rem;
}

.contact-form input:focus,
.contact-form textarea:focus{
outline:none;
border-color:#00c8ff;
}
/* =====================================================
HEIMATKURVE
STYLE.CSS
TEIL 3
Footer • Story • Responsive
===================================================== */

/* ---------- FOOTER ---------- */

footer{
background:#08111c;
margin-top:120px;
padding:80px 0 35px;
}

.footer-grid{
display:grid;
grid-template-columns:2fr 1fr 1fr;
gap:50px;
}

.footer-logo{
width:90px;
margin-bottom:20px;
}

footer h3{
margin-bottom:20px;
}

footer ul{
list-style:none;
}

footer li{
margin-bottom:12px;
}

footer a{
transition:.3s;
}

footer a:hover{
color:#00c8ff;
}

.copyright{
border-top:1px solid rgba(255,255,255,.08);
margin-top:50px;
padding-top:30px;
text-align:center;
}

.copyright h3{
color:#f0c86a;
margin:15px 0;
}

/* ---------- STORY ---------- */

.story{
min-height:100vh;

background:
linear-gradient(rgba(8,15,25,.78),
rgba(8,15,25,.90)),
url("../images/wohnzimmer.jpg");

background-size:cover;
background-position:center;

display:flex;
align-items:center;
}

.story-overlay{
width:min(700px,90%);
margin-left:10%;
color:#fff;
}

.story span{
color:#f0c86a;
text-transform:uppercase;
letter-spacing:3px;
font-weight:bold;
}

.story h2{
font-size:3.5rem;
margin:20px 0 30px;
}

.story p{
font-size:1.15rem;
line-height:1.9;
color:#f2f2f2;
margin-bottom:20px;
}

/* ---------- STORY NAV ---------- */

.story-nav{
position:fixed;
top:20px;
left:50%;
transform:translateX(-50%);

width:min(1200px,92%);

display:flex;
justify-content:space-between;
align-items:center;

z-index:1000;
}

.story-logo img{
width:65px;
}

.back-home{
background:rgba(0,0,0,.45);
backdrop-filter:blur(10px);

color:#fff;

padding:12px 22px;

border-radius:40px;

transition:.3s;
}

.back-home:hover{
background:#00c8ff;
color:#08111c;
}

/* ---------- SCROLLBAR ---------- */

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#0f1823;
}

::-webkit-scrollbar-thumb{
background:#00c8ff;
border-radius:20px;
}

/* ---------- ANIMATION ---------- */

section{
animation:fadeUp .8s ease both;
}

@keyframes fadeUp{

from{
opacity:0;
transform:translateY(40px);
}

to{
opacity:1;
transform:translateY(0);
}

}

/* =====================================================
RESPONSIVE
===================================================== */

@media (max-width:1000px){

.episode-card,
.living-grid,
.footer-grid{
grid-template-columns:1fr;
}

.hero h1{
font-size:3.6rem;
}

.story-overlay{
margin:0 auto;
text-align:center;
}

}

@media (max-width:700px){

/* ---------- NAVIGATION ---------- */

.navbar{
top: 15px;
width:95%;
height:64px;

padding:0 22px;
}

.logo img{
width:110px;
}

.menu-toggle{

display:block;

background:none;
border:none;

color:#fff;

font-size:38px;

cursor:pointer;
}

.menu{
display:none;
}

.menu.active{

display:flex;

flex-direction:column;

position:absolute;

top:90px;
left:15px;
right:15px;

padding:25px;

background:rgba(10,18,35,.96);

border-radius:24px;

gap:18px;

text-align:center;

z-index:2000;
}

.menu.active a{

color:#fff;

font-size:18px;

font-weight:600;
}

/* ---------- HERO ---------- */

.hero-content{

padding:140px 20px 50px;
}
.hero-logo{
top:60px;
left:50%;
transform:translateX(-50%);
}

.hero-logo img{
width:90px;
}
.hero h1{
font-size:2.3rem;
}

.hero h2{
font-size:1.2rem;
}

.hero p{
font-size:1rem;
}

.buttons{

flex-direction:column;
gap: 16px;
width:100%;
align-items:center;
}

.btn-primary,
.btn-secondary{
width:100%;
max-width:320px;
}

/* ---------- WOHNZIMMER ---------- */

.living-text{
padding:30px;
}

.living-text h2{
font-size:2.2rem;
}

/* ---------- STORY ---------- */

.story{
background-attachment:scroll;
}

.story-overlay{

width:90%;

margin:auto;

text-align:center;
}

.story h2{
font-size:2.3rem;
}

.story p{
font-size:1rem;
}

}