:root{
    --bg:#080b0f;
    --bg2:#0d1218;
    --panel:#11171e;
    --panel2:#151c24;
    --line:#27313b;
    --gold:#c8923d;
    --gold2:#e0b568;
    --text:#f4f0e8;
    --muted:#9ca7b2;
    --success:#64c58c;
    --max:1180px;
}

*{box-sizing:border-box}

html{
    scroll-behavior:smooth;
    background:var(--bg);
}

body{
    margin:0;
    color:var(--text);
    background:
        radial-gradient(circle at 85% 10%,rgba(200,146,61,.08),transparent 22%),
        var(--bg);
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    line-height:1.6;
}

a{color:inherit;text-decoration:none}
button{font:inherit}

.container{
    width:min(var(--max),calc(100% - 40px));
    margin:0 auto;
}

.site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:50;
    border-bottom:1px solid transparent;
    transition:.2s;
}

.site-header.scrolled{
    background:rgba(7,10,14,.92);
    border-bottom-color:rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
}

.nav-wrap{
    min-height:78px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.brand{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    line-height:1;
}

.brand-stars{
    color:var(--gold);
    font-size:8px;
    letter-spacing:.55em;
    margin:0 0 4px 6px;
}

.brand-title{
    font-family:Georgia,serif;
    font-style:italic;
    font-size:24px;
    font-weight:700;
}

.brand-title b{color:var(--gold2)}

.site-nav{
    display:flex;
    align-items:center;
    gap:26px;
}

.site-nav a{
    color:#c6ccd1;
    font-size:13px;
    font-weight:700;
}

.site-nav a:hover{color:#fff}

.site-nav .nav-cta{
    padding:9px 14px;
    border:1px solid rgba(200,146,61,.55);
    border-radius:8px;
    color:#fff6e7;
    background:rgba(200,146,61,.09);
}

.nav-toggle{
    display:none;
    width:42px;
    height:42px;
    border:1px solid #313b45;
    border-radius:8px;
    background:#0d1319;
    cursor:pointer;
    padding:9px;
}

.nav-toggle span{
    display:block;
    height:2px;
    background:#fff;
    margin:4px 0;
}

.hero{
    position:relative;
    min-height:780px;
    display:flex;
    align-items:center;
    overflow:hidden;
}

.hero-bg{
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 74% 29%,rgba(223,169,91,.16),transparent 20%),
        linear-gradient(180deg,#0a1621 0%,#111820 43%,#0a0f13 100%);
}

.sun{
    position:absolute;
    width:330px;
    height:330px;
    border-radius:50%;
    right:14%;
    top:17%;
    background:radial-gradient(circle,rgba(235,183,106,.16),rgba(235,183,106,.03) 55%,transparent 70%);
    filter:blur(2px);
}

.mountain{
    position:absolute;
    left:-5%;
    right:-5%;
    bottom:24%;
    height:34%;
    background:#0a1117;
    clip-path:polygon(0 70%,10% 49%,19% 60%,28% 32%,37% 59%,48% 35%,59% 61%,69% 31%,79% 57%,89% 39%,100% 64%,100% 100%,0 100%);
}

.mountain-b{
    opacity:.55;
    transform:translateY(48px) scaleX(1.08);
    background:#101820;
}

.city{
    position:absolute;
    left:0;
    right:0;
    bottom:8%;
    height:30%;
    opacity:.8;
    background:
        linear-gradient(90deg,
        transparent 0 4%,#070d12 4% 9%,transparent 9% 13%,
        #081016 13% 18%,transparent 18% 23%,#091117 23% 29%,
        transparent 29% 33%,#071016 33% 39%,transparent 39% 44%,
        #091117 44% 51%,transparent 51% 56%,#081016 56% 64%,
        transparent 64% 69%,#071016 69% 75%,transparent 75% 81%,
        #091117 81% 88%,transparent 88% 93%,#071016 93% 100%);
}

.city-b{
    opacity:.16;
    background-image:radial-gradient(circle,#e6b263 0 1px,transparent 1.4px);
    background-size:49px 31px;
}

.road{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:15%;
    background:linear-gradient(180deg,#080c10,#050709);
}

.overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(4,8,11,.88) 0%,rgba(4,8,11,.58) 40%,rgba(4,8,11,.18) 70%,rgba(4,8,11,.45) 100%),
        linear-gradient(180deg,rgba(5,8,12,.1),rgba(5,8,12,.5));
}

.hero-content{
    position:relative;
    z-index:2;
    padding-top:90px;
}

.hero-kicker,
.section-kicker{
    color:var(--gold2);
    font-size:11px;
    font-weight:900;
    letter-spacing:.22em;
}

.hero h1{
    max-width:760px;
    margin:12px 0 18px;
    font-size:clamp(46px,7vw,88px);
    line-height:.98;
    letter-spacing:-.04em;
}

.hero h1 span{
    display:block;
    color:var(--gold2);
}

.hero p{
    max-width:670px;
    margin:0;
    color:#c1c8ce;
    font-size:18px;
}

.hero-actions{
    display:flex;
    gap:11px;
    flex-wrap:wrap;
    margin-top:28px;
}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:12px 17px;
    border-radius:8px;
    border:1px solid #34404b;
    font-size:13px;
    font-weight:900;
    transition:.15s;
}

.btn:hover{transform:translateY(-1px);filter:brightness(1.08)}

.btn-primary{
    border-color:#b77e2c;
    background:linear-gradient(90deg,#775720,#b77e2b);
    color:#fff7e8;
}

.btn-secondary{
    background:rgba(13,19,25,.72);
    color:#f4f4f2;
}

.btn-large{
    padding:14px 20px;
    white-space:nowrap;
}

.hero-facts{
    display:flex;
    gap:34px;
    flex-wrap:wrap;
    margin-top:55px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.1);
    max-width:800px;
}

.hero-facts div{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.hero-facts strong{font-size:13px}
.hero-facts span{color:#929da8;font-size:11px}

.section{
    padding:100px 0;
}

.section-dark{
    background:#0b1015;
    border-top:1px solid #171e26;
    border-bottom:1px solid #171e26;
}

.split{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:80px;
    align-items:start;
}

h2{
    margin:7px 0 20px;
    font-size:clamp(34px,5vw,55px);
    line-height:1.05;
    letter-spacing:-.035em;
}

.lead{
    font-size:18px;
    color:#d1d5d7;
}

.section p{color:var(--muted)}

.info-card{
    padding:24px;
    border:1px solid #2b3540;
    border-radius:13px;
    background:linear-gradient(180deg,#111820,#0c1218);
}

.info-card-head{
    display:flex;
    align-items:center;
    gap:8px;
    padding-bottom:16px;
    border-bottom:1px solid #28313a;
}

.status-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--success);
    box-shadow:0 0 9px var(--success);
}

.info-row{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:12px 0;
    border-bottom:1px solid #222b34;
    font-size:13px;
}

.info-row span{color:var(--muted)}

.text-link{
    display:inline-block;
    margin-top:18px;
    color:var(--gold2);
    font-weight:800;
    font-size:13px;
}

.section-heading{
    max-width:760px;
    margin-bottom:38px;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}

.feature-card{
    min-height:230px;
    padding:22px;
    border:1px solid #28323c;
    border-radius:12px;
    background:linear-gradient(180deg,#111820,#0d1319);
}

.feature-number{
    color:var(--gold2);
    font-size:11px;
    font-weight:900;
    letter-spacing:.1em;
}

.feature-card h3{
    margin:30px 0 9px;
    font-size:19px;
}

.feature-card p{
    margin:0;
    font-size:14px;
}

.community-box{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:50px;
    padding:40px;
    border:1px solid rgba(200,146,61,.35);
    border-radius:16px;
    background:
        radial-gradient(circle at 100% 0,rgba(200,146,61,.11),transparent 32%),
        #10161d;
}

.community-box h2{margin-bottom:10px}
.community-box p{max-width:700px}

.cta-band{
    border-top:1px solid #242e38;
    border-bottom:1px solid #242e38;
    background:#0c1117;
}

.cta-band-inner{
    min-height:120px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
}

.cta-band-inner div{
    display:flex;
    flex-direction:column;
}

.cta-band-inner span{
    color:var(--gold2);
    font-size:10px;
    font-weight:900;
    letter-spacing:.18em;
}

.cta-band-inner strong{
    font-size:22px;
}

.cta-band-inner a{
    color:var(--gold2);
    font-weight:900;
}

.site-footer{
    padding:40px 0 24px;
    background:#06090c;
}

.footer-inner{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:25px;
}

.footer-inner>div:first-child{
    display:flex;
    flex-direction:column;
}

.footer-inner span{
    color:#7f8a95;
    font-size:12px;
}

.footer-links{
    display:flex;
    gap:20px;
    font-size:12px;
    color:#bac1c7;
}

.legal-note{
    margin-top:30px;
    padding-top:20px;
    border-top:1px solid #181f26;
}

.legal-note p{
    margin:0;
    color:#68737d;
    font-size:11px;
}

@media(max-width:900px){
    .feature-grid{grid-template-columns:1fr 1fr}
    .split{grid-template-columns:1fr;gap:35px}
    .community-box{align-items:flex-start;flex-direction:column}
}

@media(max-width:720px){
    .nav-toggle{display:block}

    .site-nav{
        display:none;
        position:absolute;
        top:68px;
        left:20px;
        right:20px;
        padding:14px;
        flex-direction:column;
        align-items:stretch;
        gap:4px;
        border:1px solid #2b3540;
        border-radius:10px;
        background:#0b1117;
    }

    .site-nav.open{display:flex}

    .site-nav a{
        padding:10px;
        border-radius:6px;
    }

    .hero{
        min-height:720px;
    }

    .hero h1{
        font-size:53px;
    }

    .hero p{
        font-size:16px;
    }

    .hero-facts{
        gap:20px;
    }

    .feature-grid{grid-template-columns:1fr}

    .cta-band-inner,
    .footer-inner{
        align-items:flex-start;
        flex-direction:column;
        padding-top:24px;
        padding-bottom:24px;
    }
}

@media(max-width:480px){
    .container{width:min(var(--max),calc(100% - 28px))}
    .hero h1{font-size:43px}
    .section{padding:75px 0}
    .community-box{padding:26px}
}

/* Rechtliche Seiten v2 */
.legal-main{padding-top:78px;min-height:75vh}
.legal-hero{
    padding:72px 0 48px;
    border-bottom:1px solid #1d252d;
    background:
      radial-gradient(circle at 80% 10%,rgba(200,146,61,.10),transparent 25%),
      #0b1015;
}
.legal-hero h1{
    margin:7px 0 8px;
    font-size:clamp(42px,7vw,70px);
    line-height:1;
    letter-spacing:-.04em;
}
.legal-hero p{margin:0;color:var(--muted);max-width:720px}
.legal-section{padding-top:55px}
.legal-content{max-width:900px}
.legal-card{
    margin-bottom:18px;
    padding:28px;
    border:1px solid #28323c;
    border-radius:13px;
    background:linear-gradient(180deg,#111820,#0d1319);
}
.legal-card h2{
    margin:0 0 14px;
    font-size:25px;
    letter-spacing:-.02em;
}
.legal-card h3{
    margin:24px 0 8px;
    font-size:16px;
    color:#f0d3a2;
}
.legal-card p,.legal-card li,.legal-card address{
    color:#aab3bb;
    font-size:14px;
}
.legal-card address{font-style:normal}
.legal-card ul{padding-left:20px}
.legal-card li{margin:7px 0}
.legal-nav{display:flex!important}
@media(max-width:720px){
  .legal-nav{position:static;display:flex!important;flex-direction:row;padding:0;border:0;background:none}
  .legal-nav a{font-size:11px;padding:5px}
  .legal-nav a:first-child{display:none}
  .legal-card{padding:20px}
}
