*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;scroll-behavior:smooth;}
.skip-link{position:absolute;top:-3rem;left:0;background:var(--accent);color:var(--deep);padding:.5rem 1rem;font-family:var(--fh);font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;z-index:99999;transition:top .2s;border-radius:0 0 var(--rc) 0;}.skip-link:focus{top:0;}
body{font-family:var(--fb);color:var(--text);background:var(--bg);line-height:1.7;overflow-x:hidden;transition:background .4s,color .4s;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.2rem;}
@media(min-width:768px){.container{padding:0 2rem;}}

:root{--deep:#0a1628;--mid:#0f2a4a;--blue:#1a4f8a;--horizon:#2d87cc;--accent:#e8a020;--accent2:#f5c35a;--bg:#fff;--surface:#eef4fb;--text:#0d1f3c;--muted:#5a7a9a;--brd:rgba(45,135,204,.15);--fd:'Bebas Neue',sans-serif;--fh:'Barlow Condensed',sans-serif;--fb:'Lato',sans-serif;--rb:999px;--rc:14px;--footer:#050f1e;--hero-ov:linear-gradient(155deg,rgba(10,22,40,.86) 0%,rgba(10,22,40,.38) 65%,rgba(10,22,40,.1) 100%);--cta-ov:linear-gradient(135deg,rgba(10,22,40,.93),rgba(26,79,138,.82));--hero-transition:1.2s;--hero-zoom:1.10;}
[data-theme="nacht"]{--deep:#040a1a;--mid:#081428;--blue:#0c2048;--horizon:#1a8cff;--accent:#3da8ff;--accent2:#70c0ff;--bg:#060e1e;--surface:#0c1628;--text:#c8d8f0;--muted:#5878a8;--brd:rgba(26,140,255,.12);--rb:999px;--rc:14px;--footer:#030810;--hero-ov:linear-gradient(155deg,rgba(4,10,26,.80) 0%,rgba(4,10,26,.32) 65%,rgba(4,10,26,.05) 100%);--cta-ov:linear-gradient(135deg,rgba(4,10,26,.94),rgba(12,32,72,.85));}
[data-theme="arktis"]{--deep:#0a1a2e;--mid:#122840;--blue:#1e3a5c;--horizon:#5a9cc0;--accent:#88c8e8;--accent2:#a8d8f0;--bg:#f4f8fc;--surface:#e4eef6;--text:#0e1e30;--muted:#5a7a96;--brd:rgba(90,156,192,.15);--rb:6px;--rc:10px;--footer:#08121e;--hero-ov:linear-gradient(155deg,rgba(10,26,46,.88) 0%,rgba(10,26,46,.40) 65%,rgba(10,26,46,.06) 100%);--cta-ov:linear-gradient(135deg,rgba(10,26,46,.94),rgba(30,58,92,.85));}
[data-theme="sommer"]{--deep:#083050;--mid:#0e4878;--blue:#1a6aaa;--horizon:#3a94d8;--accent:#f0b828;--accent2:#fad058;--bg:#f8fbff;--surface:#e8f2ff;--text:#083050;--muted:#4a7090;--brd:rgba(58,148,216,.15);--rb:8px;--rc:20px;--footer:#050f20;--hero-ov:linear-gradient(155deg,rgba(8,48,80,.88) 0%,rgba(8,48,80,.4) 65%,rgba(8,48,80,.08) 100%);--cta-ov:linear-gradient(135deg,rgba(8,48,80,.93),rgba(26,106,170,.82));}
[data-theme="azur"]{--deep:#04182e;--mid:#082a4c;--blue:#0d4278;--horizon:#0090d0;--accent:#00b4f0;--accent2:#40ccff;--bg:#f0f8ff;--surface:#dceefb;--text:#06182c;--muted:#3a6888;--brd:rgba(0,144,208,.14);--rb:999px;--rc:16px;--footer:#041018;--hero-ov:linear-gradient(155deg,rgba(4,24,46,.86) 0%,rgba(4,24,46,.38) 65%,rgba(4,24,46,.06) 100%);--cta-ov:linear-gradient(135deg,rgba(4,24,46,.93),rgba(13,66,120,.82));}
[data-theme="sfc"]{--deep:#001e3c;--mid:#002f5e;--blue:#004a94;--horizon:#0075c9;--accent:#0075c9;--accent2:#3399e0;--bg:#f0f7ff;--surface:#daeaf8;--text:#001e3c;--muted:#3a6080;--brd:rgba(0,117,201,.14);--rb:999px;--rc:16px;--footer:#001020;--hero-ov:linear-gradient(155deg,rgba(0,30,60,.86) 0%,rgba(0,30,60,.38) 65%,rgba(0,30,60,.06) 100%);--cta-ov:linear-gradient(135deg,rgba(0,30,60,.93),rgba(0,74,148,.82));}

/* THEME SWITCHER – dezent */
.ts-wrap{position:fixed;bottom:1rem;right:1rem;z-index:9999;font-family:'Barlow Condensed',sans-serif;opacity:.22;transition:opacity .3s;}
.ts-wrap:hover{opacity:1;}
.ts-toggle{display:flex;align-items:center;gap:.35rem;background:rgba(5,10,22,.75);color:rgba(255,255,255,.7);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.38rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.15);cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.3);transition:background .2s;}
.ts-toggle:hover{background:rgba(5,10,22,.95);color:#fff;}
.ts-panel{position:absolute;bottom:2.6rem;right:0;background:rgba(5,10,22,.97);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:.75rem;width:190px;display:none;flex-direction:column;gap:.25rem;box-shadow:0 16px 40px rgba(0,0,0,.6);}
.ts-panel.open{display:flex;}
.ts-ttl{font-size:.58rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.28);padding:.1rem .35rem .45rem;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:.1rem;}
.ts-opt{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:8px;border:none;cursor:pointer;background:transparent;width:100%;transition:background .15s;text-align:left;}
.ts-opt:hover{background:rgba(255,255,255,.08);}
.ts-opt.active{background:rgba(255,255,255,.12);outline:1px solid rgba(255,255,255,.18);}
.ts-sw{width:22px;height:22px;border-radius:50%;flex-shrink:0;border:2px solid rgba(255,255,255,.15);}
.ts-nm{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;display:block;}
.ts-sb{font-size:.62rem;color:rgba(255,255,255,.35);display:block;}

/* PAGE NAV (Mitgliedschaft etc.) */
.pg-nav{position:sticky;top:64px;z-index:200;background:var(--bg);border-bottom:1px solid var(--brd);margin:0 -1.2rem 2rem;padding:0 1.2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);}
@media(min-width:768px){.pg-nav{top:72px;margin:0 -2rem 2.5rem;padding:0 2rem;}}
/* Scroll offset: header (64px) + pg-nav (~44px) + breathing room (8px) */
.entry-content h2[id],.page-content h2[id],h2[id]{scroll-margin-top:120px;}
@media(min-width:768px){.entry-content h2[id],.page-content h2[id],h2[id]{scroll-margin-top:132px;}}
/* Scroll-Offset für Sections mit Anker-ID (wegen fixed Header) */
section[id]{scroll-margin-top:72px;}
@media(min-width:768px){section[id]{scroll-margin-top:80px;}}
.pg-nav-inner{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;}
.pg-nav-inner::-webkit-scrollbar{display:none;}
.pg-nav-lnk{display:inline-block;padding:.7rem .9rem;font-family:var(--fh);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;}
.pg-nav-lnk:hover{color:var(--horizon);}
.pg-nav-lnk.active{color:var(--horizon);border-bottom-color:var(--horizon);}
@media(min-width:600px){.pg-nav-lnk{padding:.75rem 1.1rem;font-size:.82rem;}}

/* DOWNLOADS */
.download-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:.6rem;margin:1.2rem 0;}
.download-list li{padding:0;margin:0;}
.download-item{display:flex;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--brd);border-radius:var(--rc);padding:.9rem 1.1rem;transition:box-shadow .2s,border-color .2s,background .2s;text-decoration:none;color:inherit;}
.download-item:hover{box-shadow:0 4px 16px rgba(0,0,0,.12);border-color:var(--horizon);background:var(--bg);}
.download-icon{font-size:1.4rem;flex-shrink:0;opacity:.7;}
.download-info{display:inline-flex;flex-direction:column;flex:1;min-width:0;}
.download-info strong{font-size:.93rem;color:var(--text);font-weight:700;}
.download-sub{font-size:.78rem;color:var(--muted);margin-top:.1rem;}

/* HEADER */
.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;transition:background .35s,box-shadow .35s;}
.site-header.scrolled{background:rgba(5,10,22,.97);backdrop-filter:blur(14px);box-shadow:0 2px 24px rgba(0,0,0,.4);}
.hdr-in{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;transition:padding .3s;}
@media(min-width:768px){.hdr-in{padding:1.4rem 2rem;}}
.site-header.scrolled .hdr-in{padding:.85rem 1.2rem;}
.logo-w{display:flex;align-items:center;gap:.6rem;}
.logo-ic{width:72px;height:72px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.logo-ic img{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 1px 6px rgba(0,0,0,.4));}
[data-theme="azur"] .logo-ic img{filter:brightness(1.194) hue-rotate(-10deg) drop-shadow(0 1px 6px rgba(0,0,0,.4));}
.cl-name{font-family:var(--fh);font-size:.85rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;display:block;line-height:1;}
@media(min-width:768px){.cl-name{font-size:.95rem;}}
.main-nav{display:none;}
@media(min-width:900px){.main-nav{display:flex;align-items:center;gap:.1rem;}.main-nav a{color:rgba(255,255,255,.78);font-family:var(--fh);font-size:.86rem;letter-spacing:.07em;text-transform:uppercase;padding:.42rem .8rem;transition:color .25s;position:relative;}.main-nav a::after{content:'';position:absolute;bottom:2px;left:.8rem;right:.8rem;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .3s;}.main-nav a:hover{color:#fff;}.main-nav a:hover::after{transform:scaleX(1);}.nav-cta{background:var(--accent)!important;color:var(--deep)!important;font-weight:700;padding:.5rem 1.1rem!important;border-radius:var(--rb)!important;margin-left:.4rem;}.nav-cta::after{display:none!important;}.nav-cta:hover{background:var(--accent2)!important;}}
.mob-btn{display:flex;flex-direction:column;gap:5px;padding:.5rem;cursor:pointer;background:none;border:none;}
.mob-btn span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;}
@media(min-width:900px){.mob-btn{display:none;}}
.mob-nav{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(5,10,22,.98);z-index:1100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;transform:translateX(100%);transition:transform .35s ease;}
.mob-nav.open{transform:translateX(0);}
.mob-nav a{font-family:var(--fd);font-size:2.2rem;letter-spacing:.08em;color:rgba(255,255,255,.85);}
.mob-nav a:hover{color:var(--accent);}
.mob-close{position:absolute;top:1.2rem;right:1.2rem;background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer;padding:.5rem;}

/* HERO */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;}
@media(min-width:768px){.hero{align-items:center;}}
.hero-slides{position:absolute;inset:0;}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity var(--hero-transition) ease;will-change:opacity;}
.hero-slide.active{opacity:1;}
@keyframes kb1{0%{transform:scale(1.06) translate(0,0)}100%{transform:scale(var(--hero-zoom)) translate(-2%,-1.5%)}}
@keyframes kb2{0%{transform:scale(1.06) translate(1.5%,1.5%)}100%{transform:scale(var(--hero-zoom)) translate(-1.5%,-1%)}}
@keyframes kb3{0%{transform:scale(1.06) translate(-1.5%,1%)}100%{transform:scale(var(--hero-zoom)) translate(2%,-1.5%)}}
@keyframes kb4{0%{transform:scale(1.06) translate(0,1.5%)}100%{transform:scale(var(--hero-zoom)) translate(-1%,-2%)}}
/* Ken Burns animations assigned via JS — works for any number of slides */
.hero-ov{position:absolute;inset:0;background:var(--hero-ov);z-index:3;}
.hero-gbot{position:absolute;bottom:0;left:0;right:0;height:55%;background:linear-gradient(to top,rgba(0,0,0,.65) 0%,transparent 100%);z-index:4;}
.hero-clouds{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden;}
.cloud-layer{position:absolute;width:300%;height:100%;top:0;left:0;background-repeat:repeat-x;background-size:33.33% auto;opacity:.55;will-change:transform;}
.cloud-layer-1{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200'%3E%3Cpath d='M0,160 Q100,80 200,130 Q280,60 380,110 Q440,50 540,100 Q620,40 720,90 Q800,30 900,80 Q960,40 1060,100 Q1140,60 1200,120 L1200,200 L0,200Z' fill='white' opacity='.12'/%3E%3C/svg%3E");background-position:bottom;animation:cloudDrift1 45s linear infinite;}
.cloud-layer-2{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200'%3E%3Cpath d='M0,140 Q80,100 180,130 Q260,70 360,120 Q420,80 520,110 Q600,60 700,100 Q780,50 880,90 Q940,60 1040,110 Q1120,70 1200,130 L1200,200 L0,200Z' fill='white' opacity='.08'/%3E%3C/svg%3E");background-position:bottom;animation:cloudDrift2 65s linear infinite;}
.cloud-layer-3{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 160'%3E%3Cellipse cx='200' cy='100' rx='120' ry='40' fill='white' opacity='.07'/%3E%3Cellipse cx='600' cy='80' rx='150' ry='45' fill='white' opacity='.06'/%3E%3Cellipse cx='1000' cy='110' rx='100' ry='35' fill='white' opacity='.05'/%3E%3C/svg%3E");top:10%;animation:cloudDrift3 80s linear infinite;opacity:.4;}
@keyframes cloudDrift1{0%{transform:translateX(0)}100%{transform:translateX(-33.33%)}}
@keyframes cloudDrift2{0%{transform:translateX(-33.33%)}100%{transform:translateX(0)}}
@keyframes cloudDrift3{0%{transform:translateX(-10%)}100%{transform:translateX(-43.33%)}}
.hero-c{position:relative;z-index:6;padding:5rem 0 3rem;width:100%;}
@media(min-width:768px){.hero-c{padding:9rem 0 5rem;}}
.hero-badge{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(255,255,255,.28);color:rgba(255,255,255,.82);font-family:var(--fh);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;padding:.32rem .85rem;border-radius:999px;margin-bottom:1.2rem;animation:aIn .7s ease both;}
.hero-title{font-family:var(--fd);font-size:clamp(2rem,7vw,4.5rem);color:#fff;line-height:.95;letter-spacing:.04em;margin-bottom:.35rem;animation:aIn .7s .1s ease both;}
.accent{color:var(--accent);}
.hero-sub{font-family:var(--fh);font-size:clamp(.9rem,3vw,1.5rem);color:rgba(255,255,255,.58);letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.4rem;animation:aIn .7s .18s ease both;}
.hero-desc{max-width:480px;color:rgba(255,255,255,.92);font-size:.97rem;margin-bottom:2rem;animation:aIn .7s .26s ease both;line-height:1.65;}
.hero-acts{display:flex;gap:.75rem;flex-wrap:wrap;animation:aIn .7s .34s ease both;}
.hero-stats{display:inline-flex;gap:1.5rem;margin-top:2.5rem;padding-top:2rem;position:relative;animation:aIn .7s .44s ease both;flex-wrap:wrap;}
.hero-stats::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent);border-radius:2px;}
.hero-stats::after{display:none;}
@media(min-width:768px){.hero-stats{gap:3rem;}}
.stat-n{font-family:var(--fd);font-size:2.2rem;color:var(--accent);line-height:1;display:block;}
.stat-l{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72);}
.hero-dots{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:.5rem;}
.hero-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.35);border:none;cursor:pointer;transition:all .3s;padding:0;}
.hero-dot.active{background:var(--accent);width:20px;border-radius:3px;}
@keyframes aIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}
.scroll-h{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:.4rem;color:rgba(255,255,255,.32);font-family:var(--fh);font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;animation:sh 2.6s ease-in-out infinite;}
.scroll-h::before{content:'';display:block;width:1px;height:30px;background:linear-gradient(to bottom,rgba(255,255,255,.3),transparent);}
@keyframes sh{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}
@media(max-width:767px){.scroll-h{display:none;}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--fh);font-size:.84rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.72rem 1.4rem;border-radius:var(--rb);cursor:pointer;border:none;transition:all .25s;white-space:nowrap;}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.btn-p{background:var(--accent);color:var(--deep);}.btn-p:hover{background:var(--accent2);transform:translateY(-2px);}
[data-theme="nacht"] .btn-p,[data-theme="arktis"] .btn-p,[data-theme="azur"] .btn-p{color:#fff;}
[data-theme="nacht"] .nav-cta,[data-theme="arktis"] .nav-cta,[data-theme="azur"] .nav-cta{color:#fff!important;}
[data-theme="nacht"] .ts-toggle,[data-theme="arktis"] .ts-toggle,[data-theme="azur"] .ts-toggle{color:#fff;}
.btn-o{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);}.btn-o:hover{border-color:#fff;background:rgba(255,255,255,.1);}
.btn-h{background:var(--horizon);color:#fff;}.btn-h:hover{opacity:.9;transform:translateY(-2px);}

/* SECTIONS */
.sec{padding:3rem 0;background:var(--bg);}
@media(min-width:768px){.sec{padding:5rem 0;}}
.hero+.sec{padding-top:2rem;}
@media(min-width:768px){.hero+.sec{padding-top:3rem;}}
.sec-alt{background:var(--surface);}
.sec-lbl{display:inline-block;font-family:var(--fh);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--horizon);margin-bottom:.6rem;}
.sec-title{font-family:var(--fd);font-size:clamp(1.8rem,5vw,3.2rem);line-height:1;letter-spacing:.04em;color:var(--text);margin-bottom:.8rem;}
.sec-intro{color:var(--muted);font-size:1rem;max-width:560px;}
.sec-hd{margin-bottom:2.5rem;}
@media(min-width:768px){.sec-hd{margin-bottom:3rem;}}
.tc{text-align:center;}

/* FEATURE GRID */
.about-inner{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start;}
@media(min-width:900px){.about-inner{grid-template-columns:1fr 2fr;gap:3.5rem;align-items:center;}}
.about-hd .sec-title{margin-bottom:.6rem;}
.about-hd .sec-intro{margin-top:0;margin-bottom:1.5rem;}
.about-cta{display:inline-flex;background:transparent;color:var(--horizon);border:2px solid var(--horizon);}.about-cta:hover{background:var(--horizon);color:#fff;}
.feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;}
@media(min-width:600px){.feat-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:768px){.feat-grid{gap:1rem;}}
.feat-card{text-align:center;padding:1rem .8rem;border-radius:var(--rc);border:1px solid var(--brd);background:var(--bg);}
@media(min-width:768px){.feat-card{padding:1.4rem 1.2rem;}}
.feat-icon{width:46px;height:46px;border-radius:var(--rc);background:rgba(45,135,204,.08);border:1px solid rgba(45,135,204,.18);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin:0 auto .8rem;}
.feat-card h3{font-family:var(--fh);font-size:1rem;font-weight:700;margin-bottom:.35rem;color:var(--text);}
.feat-card p{color:var(--muted);font-size:.8rem;line-height:1.5;}
.feat-img-wrap{width:100%;aspect-ratio:4/3;border-radius:calc(var(--rc) - 2px);overflow:hidden;margin-bottom:.8rem;}
.feat-img-wrap img{width:100%;height:100%;object-fit:cover;}
.feat-card-img{text-align:left;padding:.8rem .8rem 1rem;}
@media(min-width:768px){.feat-card-img{padding:1rem 1rem 1.2rem;}}

/* NEWS */
.news-grid{display:grid;grid-template-columns:1fr;gap:1.2rem;}
@media(min-width:600px){.news-grid{grid-template-columns:1fr 1fr;}}
@media(min-width:900px){.news-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;}}
.news-card{background:var(--bg);border-radius:var(--rc);overflow:hidden;border:1px solid var(--brd);transition:transform .3s,box-shadow .3s;}
.news-card:hover{transform:translateY(-5px);box-shadow:0 18px 48px rgba(0,0,0,.12);}
[data-theme="nacht"] .news-card{background:var(--surface);}
.news-img{aspect-ratio:16/9;overflow:hidden;position:relative;}
.news-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s;}
.news-card:hover .news-img img{transform:scale(1.05);}
.news-img-lnk{display:block;width:100%;height:100%;overflow:hidden;cursor:pointer;}
.news-tag{position:absolute;bottom:0;left:0;right:0;padding:.42rem .72rem;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);font-family:var(--fh);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.88);}
.news-body{padding:1.1rem;}
.news-date{font-size:.7rem;font-family:var(--fh);letter-spacing:.1em;text-transform:uppercase;color:var(--horizon);margin-bottom:.4rem;}
.news-ttl{font-family:var(--fh);font-size:1.05rem;font-weight:700;margin-bottom:.55rem;line-height:1.3;color:var(--text);}
.news-exc{font-size:.85rem;color:var(--muted);line-height:1.6;margin-bottom:.9rem;}
.news-lnk{font-family:var(--fh);font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--horizon);display:inline-flex;align-items:center;gap:.3rem;transition:gap .25s;}
.news-lnk:hover{gap:.6rem;}

/* CTA BAND */
.cta-band{position:relative;padding:4rem 0;overflow:hidden;}
@media(min-width:768px){.cta-band{padding:5.5rem 0;}}
.cta-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
.cta-ov{position:absolute;inset:0;background:var(--cta-ov);}
.cta-in{position:relative;z-index:1;}
@media(min-width:768px){.cta-in{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;}}
.cta-band h2{font-family:var(--fd);font-size:clamp(1.8rem,5vw,3.4rem);color:#fff;letter-spacing:.04em;line-height:1;margin-bottom:.9rem;}
@media(min-width:768px){.cta-band h2{margin-bottom:0;}}
.cta-band h2 span{color:var(--accent);}
.cta-band p{color:rgba(255,255,255,.68);margin-top:.4rem;font-size:.95rem;}
.cta-btns{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem;}
@media(min-width:768px){.cta-btns{flex-shrink:0;margin-top:0;}}

/* GASTFLÜGE */
.zwei{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:center;}
@media(min-width:768px){.zwei{grid-template-columns:1fr 1fr;gap:4rem;}}
/* Gastflug grid: on mobile intro→image→list, on desktop left col=intro+list, right col=image */
.gf-grid{display:grid;grid-template-columns:1fr;gap:1.6rem;}
.gf-intro{order:1;}
.gf-photo{order:2;border-radius:var(--rc);overflow:hidden;position:relative;box-shadow:0 24px 70px rgba(0,0,0,.2);}
.gf-list{order:3;}
@media(min-width:768px){
  .gf-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:2rem 4rem;align-items:start;}
  .gf-intro{order:1;grid-column:1;grid-row:1;}
  .gf-list{order:2;grid-column:1;grid-row:2;}
  .gf-photo{order:3;grid-column:2;grid-row:1/3;align-self:center;}
}
.gf-photo img{width:100%;height:280px;object-fit:cover;object-position:center 25%;}
@media(min-width:768px){.gf-photo img{height:420px;}}
.gf-tag{position:absolute;bottom:1rem;left:1rem;background:rgba(0,0,0,.78);backdrop-filter:blur(8px);color:#fff;font-family:var(--fh);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;padding:.4rem .85rem;border-radius:999px;border:1px solid rgba(255,255,255,.14);}

/* GALLERY */
.gallery-sec{background:var(--deep);padding:4rem 0;}
@media(min-width:768px){.gallery-sec{padding:5rem 0;}}
.gal-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;}
@media(min-width:600px){.gal-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;gap:.55rem;}.gal-item:first-child{grid-column:span 2;grid-row:span 2;}}
.gal-item{overflow:hidden;border-radius:var(--rc);position:relative;cursor:pointer;aspect-ratio:4/3;}
@media(min-width:600px){.gal-item{aspect-ratio:auto;}}
/* Orphan prevention: JS adds .gal-orphan-1 / .gal-orphan-2 to grid when last row is incomplete */
@media(min-width:600px){
  .gal-grid.gal-orphan-1 .gal-item:last-child{grid-column:span 4;max-width:25%;justify-self:center;}
  .gal-grid.gal-orphan-2 .gal-item:nth-last-child(-n+2){grid-column:span 2;}
  .gal-grid.gal-orphan-3 .gal-item:last-child{grid-column:span 2;}
}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s;}
.gal-item:hover img{transform:scale(1.07);}
.gal-ov{position:absolute;inset:0;background:rgba(0,0,0,.3);opacity:0;transition:opacity .3s;display:flex;align-items:center;justify-content:center;font-size:1.6rem;}
.gal-item:hover .gal-ov{opacity:1;}

/* CONTACT */
.con-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start;}
@media(min-width:768px){.con-grid{grid-template-columns:1fr 1.2fr;gap:4rem;}}
.contact-form-wrap{min-width:0;}
.contact-form-wrap .alert-success,.contact-form-wrap .alert-error{margin:0 0 1rem 0;}
.sfc-hp{position:absolute !important;left:-9999px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important;}
.ci{margin-bottom:1.2rem;}
.ci h3{font-family:var(--fh);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem;}
.ci a{color:var(--horizon);}
.tipbox{margin-top:1.5rem;padding:1.1rem 1.3rem;background:rgba(232,160,32,.07);border-radius:var(--rc);border-left:4px solid var(--accent);font-size:.88rem;color:var(--muted);line-height:1.6;}
.tipbox strong{color:var(--text);}
.fg{margin-bottom:.9rem;}
.fg label{display:block;font-family:var(--fh);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.32rem;}
.fg input:not([type="checkbox"]),.fg textarea,.fg select{width:100%;padding:.68rem .9rem;border:2px solid var(--brd);border-radius:var(--rc);font-family:var(--fb);font-size:.94rem;color:var(--text);background:var(--bg);outline:none;transition:border-color .25s;appearance:none;}
[data-theme="nacht"] .fg input:not([type="checkbox"]),[data-theme="nacht"] .fg textarea,[data-theme="nacht"] .fg select{background:var(--surface);}
.fg input:not([type="checkbox"]):focus,.fg textarea:focus,.fg select:focus{border-color:var(--horizon);}
.fg textarea{height:120px;resize:vertical;}
.fg-check{margin-top:.2rem;}
.fg-check .check-lbl{display:grid;grid-template-columns:1rem 1fr;column-gap:.75rem;align-items:flex-start;font-family:var(--fb);font-size:.84rem;font-weight:400;letter-spacing:normal;text-transform:none;line-height:1.55;cursor:pointer;}
.fg-check input[type="checkbox"]{width:1rem;height:1rem;margin-top:.18rem;padding:0;appearance:auto;-webkit-appearance:checkbox;accent-color:var(--horizon);cursor:pointer;}
.fg-check .check-text{display:block;min-width:0;}
.fg-check a{color:var(--horizon);}
.fg-check a:hover{text-decoration:underline;}

/* FOOTER */
.site-footer{background:var(--footer);color:rgba(255,255,255,.55);padding:3rem 0 1.8rem;}
.ft-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:1.5rem;}
@media(min-width:768px){.ft-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;}}
.ft-name{font-family:var(--fd);font-size:1.3rem;letter-spacing:.08em;color:#fff;display:block;margin-bottom:.8rem;}
.ft-brand p{font-size:.84rem;line-height:1.7;max-width:240px;}
@media(min-width:768px){.ft-col{display:block;}}
.ft-col h4{font-family:var(--fh);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:.8rem;}
.ft-col ul{list-style:none;}
.ft-col ul li{margin-bottom:.35rem;}
.ft-col ul li a{color:rgba(255,255,255,.45);font-size:.84rem;transition:color .25s;}
.ft-col ul li a:hover{color:var(--accent);}
.ft-nolink{color:rgba(255,255,255,.25);font-size:.84rem;cursor:default;}
.ft-bot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-size:.74rem;color:rgba(255,255,255,.26);}
.ft-bot a{color:rgba(255,255,255,.26);}
.ft-bot a:hover{color:var(--accent);}

/* ANIMATIONS */
.fu{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease;}
.fu.v{opacity:1;transform:translateY(0);}
