/* ===== Veritura prototype: subpage layer (T1-T5), inherits shared.css tokens ===== */
.pg{background:#f9f9f9;color:var(--ink-l)}
.pg-hero{max-width:87rem;margin:0 auto;padding:10.5rem 3rem 3.5rem}
.pg-crumb{font-family:var(--over);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--acc-l);display:flex;gap:.6em;align-items:center}
.pg-crumb a{color:inherit}
.pg-crumb span{color:var(--mut-deep);opacity:.55}
.pg-hero h1{margin:.9rem 0 0;font-size:clamp(2.3rem,3.6vw,3.3rem);line-height:1.06;letter-spacing:-.02em;max-width:56rem}
.pg-lede{margin:1.2rem 0 0;font-size:1.15rem;line-height:1.5;color:var(--mut-deep);max-width:42rem}
.pg-ctas{display:flex;gap:.75rem;margin-top:1.8rem}
.pg-shot{max-width:76rem;margin:2rem auto 0;padding:0 3rem;perspective:1100px}
.pg-shot img{width:100%;border-radius:.625em;display:block;box-shadow:0 1px 0 rgba(24,32,44,.05),0 24px 70px rgba(24,32,44,.12);transform-origin:50% 100%}
.pg-main{max-width:87rem;margin:0 auto;padding:2rem 3rem 7rem}
.pg-sec{margin-top:5.5rem}
.pg-sec>h2{font-size:clamp(1.7rem,2.4vw,2.3rem);line-height:1.1;letter-spacing:-.015em;max-width:44rem}
.pg-sec>.sec-copy{margin:1rem 0 0;max-width:44rem;color:var(--mut-deep);font-size:1.05rem;line-height:1.55}
.cardsg{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem}
.cardsg.g2{grid-template-columns:repeat(2,1fr)}
.c-card{background:#fff;border:1px solid rgba(19,19,19,.07);border-radius:.625em;padding:1.4rem 1.5rem}
.c-card h3{font-size:1.08rem;color:var(--ink-l)}
.c-card h4{font-size:1rem;color:var(--ink-l)}
.c-card p{margin:.5rem 0 0;font-size:.94rem;line-height:1.5;color:var(--mut-deep)}
.c-card ul{margin:.6rem 0 0;padding:0;list-style:none}
.c-card li{position:relative;padding-left:1.1rem;margin-top:.4rem;font-size:.92rem;line-height:1.45;color:var(--mut-deep)}
.c-card li::before{content:"";position:absolute;left:0;top:.52em;width:.45em;height:.45em;border-radius:50%;background:var(--acc-l);opacity:.75}
.pg-list{columns:2;column-gap:3rem;margin:1.6rem 0 0;padding:0;list-style:none;max-width:64rem}
.pg-list li{break-inside:avoid;position:relative;padding-left:1.4rem;margin-top:.7rem;font-size:.98rem;line-height:1.5;color:var(--mut-deep)}
.pg-list li::before{content:"";position:absolute;left:0;top:.5em;width:.55em;height:.55em;border-radius:50%;background:var(--acc-l);opacity:.8}
.pg blockquote{margin:2rem 0 0;padding:1.4rem 1.6rem;background:#fff;border-left:3px solid var(--acc-l);border-radius:0 .625em .625em 0;font-size:1.02rem;line-height:1.55;color:var(--ink-l);max-width:44rem}
/* doc template */
.doc-wrap{max-width:87rem;margin:0 auto;padding:2.5rem 3rem 7rem;display:grid;grid-template-columns:16rem 1fr;gap:4rem}
.doc-toc{position:sticky;top:6.5rem;align-self:start;font-size:.88rem}
.doc-toc b{display:block;font-family:var(--over);font-size:.7rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--mut-deep);margin-bottom:.8rem}
.doc-toc a{display:block;padding:.34rem 0;color:var(--mut-deep);border-left:2px solid rgba(19,19,19,.08);padding-left:.9rem;line-height:1.3}
.doc-toc a:hover{color:var(--ink-l);border-left-color:var(--acc-l)}
.prose{max-width:46rem;min-width:0}
.prose h2{font-size:1.65rem;letter-spacing:-.012em;margin:3rem 0 0;line-height:1.15}
.prose h3{font-size:1.18rem;margin:2rem 0 0}
.prose h4{font-size:1rem;margin:1.5rem 0 0}
.prose p{margin:.9rem 0 0;font-size:1rem;line-height:1.6;color:var(--mut-deep)}
.prose ul,.prose ol{margin:.9rem 0 0;padding-left:1.3rem}
.prose li{margin-top:.45rem;font-size:.98rem;line-height:1.55;color:var(--mut-deep)}
.prose a{color:var(--acc-l);text-decoration:underline;text-decoration-color:rgba(23,100,245,.35)}
.prose table{margin:1.4rem 0 0;border-collapse:collapse;width:100%;font-size:.92rem}
.prose th,.prose td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid rgba(19,19,19,.1);color:var(--mut-deep);vertical-align:top}
.prose th{color:var(--ink-l);font-weight:600}
/* pre-footer cta band */
.pg-cta{display:none}
.pg-cta .inner{background:#0b0d10;border-radius:.625em;padding:3.5rem 3rem;position:relative;overflow:hidden}
.pg-cta .inner::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 90% at 50% 130%,rgba(23,100,245,.5),transparent 70%);pointer-events:none}
.pg-cta h2{color:#f9f9f9;font-size:clamp(1.6rem,2.6vw,2.3rem);letter-spacing:-.015em;max-width:34rem;position:relative;z-index:1}
.pg-cta p{margin:.8rem 0 1.6rem;color:rgba(249,249,249,.75);max-width:36rem;position:relative;z-index:1}
.pg-cta .pill-line{position:relative;z-index:1;background:#f9f9f9;color:#131313}
.pg-cta .pill-line:hover{background:#fff}
@media(max-width:980px){.cardsg,.cardsg.g2{grid-template-columns:1fr}.pg-list{columns:1}.doc-wrap{grid-template-columns:1fr}.doc-toc{position:static}.pg-hero{padding:8rem 1.5rem 2.5rem}.pg-main,.doc-wrap,.pg-cta,.pg-shot{padding-left:1.5rem;padding-right:1.5rem}}

/* scroll-to-appear (subpages): base states applied only when JS arms them */
.js-rev .pg-sec{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.js-rev .pg-sec.in{opacity:1;transform:none}
.js-rev .c-card{opacity:0;transform:translateY(22px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.js-rev .c-card.in{opacity:1;transform:none}

/* v3: homepage-composed sections on subpages */
.pg-sec .sec-head{margin:0 0 2.2rem}
.pg-sec .sec-head .overline{color:var(--acc-l)}
.sec-lede{margin:.9rem 0 0;max-width:44rem;color:var(--mut-deep);font-size:1.08rem;line-height:1.55}
.pg-shot.mid{margin-top:5.5rem}
.pg-main .adv-grid{margin-top:2.2rem}

/* v4: their product-page blueprint with our components */
.pg-intro{max-width:87rem;margin:0 auto;padding:6.5rem 3rem 1rem;text-align:center}
.pg-intro .overline{color:var(--acc-l)}
.pg-intro h2{margin:1rem auto 0;font-size:clamp(1.9rem,2.9vw,2.7rem);line-height:1.12;letter-spacing:-.018em;max-width:46rem}
.pg-intro p{margin:1.2rem auto 0;max-width:40rem;color:var(--mut-deep);font-size:1.12rem;line-height:1.55}
.frows{max-width:82rem;margin:0 auto;padding:2.5rem 3rem 0;display:flex;flex-flow:column;gap:6.5rem}
.frow{display:flex;gap:5em;align-items:center}
.frow.flip{flex-direction:row-reverse}
.frow-copy{flex:1;min-width:0;display:flex;flex-flow:column;align-items:flex-start}
.frow-copy .overline{color:var(--acc-l);margin-bottom:.7rem}
.frow-copy h2{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.14;letter-spacing:-.015em;max-width:26rem}
.frow-copy p{margin:.85rem 0 0;color:var(--mut-deep);font-size:1rem;line-height:1.55;max-width:30rem}
.frow-copy ul{margin:1.1rem 0 0;padding:0;list-style:none}
.frow-copy li{position:relative;padding-left:1.3rem;margin-top:.55rem;font-size:.95rem;line-height:1.45;color:var(--mut-deep)}
.frow-copy li::before{content:"";position:absolute;left:0;top:.5em;width:.5em;height:.5em;border-radius:50%;background:var(--acc-l);opacity:.8}
.frow-copy li b{color:var(--ink-l);font-weight:550}
.frow-vis{flex:0 0 52%;min-width:0;perspective:1100px}
.frow-vis .ratio{display:block;position:relative;padding-top:64%;border-radius:.625em;overflow:hidden;background:#fff;box-shadow:0 1px 0 rgba(24,32,44,.05),0 18px 54px rgba(24,32,44,.1)}
.frow-vis img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;transform-origin:50% 100%}
.pg-band{max-width:82rem;margin:6.5rem auto 0;padding:0 3rem}
.pg-band .inner{display:flex;gap:.5em;flex-wrap:wrap}
.pg-band .bi{flex:1;min-width:14rem;background:#000;border-radius:.625em;padding:1.8rem 1.6rem;color:var(--n25,#f4f6f9)}
.pg-band .bi b{display:block;font-family:var(--over);font-size:2.3rem;font-weight:600;line-height:1;color:#f4f7fb}
.pg-band .bi span{display:block;margin-top:.6rem;max-width:14rem;font-size:.86rem;line-height:1.4;color:rgba(244,247,251,.75)}
.pg-faq{max-width:64rem;margin:6.5rem auto 0;padding:0 3rem}
.pg-faq>.overline{color:#131313;opacity:.55}
.pg-faq>h2{margin-top:.6rem;font-size:clamp(1.5rem,2.1vw,1.9rem);letter-spacing:-.015em}
.pg-faq .faq-list{margin-top:1.6rem}
.pg-faq .faq_a>div{padding:0}
.pg-faq .faq_a>div>*:last-child{margin-bottom:1.4rem}
.pg-faq .faq_a p{margin:.6rem 0 0;color:var(--mut-deep);font-size:.97rem;line-height:1.55}
.pg-faq .faq_a ul{margin:.7rem 0 0;padding-left:1.2rem}
.pg-faq .faq_a li{margin-top:.4rem;color:var(--mut-deep);font-size:.94rem;line-height:1.5}
.pg-faq .faq_a h3,.pg-faq .faq_a h4{margin-top:1rem;font-size:1.02rem;color:var(--ink-l)}
.pg-quote{max-width:56rem;margin:6.5rem auto 0;padding:0 3rem}
.pg-quote blockquote{margin:0;padding:2.2rem 2.4rem;background:#fff;border-left:3px solid var(--acc-l);border-radius:.625em;box-shadow:0 1px 0 rgba(24,32,44,.04),0 16px 48px rgba(24,32,44,.08);font-size:1.15rem;line-height:1.6;color:var(--ink-l)}
@media(max-width:980px){.frow,.frow.flip{flex-direction:column;gap:2rem}.frow-vis{flex:1 1 auto;width:100%}.frows{gap:4rem}}

/* v6: family accents + their page anatomy */
body.fam-platform{--fam:#1b4ae2;--tint:#eef2fd;--tint2:#e3ebfc}
body.fam-solutions{--fam:#0e9f88;--tint:#e9f6f3;--tint2:#ddf0eb}
body.fam-resources{--fam:#4d68d8;--tint:#edf3f9;--tint2:#e4edf6}
body.fam-company{--fam:#4b5666;--tint:#f0f2f5;--tint2:#e8ebef}
/* dark hero + intro split on black */
.pg-dark{background:#0b0d10;color:#f4f7fb;border-radius:0 0 0 0}
.pg-dark .pg-hero h1{color:#f7f9fc}
.pg-dark .pg-lede{color:rgba(244,247,251,.72)}
.pg-dark .pg-crumb{color:#7fa7ff}
.pg-dark .pg-crumb span{color:rgba(244,247,251,.4)}
.intro-split{max-width:87rem;margin:0 auto;padding:4.5rem 3rem 6rem;display:grid;grid-template-columns:1fr 2fr;gap:4rem}
.intro-split b{font-size:1.15rem;font-weight:600;color:#f4f7fb;line-height:1.3;max-width:16rem}
.intro-split .txt p{margin:0 0 1.1rem;color:rgba(244,247,251,.72);font-size:.98rem;line-height:1.6;max-width:36rem}
.pg-dark .pg-shot{padding-bottom:1rem}
/* light slab opens big */
.slab-open{max-width:87rem;margin:0 auto;padding:6.5rem 3rem 0}
.slab-open h2{font-size:clamp(2rem,3vw,2.6rem);line-height:1.1;letter-spacing:-.02em;max-width:40rem}
.pg-light{background:#f9f9f9;border-radius:2.5rem 2.5rem 0 0;position:relative;z-index:2}
/* tinted asset panels + family overlines */
.frow-copy .overline{color:var(--fam,#1b4ae2)}
.frow-vis .ratio{background:var(--tint,#eef2fd);box-shadow:none;border:0}
.frow-vis .ratio.frag img{position:absolute;inset:1.6rem;width:calc(100% - 3.2rem);height:calc(100% - 3.2rem);object-fit:contain;object-position:center;filter:drop-shadow(0 14px 34px rgba(24,32,44,.16))}
.frow-vis .ratio.brd svg{position:absolute;inset:0;width:100%;height:100%}
/* light 2x2 stat grid (their product-page treatment) */
.pg-band .inner{display:grid;grid-template-columns:1fr 1fr;gap:0;background:transparent}
.pg-band .bi{background:transparent;border-radius:0;padding:2.2rem 2.6rem;border-left:1px solid rgba(19,19,19,.12)}
.pg-band .bi:nth-child(odd){border-left:0}
.pg-band .bi:nth-child(n+3){border-top:1px solid rgba(19,19,19,.12)}
.pg-band .bi b{color:var(--ink-l);font-size:2.5rem;text-align:center}
.pg-band .bi span{color:var(--mut-deep);max-width:18rem;margin:.6rem auto 0;text-align:center}
.pg-band .bi{text-align:center}
.pg-band{max-width:64rem}
.pg-band h2{text-align:center;font-size:clamp(1.6rem,2.3vw,2rem);letter-spacing:-.015em;margin-bottom:2.2rem}
.pg-faq .contact-line{margin-top:1.4rem;text-align:center;font-size:.9rem;color:var(--mut-deep)}
.pg-faq .contact-line a{color:var(--acc-l);text-decoration:underline}
@media(max-width:900px){.intro-split{grid-template-columns:1fr;gap:1.5rem}.pg-band .inner{grid-template-columns:1fr}.pg-band .bi{border-left:0}}

/* v7: measured pitch anatomy */
.frow-copy li{font-size:.95rem;padding-left:1.2rem;margin-top:.5rem}
.frow-copy li b{font-weight:520}
.disc{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.2rem;font-size:.9rem;font-weight:550;color:var(--ink-l);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(19,19,19,.3)}
.disc:hover{color:var(--fam,#1b4ae2)}
.disc svg{transition:transform .18s}
.disc:hover svg{transform:translateX(3px)}
.fnblock{max-width:76rem;margin:6.5rem auto 0;display:grid;grid-template-columns:1fr 1.3fr;gap:4rem;padding:0 0}
.fnl h2{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.14;letter-spacing:-.015em;max-width:20rem}
.fnr{display:flex;flex-flow:column;gap:1.5rem}
.fni{display:flex;gap:.9rem;align-items:flex-start}
.fni i{flex:0 0 auto;width:.9rem;height:.9rem;margin-top:.3rem;border-radius:50%;background:radial-gradient(circle at 35% 30%,#9db9ff,var(--fam,#1b4ae2))}
.fni b{display:block;font-size:1rem;font-weight:560;color:var(--ink-l)}
.fni p{margin:.3rem 0 0;font-size:.92rem;line-height:1.5;color:var(--mut-deep);max-width:30rem}
.pg-quote{position:relative}
.qfan{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.pg-quote blockquote{position:relative;z-index:1}
@media(max-width:900px){.fnblock{grid-template-columns:1fr;gap:1.5rem}}

/* v8: hero scenes + light-board polish */
.pg-scene{max-width:76rem;margin:2rem auto 0;padding:0 3rem}
.pg-scene svg{display:block;width:100%;height:auto;border-radius:.75em;border:1px solid rgba(150,174,209,.16)}
@keyframes vsDoc{0%{transform:translateX(0);opacity:0}15%{opacity:1}70%{opacity:1}100%{transform:translateX(210px);opacity:0}}
.vs-doc{animation:vsDoc 4.5s ease-in-out infinite}
@keyframes vsRing{to{stroke-dashoffset:-96}}
.vs-ring{animation:vsRing 7s linear infinite}
@keyframes vsOut{0%,20%{opacity:0;transform:translateX(-14px)}45%,85%{opacity:1;transform:none}100%{opacity:0}}
.vs-out{animation:vsOut 6.5s ease-in-out infinite}
@keyframes vsLock{0%,100%{transform:none}50%{transform:translateY(-4px)}}
.vs-lock{animation:vsLock 4s ease-in-out infinite}
@keyframes csScan{0%{transform:translateY(0)}50%{transform:translateY(232px)}100%{transform:translateY(0)}}
.cs-scan{animation:csScan 5.5s ease-in-out infinite}
@keyframes csIris{0%,100%{transform:scale(1)}50%{transform:scale(.92)}}
.cs-iris{transform-origin:660px 260px;animation:csIris 4.5s ease-in-out infinite}
@keyframes csStamp{0%,25%{opacity:0;transform:scale(.85)}45%,90%{opacity:1;transform:scale(1)}100%{opacity:0}}
.cs-stamp{transform-origin:center;transform-box:fill-box;animation:csStamp 6s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.vs-doc,.vs-ring,.vs-out,.vs-lock,.cs-scan,.cs-iris,.cs-stamp{animation:none}}
.frow-vis .ratio.brd{background:transparent}

/* v9: hero page-swap (previous view fades out, next appears) + image captions */
.vcap{display:block;margin-top:.7rem;font-size:.82rem;color:var(--mut-l);text-align:center}
html.swap-on .pg-dark.has-swap{position:relative;height:100vh;overflow:hidden}
html.swap-on .pg-dark.has-swap .ph{position:absolute;inset:0;display:flex;flex-flow:column;justify-content:center}
html.swap-on .pg-dark.has-swap .ph1 .pg-hero{padding-top:7.5rem;padding-bottom:1.5rem}
html.swap-on .pg-dark.has-swap .ph1 .pg-shot img,html.swap-on .pg-dark.has-swap .ph1 .pg-scene svg{max-height:46vh;width:auto;margin:0 auto}
html.swap-on .pg-dark.has-swap .ph1 .pg-shot,html.swap-on .pg-dark.has-swap .ph1 .pg-scene{display:flex;justify-content:center}
html.swap-on .pg-dark.has-swap .ph2{opacity:0;justify-content:center}
html.swap-on .pg-dark.has-swap .intro-split{padding:0 3rem}

/* v10: the pinned deck - each feature owns the viewport, dissolves, next appears */
.frow-copy li span{display:block;margin-top:.15rem;font-weight:400;font-size:.88rem;line-height:1.45;color:var(--mut-l)}
.fdeck{position:relative}
.fdots{display:none}
html.deck-on .fdeck{height:100vh;overflow:hidden}
html.deck-on .fstep{position:absolute;inset:0;display:flex;align-items:center;opacity:0;pointer-events:none}
html.deck-on .fstep .frow{width:100%;max-width:82rem;margin:0 auto;padding:0 3rem}
html.deck-on .fstep.act{opacity:1;pointer-events:auto}
html.deck-on .fdots{display:flex;flex-flow:column;gap:.55rem;position:absolute;right:2.2rem;top:50%;transform:translateY(-50%);z-index:5}
html.deck-on .fdots i{width:.5rem;height:.5rem;border-radius:50%;background:rgba(19,19,19,.18);transition:background .3s,transform .3s}
html.deck-on .fdots i.on{background:var(--fam,#1b4ae2);transform:scale(1.35)}
html:not(.deck-on) .fstep{margin-top:6.5rem}
html:not(.deck-on) .fstep:first-child{margin-top:2.5rem}
@media(max-width:900px){html.deck-on .fdeck{height:auto;overflow:visible}html.deck-on .fstep{position:static;opacity:1}}

/* v11: centered glow hero + trio + methodology strip (per Joey's renders) */
.pg-dark{background:radial-gradient(60% 42% at 50% 0%,rgba(28,78,210,.42),rgba(28,78,210,.10) 55%,transparent 75%),#0a0c12}
.pg-dark .pg-hero{max-width:87rem;margin:0 auto;padding:9.5rem 3rem 1rem;text-align:center}
.pg-dark .pg-hero h1{margin-left:auto;margin-right:auto;max-width:46rem}
.pg-dark .pg-lede{margin-left:auto;margin-right:auto;max-width:34rem}
.pg-dark .pg-ctas{justify-content:center}
.pg-dark .pg-crumb{justify-content:center}
.pg-dark .pill-line{background:#1764f5;color:#fff}
.pg-dark .pill-line:hover{background:#0f55dd}
.trio{max-width:70rem;margin:6.5rem auto 0;padding:2.6rem 3rem;background:#fff;border:1px solid rgba(19,19,19,.07);border-radius:1rem;display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}
.trio .ti i{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:.65rem;background:rgba(23,100,245,.1);color:#1b4ae2}
.trio .ti b{display:block;margin-top:.8rem;font-size:1.02rem;color:var(--ink-l)}
.trio .ti p{margin:.4rem 0 0;font-size:.9rem;line-height:1.5;color:var(--mut-deep)}
.mstrip{max-width:76rem;margin:6rem auto 0;text-align:center}
.mstrip>.overline{color:var(--fam,#1b4ae2)}
.msteps{display:grid;grid-template-columns:repeat(5,1fr);gap:1.6rem;margin-top:2rem}
.ms i{display:block;width:3rem;height:3rem;margin:0 auto;border-radius:50%;border:1px solid rgba(19,19,19,.14);background:#fff;position:relative}
.ms i::after{content:"";position:absolute;inset:32%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#9db9ff,#1b4ae2)}
.ms b{display:block;margin-top:.9rem;font-size:.95rem;color:var(--ink-l)}
.ms p{margin:.35rem 0 0;font-size:.83rem;line-height:1.45;color:var(--mut-deep)}
@media(max-width:980px){.trio{grid-template-columns:1fr}.msteps{grid-template-columns:1fr 1fr}}

/* v12: interiors matched to the reference renders */
.frow-copy h2{font-size:1.4rem;line-height:1.2;letter-spacing:-.01em;max-width:22rem;font-weight:600}
.frow-copy p{margin:.7rem 0 0;font-size:.95rem;line-height:1.55;color:var(--mut-deep);max-width:24rem}
.frow-copy .overline{font-size:.68rem;letter-spacing:.12em;margin-bottom:.55rem}
.frow{gap:4em}
.frow-vis{flex:0 0 55%}
.frow-vis .ratio{padding-top:62%;border-radius:1rem;background:var(--tint,#eef2fd)}
.frow-vis .ratio.frag{background:var(--tint,#eef2fd)}
.frow-vis .ratio.frag::before{content:"";position:absolute;inset:1.4rem;background:#fff;border-radius:.8rem;box-shadow:0 10px 34px rgba(24,32,44,.1)}
.frow-vis .ratio.frag img{position:absolute;inset:2.1rem;width:calc(100% - 4.2rem);height:calc(100% - 4.2rem);object-fit:contain;object-position:center;filter:none}
html:not(.deck-on) .fstep{margin-top:5rem}
/* the statement band: flat black, distinct from the hero glow */
.intro-split{background:#060708;max-width:none;padding:5rem calc((100% - 81rem)/2 + 3rem)}
.intro-split b{font-size:1.3rem;max-width:15rem}
/* stat band: one light-blue row of four */
.pg-band{max-width:80rem}
.pg-band .inner{display:grid;grid-template-columns:repeat(4,1fr);background:#edf3fc;border-radius:1rem;padding:2.4rem 1rem}
.pg-band .bi{border:0!important;padding:.6rem 1.4rem}
.pg-band .bi b{font-size:2.2rem}
.pg-band .bi span{font-size:.82rem;max-width:14rem}
.pg-band h2{font-size:1.45rem}
@media(max-width:980px){.pg-band .inner{grid-template-columns:1fr 1fr}}

/* v13: route-owned product proof (real captures; density toward the measured 13) */
.proof{max-width:80rem;margin:6rem auto 0}
.proof>.overline{color:var(--fam,#1b4ae2)}
.proof>h2{margin-top:.5rem;font-size:1.45rem;letter-spacing:-.012em}
.pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.6rem}
.pf{margin:0}
.pf-img{display:block;position:relative;padding-top:64%;border-radius:.9rem;overflow:hidden;background:var(--tint,#eef2fd)}
.pf-img img{position:absolute;inset:1rem;width:calc(100% - 2rem);height:calc(100% - 2rem);object-fit:contain;object-position:center;border-radius:.4rem}
.pf figcaption{margin-top:.6rem;font-size:.85rem;color:var(--mut-deep)}
@media(max-width:980px){.pf-grid{grid-template-columns:1fr}}

/* v14: subpage hero matched to reference states */
.pg-dark{background:radial-gradient(56% 40% at 50% -6%,rgba(23,100,245,.34),rgba(23,100,245,.08) 55%,transparent 75%),#0a0c10}
.pg-dark .pg-hero h1{font-size:clamp(1.9rem,3.2vw,2.6rem);line-height:1.14;max-width:40rem}
.pg-dark .pg-lede{font-size:.95rem;line-height:1.62;max-width:28rem;margin-top:1rem}
.pg-dark .pg-ctas{margin-top:1.6rem}
.pg-dark .pill-line{background:#f4f6fa;color:#12151b}
.pg-dark .pill-line:hover{background:#ffffff}
.pg-dark .pg-shot{max-width:64rem;margin-top:2.8rem;perspective:none}
.pg-dark .pg-shot img{border-radius:12px 12px 0 0;box-shadow:0 -8px 60px rgba(0,10,40,.5)}
html.swap-on .pg-dark.has-swap .ph1{justify-content:flex-end}
html.swap-on .pg-dark.has-swap .ph1 .pg-hero{padding-top:6.5rem}
html.swap-on .pg-dark.has-swap .ph1 .pg-shot img{max-height:none;height:auto;width:100%}
html.swap-on .pg-dark.has-swap .ph1 .pg-shot{overflow:hidden;max-height:38vh}
.scene-band{max-width:76rem;margin:4.5rem auto 0;padding:0 3rem}
.scene-band svg{display:block;width:100%;height:auto;border-radius:14px}

/* v15 integrator pass (from the 14-route audit) */
.pg-dark .pg-hero h1{font-size:clamp(2.1rem,3.6vw,3rem);text-wrap:balance}
.pg-dark .pg-hero{padding-top:8.5rem}
.pg-dark .pg-ctas{margin-top:2rem}
.pg-dark .pg-shot{margin-top:3.4rem}
.pg-dark .pg-shot img{background:#fff;padding:.55rem .55rem 0;border-radius:14px 14px 0 0;box-shadow:0 -10px 70px rgba(0,20,70,.55)}
.src-strip-dark{max-width:64rem;margin:2.6rem auto 0;padding:0 3rem;text-align:center}
.src-strip-dark p{font-family:var(--over);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(157,185,255,.65)}
.src-strip-dark .lz{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.6rem;margin-top:.8rem}
.src-strip-dark .lz span{font-size:.92rem;font-weight:560;color:rgba(226,234,246,.82)}
.src-strip-dark small{display:block;margin-top:.7rem;font-size:.68rem;color:rgba(157,185,255,.45)}
.intro-split{min-height:52vh;align-items:center;padding-top:6rem;padding-bottom:6rem}
.intro-split b{font-size:1.55rem;line-height:1.25;max-width:16rem}
.intro-split .txt p{font-size:clamp(1.15rem,1.55vw,1.35rem);line-height:1.55;color:rgba(244,247,251,.9);max-width:34rem}
.intro-split .isw{opacity:1}
.pg-light{border-radius:2.6rem 2.6rem 0 0;margin-top:-2.6rem}
html:not(.deck-on) .fstep{margin-top:8rem}
html.deck-on .fstep .frow{align-items:flex-start}
html.deck-on .fstep .frow-copy{padding-top:3.2rem}
html.deck-on .fdots{z-index:40}
.frow-copy ul{margin:1rem 0 0;padding:0;list-style:none}
.frow-copy li{position:relative;padding-left:1.15rem;margin-top:.45rem;font-size:.9rem;color:var(--mut-deep)}
.frow-copy li::before{content:"";position:absolute;left:0;top:.5em;width:.45em;height:.45em;border-radius:50%;background:var(--fam,#1b4ae2);opacity:.8}
.frow-vis .ratio.crop{background:var(--tint,#eef2fd)}
.frow-vis .ratio.crop::before{content:"";position:absolute;inset:1.2rem;background:#fff;border-radius:.8rem;box-shadow:0 12px 36px rgba(24,32,44,.12)}
.frow-vis .ratio.crop img{position:absolute;inset:1.8rem;width:calc(100% - 3.6rem);height:calc(100% - 3.6rem);object-fit:cover;object-position:top left;border-radius:.45rem}
.frow-vis .ratio.frag img{object-fit:cover;object-position:top center}
.pf-grid{grid-template-columns:repeat(3,1fr)}
.pf-img img{object-fit:cover;object-position:top center;inset:0;width:100%;height:100%;border-radius:0}
.pf-img{padding-top:58%}
.slab-open{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:end}
.slab-open .sec-lede{margin:0}
.fnl h2{position:sticky;top:6.5rem}
@media(max-width:980px){.slab-open{grid-template-columns:1fr}.intro-split{min-height:0}}

/* v16 verdict fixes */
.pg-dark{padding-bottom:3rem}
.pg-light{display:flow-root;position:relative;z-index:2}
.scene-band{margin-top:0;padding-top:4.5rem}
.frow-vis .ratio.frag img{object-fit:contain;object-position:center}

/* v17: benefits block + related cards (new reference section types) */
.bnblock{max-width:80rem;margin:6.5rem auto 0;display:grid;grid-template-columns:1fr 1.25fr;gap:4rem;align-items:start}
.bnl h2{font-size:clamp(1.5rem,2.2vw,2.05rem);line-height:1.14;letter-spacing:-.015em;max-width:20rem;position:sticky;top:6.5rem}
.bnl p{margin:.9rem 0 0;font-size:.95rem;line-height:1.6;color:var(--mut-deep);max-width:22rem}
.bnr{display:flex;flex-flow:column;gap:1.7rem}
.bni{display:flex;gap:1rem;align-items:flex-start}
.bni i{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:2.3rem;height:2.3rem;border-radius:.6rem;background:rgba(23,100,245,.09);color:var(--fam,#1b4ae2)}
.bni b{display:block;font-size:1.02rem;color:var(--ink-l)}
.bni p{margin:.35rem 0 0;font-size:.92rem;line-height:1.55;color:var(--mut-deep);max-width:34rem}
.related{max-width:80rem;margin:6.5rem auto 0}
.related h2{font-size:1.45rem;letter-spacing:-.012em;text-align:center}
.rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:1.8rem}
.rc{display:block;padding-bottom:.4rem;border-radius:.9rem;overflow:hidden;background:#fff;border:1px solid rgba(19,19,19,.07);transition:transform .2s,box-shadow .2s}
.rc:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(24,32,44,.1)}
.rc-art{display:block;height:8.5rem;background:linear-gradient(135deg,var(--tint,#eef2fd),var(--tint2,#e3ebfc))}
.rc b{display:block;margin:1rem 1.2rem 0;font-size:1rem;color:var(--ink-l)}
.rc p{margin:.35rem 1.2rem 1rem;font-size:.88rem;line-height:1.5;color:var(--mut-deep)}
@media(max-width:980px){.bnblock{grid-template-columns:1fr;gap:1.5rem}.bnl h2{position:static}.rc-grid{grid-template-columns:1fr}}

/* v18: boundary card (claims-safe analog of the reference testimonial slot) */
.boundary{max-width:64rem;margin:6.5rem auto 0}
.bd-inner{background:#fff;border:1px solid rgba(19,19,19,.07);border-radius:1rem;padding:2.8rem 3rem;box-shadow:0 18px 54px rgba(24,32,44,.08)}
.bd-inner>.overline{color:var(--fam,#1b4ae2)}
.bd-inner h2{margin:.6rem 0 0;font-size:clamp(1.4rem,2vw,1.85rem);letter-spacing:-.015em;max-width:32rem}
.bd-inner>p{margin:1rem 0 0;font-size:1rem;line-height:1.6;color:var(--mut-deep);max-width:40rem}
.bd-rows{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;padding-top:1.8rem;border-top:1px solid rgba(19,19,19,.08)}
.bd-rows b{display:block;font-size:.95rem;color:var(--ink-l)}
.bd-rows span{display:block;margin-top:.4rem;font-size:.9rem;line-height:1.55;color:var(--mut-deep)}
@media(max-width:900px){.bd-rows{grid-template-columns:1fr}.bd-inner{padding:2rem 1.6rem}}

/* ============================================================
   v19 — REFERENCE SYSTEM, MEASURED (10-family DOM inspection)
   Their tokens: 15px root; one container (max 1600, pad 75);
   12-col grid gap 18.75; spacing 75/112.5/150/168.75;
   slab radius 56.25; type .h2 37.5 / .h3 30 / .h4 26.25 /
   .h5 22.5 / body 15 / txt-large 18.75 / overline 11.25;
   ink #1f1f1f, body #777, on-dark #f9f9f9 / #ebebeb.
   ============================================================ */
.pg{--wrapmax:1600px;--wrappad:75px;--sp-s:75px;--sp-m:112.5px;--sp-l:150px;--sp-xl:168.75px;
    --t-h2:37.5px;--t-h3:30px;--t-h4:26.25px;--t-h5:22.5px;--t-body:15px;--t-large:18.75px;--t-over:11.25px;
    --ink:#1f1f1f;--body:#777;--on-dark:#f9f9f9;--on-dark-2:#ebebeb;--slabr:56.25px}

/* one container for every section */
.pg-hero,.src-strip-dark,.intro-split,.slab-open,.frows,.fdeck .frow,.bnblock,.boundary,
.pg-band,.proof,.trio,.mstrip,.pg-faq,.related,.pg-quote,.scene-band,.pg-shot{
  max-width:var(--wrapmax);margin-left:auto;margin-right:auto;
  padding-left:var(--wrappad);padding-right:var(--wrappad);box-sizing:border-box}

/* hero: 995px tall, 161px top pad, 37.5px two-line h1, 390px subhead box */
.pg-dark .pg-hero{padding-top:161px;padding-bottom:30px}
.pg-dark .pg-hero h1{font-size:var(--t-h2);line-height:1.2;font-weight:500;letter-spacing:-.02em;max-width:628px}
.pg-dark .pg-lede{font-size:var(--t-body);line-height:1.3;color:var(--on-dark-2);max-width:390px;margin-top:15px}
.pg-dark .pg-ctas{margin-top:30px}
.pg-dark .pill-line{padding:10.25px 17.56px;border-radius:9.56px;font-size:var(--t-over);font-weight:600;letter-spacing:.03em}
/* their hero asset: bare bordered screenshot, 844px, not a padded white card */
.pg-dark .pg-shot{max-width:calc(844px + var(--wrappad)*2);margin-top:45px}
.pg-dark .pg-shot img{background:none;padding:0;border:1px solid #ebebeb;border-radius:5.6px;box-shadow:none}

/* sources strip in their logo-marquee slot: 844px, 34px tall, edge-masked */
.src-strip-dark{max-width:calc(844px + var(--wrappad)*2);margin-top:37.5px}
.src-strip-dark p{font-size:var(--t-over)}
.src-strip-dark .lz span{font-size:var(--t-body);color:var(--on-dark-2)}

/* intro statement: 150px pads, label left 305px, text 520px at 18.75px */
.intro-split{display:grid;grid-template-columns:305px 520px;justify-content:center;gap:18.75px;
  padding-top:var(--sp-l);padding-bottom:var(--sp-l);min-height:0;align-items:start}
.intro-split b{font-size:var(--t-h4);line-height:1.2;font-weight:500;letter-spacing:-.021px;max-width:305px;color:var(--on-dark)}
.intro-split .txt p{font-size:var(--t-large);line-height:1.35;font-weight:500;color:var(--on-dark-2);max-width:520px;margin:0 0 1.1em}

/* the light slab: their 56.25px top radius */
.pg-light{border-radius:var(--slabr) var(--slabr) 0 0;margin-top:calc(var(--slabr)*-1);padding-top:var(--sp-l)}
.slab-open{padding-top:0;display:block}
.slab-open h2{font-size:var(--t-h3);line-height:1.2;font-weight:500;letter-spacing:-.02em;max-width:628px;color:var(--ink)}
.slab-open .sec-lede{margin-top:15px;font-size:var(--t-body);line-height:1.3;color:var(--body);max-width:520px}

/* feature rows: 120px row gap, 60px below the section head */
.fdeck,.frows{margin-top:60px}
html:not(.deck-on) .fstep{margin-top:120px}
html:not(.deck-on) .fstep:first-child{margin-top:0}
.frow-copy .overline{font-size:var(--t-over);letter-spacing:.03em;font-weight:600}
.frow-copy h2{font-size:var(--t-h5);line-height:1.2;font-weight:500;letter-spacing:-.02em;color:var(--ink)}
.frow-copy p{font-size:var(--t-body);line-height:1.4;color:var(--body)}
.frow-copy li{font-size:var(--t-body);line-height:1.4;color:var(--body)}

/* benefits, boundary, related, figures, faq at their scale */
.bnblock{margin-top:var(--sp-l)}
.bnl h2{font-size:var(--t-h4);line-height:1.2;font-weight:500;color:var(--ink)}
.bnl p,.bni p{font-size:var(--t-body);line-height:1.4;color:var(--body)}
.bni b{font-size:var(--t-body);font-weight:600;color:var(--ink)}
.boundary,.proof,.related,.pg-band,.trio,.mstrip{margin-top:var(--sp-l)}
.bd-inner h2{font-size:var(--t-h4);font-weight:500;color:var(--ink)}
.bd-inner>p,.bd-rows span{font-size:var(--t-body);line-height:1.4;color:var(--body)}
.pg-band h2,.related h2,.pg-faq>h2,.proof>h2{font-size:var(--t-h4);font-weight:500;letter-spacing:-.02em;color:var(--ink)}
.pg-band .bi b{font-size:45px;line-height:1;font-weight:600}
.pg-band .bi span{font-size:13px;line-height:1.35}
.faq_q{font-size:var(--t-large);font-weight:500;color:var(--ink)}
.pg-faq .faq_a p,.pg-faq .faq_a li{font-size:var(--t-body);line-height:1.45;color:var(--body)}
.rc b{font-size:var(--t-body);font-weight:600;color:var(--ink)}
.rc p{font-size:13px;line-height:1.4;color:var(--body)}
.trio .ti b{font-size:var(--t-body);font-weight:600;color:var(--ink)}
.trio .ti p{font-size:13px;line-height:1.45;color:var(--body)}
.ms b{font-size:var(--t-body);font-weight:600;color:var(--ink)}
.ms p{font-size:13px;line-height:1.4;color:var(--body)}
@media(max-width:1100px){
  .pg{--wrappad:36px}
  .intro-split{grid-template-columns:1fr;gap:24px}
  .pg-dark .pg-hero{padding-top:120px}
}

/* v20: hero asset to their measured box (844 x 520, top-anchored) */
.pg-dark .pg-shot img{display:block;width:100%;height:520px;object-fit:cover;object-position:top center}
@media(max-width:1100px){.pg-dark .pg-shot img{height:auto}}

/* ============================================================
   v21 — inspector deltas closed (14-route side-by-side)
   ============================================================ */
/* 1. dark ground runs unbroken: no tonal seam at the statement band */
.intro-split{background:none}
.pg-dark{background:radial-gradient(56% 40% at 50% -6%,rgba(23,100,245,.34),rgba(23,100,245,.08) 55%,transparent 75%),#0a0c10}

/* 2. their 12-column indent: section heads and rows start at column 3 */
.slab-open,.bnblock,.pg-faq,.related,.proof,.pg-band,.trio,.boundary,.mstrip{
  padding-left:calc(var(--wrappad) + 219px);padding-right:var(--wrappad)}
.fdeck .frow,.frows .frow{padding-left:calc(var(--wrappad) + 216px);padding-right:var(--wrappad)}
@media(max-width:1400px){
  .slab-open,.bnblock,.pg-faq,.related,.proof,.pg-band,.trio,.boundary,.mstrip,
  .fdeck .frow,.frows .frow{padding-left:var(--wrappad);padding-right:var(--wrappad)}
}

/* 3. type scale to contract: slab head 37.5, row heads 26.25 */
.slab-open h2{font-size:var(--t-h2)}
.frow-copy h2,.frow-copy h3{font-size:var(--t-h4);line-height:1.2;font-weight:500;letter-spacing:-.02em;color:var(--ink)}
.frow-copy p{max-width:409px}
.frow-copy{flex:0 0 409px}
.frow-vis{flex:1 1 auto;max-width:523px}

/* 4. FAQ on the reference's centred spine */
.pg-faq{max-width:calc(628px + var(--wrappad)*2);padding-left:var(--wrappad);padding-right:var(--wrappad);text-align:center}
.pg-faq>h2{font-size:var(--t-h3);text-align:center}
.pg-faq .faq-list{text-align:left;margin-top:30px}
.pg-faq .faq_a p{max-width:none}

/* 5. related cards carry real covers */
.rc-art{position:relative;height:183px;overflow:hidden}
.rc-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}

/* 6. proof + fragment crops: contain inside a white card, never clip UI text */
.pf-img{padding-top:58%;background:var(--tint,#eef2fd)}
.pf-img img{inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);object-fit:contain;object-position:center;
  background:#fff;border-radius:6px;box-shadow:0 6px 20px rgba(24,32,44,.10)}
.frow-vis .ratio.crop img{object-fit:contain;background:#fff}

/* 7. eyebrow as a pill, like their overline chip */
.pg-dark .pg-crumb{display:inline-flex;justify-content:center;gap:.5em;padding:6px 12px;border-radius:100px;
  background:rgba(157,185,255,.10);border:1px solid rgba(157,185,255,.18);font-size:var(--t-over);
  letter-spacing:.03em;width:auto;margin:0 auto}
.pg-dark .pg-hero{display:flex;flex-flow:column;align-items:center}
.pg-dark .pg-hero h1,.pg-dark .pg-lede{text-align:center}

/* 8. trio icons differ from the benefits icons (no duplicate glyphs per page) */
.trio .ti i{background:rgba(14,159,136,.10);color:#0e9f88}

/* v25: judge findings - legible proof tiles, balanced boundary card */
.pf-img{padding-top:66%}
.pf-img img{inset:10px;width:calc(100% - 20px);height:calc(100% - 20px)}
.pf-grid{gap:1.5rem}
.bd-inner{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}
.bd-inner>.overline,.bd-inner>h2{grid-column:1}
.bd-inner>p{grid-column:2;grid-row:1 / span 2;margin-top:0;max-width:none;align-self:center}
.bd-rows{grid-column:1 / -1;margin-top:.5rem}
@media(max-width:900px){.bd-inner{grid-template-columns:1fr}.bd-inner>p{grid-column:1;grid-row:auto}}

/* v26: focal crops are cut to the exact frame ratio at native 1:1 scale, so they
   fill their frame edge-to-edge like a bordered screenshot on the tinted stage.
   No contain-letterboxing, no cover-clipping, no white box. */
.frow-vis .ratio.crop::before{display:none}
.frow-vis .ratio.crop img{position:absolute;inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);
  object-fit:cover;object-position:top left;border-radius:8px;border:1px solid rgba(24,40,80,.12);
  background:#fff;box-shadow:0 8px 28px rgba(24,32,44,.10)}
.pf-img img{inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);object-fit:cover;object-position:top left;
  border-radius:6px;border:1px solid rgba(24,40,80,.12);box-shadow:0 6px 20px rgba(24,32,44,.08)}
.rc-art img{object-fit:cover;object-position:top left}
/* v27: gsap-driven heads must not fight the CSS word transition; FAQ answers animate height */
.wr.gs .w{transition:none!important}
.faq_item .faq_a{overflow:hidden}
.pg-hero h1,.pg-sec>h2{perspective:800px}
.pg-hero h1 .w,.frow-copy h2 .w{transform-origin:50% 100%}
/* v28: reference rhythm for subpages. Feature rows scroll (576px pitch: ~426 row + 150 gap),
   benefits 613, figures 479, related 487, FAQ 644 - measured on redica.com at 1440. */
.frows{display:flex;flex-direction:column;gap:var(--sp-l);padding:var(--sp-s) 0 var(--sp-l)}
.frows .fstep{margin-top:0!important}
.frows .frow{min-height:426px;align-items:center}
.bnblock{padding:var(--sp-m) 0;min-height:613px;box-sizing:border-box}
.pg-band{min-height:479px;box-sizing:border-box;padding:var(--sp-m) 0}
.related{min-height:487px;box-sizing:border-box;padding:var(--sp-s) 0 var(--sp-m)}
.pg-faq{min-height:644px;box-sizing:border-box}
/* v29: reference layouts for legal, library, contact (measured on redica.com at 1440) */
.legal-hero{min-height:825px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;box-sizing:border-box}
.legal-hero h1{font-size:45px;line-height:1.1;max-width:22ch}
.legal-hero .pg-lede{max-width:636px}
.doc-wrap.legal{display:block;max-width:636px;margin:0 auto;padding:150px 0}
.doc-wrap.legal .prose{max-width:none}
.doc-wrap.legal .prose h2{font-size:30px;margin-top:56px}
.doc-wrap.legal .prose h3{font-size:22.5px}
.doc-wrap.legal .prose p,.doc-wrap.legal .prose li,.doc-wrap.legal .prose dd{font-size:15px;line-height:1.6;color:var(--body,#777)}
.doc-wrap.legal .prose dt{font-size:15px;color:var(--ink,#1f1f1f);font-weight:600;margin-top:1em}
.doc-wrap.legal .prose dd{margin:0 0 .4em}
.lib-hero{max-width:1290px;margin:0 auto;padding:176px 75px 112px;display:grid;grid-template-columns:1fr 636px;gap:75px;align-items:end;min-height:667px;box-sizing:border-box}
.lib-hero .crumb{grid-column:1/-1}
.lib-hero h1{font-size:45px;line-height:1.1;margin:0 0 .5em}
.lib-lead{display:grid;grid-template-columns:1fr 1fr;gap:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px;color:#f9f9f9;text-decoration:none;align-items:center}
.lib-lead .rc-art{display:block;aspect-ratio:1.934;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.lib-lead .rc-art img{width:100%;height:100%;object-fit:cover;object-position:top left}
.lib-lead small{display:block;font-family:var(--over);font-size:11.25px;letter-spacing:.12em;text-transform:uppercase;color:#9fb4ff;margin-bottom:8px}
.lib-lead b{display:block;font-size:22.5px;line-height:1.2;margin-bottom:8px}
.lib-lead p{margin:0;color:#ebebeb;font-size:15px;line-height:1.5}
.pg-light.lib{border-radius:56.25px 56.25px 0 0;padding-top:75px}
.lib-cats{max-width:1290px;margin:0 auto 75px;padding:0 75px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.lib-cats b{font-family:var(--over);font-size:11.25px;letter-spacing:.12em;text-transform:uppercase;color:#777;margin-right:8px}
.lib-cats a{border:1px solid #ebebeb;border-radius:999px;padding:8px 16px;font-size:15px;color:#1f1f1f;text-decoration:none}
.lib-cats a:hover{background:#1f1f1f;color:#fff;border-color:#1f1f1f}
.lib-sec{max-width:1290px;margin:0 auto 75px;padding:0 75px}
.lib-sec.dark{background:#1f1f1f;border-radius:24px;padding:56px 75px;max-width:1350px;color:#f9f9f9}
.lib-sec.dark h2,.lib-sec.dark .rc b{color:#f9f9f9}
.lib-sec.dark .rc p,.lib-sec.dark .lib-head p{color:#c9c9c9}
.lib-sec.dark .rc{background:#2a2a2a;border-color:rgba(255,255,255,.08)}
.lib-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:24px}
.lib-head h2{font-size:30px;margin:0}
.lib-head p{margin:0;max-width:46ch;font-size:15px;color:#777}
.lib-sec .rc small{display:block;font-family:var(--over);font-size:11.25px;letter-spacing:.12em;text-transform:uppercase;color:#777;margin:14px 18px 0}
.pg-dark.contact{padding-bottom:112px}
.pg-dark.contact .legal-hero{min-height:0;padding:165px 75px 40px}
.contact-form{width:510px;max-width:calc(100% - 150px);margin:0 auto;background:#fff;border-radius:16px;padding:30px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.contact-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#1f1f1f;font-weight:600}
.contact-form input,.contact-form textarea{font:inherit;font-size:15px;padding:12px 14px;border:1px solid #ebebeb;border-radius:8px;background:#fff;color:#1f1f1f}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #1b4ae2;outline-offset:0;border-color:#1b4ae2}
.contact-form .btn{align-self:flex-start;margin-top:4px}
.contact-form small{color:#777;font-size:12.5px}
.contact-notes{max-width:1290px;margin:75px auto 0;padding:0 75px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.contact-notes b{display:block;color:#f9f9f9;font-size:15px;margin-bottom:6px}
.contact-notes p{margin:0;color:#c9c9c9;font-size:14px;line-height:1.5}
/* v30: library hero order and card grid; legal hero on dark */
.lib-hero{align-items:center}
.lib-hero-copy{text-align:left}
.lib-hero-copy .crumb,.lib-hero-copy .pg-crumb{margin-bottom:20px}
.lib-hero .pg-lede{margin-left:0;text-align:left;max-width:46ch}
.lib-lead-copy{display:block}
.lib-sec .rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lib-sec .rc{display:block;background:#fff;border:1px solid #ebebeb;border-radius:16px;overflow:hidden;text-decoration:none;color:#1f1f1f}
.lib-sec .rc .rc-art{display:block;aspect-ratio:1.934;overflow:hidden;border-bottom:1px solid #ebebeb}
.lib-sec .rc .rc-art img{width:100%;height:100%;object-fit:cover;object-position:top left}
.lib-sec .rc b{display:block;font-size:18.75px;line-height:1.25;margin:8px 18px 6px}
.lib-sec .rc p{margin:0 18px 18px;font-size:15px;line-height:1.5;color:#777}
.pg-dark .legal-hero h1,.pg-dark .legal-hero .pg-lede{color:#f9f9f9}
.pg-dark .legal-hero .pg-lede{color:#ebebeb}
.pg-light .doc-wrap.legal{padding-top:112px}
/* v31: contact depth to the reference; legal prose leading */
.pg-dark.contact{padding-bottom:200px}
.doc-wrap.legal .prose h3{margin-top:1.6em}
.doc-wrap.legal .prose p{margin:.6em 0 0}
/* v32: library lead card - image stays in its column */
.lib-lead{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.lib-lead .rc-art{height:auto;width:100%;min-width:0;aspect-ratio:1.934}
/* v33: reference hero ground (their 1712px gradient asset, in our palette); hero shot at their 844 */
.pg-dark{background:url(/s2/hero-ground.webp) top center/1712px auto no-repeat,#0a0c10}
.pg-dark .pg-shot{max-width:844px;margin-left:auto;margin-right:auto;width:100%}
.frow-copy .overline{font-size:11.25px;letter-spacing:.03em}
/* v33b: hero shot really 844; row Discover link; figures as their white 2x2 divider grid; related as their Recent Resources */
.pg-dark .pg-shot img{max-width:none;width:100%;height:auto;aspect-ratio:844/520;object-fit:cover;object-position:top center}
.pg-dark .pg-shot{padding:0}
.frow-copy .disc{display:inline-block;margin-top:14px;font-size:15px;color:#1f1f1f;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(31,31,31,.35)}
.frow-copy .disc:hover{text-decoration-color:#1b4ae2;color:#1b4ae2}
.pg-band{background:#fff!important;border-radius:0;max-width:1290px;margin:0 auto;padding:75px 75px 56px}
.pg-band h2{text-align:center;font-size:26.25px;margin:0 0 40px}
.pg-band .inner{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:900px;margin:0 auto}
.pg-band .bi{padding:28px 32px;border-bottom:1px solid #ebebeb;text-align:center}
.pg-band .bi:nth-child(odd){border-right:1px solid #ebebeb}
.pg-band .bi:nth-last-child(-n+2){border-bottom:0}
.pg-band .bi b{display:block;font-size:37.5px;font-weight:500;letter-spacing:-.02em;color:#1f1f1f;line-height:1.1}
.pg-band .bi span{display:block;margin-top:8px;font-size:15px;color:#777;max-width:30ch;margin-left:auto;margin-right:auto}
.related{max-width:1290px;padding:75px 75px 0;text-align:center}
.related h2{font-size:26.25px;margin:0 0 30px}
.related .rc-grid{text-align:left}
.related .rc small{display:block;font-family:var(--over);font-size:11.25px;letter-spacing:.08em;text-transform:uppercase;color:#777;margin:14px 18px 4px}
.related .rc b{margin:0 18px 6px;display:block;font-size:18.75px;line-height:1.25}
.related .rc p{margin:0 18px 18px;font-size:15px;color:#777}
.related .rc-art{height:auto;aspect-ratio:1.934}
.related .rc-art img{width:100%;height:100%;object-fit:cover}
.rel-all{margin:36px 0 0}
/* v34: their hero headline measure (630px) and near-square feature panels (523x470) */
.pg-hero h1{max-width:630px;margin-left:auto;margin-right:auto}
.frow-vis .ratio{aspect-ratio:523/470;height:auto}
.frow-vis .ratio.crop img{inset:0;width:100%;height:100%;border:0;border-radius:16px;box-shadow:none;background:none}
.frows .frow{min-height:470px}
/* v35: balanced headline, figures on white, boundary spacing */
.pg-hero h1{text-wrap:balance}
.pg-band .inner{background:none!important;border:0;box-shadow:none;padding:0}
.pg-band{border-radius:0}
/* v36: story scenes (vera, cato), photo-style hero, centred section titles */
.slab-open.center{text-align:center;max-width:900px;margin:0 auto;padding-top:56px}
.slab-open.center h2{margin:0 auto}
.slab-open.center .sec-lede{margin:12px auto 0}
.hero-photo{max-width:1290px;margin:0 auto;padding:150px 75px 90px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;min-height:900px;box-sizing:border-box;text-align:left}
.hero-photo .hp-copy h1{text-align:left;margin-left:0;max-width:600px}
.hero-photo .pg-lede{margin-left:0;text-align:left;max-width:48ch}
.hero-photo .pg-ctas{justify-content:flex-start}
.hero-photo .hp-art{border-radius:24px;overflow:hidden;aspect-ratio:1;background:#0b0f18;border:1px solid rgba(255,255,255,.08)}
.hero-photo .hp-art svg{width:100%;height:100%;display:block}
.hero-photo-wrap .src-strip-dark{display:none}
.story{position:relative;background:#0a0c10;color:#f9f9f9;overflow:hidden}
.story-pin{min-height:100vh;display:grid;grid-template-columns:420px 1fr;gap:75px;align-items:center;max-width:1290px;margin:0 auto;padding:75px;box-sizing:border-box}
.story-copy{position:relative;min-height:320px}
.story-copy .sc{position:absolute;inset:0}
.story-copy .overline{font-family:var(--over);font-size:11.25px;letter-spacing:.1em;text-transform:uppercase;color:#7fa7ff;margin:0 0 14px}
.story-copy h2{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:0 0 16px;color:#f9f9f9;font-weight:500}
.story-copy p:not(.overline){font-size:15px;line-height:1.55;color:#c9d0dc;margin:0;max-width:42ch}
.story-stage{position:relative;height:560px;border-radius:24px;background:radial-gradient(70% 60% at 30% 20%,rgba(27,74,226,.35),transparent 70%),radial-gradient(60% 50% at 90% 90%,rgba(0,179,152,.22),transparent 70%),#0e1320;border:1px solid rgba(255,255,255,.08);overflow:hidden}
.story-stage>*{position:absolute}
.st-card,.st-draft,.st-hold,.st-split,.st-ring{background:#fff;color:#1f1f1f;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.35);font-size:13px}
.st-card{left:44px;top:44px;width:400px}
.st-hd{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid #eef1f7;background:#f4f7fe;border-radius:14px 14px 0 0;font-weight:600;color:#1b2a4a}
.st-hd i{width:14px;height:14px;border-radius:50%;background:#1b4ae2;flex:none}.st-hd small{margin-left:auto;font-weight:500;color:#7a8499}
.st-rows{padding:8px 14px 12px}.st-rows>div{display:grid;grid-template-columns:78px 1fr;gap:8px;padding:6px 0;border-bottom:1px solid #f0f2f7}.st-rows>div:last-child{border:0}.st-rows b{font-weight:500;color:#7a8499}
.st-amber{background:#fff4e0;border-bottom:2px solid #f0b34a;padding:0 3px;border-radius:3px}
.st-fields{display:flex;gap:4px;align-items:center;padding:0 14px 14px}.st-fields i{width:18px;height:6px;border-radius:3px;background:#1b4ae2;display:block}.st-fields span{margin-left:8px;color:#7a8499;font-size:12px}
.st-srcs{right:44px;top:44px;width:250px;display:flex;flex-direction:column;gap:10px}
.st-chip{display:flex;align-items:center;gap:8px;background:#fff;color:#1f1f1f;border-radius:10px;padding:9px 12px;font-size:12.5px;font-weight:500;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.st-chip i{width:8px;height:8px;border-radius:50%;background:#00b398;flex:none}.st-chip small{margin-left:auto;font-family:'IBM Plex Mono',monospace;color:#7a8499;font-size:11px}
.st-draft{left:44px;bottom:44px;width:400px}.st-draft .st-line{margin:0;padding:6px 14px;color:#3d4658;line-height:1.45}.st-draft .st-line:last-child{padding-bottom:14px}
.st-hold{right:44px;bottom:44px;width:250px;padding:16px;display:flex;flex-direction:column;gap:6px}
.st-hold b{font-size:14px}.st-hold small{color:#5b6577;line-height:1.4}.st-hold em{font-style:normal;font-size:12px;color:#1b4ae2;font-weight:600;margin-top:6px}
.st-lock{width:28px;height:28px;border-radius:8px;background:#e9eefc;position:relative;margin-bottom:4px}.st-lock::before{content:"";position:absolute;left:9px;top:5px;width:8px;height:7px;border:2px solid #1b4ae2;border-bottom:0;border-radius:5px 5px 0 0}.st-lock::after{content:"";position:absolute;left:7px;top:12px;width:14px;height:10px;background:#1b4ae2;border-radius:2px}
.st-ring{right:44px;top:44px;width:250px;padding:18px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.st-ring svg{width:110px;height:110px}.st-ring circle{fill:none;stroke:#e4e9f2;stroke-width:3.5}.st-ring .st-arc{stroke:#1b4ae2;stroke-dasharray:97.4;stroke-dashoffset:97.4;stroke-linecap:round;transform:rotate(-90deg);transform-origin:center}
.st-ring b{font-size:30px;font-weight:500;line-height:1}.st-ring b small{font-size:14px;color:#7a8499}.st-ring>span{color:#7a8499;font-size:12px}
.st-ticks{display:flex;gap:4px;margin-top:6px}.st-ticks i{width:12px;height:5px;border-radius:3px;background:#1b4ae2;display:block}
.st-split{left:44px;bottom:44px;width:400px;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.st-split>div{border:1px solid #e8ecf4;border-radius:10px;padding:10px 12px}.st-split>div.st-amber{background:#fff4e0;border-color:#f0b34a}
.st-split small{display:block;color:#7a8499;font-size:11px;margin-bottom:4px}.st-split b{display:block;font-size:13.5px}.st-split span{color:#5b6577;font-size:12px}
.st-split em{grid-column:1/-1;font-style:normal;color:#9a5b00;font-weight:600;font-size:12.5px}
.story-dots{left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:8px}.story-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.25)}.story-dots i.on{background:#7fa7ff}
html:not(.story-on) .story-copy{min-height:0}html:not(.story-on) .story-copy .sc{position:static;margin-bottom:40px}html:not(.story-on) .story-pin{min-height:0}
/* v37: story stage fits its column; photo hero really two columns */
.st-card,.st-draft,.st-split{width:360px;left:32px}.st-card{top:32px}.st-draft,.st-split{bottom:32px}
.st-srcs,.st-ring,.st-hold{width:212px;right:32px}.st-srcs,.st-ring{top:32px}.st-hold{bottom:32px}
.st-ring svg{width:96px;height:96px}
.pg-dark .pg-hero.hero-photo{display:grid!important;grid-template-columns:1fr 1fr;gap:56px;align-items:center;text-align:left;max-width:1290px;padding:150px 75px 90px}
.pg-dark .hero-photo .hp-copy{display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.pg-dark .hero-photo .hp-copy>*{margin-left:0;margin-right:0;text-align:left}
.pg-dark .hero-photo h1{text-align:left;max-width:560px}
.pg-dark .hero-photo .pg-lede{text-align:left;max-width:48ch}
.pg-dark .hero-photo .hp-art{width:100%;max-width:560px;justify-self:end}
/* v38: the hero board fills its panel edge to edge */
.pg-dark .hero-photo .hp-art{aspect-ratio:1;background:#0b0f18}
.pg-dark .hero-photo .hp-art svg{width:100%;height:100%;display:block}
/* v39: their testimonial card for the boundary; no pill above the headline */
.pg-quote.boundary{max-width:900px;margin:0 auto;padding:75px 75px 0;position:relative;text-align:center}
.pg-quote.boundary .qfan{position:absolute;left:0;right:0;top:40px;width:100%;height:300px;z-index:0}
.pg-quote.boundary blockquote{position:relative;z-index:1;margin:0 auto;max-width:640px;background:#fff;border:1px solid #ebebeb;border-radius:16px;padding:44px 48px 28px;font-size:22.5px;line-height:1.35;letter-spacing:-.01em;color:#1f1f1f;font-weight:500}
.pg-quote.boundary .q-attr{position:relative;z-index:1;max-width:640px;margin:0 auto;background:#fff;border:1px solid #ebebeb;border-top:0;border-radius:0 0 16px 16px;margin-top:-16px;padding:20px 48px 24px;display:flex;align-items:center;justify-content:space-between;text-align:left}
.pg-quote.boundary .q-attr b{display:block;font-size:15px;color:#1f1f1f}.pg-quote.boundary .q-attr small{display:block;font-size:13px;color:#777}
.pg-quote.boundary .q-attr img{width:28px;height:28px}
.pg-hero .crumb,.pg-hero .pg-crumb{display:none}
/* v40: their SEE ALL RESOURCES pill */
.rel-all .btn{background:#1f1f1f;color:#fff;border-radius:999px;padding:12px 22px;font-family:var(--over);font-size:11.25px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
/* v41: audience hero art is a product mock */
.pg-dark .hero-photo .hp-art.shot{aspect-ratio:844/520;background:none;border:1px solid #ebebeb;border-radius:5.6px;max-width:none;width:100%;justify-self:stretch}
.pg-dark .hero-photo .hp-art.shot img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.pg-dark .pg-hero.hero-photo{grid-template-columns:1fr 1.15fr}
/* v42: pinned dark hero never exposes a light spacer; shotless hero centres its copy */
.pin-spacer:has(> .pg-dark){background:#0a0c10}
.pg-dark.no-shot{min-height:100vh}
.pg-dark.no-shot .ph1{display:flex;align-items:center;justify-content:center;min-height:100vh}
.pg-dark.no-shot .pg-hero{padding-top:0;padding-bottom:0}
/* v43: their glowing icon above the company headline */
.pg-dark.no-shot .pg-hero::before{content:"";display:block;width:132px;height:132px;margin:0 auto 34px;border-radius:50%;background:url(/s2/veritura-mark-big.png) center/54% no-repeat,radial-gradient(circle at 50% 45%,rgba(0,179,152,.55),rgba(27,74,226,.35) 55%,rgba(10,12,16,0) 72%);box-shadow:0 0 90px rgba(0,179,152,.25),inset 0 0 0 1px rgba(255,255,255,.08)}
/* v44: hero grounds with presence, per family; slow drift like their video heroes */
.pg-dark{background:url(/s2/hero-ground-blue.webp) top center/1712px auto no-repeat,#0a0c10;animation:hero-drift 18s ease-in-out infinite alternate}
.fam-platform .pg-dark{background-image:url(/s2/hero-ground-teal.webp)}
.fam-solutions .pg-dark{background-image:url(/s2/hero-ground-mint.webp)}
.fam-vera .pg-dark,.fam-cato .pg-dark,.fam-intelligence .pg-dark{background-image:url(/s2/hero-ground-violet.webp)}
@keyframes hero-drift{from{background-position:calc(50% - 40px) -20px}to{background-position:calc(50% + 40px) 10px}}
@media (prefers-reduced-motion:reduce){.pg-dark{animation:none}}
/* v44: the deck as slides. Each step is a page: it arrives from below and the last one leaves above. */
html.deck-on .fstep{position:absolute;inset:0;display:flex;align-items:center;opacity:1;pointer-events:none;will-change:transform}
html.deck-on .fstep.act{pointer-events:auto}
html.deck-on .fdeck{height:100vh;overflow:hidden;background:#f9f9f9}
/* v45: less dead space between sections */
.pg-light{padding-top:0}
.slab-open{padding-top:48px;padding-bottom:0}
.slab-open.center{padding-top:56px}
.bnblock{margin-top:56px;min-height:0;padding:56px 0}
.pg-band{padding:56px 75px 40px;min-height:0}
.pg-quote.boundary{padding-top:40px}
.pg-faq{min-height:0;margin-top:56px}
.related{padding-top:56px;min-height:0}
/* v46: the light section slides over the pinned intro; steps stacked; 3D for the flip */
.pg-dark{position:relative;z-index:1}
.pg-light{position:relative;z-index:2}
html.deck-on .fstep{position:absolute;inset:0;display:flex;align-items:center;pointer-events:none}
html.deck-on .fstep.act{pointer-events:auto}
html.deck-on .fstep .frow-vis{perspective:1200px}
html.deck-on .fstep .frow-vis .ratio{transform-style:preserve-3d;will-change:transform,opacity}
html.deck-on .fstep .frow-copy>*{will-change:transform,opacity,filter}
/* v47: the hero is exactly one viewport, the shot breaks the fold (reference) */
html.swap-on .pg-dark.has-swap{height:100vh;min-height:0;overflow:hidden;padding-bottom:0}
html.swap-on .pg-dark.has-swap .ph1{height:100vh}
html.swap-on .pg-dark.has-swap .pg-shot{margin-top:36px}
.hero-pin{position:relative;z-index:1}
/* v48: the second message is always laid out; its lines own their own opacity */
html.swap-on .pg-dark.has-swap .ph2{opacity:1!important;visibility:visible!important;pointer-events:none;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform:none!important}
html.swap-on .pg-dark.has-swap .ph2 .intro-split{max-width:1290px;padding:0 75px;width:100%}
/* v49: the complete text, collapsed */
.detail{max-width:900px;margin:75px auto 0;padding:0 75px}
.dt-head h2{font-size:26.25px;margin:0 0 6px;text-align:center}.dt-head p{margin:0 0 28px;text-align:center;color:#777;font-size:15px}
.dt-item{border-top:1px solid #ebebeb}.dt-item:last-child{border-bottom:1px solid #ebebeb}
.dt-item summary{cursor:pointer;list-style:none;padding:16px 36px 16px 0;font-size:16px;font-weight:500;color:#1f1f1f;position:relative}
.dt-item summary::-webkit-details-marker{display:none}
.dt-item summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:20px;color:#777;font-weight:400}
.dt-item[open] summary::after{content:"–"}
.dt-body{padding:0 0 18px;color:#777;font-size:15px;line-height:1.6}
.dt-body h4{margin:14px 0 4px;font-size:15px;color:#1f1f1f;font-weight:600}.dt-body p{margin:6px 0}.dt-body ul{margin:6px 0;padding-left:20px}.dt-body b{color:#1f1f1f;font-weight:600}
/* v50: living story stage; narrow-window layouts for the pinned mechanics */
.story-stage{height:600px;background:radial-gradient(70% 60% at 30% 20%,rgba(27,74,226,.32),transparent 70%),radial-gradient(60% 50% at 90% 90%,rgba(0,179,152,.2),transparent 70%),linear-gradient(180deg,#0f1524,#0b1019);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 40px 80px rgba(0,0,0,.45)}
.st-bar{position:absolute;left:0;right:0;top:0;height:44px;display:flex;align-items:center;gap:14px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.08);font-size:12.5px;color:#c9d0dc;background:rgba(255,255,255,.03)}
.st-clock{font-family:'IBM Plex Mono',monospace;font-size:14px;color:#f9f9f9;letter-spacing:.04em}.st-title{font-weight:500}
.st-live{margin-left:auto;display:flex;align-items:center;gap:7px;color:#7fe0c8}.st-live i{width:8px;height:8px;border-radius:50%;background:#00b398;box-shadow:0 0 12px #00b398}
.st-doc{position:absolute;left:28px;top:64px;width:372px;background:#fff;color:#1f1f1f;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.4);font-size:13px;overflow:hidden}
.st-doc .st-rows>div.st-gap{border-radius:6px;padding:6px 6px;margin:0 -6px}.st-gap em{font-style:normal;color:#9a5b00;font-size:11.5px;margin-left:6px}
.st-scan{position:absolute;left:0;right:0;top:12%;height:34px;background:linear-gradient(180deg,rgba(27,74,226,0),rgba(27,74,226,.22),rgba(27,74,226,0));border-top:1px solid rgba(27,74,226,.5);opacity:0;pointer-events:none}
.st-fields{display:flex;flex-wrap:wrap;gap:5px;align-items:center;padding:4px 14px 14px}.st-fields i{width:22px;height:7px;border-radius:4px;background:#1b4ae2;display:block}.st-fields span{margin-left:auto;color:#7a8499;font-size:12px}
.st-srcs{right:28px;top:64px;width:214px}.st-draft{left:28px;bottom:28px;width:372px}.st-draft .st-pill{display:inline-block;margin:6px 14px 14px;background:#e9eefc;color:#1b4ae2;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}
.st-hold{right:28px;bottom:28px;width:214px}.st-sign{width:100%;height:36px;display:block;margin:6px 0 2px}
.st-ring{right:28px;top:64px;width:214px}.st-split{left:28px;bottom:28px;width:372px}
.st-walk{padding:6px 14px 12px;position:relative}.st-dom{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border-radius:6px;font-size:12.5px;height:30px;box-sizing:border-box}
.st-dom small{color:#7a8499;font-family:'IBM Plex Mono',monospace;font-size:10.5px}.st-dom.req{background:#e9eefc}.st-dom.req small{color:#1b4ae2}.st-dom.done small{color:#0a7a5a}.st-dom.done{background:#f3fbf7}
.st-cursor{position:absolute;left:8px;top:6px;width:3px;height:30px;border-radius:2px;background:#1b4ae2;opacity:.9}
@media (max-width:1100px){
  .story-pin{grid-template-columns:1fr;gap:28px;padding:56px 36px;align-items:start}
  .story-copy{min-height:200px}.story-copy h2{font-size:24px}
  .story-stage{height:540px}.st-doc,.st-draft,.st-split{width:60%;left:16px}.st-srcs,.st-hold,.st-ring{width:34%;right:16px}
  html.deck-on .fstep .frow{flex-direction:column;gap:20px;padding:0 36px}
  html.deck-on .fstep .frow-copy{max-width:none}html.deck-on .fstep .frow-copy h2{font-size:22px}html.deck-on .fstep .frow-copy p{font-size:14px}
  html.deck-on .fstep .frow-vis{max-width:420px;width:100%}
  html.swap-on .pg-dark.has-swap .pg-hero h1{font-size:30px}
  .hero-photo{grid-template-columns:1fr;gap:24px;padding:110px 36px 56px;min-height:0}
}
/* v51: narrow story copy clears the fixed nav */
@media (max-width:1100px){.story-pin{padding-top:96px}html.deck-on .fstep .frow{padding-top:70px}}
/* v52: contact form section on landing pages */
.cform{max-width:1290px;margin:75px auto 0;padding:0 75px;display:grid;grid-template-columns:1fr 510px;gap:56px;align-items:start}
.cform-copy h2{font-size:26.25px;margin:0 0 10px}.cform-copy p{color:#777;font-size:15px;margin:0 0 16px;max-width:48ch}
.cform-copy ul{margin:0;padding-left:18px;color:#1f1f1f;font-size:15px;line-height:1.7}
.contact-form.light{width:auto;max-width:none;margin:0;box-shadow:0 20px 50px rgba(20,40,90,.10);border:1px solid #ebebeb}
@media (max-width:1100px){.cform{grid-template-columns:1fr;padding:0 36px}}
/* v53: the second paragraph of a row */
.frow-copy .row2{margin-top:10px;color:#1f1f1f;font-size:15px;line-height:1.55}
.frow-copy>p:not(.overline){margin-bottom:0}
/* v54: a deck step fits a short, narrow window */
@media (max-width:1100px){
  html.deck-on .fstep .frow{align-items:flex-start;padding-top:84px;gap:14px}
  html.deck-on .fstep .frow-vis{max-width:300px}
  html.deck-on .fstep .frow-copy p:not(.overline){font-size:13.5px;line-height:1.45}
  html.deck-on .fstep .frow-copy ul{margin:8px 0 0}html.deck-on .fstep .frow-copy li{font-size:13px}
}
@media (max-width:1100px) and (max-height:800px){html.deck-on .fstep .frow-copy .row2{display:none}html.deck-on .fstep .frow-vis{max-width:260px}}
/* v55: article layout for long-form pages */
.art-hero{min-height:560px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:150px 75px 75px;box-sizing:border-box}
.art-hero h1{font-size:45px;line-height:1.1;max-width:20ch}
.art-hero .pg-lede{max-width:60ch}
.art-meta{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:28px}
.art-meta span{display:flex;flex-direction:column;gap:2px;padding:10px 16px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.04);min-width:140px;text-align:left}
.art-meta small{font-family:var(--over);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#9fb4ff}.art-meta b{font-size:14px;color:#f9f9f9;font-weight:500}
.pg-light.art{border-radius:56.25px 56.25px 0 0;padding-top:75px}
.art-wrap{max-width:1290px;margin:0 auto;padding:0 75px 75px;display:grid;grid-template-columns:280px 1fr;gap:75px;align-items:start}
.art-side{position:sticky;top:105px}
.art-toc b{display:block;font-family:var(--over);font-size:11.25px;letter-spacing:.1em;text-transform:uppercase;color:#777;margin-bottom:12px}
.art-toc a{display:block;padding:8px 0 8px 14px;border-left:2px solid #ebebeb;color:#1f1f1f;font-size:14px;line-height:1.3;text-decoration:none}.art-toc a:hover{border-left-color:#1b4ae2;color:#1b4ae2}
.art-cta{margin-top:28px;padding:20px;border:1px solid #ebebeb;border-radius:16px;background:#fff}.art-cta b{display:block;font-size:15px;margin-bottom:6px}.art-cta p{margin:0 0 14px;color:#777;font-size:13.5px;line-height:1.5}
.art-body{max-width:760px;min-width:0}
.art-sec{padding:0 0 56px;border-bottom:1px solid #ebebeb;margin-bottom:56px}.art-sec:last-child{border-bottom:0}
.art-sec .overline{font-family:var(--over);font-size:11.25px;letter-spacing:.1em;text-transform:uppercase;color:#1b4ae2;margin:0 0 10px}
.art-sec h2{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:0 0 16px}
.art-sec h3{font-size:18.75px;margin:28px 0 8px;line-height:1.3}
.art-sec p{font-size:15px;line-height:1.65;color:#555;margin:0 0 14px;max-width:66ch}
.art-sec ul{margin:0 0 16px;padding-left:20px;color:#555;font-size:15px;line-height:1.6}
.art-sec blockquote{margin:24px 0;padding:20px 24px;border-left:3px solid #1b4ae2;background:#f4f7fe;border-radius:0 12px 12px 0;font-size:16px;color:#1f1f1f}
.art-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 24px}
.art-card{background:#fff;border:1px solid #ebebeb;border-radius:16px;padding:20px 22px}.art-card span{display:inline-block;font-family:var(--over);font-size:11.25px;letter-spacing:.1em;color:#1b4ae2;margin-bottom:8px}
.art-card h3{margin:0 0 8px;font-size:16px}.art-card p{font-size:14px;margin:0 0 6px;color:#555}
.art-def{margin:8px 0 24px;border:1px solid #ebebeb;border-radius:16px;overflow:hidden;background:#fff}
.art-def>div{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:12px 18px;border-top:1px solid #f0f0f0}.art-def>div:first-child{border-top:0}
.art-def dt{font-size:13.5px;font-weight:600;color:#1f1f1f}.art-def dd{margin:0;font-size:14px;color:#555;line-height:1.5}
.art-fig{margin:0 0 56px;padding:0}.art-fig img{width:100%;border-radius:16px;display:block;border:1px solid #ebebeb;max-height:420px;object-fit:cover;object-position:center}
.art-fig figcaption{margin-top:10px;font-size:12.5px;color:#777;text-align:center}
@media (max-width:1100px){.art-wrap{grid-template-columns:1fr;padding:0 36px 56px}.art-side{position:static}.art-cards{grid-template-columns:1fr}.art-def>div{grid-template-columns:1fr}}
/* v56: outcomes and method strip */
.outcomes{max-width:82rem;margin:6rem auto 0;padding:0 3rem}
.oc-head{max-width:40rem;margin-bottom:2rem}
.oc-head .overline{font-family:var(--over);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fam,#1b4ae2);margin:0 0 .7rem}
.oc-head h2{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.14;letter-spacing:-.015em;margin:0;color:var(--ink-l)}
.oc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.oc{background:var(--tint,#eef2fd);border:1px solid rgba(19,19,19,.05);border-radius:.9rem;padding:1.6rem 1.5rem 1.5rem}
.oc span{display:inline-block;font-family:var(--over);font-size:.72rem;letter-spacing:.1em;color:var(--fam,#1b4ae2);margin-bottom:.8rem}
.oc b{display:block;font-size:1.08rem;line-height:1.3;margin-bottom:.55rem;font-weight:550;color:var(--ink-l)}
.oc p{margin:0;font-size:.92rem;line-height:1.55;color:var(--mut-deep)}
.mstrip{max-width:1290px;margin:75px auto 0;padding:0 75px}.mstrip .overline{font-family:var(--over);font-size:11.25px;letter-spacing:.1em;text-transform:uppercase;color:#1b4ae2;margin:0 0 18px}
.msteps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb}
.ms{padding:22px 20px 24px;border-left:1px solid #ebebeb;position:relative}.ms:first-child{border-left:0}.ms i{display:block;width:10px;height:10px;border-radius:50%;background:#1b4ae2;margin-bottom:14px}
.ms b{display:block;font-size:15px;margin-bottom:6px;font-weight:600}.ms p{margin:0;font-size:13.5px;line-height:1.5;color:#777}
@media (max-width:1100px){.outcomes,.mstrip{padding:0 36px}.oc-grid{grid-template-columns:1fr}.msteps{grid-template-columns:1fr}.ms{border-left:0;border-top:1px solid #ebebeb}}
/* v57: why this exists */
.why{max-width:82rem;margin:6rem auto 0;padding:0 3rem}
.why-head{max-width:46rem;margin-bottom:2rem}
.why-head .overline{font-family:var(--over);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fam,#1b4ae2);margin:0 0 .7rem}
.why-head h2{font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.14;letter-spacing:-.015em;margin:0 0 .85rem;color:var(--ink-l)}
.why-head p{font-size:1rem;line-height:1.55;color:var(--mut-deep);margin:0;max-width:40rem}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.why-card{background:#fff;color:var(--ink-l);border-radius:.9rem;padding:1.6rem 1.5rem 1.5rem;border:1px solid rgba(19,19,19,.07);box-shadow:0 1px 0 rgba(24,32,44,.04)}
.why-card span{display:inline-block;font-family:var(--over);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fam,#1b4ae2);margin-bottom:.8rem}
.why-card b{display:block;font-size:1.08rem;line-height:1.3;margin-bottom:.55rem;font-weight:550;color:var(--ink-l)}
.why-card p{margin:0;font-size:.92rem;line-height:1.55;color:var(--mut-deep)}
@media (max-width:1100px){.why{padding:0 36px}.why-grid{grid-template-columns:1fr}}
/* v57b: form done state */
.cf-done{padding:24px 6px}.cf-done b{display:block;font-size:18px;margin-bottom:8px}.cf-done p{margin:0;color:#777;font-size:14px;line-height:1.5}

/* v57c: 404 */
.pg-dark.nf{min-height:100vh;display:flex;align-items:center;justify-content:center}
.nf-hero{text-align:center;max-width:640px;padding:0 36px}
.nf-code{font-family:var(--over);font-size:11.25px;letter-spacing:.2em;color:#7fa7ff;margin:0 0 18px}
.nf-hero h1{font-size:37.5px;line-height:1.1;margin:0 0 14px;text-wrap:balance}
.nf-hero .pg-lede{max-width:52ch;margin:0 auto}
.nf-doors{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:28px 0 22px}
.nf-doors a{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:10px 18px;color:#f9f9f9;text-decoration:none;font-size:14px}.nf-doors a:hover{background:#fff;color:#0a0c10}
.nf-small{font-size:13px;color:#9aa4b8;margin:0}.nf-small a{color:#c9d0dc}
/* v57d: mobile, below 700px the pinned mechanics are off and these are the static layouts */
@media (max-width:699px){
  .pg-hero{padding:110px 22px 40px}.pg-hero h1{font-size:30px}.pg-lede{font-size:15px}
  .pg-dark .pg-shot{padding:0 16px;margin-top:24px}
  .hero-photo{grid-template-columns:1fr;padding:100px 22px 40px;min-height:0}.pg-dark .hero-photo .hp-art{max-width:100%}
  .slab-open,.slab-open.center{padding:40px 22px 0}.slab-open h2,.frow-copy h2{font-size:24px}
  .fdeck,.frows{padding:0}.fstep{margin:0 0 40px}.frow,.frow.flip{display:flex;flex-direction:column;gap:18px;padding:0 22px}.frow-vis{width:100%;max-width:none}
  .story-pin{grid-template-columns:1fr;padding:56px 22px;gap:22px}.story-stage{height:420px;border-radius:16px}
  .st-doc,.st-draft,.st-split{width:calc(100% - 32px);left:16px}.st-srcs,.st-hold,.st-ring{display:none}
  .why,.outcomes,.mstrip,.detail,.cform,.related,.pg-band,.pg-faq,.pg-quote.boundary,.bnblock{padding-left:22px;padding-right:22px;margin-top:48px}
  .why-grid,.oc-grid,.rc-grid,.msteps{grid-template-columns:1fr}.ms{border-left:0;border-top:1px solid #ebebeb}
  .bnblock{grid-template-columns:1fr;gap:20px}.pg-band .inner{grid-template-columns:1fr}.pg-band .bi:nth-child(odd){border-right:0}
  .cform{grid-template-columns:1fr}.contact-form{width:auto;max-width:none}
  .art-hero{min-height:0;padding:110px 22px 40px}.art-hero h1{font-size:30px}.art-wrap{grid-template-columns:1fr;padding:0 22px 40px}.art-side{position:static}.art-cards{grid-template-columns:1fr}.art-def>div{grid-template-columns:1fr}
  .legal-hero{min-height:0;padding:110px 22px 40px}.legal-hero h1{font-size:30px}.doc-wrap.legal{padding:40px 22px;max-width:none}
  .lib-hero{grid-template-columns:1fr;padding:100px 22px 40px;min-height:0}.lib-cats,.lib-sec{padding-left:22px;padding-right:22px}.lib-sec.dark{padding:32px 22px;border-radius:16px}
  .contact-form{max-width:none;width:auto;margin:0 22px}.contact-notes{grid-template-columns:1fr;padding:0 22px}
  .callout{margin:0 16px}
}
/* v57e: article step lists; deck head */
.art-steps{margin:8px 0 24px;border:1px solid #ebebeb;border-radius:16px;background:#fff;overflow:hidden}
.art-step{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px 20px;border-top:1px solid #f0f0f0}.art-step:first-child{border-top:0}
.art-step span{font-family:var(--over);font-size:11.25px;letter-spacing:.1em;color:#1b4ae2;padding-top:4px}
.art-step h3{margin:0 0 6px;font-size:16px}.art-step p{margin:0 0 6px;font-size:14px;color:#555;max-width:none}
html.deck-on .fdeck-head{position:absolute;left:0;right:0;top:34px;z-index:3;padding:0 75px;max-width:1290px;margin:0 auto;text-align:left}
html.deck-on .fdeck-head.center{text-align:center}
html.deck-on .fdeck-head h2{font-size:22.5px;margin:0 0 4px}html.deck-on .fdeck-head .sec-lede{font-size:14px;margin:0;color:#777}
html.deck-on .fstep .frow{padding-top:120px}
html:not(.deck-on) .fdeck-head{padding:40px 75px 0;max-width:1290px;margin:0 auto}
@media (max-width:1100px){html.deck-on .fdeck-head{padding:0 36px;top:76px}html.deck-on .fstep .frow{padding-top:150px}}
/* v57f: deck head clears the fixed nav */
html.deck-on .fdeck-head{top:104px}
html.deck-on .fstep .frow{padding-top:150px}
@media (max-width:1100px){html.deck-on .fdeck-head{top:92px}}

.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:699px){.cf-row{grid-template-columns:1fr}}

/* ===== named section anchors ==================================================
   A zero-height marker injected before the block a cross-page link names, so
   /trust-center#limitations lands on the section instead of the page top. The
   offset clears the fixed nav. */
.anch{position:absolute;height:0;width:0;overflow:hidden;scroll-margin-top:118px}  /* absolute with no offsets: keeps its static position, claims no grid or flex cell */
.anch,.art-sec[id],.art-step,.lib-sec[id],.prose h2[id],.doc-wrap h2[id]{scroll-margin-top:118px}

/* ===== /resources at tablet width ===========================================
   The library hero pinned a hard 636px second column and only collapsed at
   699px, so the page scrolled sideways on every viewport between 700px and
   about 940px. Let both tracks shrink, and step the card grids down before
   the phone breakpoint instead of jumping three-up straight to one. */
.lib-hero{grid-template-columns:minmax(0,1fr) minmax(0,636px)}
@media (max-width:1000px){
  .lib-hero{grid-template-columns:minmax(0,1fr);gap:40px;padding:150px 40px 64px;min-height:0}
  .lib-cats,.lib-sec{padding-left:40px;padding-right:40px}
  .lib-sec.dark{padding:48px 40px;max-width:none}
  .lib-sec .rc-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:699px){
  .lib-sec .rc-grid{grid-template-columns:minmax(0,1fr)}
  .lib-lead{grid-template-columns:minmax(0,1fr)}
}

/* ===== phone pass (2026-09-06) ==================================================
   The phone heading sizes at line ~851 lose to `.pg-dark .pg-hero h1` and the
   library padding loses to the tablet block after it. Appended last, same
   specificity or higher, phone widths only. */
@media (max-width:699px){
  .pg-dark .pg-hero h1,.pg-hero h1,.art-hero h1,.legal-hero h1{font-size:30px;line-height:1.15}
  .lib-hero h1{font-size:32px}
  .lib-cats,.lib-sec{padding-left:22px;padding-right:22px}
  .lib-sec.dark{padding:32px 22px}
  .disc{min-height:40px}
  .pg-ctas .pill-line,.pill-line{font-size:13px}
  .dt-body li a,.dt-body h4 a{display:inline-block;padding:6px 0}
}
/* pack frame: the artwork carries its own card and shadow on a transparent field; the tint shows around it */
.frow-vis .ratio.pack{background:var(--tint,#eef2fd)}
.frow-vis .ratio.pack::before{display:none}
.frow-vis .ratio.pack img{position:absolute;inset:1.4rem;width:calc(100% - 2.8rem);height:calc(100% - 2.8rem);object-fit:contain;object-position:center;border-radius:0;filter:drop-shadow(0 22px 38px rgba(24,32,44,.16))}
.frow-vis .ratio.pack.photo img{border-radius:.8rem}

/* v66: contact page. Two columns on the dark page: the session on the left, the form on the right. */
.pg-dark.contact .legal-hero.contact-hero{min-height:0;padding:150px 75px 56px}
.pg-dark.contact .legal-hero.contact-hero h1{max-width:20ch}
.contact-grid{max-width:1290px;margin:0 auto;padding:0 75px;display:grid;grid-template-columns:1fr 560px;gap:75px;align-items:start}
.contact-aside{padding-top:8px}
.ca-step{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:22px 0;border-top:1px solid rgba(255,255,255,.12)}
.ca-step:last-of-type{border-bottom:1px solid rgba(255,255,255,.12)}
.ca-step span{font-family:var(--over);font-size:.72rem;font-weight:600;letter-spacing:.14em;color:#9fb4ff;padding-top:5px}
.ca-step b{display:block;color:#f9f9f9;font-size:17px;margin-bottom:6px}
.ca-step p{margin:0;color:#c9c9c9;font-size:14.5px;line-height:1.55;max-width:46ch}
.ca-direct{margin-top:28px}.ca-direct b{display:block;color:#f9f9f9;font-size:15px;margin-bottom:6px}.ca-direct p{margin:0;color:#c9c9c9;font-size:14px;line-height:1.6;max-width:46ch}.ca-direct a{color:#f9f9f9;text-decoration:underline;text-underline-offset:2px}
.contact-form.cf2{width:auto;max-width:none;margin:0;padding:32px;gap:14px;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cf-head{padding-bottom:14px;border-bottom:1px solid #ebebeb;margin-bottom:4px}.cf-head b{display:block;font-size:20px;color:#1f1f1f;letter-spacing:-.01em}.cf-head p{margin:4px 0 0;color:#777;font-size:14px}
.contact-form.cf2 label{font-size:12.5px;color:#555;font-weight:600}
.contact-form.cf2 input,.contact-form.cf2 textarea,.contact-form.cf2 select{font:inherit;font-size:15px;padding:12px 14px;border:1px solid #e3e3e3;border-radius:8px;background:#fafafa;color:#1f1f1f;width:100%;box-sizing:border-box;transition:background .15s,border-color .15s}
.contact-form.cf2 input::placeholder,.contact-form.cf2 textarea::placeholder{color:#a3a3a3}
.contact-form.cf2 select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23555' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}
.contact-form.cf2 select:invalid,.contact-form.cf2 select option[value=""]{color:#a3a3a3}
.contact-form.cf2 input:focus,.contact-form.cf2 textarea:focus,.contact-form.cf2 select:focus{background:#fff;border-color:#1b4ae2;outline:2px solid #1b4ae2;outline-offset:0}
.contact-form.cf2 textarea{resize:vertical;min-height:104px}
.contact-form.cf2 .btn{align-self:stretch;min-height:46px;font-size:15px;font-weight:600;margin-top:4px;border-radius:10px}
.contact-form.cf2 small{color:#777;font-size:12.5px;line-height:1.5}
.contact-form.cf2 .cf-done{padding:12px 4px 4px}.contact-form.cf2 .cf-done b{font-size:22px;letter-spacing:-.01em;color:#1f1f1f}.contact-form.cf2 .cf-done p{font-size:14.5px;color:#555;margin-top:8px}.contact-form.cf2 .cf-done a{color:#1b4ae2;text-decoration:underline;text-underline-offset:2px}
.pg-dark.contact .contact-notes{margin-top:96px}
@media (max-width:1000px){.contact-grid{grid-template-columns:1fr;gap:40px}.contact-form.cf2{order:-1}}
@media (max-width:699px){.pg-dark.contact .legal-hero.contact-hero{padding:120px 22px 32px}.contact-grid{padding:0 22px}.contact-form.cf2{padding:22px}.ca-step{grid-template-columns:36px 1fr}}
