/* Approved AE VSL spotlight + canonical inline contact form. Scoped to avoid altering the rest of either page. */
.vsl-spotlight{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#071b35 0%,#0b2d59 56%,#123f78 100%);color:#fff;border-radius:24px;padding:clamp(1.5rem,3.8vw,3.5rem);box-shadow:0 34px 84px -34px rgba(11,37,69,.78);margin-top:clamp(1rem,2.5vw,2rem);margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.vsl-spotlight,.vsl-spotlight *{box-sizing:border-box;min-width:0}
.vsl-spotlight img,.vsl-spotlight video,.vsl-spotlight input,.vsl-spotlight select,.vsl-spotlight button{max-width:100%}
.ae-descent .film-hero.vsl-spotlight{padding:clamp(1.5rem,3.8vw,3.5rem)}
.vsl-spotlight::before{content:"";position:absolute;z-index:-1;inset:-35% -18% auto auto;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(77,145,255,.36),rgba(77,145,255,0) 68%)}
.vsl-spotlight::after{content:"";position:absolute;z-index:-1;inset:auto auto -42% -17%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(46,191,171,.17),rgba(46,191,171,0) 70%)}
.vsl-spotlight .vsl-kicker{font:600 .76rem/1.4 "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase;color:#9ec5ff;margin:0 0 .85rem;text-align:center}
.vsl-spotlight .vsl-title{font-family:"Archivo",system-ui,sans-serif;font-size:clamp(2.25rem,5.5vw,4.85rem);font-weight:900;line-height:.98;letter-spacing:-.045em;color:#fff;text-align:center;max-width:17ch;margin:0 auto}
.vsl-spotlight .vsl-deck{font-family:"Public Sans",system-ui,sans-serif;font-size:clamp(1rem,1.7vw,1.22rem);line-height:1.6;color:#d8e8fb;text-align:center;max-width:72ch;margin:1.2rem auto 1.7rem}
.vsl-spotlight .vsl-watchline{font:600 .76rem/1.4 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:#9ec5ff;text-align:center;margin:0 0 .8rem}
.vsl-spotlight .vsl-media{width:min(100%,1060px);margin:0 auto}
.vsl-spotlight .vsl-media video{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;background:#020b16;border:1px solid rgba(255,255,255,.25);border-radius:18px;box-shadow:0 28px 70px -24px rgba(0,0,0,.9)}
.vsl-spotlight .vsl-disclosure{font:400 .8rem/1.55 "Public Sans",system-ui,sans-serif;color:#b9cbe0;text-align:center;max-width:86ch;margin:.85rem auto 0}
.vsl-lead-section{width:min(100%,880px);margin:1.45rem auto 0;scroll-margin-top:92px}
.vsl-lead-card{position:relative;background:#fff;color:#0b2545;border:1px solid rgba(255,255,255,.52);border-radius:20px;padding:clamp(1.25rem,3vw,2.25rem);box-shadow:0 30px 70px -30px rgba(0,0,0,.85)}
.vsl-lead-card .vsl-form-kicker{font:600 .72rem/1.4 "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase;color:#1d4ed8;text-align:center;margin:0 0 .55rem}
.vsl-lead-card h2{font-family:"Archivo",system-ui,sans-serif!important;font-size:clamp(1.55rem,3vw,2.3rem)!important;line-height:1.08!important;letter-spacing:-.025em!important;color:#0b2545!important;text-align:center;max-width:24ch;margin:0 auto .65rem!important}
.vsl-lead-card .vsl-form-deck{font:400 .97rem/1.55 "Public Sans",system-ui,sans-serif;color:#3d5372;text-align:center;max-width:62ch;margin:0 auto 1.35rem}
.vsl-lead-card .vsl-js-fallback{font:600 .9rem/1.5 "Public Sans",system-ui,sans-serif;color:#0b2545;text-align:center;background:#f2f6fb;border:1px solid #e3e9f0;border-radius:12px;padding:.85rem;margin:0 0 1rem}.vsl-lead-card .vsl-js-fallback a{color:#1d4ed8}
.vsl-lead-card form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem 1rem;text-align:left}
.vsl-lead-card .vsl-field{display:grid;gap:.38rem;margin:0}
.vsl-lead-card .vsl-field-full,.vsl-lead-card .vsl-sms,.vsl-lead-card .consent,.vsl-lead-card .error,.vsl-lead-card button{grid-column:1/-1}
.vsl-lead-card label{font:700 .92rem/1.35 "Archivo",system-ui,sans-serif;color:#0b2545;margin:0}
.vsl-lead-card input:not([type=checkbox]),.vsl-lead-card select{width:100%;min-height:52px;padding:.72rem .85rem;border:1.5px solid #c8d4e2;border-radius:10px;background:#fff;color:#0b2545;font:400 1rem/1.3 "Public Sans",system-ui,sans-serif}
.vsl-lead-card input:not([type=checkbox]):focus,.vsl-lead-card select:focus{outline:0;border-color:#2563eb;box-shadow:0 0 0 3px #dbe9ff}
.vsl-lead-card .vsl-sms{display:flex;gap:.7rem;align-items:flex-start;font:400 .82rem/1.5 "Public Sans",system-ui,sans-serif;color:#526783;cursor:pointer}
.vsl-lead-card .vsl-sms input{width:20px;height:20px;min-width:20px;margin:.08rem 0 0;accent-color:#2563eb}
.vsl-lead-card .consent{background:#f2f6fb;border:1px solid #e3e9f0;border-radius:12px;padding:.75rem .9rem}
.vsl-lead-card .fine{font:400 .78rem/1.5 "Public Sans",system-ui,sans-serif;color:#475569;margin:.25rem 0}
.vsl-lead-card .consent a{color:#1d4ed8}
.vsl-lead-card .error{min-height:1.35em;color:#b42318;font:700 .88rem/1.4 "Public Sans",system-ui,sans-serif;margin:0}
.vsl-lead-card .field-error{color:#b42318;font:700 .88rem/1.4 "Public Sans",system-ui,sans-serif;margin:.15rem 0 0}
.vsl-lead-card button{min-height:56px;border:2px solid #2563eb;border-radius:11px;background:#2563eb;color:#fff;font:800 1.03rem/1.2 "Archivo",system-ui,sans-serif;cursor:pointer;padding:.85rem 1.2rem}
.vsl-lead-card button:hover{background:#1d4ed8;border-color:#1d4ed8}
.vsl-lead-card button:focus-visible{outline:3px solid #8bb7ff;outline-offset:3px}
.vsl-lead-card .vsl-no-obligation{grid-column:1/-1;text-align:center;font:500 .76rem/1.45 "IBM Plex Mono",monospace;color:#64748b;margin:-.25rem 0 0}
.f-hero.vsl-spotlight .vsl-title{font-size:clamp(2.25rem,5.25vw,4.2rem)}
@media(max-width:700px){.vsl-spotlight{width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;border-radius:18px;padding:1.25rem .9rem 1.1rem;margin-left:auto!important;margin-right:auto!important}.ae-descent .film-hero.vsl-spotlight{padding:1.25rem .9rem 1.1rem}.vsl-spotlight .vsl-title{font-size:clamp(2rem,8.5vw,2.6rem)}.vsl-spotlight .vsl-deck{font-size:.98rem}.vsl-spotlight .vsl-media video{border-radius:12px}.vsl-lead-section{margin-top:1rem}.vsl-lead-card{border-radius:15px;padding:1.1rem .9rem}.vsl-lead-card form{grid-template-columns:1fr}.vsl-lead-card .vsl-field,.vsl-lead-card .vsl-field-full{grid-column:1}.vsl-lead-card h2{font-size:1.45rem!important}}
/* Mobile-first standard (Heath 2026-08-07): title, video immediately under it,
   wordy content after; balanced titles. Opt-in via .vsl-mobile-order on the
   hero (roth, descent). CSS order only: DOM, copy, form, and tracking are
   untouched. The one-line watchline stays as the pre-video prompt; the
   multi-line deck moves below the video. */
@media(max-width:700px){
  .vsl-spotlight.vsl-mobile-order{display:flex;flex-direction:column}
  .vsl-spotlight.vsl-mobile-order .vsl-kicker{order:1}
  .vsl-spotlight.vsl-mobile-order .vsl-title{order:2;text-wrap:balance}
  .vsl-spotlight.vsl-mobile-order .vsl-watchline{order:3;margin:1rem 0 .8rem}
  .vsl-spotlight.vsl-mobile-order .vsl-media{order:4}
  .vsl-spotlight.vsl-mobile-order .vsl-deck{order:5;margin:1.1rem auto 0}
  .vsl-spotlight.vsl-mobile-order .vsl-lead-section{order:6}
}
