/* Privacy card proportions from the supplied 578px reference. */
.welcome-page .portal-symbol img{display:block;width:auto;height:100%;max-width:100%;object-fit:contain}
.welcome-page .cookie-notice{
  left:auto;
  right:clamp(16px,7.27vw,42px);
  bottom:max(24px,16svh);
  width:438px;
  max-width:calc(100vw - 32px);
  padding:24px 25px;
  border-radius:26px;
}
.welcome-page .cookie-description{min-height:100px}
.welcome-page .cookie-heading span{padding-right:12px}
.welcome-page .cookie-links{margin-top:8px}
.welcome-page .cookie-notice .cookie-link{font-family:Arial,sans-serif}
.welcome-page .cookie-actions{gap:16px;flex-wrap:nowrap}
.welcome-page .cookie-choice{min-width:132px;padding:12px 24px}
.welcome-page .cookie-accept{min-width:126px}
.welcome-page .cookie-settings-link{
  left:clamp(16px,6.75vw,39px);
  bottom:max(16px,4.1svh);
  width:58px;
  height:58px;
}
.welcome-page .cookie-settings-link svg{width:48px;height:48px}
/* Complete desktop composition measured from the latest 1912 × 897 reference. */
@media(min-width:901px){
  .welcome-page{--welcome-unit:min(.052301255vw,.111482720svh)}
  .welcome-page .topbar{height:calc(80 * var(--welcome-unit))}
  .welcome-page .topbar-inner,.welcome-page .hero-inner{width:88%;max-width:calc(1680 * var(--welcome-unit))}
  .welcome-page .official-link{font-size:calc(22 * var(--welcome-unit))}
  .welcome-page .portal-symbol{width:calc(150 * var(--welcome-unit));height:calc(80 * var(--welcome-unit));font-size:calc(16 * var(--welcome-unit))}
  .welcome-page .portal-symbol small{font-size:calc(10 * var(--welcome-unit))}
  .welcome-page .title{
    width:100vw;margin-left:calc((100% - 100vw) / 2);
    padding:calc(14 * var(--welcome-unit)) calc(24 * var(--welcome-unit)) 0;
    font-size:calc(96 * var(--welcome-unit));
    line-height:1.14;white-space:nowrap;text-align:center;
  }
  .welcome-page .age-panel{top:calc(184 * var(--welcome-unit))}
  .welcome-page .hero{height:calc(746 * var(--welcome-unit))}
  .welcome-page footer{min-height:calc(100svh - 826 * var(--welcome-unit))}
  .welcome-page .art{left:26.6%;width:calc(796 * var(--welcome-unit))}
  .welcome-page .cookie-notice{
    top:calc(479 * var(--welcome-unit));
    left:calc((100vw - min(88vw,1680 * var(--welcome-unit))) / 2 - 18 * var(--welcome-unit));
    right:auto;
    bottom:auto;
    max-height:calc(100dvh - 495 * var(--welcome-unit));
    width:calc(438 * var(--welcome-unit));
    padding:calc(24 * var(--welcome-unit)) calc(25 * var(--welcome-unit));
    border-radius:calc(26 * var(--welcome-unit));
    font:calc(15 * var(--welcome-unit))/1.7 Arial,sans-serif;
  }
  .welcome-page .cookie-heading{gap:calc(16 * var(--welcome-unit));margin-bottom:calc(12 * var(--welcome-unit))}
  .welcome-page .cookie-heading h2{font-size:calc(16 * var(--welcome-unit))}
  .welcome-page .cookie-heading span{font-size:calc(14 * var(--welcome-unit));padding-right:calc(12 * var(--welcome-unit))}
  .welcome-page .cookie-notice p{margin-bottom:calc(6 * var(--welcome-unit))}
  .welcome-page .cookie-description{min-height:calc(100 * var(--welcome-unit));padding:calc(10 * var(--welcome-unit))}
  .welcome-page .cookie-links{gap:calc(8 * var(--welcome-unit));margin:calc(8 * var(--welcome-unit)) 0 calc(28 * var(--welcome-unit))}
  .welcome-page .cookie-actions{gap:calc(16 * var(--welcome-unit))}
  .welcome-page .cookie-actions button{font-size:calc(14 * var(--welcome-unit))}
  .welcome-page .cookie-choice{min-width:calc(132 * var(--welcome-unit));min-height:calc(48 * var(--welcome-unit));padding:calc(12 * var(--welcome-unit)) calc(24 * var(--welcome-unit))}
  .welcome-page .cookie-accept{min-width:calc(126 * var(--welcome-unit))}
  .welcome-page .cookie-settings-link{
    left:calc(38 * var(--welcome-unit));bottom:calc(100svh - 872 * var(--welcome-unit));
    width:calc(58 * var(--welcome-unit));height:calc(58 * var(--welcome-unit));
  }
  .welcome-page .cookie-settings-link svg{width:82.76%;height:82.76%}
}
@media(max-width:650px){
  .welcome-page{min-height:100svh}
  .welcome-page .topbar{height:18.1vw}
  .welcome-page .topbar-inner{width:100%;max-width:none;padding:0}
  .welcome-page .portal-symbol{left:50%;right:auto;top:0;transform:translateX(-50%);width:23.36vw;height:18.1vw}
  .welcome-page .official-link{margin-left:4.67vw;width:22vw;max-width:none;font-size:3.29vw;line-height:1.35;text-align:center}
  .welcome-page .hero{position:relative;isolation:isolate;height:150.7vw;min-height:150.7vw;background:linear-gradient(90deg,#1781b0,#289dac)}
  .welcome-page .hero::before{
    content:'';position:absolute;inset:0;z-index:-1;background:#0067b1;
    clip-path:polygon(0 0,94% 0,0 96vw);pointer-events:none;
  }
  .welcome-page .hero-inner{display:block;width:100%;max-width:none;height:100%;min-height:inherit;margin:0;padding:0}
  .welcome-page .title{width:100%;margin:0;padding:3.84vw 2vw 0;font-size:5.48vw;line-height:1.14;white-space:nowrap;text-wrap:nowrap;text-align:center;transform:none}
  .welcome-page .demo-disclosure:empty{display:none}
  .welcome-page .age-panel{position:absolute;left:0;top:25.75vw;width:100%;max-width:none;margin:0;padding:0}
  .welcome-page .accent{display:none}
  .welcome-page .question{margin:0 0 1vw;font-size:4.65vw;line-height:1.3;letter-spacing:-.035em;white-space:nowrap}
  .welcome-page .question br{display:none}
  .welcome-page .choices{width:52.6vw;margin:0 auto;gap:.82vw}
  .welcome-page .choice{flex:1;width:auto;max-width:none;min-height:32px;height:8.77vw;padding:0;border:1px solid #338d9e;border-radius:2px;font-size:3.56vw;line-height:1.2}
  .welcome-page .choice.yes{color:#ffc400}
  .welcome-page .notice{max-width:90vw;margin:10px auto 0;font-size:12px;line-height:1.4;text-align:center;white-space:normal}
  .welcome-page .art{position:absolute;left:12vw;top:48.77vw;bottom:auto;width:30.14vw;max-width:none;margin:0}
  .welcome-page .hero-art{display:block;width:100%;height:auto;max-height:none}
  .welcome-page .age-seal{left:50%;right:auto;top:75.8vw;bottom:auto;transform:translateX(-50%);width:21vw;height:24.7vw}
  .welcome-page footer{min-height:max(100px,calc(100svh - 168.8vw))}
  .welcome-page .cookie-settings-link{left:24px;bottom:20px;width:44px;height:44px}
  .welcome-page .cookie-settings-link svg{width:36px;height:36px}
}
@media(max-width:460px){
  .welcome-page .cookie-notice{right:16px;padding:24px 20px}
  .welcome-page .cookie-actions{gap:12px}
  .welcome-page .cookie-choice{min-width:0;flex:1;padding:12px 16px}
  .welcome-page .cookie-links{gap:6px;font-size:14px}
}
@media(max-width:350px){
  .welcome-page .cookie-actions{flex-wrap:wrap}
  .welcome-page .cookie-actions>.cookie-link{flex-basis:100%;text-align:left}
}
