/* Home hero: light top fading to dark, particle stream. The pill menu lives in pill.css. */
.h5{position:relative;height:clamp(690px,82svh,780px);overflow:hidden;background:linear-gradient(180deg,#fbfbfd 0%,#f1f5fc 46%,#050810 54%,#000 62%,#000 100%);color:#fff}
.h5 canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.h5 .glow{display:none;position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 40% at 50% 100%,rgba(59,140,255,.28),transparent 70%),radial-gradient(40% 30% at 80% 30%,rgba(59,140,255,.10),transparent 70%)}
.h5 .top{position:absolute;z-index:3;left:0;right:0;top:clamp(118px,17%,140px);text-align:center;padding:0 20px}
.h5 .eyebrow{display:inline-block;font-size:clamp(13px,1.1vw,15px);font-weight:600;color:#5b6678;letter-spacing:.02em;margin-bottom:clamp(12px,1.6vw,22px)}
.h5 h1{font-weight:500;font-size:clamp(34px,5.6vw,92px);line-height:1.08;letter-spacing:-.035em;margin:0;padding-bottom:.16em;background:linear-gradient(180deg,#0b0b0d 30%,#3a4458 130%);-webkit-background-clip:text;background-clip:text;color:transparent}
.h5 .bot{position:absolute;z-index:3;left:0;right:0;bottom:clamp(22px,5%,40px);text-align:center;padding:0 20px}
.h5 .sub{margin:0 auto;max-width:760px;font-size:clamp(16px,1.5vw,21px);line-height:1.45;color:#b8c3d8}
.h5 .cta{display:flex;gap:12px;justify-content:center;margin-top:clamp(18px,2.2vw,28px);flex-wrap:wrap}
.h5 .cta .btn{background:#0a6cff;color:#fff}
.h5 .cta .btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);box-shadow:none}
.h5 .cta .btn.ghost:hover{background:#fff;color:#000}
.h5 .note{margin:16px 0 0;font-size:13px;color:#8693aa}
@media(max-width:700px){.h5{height:470px;background:linear-gradient(180deg,#fbfbfd 0%,#f1f5fc 46%,#050810 54%,#000 62%,#000 100%)}.h5 h1{font-size:8.3vw;padding-bottom:.18em;letter-spacing:-.04em}.h5 .top{top:92px;padding:0 8px}.h5 .eyebrow{font-size:11px;margin-bottom:6px;white-space:nowrap}.h5 .sub{font-size:11.5px;line-height:1.35;max-width:320px}.h5 .cta{flex-direction:row!important;flex-wrap:nowrap;gap:8px;margin-top:10px}.h5 .cta .btn{flex:1 1 0;width:auto!important;min-width:0;padding:9px 4px;font-size:12.5px;white-space:nowrap;text-align:center}.h5 .note{font-size:10px;line-height:1.3;margin-top:8px}.h5 .bot{bottom:18px;padding:0 16px}}
/* v102: premium gradient on the hero buttons (bright blue top fading to near-black) */
.h5 .cta .btn:not(.ghost){background:linear-gradient(180deg,#1a78ff 0%,#0a6cff 60%,#0848b8 130%);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.h5 .cta .btn.ghost{background:transparent}

/* v110: river label */
.h5 .rv{position:absolute;z-index:4;left:clamp(24px,6vw,110px);top:50%;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#9cc4ff;opacity:.9;pointer-events:none;white-space:nowrap}
@media(max-width:700px){.h5 .rv{left:16px;font-size:7px;letter-spacing:.3em}}
