/* Homepage-only banner, adapted from the approved three-scene preview. */
.home-page .site-header{background:#fbfcfd;border-bottom:1px solid #dce2e8;color:#202936;position:relative}
.home-page .site-header .brand,.home-page .site-header .main-nav a{color:#202936}.home-page .site-header .header-call{color:#087bdd;border-color:#b2d1ef;background:transparent}.home-page .site-header .nav-toggle{color:#202936;border-color:#b2c7d9}.home-page .site-header.nav-enhanced .main-nav{background:#fbfcfd}
.home-page .motion-banner{color:#202936;background:#f3f6f9;overflow:hidden;padding:0;max-width:none;position:relative}
.banner-intro{padding:59px 6% 0;display:grid;grid-template-columns:47% 53%;align-items:center;position:relative;z-index:2;pointer-events:none}
.banner-intro a{pointer-events:auto}.home-page .banner-intro h1{font-size:clamp(42px,4.3vw,76px);line-height:1.38;letter-spacing:-.055em;font-weight:750;margin:0;white-space:nowrap;color:#202936;max-width:none}
.banner-aside{padding-top:10px}.banner-aside p{font-size:clamp(14px,1.18vw,20px);line-height:1.8;margin:0 0 23px;white-space:nowrap;color:#303944}
.banner-actions{display:flex;gap:20px}.banner-actions a{min-height:52px;padding:14px 30px;font-size:16px;font-weight:600;border-radius:2px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.banner-primary{color:#fff;background:#087bdd;border:1px solid #087bdd}.banner-primary:hover{background:#0568ba}.banner-secondary{border:1px solid #087bdd;color:#087bdd;background:transparent}.banner-secondary:hover{background:#e2effa}
.banner-gallery{display:flex;align-items:end;gap:12px;height:clamp(340px,26.5vw,515px);margin-top:-30px}.banner-scene{min-width:0;flex:1;transition:flex-grow .65s cubic-bezier(.22,.7,.2,1);position:relative}.banner-scene.is-selected{flex:2.84}
.banner-picture{display:block;width:100%;border:0;padding:0;position:relative;overflow:hidden;background:#dae4eb;height:clamp(234px,17vw,325px);text-align:left;border-radius:3px;transition:height .65s cubic-bezier(.22,.7,.2,1);isolation:isolate;cursor:pointer}
[data-banner-scene=film] .banner-picture{clip-path:polygon(0 0,100% 11%,100% 100%,0 100%)}[data-banner-scene=mg] .banner-picture{clip-path:polygon(0 12%,100% 0,100% 100%,0 100%)}[data-banner-scene="3d"] .banner-picture{clip-path:polygon(0 29%,100% 0,100% 100%,0 100%)}
.banner-scene.is-selected .banner-picture{height:clamp(340px,26.5vw,515px)}.banner-picture img,.banner-picture video{width:100%;height:100%;object-fit:cover;display:block}.banner-picture video{position:absolute;inset:0;pointer-events:none}.banner-scene.has-video-error video{visibility:hidden}.banner-caption{height:49px;display:flex;align-items:center;justify-content:space-between;padding:0 15px 0 24px;font-size:14px}.banner-caption a{color:#202936;text-decoration:none}.banner-caption a:hover{text-decoration:underline}.banner-caption span{font-size:9px;letter-spacing:1.1px;color:#5f7182;opacity:0}.is-selected .banner-caption span{opacity:1}
.banner-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:86px;padding:10px 4% 27px}.banner-footer button{background:transparent;color:#344b60;border:1px solid #93a6b8;border-radius:24px;padding:10px 17px;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}.banner-footer button:hover{background:#e8eef5}.home-page .motion-banner .hero-facts{display:flex;gap:20px;list-style:none;margin:0;padding:0}.home-page .motion-banner .hero-facts li{display:block;color:#4d5f70;font-size:12px;line-height:1.7}.banner-mobile-select{display:none}.banner-status{margin:0;padding:0 4% 12px;color:#54697c;font-size:12px}.banner-status:empty{display:none}.motion-banner [hidden]{display:none!important}.motion-banner button:focus-visible,.motion-banner a:focus-visible{outline:3px solid #075d9f;outline-offset:4px}.banner-picture:focus-visible{outline-offset:-5px}
@media(min-width:761px){.motion-banner:not([data-active-scene="3d"]) .banner-gallery{margin-top:24px}}
@media(min-width:1650px){.banner-intro{padding-top:64px}.banner-gallery{margin-top:-32px}.banner-footer{min-height:120px}.banner-caption{height:54px}}
@media(max-width:1100px){.banner-intro{padding:45px 5% 0;grid-template-columns:52% 48%}.home-page .banner-intro h1{font-size:4.3vw}.banner-aside{padding-left:3%}.banner-aside p{white-space:normal;max-width:360px;font-size:14px}.banner-actions a{padding:12px 23px;min-height:46px;font-size:14px}.banner-gallery{margin-top:-5px}.banner-footer{gap:18px;padding-left:3%;padding-right:3%}.home-page .motion-banner .hero-facts{gap:12px}.home-page .motion-banner .hero-facts li{font-size:11px}.banner-caption span{display:none}}
@media(max-width:760px){.home-page .site-header .main-nav{background:#fbfcfd}.banner-intro{display:block;padding:32px 23px 0}.home-page .banner-intro h1{font-size:clamp(28px,7.65vw,42px);line-height:1.45;letter-spacing:-.06em}.banner-aside{padding:0}.banner-aside p{font-size:13px;line-height:1.8;margin:16px 0 18px;max-width:330px}.banner-actions{gap:12px}.banner-actions a{padding:12px 26px;font-size:14px}.banner-gallery{height:auto;display:block;margin:23px 0 0;padding:0 16px}.banner-scene{margin-bottom:12px}.motion-banner .banner-scene{display:none;margin-bottom:0}.motion-banner .banner-scene.is-selected{display:block}.banner-scene .banner-picture,.banner-scene.is-selected .banner-picture{height:285px;clip-path:polygon(0 9%,100% 0,100% 100%,0 100%);border-radius:3px}.banner-caption{height:38px;padding:0 5px;font-size:12px}.is-selected .banner-caption span{display:block;font-size:8px}.banner-mobile-select{display:flex;gap:9px;padding:0 20px}.banner-mobile-select button{flex:1;padding:10px 0;border:1px solid #b4c6d6;border-radius:3px;font:inherit;font-size:12px;background:transparent;color:#4c6071;cursor:pointer}.banner-mobile-select button[aria-pressed=true]{border-color:#81b7e5;background:#e4eff8;color:#0868b5}.banner-footer{padding:20px 20px 18px;flex-wrap:wrap;min-height:0;gap:16px}.home-page .motion-banner .hero-facts{display:block;width:100%}.home-page .motion-banner .hero-facts li{font-size:11px;line-height:1.8}.banner-footer button{font-size:11px;padding:9px 14px}}
@media(prefers-reduced-motion:reduce){.banner-scene,.banner-picture{transition:none}}

/* Reserve the enhanced controls before deferred scripts arrive. */
.motion-banner .banner-footer button[hidden]{display:block!important;visibility:hidden}
@media(max-width:760px){.motion-banner .banner-mobile-select[hidden]{display:flex!important;visibility:hidden}}
