/* Gateway language-selection page (standalone) — ported from smarfie.de's
   root gateway page. Deviations from the source, both explicitly requested:
   1) every border-radius flattened to 0 (standing flat-corners rule).
   2) header (logo) and footer removed, page fixed to exactly one viewport
      height with no scrolling — so gateway-main now owns full vertical
      centering instead of the header reserving top space. */
.gateway-page{height:100vh;overflow:hidden;display:flex;flex-direction:column;background:#071522;color:#fff;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}
.gateway-page a{color:#42d9e8;text-underline-offset:.18em}
.gateway-page a:hover{color:#7ef0ff}
.gateway-page .skip-link{position:fixed;left:1rem;top:-6rem;z-index:2000;background:#7cff3c;color:#0a1b2e;padding:.7rem 1rem;border-radius:0;font-weight:800;text-decoration:none}
.gateway-page .skip-link:focus{top:1rem}
.gateway-page :focus-visible{outline:3px solid #7cff3c!important;outline-offset:3px!important}
.gateway-page .eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:#7cff3c;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:850}
.gateway-page .eyebrow-break{display:none}
.gateway-page .gateway-brand-inline{display:flex;justify-content:flex-start;margin:0 0 14px}
.gateway-page .gateway-brand-inline-logo{display:block;height:48px;width:auto}
.gateway-page .gateway-main{position:relative;isolation:isolate;display:flex;align-items:center;flex:1;overflow:hidden;padding:1.5rem 0;background:radial-gradient(circle at 75% 28%,rgba(0,195,215,.2),transparent 32%),linear-gradient(135deg,#071522 0%,#0a1b2e 48%,#063f4d 100%)}
.gateway-page .gateway-main h1{max-width:12ch;margin:.6rem 0 0;font-size:clamp(2rem,4.6vw,4.2rem);font-weight:900;line-height:1.02;letter-spacing:-.05em;color:#fff}
.gateway-page .gateway-main h1 span{color:#9feff5}
.gateway-page .gateway-intro{margin:1rem 0 1.4rem;color:#d9eaf0;font-size:clamp(.95rem,1.6vw,1.2rem)}
.gateway-page .gateway-portrait{position:relative;z-index:0;max-width:min(20rem,100%);margin-inline:auto}
.gateway-page .gateway-portrait:before{content:"";position:absolute;inset:12% -12% 4%;z-index:-1;border-radius:50%;background:rgba(0,195,215,.2);filter:blur(35px)}
.gateway-page .gateway-portrait img{display:block;width:100%;height:auto;max-height:56vh;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 30px 35px rgba(0,0,0,.42))}
.gateway-page .language-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;max-width:40rem}
.gateway-page .language-card{position:relative;display:grid;min-height:9rem;padding:1.1rem;border:1px solid rgba(112,233,244,.42);border-radius:0;background:rgba(16,41,67,.78);box-shadow:0 18px 45px rgba(0,0,0,.2);color:#fff!important;text-decoration:none;backdrop-filter:blur(10px);transition:transform .25s ease,border-color .25s ease,background .25s ease}
.gateway-page .language-card:hover,.gateway-page .language-card:focus-visible{transform:translateY(-4px);border-color:#7cff3c;background:rgba(18,57,79,.96)}
.gateway-page .language-card.is-recommended{border-color:#7cff3c;box-shadow:0 0 0 1px #7cff3c,0 18px 45px rgba(0,195,215,.16)}
.gateway-page .language-name{align-self:end;font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:850}
.gateway-page .language-copy{color:#c7dbe3;font-size:.9rem}
.gateway-page .language-arrow{position:absolute;right:1.1rem;bottom:1rem;color:#00c3d7;font-size:1.6rem}
.gateway-page .gateway-preference{max-width:40rem;margin-top:1rem;color:#c8dae2}
.gateway-page .gateway-preference .form-check-input{width:1.15rem;height:1.15rem;margin-top:.2rem;flex-shrink:0;accent-color:#00c3d7;border-radius:0;border:1px solid #00c3d7;background-color:transparent}
.gateway-page .form-check{display:flex;align-items:flex-start;gap:.55rem}
.gateway-page .form-check-label{cursor:pointer}
.gateway-page .saved-language-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.85rem;padding:.7rem .9rem;border:1px solid rgba(124,255,60,.55);border-radius:0;background:rgba(124,255,60,.1);color:#fff!important;font-weight:750;text-decoration:none}
.gateway-page .gateway-privacy{margin:.7rem 0 0;color:#91aab6;font-size:.8rem}
.gateway-page .container{width:100%;max-width:1140px;margin-inline:auto;padding-inline:clamp(1rem,4vw,1.5rem)}
.gateway-page .position-relative{position:relative}
.gateway-page .row{display:flex;flex-wrap:wrap;margin-inline:-.75rem}
.gateway-page .row>*{padding-inline:.75rem;box-sizing:border-box}
.gateway-page .g-5{--g:1.75rem;margin-inline:calc(var(--g)/-2)}
.gateway-page .g-5>*{padding-inline:calc(var(--g)/2)}
.gateway-page .col-lg-5,.gateway-page .col-lg-7{width:100%}
.gateway-page .align-items-center{align-items:center}
.gateway-page .d-flex{display:flex}
.gateway-page .flex-wrap{flex-wrap:wrap}
.gateway-page .justify-content-between{justify-content:space-between}
.gateway-page .gap-3{gap:1rem}
.gateway-page .visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.gateway-page .cookie-notice{position:fixed;left:0;right:0;bottom:0;z-index:1080;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom,0px));background:rgba(10,27,46,.96);color:#f4f8fb;box-shadow:0 -8px 24px rgba(0,0,0,.25);contain:layout style}
.gateway-page .cookie-notice__inner{max-width:72rem;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}
.gateway-page .cookie-notice__text{margin:0;flex:1 1 16rem;font-size:.85rem;line-height:1.4}
.gateway-page .cookie-notice__text a{color:#7ef0ff}
.gateway-page .cookie-notice__btn{flex:0 0 auto;min-height:44px;min-width:44px;padding:.55rem 1.1rem;border:0;border-radius:0;background:#00c3d7;color:#0a1b2e;font-weight:700;cursor:pointer}
.gateway-page .cookie-notice__btn:hover,.gateway-page .cookie-notice__btn:focus-visible{background:#7ef0ff;outline:none}
.gateway-page .tm-mark{font-size:.34em;line-height:1;position:relative;top:-.95em;vertical-align:baseline;font-weight:700;margin-inline:.02em 0}
@media(min-width:992px){
  .gateway-page .col-lg-5{width:41.6667%}
  .gateway-page .col-lg-7{width:58.3333%}
  .gateway-page .order-lg-1{order:1}
  .gateway-page .order-lg-2{order:2}
  .gateway-page .gateway-brand-inline-logo{height:60px}
}
@media(max-width:991.98px){
  .gateway-page .gateway-brand-inline{justify-content:center;margin:0 0 8px}
  .gateway-page .gateway-brand-inline-logo{height:38px}
  .gateway-page .eyebrow-sep{display:none}
  .gateway-page .eyebrow-break{display:inline}
  .gateway-page .eyebrow{display:block}
  .gateway-page .gateway-main{text-align:center;padding:.7rem 0}
  .gateway-page .gateway-main h1{margin-inline:auto;margin-top:.35rem;line-height:1.05}
  .gateway-page .gateway-main .eyebrow{justify-content:center}
  .gateway-page .gateway-intro{margin:.6rem 0 .9rem}
  .gateway-page .gateway-portrait{max-width:7rem;margin-bottom:.4rem}
  .gateway-page .gateway-portrait img{max-height:16vh}
  .gateway-page .language-grid,.gateway-page .gateway-preference{margin-inline:auto}
  .gateway-page .gateway-preference{text-align:left;margin-top:.6rem}
  .gateway-page .language-grid{gap:.5rem}
}
@media(max-width:575.98px){
  .gateway-page .gateway-main h1{max-width:none;font-size:28px}
  .gateway-page .language-grid{grid-template-columns:1fr}
  .gateway-page .language-card{min-height:4.5rem;padding:.75rem}
  .gateway-page .language-name{font-size:1.15rem}
  .gateway-page .language-copy{font-size:.8rem}
  .gateway-page .gateway-privacy{font-size:.72rem;margin-top:.5rem}
}
@media(prefers-reduced-motion:reduce){
  .gateway-page *,.gateway-page *:before,.gateway-page *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
.main-content.gateway-no-padding{padding-top:0;padding-bottom:0}
body:has(.gateway-page){padding-bottom:0!important}
