

/* size-adjusted local fallbacks so the web-font swap does not reflow the page */
@font-face{font-family:'LeadLeak Signature';font-style:normal;font-weight:700;font-display:block;src:url('fonts/caveat-700-latin.woff2') format('woff2')}
@font-face{font-family:'Montserrat Fallback';src:local('Arial');size-adjust:112.47%;ascent-override:86.25%;descent-override:22.23%;line-gap-override:0%}@font-face{font-family:'Montserrat Fallback H1';src:local('Arial Bold'),local('Arial');size-adjust:118%;ascent-override:82.2%;descent-override:21.2%;line-gap-override:0%}
@font-face{font-family:'Playfair Fallback';src:local('Georgia Italic'),local('Georgia');font-style:italic;size-adjust:95.03%;ascent-override:113.64%;descent-override:26.31%;line-gap-override:0%}
@font-face{font-family:'Figtree Fallback';src:local('Arial');size-adjust:101.26%;ascent-override:93.81%;descent-override:24.69%;line-gap-override:0%}

:root{
  --bg:#050505; --bg-alt:#0C0C0C; --card:#111A30; --card-2:#0E1628;
  --navy:#152442; --azure:#967018; --azure-2:#c49220; --azure-soft:rgba(150,112,24,.13);
  --gold:#E0B43A; --gold-soft:rgba(224,180,58,.14);
  --teal:#ebcb83; --teal-2:#ebcc85;
  --grad:linear-gradient(135deg,#604912 0%,#967018 55%,#c49220 100%);
  --ink:#EAF0FB; --body:#bfb18f; --faint:#a4936d;
  --good:#34E0A1; --warn:#E0B43A; --bad:#FF6B6B;
  --line:rgba(255,255,255,.09); --line-soft:rgba(255,255,255,.05);
  --shadow:0 30px 70px -30px rgba(0,0,0,.75); --shadow-sm:0 14px 34px -18px rgba(0,0,0,.6);
  --shadow-card:0 22px 46px -30px rgba(0,0,0,.86);
  --edge:rgba(255,255,255,.08); --edge-strong:rgba(255,255,255,.12); --top-light:inset 0 1px 0 rgba(255,255,255,.06);
  --radius:22px; --radius-sm:14px; --radius-lg:26px; --radius-xs:10px; --maxw:1180px;
  --sp-section:clamp(78px,9vw,128px); --sp-tight:clamp(50px,6vw,82px);
  --ease:cubic-bezier(.22,.8,.26,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px;scrollbar-width:none;-ms-overflow-style:none}
::selection{background:rgba(150,112,24,.55);color:#fff}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:2px solid rgba(196,146,32,.85);outline-offset:3px;border-radius:4px}
.foot-grid a{transition:color .25s,padding-left .3s var(--ease)}
.foot-grid a:hover{padding-left:4px}
html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;display:none}
body{position:relative;background:var(--bg);color:var(--body);font-family:'Figtree','Figtree Fallback',sans-serif;line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,h5{font-family:'Montserrat','Montserrat Fallback',sans-serif;line-height:1.12;letter-spacing:-.02em;font-weight:700;color:#EEF3FF}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.gt{background:linear-gradient(135deg,#967018,#c49220);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.gt{-webkit-text-stroke:0;paint-order:normal}

/* atmosphere: structured darkness, neutral edge vignette + fine grain (no colored glow) */
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.02;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
main,header,footer{position:relative;z-index:1}
/* quiet back-to-top: bottom-left (chat launcher owns bottom-right), hairline, no glow, no arrow */
.to-top{position:fixed;left:18px;bottom:18px;z-index:200;display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:11px;border:1px solid var(--edge);background:rgba(12,18,32,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--body);font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;box-shadow:var(--shadow-sm);cursor:pointer;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease),color .2s,border-color .2s}
.to-top.show{opacity:1;transform:none;pointer-events:auto}
.to-top:hover{color:var(--ink);border-color:var(--edge-strong)}
@media(max-width:600px){.to-top{left:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){.to-top{transition:opacity .2s}.to-top.show{transform:none}}
/* HEADER */
header{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .35s,border-color .35s,padding .3s,box-shadow .35s;border-bottom:1px solid transparent;padding:18px 0}
header.scrolled{background:rgba(10,15,30,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:11px 0;box-shadow:0 10px 30px -20px rgba(0,0,0,.8)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:11px;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:clamp(1rem,4.6vw,1.2rem);letter-spacing:-.02em;color:var(--ink)}
.brand .mark{width:44px;height:44px;flex:none;border-radius:14px;box-shadow:0 8px 20px -8px rgba(150,112,24,.55),0 0 15px -4px rgba(235,203,131,.4)}
.brand .mark svg,.brand .mark img{width:100%;height:100%;display:block;border-radius:11px}
.navlinks{display:flex;gap:17px;align-items:center}
.navlinks a{font-size:.86rem;color:var(--body);font-weight:500;position:relative;transition:color .2s;white-space:nowrap}
.navlinks a:hover,.navlinks a.active{color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:.95rem;padding:13px 24px;border-radius:60px;cursor:pointer;border:none;transition:transform .2s var(--ease),box-shadow .25s,filter .2s;white-space:nowrap;position:relative;overflow:hidden}
.btn:active{transform:translateY(0) scale(.97)}
.btn::before{content:"";position:absolute;left:0;right:0;top:0;height:60%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.2),transparent 60%);opacity:.85;pointer-events:none}
.btn:focus-visible{outline:2px solid rgba(234,200,123,.8);outline-offset:3px}
.btn-explore-aud{background:linear-gradient(rgba(12,21,40,.96),rgba(12,21,40,.96)) padding-box,linear-gradient(135deg,#c49220,#ebcb83) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -18px rgba(235,203,131,.65)}
.btn-explore-aud:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 14px 30px -16px rgba(235,203,131,.8)}
.mbg-strip{display:flex;align-items:center;justify-content:center;gap:10px;width:fit-content;max-width:740px;margin:24px auto 0;padding:9px 22px;border-radius:999px;background:rgba(70,224,168,.05);border:1px solid rgba(70,224,168,.2)}
.mbg-ic{flex:none;display:grid;place-items:center;color:#E4C079}
.mbg-ic img{display:block;width:22px;height:22px;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(4,10,26,.6))}
.mbg-tx{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;justify-content:center}
.mbg-tx b{font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.9rem;color:#E9CD8A;letter-spacing:.005em}
.mbg-tx span{font-size:.85rem;color:var(--body);line-height:1.45}
@media(max-width:560px){.mbg-strip{flex-direction:column;text-align:center;gap:6px;border-radius:14px;width:auto}}
.menu-toggle{display:none;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 11px;min-width:44px;min-height:44px;cursor:pointer}
.menu-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0;border-radius:2px;transition:transform .3s,opacity .2s}
.menu-toggle.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle.is-open span:nth-child(2){opacity:0}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
/* HERO */
.hero{padding:158px 0 92px;position:relative;overflow:hidden;background:#050505;border-bottom:1px solid var(--line)}@media(min-width:861px){.hero{min-height:min(calc(100vw*15/21),100svh);display:flex;align-items:center}.hero>.wrap{width:100%}}
.hero-funnel{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero-funnel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:86% center;max-width:none;opacity:1;image-rendering:auto;filter:contrast(1.06) saturate(1.05)}
.hero-funnel::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.93) 24%,rgba(5,5,5,.58) 45%,rgba(5,5,5,.14) 66%,transparent 84%)}
/* Bottom dissolve. The hero photo now ends on a warmly lit desk instead of the
   old near-black one, so the fade has to start higher and land on solid page
   background well before the section edge, or the last band of lit wood reads
   as a hard seam against the section below. */
.hero-funnel::before{content:"";position:absolute;left:0;right:0;bottom:0;height:64%;z-index:2;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(5,5,5,.16) 20%,rgba(5,5,5,.46) 44%,rgba(5,5,5,.8) 66%,rgba(5,5,5,.97) 84%,#050505 92%)}
/* funnel shown on mobile (stacked above text), see #hero-cine */
@media(prefers-reduced-motion:reduce){.funnel-shine{animation:none;opacity:.85}.hero-funnel img{animation:none}}
.hero-grid{display:grid;grid-template-columns:1fr 1.02fr;gap:48px;align-items:stretch;position:relative;z-index:2}

.hero h1{font-family:'Montserrat','Montserrat Fallback H1',sans-serif;font-size:clamp(2.3rem,4.7vw,3.6rem);font-weight:800;margin-bottom:20px;letter-spacing:-.022em;line-height:1.08;-webkit-text-stroke:1px rgba(1,4,12,.66);paint-order:stroke fill;text-shadow:0 2px 16px rgba(0,0,0,.55)}
.hero p.lead{font-size:1.16rem;font-weight:500;color:#d4cab5;max-width:558px;margin-bottom:30px;text-shadow:0 1px 2px rgba(0,0,0,.9),0 1px 10px rgba(0,0,0,.6)}
.hero-cta{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:22px}
.hero-sample-link{display:inline;color:#e0af3f;font-family:'Montserrat','Montserrat Fallback';font-weight:600;text-decoration:none;border-bottom:1px solid rgba(224,175,63,.35);transition:color .2s,border-color .2s}
.hero-sample-link:hover{color:#edd291;border-bottom-color:currentColor}
.hero-micro{display:grid;grid-template-columns:auto auto;gap:11px 28px;max-width:fit-content;position:relative}
.hero-micro.hero-support{display:block;max-width:620px;font-family:'Montserrat','Montserrat Fallback';font-size:.76rem;font-weight:500;line-height:1.65;letter-spacing:.01em;color:#ae9e77}
@media(max-width:600px){.hero-micro.hero-support{padding-right:76px}}
.hero-micro span{display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-size:.76rem;font-weight:500;letter-spacing:.02em;color:#ae9e77;white-space:nowrap;transition:color .3s}
.hero-micro span:hover{color:#DCE6F5}
.hero-micro span:last-child:nth-child(odd){grid-column:1 / -1}
.hero-micro svg{flex:none;width:14px;height:14px;color:#c49320;transition:color .3s,filter .3s}
.hero-micro span:hover svg{color:#e6c068;filter:drop-shadow(0 0 6px rgba(228,188,92,.5))}
/* green "free scan" CTA */
.btn-scan:not(.rscan-go){background:linear-gradient(rgba(11,18,38,.96),rgba(11,18,38,.96)) padding-box,linear-gradient(135deg,#F2DCA4,#e6c068 46%,#c08f1f) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -16px rgba(230,192,104,.6),0 0 16px -9px rgba(236,207,140,.42)}
.btn-scan:not(.rscan-go)::after{content:"";position:absolute;top:0;left:-130%;width:60%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-20deg);transition:left .6s;pointer-events:none}
.btn-scan:not(.rscan-go):hover::after{left:130%}
.btn-scan:not(.rscan-go):hover{transform:translateY(-2px);box-shadow:0 16px 36px -15px rgba(230,192,104,.82),0 0 22px -8px rgba(236,207,140,.55);color:#fff}

.hero-r{display:none}
.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:600px}
.hero-r .flow-card{margin-top:0;width:408px;max-width:100%;margin-right:0}
/* HERO FLOW CARD */
.flow-card{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='nf'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23nf)' opacity='.6'/%3E%3C/svg%3E") padding-box,linear-gradient(157deg,#212a38 0%,#161d29 48%,#0c111a 100%) padding-box,linear-gradient(160deg,rgba(229,190,97,.5),rgba(184,145,54,.1) 50%,rgba(218,171,60,.32)) border-box;background-blend-mode:soft-light,normal,normal;border:1px solid transparent;border-radius:var(--radius);padding:24px 24px 20px;box-shadow:var(--shadow),0 44px 92px -52px rgba(0,0,0,.88),inset 0 1px 0 rgba(255,255,255,.10),inset 0 0 52px -30px rgba(217,162,35,.34);position:relative;overflow:hidden;backdrop-filter:blur(9px) saturate(1.3);-webkit-backdrop-filter:blur(9px) saturate(1.3)}
.fc-aura{display:none}

.flow-head,.funnel{position:relative;z-index:1}
.gauge::before{animation:haloBreathe 4.5s ease-in-out infinite}
@keyframes haloBreathe{0%,100%{opacity:.8}50%{opacity:1}}
.fc-corner{position:absolute;width:15px;height:15px;border:1.5px solid rgba(234,200,123,.55);pointer-events:none;animation:cornerPulse 3.2s ease-in-out infinite}
.fc-corner.tl{top:9px;left:9px;border-right:0;border-bottom:0;border-top-left-radius:7px}
.fc-corner.br{bottom:9px;right:9px;border-left:0;border-top:0;border-bottom-right-radius:7px;animation-delay:1.6s}
@keyframes cornerPulse{0%,100%{opacity:.4}50%{opacity:1;filter:drop-shadow(0 0 5px rgba(234,200,123,.8))}}
.flow-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 22%);pointer-events:none}
.flow-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px;position:relative}
.flow-head{gap:10px}
.flow-head .t{font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.92rem;color:var(--ink);line-height:1.25}
.flow-head .s{font-size:.78rem;color:#b4a687;margin-top:2px}
.flow-tag{flex:none;align-self:flex-start;font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;padding:5px 9px;border-radius:30px;background:var(--azure-soft);color:#dca729;border:1px solid rgba(150,112,24,.3);white-space:nowrap}
/* CONVERSION FUNNEL (glowing narrowing bands) */
.funnel{margin-top:14px;display:flex;flex-direction:column;align-items:center;position:relative}
.flow-card.in .fband{opacity:1;transform:none;transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.flow-card.in .fband.s2{transition-delay:.12s}.flow-card.in .fband.s3{transition-delay:.24s}.flow-card.in .fband.s4{transition-delay:.36s}.flow-card.in .fband.s5{transition-delay:.48s}
.flow-card.in .fleak{opacity:.92;transition:opacity .5s ease .4s}
.funnel-foot{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:.82rem;color:var(--body);text-align:center}
.funnel-foot b{color:var(--ink);font-weight:700}
/* SCORE DASHBOARD */
.scard{margin-top:4px;display:flex;flex-direction:column;gap:9px}
.scard-row{display:flex;gap:18px;align-items:center}
.gauge-wrap{flex:none;display:flex;flex-direction:column;align-items:center;gap:9px}
.gctx{display:inline-flex;align-items:center;gap:5px;font-family:'Montserrat','Montserrat Fallback';font-size:.58rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#FF9E64;white-space:nowrap}
.gctx i{width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:5px solid #FF8A5B}
.stat-row{display:flex;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}
.stat-row .st{flex:1;text-align:center}
.stat-row .st b{display:block;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1.16rem;color:var(--ink);line-height:1.1;letter-spacing:-.01em}
.stat-row .st b.crit{color:var(--bad)}.stat-row .st b.leak{color:#FF9E64}
.stat-row .st span{font-size:.6rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}
.flow-head .t,.flow-head .s,.flow-tag,.gnum,.gnum .gof,.glbl,.gctx,.sbar .sbtop span,.sbar .sbtop b,.stat-row .st b,.stat-row .st span{-webkit-text-stroke:.45px rgba(2,6,14,.6);paint-order:stroke fill}
.scard-main{display:flex;gap:30px;align-items:center;flex-wrap:wrap}
.gauge{position:relative;width:122px;height:122px;flex:none;margin:0 auto}
.gauge::before{content:"";position:absolute;left:50%;top:52%;width:126px;height:126px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,142,95,.12),rgba(255,170,110,.03) 50%,transparent 72%);pointer-events:none}
.gsvg{width:122px;height:122px;transform:rotate(-90deg);position:relative}
.gnum>span:first-child{display:inline-block;min-width:2ch;text-align:right;font-variant-numeric:tabular-nums}
.gnum .gof{font-size:11px;font-weight:700;color:var(--faint);margin-left:2px}
.gtrack{fill:none;stroke:rgba(255,255,255,.08);stroke-width:13}
.gfill{fill:none;stroke:url(#sgGrad);stroke-width:13;stroke-linecap:round;stroke-dasharray:464.96;stroke-dashoffset:464.96;filter:drop-shadow(0 3px 8px rgba(2,8,24,.5))}
.flow-card.in .gfill{stroke-dashoffset:167.4;transition:stroke-dashoffset 1.8s cubic-bezier(.2,.7,.2,1)}
.gctr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.gctr::before{content:"";position:absolute;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 32% 24%,rgba(235,204,133,.18),transparent 32%),radial-gradient(circle at 36% 28%,rgba(110,88,35,.5),rgba(74,57,18,.46) 52%,rgba(14,34,73,.42) 100%);border:1px solid rgba(234,200,123,.18);box-shadow:inset 0 2px 8px rgba(235,204,133,.12),inset 0 -9px 18px rgba(6,16,40,.5),0 7px 18px -4px rgba(67,51,12,.4);z-index:-1}
.gnum{font-family:'Figtree','Figtree Fallback',sans-serif;font-size:32px;font-weight:700;letter-spacing:-.015em;color:#FF9E64;line-height:1;text-shadow:0 2px 8px rgba(2,8,24,.5);-webkit-text-stroke:1px rgba(7,14,30,.5);paint-order:stroke}.rpt-ring .n b{-webkit-text-stroke:1.1px rgba(7,14,30,.45);paint-order:stroke}
.gnum .gof{font-family:'Figtree','Figtree Fallback',sans-serif;font-weight:600;letter-spacing:0}
.glbl{font-size:8px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin-top:3px}
.sbars{flex:1;min-width:240px;display:flex;flex-direction:column;gap:13px}
.sbar .sbtop{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:4px;color:var(--body)}
.sbar .sbtop span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:1.5px;background:linear-gradient(135deg,var(--c2,#dca729),var(--c,#967018));margin-right:7px;transform:rotate(45deg);vertical-align:1px}
.sbar .sbtop b{color:var(--c,#fff);font-weight:700;text-shadow:0 0 12px color-mix(in srgb,var(--c,#fff) 45%,transparent)}
.strack{position:relative;height:11px;border-radius:6px;background:rgba(255,255,255,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.35);overflow:hidden}
.sfill{position:relative;height:100%;width:var(--w);border-radius:6px;background:linear-gradient(90deg,var(--c,#967018),var(--c2,#dca729));box-shadow:0 0 9px -1px var(--c,#c49220),0 0 20px -7px var(--c,#c49220);overflow:hidden;clip-path:inset(0 100% 0 0 round 6px);transition:clip-path 1.5s cubic-bezier(.25,.8,.25,1)}
.sfill::after{content:"";position:absolute;top:0;left:0;width:38%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);transform:translateX(-140%)}
.flow-card.in .sfill{clip-path:inset(0 0 0 0 round 6px);animation:barGlow 3.4s ease-in-out 2.4s infinite}
@keyframes barGlow{0%,100%{box-shadow:0 0 9px -1px var(--c,#c49220),0 0 20px -7px var(--c,#c49220)}50%{box-shadow:0 0 12px -1px var(--c,#c49220),0 0 30px -6px var(--c,#c49220)}}
.flow-card.in .sfill::after{animation:barShine 3.6s ease-in-out 2.1s infinite}
.flow-card.in .sbar:nth-child(2) .sfill{transition-delay:.12s}
.flow-card.in .sbar:nth-child(3) .sfill{transition-delay:.24s}
.flow-card.in .sbar:nth-child(4) .sfill{transition-delay:.36s}
.flow-card.in .sbar:nth-child(5) .sfill{transition-delay:.48s}
.flow-card.in .sbar:nth-child(2) .sfill::after{animation-delay:2.25s}
.flow-card.in .sbar:nth-child(3) .sfill::after{animation-delay:2.4s}
.flow-card.in .sbar:nth-child(4) .sfill::after{animation-delay:2.55s}
.flow-card.in .sbar:nth-child(5) .sfill::after{animation-delay:2.7s}
@keyframes barShine{0%{transform:translateX(-140%)}45%,100%{transform:translateX(310%)}}
.flow-card.in .gauge::before{animation:gaugeBreathe 4.5s ease-in-out 2s infinite}
@keyframes gaugeBreathe{0%,100%{opacity:.65;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}
/* TRUST STRIP */
.tstrip{position:relative;padding:36px 0;overflow:hidden}
.tstrip::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(640px,82%);height:1px;background:linear-gradient(90deg,transparent,rgba(206,156,41,.3) 28%,rgba(227,183,82,.55) 50%,rgba(206,156,41,.3) 72%,transparent)}
.tstrip-glow{display:none}
.tstrip-sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 38%,rgba(229,189,94,.09) 49%,rgba(196,220,255,.16) 50.5%,rgba(229,189,94,.09) 52%,transparent 63%);background-size:230% 100%;background-repeat:no-repeat;background-position:152% 0;animation:tstripSheen 8.5s ease-in-out infinite}
@keyframes tstripSheen{0%{background-position:152% 0}62%,100%{background-position:-52% 0}}
.tstrip-in{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 30px;padding:0 22px}
.tstrip-item{display:inline-flex;align-items:center;gap:9px;font-family:'Montserrat','Montserrat Fallback';font-weight:500;font-size:.785rem;letter-spacing:.04em;color:#ae9e77;white-space:nowrap;transition:color .35s var(--ease)}
.tstrip-item svg{width:16px;height:16px;flex:none;color:#c49320;opacity:.85;transition:color .35s,opacity .35s,filter .35s}
/* Same rule as .path-ico: the shadow rides a wrapper span so it composes with
   the site-wide gold shift on the img instead of replacing it. */
.tstrip-item .tsi{display:inline-flex;flex:none;filter:drop-shadow(0 2px 4px rgba(150,112,24,.24));transition:filter .35s,transform .35s}
.tstrip-item img{width:24px;height:24px;flex:none;object-fit:contain;display:block}
.tstrip-item:hover{color:#DCE6F5}
.tstrip-item:hover svg{color:#e6c068;opacity:1;filter:drop-shadow(0 0 6px rgba(228,188,92,.55))}
.tstrip-item:hover .tsi{filter:drop-shadow(0 3px 7px rgba(235,203,131,.34)) brightness(1.06);transform:translateY(-1px)}
@media(max-width:760px){.tstrip{padding:26px 0}.tstrip-sheen{display:none}.tstrip-in{gap:14px 26px}.tstrip-item{font-size:.74rem;letter-spacing:.035em}}
@media(max-width:380px){.tstrip-item{white-space:normal;max-width:100%}}
@media(prefers-reduced-motion:reduce){.tstrip-sheen{display:none}}
.statband{position:relative;padding:42px 0}
.statband::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(640px,82%);height:1px;background:linear-gradient(90deg,transparent,rgba(206,156,41,.28) 30%,rgba(227,183,82,.45) 50%,rgba(206,156,41,.28) 70%,transparent)}
.statband-head{text-align:center;max-width:660px;margin:0 auto 28px;font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:clamp(1rem,1.5vw,1.16rem);letter-spacing:.005em;color:#d4cab5}
.statband-in{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 20px;text-align:center}
.statband .stat{position:relative;padding:6px 12px;display:flex;flex-direction:column;align-items:center}
.statband .stat+.stat::before{content:"";position:absolute;left:0;top:16%;height:68%;width:1px;background:linear-gradient(180deg,transparent,rgba(212,158,34,.16),transparent)}
.stat-n{font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:clamp(1.7rem,2.8vw,2.45rem);line-height:1.04;letter-spacing:-.015em;display:inline-flex;align-items:baseline;background:linear-gradient(135deg,#CFE0FF,#daa424 58%,#ebcb83);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.stat-n i{font-style:normal;font-size:.58em;font-weight:700;margin:0 1px;-webkit-text-fill-color:#daa424;color:#daa424}
.stat-l{margin-top:10px;font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:.82rem;letter-spacing:.01em;color:#d4cab5}
.stat-l em{display:block;margin-top:3px;font-style:normal;font-weight:500;font-size:.73rem;color:#998862}
@media(min-width:761px){.statband .stat:nth-child(4)::before{display:none}}
@media(max-width:760px){.statband{padding:32px 0}.statband-in{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.statband .stat{min-width:0;padding:6px 4px}.stat-n{display:block;width:100%;font-size:clamp(1.08rem,5.4vw,1.35rem);overflow-wrap:break-word}.statband .stat:nth-child(3)::before,.statband .stat:nth-child(5)::before{display:none}}
.statfacts{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:32px}
.statfacts span{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:30px;background:rgba(150,112,24,.07);border:1px solid rgba(212,158,34,.2);font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:.8rem;color:#d4cab5}
.statfacts span svg{width:14px;height:14px;color:#34E0A1;flex:none}
.statband-cta{text-align:center;margin-top:30px}
@media(max-width:560px){.statfacts{gap:7px}.statfacts span{font-size:.73rem;padding:7px 12px;gap:6px}}
/* custom websites home section */
.ws-home .wsh-demos{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:24px}
.wsh-demo{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:var(--card);border:1px solid var(--line);transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.wsh-demo:hover{transform:translateY(-5px);border-color:rgba(212,158,34,.42);box-shadow:0 34px 64px -40px rgba(0,0,0,.85)}
.wsh-demo:hover .wsh-shot img{transform:scale(1.045)}
.wsh-demo:hover .wsh-go{filter:brightness(1.12);transform:translateY(-1px)}
.wsh-demos .wsh-demo:nth-child(1) .wsh-go{background:linear-gradient(rgba(12,21,40,.96),rgba(12,21,40,.96)) padding-box,linear-gradient(120deg,#cd9a21,#967018) border-box;box-shadow:0 12px 26px -16px rgba(196,146,32,.55)}
.wsh-demos .wsh-demo:nth-child(2) .wsh-go{background:linear-gradient(rgba(12,21,40,.96),rgba(12,21,40,.96)) padding-box,linear-gradient(120deg,#34D399,#10B981) border-box;box-shadow:0 12px 26px -16px rgba(52,211,153,.55)}
.wsh-explore{text-align:center;margin:26px 0 6px}.wsh-pk-head{text-align:center;max-width:620px;margin:0 auto 26px}.wsh-pk-head h3{font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:clamp(1.4rem,2.5vw,1.95rem);color:#e3b752;letter-spacing:-.01em;margin-bottom:9px;line-height:1.15}.wsh-pk-head p{color:var(--body);font-size:.98rem;line-height:1.55}
.wsh-pk-head{margin-top:48px}
.wsh-pk-foot{text-align:center;color:var(--faint);font-size:.9rem;margin:22px auto 0;max-width:600px}
@media(max-width:760px){.ws-home .wsh-demos{grid-template-columns:1fr;gap:18px}.wsh-pk-head{margin-top:38px}}
.foot-cta .cta-micro{margin:15px 0 0;font-family:'Montserrat','Montserrat Fallback';font-size:.78rem;font-weight:500;letter-spacing:.02em;color:#ab9e81}
.trust-strip{background:#04060C;padding:48px 0 32px;position:relative}
.trust-strip .inner{display:flex;align-items:center;justify-content:center;gap:12px 14px;flex-wrap:wrap;position:relative;z-index:1}
/* clean minimal testimonial */
.quote-band{padding:4px 0 50px;text-align:center;position:relative}
/* Testimonial anatomy, hero size */
.big-quote{margin:0;max-width:780px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:17px;padding:0 22px}
.big-quote .stars{display:flex;gap:4px}
.big-quote .stars svg{width:14px;height:14px;color:#D9B24A}
.big-quote .bq-src{display:inline-flex;align-items:center;gap:7px;margin-top:-8px;font-family:'Montserrat','Montserrat Fallback';font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#af9d75}
.big-quote .bq-src .g-mark{width:13px;height:13px;flex:none}
.big-quote blockquote{margin:0;text-align:center;font-family:'Playfair Display','Playfair Fallback',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(1.4rem,2.7vw,2.05rem);line-height:1.45;letter-spacing:.1px;color:#EEF3FC;text-shadow:0 1px 20px rgba(6,11,26,.5);text-wrap:balance;font-synthesis:none;min-height:calc(2.05rem * 1.45 * 3)}
.big-quote blockquote::before{content:'\201C';display:block;font-family:'Playfair Display','Playfair Fallback',Georgia,serif;font-weight:700;line-height:.8;color:rgba(227,183,82,.26);font-size:clamp(2.6rem,5vw,3.8rem);margin:0 0 2px;text-align:center}
@media(max-width:760px){.big-quote blockquote{min-height:calc(1.4rem * 1.45 * 4)}}
.big-quote figcaption{display:flex;flex-direction:column;align-items:center;gap:7px;margin-top:4px}
.big-quote .bq-who{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;font-family:'Montserrat','Montserrat Fallback';font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#af9d75;text-align:center}
.big-quote .t-label{color:#ceb884}
.big-quote .tv-check{width:14px;height:14px;color:#4E9E7C;flex:none}
.big-quote .bq-link{font-family:'Montserrat','Montserrat Fallback';font-size:.85rem;font-weight:600;color:var(--faint);text-decoration:none;border-bottom:1px solid transparent;transition:color .25s,border-color .25s}
.big-quote .bq-link:hover{color:var(--teal);border-color:rgba(235,203,131,.5)}
.trust-strip .lab{font-family:'Montserrat','Montserrat Fallback';font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:var(--faint);width:100%;text-align:center;margin-bottom:10px}
.trust-strip .logo{display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-weight:600;font-size:.84rem;color:#dabe7e;background:linear-gradient(170deg,rgba(22,33,62,.72),rgba(11,18,36,.78)) padding-box,linear-gradient(165deg,rgba(212,158,34,.32),rgba(212,158,34,.05) 50%,rgba(235,203,131,.2)) border-box;border:1px solid transparent;border-radius:30px;padding:9px 16px;transition:transform .3s var(--ease),box-shadow .3s,filter .3s}
.trust-strip .logo:hover{transform:translateY(-3px);box-shadow:0 12px 26px -14px rgba(150,112,24,.55),0 0 20px -9px rgba(235,203,131,.45);filter:brightness(1.1)}
.trust-strip .logo svg{flex:none;color:#daa424}
.trust-strip .logo{animation:chipRise .55s cubic-bezier(.2,.7,.2,1) both}
.trust-strip .logo:nth-of-type(2){animation-delay:.05s}.trust-strip .logo:nth-of-type(3){animation-delay:.1s}.trust-strip .logo:nth-of-type(4){animation-delay:.15s}.trust-strip .logo:nth-of-type(5){animation-delay:.2s}
@keyframes chipRise{from{opacity:1;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
.sec-head .kicker{position:relative;display:inline-block;padding-bottom:9px}
.sec-head .kicker::after{content:none}
.sec-head.in .kicker::after{width:34px}
/* ===== STUNNING, distinct per-section headers ===== */
.sec-head{position:relative}
/* one editorial eyebrow: clean micro-label + the shared grow-in underline; per-section identity via text color only */
.sec-head .kicker.kpill{padding:0 0 9px;margin-bottom:13px;border:0;border-radius:0;background:none;box-shadow:none;font-size:.74rem;letter-spacing:.16em;font-weight:700;overflow:visible}
.kpill.k-aud{color:#c49220}
.kpill.k-web{color:var(--azure-2)}
.kpill.k-dash{color:var(--azure-2)}
/* one consistent gradient-text treatment on every section heading: sleek white-to-azure-to-teal sheen */
.sec-head h2{-webkit-text-stroke:0;-webkit-text-fill-color:transparent;color:transparent;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(96deg,#EAF3FF 4%,#eac87b 48%,#e8c678);letter-spacing:-.019em}
/* section-heading glow blobs removed: accent now comes only from the eyebrow label color */
.imp-note{text-align:center;color:var(--faint);font-size:.85rem;margin-top:14px}


.skip{position:absolute;left:-9999px;top:0;z-index:999;background:var(--azure);color:#fff;font-family:'Montserrat','Montserrat Fallback';font-weight:600;padding:10px 18px;border-radius:0 0 12px 0}
.skip:focus{left:0}
.flow-tag{animation:tagGlow 4.5s ease-in-out 2.5s infinite}
@keyframes tagGlow{0%,100%{box-shadow:0 0 0 0 rgba(150,112,24,0)}50%{box-shadow:0 0 16px -4px rgba(196,146,32,.55)}}
/* SECTION */
.section{padding:clamp(78px,8vw,104px) 0;position:relative}
.section.alt{background:none}
/* one consistent editorial separator: a single centered hairline that fades at both ends, only between the service blocks (audits, websites, dashboards, ai agents). No glow. */
.radar-section::before,.ws-home::before,.ds-home::before,.ai-home::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(1100px,88%);height:1px;background:linear-gradient(90deg,transparent,rgba(225,179,70,.16) 22% 78%,transparent);pointer-events:none}
.sec-head{max-width:700px;margin:0 auto 44px;text-align:center}
.sec-head .kicker{font-family:'Montserrat','Montserrat Fallback';font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--azure-2);margin-bottom:13px}
.sec-head h2{font-size:clamp(1.95rem,3.7vw,2.75rem);margin-bottom:15px;-webkit-text-stroke:.6px rgba(225,179,70,.2);paint-order:stroke fill}
.sec-head p{color:#c8bfa9;font-size:1.06rem}


.reveal.in{opacity:1;transform:none}
/* ping: the radar opens from its own center */

/* power on: screens boot; chrome settles, display scans alive, the reel loads */


/* set down: held objects land, then their choreography plays as act two */







/* SAMPLE */
.sample{display:grid;grid-template-columns:1.04fr .96fr;gap:44px;align-items:center;margin-top:8px}
.sample h2{font-size:clamp(1.8rem,3.2vw,2.4rem);margin-bottom:16px}
.sample p{color:var(--body);margin-bottom:24px}
.sample small{display:block;color:var(--faint);font-size:.82rem;margin-top:18px}
/* INDUSTRIES, drag marquee + live scanner */
.ind-row{display:flex;gap:34px;width:max-content;will-change:transform;backface-visibility:hidden;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.ind-row.dragging{cursor:grabbing}#scanPct{display:inline-block;min-width:2.7em;text-align:left;font-variant-numeric:tabular-nums}
/* TWO PATHS */
.paths-section .wrap{max-width:1400px}
.paths{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch;max-width:1400px;margin:0 auto}
/* web-design-led paths: one full-width lead card, then three quiet one-line cards */
@media(max-width:1180px){.paths{grid-template-columns:repeat(2,1fr);max-width:760px}}
.path{position:relative;display:flex;flex-direction:column;border-radius:24px;padding:26px 28px 22px;border:1px solid transparent;overflow:hidden;transition:transform .55s var(--ease),box-shadow .55s}
.path>*{position:relative;z-index:1}
.path.main{background:linear-gradient(158deg,#172B52 0%,#101E3C 42%,#0A1326 100%) padding-box,linear-gradient(135deg,rgba(206,154,34,.6),rgba(150,112,24,.18) 45%,rgba(235,203,131,.5)) border-box;box-shadow:0 26px 60px -36px rgba(8,16,38,.92),var(--top-light)}
.path.build{background:linear-gradient(158deg,#13264A 0%,#0D1A36 42%,#080F22 100%) padding-box,linear-gradient(135deg,rgba(234,200,123,.5),rgba(196,146,32,.16) 45%,rgba(96,73,18,.55)) border-box;box-shadow:0 26px 60px -36px rgba(8,16,38,.95),var(--top-light)}
.path:hover{transform:translateY(-6px)}
.path.main:hover{box-shadow:0 36px 80px -36px rgba(150,112,24,.7),0 0 30px -14px rgba(235,203,131,.5)}
.path.build:hover{box-shadow:0 32px 70px -36px rgba(218,164,36,.5)}
/* main = detection/leak motif: radar rings + aurora ping */
.path.main::before{content:"";position:absolute;right:-70px;bottom:-70px;width:300px;height:300px;background:repeating-radial-gradient(circle at 100% 100%,transparent 0 22px,rgba(214,191,136,.1) 22px 23px);-webkit-mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);pointer-events:none;z-index:0}
.path.main::after{content:none}
.path.main:hover::after{opacity:1}
/* build = blueprint motif: fine construction grid + icy sheen */
.path.build::before{content:"";position:absolute;right:-70px;bottom:-70px;width:300px;height:300px;background:linear-gradient(rgba(221,170,48,.09) 1px,transparent 1px) right bottom/24px 24px,linear-gradient(90deg,rgba(221,170,48,.09) 1px,transparent 1px) right bottom/24px 24px;-webkit-mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);pointer-events:none;z-index:0}
.path.build::after{content:none}
.path-flag{--fa:#eed49a;--fb:rgba(235,203,131,.4);align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:.63rem;letter-spacing:.16em;text-transform:uppercase;color:var(--fa);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 58%),#0D162B;border:1px solid var(--fb);border-radius:10px;padding:7px 13px;margin-bottom:20px;box-shadow:0 10px 22px -16px rgba(2,8,24,.9),inset 0 1px 0 rgba(255,255,255,.06)}
.path-flag svg{flex:none;opacity:.95}
.path .path-flag{margin-bottom:16px}
.path-flag.ice{--fa:#eed394;--fb:rgba(234,200,123,.42)}
/* The shadow lives on the WRAPPER, never on the img. The img carries the
   site-wide gold shift (img[src*="assets/icons/"]), and any `filter` declared
   on the img replaces that whole chain rather than adding to it: the hover
   rule used to do exactly that, so every icon dropped its hue rotation and
   snapped back to its source blue for as long as the cursor sat on the card.
   Two filters on two elements compose; two filters on one element do not. */
.path-ico{width:52px;height:52px;display:grid;place-items:center;margin-bottom:14px;filter:drop-shadow(0 2px 4px rgba(3,8,20,.5));transition:filter .35s}
.path-ico img{width:100%;height:100%;object-fit:contain;display:block}
.path:hover .path-ico{filter:drop-shadow(0 3px 7px rgba(3,8,20,.55)) brightness(1.06)}
.path h3{font-size:1.28rem;margin-bottom:6px;letter-spacing:-.015em}
.path>p{font-size:.95rem;color:var(--body);line-height:1.62;margin-bottom:16px}
.path-list{list-style:none;display:grid;gap:8px;flex:1;align-content:start;margin-bottom:16px}
@media(min-width:1181px){.path>p{min-height:calc(0.95rem*1.62*4)}}
.path-list li{position:relative;padding-left:24px;font-size:.9rem;color:var(--body)}
.path-list li::before{content:"";position:absolute;left:4px;top:7px;width:7px;height:7px;border-radius:2px;background:linear-gradient(135deg,#c49220,#ebcb83);transform:rotate(45deg);box-shadow:0 0 8px rgba(235,203,131,.5)}
.path.build .path-list li::before{background:linear-gradient(135deg,#eac87b,#967018);box-shadow:0 0 8px rgba(234,200,123,.5)}
.path .btn{align-self:center;margin-top:auto}
.path-btn-ice{background:linear-gradient(rgba(12,21,40,.96),rgba(12,21,40,.96)) padding-box,linear-gradient(135deg,#eac87b,#c49220 55%,#604912) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -18px rgba(218,164,36,.6)}
.path-btn-ice:hover{transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(218,164,36,.78),0 0 18px -8px rgba(234,200,123,.45);color:#fff}
/* tools = dashboards/command-center, teal-forward + tile motif */
.path.tools{background:linear-gradient(158deg,#1A2A5E 0%,#121E40 42%,#0B1228 100%) padding-box,linear-gradient(135deg,rgba(193,145,31,.58),rgba(168,126,27,.22) 46%,rgba(178,133,29,.55)) border-box;box-shadow:0 26px 60px -36px rgba(10,14,40,.95),var(--top-light)}
.path.tools:hover{box-shadow:0 34px 78px -36px rgba(170,128,28,.6),0 0 30px -14px rgba(178,133,29,.5)}
.path.tools::before{content:"";position:absolute;right:-70px;bottom:-70px;width:300px;height:300px;background:repeating-linear-gradient(60deg,rgba(196,147,32,.12) 0 1.5px,transparent 1.5px 24px),repeating-linear-gradient(-60deg,rgba(196,147,32,.12) 0 1.5px,transparent 1.5px 24px),repeating-linear-gradient(0deg,rgba(196,147,32,.09) 0 1.5px,transparent 1.5px 24px);-webkit-mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);pointer-events:none;z-index:0}
.path.tools::after{content:none}
.path.tools .path-list li::before{background:linear-gradient(135deg,#b8891e,#b2851d);box-shadow:0 0 8px rgba(162,122,26,.6)}
.path-flag.teal{--fa:#e2b64d;--fb:rgba(200,149,32,.44)}
.path-flag.mint{--fa:#efd59b;--fb:rgba(236,206,138,.44)}
.path.ai{background:linear-gradient(158deg,#0F2A4C 0%,#0C1D3B 42%,#081123 100%) padding-box,linear-gradient(135deg,rgba(236,206,138,.55),rgba(225,179,70,.16) 45%,rgba(150,112,24,.5)) border-box;box-shadow:0 26px 60px -36px rgba(8,18,36,.95),var(--top-light)}
.path.ai:hover{box-shadow:0 34px 78px -36px rgba(225,179,70,.5)}
.path.ai::before{content:"";position:absolute;right:-70px;bottom:-70px;width:300px;height:300px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='45'%3E%3Cpath d='M0 7.5 13 0l13 7.5M26 22.5 13 30 0 22.5v-15M13 30v15' fill='none' stroke='rgba(236,206,138,0.13)' stroke-width='1.3'/%3E%3C/svg%3E");background-size:26px 45px;background-position:0 0;-webkit-mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);mask:radial-gradient(circle at 100% 100%,#000 52%,transparent 74%);pointer-events:none;z-index:0}
.path.ai::after{content:none}
.path.ai .path-list li::before{background:linear-gradient(135deg,#f0d9a3,#c08f1f);box-shadow:0 0 8px rgba(232,195,111,.55)}
.path-btn-teal{background:linear-gradient(rgba(13,18,40,.96),rgba(13,18,40,.96)) padding-box,linear-gradient(135deg,#d49e22,#b8891e 50%,#b2851d) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -18px rgba(186,139,30,.6)}
.path-btn-teal:hover{transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(162,122,26,.78),0 0 18px -8px rgba(178,133,29,.5);color:#fff}
.path-btn-aud{background:linear-gradient(rgba(12,21,40,.96),rgba(12,21,40,.96)) padding-box,linear-gradient(135deg,#D9B75F,#ebcb83 50%,#967018) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -18px rgba(235,203,131,.6)}
.path-btn-aud:hover{transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(235,203,131,.8),0 0 18px -8px rgba(241,219,167,.5);color:#fff}
@media(max-width:880px){.paths{grid-template-columns:1fr}.path-or{flex-direction:row;padding:16px 0}.path-or i{height:1px;width:auto;flex:1;background:linear-gradient(90deg,transparent,rgba(212,158,34,.3) 30% 70%,transparent)}.path .btn{align-self:center;justify-content:center;width:100%;max-width:360px}}

/* PRICING */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:stretch}
.plan{position:relative;border-radius:24px;padding:1.5px;background:var(--line);transition:transform .3s var(--ease),box-shadow .3s var(--ease);display:flex}
/* THE THREE CARDS BEHAVE AS ONE SET. They used to disagree twice over: the two
   outer cards carried a 180deg border gradient that read as a bright strip
   across the top while the popular card carried a 135deg one that read as a
   full frame, and on hover the outer two gained a shadow while the popular one
   gained none (its rule also dropped box-shadow from the transition, so the
   difference was abrupt rather than eased). Same geometry, same hover, one
   family: only the gold's intensity says which card is the popular one. */
.plan:hover{transform:translateY(-8px)}
.plan.mini:hover{background:linear-gradient(135deg,rgba(181,135,29,.72),rgba(181,135,29,.5) 45%,rgba(181,135,29,.2))}
.plan.fix:hover{background:linear-gradient(135deg,rgba(233,198,118,.72),rgba(190,150,60,.5) 45%,rgba(150,112,24,.24))}
.plan.full:hover{background:linear-gradient(135deg,#f3dfb2,#d19c22 45%,#5c4817)}
/* lift must out-specify .plan.full.reveal.in{transform:none} (which would otherwise pin the popular card in place) */
.plan.full.reveal.in:hover{transform:translateY(-6px)}
/* …and it must not cost the popular card the pointer tilt every other card
   gets. This selector is what beat the tilt rule below on specificity, so the
   middle card rose flat while its neighbours leaned toward the cursor. */
@media(hover:hover) and (pointer:fine){
  .plan.full.reveal.in:hover{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,-6px))}
}

.plan.full{background:linear-gradient(135deg,#eac87b,#c49220 45%,#41310d)}
.plan-inner{background:var(--card);border-radius:23px;padding:34px 30px 30px;width:100%;display:flex;flex-direction:column;position:relative;overflow:hidden}
.plan-inner::before{content:"";position:absolute;top:6px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);pointer-events:none}
.plan.full .plan-inner::after{content:none}

.plan.full .plan-inner{padding-top:38px;padding-bottom:30px}
.plan.mini{background:linear-gradient(135deg,rgba(181,135,29,.5),rgba(181,135,29,.34) 45%,rgba(181,135,29,.12))}
.plan.fix{background:linear-gradient(135deg,rgba(233,198,118,.5),rgba(190,150,60,.34) 45%,rgba(150,112,24,.14))}
.plan.mini .plan-inner{background:linear-gradient(170deg,#101B33,#0C1426)}
.plan.full .plan-inner{background:linear-gradient(180deg,#13233F,#0C1428)}
.plan.fix .plan-inner{background:linear-gradient(170deg,#11203A,#0C1426)}
.plan-accent{position:absolute;left:0;top:0;height:5px;width:100%}
.plan.mini .plan-accent{background:linear-gradient(90deg,#9b7621,#7c601e)}
.plan.full .plan-accent{background:linear-gradient(90deg,#eac87b,#967018);height:6px}
.plan.fix .plan-accent{background:linear-gradient(90deg,#967018,#e9c676)}
.plan-tag{position:absolute;top:16px;right:16px;background:linear-gradient(120deg,#F7DC93,#E0B43A 52%,#CC9B2C);color:#3A2B06;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.6rem;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:30px;box-shadow:0 8px 18px -10px rgba(224,180,58,.5),0 0 12px -5px rgba(247,220,147,.5);border:1px solid rgba(247,220,147,.5);animation:goldGlow 3.4s ease-in-out infinite}
@keyframes goldGlow{0%,100%{box-shadow:0 8px 18px -10px rgba(224,180,58,.4),0 0 11px -6px rgba(247,220,147,.38)}50%{box-shadow:0 10px 22px -10px rgba(224,180,58,.62),0 0 20px -4px rgba(247,220,147,.7)}}
.plan .name{font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:1.22rem;letter-spacing:-.01em;margin-top:6px;color:var(--ink)}
.plan .best{font-size:.74rem;font-weight:600;color:var(--azure-2);margin:5px 0 8px;text-transform:uppercase;letter-spacing:.06em;min-height:3.25em}
.plan .blurb{color:var(--body);font-size:.88rem;min-height:40px;margin-bottom:14px}
.plan .price{font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:2.8rem;color:var(--ink);margin-bottom:2px}
.plan.mini .price{background:linear-gradient(120deg,#e7c169,#b5871d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.plan.full .price{background:linear-gradient(120deg,#f3dfb2,#c49220);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.plan.fix .price{background:linear-gradient(120deg,#d9a223,#e9c676);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.plan .price span{font-size:1rem;font-weight:500;color:var(--faint);-webkit-text-fill-color:var(--faint)}
/* gradient tier names + price glow, matched to each tier (cohesive with website + dashboard packages) */
.plan .name{-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.plan.mini .name{background-image:linear-gradient(120deg,#e7c169,#b5871d)}
.plan.full .name{background-image:linear-gradient(120deg,#f3dfb2,#c49220)}
.plan.fix .name{background-image:linear-gradient(120deg,#d9a223,#e9c676)}
.plan.mini .price{filter:drop-shadow(0 3px 13px rgba(181,135,29,.26))}
.plan.full .price{filter:drop-shadow(0 3px 14px rgba(218,164,36,.32))}
.plan.fix .price{filter:drop-shadow(0 3px 13px rgba(233,198,118,.3))}
.plan .turnaround{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;font-size:.76rem;color:var(--azure-2);margin-bottom:20px;font-weight:600;background:rgba(150,112,24,.1);border:1px solid rgba(196,146,32,.22);padding:5px 13px;border-radius:30px}
.plan .turnaround::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor;flex:none}
.plan.fix .turnaround{color:#e9cb83;background:rgba(233,198,118,.08);border-color:rgba(233,198,118,.24)}
.plan.full .turnaround{color:#eac97b;background:rgba(234,200,123,.1);border-color:rgba(234,200,123,.26)}
.plan ul{list-style:none;margin-bottom:24px;flex:1}
.plan li{display:flex;gap:11px;align-items:flex-start;font-size:.9rem;color:var(--body);padding:7px 0;border-bottom:1px solid var(--line-soft)}
.plan li.plus{color:var(--ink);font-weight:600}
.plan.mini li svg{flex:none;color:#d29e26;margin-top:3px}
.plan.full li svg{flex:none;color:#eac87b;margin-top:3px}
.plan.fix li svg{flex:none;color:#e9c676;margin-top:3px}
.plan li.plus svg{color:#ebcb83}
.plan li{transition:color .3s,transform .35s var(--ease)}
.plan li:hover{color:var(--ink);transform:translateX(4px)}
.plan li svg{transition:transform .3s}
.plan li:hover svg{transform:scale(1.22)}
.plan-tag::after{content:"";position:absolute;top:-3px;right:9px;width:5px;height:5px;transform:rotate(45deg) scale(.4);background:#fff;opacity:0;animation:tagSpark 3.6s ease-in-out infinite;border-radius:1px}
@keyframes tagSpark{0%,70%,100%{opacity:0;transform:rotate(45deg) scale(.4)}79%{opacity:.95;transform:rotate(45deg) scale(1)}88%{opacity:0;transform:rotate(45deg) scale(.4)}}
@keyframes btnBreath{0%,100%{box-shadow:0 11px 24px -15px rgba(218,164,36,.42),0 0 8px -8px rgba(234,200,123,.22)}50%{box-shadow:0 13px 28px -15px rgba(218,164,36,.55),0 0 12px -8px rgba(235,203,131,.3)}}
.plan.full .btn{animation:btnBreath 3.4s ease-in-out infinite}
.plan .btn{width:100%;justify-content:center;color:#fff;border:1.5px solid transparent}
.plan .btn::after{content:"";position:absolute;top:0;left:-130%;width:60%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-20deg);transition:left .6s;pointer-events:none}
.plan .btn:hover::after{left:130%}
.plan.mini .btn{background:linear-gradient(rgba(13,22,42,.97),rgba(13,22,42,.97)) padding-box,linear-gradient(135deg,#b5871d,#7c601e) border-box;box-shadow:0 12px 26px -16px rgba(181,135,29,.7)}
.plan.full .btn{background:linear-gradient(rgba(13,22,42,.97),rgba(13,22,42,.97)) padding-box,linear-gradient(135deg,#eac87b,#c49220 55%,#604912) border-box;box-shadow:0 12px 28px -15px rgba(218,164,36,.8),0 0 10px -6px rgba(234,200,123,.4)}
.plan.full .btn:hover{box-shadow:0 16px 32px -16px rgba(218,164,36,.85),0 0 14px -7px rgba(235,203,131,.4)}
.plan.fix .btn{background:linear-gradient(rgba(13,22,42,.97),rgba(13,22,42,.97)) padding-box,linear-gradient(135deg,#967018,#e9c676) border-box;box-shadow:0 12px 26px -16px rgba(233,198,118,.68)}
.plan .btn:hover{transform:translateY(-2px);filter:brightness(1.07)}

/* ===== DASHBOARDS / CUSTOM SOFTWARE SECTION ===== */
.ds-home .sec-head{margin-bottom:30px}
.path-btn-dash{background:linear-gradient(rgba(12,18,40,.96),rgba(12,18,40,.96)) padding-box,linear-gradient(135deg,#dfac37,#8f6b17 52%,#4f3d15) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -18px rgba(143,107,23,.65)}
.path-btn-dash:hover{transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(143,107,23,.82),0 0 18px -8px rgba(223,172,55,.5);color:#fff}
.price-rea{display:flex;justify-content:center;gap:10px 26px;flex-wrap:wrap;margin-top:28px;color:var(--body);font-size:.86rem}
.price-rea span{display:inline-flex;align-items:center;gap:7px}
.price-rea svg{color:var(--good);flex:none}
/* FAQ */
.faq-wrap{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(165deg,rgba(18,28,54,.5),rgba(11,18,36,.46));border:1px solid rgba(212,158,34,.12);transition:border-color .35s,background .35s,box-shadow .35s,transform .35s var(--ease)}
.faq:hover{border-color:rgba(212,158,34,.26);transform:translateY(-1px)}
.faq.open{border-color:rgba(235,203,131,.32);background:linear-gradient(165deg,rgba(20,32,60,.72),rgba(12,20,40,.6));box-shadow:0 26px 60px -38px rgba(150,112,24,.7)}
.faq::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2.5px;background:linear-gradient(180deg,#967018,#ebcb83);transform:scaleY(0);transform-origin:top;transition:transform .42s var(--ease);z-index:1}
.faq.open::before{transform:scaleY(1)}
.faq::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 42%,rgba(212,158,34,.07) 50%,transparent 58%);transform:translateX(-120%);transition:transform .9s var(--ease);z-index:0}
.faq:hover::after{transform:translateX(120%)}
.faq button{width:100%;text-align:left;background:none;border:none;color:var(--ink);cursor:pointer;font-family:'Montserrat','Montserrat Fallback',system-ui,sans-serif;font-weight:600;font-size:1.02rem;line-height:1.4;padding:18px 22px;display:flex;align-items:center;gap:15px;transition:color .25s;position:relative;z-index:2}
.faq button:hover{color:#F6E2A8}
.faq .q-no{flex:none;width:22px;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.72rem;letter-spacing:.06em;color:var(--azure-2);opacity:.6;transition:color .35s,opacity .35s}
.faq.open .q-no{color:#f6e9c9;opacity:1}
.faq .q-txt{flex:1}
.faq .q-ico{flex:none;width:27px;height:27px;border-radius:9px;display:grid;place-items:center;border:1px solid rgba(212,158,34,.25);background:rgba(212,158,34,.06);transition:transform .42s var(--ease),background .35s,border-color .35s,color .35s,box-shadow .35s;color:var(--azure-2)}
.faq.open .q-ico{transform:rotate(135deg);background:var(--grad);color:#fff;border-color:transparent;box-shadow:0 6px 16px -6px rgba(235,203,131,.6)}
.faq .a{max-height:0;overflow:hidden;transition:max-height .42s var(--ease);position:relative;z-index:2}
.faq .a p{margin:0;padding:0 26px 21px 59px;color:var(--body);font-size:.95rem;line-height:1.65;opacity:0;transform:translateY(-5px);transition:opacity .4s .06s,transform .4s .06s}
.faq.open .a p{opacity:1;transform:none}
@media(max-width:600px){.faq .a p{padding-left:22px}}
::selection{background:rgba(150,112,24,.5);color:#fff}
a:focus-visible,button:focus-visible{outline:2px solid #c49220;outline-offset:3px}
/* FOOTER */
footer{background:#070C18;color:#bfb18f;padding:0 0 28px;border-top:1px solid var(--line)}
.foot-cta{background:linear-gradient(180deg,#0B1224,#070C18);border-bottom:1px solid var(--line);padding:46px 0;text-align:center}
.foot-cta h3{color:#fff;font-size:1.5rem;margin-bottom:8px}
.foot-cta p{color:var(--body);max-width:520px;margin:0 auto 18px}
.foot-grid{display:grid;grid-template-columns:1.45fr .95fr 1.05fr .95fr 1.05fr;gap:30px;padding:42px 0 30px}
.foot-brand .brand{color:#fff}
.foot-brand p{color:var(--faint);font-size:.87rem;margin:13px 0;max-width:290px;line-height:1.5}
.foot-trust{display:flex;gap:10px 14px;flex-wrap:wrap;margin-top:4px}
.foot-trust span{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;color:var(--faint)}
.foot-trust svg{color:var(--azure-2)}
.foot-col .fh{font-family:'Montserrat','Montserrat Fallback';font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:11px}
.foot-col a,.foot-col span{display:block;color:var(--body);font-size:.85rem;margin-bottom:8px;line-height:1.45;transition:color .2s}
.foot-links2{column-count:2;column-gap:30px}
.foot-links2 a{break-inside:avoid;-webkit-column-break-inside:avoid}
@media(max-width:560px){.foot-links2{column-count:1}}
.foot-col a:hover{color:#F6E2A8}
.foot-col .pill{display:flex;align-items:center;gap:8px;width:200px;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:10px;padding:8px 12px;color:#fff;font-size:.84rem;margin-bottom:9px;transition:background .2s,border-color .2s}
.foot-col .pill:hover{background:rgba(255,255,255,.09);border-color:rgba(196,146,32,.35)}
.foot-col .pill b{font-weight:700;color:#fff}
.foot-col .pill em{font-style:normal;color:var(--azure-2);font-weight:600;margin-left:auto}
.foot-bottom{border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center}
.foot-bottom p{color:var(--faint);font-size:.84rem}
.foot-bottom .mini-links a{color:var(--faint);font-size:.84rem;margin-left:18px}
/* The town list is a LIST, so it is laid out as one. It was a run of inline
 * anchors spaced by margin-left, and an inline margin is dropped at a line
 * break: at phone width every link started a new line, every margin fell on a
 * break, and the footer read "Westerly, RIProvidence, RINewport". A flex row
 * with a gap spaces them at every width, wrapped or not, and it also fixes the
 * copied and spoken text, which ran together at DESKTOP too because the markup
 * has no whitespace between the anchors. */
.foot-bottom .mini-links.areas{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px}
.foot-bottom .mini-links.areas a{margin-left:0}
.foot-bottom .mini-links a:hover{color:#F6E2A8}
.foot-social{display:flex;align-items:center;gap:11px;margin-top:18px}
.foot-social>span{font-size:.82rem;color:var(--faint)}
.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;color:#dabe7e;background:rgba(255,255,255,.04);border:1px solid var(--line);transition:transform .25s var(--ease),background .25s,border-color .25s,color .25s}
.foot-social a:hover{transform:translateY(-2px);color:#fff;background:rgba(150,112,24,.16);border-color:rgba(196,146,32,.5)}
.foot-social svg{width:20px;height:20px}
.disclaimer{color:rgba(255,255,255,.55);font-size:.78rem;line-height:1.6;margin-top:16px;max-width:880px}
/* MOBILE CTA + TOP */
/* RESPONSIVE */
@media(max-width:980px){
  .ws-chips{gap:8px}
  .ws-chips span{flex:0 1 calc(50% - 6px);min-width:0;padding:9px 13px}
  .hero-grid{grid-template-columns:1fr;gap:42px}
  .hero-r{align-items:stretch}
  .hero-r .flow-card{margin-top:0;width:100%;margin-right:0;padding:20px 18px 18px}
  .hero-r .hero-tm{width:100%}
  .funnel{align-items:stretch}
  .scard-row{flex-direction:column;align-items:stretch;gap:14px}
  .gauge-wrap{align-self:center}
  .scard-row .sbars{width:100%;min-width:0}
  .cards-3,.areas,.price-grid{grid-template-columns:1fr}
  .deliver-grid{grid-template-columns:1fr;gap:30px}
  .lens-grid{grid-template-columns:1fr 1fr}
  .selector-options{grid-template-columns:1fr}
  .selector-card p{min-height:0}
  .sample{grid-template-columns:1fr}
  .lm-in{grid-template-columns:1fr;gap:28px;padding:32px 24px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .navlinks{position:fixed;top:60px;left:0;right:0;padding:16px 18px 22px;flex-direction:column;align-items:stretch;gap:7px;background:linear-gradient(180deg,#0D1324,#090E1C);backdrop-filter:blur(20px) saturate(1.3);border-bottom:1px solid rgba(196,146,32,.18);box-shadow:0 28px 56px -22px rgba(0,0,0,.9);transform:translateY(-130%);transition:transform .45s cubic-bezier(.22,.9,.27,1);z-index:98}
  .navlinks.open{transform:translateY(0)}
  .navlinks a{font-size:1.04rem;font-weight:600;color:var(--ink);padding:14px 16px;border-radius:13px;background:rgba(255,255,255,.02);border:1px solid transparent;opacity:0;transform:translateY(-8px);transition:opacity .4s,transform .4s,background .25s,border-color .25s}
  .navlinks a::after{display:none}
  .navlinks a:active{background:rgba(150,112,24,.14);border-color:rgba(196,146,32,.3)}
  .navlinks.open a{opacity:1;transform:none}
  .navlinks.open a:nth-child(1){transition-delay:.05s}.navlinks.open a:nth-child(2){transition-delay:.1s}.navlinks.open a:nth-child(3){transition-delay:.15s}.navlinks.open a:nth-child(4){transition-delay:.2s}.navlinks.open a:nth-child(5){transition-delay:.25s}.navlinks.open a:nth-child(6){transition-delay:.3s}.navlinks.open a:nth-child(7){transition-delay:.35s}.navlinks.open a:nth-child(8){transition-delay:.4s}
  body.menu-open{overflow:hidden}
  body.menu-open header{background:rgba(10,15,30,.9);backdrop-filter:blur(16px) saturate(150%);border-bottom-color:var(--line)}
  .menu-toggle{display:block}
  .nav{gap:12px}
  .nav .btn-scan{display:inline-flex;flex:none;margin-left:auto;padding:9px 14px;font-size:.82rem}
  .nav .brand{gap:9px}
  .nav .brand .mark{width:38px;height:38px;border-radius:12px}
}
@media(max-width:380px){
  header .wrap{padding:0 15px}
  .nav{gap:8px}
  .nav .brand{gap:7px}
  .nav .brand .mark{width:32px;height:32px}
  .nav .btn-scan{padding:8px 12px;font-size:.8rem}
  .menu-toggle{padding:8px}}
@media(max-width:760px){
  .journey{padding-top:0}
  .journey::before,.journey::after{left:18px;top:24px;bottom:24px;transform:none}
  .jstep{width:auto;margin:0 0 22px 58px!important;padding:20px 20px;border-radius:18px}
  .jstep::after{display:none}
  .jstep .num{left:-60px!important;right:auto!important;width:38px;height:38px;font-size:.9rem}
  .hero-micro{grid-template-columns:1fr 1fr;max-width:100%;gap:11px 18px}
  .hero-micro span{font-size:.72rem;white-space:normal;line-height:1.3}}
@media(max-width:560px){
  .lens .wnum{font-size:54px}
  .sample-art{padding:20px}
  .rpt-head{padding:15px 16px}
  .rpt-body{padding:18px 16px}
  .rb{grid-template-columns:84px 1fr 26px;gap:9px;font-size:11.5px}
  .rpt-ring{width:96px;height:96px}
  .rpt-ring .n b{font-size:26px}
  .dl-row b em{display:inline-block;margin:4px 0 0;}
  .areas{grid-template-columns:1fr}
  .deliver-section{padding-top:56px}
  .selector{padding:22px;border-radius:22px}
  .lens-grid{grid-template-columns:1fr;gap:14px}
  .selector-card p{min-height:0}
  .foot-grid{grid-template-columns:1fr}
  .section{padding:78px 0}}
@media(min-width:1200px){.plan .blurb{min-height:6.5em}}
/* ===== LEAD LEAK RADAR (Signal Intelligence) ===== */
.radar-section{position:relative;overflow:hidden}
.radar-shell{display:grid;grid-template-columns:1.04fr .96fr;gap:24px;max-width:1040px;margin:0 auto;align-items:stretch}
.radar-stage{position:relative;background:linear-gradient(165deg,rgba(16,26,49,.72),rgba(10,17,34,.82));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);overflow:hidden}
.radar-stage::before{content:none}
.radar-bar{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:13px}
.radar-bar-tx{display:flex;flex-direction:column;gap:1px}
.rb-k{display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.92rem;color:var(--ink)}
.rb-live{width:7px;height:7px;border-radius:50%;background:#34E0A1;box-shadow:0 0 9px #34E0A1;animation:rdLive 2s ease-in-out infinite}
@keyframes rdLive{0%,100%{opacity:1}50%{opacity:.32}}
.rb-sub{font-family:'Montserrat','Montserrat Fallback';font-size:.74rem;color:var(--faint);letter-spacing:.02em}
.radar-scan{display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.82rem;color:#FCF7EA;padding:9px 15px;border-radius:30px;border:1px solid rgba(234,200,123,.5);background:linear-gradient(120deg,#5F4A12,#84671D);box-shadow:0 10px 24px -12px rgba(150,112,24,.7),inset 0 0 0 1px rgba(255,255,255,.15);cursor:pointer;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .25s,filter .2s}
.radar-scan:hover{transform:translateY(-1px);box-shadow:0 14px 30px -12px rgba(150,112,24,.85)}
.radar-scan:active{transform:translateY(0)}
.radar-scan.busy{filter:saturate(1.25) brightness(1.05);pointer-events:none}
.radar-scan .rs-ico{display:inline-flex}
.radar-scan.busy .rs-ico{animation:rdSpin 1s linear infinite}
@keyframes rdSpin{to{transform:rotate(360deg)}}
.radar-filters{position:relative;z-index:3;display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:16px}
.rchip{font-family:'Montserrat','Montserrat Fallback';font-size:.74rem;font-weight:600;color:var(--body);padding:7px 12px;border-radius:30px;border:1px solid var(--line);background:rgba(255,255,255,.03);cursor:pointer;transition:color .22s,border-color .22s,background .22s,transform .14s;white-space:nowrap}
.rchip:hover{color:var(--ink);border-color:rgba(196,146,32,.5)}
.rchip:active{transform:scale(.96)}
.rchip.on{color:var(--ink);background:var(--azure-soft);border-color:rgba(196,146,32,.6);box-shadow:inset 0 0 0 1px rgba(235,203,131,.12)}
.rchip.urg{font-size:.72rem;padding:6px 11px}
.radar-screen{position:relative;width:100%;max-width:432px;aspect-ratio:1/1;margin:0 auto}
.u-critical{--uc:#FF6B6B;--ug:rgba(255,107,107,.16)}
.u-high{--uc:#FF8A5B;--ug:rgba(255,138,91,.16)}
.u-moderate{--uc:#E0B43A;--ug:rgba(224,180,58,.16)}
.radar-panel{position:relative;display:flex;flex-direction:column;background:linear-gradient(170deg,rgba(18,28,52,.86),rgba(10,17,34,.9));border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);overflow:hidden}
.radar-panel::before{content:none}
.rp-in{position:relative;z-index:1;display:flex;flex-direction:column;flex:1;animation:rpIn .42s cubic-bezier(.2,.7,.2,1)}
@keyframes rpIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.rp-top{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:13px}
.rp-src{display:inline-flex;align-items:center;gap:7px;font-family:'Montserrat','Montserrat Fallback';font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 11px;border-radius:30px;background:rgba(196,146,32,.1);border:1px solid rgba(196,146,32,.28)}
.rp-src i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.rp-urg{margin-left:auto;display:inline-flex;align-items:center;font-family:'Montserrat','Montserrat Fallback';font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--uc);padding:5px 11px;border-radius:30px;background:var(--ug);border:1px solid var(--uc)}
.rp-title{font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1.2rem;color:var(--ink);line-height:1.2;margin-bottom:5px}
.rp-ctx{font-size:.85rem;color:var(--body);margin-bottom:16px}
.rp-score{display:flex;align-items:center;gap:15px;padding:13px 14px;border-radius:14px;background:rgba(255,255,255,.02);border:1px solid var(--line);margin-bottom:13px}
.rp-ring{position:relative;flex:none;width:74px;height:74px}
.rp-ring svg{transform:rotate(-90deg);display:block}
.rpv-arc{stroke:var(--uc);transition:stroke-dashoffset 1s cubic-bezier(.2,.7,.2,1)}
.rp-ring .rpv{position:absolute;inset:0;display:grid;place-items:center;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1.32rem;color:var(--ink)}
.rp-score-tx b{display:block;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.92rem;color:var(--ink)}
.rp-score-tx span{font-size:.8rem;color:var(--body)}
.rp-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}
.rp-cell{padding:10px 13px;border-radius:12px;background:rgba(255,255,255,.02);border:1px solid var(--line)}
.rp-cell .l{font-family:'Montserrat','Montserrat Fallback';font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:3px}
.rp-cell .v{font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.96rem;color:var(--ink)}
.rp-cell.val .v{color:var(--teal)}
.rp-note{margin-bottom:13px}
.rp-note .l,.rp-fix .l{display:inline-flex;align-items:center;gap:7px;font-family:'Montserrat','Montserrat Fallback';font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;margin-bottom:6px}
.rp-note .l{color:var(--azure-2)}
.rp-note p,.rp-fix p{font-size:.9rem;line-height:1.55;color:var(--body)}
.rp-fix{margin-top:auto;padding:13px 15px;border-radius:13px;background:linear-gradient(135deg,rgba(150,112,24,.12),rgba(235,203,131,.08));border:1px solid rgba(196,146,32,.3)}
.rp-fix .l{color:var(--teal)}
.rp-fix p{color:var(--ink)}
.radar-stream{position:relative;max-width:1040px;margin:18px auto 0;border:1px solid var(--line);border-radius:14px;background:rgba(11,18,36,.55);overflow:hidden}
.radar-stream::before,.radar-stream::after{content:"";position:absolute;top:0;bottom:0;width:64px;z-index:2;pointer-events:none}
.radar-stream::before{left:0;background:linear-gradient(90deg,#04060C,transparent)}
.radar-stream::after{right:0;background:linear-gradient(270deg,#04060C,transparent)}
.rstream-track{display:flex;gap:34px;white-space:nowrap;width:max-content;padding:11px 0;animation:rStream 36s linear infinite}
.rstream-item{display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-size:.76rem;font-weight:600;color:var(--body)}
.rstream-item i{width:6px;height:6px;border-radius:50%;background:var(--uc,#c49220);box-shadow:0 0 8px var(--uc,#c49220);flex:none}
.rstream-item b{color:var(--ink);font-weight:700}
@keyframes rStream{to{transform:translateX(-50%)}}
/* embedded free scan, part of the radar section */
.ll-scanwrap{max-width:680px;margin:36px auto 0;text-align:center}
.rscan-tag{display:inline-flex;align-items:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#f6e9c9;background:rgba(235,203,131,.1);border:1px solid rgba(246,233,201,.42);border-radius:30px;padding:6px 15px;margin-bottom:13px;box-shadow:0 0 18px -5px rgba(235,203,131,.6)}
.rscan-box{display:flex;gap:9px;align-items:center;text-align:left;background:rgba(9,15,30,.72);border:1px solid var(--line);border-radius:16px;padding:8px;transition:border-color .25s,box-shadow .25s}
.rscan-box:focus-within{border-color:rgba(196,146,32,.55);box-shadow:0 0 0 4px rgba(150,112,24,.12)}
.rscan-box .pre{padding-left:13px;color:var(--faint);font-family:'JetBrains Mono','Roboto Mono',monospace;font-size:.92rem;white-space:nowrap}
.rscan-box input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--ink);font-family:'Montserrat','Montserrat Fallback';font-size:1.02rem;padding:12px 4px}
.rscan-box input::placeholder{color:var(--faint)}
.rscan-go{flex:none;border-radius:12px;background:linear-gradient(rgba(11,18,38,.96),rgba(11,18,38,.96)) padding-box,linear-gradient(135deg,#F2DCA4,#e6c068 46%,#c08f1f) border-box;border:1.5px solid transparent;color:#fff;box-shadow:0 10px 26px -16px rgba(230,192,104,.6),0 0 16px -9px rgba(236,207,140,.42)}
.rscan-go:hover{transform:translateY(-2px);box-shadow:0 16px 36px -15px rgba(230,192,104,.82),0 0 22px -8px rgba(236,207,140,.55)}
.rscan-sub{font-size:.84rem;color:var(--faint);margin-top:13px}
.rscan-sub b{color:var(--body)}
@media(max-width:560px){.rscan-box{flex-direction:column;align-items:stretch}.rscan-box .pre{display:none}.rscan-go{justify-content:center}}
/* inline live-scan results (below the radar, no separate page) */
.rsl-wrap{max-width:680px;margin:18px auto 0;text-align:left}
.rsl-load{display:flex;align-items:center;gap:11px;justify-content:center;color:var(--body);font-size:.92rem;padding:20px;font-family:'Montserrat','Montserrat Fallback'}
.rsl-load .sp{width:18px;height:18px;border-radius:50%;border:2px solid rgba(212,158,34,.3);border-top-color:#daa424;animation:rslSpin .8s linear infinite}
@keyframes rslSpin{to{transform:rotate(360deg)}}
.rsl-scan{padding:22px 24px 24px;max-width:680px;margin:0 auto}
.rsl-scan-h{display:flex;align-items:center;gap:10px;justify-content:center;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.95rem;color:var(--ink);margin-bottom:18px}
.rsl-scan-h .sp{flex:none;width:16px;height:16px;border-radius:50%;border:2px solid rgba(212,158,34,.3);border-top-color:#daa424;animation:rslSpin .8s linear infinite}
.rsl-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 30px}
@media(max-width:560px){.rsl-steps{grid-template-columns:1fr;gap:8px}}
.rsl-step{display:flex;align-items:center;gap:11px;font-size:.9rem;color:var(--faint);opacity:.45;transform:translateY(2px);transition:opacity .3s ease,color .3s ease,transform .3s ease}
.rsl-step.on,.rsl-step.done{opacity:1;color:var(--body);transform:none}
.rsl-step .si{flex:none;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1.6px solid rgba(212,158,34,.22);background:rgba(212,158,34,.05);position:relative}
.rsl-step.on .si{border-color:rgba(218,164,36,.5)}
.rsl-step.on .si::after{content:"";position:absolute;inset:-1.6px;border-radius:50%;border:2px solid transparent;border-top-color:#daa424;animation:rslSpin .7s linear infinite}
.rsl-step.done .si{border-color:#34E0A1;background:rgba(52,224,161,.14)}
.rsl-step .si svg{width:12px;height:12px;stroke:#34E0A1;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .25s ease}
.rsl-step.done .si svg{opacity:1}
@media(prefers-reduced-motion:reduce){.rsl-scan-h .sp,.rsl-step .si::after{animation:none}.rsl-step{opacity:1;color:var(--body);transform:none;transition:none}}
.rsl-head{text-align:center;margin:8px 0 16px}
.rsl-head b{font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1.4rem;color:var(--ink)}
.rsl-head .cnt{color:#FF7A4D}
.rsl-head span{display:block;font-size:.9rem;color:var(--body);margin-top:5px}
.rsl-scorewrap{text-align:center;margin:6px 0 14px}
.rsl-score{display:inline-flex;align-items:center;gap:13px;padding:11px 20px;border-radius:16px;background:rgba(9,15,30,.72);border:1px solid var(--line)}
.rsl-score .rss-n{font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:2rem;line-height:1;color:var(--sc);font-variant-numeric:tabular-nums}
.rsl-score .rss-n small{font-size:.9rem;color:var(--faint);font-weight:700}
.rsl-score .rss-l{display:flex;flex-direction:column;text-align:left;font-family:'Montserrat','Montserrat Fallback';font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.rsl-score .rss-l b{font-size:.9rem;letter-spacing:0;text-transform:none;color:var(--sc);margin-top:2px}
.rsl-list{display:flex;flex-direction:column;gap:7px}
.rsl-leak{display:flex;gap:11px;align-items:center;padding:9px 14px;border-radius:12px;background:linear-gradient(165deg,rgba(24,37,70,.4),rgba(12,19,40,.32));border:1px solid rgba(255,255,255,.06);transition:border-color .22s var(--ease),background .22s,transform .22s}
.rsl-leak:not(.locked):hover{border-color:rgba(212,158,34,.3);background:linear-gradient(165deg,rgba(30,46,84,.5),rgba(15,24,48,.4));transform:translateY(-1px)}
.rsl-crit{color:var(--bad);font-weight:800;white-space:nowrap}
.rsl-num{flex:none;align-self:center;width:20px;text-align:center;font-family:'JetBrains Mono','Roboto Mono',monospace;font-weight:700;font-size:.82rem;color:var(--bad)}
.rsl-leak.med .rsl-num{color:var(--gold)}
.rsl-leak.low .rsl-num{color:var(--azure-2)}
.rsl-ic{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(255,107,107,.12);border:1px solid rgba(255,107,107,.26)}
.rsl-ic svg{width:16px;height:16px;stroke:var(--bad);fill:none;stroke-width:2}
.rsl-leak.med .rsl-ic{background:rgba(224,180,58,.12);border-color:rgba(224,180,58,.32)}
.rsl-leak.med .rsl-ic svg{stroke:var(--gold)}
.rsl-leak.low .rsl-ic{background:rgba(196,146,32,.12);border-color:rgba(196,146,32,.3)}
.rsl-leak.low .rsl-ic svg{stroke:var(--azure-2)}
.rsl-tx{flex:1;min-width:0}
.rsl-tt{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:2px}
.rsl-tt .rsl-t{font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.9rem;color:#EEF3FF;letter-spacing:-.01em}
.rsl-pill{display:inline-flex;align-items:center;gap:4px;font-size:.6rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:3px 8px 3px 6px;border-radius:6px;color:var(--bad);background:rgba(255,107,107,.12);border:1px solid rgba(255,107,107,.3)}
.rsl-haz{width:11px;height:11px;flex:none}
.rsl-leak.med .rsl-pill{color:var(--gold);background:rgba(224,180,58,.12);border-color:rgba(224,180,58,.32)}
.rsl-leak.low .rsl-pill{color:var(--azure-2);background:rgba(196,146,32,.12);border-color:rgba(196,146,32,.3)}
.rsl-tx p{font-size:.8rem;color:var(--body);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rsl-leak.locked{pointer-events:none}
.rsl-leak.locked .rsl-tx p{-webkit-line-clamp:1}
.rsl-leak.locked .rsl-tx h4,.rsl-leak.locked .rsl-tx p{filter:blur(4.5px);-webkit-filter:blur(4.5px);user-select:none}
.rsl-unlock{margin-top:14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;border-radius:18px;padding:26px 22px;background:radial-gradient(115% 125% at 50% -12%,rgba(229,188,92,.1),transparent 62%),linear-gradient(rgba(11,16,26,.87),rgba(10,14,24,.84)) padding-box,linear-gradient(135deg,#cd9a21,#e5bc5c 52%,#e9c879) border-box;border:1.5px solid transparent;box-shadow:0 26px 64px -36px rgba(209,160,45,.5),inset 0 1px 0 rgba(255,255,255,.06)}
.rsl-unlock .uic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(160deg,rgba(205,154,33,.14),rgba(233,200,121,.12));border:1px solid rgba(225,177,68,.4);color:#ebd49d}
.rsl-unlock b{display:block;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1.05rem;color:var(--ink);margin-bottom:4px}
.rsl-unlock .us{font-size:.88rem;color:var(--body);max-width:440px;line-height:1.5;display:inline-block}
.rsl-unlock .ubtn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1rem;color:#fff;background:linear-gradient(rgba(12,17,28,.96),rgba(12,17,28,.96)) padding-box,linear-gradient(135deg,#cd9a21,#e5bc5c 52%,#e9c879) border-box;border:1.6px solid transparent;border-radius:60px;padding:14px 34px;text-decoration:none;margin-top:4px;box-shadow:0 16px 40px -16px rgba(209,160,45,.6),0 0 22px -10px rgba(233,200,121,.42);transition:transform .2s,box-shadow .3s,filter .2s}
.rsl-unlock .ubtn::before{content:"";position:absolute;left:0;right:0;top:0;height:55%;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 70%);border-radius:inherit;pointer-events:none}
.rsl-unlock .ubtn::after{content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);transition:left .6s;pointer-events:none}
.rsl-unlock .ubtn:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 24px 52px -16px rgba(209,160,45,.82),0 0 32px -8px rgba(233,200,121,.6)}
.rsl-unlock .ubtn:hover::after{left:130%}
.rsl-unlock .uprice{font-size:.78rem;color:var(--faint);margin-top:4px}
.rsl-unlock .rsl-talk{font-family:'Montserrat','Montserrat Fallback';font-size:.84rem;font-weight:600;color:var(--azure-2);text-decoration:none;margin-top:8px;padding-top:11px;border-top:1px solid rgba(255,255,255,.07);width:100%;transition:color .2s}
.rsl-unlock .rsl-talk:hover{color:#e7c26d}
.rsl-again{display:block;text-align:center;margin-top:16px;font-size:.88rem;color:var(--azure-2);cursor:pointer;background:none;border:0;width:100%;font-family:'Montserrat','Montserrat Fallback'}
.rsl-again:hover{color:#e2b54b}
.rsl-err{text-align:center;color:#FFB4A0;font-size:.92rem;padding:16px}
.rsl-speed{margin-top:16px;border-radius:14px;padding:16px 18px;background:linear-gradient(168deg,rgba(17,26,48,.85),rgba(11,17,30,.9));border:1px solid rgba(223,172,56,.18)}
.rsl-speed .rspd-h{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}
.rsl-speed .rspd-h b{font-family:'Montserrat','Montserrat Fallback';font-size:.92rem;color:#EEF3FF}
.rsl-speed .rspd-h span{font-size:.76rem;color:#b6a06b}
.rsl-speed .rspd-rows{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;color:#D5DEEF}
.rsl-speed .rspd-rows b{color:#7C5C14;font-variant-numeric:tabular-nums}
.rsl-speed .rspd-note{margin:0;font-size:.87rem;line-height:1.5;color:#c5b797}
.rsl-speed .rspd-lab{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);font-size:.85rem;line-height:1.5;color:#bfae86}
.rsl-speed .rspd-lab b{color:#EEF3FF}
.rsl-gate{margin-top:14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:11px;border-radius:18px;padding:22px;background:radial-gradient(120% 130% at 50% -12%,rgba(235,203,131,.1),transparent 60%),linear-gradient(rgba(13,19,32,.9),rgba(11,16,28,.88)) padding-box,linear-gradient(135deg,rgba(223,172,56,.4),rgba(235,203,131,.3)) border-box;border:1.4px solid transparent;box-shadow:0 22px 56px -34px rgba(219,176,74,.45)}
.rsl-gate .rg-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(160deg,rgba(205,154,33,.16),rgba(233,200,121,.13));border:1px solid rgba(225,177,68,.4);color:#ebd49d}
.rsl-gate b{display:block;font-family:'Montserrat','Montserrat Fallback';font-weight:800;font-size:1.02rem;color:var(--ink);margin-bottom:3px}
.rsl-gate .rg-s{font-size:.86rem;color:var(--body);max-width:440px;line-height:1.5;display:inline-block}
.rsl-gate .rg-s em{font-style:normal;color:#FF8A6B;font-weight:700}
.rsl-gate .rg-s em.med{color:var(--gold)}.rsl-gate .rg-s em.low{color:var(--azure-2)}
.rg-form{display:flex;gap:8px;width:100%;max-width:440px;margin-top:3px}
.rg-form input{flex:1;min-width:0;font-family:'Figtree','Figtree Fallback',sans-serif;font-size:.95rem;color:var(--ink);background:rgba(7,11,20,.7);border:1px solid rgba(212,158,34,.3);border-radius:11px;padding:12px 15px;outline:none;transition:border-color .2s}
.rg-form input:focus{border-color:rgba(196,146,32,.7)}
.rg-form input:focus-visible{outline:2px solid #c49220;outline-offset:2px}
.rg-form button{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Montserrat','Montserrat Fallback';font-weight:700;font-size:.92rem;color:#fff;padding:12px 22px;border-radius:60px;cursor:pointer;white-space:nowrap;position:relative;overflow:hidden;border:1.5px solid transparent;background:linear-gradient(rgba(12,21,40,.96),rgba(12,21,40,.96)) padding-box,linear-gradient(135deg,#7C5C14,#34E0A1 52%,#ce9a22) border-box;box-shadow:0 10px 26px -18px rgba(235,203,131,.6);transition:transform .2s var(--ease),box-shadow .25s,filter .2s}
.rg-form button:hover{transform:translateY(-2px);box-shadow:0 16px 34px -16px rgba(52,224,161,.8),0 0 18px -8px rgba(241,219,167,.5)}
.rg-form button:disabled{opacity:.7;cursor:default;transform:none}
.rg-note{font-size:.74rem;color:var(--faint)}
@keyframes rslReveal{0%{box-shadow:0 0 0 0 rgba(52,224,161,0)}28%{box-shadow:0 0 0 2px rgba(52,224,161,.6),0 0 18px rgba(52,224,161,.4)}100%{box-shadow:0 0 0 0 rgba(52,224,161,0)}}
.rsl-leak.just-revealed{animation:rslReveal 1.6s var(--ease)}
@media(max-width:560px){.rg-form{flex-direction:column}.rg-form button{padding:13px}}
@media(max-width:900px){.radar-shell{grid-template-columns:1fr;gap:16px}.rp-fix{margin-top:18px}}
@media(max-width:560px){.radar-stage{padding:15px}.radar-screen{max-width:330px}.rp-title{font-size:1.08rem}.rb-sub{display:none}}
@media(prefers-reduced-motion:reduce){.rs-sweep,.rb-ping,.rb-live{animation:none !important}.rblip{opacity:1;transform:none}.rs-sweep{opacity:.5}}

@media(prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
  .reveal{opacity:1 !important;transform:none !important;filter:none !important}.sec-head :is(.kicker,h2,p),h2,p),.big-quote :is(.stars,blockquote,figcaption),.about-portrait img,.radar-shell .radar-stage,.rv-power :is(.wpv-head,.wpv-window,.shw-strip,.dash-app),.gmb-wrap .gmb,.tstrip .tstrip-item,.lf .lf-step,.radar-stream .rstream-track,.statband :is(.statband-head,.stat){opacity:1 !important;transform:none !important;clip-path:none !important;filter:none !important;animation:none !important}}
@media(prefers-reduced-motion:reduce){.hero-glow i,.fc-aura,.fc-corner,.flow-tag,.sfill,.sfill::before,.tstrip-sheen,.gfill,.gauge::before,.lc-badge{animation:none!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.wsp-note{max-width:640px;margin:18px auto 0;text-align:center;font-size:.84rem;color:#998862;line-height:1.6}




/* ===== CODROPS PILOT, HERO (subtle/premium). TO REVERT: delete this cd-pilot style block AND the cd-pilot-js script block before 
</body>. Backup: archive/index.html.bak-preanim-pilot-* ===== */
.cd-grain{position:fixed;inset:0;z-index:120;pointer-events:none;opacity:.045;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
/* one global ambient field behind everything, no seams between sections */
.cd-aura-wrap{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1;transition:transform .5s ease-out;display:none}
.cd-aura{position:absolute;border-radius:50%;filter:blur(100px)}
.cd-aura.a1,.cd-aura.a2{display:none}
.cd-anim .hero-copy>*{opacity:0;transform:translateY(10px);animation:heroReveal .44s cubic-bezier(.22,.61,.36,1) both}
@keyframes heroReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cd-anim .hero-cta .btn{transition:transform .18s var(--ease),box-shadow .25s,filter .2s}
@media(prefers-reduced-motion:reduce){
  .cd-aura{display:none}
  .cd-anim .hero-copy>*{opacity:1 !important;transform:none !important;filter:none !important}}
/* mobile/perf: drop the heaviest decorative layers so scrolling stays smooth */
@media(max-width:760px){
  .aurora i{animation:none!important}
  .cd-aura-wrap,.cd-grain{display:none!important}
  .fc-aura{animation:none!important}
  .hero-glow{display:none}
  header.scrolled{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(10,15,30,.96)}
  .cd-anim .hero-copy>*{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}
  .hero h1.hw-split .hw{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
}




/* ===== HERO FUNNEL (static, sharp, beside the copy) + restrained copy fade ===== */
.cd-anim .hero-copy .lead{animation-delay:.07s}
.cd-anim .hero-copy .hero-cta{animation-delay:.14s}
.cd-anim .hero-copy .hero-micro{animation-delay:.21s}
@media(prefers-reduced-motion:reduce){ .cd-anim .hero-copy>*{opacity:1!important;transform:none!important}}
/* keep the funnel on the RIGHT of the copy down to ~800px */
@media(min-width:801px) and (max-width:980px){
  .hero-grid{grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
  .hero-copy{min-width:0}
  .hero h1{font-size:clamp(2rem,4.6vw,2.65rem)}
  .hero-r .flow-card{width:min(360px,40vw)}
}
/* phones, VARIANT A (default): the portrait crop becomes a full-bleed backdrop,
   composed for the phone; copy sits over the dark desk zone under a portrait scrim */
@media(max-width:800px){
  .hero{padding:120px 0 54px;min-height:640px}
  .hero-funnel{position:absolute;inset:0;width:auto;max-width:none;height:auto;margin:0;overflow:hidden;transform:none!important}
  .hero-funnel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 24%;opacity:1;transform:none}
  .hero-funnel::after{background:linear-gradient(180deg,rgba(5,5,5,.62) 0%,rgba(5,5,5,.3) 22%,rgba(5,5,5,.66) 42%,rgba(5,5,5,.92) 62%,#050505 88%)}
  .hero-funnel::before{content:none}
  .hero h1{margin-bottom:14px}
}
@media(max-width:360px){
  .wsh-explore .btn{max-width:100%;white-space:normal;justify-content:center;text-align:center;padding-inline:16px}}




/* ===== HERO FX: entrance, gauge color story, scan cycle, signal field =====
   z-order inside .hero: .hero-funnel (z0) < .hero-glow (z0, later sibling) < .hero-aurora (z1)
   < canvas.hero-field (z1, later) < .hero-grid content (z2, chip inside .hero-r) */
/* A. headline word entrance (split by JS; renders normally if JS never runs) */
.hero h1 .hw{display:inline-block}
.cd-anim .hero-copy h1.hw-split{animation:none;opacity:1;transform:none}
.hero h1.hw-split .hw{opacity:0;transform:translateY(14px);filter:blur(6px)}
.hero h1.hw-split.hw-in .hw{opacity:1;transform:none;filter:none;transition:opacity .42s cubic-bezier(.22,.61,.36,1),transform .42s cubic-bezier(.22,.61,.36,1),filter .42s ease;transition-delay:var(--hwd,0s)}
/* B. gauge settle + one-shot bar glints */
.gnum.g-settle span[data-count]{animation:gnumSettle .38s cubic-bezier(.3,1.5,.4,1)}
@keyframes gnumSettle{0%{transform:scale(1.06)}100%{transform:scale(1)}}
.gfill.g-pulse{animation:gfillPulse .6s ease-out}
@keyframes gfillPulse{35%{filter:drop-shadow(0 0 15px rgba(255,158,100,.85))}100%{filter:drop-shadow(0 3px 8px rgba(2,8,24,.5))}}
.sfill .g-glint{position:absolute;top:0;bottom:0;left:0;width:2px;background:rgba(255,255,255,.95);box-shadow:0 0 9px 1px rgba(255,255,255,.8);transform:translateX(-8px);animation:glintOnce .55s ease-out forwards;pointer-events:none}
@keyframes glintOnce{to{transform:translateX(var(--gw,260px))}}
/* C. tilt specular (engine-driven position; screen blend, quiet) */
/* D. scan cycle: findings chip plus sonar ring. */
.hero-r{position:relative}
/* E. magnetic CTA composes with the existing hover lift via vars (engine-lerped) */
/* Hover lift only. */
.hero-cta .btn-scan:not(.rscan-go):hover{transform:translateY(-2px)}
@media(prefers-reduced-motion:reduce){.hero-field,.hfchip{display:none!important}
  .hero h1.hw-split .hw{opacity:1!important;transform:none!important;filter:none!important}
  .gfill.g-pulse,.gnum.g-settle span[data-count]{animation:none}
  .sfill .g-glint{display:none}}




/* ===== Physical radar instrument + hardware console (#radar) ===== */
#radar .radar-screen{display:flex;flex-direction:column;gap:16px;align-items:stretch;width:100%;max-width:none;aspect-ratio:auto;margin:0;position:relative;background:none;border:0;padding:0;overflow:visible}
#radar .radar-stage{overflow:visible}
/* machined metal bezel */
.ri-bezel{position:relative;width:100%;max-width:466px;margin:0 auto;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(120% 120% at 30% 16%,rgba(203,176,114,.2),transparent 42%),conic-gradient(from 218deg at 50% 50%,#2c3343,#161c28 22%,#222a39 46%,#0e131d 68%,#283041 88%,#2c3343),linear-gradient(160deg,#222b3c,#0b0f17);
  box-shadow:0 34px 64px -30px rgba(0,0,0,.92),0 2px 0 rgba(255,255,255,.07) inset,0 -3px 9px rgba(0,0,0,.6) inset,0 0 0 1px rgba(0,0,0,.55)}
.ri-screw{position:absolute;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 38% 30%,#c1b598,#5b533e 55%,#1a2230);box-shadow:0 1px 1px rgba(0,0,0,.7),0 0 0 1px rgba(0,0,0,.5)}
.ri-screw::after{content:"";position:absolute;inset:0;margin:auto;width:8px;height:1.6px;background:rgba(0,0,0,.55);border-radius:1px;transform:rotate(38deg)}
.ri-screw.tl{top:10px;left:10px}.ri-screw.tr{top:10px;right:10px}.ri-screw.bl{bottom:10px;left:10px}.ri-screw.br{bottom:10px;right:10px}
/* recessed glass display */
.ri-face{position:absolute;inset:17px;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 40%,#0a1724,#04080f 72%,#020409);box-shadow:0 0 0 2px rgba(0,0,0,.7) inset,0 20px 44px rgba(0,0,0,.7) inset,0 0 34px rgba(150,112,24,.12) inset}
.ri-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.ri-blips{position:absolute;inset:0;z-index:4}
.ri-blip{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;padding:0;border:0;background:transparent;border-radius:50%;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ri-blip:focus{outline:none}
.ri-blip:focus-visible{outline:none;box-shadow:0 0 0 2px #04080f,0 0 0 4px rgba(235,203,131,.7)}
.ri-glass{position:absolute;inset:0;border-radius:50%;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(78% 58% at 32% 16%,rgba(195,218,255,.16),transparent 56%),radial-gradient(60% 42% at 72% 88%,rgba(235,203,131,.06),transparent 60%),linear-gradient(150deg,rgba(255,255,255,.05),transparent 22%)}
.ri-glass::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 28px rgba(150,112,24,.16) inset}
.ri-grain{position:absolute;inset:0;border-radius:50%;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='rn'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23rn)'/%3E%3C/svg%3E")}
.ri-readout{position:absolute;left:0;right:0;bottom:7.5%;z-index:5;text-align:center;font-family:'Montserrat','Montserrat Fallback';font-size:.74rem;letter-spacing:.03em;color:rgba(224,198,138,.72);pointer-events:none;text-shadow:0 0 8px rgba(0,0,0,.85)}
.ri-readout b{color:#d3e7ff;font-weight:700}.ri-readout .rd-status{color:#7C5C14}.ri-readout .rd-sep{margin:0 6px;opacity:.5}
.ri-bezel.off .ri-face{background:radial-gradient(circle at 50% 42%,#070b11,#03060b)}
.ri-bezel.off .ri-readout{color:rgba(152,136,101,.4)}
/* control console */
.rcon{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;width:100%;max-width:466px;margin:0 auto;padding:15px 18px;border-radius:15px;background:linear-gradient(162deg,#1b2230,#0e131d);border:1px solid rgba(223,172,56,.1);box-shadow:0 16px 32px -20px rgba(0,0,0,.85),0 1px 0 rgba(255,255,255,.05) inset,0 0 0 1px rgba(0,0,0,.45)}
.rcon-dials{display:flex;gap:16px}
.dial{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:ns-resize;user-select:none;touch-action:none}
.dial-knob{position:relative;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 50% 36%,#4e4532,#202836 58%,#10151e);box-shadow:0 3px 7px rgba(0,0,0,.6),0 1px 0 rgba(255,255,255,.1) inset,0 -2px 5px rgba(0,0,0,.5) inset}
.dial-knob::before{content:"";position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.045) 0deg 5deg,rgba(0,0,0,.16) 5deg 11deg)}
.dial-knob::after{content:"";position:absolute;inset:8px;border-radius:50%;background:radial-gradient(circle at 50% 34%,#293349,#151c28);box-shadow:0 1px 0 rgba(255,255,255,.09) inset,0 -1px 3px rgba(0,0,0,.5) inset}
.dial-ind{position:absolute;left:50%;top:4px;width:2.5px;height:13px;margin-left:-1.25px;border-radius:2px;background:linear-gradient(#f6e9cb,#ebcb83);box-shadow:0 0 7px rgba(235,203,131,.85);transform-origin:50% 19px;transform:rotate(var(--rot,-135deg));z-index:2}
.dial:focus-visible{outline:none}.dial:focus-visible .dial-knob{box-shadow:0 0 0 3px rgba(235,203,131,.55),0 3px 7px rgba(0,0,0,.6)}
.dial-cap{font-family:'Montserrat','Montserrat Fallback';font-size:.55rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#998862}
.dial-val{font-family:'Montserrat','Montserrat Fallback';font-size:.72rem;font-weight:700;color:#d3e7ff;line-height:1}
.rcon-mid{display:flex;flex-direction:column;gap:9px;min-width:0}
.rcon-lab{font-family:'Montserrat','Montserrat Fallback';font-size:.55rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#998862}
#sigFilter{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:6px;background:linear-gradient(90deg,#967018,#ebcb83);box-shadow:0 1px 2px rgba(0,0,0,.6) inset;cursor:pointer}
#sigFilter::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 40% 34%,#e3ecf8,#a3936c 60%,#4f452f);box-shadow:0 2px 4px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.4)}
#sigFilter::-moz-range-thumb{width:18px;height:18px;border:0;border-radius:50%;background:radial-gradient(circle at 40% 34%,#e3ecf8,#a3936c 60%,#4f452f);box-shadow:0 2px 4px rgba(0,0,0,.6)}
#sigFilter:focus-visible{outline:none}#sigFilter:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px rgba(235,203,131,.55),0 2px 4px rgba(0,0,0,.6)}
.rcon-leds{display:flex;gap:8px;align-items:center}
.led{width:8px;height:8px;border-radius:50%;background:#22303f;box-shadow:0 0 0 1px rgba(0,0,0,.5) inset;transition:background .25s,box-shadow .25s}
.led.on.led-pw{background:#34E0A1;box-shadow:0 0 8px #34E0A1}
.led.on.led-scan{background:#E0B43A;box-shadow:0 0 8px #E0B43A;animation:ledBlink 1s steps(1) infinite}
.led.on.led-lock{background:#FF6B6B;box-shadow:0 0 8px #FF6B6B}
@keyframes ledBlink{50%{opacity:.35}}
.rcon-sw{display:flex;flex-direction:column;gap:8px}
.sw{display:inline-flex;align-items:center;gap:7px;font-family:'Montserrat','Montserrat Fallback';font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfae86;padding:8px 13px;border-radius:9px;cursor:pointer;background:linear-gradient(180deg,#283142,#1a212e);border:1px solid rgba(0,0,0,.5);box-shadow:0 2px 4px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.07) inset;transition:transform .08s,box-shadow .15s,color .2s,background .25s,border-color .25s}
.sw:hover{color:#dceaff}
.sw:active{transform:translateY(1px);box-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 3px rgba(0,0,0,.4) inset}
.sw:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(235,203,131,.55),0 2px 4px rgba(0,0,0,.5)}
.sw-led{width:8px;height:8px;border-radius:50%;background:#22303f;box-shadow:0 0 0 1px rgba(0,0,0,.5) inset;transition:.25s;flex:none}
.sw-power.on{color:#f2e5c8;background:linear-gradient(180deg,#16332c,#0f2420);border-color:rgba(235,203,131,.32)}
.sw-power.on .sw-led{background:#34E0A1;box-shadow:0 0 9px #34E0A1}
.sw[aria-pressed="true"]{color:#ffe0a8;background:linear-gradient(180deg,#34290f,#241c0c);border-color:rgba(224,180,58,.35)}
.sw-ico{width:9px;height:9px;border-left:2.5px solid currentColor;border-right:2.5px solid currentColor;box-sizing:border-box;flex:none}
.sw[aria-pressed="true"] .sw-ico{border:0;width:0;height:0;border-left:9px solid currentColor;border-top:5px solid transparent;border-bottom:5px solid transparent}
@media(max-width:560px){.rcon{grid-template-columns:1fr;gap:15px;justify-items:center}.rcon-mid{width:100%}.rcon-sw{flex-direction:row;flex-wrap:wrap;justify-content:center}}
@media(prefers-reduced-motion:reduce){.led.on.led-scan{animation:none}}



/* light outline on headers + subheaders, gray subheaders */
h1,h2,h3,h4,h5,h6{-webkit-text-stroke:.85px rgba(4,9,22,.62);paint-order:stroke fill}
.sec-head p{color:#c8bfa9}
.sec-head p,.hero p.lead{-webkit-text-stroke:.45px rgba(4,9,22,.4);paint-order:stroke fill}




/* photoreal card material: top rim light, inner shade, micro-grain, deep ambient shadow */
.m3d-skin{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 15%),radial-gradient(135% 75% at 50% 124%,rgba(0,0,0,.28),transparent 58%),repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 3px)}
.plan,.plan.full,.pk,.path,.tier,.djob,.wsh-demo{box-shadow:0 34px 74px -40px rgba(2,8,24,.92),0 12px 26px -18px rgba(2,8,24,.72),inset 0 1px 0 rgba(255,255,255,.07),inset 0 -14px 26px -18px rgba(0,0,0,.5)}
@media(hover:hover) and (pointer:fine){.plan:hover,.plan.full:hover,.pk:hover,.path:hover,.tier:hover,.djob:hover,.wsh-demo:hover{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,-4px))}}



.hero-cta .btn{min-height:44px}


@media(max-width:900px){.nav .btn-scan,.site-header .btn-scan{min-height:44px}}


/* cursor-tracked card glow (websites packages) */








/* Section headings use the display face with a solid fill, so they stay legible over the photo bands. */
body.wc .sec-head h2,body.wc .m-left h2,body.wc .intro h2,body.wc .cta h2,body.wc .sec-h h2,body.wc .mcta h2{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.005em;text-wrap:balance;-webkit-text-fill-color:#EEF3FF;color:#EEF3FF;background:none;background-image:none;-webkit-text-stroke:0}
body.wc .hero h1,body.wc .mhero h1{font-family:'Playfair Display',Georgia,serif;font-weight:600;letter-spacing:-.008em;text-wrap:balance;-webkit-text-stroke:.4px rgba(1,4,12,.55)}
/* ---------------------------------------------------------------------------
   Typography: the details that separate typeset from styled.
   --------------------------------------------------------------------------- */

/* Figures in a column must not change width between rows. Proportional numerals
   shift a price or a score sideways as the digits change, which is the most
   common tell of a table nobody sweated. */
.price, .plan .price, .stat-n, .score, .sc-num, .lgr-n, .num, .tstrip-item,
td:has(> .price), .tier-grid .price, .rpt-score, .aud-score, time,
[data-count], .count, .ledger-n, .kpi-n {
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum' 1;
}

/* Display sizes are set too loose by default at hero scale, and optical sizing
   is what a variable face uses to thin its strokes as it grows. */
h1, .h1, .hero h1 { font-optical-sizing: auto; }
@media (min-width: 900px) {
  h1, .hero h1 { letter-spacing: -0.022em; }
}

/* A gradient on a SENTENCE is a generated-site tell. The wordmark keeps its
   gold, and figures keep theirs, because neither is a sentence. Section
   headings become a solid near-white, which also stops them dropping to
   transparent anywhere background-clip is unsupported. */
.sec-head h2 {
  background-image: none;
  -webkit-text-fill-color: #EAF3FF;
  color: #EAF3FF;
}

/* Quotation marks hang into the margin so the first line of a quote optically
   aligns with the text above it rather than sitting indented by a glyph. */
blockquote { hanging-punctuation: first last; }
