/* Übergangsseite bis zum Go-live der neuen Website. Farben und Schriften aus src/styles/tokens.css. */
@font-face{font-family:"Anton";src:url("/_nsl/anton-latin.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Mulish";src:url("/_nsl/Mulish-Variable.ttf") format("truetype-variations");font-weight:200 1000;font-display:swap}

:root{
  --blue:#1D9DD9;--blue-200:#9DDBF4;--yellow:#F7CD00;--yellow-400:#FCDA26;
  --navy-800:#083247;--navy-900:#05202F;--navy-950:#03151F;--sand-50:#FDFBF7;--grey-800:#243139;
  --muted:rgba(255,255,255,.72);--line:rgba(255,255,255,.22);
  --display:"Anton","Mulish",system-ui,sans-serif;--core:"Mulish",system-ui,-apple-system,sans-serif;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--navy-900);color:#fff;font-family:var(--core);font-size:clamp(16px,1.05vw + 12px,19px);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;border-radius:4px}

/* ---- Startseite ---- */
.hold{position:relative;isolation:isolate;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;overflow:hidden}
.hold__photo,.hold__photo img{position:absolute;inset:0;width:100%;height:100%;z-index:-3}
.hold__photo img{object-fit:cover;object-position:60% 40%;animation:drift 24s ease-out both}
.hold::before{content:"";position:absolute;inset:0;z-index:-2;
  background:
    linear-gradient(180deg,rgba(5,32,47,.55) 0%,rgba(5,32,47,.35) 30%,rgba(5,32,47,.88) 72%,var(--navy-900) 100%),
    linear-gradient(90deg,rgba(3,21,31,.85) 0%,rgba(3,21,31,.35) 70%,rgba(3,21,31,.15) 100%)}
.hold__pattern{position:absolute;inset:0;z-index:-1;background:url("/_nsl/muster.webp") center bottom / cover no-repeat;opacity:.05;pointer-events:none}

.hold__inner{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:clamp(40px,8vh,96px) clamp(16px,5vw,64px) clamp(32px,5vh,56px);display:flex;flex-direction:column;justify-content:center}
.hold__inner>*{margin:0;animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.hold__logo{width:clamp(240px,42vw,520px);margin-bottom:clamp(28px,5vh,56px);margin-left:-.4%}
.hold__eyebrow{animation-delay:.12s;font-weight:800;font-size:.8em;letter-spacing:.16em;text-transform:uppercase;color:var(--yellow)}
.hold__date{animation-delay:.2s;font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:.95;letter-spacing:.005em;font-size:clamp(48px,9vw,128px);margin-top:.12em}
.hold__lead{animation-delay:.28s;max-width:36em;margin-top:clamp(14px,2vh,22px);color:var(--muted);font-size:1.08em}
.hold__reg{animation-delay:.36s;margin-top:clamp(26px,4vh,40px);padding-top:clamp(18px,2.5vh,24px);border-top:1px solid var(--line);max-width:36em;font-size:1.2em;font-weight:600}
.hold__reg strong{color:var(--yellow);font-weight:800;white-space:nowrap}
.hold__actions{animation-delay:.44s;display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(20px,3vh,28px)}
.hold__hint{animation-delay:.5s;margin-top:14px;max-width:36em;font-size:.88em;color:var(--muted)}

.count{animation-delay:.56s;margin-top:clamp(28px,4.5vh,44px)}
.count__label{margin:0 0 10px;font-weight:800;font-size:.8em;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-200)}
.count__when{margin:10px 0 0;font-size:.88em;color:var(--muted)}
.count__row{display:flex;gap:clamp(18px,3vw,36px)}
.count__row span{display:flex;flex-direction:column;font-size:.78em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.count__row b{font-family:var(--display);font-weight:400;font-size:clamp(40px,5.4vw,68px);line-height:1;color:#fff;letter-spacing:.01em;font-variant-numeric:tabular-nums;min-width:1.25em}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:999px;font-weight:800;font-size:.95em;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s,transform .2s}
.btn:hover{transform:translateY(-2px)}
.btn--yellow{background:var(--yellow);color:var(--navy-900)}
.btn--yellow:hover{background:var(--yellow-400)}
.btn--ghost{border:1.5px solid rgba(255,255,255,.55);color:#fff}
.btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.1)}

.hold__foot{width:100%;max-width:1180px;margin:0 auto;padding:18px clamp(16px,5vw,64px) 22px;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:center;font-size:.85em;color:var(--muted);border-top:1px solid rgba(255,255,255,.12)}
.hold__foot nav{display:flex;gap:20px}
.hold__foot a{text-decoration:none}
.hold__foot a:hover{color:#fff;text-decoration:underline}

@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes drift{from{transform:scale(1.08)}to{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---- Impressum / Datenschutz ---- */
.legal{background:var(--sand-50);color:var(--grey-800);color-scheme:light}
.legal__head{background:var(--navy-900);position:relative;isolation:isolate;overflow:hidden}
.legal__head::before{content:"";position:absolute;inset:0;z-index:-1;background:url("/_nsl/muster.webp") center / cover no-repeat;opacity:.1}
.legal__bar{max-width:880px;margin:0 auto;padding:22px clamp(16px,5vw,40px) clamp(32px,6vh,56px)}
.legal__bar a.legal__home{display:inline-block;width:150px}
.legal__bar h1{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(40px,7vw,72px);line-height:1;margin:clamp(28px,5vh,48px) 0 0;color:#fff}
.legal__body{max-width:880px;margin:0 auto;padding:clamp(28px,5vh,56px) clamp(16px,5vw,40px) 64px;overflow-wrap:anywhere}
.legal__body h2{color:var(--navy-900);font-size:1.35em;margin:2em 0 .5em;line-height:1.25}
.legal__body h3{color:var(--navy-900);font-size:1.12em;margin:1.8em 0 .4em;line-height:1.3}
.legal__body h2:first-child,.legal__body h3:first-child{margin-top:0}
.legal__body a{color:#1483B8}
.legal__body ul{padding-left:1.2em}
.legal__foot{background:var(--navy-900);color:var(--muted);font-size:.85em}
.legal__foot div{max-width:880px;margin:0 auto;padding:20px clamp(16px,5vw,40px);display:flex;flex-wrap:wrap;gap:20px}
.legal__foot a{text-decoration:none}
.legal__foot a:hover{color:#fff;text-decoration:underline}

/* Breite Bildschirme: Countdown oben rechts in den Himmel des Fotos, damit alles in den ersten Blick passt. */
@media (min-width:1100px) and (min-height:640px){
  .hold__inner{position:relative}
  .count{position:absolute;top:clamp(40px,8vh,96px);right:clamp(16px,5vw,64px);margin:0;text-align:right}
  .count__label{max-width:16em;margin-left:auto}
  .count__row{justify-content:flex-end}
}
