/* Edge-to-edge video with overlays confined to the outside white space. */
.hero.hero-video{position:relative;isolation:isolate;display:block;max-width:none;width:100%;height:max(56.25vw,540px);min-height:0;padding:0;overflow:hidden;background:#fff;text-align:center}
.hero-video .hero-media{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:.3;pointer-events:none;z-index:-1}
.hero-video .hero-media video,.hero-video .hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.hero-video .hero-media video{opacity:0}
.hero-video .hero-media.is-playing video{opacity:1}
.hero-video .hero-media.is-playing .hero-poster{visibility:hidden}
.hero-video .hero-copy{position:absolute;top:8.6%;left:8.6%;right:8.6%;width:auto;max-width:none;margin:0}
.hero-video .eyebrow{color:#514071;margin:0 0 12px;font-size:10px;letter-spacing:2px}
.hero-video h1{display:flex;justify-content:space-between;gap:20px;font-size:clamp(32px,4.3vw,68px);letter-spacing:-2px;line-height:1.1;margin:0;color:#20243d;text-shadow:0 1px 5px #fff}
.hero-video h1 em{color:#51329c}
.hero-video .actions{position:absolute;bottom:14%;left:8.6%;right:8.6%;display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin:0;gap:12px}
.hero-video .button{min-height:50px;padding:13px 25px;border-radius:9px;gap:24px}
.hero-video .primary{background:#51329c;border-color:#51329c;color:#fff}
.hero-video .outline{background:#fff;border-color:#9787b6;color:#20243d}
body:has(#home:not([hidden])) .mobile-cta{display:none}
.hero-video-toggle{position:absolute;inset:0;z-index:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;cursor:pointer;appearance:none}
.hero-video-toggle:focus-visible{outline:3px solid #51329c;outline-offset:-6px}
.hero-video .hero-copy,.hero-video .actions{z-index:1;pointer-events:none}
.hero-video .actions a{pointer-events:auto}
@media(max-width:680px){.hero.hero-video{height:500px}.hero-video .hero-copy{top:24px;left:5%;right:5%}.hero-video h1{font-size:clamp(25px,6.8vw,40px);letter-spacing:-1px;gap:8px}.hero-video .actions{bottom:76px;left:5%;right:5%;gap:10px;flex-direction:row}.hero-video .button{width:calc(50% - 5px);min-height:48px;padding:10px 8px;font-size:11px;gap:8px}.hero-video .eyebrow{margin-bottom:14px}}
