.agent-one-scene{position:relative}
.agent-one-stage{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;box-sizing:border-box}
.ao-ready .agent-one-scene{height:180svh}
.ao-ready .agent-one-stage{position:sticky;top:0;overflow:hidden}
.agent-one-eyebrow{font:12px 'avenir-lt-pro',Arial,sans-serif;letter-spacing:.18em;color:var(--muted,#aaa);text-align:center;margin:0}
.agent-one-eyebrow>span:empty{display:none}
.agent-one-heading{position:relative;width:min(100%,1000px);height:4.6em;margin:22px 0 30px;text-align:center;font-family:'the-seasons',Georgia,serif;font-size:clamp(38px,6.5vw,88px);font-weight:400;line-height:1.1;letter-spacing:-.025em}
.agent-one-heading>span,.agent-one-heading>strong{position:absolute;left:50%;white-space:nowrap;transform:translateX(-50%);display:block}
.ao-first{top:0}.ao-agent{top:25%}.ao-third{top:50%}.ao-one{top:75%;color:#dffffd}
.agent-one-heading strong{font-family:'avenir-lt-pro',Arial,sans-serif!important;font-weight:700;font-style:normal;font-size:.9em;letter-spacing:-.035em}
.ao-scroll{font-size:10px;letter-spacing:.18em;color:#999;margin:28px 0 0}
.ao-ready .agent-one-heading{animation:ao-enter 1.1s ease-out both}
.ao-ready .agent-one-eyebrow{animation:ao-enter .8s ease-out both}
.agent-one-stage{isolation:isolate}
.agent-one-stage:after{content:"";position:absolute;inset:auto 0 -1px;height:clamp(160px,30svh,400px);z-index:0;pointer-events:none;background:linear-gradient(180deg,#08080800 0%,#08080833 35%,#080808b3 70%,#080808 100%)}
.agent-one-stage>.eyebrow,.agent-one-stage>.button,.ao-scroll{position:relative;z-index:1}
.agent-one-heading{z-index:1}
.ao-video{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:#080808}
.ao-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ao-video iframe{position:absolute;left:50%;top:50%;width:var(--ao-video-width,100%);height:var(--ao-video-height,100%);transform:translate(-50%,-50%);border:0;max-width:none;opacity:0;transition:opacity .35s ease}
.ao-video:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0008,#0005 45%,#000a)}
.ao-video-visible .ao-video iframe{opacity:1}
.agent-one-eyebrow{color:#e8e8eb}
.agent-one-heading{text-shadow:0 2px 24px #0006}
@media(max-width:700px){.ao-hero-in-view>.mobile-cta{visibility:hidden;pointer-events:none}}
@keyframes ao-enter{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}
@media(max-width:700px){.agent-one-heading{font-size:clamp(32px,8vw,56px);height:4.8em}.agent-one-stage{padding:28px 16px}.agent-one-eyebrow{font-size:10px;max-width:290px;line-height:1.7}.ao-ready .agent-one-scene{height:160svh}.agent-one-stage>.button{font-size:14px}}
@media(max-height:650px) and (min-width:701px){.agent-one-heading{font-size:clamp(32px,5vw,60px);margin-block:14px}.agent-one-stage{padding-block:20px}.ao-scroll{margin-top:16px}}
@media(prefers-reduced-motion:reduce){.ao-ready .agent-one-scene{height:auto}.ao-ready .agent-one-stage{position:relative;min-height:85svh}.ao-ready .agent-one-heading,.ao-ready .agent-one-eyebrow{animation:none}.ao-scroll,.ao-video iframe{display:none!important}.ao-soft{opacity:1!important}}

/* This stylesheet is loaded only for the animated hero. Let its full-bleed
   video start at the top of the page while the header scrolls away normally. */
header.nav{position:absolute;inset:0 0 auto;z-index:5;background:transparent!important;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
header.nav a:not(.button){text-shadow:0 1px 12px #000b}
header.nav .phone{color:#f5f5f7}
header.nav .shoot-link{color:#e6f4f1}
body .agent-one-stage{padding-top:104px}
@media(max-width:700px){body .agent-one-stage{padding-top:88px}}
