/* RealtyMind audience landing pages (for-*.html). Uses site.css tokens; --pa/--pb are the page's two agent colors (same in both themes). */
.for{--pgrad:linear-gradient(92deg,var(--pa),var(--pb))}
@supports (background:linear-gradient(in oklch 90deg,red,blue)){.for{--pgrad:linear-gradient(in oklch 92deg,var(--pa),var(--pb))}}
.pg{background:var(--pgrad);-webkit-background-clip:text;background-clip:text;color:transparent}
.pg-c{color:var(--pa)}
:root[data-theme="dark"] .pg-c{color:color-mix(in srgb,var(--pa) 70%,#fff)}
.btn.pgb{background:var(--pgrad);color:#fff;box-shadow:0 10px 26px color-mix(in srgb,var(--pa) 35%,transparent)}
.btn.dark{background:var(--ink);color:var(--bg);box-shadow:none;width:100%}
.more{display:inline-flex;align-items:center;gap:6px;font-weight:700;text-decoration:none;color:var(--ag,var(--accent))}
.more.lt{color:#BFD0FF}
.sec-h{display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;margin:0 auto clamp(28px,4.5vw,52px);max-width:880px}
.sec-h .lead{margin-inline:auto}
.sec-h.left{align-items:flex-start;text-align:left;margin-left:0}
.sec-h.left .lead{margin-inline:0}

/* ---------- hero ---------- */
.fhero{padding-top:clamp(28px,5vw,64px);padding-bottom:clamp(40px,5vw,72px);background:radial-gradient(900px 500px at 10% -10%,color-mix(in srgb,var(--pa) 13%,transparent),transparent 65%),radial-gradient(800px 500px at 100% 20%,color-mix(in srgb,var(--pb) 12%,transparent),transparent 65%),var(--bg)}
.fhero .blob{opacity:.22}
.fh-grid{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:clamp(28px,4vw,56px);align-items:center}
.fh-h{font-size:clamp(42px,5.6vw,80px)}
.fh-h .pg{display:block;padding-bottom:.06em}
.built{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 14px 6px 6px;border-radius:99px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);font-size:14px;font-weight:600;color:var(--muted);max-width:100%}
.built b{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.built .bi{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--pgrad)}
.fh-vid{position:relative}
.fh-pills{margin-top:clamp(36px,5vw,60px)}
.notif .ni{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--ag),var(--ag2))}
.vn1{top:-22px;left:-34px;z-index:3}
.vn2{bottom:-26px;right:-18px;z-index:3;animation-delay:-3s}

/* video player */
.vp{position:relative;aspect-ratio:16/9;border-radius:clamp(16px,2vw,26px);overflow:hidden;background:#0A0F24;box-shadow:0 40px 90px color-mix(in srgb,var(--pa) 28%,rgba(10,16,40,.25)),0 0 0 1px rgba(255,255,255,.06) inset;isolation:isolate}
.vp-fb{position:absolute;inset:0;background:radial-gradient(70% 90% at 0% 0%,color-mix(in srgb,var(--pa) 70%,transparent),transparent 70%),radial-gradient(70% 90% at 100% 100%,color-mix(in srgb,var(--pb) 60%,transparent),transparent 70%),#0A0F24;overflow:hidden}
.vp-fb img{position:absolute;right:-8%;bottom:-14%;width:66%;border-radius:12px;box-shadow:0 30px 60px rgba(0,0,0,.45);transform:perspective(1200px) rotateY(-14deg) rotateX(6deg) rotate(-2deg)}
.vp-fbt{position:absolute;left:6%;top:9%;max-width:46%;color:#fff;display:flex;flex-direction:column;gap:8px}
.vp-fbt .eyebrow{color:rgba(255,255,255,.75)}
.vp-fbt b{font-size:clamp(18px,2.3vw,32px);line-height:1.02;letter-spacing:-.035em;font-weight:850}
.vp-fbt b span{background:linear-gradient(90deg,#fff,color-mix(in srgb,var(--pb) 50%,#fff));-webkit-background-clip:text;background-clip:text;color:transparent}
.vp-big{position:absolute;left:50%;top:50%;width:clamp(64px,9vw,104px);aspect-ratio:1;margin:calc(clamp(64px,9vw,104px)/-2) 0 0 calc(clamp(64px,9vw,104px)/-2);border-radius:50%;background:#fff;color:var(--pa);display:grid;place-items:center;box-shadow:0 0 0 12px rgba(255,255,255,.18),0 20px 50px rgba(0,0,0,.35);animation:pulse 2.4s ease-in-out infinite}
.vp-big svg{margin-left:6%}
@keyframes pulse{50%{box-shadow:0 0 0 22px rgba(255,255,255,.06),0 20px 50px rgba(0,0,0,.35)}}
.vp video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:transparent;display:block}
.vp.noposter:not(.playing) video{opacity:0}
.vp-btn{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;padding:0;border-radius:inherit}
.vp-btn:hover ~ .vp-fb .vp-big,.vp:hover .vp-big{transform:scale(1.06)}
.vp-lbl{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:99px;background:rgba(10,14,35,.72);color:#fff;font-size:13px;font-weight:700;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.vp.playing .vp-btn,.vp.playing .vp-fb{display:none}
.vp-miss{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding:clamp(20px,5%,44px);color:#fff;background:linear-gradient(120deg,rgba(6,10,28,.97),rgba(6,10,28,.86));backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.vp-miss[hidden]{display:none}
.vp-miss b{font-size:clamp(18px,2.2vw,28px);letter-spacing:-.03em;line-height:1.1}
.vp-miss p{color:rgba(255,255,255,.8);font-size:15px}
.vp-miss .btns{margin-top:6px}
@media (max-width:960px){.fh-grid{grid-template-columns:minmax(0,1fr)}.vn1{left:-6px}.vn2{right:-6px}}

/* partner strip */
.nr-band{padding-block:0 clamp(24px,3vw,40px);background:var(--bg)}
.nr-card{display:flex;gap:16px;align-items:center;padding:18px 22px;border-radius:20px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-left:5px solid var(--pa)}
.nr-card p{color:var(--muted)}
.nr-card b{color:var(--ink)}
.nr-i{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;background:var(--pgrad)}
.nr-mini{display:flex;gap:8px;align-items:center;font-weight:700;color:var(--bad);font-size:15px}

/* ---------- what changes: tabs ---------- */
.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:24px}
.tb{display:inline-flex;align-items:center;gap:10px;text-align:left;padding:8px 16px 8px 8px;border-radius:99px;border:1px solid var(--line);background:var(--bg);cursor:pointer;transition:all .25s}
.tb b{display:block;font-size:15px;line-height:1.2}
.tb small{display:block;font-size:12px;color:var(--muted);line-height:1.2}
.tb[aria-selected="true"]{background:color-mix(in srgb,var(--ag) 12%,var(--surface));border-color:var(--ag);box-shadow:0 10px 24px color-mix(in srgb,var(--ag) 22%,transparent)}
.tb .orb::after{display:none}
.tp{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(22px,4vw,48px);border-radius:28px;background:radial-gradient(700px 400px at 100% 0%,color-mix(in srgb,var(--ag) 14%,transparent),transparent 70%),color-mix(in srgb,var(--ag) 5%,var(--bg));border:1px solid color-mix(in srgb,var(--ag) 22%,var(--line));margin-bottom:20px}
.js .tp:not(.on){display:none}
.js .tp.on{animation:tpIn .5s cubic-bezier(.2,.7,.2,1)}
@keyframes tpIn{from{opacity:0;transform:translateY(14px)}}
.tp-txt{display:flex;flex-direction:column;gap:16px}
.ag-c{color:var(--ag)}
:root[data-theme="dark"] .ag-c{color:var(--ag2)}
.tp-h{font-size:clamp(28px,3.2vw,44px);letter-spacing:-.045em}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ba > div{padding:12px 14px;border-radius:14px;font-size:14.5px;line-height:1.45}
.ba small{display:block;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}
.bf{background:var(--sunk);color:var(--muted)}
.bf small{color:var(--faint)}
.af{background:var(--surface);border:1px solid color-mix(in srgb,var(--ag) 40%,var(--line));box-shadow:var(--shadow)}
.af small{color:var(--ag)}
.tp-dev{padding-bottom:6%}
.tp-dev .macbook .scr img{height:auto}
.tp-dev .macbook{width:90%}
.tp-dev .iphone{width:25%;min-width:0;bottom:0}
@media (max-width:960px){.tp{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.ba{grid-template-columns:1fr}.tb{padding-right:12px}.tb small{display:none}.tp-dev .iphone{width:30%}}

/* ---------- story stage (always a scene, dark or sunny) ---------- */
.story{background:#050817;color:#EAF0FF;position:relative}
.stage{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(640px,92vh,860px);display:flex;--ink2:#EAF0FF;--card:rgba(9,13,34,.86);--card-ink:#EAF0FF;--bub:rgba(255,255,255,.1);--b1:#151C3D;--b2:#0F1530;--wl:#FFD98A;--pl:#0A0F24;--hs:#1A2247;--rf:#0F1430;--sg:#F2F4FA}
.stage[data-sky="day"]{--ink2:#0B1020;--card:rgba(255,255,255,.94);--card-ink:#0B1020;--bub:#EEF2F8;--b1:#A9BEDF;--b2:#C4D3EA;--wl:#E5EEFA;--pl:#2E7D5B;--hs:#FFFFFF;--rf:#C9584A;--sg:#FFFFFF}
.stage[data-sky="dawn"]{--ink2:#0B1020;--card:rgba(255,255,255,.92);--card-ink:#0B1020;--bub:#EEF2F8;--b1:#7C7FB5;--b2:#9C98C6;--wl:#FFE1A8;--pl:#3B3A6A;--hs:#F7E9DD;--rf:#9C5B5B;--sg:#FFFFFF}
.stage[data-sky="dusk"]{--b1:#2A2558;--b2:#3C3170;--wl:#FFCF7A;--pl:#1A1638;--hs:#3A3168;--rf:#231D48}
.sky{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease;z-index:0}
.sky-day{background:linear-gradient(#5FA6FF 0%,#9CCBFF 45%,#DDEFFF 80%,#FFF5DF 100%)}
.sky-dawn{background:linear-gradient(#3B57A8 0%,#8C8DCB 34%,#F2A688 66%,#FFD69C 88%,#FFE9C2 100%)}
.sky-dusk{background:linear-gradient(#10163C 0%,#2E2766 30%,#7A4A86 58%,#D9806A 82%,#F6B672 100%)}
.sky-night{background:radial-gradient(120% 60% at 50% 105%,#2B2160 0%,transparent 60%),linear-gradient(#04060F,#0A0F2C 55%,#17184A)}
.stage[data-sky="day"] .sky-day,.stage[data-sky="dawn"] .sky-dawn,.stage[data-sky="dusk"] .sky-dusk,.stage[data-sky="night"] .sky-night{opacity:1}
.stars{position:absolute;inset:0 0 40% 0;opacity:0;transition:opacity 1.4s;z-index:0;background-image:radial-gradient(1.4px 1.4px at 8% 12%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 22% 30%,#fff 50%,transparent 52%),radial-gradient(1.6px 1.6px at 37% 8%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 51% 22%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 66% 14%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 79% 34%,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 91% 9%,#fff 50%,transparent 52%),radial-gradient(1px 1px at 14% 52%,#fff 50%,transparent 52%),radial-gradient(1.2px 1.2px at 44% 46%,#fff 50%,transparent 52%);background-size:520px 360px;animation:twk 5s ease-in-out infinite alternate}
@keyframes twk{to{filter:brightness(.5)}}
.stage[data-sky="night"] .stars{opacity:.9}.stage[data-sky="dusk"] .stars{opacity:.3}
.moon{position:absolute;top:12%;right:12%;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle at 38% 35%,#FFF8E6,#F1DFB4 60%,#D9C38E);box-shadow:0 0 60px 18px rgba(255,236,190,.22);opacity:0;transform:translateY(30px);transition:opacity 1.4s,transform 1.6s;z-index:0}
.stage[data-sky="night"] .moon{opacity:1;transform:none}
.sun{position:absolute;right:14%;top:14%;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#FFF8DC 0%,#FFE08A 40%,rgba(255,200,110,0) 70%);opacity:0;transform:translateY(60px);transition:opacity 1.6s,transform 2s cubic-bezier(.2,.7,.2,1);z-index:0}
.stage[data-sky="day"] .sun{opacity:1;transform:none}
.stage[data-sky="dawn"] .sun{opacity:.9;transform:translateY(120px)}
.art{position:absolute;left:50%;bottom:0;width:max(100%,1000px);transform:translateX(-50%);z-index:1;pointer-events:none}
.art svg{display:block;width:100%;height:auto}
.art .b1{fill:var(--b1);transition:fill 1.4s}.art .b2{fill:var(--b2);transition:fill 1.4s}
.art .w{fill:var(--wl);transition:fill 1.4s}
.art .wn{opacity:.8}
.art .palm .tr{stroke:var(--pl);transition:stroke 1.4s}.art .palm .fr{fill:var(--pl);transition:fill 1.4s;animation:sway 5s ease-in-out infinite alternate;transform-origin:0 0}
@keyframes sway{to{transform:rotate(4deg)}}
.art .hs{fill:var(--hs);transition:fill 1.4s}.art .rf{fill:var(--rf);transition:fill 1.4s}
.art .win2{fill:var(--wl);transition:fill 1.4s}.art .dr{fill:var(--rf)}
.art .post{fill:var(--pl)}.art .sgb{fill:var(--sg)}
.art .sgt{font:800 10px var(--f-body);fill:#C9384A;letter-spacing:.04em}
.art .gr{fill:var(--pl)}
.st-in{position:relative;z-index:3;display:flex;flex-direction:column;gap:clamp(16px,2.5vw,28px);padding-block:clamp(28px,5vw,56px) clamp(150px,18vw,230px);width:100%;color:var(--ink2);transition:color 1.2s}
.st-head{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
.st-head .eyebrow{color:inherit;opacity:.8}
.st-sub{font-weight:600;opacity:.75}
.js .scns{display:grid}
.js .scn{grid-area:1/1}
.scn{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(20px,4vw,56px);align-items:center;margin-bottom:28px}
.js .scn{margin:0;transition:opacity .6s ease,visibility 0s .6s}
.js .scn:not(.on){opacity:0;visibility:hidden}
.js .scn.on{transition:opacity .6s ease,visibility 0s 0s}
.sc-copy{display:flex;flex-direction:column;gap:12px}
.clk{display:flex;align-items:baseline;gap:6px;font-weight:850;letter-spacing:-.06em;line-height:.85}
.clk .num{font-size:clamp(76px,11vw,156px)}
.clk small{font-size:clamp(22px,2.6vw,36px);letter-spacing:0;background:linear-gradient(90deg,var(--ag),var(--ag2));-webkit-background-clip:text;background-clip:text;color:transparent}
.sc-h{font-size:clamp(28px,3.6vw,50px);letter-spacing:-.045em}
.sc-cap{font-size:clamp(16px,1.4vw,19px);opacity:.82;max-width:44ch}
.js .scn .clk,.js .scn .sc-h,.js .scn .sc-cap{transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .8s}
.js .scn:not(.on) .clk{transform:translateY(30px);opacity:0}
.js .scn:not(.on) .sc-h{transform:translateY(24px);opacity:0}
.sc-card{background:var(--card);color:var(--card-ink);border-radius:24px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 30px 80px rgba(0,0,0,.3);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);transition:background 1.2s,color 1.2s}
.sc-card .who{display:flex;align-items:center;gap:10px}
.sc-card .who b{display:block;font-size:15px}
.sc-card .who small{display:block;font-size:12px;opacity:.65}
.sc-card .live{margin-left:auto;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#E2364A;background:rgba(255,107,114,.16);padding:3px 9px;border-radius:99px}
.sc-card .m{padding:10px 13px;border-radius:16px;font-size:14.5px;line-height:1.45;max-width:88%}
.sc-card .m small{display:block;font-size:10.5px;opacity:.7;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}
.sc-card .m.in{background:var(--bub);align-self:flex-start;border-bottom-left-radius:5px}
.sc-card .m.out{background:linear-gradient(135deg,var(--ag),var(--ag2));color:#fff;align-self:flex-end;border-bottom-right-radius:5px}
.scn.t-tess .m.out{color:#2A1A00}
.sc-note{align-self:center;display:inline-flex;gap:6px;align-items:center;font-size:13px;font-weight:800;color:#0F8A52;background:#DDF5E8;padding:5px 12px;border-radius:99px}
.js .scn .m,.js .scn .sc-note{transition:opacity .5s ease,transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * .9s + .35s)}
.js .scn:not(.on) .m,.js .scn:not(.on) .sc-note{opacity:0;transform:translateY(14px) scale(.97);transition-delay:0s}
.orgn{font-weight:inherit}
.st-ctl{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.dots{display:flex;gap:8px}
.dot{width:46px;height:6px;border-radius:99px;border:0;padding:0;background:color-mix(in srgb,var(--ink2) 22%,transparent);cursor:pointer;overflow:hidden;position:relative}
.dot i{position:absolute;inset:0;width:0;background:var(--ink2);border-radius:inherit}
.dot.done i{width:100%}
.dot.on i{width:100%}
.stage.playing .dot.on i{width:0;animation:prog var(--dur,7s) linear forwards}
@keyframes prog{to{width:100%}}
.st-btns{display:flex;gap:8px}
.cb{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:99px;border:1px solid color-mix(in srgb,var(--ink2) 22%,transparent);background:color-mix(in srgb,var(--card) 70%,transparent);color:var(--ink2);font-weight:700;font-size:13px;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.cb[aria-pressed="true"]{background:var(--ink2);color:var(--card-ink)}
.stage[data-sky="night"] .cb[aria-pressed="true"],.stage[data-sky="dusk"] .cb[aria-pressed="true"]{color:#0B1020}
html:not(.js) .st-ctl{display:none}
@media (max-width:860px){.scn{grid-template-columns:minmax(0,1fr)}.stage{min-height:0}.st-in{padding-bottom:150px}}
@media (max-width:520px){.dot{width:30px}.cb span{display:none}.cb{padding:9px}}

/* ---------- keep ---------- */
.kp{display:flex;flex-direction:column;gap:10px;padding:0 0 26px;overflow:hidden}
.kp h3,.kp p{padding-inline:24px}
.vz{height:170px;display:flex;align-items:center;justify-content:center;gap:12px;position:relative;margin-bottom:8px;background:radial-gradient(300px 160px at 50% 100%,color-mix(in srgb,var(--pa) 14%,transparent),transparent 70%),var(--sunk);border-bottom:1px solid var(--line);flex-direction:column}
.vz-phone .pnum{display:flex;gap:8px;align-items:center;padding:12px 18px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:var(--pa);position:relative;z-index:1}
.vz-phone .pnum b{color:var(--ink);font-size:18px}
.vz-phone .chip{position:relative;z-index:1}
.ring{position:absolute;left:50%;top:42%;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;border:2px solid var(--pa);opacity:0;animation:ring 2.6s ease-out infinite}
.ring.r2{animation-delay:1.3s}
@keyframes ring{0%{transform:scale(.6);opacity:.5}100%{transform:scale(1.8);opacity:0}}
.vz-stamp .ad{width:190px;background:var(--surface);border-radius:14px;box-shadow:var(--shadow);padding:10px;position:relative}
.adimg{height:62px;border-radius:9px;background:linear-gradient(135deg,color-mix(in srgb,var(--pa) 30%,var(--surface)),color-mix(in srgb,var(--pb) 30%,var(--surface)));display:grid;place-items:center;color:#fff}
.adl{height:7px;border-radius:9px;background:var(--line);margin-top:8px}.adl.s{width:60%}
.stmp{position:absolute;right:-22px;bottom:-14px;padding:6px 10px;border-radius:9px;border:2px solid var(--pa);color:var(--pa);background:var(--surface);font-size:12px;font-weight:800;transform:rotate(-6deg);animation:stamp 3.6s cubic-bezier(.3,1.6,.5,1) infinite;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes stamp{0%,12%{transform:rotate(-6deg) scale(1.8);opacity:0}24%,88%{transform:rotate(-6deg) scale(1);opacity:1}100%{opacity:0}}
.vz-export{flex-direction:row}
.files{position:relative;width:70px;height:86px}
.files i{position:absolute;inset:0;border-radius:10px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.files i:nth-child(2){transform:translate(8px,-8px)}.files i:nth-child(3){transform:translate(16px,-16px)}
.files i::after{content:"";position:absolute;left:12px;right:12px;top:20px;height:6px;border-radius:9px;background:var(--line);box-shadow:0 14px 0 var(--line),0 28px 0 var(--line)}
.vz-export .arr{color:var(--pa);animation:dl 1.8s ease-in-out infinite}
@keyframes dl{50%{transform:translateY(8px)}}
.vz-pick{flex-direction:row;flex-wrap:wrap;padding:0 16px}
.lp{padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-weight:700;font-size:14px;box-shadow:var(--shadow);transition:all .3s}
.lp.on{animation:pk 4s ease-in-out infinite}
@keyframes pk{0%,35%{border-color:var(--line);box-shadow:var(--shadow)}45%,100%{border-color:var(--pa);box-shadow:0 0 0 4px color-mix(in srgb,var(--pa) 22%,transparent)}}
.vz-pick .cur{position:absolute;color:var(--ink);left:50%;top:50%;animation:cur 4s ease-in-out infinite}
@keyframes cur{0%{transform:translate(60px,50px)}40%,100%{transform:translate(0,4px)}}
.vz-noref .nr{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;color:var(--bad);background:var(--surface);box-shadow:var(--shadow);animation:orb 4s ease-in-out infinite}
.vz-noref .nr.edu{color:var(--pa)}
.vz-flow{flex-direction:row;gap:0}
.vz-flow .nd{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--surface);box-shadow:var(--shadow);color:var(--pa)}
.vz-flow .ln{width:44px;height:3px;background:var(--line);position:relative;overflow:hidden;border-radius:9px}
.vz-flow .ln i{position:absolute;inset:0;width:40%;background:linear-gradient(90deg,var(--pa),var(--pb));animation:fl 1.6s linear infinite}
@keyframes fl{from{transform:translateX(-100%)}to{transform:translateX(260%)}}

/* ---------- compliance ---------- */
.comp-band{background:radial-gradient(900px 500px at 90% 0%,color-mix(in srgb,var(--pa) 30%,transparent),transparent 65%),radial-gradient(700px 400px at 0% 100%,color-mix(in srgb,var(--pb) 20%,transparent),transparent 65%),var(--night);color:var(--night-ink)}
.comp-band .lead{color:rgba(234,240,255,.75)}
.comp-band .eyebrow{color:#BFD0FF}
.comp-band .pg{background-image:linear-gradient(92deg,color-mix(in srgb,var(--pa) 55%,#fff),color-mix(in srgb,var(--pb) 55%,#fff))}
.cps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px}
.cp{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.cp b{display:block;font-size:16px;line-height:1.35}
.cp small{display:block;font-size:12.5px;color:rgba(234,240,255,.6);margin-top:2px}
.cp-i{flex:none;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;color:#fff;background:var(--pgrad)}
.ck{flex:none;width:28px;height:28px;margin-left:auto;border-radius:50%;background:rgba(61,203,136,.16)}
.ck path{fill:none;stroke:#3DCB88;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:0}
.js .cp:not(.in) .ck path{stroke-dashoffset:24}
.js .cp.in .ck path{transition:stroke-dashoffset .6s ease .3s}
@media (max-width:760px){.cps{grid-template-columns:minmax(0,1fr)}}

/* ---------- pilot + form ---------- */
.pl-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,36px);align-items:start}
.stp{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:20px;background:var(--bg);border:1px solid var(--line)}
.stp b{display:block;font-size:17px;margin-bottom:2px}
.stp p{color:var(--muted);font-size:15px}
.sn{flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#fff;font-weight:850;font-size:18px;background:var(--pgrad);box-shadow:0 10px 22px color-mix(in srgb,var(--pa) 30%,transparent)}
.bk{display:flex;flex-direction:column;gap:14px;border-radius:24px;padding:clamp(20px,3vw,30px)}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fgrid .full{grid-column:1/-1}
.bk .fld input,.bk .fld select,.bk .fld textarea{background:var(--sunk)}
.bk .fld textarea{min-height:84px}
@media (max-width:860px){.pl-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.fgrid{grid-template-columns:minmax(0,1fr)}}

/* ---------- faq + cta ---------- */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,56px);align-items:start}
@media (max-width:860px){.faq-grid{grid-template-columns:minmax(0,1fr)}}
.cta.pgcta{background:radial-gradient(600px 300px at 90% 0%,rgba(255,255,255,.22),transparent 70%),var(--pgrad)}
@media (prefers-reduced-motion:reduce){.js .scn .m,.js .scn .sc-note{transition:none}}
.vp.hasposter .vp-lbl{display:none}
@media (max-width:600px){.nr-card{flex-direction:column;align-items:flex-start;gap:12px}.sun{width:90px;height:90px;right:4%;top:3%}.moon{width:44px;height:44px;right:6%;top:4%}}

/* while the story video plays, the floating cards step aside so they never cover its captions */
.notif{transition:opacity .3s ease,visibility 0s linear 0s}
.vp.playing ~ .notif{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s linear .3s}
