/* The opening scene uses the official mark as layered vector geometry. */
.header,.header.scrolled{background:rgba(255,255,255,.94);border-bottom:1px solid rgba(37,91,167,.1);backdrop-filter:blur(18px)}
.header .nav-links,.header .nav-links>a:not(.nav-contact),.header .nav-dropdown>summary{color:#102249}
.header .nav-links>a:hover,.header .nav-dropdown>summary:hover,.header .nav-dropdown[open]>summary{color:#267bf0}
.header .nav-contact{color:#fff;background:linear-gradient(105deg,#0b377d,#111f69 70%,#3b28b1);border-color:transparent;box-shadow:0 8px 25px rgba(24,72,150,.16)}
.header .nav-contact:hover{background:linear-gradient(105deg,#1365cb,#3131b5)}
.header .menu-button{border-color:rgba(25,64,120,.23)}
.header .menu-button span{background:#102249}
.hero-premium{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:0;min-height:850px;height:100svh;max-height:1100px;padding-top:96px;overflow:visible}
.hero-premium:before{background:radial-gradient(ellipse at 71% 49%,rgba(133,187,255,.21),transparent 40%),radial-gradient(ellipse at 92% 75%,rgba(151,170,255,.14),transparent 38%),linear-gradient(118deg,#fff 2%,#f7fbff 51%,#eaf3ff 100%)}
.hero-premium .hero-copy{padding:0 0 18px;z-index:4}
.hero-premium .eyebrow{color:#536c99;font-size:.7rem;letter-spacing:.28em;margin-bottom:clamp(1.3rem,2.7vh,2.2rem)}
.hero-premium .eyebrow i{width:45px;background:#4678bd}
.hero-premium h1{font-size:clamp(5.2rem,8.2vw,9.6rem);font-weight:750;letter-spacing:-.083em;line-height:.87;color:#07143d;margin:0 0 2rem}
.hero-premium h1 em{background:linear-gradient(104deg,#4ad3f4 0%,#2c9cf7 30%,#3754f7 61%,#7734e6 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-premium .hero-description{max-width:530px;color:#536b92;font-size:clamp(1rem,1.28vw,1.25rem);line-height:1.44;margin-bottom:1.35rem}
.hero-premium .hero-family-logos{justify-content:flex-start;gap:clamp(1.25rem,2.6vw,2.4rem);margin:1.15rem 0 1.35rem}
.hero-premium .hero-family-logos a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:clamp(140px,12vw,190px);min-height:68px;padding:5px;border-radius:12px;transition:transform .25s,background .25s}
.hero-premium .hero-family-logos a:hover{transform:translateY(-3px);background:rgba(215,234,255,.56);box-shadow:none}
.hero-premium .hero-family-logos img{width:100%;height:46px;max-width:none;object-fit:contain}
.hero-premium .hero-family-logos small{color:#607aab;letter-spacing:.24em;font-size:.59rem;font-weight:700;white-space:nowrap}
.hero-logo-divider{display:block;width:1px;height:48px;background:#a9bedf}
.hero-premium .hero-actions{display:flex;gap:1.05rem;align-items:center;margin:0}
.hero-premium .button{min-width:198px;padding:1rem 1.35rem 1rem 1.55rem;background:linear-gradient(108deg,#0c4289,#112c86 67%,#4b30ca);box-shadow:0 12px 28px rgba(37,86,175,.18)}
.hero-contact{display:inline-flex;align-items:center;justify-content:center;gap:1.25rem;min-width:170px;padding:.94rem 1.25rem;border:1px solid #9bb5d8;border-radius:100px;color:#15265a;font-size:.86rem;font-weight:700;transition:background .2s,transform .2s}
.hero-contact:hover{background:#eaf3ff;transform:translateY(-2px)}
.hero-contact img{width:22px;height:22px}
.hero-scroll-hint{display:flex;align-items:center;gap:.75rem;margin:1.1rem 0 0;color:#7c91b5;font-size:.72rem;line-height:1.2}
.hero-scroll-hint span{display:grid;place-items:center;width:19px;height:30px;border:1px solid #9eafd0;border-radius:13px;color:#547bbb;animation:premium-scroll-cue 2.5s ease-in-out infinite}
.hero-premium .hero-foot{display:none}
.hero-premium .hero-art{position:relative;isolation:isolate;width:min(108%,850px);height:auto;aspect-ratio:700/620;min-height:0;max-height:none;margin:0 -4% 0 0;justify-self:center;opacity:var(--hero-opacity,1);transform:translateX(1%) scale(var(--hero-scale,1));transform-origin:50% 53%;transition:opacity .15s linear,transform .15s linear}
.premium-scene-inner{position:absolute;inset:0;transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0);transition:transform .65s cubic-bezier(.2,.7,.2,1);animation:premium-scene-in 1.5s ease-out both}
.premium-clouds{position:absolute;inset:-6%;z-index:0;pointer-events:none;background:radial-gradient(ellipse 42% 27% at 38% 37%,rgba(182,220,255,.35),transparent 92%),radial-gradient(ellipse 39% 30% at 72% 38%,rgba(203,211,255,.38),transparent 91%),radial-gradient(ellipse 54% 28% at 52% 63%,rgba(122,184,251,.19),transparent 91%),radial-gradient(ellipse 31% 22% at 23% 71%,rgba(211,226,255,.43),transparent 90%),radial-gradient(ellipse 39% 24% at 84% 72%,rgba(187,205,255,.25),transparent 90%);filter:blur(20px)}
.premium-clouds:before,.premium-clouds:after{content:"";position:absolute;display:block;pointer-events:none;border-radius:50%;filter:blur(26px)}
.premium-clouds:before{width:79%;height:22%;left:7%;top:23%;transform:rotate(-14deg);background:radial-gradient(ellipse at 27% 49%,rgba(255,255,255,.9),transparent 51%),radial-gradient(ellipse at 65% 47%,rgba(168,207,255,.48),transparent 63%)}
.premium-clouds:after{width:73%;height:27%;right:0;bottom:13%;transform:rotate(-18deg);background:radial-gradient(ellipse at 33% 49%,rgba(168,209,255,.4),transparent 57%),radial-gradient(ellipse at 74% 51%,rgba(255,255,255,.76),transparent 55%)}
.premium-glow{position:absolute;inset:8%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(109,189,255,.29) 0%,rgba(158,179,255,.19) 33%,rgba(185,214,255,.09) 58%,transparent 70%);filter:blur(12px);animation:premium-glow-breathe 7s ease-in-out infinite}
.premium-orbit-field{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.premium-orbit-back{z-index:1;animation:premium-orbits-in 1.5s .1s ease-out both}
.premium-orbit-front{z-index:4;pointer-events:none;animation:premium-orbits-in 1.5s .1s ease-out both}
.premium-orbit-spin ellipse{fill:none;stroke-width:1.15;vector-effect:non-scaling-stroke}
.premium-particle{filter:drop-shadow(0 0 5px rgba(72,161,248,.48))}
.premium-scene.is-paused *{animation-play-state:paused!important}
.premium-mark-float{position:absolute;left:50%;top:50%;width:45%;aspect-ratio:1;z-index:3;transform:translate(-50%,-50%);animation:premium-mark-enter 1.25s .1s ease-out both}
.premium-mark-tilt{width:100%;height:100%;filter:drop-shadow(0 18px 14px rgba(18,78,169,.26)) drop-shadow(0 34px 35px rgba(63,104,203,.19))}
.premium-mark-svg{width:100%;height:100%;overflow:visible}
.premium-mark-svg{animation:premium-mark-light 9s ease-in-out infinite}
@keyframes premium-scene-in{from{opacity:0;transform:translateY(18px) scale(.965)}to{opacity:1}}
@keyframes premium-orbits-in{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}
@keyframes premium-mark-enter{from{opacity:0;transform:translate(-50%,-46%) scale(.92)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes premium-mark-float{0%,100%{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-6px)}}
@keyframes premium-glow-breathe{50%{opacity:.76;transform:scale(1.035)}}
@keyframes premium-mark-light{50%{filter:brightness(1.075) saturate(1.045)}}
@keyframes premium-scroll-cue{50%{transform:translateY(4px)}}
@media(max-width:1000px) and (min-width:701px){.hero-premium h1{font-size:clamp(4.8rem,8vw,7.4rem)}.hero-premium .hero-description{font-size:1rem}.hero-premium .hero-art{width:114%;margin-right:-8%}.hero-premium .hero-family-logos a{width:135px}}
@media(max-width:700px){
 .header .nav-links{background:#f7fbff;box-shadow:0 22px 38px rgba(23,62,122,.14)}
 .header .nav-links>a:not(.nav-contact),.header .nav-dropdown>summary{color:#102249}
 .header .nav-links .nav-dropdown{border-color:#d4e2f5}
 .hero-premium{display:flex;flex-direction:column;min-height:100svh;height:auto;max-height:none;padding-top:calc(70px + 1.8rem);padding-bottom:2rem}
 .hero-premium .hero-copy{width:100%;padding:0}
 .hero-premium .eyebrow{font-size:.53rem;letter-spacing:.12em;margin-bottom:1.25rem}
 .hero-premium .eyebrow i{width:24px}
 .hero-premium h1{font-size:clamp(3.55rem,15vw,5rem);line-height:.93;margin-bottom:1.45rem}
 .hero-premium .hero-description{font-size:1rem;line-height:1.55;max-width:34rem;margin-bottom:1rem}
 .hero-premium .hero-family-logos{gap:1rem;margin:1.25rem 0}
 .hero-premium .hero-family-logos a{width:39%;max-width:165px;min-height:61px;padding:0}
 .hero-premium .hero-family-logos img{height:34px}
 .hero-premium .hero-family-logos small{font-size:.44rem;letter-spacing:.13em}
 .hero-logo-divider{height:39px}
 .hero-premium .hero-actions{gap:.65rem;flex-wrap:wrap}
 .hero-premium .button,.hero-contact{min-width:0;font-size:.76rem;padding:.85rem 1rem}
 .hero-premium .button{min-width:145px}
 .hero-contact{min-width:128px;gap:.6rem}
 .hero-contact img{width:18px;height:18px}
 .hero-scroll-hint{display:none}
 .hero-premium .hero-art{flex:none;width:min(100%,470px);height:auto;aspect-ratio:700/620;margin:.4rem auto 0;transform:scale(var(--hero-scale,1))}
 .premium-mark-float{width:46%}
}
@media(max-width:700px) and (max-height:730px){.hero-premium{min-height:0}.hero-premium .hero-art{width:min(80%,370px)}}
@media(prefers-reduced-motion:reduce){
 .premium-scene-inner,.premium-orbit-back,.premium-orbit-front,.premium-orbit-spin,.premium-mark-float,.premium-mark-svg,.premium-glow,.hero-scroll-hint span{animation:none!important}
 .premium-scene-inner,.premium-mark-float{opacity:1!important}
 .premium-mark-float{transform:translate(-50%,-50%)}
 .premium-scene-inner,.premium-mark-tilt{transition:none}
}
