.hero-carousel{position:relative;isolation:isolate;overflow:hidden;border-radius:18px;color:#fff;background:#123c48;touch-action:pan-y}
.hero-stage{position:relative}.hero-slide{position:relative;min-height:620px;background:#153e4d;overflow:hidden}
.hero-picture{position:absolute;inset:0;z-index:0}.hero-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#072c3ee8 0%,#072c3ebd 32%,#072c3e52 75%,#072c3e38 100%)}
.hero-picture .hero-photo{height:100%;width:100%;object-fit:cover}.desktop-center{object-position:center}.desktop-left{object-position:left}.desktop-right{object-position:right}.desktop-top{object-position:top}.desktop-bottom{object-position:bottom}
.hero-copy{position:relative;z-index:1;padding:74px 6.5% 112px;width:min(860px,100%);overflow-wrap:anywhere}
.hero-copy .eyebrow{font-size:12px;letter-spacing:.14em;margin:0 0 24px;line-height:1.65;color:#e0f0f4}
.hero-copy .hero-title{font-size:clamp(36px,4.2vw,60px);line-height:1.22;letter-spacing:-.05em;white-space:pre-line;margin:0 0 23px;font-weight:750}
.hero-copy .hero-description{font-size:17px;line-height:1.85;white-space:pre-line;max-width:620px;color:#f0f5f8;margin:0 0 26px}
.hero-copy .hero-credit{font-size:10px;line-height:1.6;color:#e2ebef;margin:17px 0 0;max-width:590px}
.hero-event-badge{display:inline-block;border-radius:4px;background:#f8c832;color:#142f43;padding:7px 12px;font-weight:700;font-size:12px;margin:0 0 18px}
.hero-controls{position:absolute;z-index:2;left:6.5%;right:6.5%;bottom:25px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.hero-dots{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.hero-dot{width:26px;height:44px;display:grid;place-items:center;border:0;background:none;padding:0}.hero-dot:after{content:'';width:7px;height:7px;border-radius:50%;background:#ffffff80;transition:width .2s}.hero-dot.active:after{width:22px;border-radius:8px;background:#fff}
.hero-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.hero-counter{font-variant-numeric:tabular-nums;font-size:12px;letter-spacing:.08em;margin-right:10px}.hero-arrow,.hero-play{min-width:44px;min-height:44px;background:#12364e9c;color:#fff;border:1px solid #ffffff60;border-radius:6px;font-size:15px}.hero-play{font-size:12px;padding:0 12px;min-width:97px}.hero-controls button:hover{background-color:#0b283ebf}.hero-controls button:focus-visible{outline:3px solid #f8c832;outline-offset:3px}
.hero-fallback{padding:90px 6.5%;min-height:440px;background:linear-gradient(120deg,#153e4d,#285f62)}.hero-fallback h2{font-size:clamp(32px,4vw,54px);max-width:780px}
.hero-slide:not([hidden]) .hero-copy{animation:hero-copy-in .45s ease-out}@keyframes hero-copy-in{from{opacity:.6;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:760px){
 .hero-carousel{border-radius:12px}.hero-slide{min-height:640px}.hero-copy{padding:52px 7% 150px;width:100%}.hero-copy .hero-title{font-size:clamp(30px,8.6vw,42px);line-height:1.3;margin-bottom:20px}.hero-copy .hero-description{font-size:15px;line-height:1.8}.hero-copy .eyebrow{font-size:10px;letter-spacing:.09em;margin-bottom:22px}.hero-copy .hero-credit{font-size:10px}.hero-picture:after{background:linear-gradient(90deg,#072c3ed4,#072c3e8a),linear-gradient(0deg,#072c3ead,transparent 45%)}
 .hero-controls{left:7%;right:7%;bottom:20px;flex-direction:column;align-items:stretch;gap:4px}.hero-dots{justify-content:flex-start}.hero-actions{justify-content:flex-end}.hero-counter{margin-right:auto}.hero-dot{height:36px;width:24px}.hero-copy .hero-cta{font-size:14px;padding:12px 18px}
 .hero-picture .mobile-center{object-position:center}.hero-picture .mobile-left{object-position:left}.hero-picture .mobile-right{object-position:right}.hero-picture .mobile-top{object-position:top}.hero-picture .mobile-bottom{object-position:bottom}
}
@media(prefers-reduced-motion:reduce){.hero-slide:not([hidden]) .hero-copy{animation:none}.hero-dot:after{transition:none}}

/* Two real slides share one grid cell during the horizontal transition. */
.hero-stage{display:grid}.hero-stage>.hero-slide{grid-area:1 / 1;width:100%;min-width:0;will-change:transform}.hero-stage>.hero-slide[hidden]{display:none!important}
.hero-slide:not([hidden]) .hero-copy{animation:none}
.hero-slide>.hero-credit{position:absolute;z-index:1;bottom:88px;right:20px;max-width:65%;font-size:10px;line-height:1.4;color:#e8edef;margin:0;text-align:right;overflow-wrap:anywhere}
@media(max-width:760px){.hero-slide>.hero-credit{bottom:121px;right:7%;max-width:80%;font-size:10px}}
