/* User-supplied scene: keep the mobile copy above the equipment. */
.hero-image{position:relative;isolation:isolate;overflow:hidden;width:100%;padding:0;min-height:680px;background:#edf3fa;display:flex;align-items:center}
.hero-background{position:absolute;inset:0 0 0 auto;z-index:-1;width:56%;height:100%;object-fit:cover;object-position:center 70%;mask-image:linear-gradient(to right,transparent,black 22%)}
.hero-layout{padding-block:48px}.hero-image .hero-copy{width:46%;max-width:520px}.hero-image .eyebrow{margin-bottom:18px}.hero-image h1{font-size:clamp(44px,4.6vw,60px);line-height:1.06;letter-spacing:-.045em}.hero-image .hero-lead{font-size:19px;line-height:1.5;max-width:390px;margin:22px 0 0}.hero-image .hero-action{margin-top:26px}.hero-image .hero-secondary{margin:12px 0 0;font-size:14px}
@media(max-width:760px){
 .hero-image{min-height:660px;aspect-ratio:941/1672;display:block}
 .hero-background{width:100%;height:100%;object-position:center bottom;mask-image:none}
 .hero-layout{padding-block:20px 0}.hero-image .hero-copy{width:100%;max-width:none;text-align:center}
 .hero-image .eyebrow{justify-content:center;font-size:11px;line-height:20px;margin-bottom:12px;gap:7px}.hero-image .mini-cross{font-size:20px}
 .hero-image h1{font-size:clamp(32px,9.25vw,40px);line-height:1.04;max-width:350px;margin-inline:auto;letter-spacing:-.04em}
 .hero-image .hero-lead{font-size:16px;line-height:1.5;max-width:345px;margin:14px auto 0}
 .hero-image .hero-action{margin-top:18px}.hero-image .hero-action .button{width:auto;min-width:224px;max-width:100%;gap:25px;min-height:45px;padding:10px 16px;font-size:14px}
 .hero-image .hero-secondary{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);margin:0;padding:7px 12px;border-radius:7px;background:#ffffffb8;white-space:nowrap;font-size:13px;gap:12px}
}
@media(max-width:360px){.hero-image .hero-lead{font-size:15px;max-width:280px}.hero-image .eyebrow{font-size:10px}.hero-image .hero-action{margin-top:16px}}

.hero-image h1{font-size:clamp(30px,3.4vw,44px)}.hero-title-line{white-space:nowrap}@media(max-width:760px){.hero-image h1{font-size:clamp(27px,7.6vw,34px);line-height:1.12;max-width:none}}
/* One-time, staggered entrance on the first screen only. */
@media(prefers-reduced-motion:no-preference){
 .hero-image .eyebrow,.hero-image h1,.hero-image .hero-lead,.hero-image .hero-action,.hero-image .hero-secondary{animation:hero-entrance .85s cubic-bezier(.22,1,.36,1) both}
 .hero-image .eyebrow{animation-delay:.04s}
 .hero-image h1{animation-delay:.12s}
 .hero-image .hero-lead{animation-delay:.2s}
 .hero-image .hero-action{animation-delay:.28s}
 .hero-image .hero-secondary{animation-delay:.36s}
 .hero-image .hero-background{animation:hero-scene-entrance 1.1s cubic-bezier(.22,1,.36,1) .08s both}
}
@keyframes hero-entrance{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}
@keyframes hero-scene-entrance{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
/* Frosted glass benefits, independently moving rows. */
.hero-benefits{position:absolute;bottom:42px;right:0;width:54%;overflow:hidden;padding:8px 0;isolation:isolate;text-align:center}
.glass-row{overflow:hidden;padding:3px 0}.glass-row+.glass-row{margin-top:7px}
.glass-track{display:flex;width:max-content;animation:glass-drift 42s linear infinite}
.glass-row:nth-child(2) .glass-track{animation-direction:reverse;animation-duration:48s;animation-delay:-13s}
.glass-group{display:flex;gap:12px;padding-right:12px;flex-shrink:0}
.glass-pill{display:flex;align-items:center;justify-content:center;white-space:nowrap;min-height:46px;padding:9px 23px;border-radius:999px;border:1px solid rgba(255,255,255,.72);border-bottom-color:rgba(94,102,116,.28);background:linear-gradient(135deg,rgba(255,255,255,.65),rgba(225,230,239,.4));-webkit-backdrop-filter:blur(19px) saturate(115%);backdrop-filter:blur(19px) saturate(115%);box-shadow:inset 0 1px 1px #ffffffb3,inset 0 -1px 2px #7580991a,0 3px 9px #2734480c;color:#11151b;font-size:14px;font-weight:600;line-height:1.25}
.hero-benefits:hover .glass-track,.hero-benefits:focus-within .glass-track{animation-play-state:paused}
.hero-benefits:focus-visible{outline:2px solid #315efa;outline-offset:-2px}
@keyframes glass-drift{to{transform:translateX(-50%)}}
@media(max-width:760px){.hero-benefits{width:100%;left:0;right:auto;bottom:64px}.glass-pill{min-height:42px;padding:9px 20px;font-size:13px}.glass-group{gap:10px;padding-right:10px}.glass-row+.glass-row{margin-top:5px}}
@media(prefers-reduced-motion:reduce){.glass-track{animation:none}.glass-row{overflow-x:auto;scrollbar-width:thin}.glass-group[aria-hidden="true"]{display:none}}
/* Keep both glass rows visible above mobile browser controls. */
.glass-pill{font-size:17px;font-weight:400}
@media(max-width:760px){.hero-benefits{bottom:auto;top:auto;bottom:58px}.glass-pill{font-size:16px;font-weight:400;min-height:44px}}

.glass-pill{border-color:transparent;box-shadow:0 3px 9px #2734480c}

/* Raise the mobile scene without resizing it; shorten the hero equally. */
@media(max-width:760px){
 .hero-image{--scene-lift:clamp(22px,7vw,34px);height:calc(max(660px,177.6833vw) - var(--scene-lift));min-height:0;aspect-ratio:auto}
 .hero-image .hero-background{top:calc(-1 * var(--scene-lift));height:calc(100% + var(--scene-lift));bottom:auto}
}

/* Raise both rows by five percent of the hero height. */
.hero-benefits{bottom:calc(42px + 5%)}
@media(max-width:760px){.hero-benefits{bottom:calc(58px + 5%)}}
