
/* ── v2 (2 Oct 2026) ───────────────────────────────────────────── */
body.v2 h1{font-size:clamp(36px,4.6vw,60px);line-height:1.04}
@media(min-width:641px){body.v2 .nav a.link{display:inline-flex;align-items:center;min-height:44px}}
.ph{display:inline-block;padding:2px 8px;border-radius:8px;background:#FFF4D6;color:#6B4E00;font:600 .82em Inter,Arial,sans-serif;letter-spacing:0;vertical-align:baseline}
:focus-visible{outline:3px solid var(--accent2);outline-offset:3px}
.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}
/* hero profile panel */
.prof{border-radius:32px;padding:32px;background:rgba(8,18,32,.55);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:0 0 0 1px rgba(255,255,255,.14),0 40px 90px rgba(0,0,0,.35);color:#fff}
.prof .pn{font:800 15px Inter,Arial,sans-serif;color:var(--accent2)}
.prof .big{font:800 clamp(26px,2.6vw,34px)/1.1 var(--hf),Arial,sans-serif;letter-spacing:-.02em;margin:10px 0 14px;color:#fff}
.prof p{color:rgba(255,255,255,.82);font-size:15.5px;line-height:1.55}.prof p+p{margin-top:10px}
.prof ul{list-style:none;margin:22px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.14);display:grid;gap:12px}
.prof li{display:flex;align-items:center;gap:12px;font-weight:700;font-size:15.5px}.prof li svg{color:var(--accent2);flex:none}
.prof.why ul.rows{display:grid;gap:14px;margin:20px 0 0;padding:0;border:0}
.prof.why li{align-items:flex-start;gap:14px;font-weight:400}.prof.why li i{flex:none;width:44px;height:44px;border-radius:50%;background:var(--accent2);color:#0b1830;display:grid;place-items:center}
.prof.why li i svg{color:#0b1830}.prof.why li b{display:block;font-weight:800;font-size:16px;color:#fff}.prof.why li span{display:block;font-size:14.5px;color:rgba(255,255,255,.78);line-height:1.4}
.prof.why .tags{margin:20px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.18);font-weight:700;font-size:13.5px;color:rgba(255,255,255,.9)}

/* facts strip */
.fs b.lead{font-size:clamp(32px,3.6vw,56px);color:var(--accent);white-space:nowrap}
.fs b.place{font-size:clamp(20px,1.9vw,24px);line-height:1.2;letter-spacing:-.01em}
/* problem */
.prob{max-width:820px}
.beats{margin:40px 0 0;display:grid;gap:6px;font:700 clamp(20px,2.2vw,26px)/1.35 var(--hf),Arial,sans-serif;color:var(--ink);letter-spacing:-.01em}
.beats .q{color:var(--muted);font-weight:600}
.prose{margin-top:36px;display:grid;gap:18px;max-width:680px;font-size:18px;line-height:1.65;color:var(--ink2)}
.prose strong{color:var(--ink)}
.lead-in{margin-top:44px;font:800 clamp(22px,2.6vw,32px)/1.25 var(--hf),Arial,sans-serif;color:var(--ink);letter-spacing:-.02em;max-width:760px}
.lead-in a{display:inline-flex;align-items:center;gap:10px;margin-top:18px;font:700 16px Inter,Arial,sans-serif;color:var(--accent)}
/* quiz labels + results */
.qform label{display:grid;gap:6px}.qform label span{font-size:14px;font-weight:600;color:var(--ink2)}
.qerr{min-height:0;color:#B42318;font-weight:600;font-size:15px}.qerr:empty{display:none}
.qhint a{color:var(--accent);text-decoration:underline}
.qq{outline:none}
.rcards{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:12px}
.qresult .rcard{border-radius:20px;padding:20px;border:1px solid var(--line);background:color-mix(in srgb,var(--accent) 5%,var(--card))}
.rlab{font-size:13px;font-weight:700;color:var(--muted)}.rtold{margin:4px 0 14px;color:var(--ink);font-weight:600}
.rcard h4{font:800 19px/1.25 var(--hf),Arial,sans-serif;margin:4px 0 6px;color:var(--ink)}.rcard p:last-child{color:var(--ink2);font-size:15.5px}
.rsent{margin-top:16px;border-radius:16px;padding:14px 16px;background:color-mix(in srgb,#16A34A 10%,transparent);font-weight:600;font-size:15px}
.rsent.fail{background:color-mix(in srgb,#B42318 10%,transparent)}
.rgets{margin-top:22px}.rgets h4,.rtalk{font:800 19px var(--hf),Arial,sans-serif;color:var(--ink);margin:0 0 10px}
.rgets ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.rgets li{display:flex;gap:10px;color:var(--ink2);font-size:15.5px}
.rgets li::before{content:"";flex:none;width:8px;height:8px;margin-top:9px;border-radius:50%;background:var(--accent)}
.rtalk{margin-top:24px}
.qresult{outline:none}
/* account team */
.team{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:center}
.knows{list-style:none;margin:24px 0;padding:0;display:grid;gap:8px}.knows li{display:flex;gap:12px;align-items:center;font-weight:700;color:var(--ink);font-size:18px}
.knows svg{color:var(--accent);flex:none}
.team h2 .hl{color:var(--accent);display:block}
.hero.photo h1 .hl{color:var(--accent2)}
.knows.tick li{font-size:17px}.knows.tick svg{width:22px;height:22px;padding:4px;border-radius:50%;background:var(--accent);color:#fff;stroke-width:3}
.teamnote{display:flex;gap:18px;align-items:center;margin-top:26px;padding:18px 22px;border-radius:18px;background:color-mix(in srgb,var(--accent) 9%,transparent)}
.teamnote .tn-ic{flex:none;width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);display:grid;place-items:center}
.teamnote p{margin:0;font-size:17px;line-height:1.45;color:var(--accent)}.teamnote strong{color:var(--ink)}

.rel{display:grid;justify-items:center;gap:0}
.node{width:100%;max-width:380px;border-radius:24px;padding:20px 22px;background:var(--card);border:1px solid var(--line);box-shadow:0 20px 50px rgba(10,22,40,.06);display:flex;gap:14px;align-items:center}
.node .nic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);flex:none}
.node b{display:block;font:800 17px var(--hf),Arial,sans-serif;color:var(--ink)}.node span{display:block;font-size:14px;color:var(--muted)}
.node.mid{background:var(--dark);border-color:var(--dark)}.node.mid b{color:#fff}.node.mid span{color:rgba(255,255,255,.72)}.node.mid .nic{background:rgba(255,255,255,.1);color:var(--accent2)}
.conn{width:2px;height:34px;background:color-mix(in srgb,var(--accent) 40%,transparent);position:relative}
.conn::before,.conn::after{content:"";position:absolute;left:-4px;width:10px;height:10px;border-radius:50%;background:var(--accent)}.conn::before{top:-5px}.conn::after{bottom:-5px}
.round{margin-top:18px;display:flex;gap:28px;justify-content:center;font:800 22px var(--hf),Arial,sans-serif;color:var(--ink)}.round small{display:block;font:500 13px Inter,Arial,sans-serif;color:var(--muted)}
/* promises */
body.v2 .statband b{font-size:clamp(30px,3.2vw,44px)}
.statband .ph{display:inline-block;margin-top:0;color:#6B4E00;font-size:15px}
.statband b.sm{font-size:clamp(24px,2.4vw,30px);line-height:1.15}
.statband small{display:block;margin-top:4px;color:rgba(255,255,255,.55);font-size:13px}
/* services */
.svc{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.svc .lead{position:sticky;top:110px}
.svc-list{display:grid;gap:0}
.svc-item{border-bottom:1px solid var(--line)}.svc-item:first-child{border-top:1px solid var(--line)}
.svc-item summary{list-style:none;cursor:pointer;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}
.svc-item summary::-webkit-details-marker{display:none}.svc-item summary::after{content:"+";font-size:26px;color:var(--accent);font-weight:500;flex:none}
.svc-item[open] summary::after{content:"\2212"}
.svc-item h3{display:flex;gap:12px;align-items:center;font-size:19px}.svc-item h3 svg{color:var(--accent);flex:none}
.sv-t small{display:block;margin-top:3px;font:500 15px/1.4 Inter,Arial,sans-serif;color:var(--muted);letter-spacing:0}
.svc-body{padding:0 0 22px 34px}.svc-item p{color:var(--ink2);margin-top:8px;font-size:16.5px;line-height:1.65}
.svc .lead h2 .hl,.head h2 .hl{color:var(--accent)}.svc .lead h2 .hl{display:block}
.svfacts{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.svfacts li{display:flex;gap:12px;align-items:center;font-weight:600;font-size:15.5px;color:var(--ink)}
.svfacts li span{flex:none;width:46px;height:46px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:grid;place-items:center}
.svphoto{margin-top:28px;height:220px;border-radius:22px;background-size:cover;background-position:center}
.svc-list{gap:10px}.svc-item,.svc-item:first-child{border:1px solid var(--line);border-radius:18px;background:var(--card)}
.svc-item summary{padding:12px 18px}.svc-item[open] summary{background:#EEF5FC;border-radius:18px 18px 0 0}
.svi{flex:none;width:44px;height:44px;border-radius:12px;background:#E8F2FC;color:var(--accent);display:grid;place-items:center}
.svc-body{padding:4px 18px 20px 74px}.svc-item p{margin-top:6px}
.svsup{margin-top:14px;padding:14px 16px;border-radius:14px;background:#EEF5FC}.svsup b{display:block;font-size:14.5px;margin-bottom:8px}
.svsup ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}.svsup li{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--ink2)}
.svsup svg{width:18px;height:18px;padding:3px;border-radius:50%;background:var(--accent);color:#fff;stroke-width:3;flex:none}
.oticks{list-style:none;margin:0;padding:0;display:grid;gap:8px;flex:1}.oticks li{display:flex;gap:10px;align-items:center;font-size:15px;color:var(--ink2)}
.oticks svg{width:20px;height:20px;padding:4px;border-radius:50%;background:var(--accent);color:#fff;stroke-width:3;flex:none}
.oclose{text-align:center;max-width:620px;margin:36px auto 0;color:var(--ink2)}.oclose strong{color:var(--ink)}
@media(max-width:640px){.svsup ul{grid-template-columns:1fr}.svc-body{padding-left:18px}.svfacts{grid-template-columns:1fr}.svphoto{height:170px}}
.svc-item p:first-child{margin-top:0}
/* how it works: stacked by default, tabs on desktop with JS */
.hiw{margin-top:44px}
.hiw-steps{display:none;list-style:none;margin:0;padding:0}
.hiw-panels{display:grid;gap:14px}
.hiw-panel{border-radius:24px;padding:26px;background:var(--card);border:1px solid var(--line)}
.hiw-panel .n{font:800 15px var(--hf),Arial,sans-serif;color:var(--accent)}.hiw-panel h3{margin:8px 0 10px}.hiw-panel p{color:var(--ink2)}.hiw-panel p+p{margin-top:10px}
@media(min-width:981px){
  body.js .hiw{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px;align-items:stretch}
  body.js .hiw-steps{display:grid;gap:8px}
  body.js .hiw-tab{width:100%;text-align:left;display:flex;gap:14px;align-items:center;min-height:64px;padding:0 20px;border-radius:18px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:700 17px var(--hf),Arial,sans-serif;cursor:pointer}
  body.js .hiw-tab span{font:800 14px var(--hf),Arial,sans-serif;color:var(--muted)}
  body.js .hiw-tab[aria-selected=true]{background:var(--dark);border-color:var(--dark);color:#fff}body.js .hiw-tab[aria-selected=true] span{color:var(--accent2)}
  body.js .hiw-panels{display:block}
  body.js .hiw-panel{display:none;height:100%;padding:44px}body.js .hiw-panel.on{display:block}
  body.js .hiw-panel h3{font-size:30px;letter-spacing:-.02em}body.js .hiw-panel p{font-size:18px;line-height:1.65}
}
/* about */
.about{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:start}
.people{display:grid;gap:12px}
.person{display:flex;gap:16px;align-items:center;border-radius:22px;padding:18px 20px;background:var(--card);border:1px solid var(--line)}
.person .av{width:52px;height:52px;border-radius:50%;background:var(--dark);color:#fff;display:grid;place-items:center;font:800 20px var(--hf),Arial,sans-serif;flex:none}
.person b{display:block;font:800 17px var(--hf),Arial,sans-serif;color:var(--ink)}.person span{display:block;font-size:14px;color:var(--muted)}
.vals{margin-top:28px;display:grid;gap:4px}.vals h3{font-size:clamp(20px,2vw,24px)}
.vals2{margin-top:16px;color:var(--muted);font-weight:600}
/* final + footer */
.final .beats3{flex-basis:100%;display:grid;gap:2px;font-weight:700;color:#fff}
footer .fcol{display:grid;gap:4px;min-width:0}footer a{text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:640px){body.v2 .fs div{padding:24px 18px}body.v2 .fs b{font-size:30px}body.v2 .fs b.lead{font-size:46px}body.v2 .fs b.place{font-size:20px}}
.rgets li{background:none;padding:0;border-radius:0}
.blueband{background:#E8F2FC}.pb2{text-align:center}.pb2 .bigquote,.pb2 .prose2{margin-left:auto;margin-right:auto}.pb2 .bigquote{max-width:920px}
.beats3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:40px auto 0;max-width:980px;text-align:left}
.beats3 .bc{display:flex;flex-direction:column;gap:18px;background:#fff;border:1px solid #D6E6F6;border-radius:24px;padding:26px 26px 28px;box-shadow:0 14px 36px rgba(6,36,64,.06)}
.beats3 .bi{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#E8F2FC;color:var(--accent)}
.beats3 p{margin:0}.beats3 b{display:block;font:800 clamp(22px,2vw,26px)/1.15 var(--hf),Arial,sans-serif;color:var(--ink);letter-spacing:-.01em}
.beats3 p span{display:block;margin-top:6px;font:700 clamp(18px,1.6vw,21px)/1.3 var(--hf),Arial,sans-serif;color:#5F7389}
.cost{margin:30px auto 0;max-width:640px;font-size:clamp(18px,1.7vw,20px);line-height:1.5;color:var(--ink2)}
.stop{margin-top:22px;font:800 clamp(22px,2.4vw,30px)/1.2 var(--hf),Arial,sans-serif;color:var(--ink)}.pb2 .pcta{justify-content:center;margin-top:20px}.pb2 .pcta span{color:#3E5D7C}
.blueband .quizwrap#quiz{margin-top:80px}
.pb3{align-items:center}.pb3 .beats{margin:0}
.ctabar{margin-top:48px;border-radius:28px;background:#E8F2FC;border:1px solid #CFE2F5;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap}
.ctabar>p{font:800 clamp(20px,2.2vw,28px)/1.2 var(--hf),Arial,sans-serif;color:var(--ink)}.ctabar .pcta{margin:0}.ctabar .pcta span{color:#3E5D7C}
.people2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px;align-items:start}
.pcard{border-radius:24px;background:var(--card);border:1px solid var(--line)}
.pcard summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:16px;padding:20px 22px;min-height:88px}.pcard summary::-webkit-details-marker{display:none}
.pcard .av{width:52px;height:52px;border-radius:50%;background:var(--dark);color:#fff;display:grid;place-items:center;font:800 20px var(--hf),Arial,sans-serif;flex:none}
.pn2{display:block}.pn2 b{display:block;font:800 18px var(--hf),Arial,sans-serif;color:var(--ink)}.pn2 span{display:block;font-size:14.5px;color:var(--muted)}
.pcard .more{margin-left:auto;font-weight:700;font-size:15px;color:var(--accent);white-space:nowrap}.pcard .m2,.pcard[open] .m1{display:none}.pcard[open] .m2{display:inline}.pcard[open] .more{color:var(--muted)}
.pbio{padding:0 22px 22px 90px;display:grid;gap:10px;color:var(--ink2);font-size:16px;line-height:1.6}
.vals3{margin-top:28px;font:800 20px var(--hf),Arial,sans-serif;color:var(--ink)}
.head h2 .hl{color:var(--accent)}
.hsteps{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;position:relative}
.hsteps::before{content:"";position:absolute;left:10%;right:10%;top:18px;height:2px;background:color-mix(in srgb,var(--accent) 25%,transparent)}
.hsteps li{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}
.hsteps .hn{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font:800 15px var(--hf),Arial,sans-serif}
.hsteps .hic{width:64px;height:64px;border-radius:50%;margin-top:22px;background:#E8F2FC;color:var(--accent);display:grid;place-items:center}.hsteps .hic svg{width:28px;height:28px}
.hsteps h3{margin-top:16px;font-size:18px}.hsteps p{margin-top:8px;color:var(--muted);font-size:15px;line-height:1.5}
.abdk{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:start;border-radius:36px;padding:56px;color:#fff;background:linear-gradient(180deg,rgba(7,18,36,.92),rgba(7,18,36,.96)),url(../assets/img/dover-aerial-2-1280.webp) center/cover}
.abdk .kicker{color:var(--accent2)}.abdk h2{color:#fff}.abdk h2 .hl{color:var(--accent2);display:block}.abdk .intro{color:rgba(255,255,255,.82)}.abdk .intro+.intro{margin-top:14px}
.abfacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px}.abfacts span{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.1);color:var(--accent2);display:grid;place-items:center}
.abfacts b{display:block;margin-top:14px;font:800 16px/1.3 var(--hf),Arial,sans-serif}.abfacts p{margin-top:6px;font-size:14px;color:rgba(255,255,255,.72);line-height:1.5}
.abpeople{display:grid;gap:16px}.abp{display:flex;gap:20px;align-items:flex-start;padding:24px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}
.abp .av{flex:none;width:76px;height:76px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font:800 28px var(--hf),Arial,sans-serif}
.abp b{display:block;font:800 20px var(--hf),Arial,sans-serif}.abp b+span{display:block;margin-top:3px;color:var(--accent2);font-weight:700;font-size:14px}.abp p{margin-top:12px;font-size:15px;color:rgba(255,255,255,.8);line-height:1.5}
.abpeople .btn{justify-self:center;margin-top:8px}
.faqgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}.fq{display:flex;gap:18px;align-items:flex-start;padding:22px 24px;border-radius:20px;background:var(--card);border:1px solid var(--line)}
.fq-ic{flex:none;width:56px;height:56px;border-radius:50%;background:#E8F2FC;color:var(--accent);display:grid;place-items:center}.fq h3{font-size:17px}.fq p{margin-top:6px;font-size:15px;color:var(--muted);line-height:1.5}
.faqcta{display:flex;gap:20px;align-items:center;margin-top:20px;padding:22px 28px;border-radius:20px;background:#E8F2FC}.fc-ic{flex:none;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center}
.faqcta b{display:block;font:800 22px var(--hf),Arial,sans-serif;color:var(--ink)}.faqcta div{flex:1}.faqcta div>span{display:block;color:var(--ink2);margin-top:2px}
.crows{margin-top:0}.split h2 .hl{color:var(--accent)}
.car3{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.9fr);gap:40px;align-items:center}
.carphoto{align-self:stretch;min-height:460px;border-radius:26px;background-size:cover;background-position:center 45%}
@media(max-width:980px){.car3{grid-template-columns:1fr}.carphoto{min-height:380px;background-position:center 58%}}

.fin2{display:block;text-align:left;position:relative;overflow:hidden;padding:40px 44px 34px;border-radius:30px;background:linear-gradient(90deg,rgba(7,18,36,.98) 45%,rgba(7,18,36,.78)),url(../assets/img/dover-aerial-1280.webp) center/cover}
.fin2 .kicker{color:var(--accent2);margin-bottom:8px}.fin2 h2{max-width:640px;margin:0 0 12px;font-size:clamp(28px,3.4vw,42px)}.fin2 h2 .hl{color:var(--accent2)}.fin2 .intro{margin:0;max-width:640px;font-size:15.5px;line-height:1.5;color:rgba(255,255,255,.82)}
.fsteps{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;position:relative}
.fsteps li{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);position:relative}
.fsteps li+li::before{content:"→";position:absolute;left:-21px;top:50%;transform:translateY(-50%);color:var(--accent2);font-size:16px}
.fsteps li>span{flex:none;width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center}.fsteps li>span svg{width:18px;height:18px}
.fsteps b{display:block;font:800 14px/1.3 var(--hf),Arial,sans-serif;color:#fff}.fsteps small{display:block;margin-top:3px;font-size:12.5px;color:rgba(255,255,255,.72);line-height:1.4}
.fin2 .ctas{justify-content:flex-start;margin-top:20px;gap:10px}
.fstrip{list-style:none;margin:24px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.16);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.fstrip li{display:flex;gap:10px;align-items:center}.fstrip li>span{flex:none;width:34px;height:34px;display:grid;place-items:center;color:var(--accent2)}.fstrip b{display:block;font-weight:800;font-size:14px;color:#fff}.fstrip small{display:block;font-size:12.5px;color:rgba(255,255,255,.7)}
@media(max-width:980px){.hsteps{grid-template-columns:1fr 1fr}.hsteps::before{display:none}.abdk{grid-template-columns:1fr;padding:36px 26px}.abfacts{grid-template-columns:1fr}.faqgrid{grid-template-columns:1fr}.fsteps{grid-template-columns:1fr 1fr}.fsteps li+li::before{display:none}.fstrip{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.hsteps{grid-template-columns:1fr;gap:34px}.abdk{border-radius:26px;padding:28px 20px}.abp{flex-direction:column}.faqcta{flex-direction:column;align-items:flex-start}.faqcta .btn{width:100%}.fsteps,.fstrip{grid-template-columns:1fr}.fin2{padding:28px 20px 24px;border-radius:24px}.fin2 .ctas .btn{width:100%}}

@media(max-width:860px){.beats3,.people2{grid-template-columns:1fr}.beats3 .bc{flex-direction:row;align-items:center;gap:16px;padding:18px 20px}.pbio{padding:0 22px 22px}}
@media(max-width:640px){.ctabar{padding:22px}.ctabar .btn.big{width:100%}}
.prose2{margin-top:28px;display:grid;gap:10px;font-size:clamp(18px,1.8vw,21px);line-height:1.5;color:var(--ink2);max-width:760px}.prose2 strong{color:var(--ink)}
.pcta{margin:34px 0 4px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}.pcta span{color:var(--muted);font-weight:600}
.btn.big{min-height:64px;padding:0 34px;font-size:18px}
.fs b .ph,.hstats b .ph,.statband b .ph{display:inline-block;margin:0;color:#6B4E00;font-size:16px;line-height:1.4;letter-spacing:0}
.hstats{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:56px;padding-top:28px;border-top:1px solid rgba(255,255,255,.18)}
.hstats b{display:block;font:900 clamp(28px,3.2vw,42px)/1 var(--hf),Arial,sans-serif;color:#fff;letter-spacing:-.02em}.hstats b.lead{color:var(--accent2)}
.hstats span{display:block;margin-top:8px;color:rgba(255,255,255,.75);font-size:14.5px}
.sdark{padding:36px 0 0}.sdark .statband b.lead{color:var(--accent2)}.sdark .statband .ph{font-size:15px}
.probB{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
.beatblue{border-radius:32px;padding:40px;background:#E8F2FC;border:1px solid #CFE2F5}.beatblue .beats{margin:0}.beatblue .pcta{margin:30px 0 0}.beatblue .pcta span{color:#3E5D7C}
.beatcard{border-radius:28px;padding:36px;background:var(--card);border:1px solid var(--line);box-shadow:0 20px 50px rgba(10,22,40,.06)}.beatcard .beats{margin:0}
.pdark{border-radius:40px;padding:64px 56px;background:var(--dark);color:#fff}.pdark .kicker{color:var(--accent2)}.pdark .bigquote{color:#fff}
.pdark .prose2{color:rgba(255,255,255,.8)}.pdark .prose2 strong{color:#fff}.pdark .beats{color:#fff}.pdark .beats .q{color:var(--accent2)}.pdark .pcta span{color:rgba(255,255,255,.7)}
@media(max-width:980px){.probB{grid-template-columns:1fr;gap:32px}}@media(max-width:640px){.hstats{grid-template-columns:1fr}}
@media(max-width:640px){.pdark{padding:34px 22px;border-radius:28px}.beatcard,.beatblue{padding:24px;border-radius:26px}.btn.big{width:100%}.hstats{margin-top:36px;gap:18px}}
.upd h2 .hl{color:var(--accent);display:block}
.tl{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:28px 28px 28px 24px;box-shadow:0 30px 70px rgba(10,22,40,.08)}
.tl-steps{list-style:none;margin:0;padding:0;display:grid;gap:18px;position:relative}
.tl-steps li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:16px;align-items:center;position:relative}
.tl-steps li::before,.tl-steps li::after{content:"";position:absolute;left:17px;width:2px;background:color-mix(in srgb,var(--accent) 30%,transparent)}
.tl-steps li::before{top:-9px;bottom:50%}.tl-steps li::after{top:50%;bottom:-9px}
.tl-steps li:first-child::before,.tl-steps li:last-child::after{display:none}
.tl-dot{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;position:relative;z-index:1}.tl-dot svg{width:18px;height:18px;stroke-width:3}
.tl-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px 18px;border-radius:18px;background:var(--bg2);border:1px solid var(--line)}
.tl-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}
.tl-card b{display:block;font:800 15.5px var(--hf),Arial,sans-serif;color:var(--ink)}.tl-card div>span{display:block;margin-top:3px;font-size:14px;line-height:1.45;color:var(--muted)}
.tl-card time{font-size:13.5px;color:var(--muted);white-space:nowrap;padding-top:2px}
.urows{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:18px}.urows li{display:flex;gap:16px;align-items:flex-start}
.ur-ic{flex:none;width:52px;height:52px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:grid;place-items:center}
.urows b{display:block;font-weight:800;font-size:17px;color:var(--ink);line-height:1.3}.urows li>div>span{display:block;margin-top:3px;color:var(--muted);font-size:15px}
@media(max-width:640px){.tl{padding:20px 16px 20px 14px;border-radius:22px}.tl-card{grid-template-columns:40px minmax(0,1fr);padding:14px}.tl-card time{grid-column:2;justify-self:start;padding:0}.tl-ic{width:40px;height:40px}}
@media(max-width:980px){body.v2 .upd .phone{margin:28px auto 0}
}
@media(min-width:981px){body.v2 .upd .phone{order:-1}}#dsh-quiz{scroll-margin-top:96px}
@media(max-width:860px){body.v2 .fs div{border-right:0;border-bottom:1px solid var(--line)}body.v2 .fs div:nth-child(1),body.v2 .fs div:nth-child(4){grid-column:1/-1}body.v2 .fs div:nth-child(2){border-right:1px solid var(--line)}body.v2 .fs div:last-child{border-bottom:0}}
@media(max-width:980px){.team,.svc,.about{grid-template-columns:1fr;gap:40px}.svc .lead{position:static}}
@media(max-width:640px){.prof{padding:24px;border-radius:26px}.hiw-panel{padding:22px}.round{gap:20px}.knows li{font-size:17px}
  body.v2 .nav .call{display:inline-flex}body.v2 .nav .btn:not(.call){display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* phone copy: .dt shows on desktop only, .mb on phones only */
.mb{display:none}
@media(max-width:640px){.dt{display:none!important}span.mb{display:inline}p.mb{display:block}}
/* WhatsApp green: dark text on #25D366 keeps contrast; the round button keeps WhatsApp's white glyph */
.btn.wa{background:#25D366;color:#062E16;box-shadow:0 10px 30px rgba(37,211,102,.3)}.btn.wa svg{width:20px;height:20px}
/* stuck at the border */
.sos{padding:40px 0}
.sos-in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center;border-radius:28px;padding:28px 32px;background:#FFF4E5;border:1px solid #F3D6A4}
.sos-ic{width:56px;height:56px;border-radius:16px;background:#FFE2B8;color:#8A5200;display:grid;place-items:center}
.sos h2{font-size:clamp(24px,2.6vw,32px)}.sos-tx p{color:var(--ink2);margin-top:6px;max-width:640px}.sos-tx .sos-sm{font-weight:700;color:#6E4300;font-size:15px}
.sos-cta{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:900px){.sos-in{grid-template-columns:auto minmax(0,1fr)}.sos-cta{grid-column:1/-1}}
@media(max-width:640px){.sos{padding:24px 0}.sos-in{padding:20px;gap:14px;border-radius:24px}.sos-ic{width:44px;height:44px;border-radius:14px}.sos-cta{display:grid;grid-template-columns:1fr 1fr}.sos-cta .btn{padding:0 14px}}
.sos-cta .btn{white-space:nowrap}
/* offers: one swipeable row on phones */
@media(max-width:640px){body.v2 .offers{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:28px -24px 0;padding:0 24px 10px;scrollbar-width:none}
  body.v2 .offers::-webkit-scrollbar{display:none}body.v2 .offers .offer{flex:0 0 80%;scroll-snap-align:start;padding:22px}body.v2 .offers .offer p{margin-bottom:14px}}
/* quiz pop-up */
html.modal-open{overflow:hidden}.qm-body{overscroll-behavior:contain}
.qmodal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px}.qmodal[hidden]{display:none}
.qm-back{position:absolute;inset:0;background:rgba(6,20,36,.62);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.qm-box{position:relative;width:min(720px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;border-radius:28px;background:var(--card);box-shadow:0 40px 100px rgba(0,0,0,.35);overflow:hidden}
.qm-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 0 28px}.qm-head p{font-weight:700;color:var(--muted);font-size:15px}
.qm-x{flex:none;width:44px;height:44px;border-radius:50%;border:0;background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink);font:400 26px/1 Inter,Arial,sans-serif;cursor:pointer}
.qm-body{overflow-y:auto;padding:0 8px 8px}.qm-body .quiz{box-shadow:none;padding:16px 20px 24px}
@media(max-width:640px){.qmodal{padding:0}.qm-box{width:100%;height:100%;max-height:none;border-radius:0}.qm-head{padding:12px 12px 0 24px}}
/* floating chat + WhatsApp */
.fab{position:fixed;right:18px;bottom:18px;z-index:40;display:grid;gap:12px;justify-items:end}.modal-open .fab{display:none}
.fab-btn{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;border:0;cursor:pointer;box-shadow:0 14px 34px rgba(6,36,64,.28)}
.wa-btn{background:#25D366;color:#fff}.wa-btn svg{width:30px;height:30px}.chat-btn{background:var(--dark);color:#fff}
.chat{position:absolute;right:0;bottom:140px;width:min(360px,calc(100vw - 36px));max-height:min(560px,calc(100vh - 180px));display:flex;flex-direction:column;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:0 30px 80px rgba(6,36,64,.25);overflow:hidden}
.chat[hidden]{display:none}
.chat-head{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:14px 14px 14px 18px;background:var(--dark);color:#fff}
.chat-head p{font:800 16px var(--hf),Arial,sans-serif}.chat-head span{display:block;font-size:12.5px;color:rgba(255,255,255,.75)}.chat-head .qm-x{color:#fff;background:rgba(255,255,255,.12)}
.chat-log{flex:1;overflow-y:auto;padding:16px;display:grid;gap:10px;align-content:start}
.cm{max-width:88%;border-radius:18px;padding:10px 14px;font-size:15px;line-height:1.45}
.cm.bot{background:color-mix(in srgb,var(--accent) 7%,var(--card));border:1px solid var(--line)}.cm.me{justify-self:end;background:var(--accent);color:#fff}
.cm.opts{max-width:100%;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:600 14px Inter,Arial,sans-serif;cursor:pointer}.chip:hover{border-color:var(--accent)}
.cbtns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.cbtns .btn{min-height:44px;padding:0 16px;font-size:14px;box-shadow:none}
.chat-in{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}
.chat-in input{flex:1;min-width:0;min-height:46px;border:1px solid var(--line);border-radius:999px;padding:0 16px;font:500 16px Inter,Arial,sans-serif;background:var(--bg);color:var(--ink)}
@media(max-width:640px){.fab{right:14px;bottom:14px;gap:10px}.fab-btn{width:54px;height:54px}.chat{position:fixed;left:12px;right:12px;bottom:142px;width:auto;max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px)}}

/* style previews (5 Oct) */
.orows{margin-top:40px;border-top:1px solid var(--line)}.orow{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}
.onum{font:800 28px var(--hf),Arial,sans-serif;color:var(--accent)}.otx h3{font-size:22px}.otx p{color:var(--ink2);margin-top:6px}
.pgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}.pcard2{border-radius:26px;background:var(--card);border:1px solid var(--line);padding:30px}
.pcard2 .av,.tp .av,.pdk .av{width:68px;height:68px;border-radius:50%;background:var(--dark);color:#fff;display:grid;place-items:center;font:800 26px var(--hf),Arial,sans-serif;flex:none}
.pcard2 h3{margin-top:18px;font-size:22px}.pcard2 .role{color:var(--accent);font-weight:700;margin:4px 0 12px}.pcard2 p{color:var(--ink2)}
.vgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.vgrid div{border-radius:22px;background:#E8F2FC;padding:24px}.vgrid b{font:800 20px var(--hf),Arial,sans-serif;color:var(--ink)}.vgrid p{color:#3E5D7C;margin-top:6px}
.tline{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;position:relative}
.tline::before{content:"";position:absolute;left:24px;right:calc((100% - 80px) / 5 - 24px);top:24px;height:2px;background:#CFE2F5}
.tline li{position:relative}.tn{width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font:800 18px var(--hf),Arial,sans-serif;position:relative}
.tline h3{margin-top:18px;font-size:18px}.tline p{color:var(--ink2);margin-top:8px;font-size:15.5px}
.ofeat{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;margin-top:40px}
.ofbig{border-radius:30px;background:var(--dark);color:#fff;padding:40px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}.ofbig h3{color:#fff;font-size:30px}.ofbig p{color:rgba(255,255,255,.8);font-size:18px}
.ofbig .bi,.oside .bi,.ocard .bi{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#E8F2FC;color:var(--accent);flex:none}.ofbig .bi{background:rgba(255,255,255,.1);color:var(--accent2)}
.ofside{display:grid;gap:18px}.oside{display:flex;gap:18px;border-radius:26px;background:var(--card);border:1px solid var(--line);padding:26px}.oside p{color:var(--ink2);margin-top:6px}
.lnk{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font-weight:700;color:var(--accent)}
.aboutdk{background:var(--dark);color:#fff}.aboutdk h2,.aboutdk b{color:#fff}.aboutdk .kicker{color:var(--accent2)}.aboutdk .intro{color:rgba(255,255,255,.8)}
.adk{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center}.vlist{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:10px;color:rgba(255,255,255,.82)}
.pstack{display:grid;gap:14px}.pdk{display:flex;gap:16px;align-items:center;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:20px}
.pdk .av{background:var(--accent)}
.pdk2{border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:22px}
.ptop{display:flex;gap:16px;align-items:center}.plogo{width:72px;height:72px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none;box-shadow:0 0 0 3px rgba(63,183,250,.35)}
.plogo img{width:52px;height:auto}.pdk2 b{display:block;font:800 19px var(--hf),Arial,sans-serif;color:#fff}.prole{display:block;color:var(--accent2);font-weight:700;font-size:14.5px}
.pbio2{color:rgba(255,255,255,.78);font-size:15.5px;line-height:1.55;margin-top:14px}.pbio2 .ph{font-size:.8em}
.pbtn{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:12px;padding:0 16px;border-radius:999px;background:#25D366;color:#062E16;font-weight:700;font-size:14.5px}.pbtn svg{width:18px;height:18px}.pdk b{display:block;font:800 18px var(--hf),Arial,sans-serif}.pdk span{color:rgba(255,255,255,.7);font-size:14.5px}.pnote{color:rgba(255,255,255,.75);font-size:15.5px}
.howdk{background:#0B2E52;color:#fff}.howdk h2{color:#fff}.howdk .kicker{color:var(--accent2)}
.sdk{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.12);border-radius:24px;overflow:hidden}
.sdk li{background:#0B2E52;padding:28px 22px}.sn{font:900 40px/1 var(--hf),Arial,sans-serif;color:var(--accent2)}.sdk h3{color:#fff;margin-top:18px;font-size:18px}.sdk p{color:rgba(255,255,255,.75);margin-top:8px;font-size:15px}
.ocards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}.ocard{display:flex;flex-direction:column;gap:14px;align-items:flex-start;border-radius:26px;background:#fff;border:1px solid #D6E6F6;padding:30px;box-shadow:0 14px 36px rgba(6,36,64,.06)}
.ocard h3{font-size:22px}.ocard p{color:var(--ink2);flex:1}
.tstrip{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px;align-items:end}.tnums{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tnums b{display:block;font:900 clamp(26px,3vw,38px)/1 var(--hf),Arial,sans-serif;color:var(--accent)}.tnums span{color:var(--ink2);font-size:15px}
.tpeople{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}.tp{display:flex;gap:18px;border-radius:24px;background:var(--card);border:1px solid var(--line);padding:24px}
.tp b{display:block;font:800 19px var(--hf),Arial,sans-serif;color:var(--ink)}.tp span{color:var(--accent);font-weight:700;font-size:14.5px}.tp p{color:var(--ink2);margin-top:8px;font-size:15.5px}
.scards{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.scards li{border-radius:24px;background:var(--card);border:1px solid var(--line);padding:24px}.cn{width:40px;height:40px;border-radius:12px;background:#E8F2FC;color:var(--accent);display:grid;place-items:center;font:800 17px var(--hf),Arial,sans-serif}
.scards h3{margin-top:16px;font-size:18px}.scards p{color:var(--ink2);margin-top:8px;font-size:15px}
@media(max-width:980px){.ofeat,.adk,.tstrip{grid-template-columns:1fr;gap:28px}.tline,.sdk,.scards{grid-template-columns:1fr 1fr}.tline::before{display:none}.ocards{grid-template-columns:1fr}}
@media(max-width:640px){.orow{grid-template-columns:44px minmax(0,1fr)}.orow .btn{grid-column:1/-1}.pgrid,.vgrid,.tpeople,.tline,.sdk,.scards{grid-template-columns:1fr}.ofbig{padding:28px}.tp{flex-direction:column}}

/* 7 Oct 2026, Louis: the hero, Our approach and About each have to fit one laptop screen (his MacBook shows about 1470x830 under
   the sticky header). Desktop only: on a phone they stack and scroll anyway. Measured before: hero 1035px, approach 969px, About 1101px. */
@media(min-width:981px){
body.v2 .hero.photo{padding:52px 0 44px}
body.v2 .hero.photo h1{font-size:clamp(40px,3.9vw,56px)}
body.v2 .hero.photo .lede{font-size:18px;line-height:1.5;margin:16px 0 22px;max-width:540px}
body.v2 .prof{padding:22px 26px;border-radius:26px}body.v2 .prof .pn{font-size:14px}
body.v2 .prof .big{font-size:25px;margin:6px 0 8px}body.v2 .prof p{font-size:14.5px;line-height:1.45}
body.v2 .prof.why ul.rows{gap:9px;margin-top:12px}body.v2 .prof.why li{gap:12px}body.v2 .prof.why li i{width:36px;height:36px}body.v2 .prof.why li i svg{width:18px;height:18px}
body.v2 .prof.why li b{font-size:14.5px}body.v2 .prof.why li span{font-size:13px;line-height:1.35}
body.v2 .prof.why .tags{margin-top:12px;padding-top:10px;font-size:12.5px}
body.v2 .hstats{margin-top:28px;padding-top:18px}body.v2 .hstats b{font-size:clamp(24px,2.4vw,32px)}body.v2 .hstats span{margin-top:4px;font-size:13.5px}
body.v2 section[aria-labelledby=kn]{padding:60px 0}
body.v2 #kn{font-size:clamp(30px,3vw,40px)}body.v2 .team{gap:56px}
body.v2 .team .prose{margin-top:18px;font-size:16.5px;line-height:1.55;gap:10px}
body.v2 .knows{margin:14px 0;gap:5px}body.v2 .knows.tick li{font-size:16px}
body.v2 .teamnote{margin-top:16px;padding:12px 16px}body.v2 .teamnote .tn-ic{width:40px;height:40px}body.v2 .teamnote p{font-size:15px}
body.v2 .node{padding:16px 18px}body.v2 .conn{height:26px}
body.v2 #about{padding:60px 0}
body.v2 .abdk{padding:38px 42px;gap:40px;border-radius:30px}body.v2 .abdk h2{font-size:clamp(30px,3vw,40px)}
body.v2 .abdk .intro{font-size:15.5px;line-height:1.5;margin-top:12px}body.v2 .abdk .intro+.intro{margin-top:10px}
body.v2 .abfacts{margin-top:22px;gap:18px}body.v2 .abfacts span{width:42px;height:42px}body.v2 .abfacts b{margin-top:10px;font-size:14.5px}body.v2 .abfacts p{font-size:13px;margin-top:4px}
body.v2 .abpeople{gap:12px}body.v2 .abp{padding:16px 18px;gap:14px}body.v2 .abp .av{width:56px;height:56px;font-size:21px}
body.v2 .abp b{font-size:17px}body.v2 .abp b+span{font-size:13px}body.v2 .abp p{font-size:13.5px;margin-top:6px;line-height:1.45}
body.v2 .abpeople .btn{margin-top:4px}
body.v2 #offers{padding:40px 0}body.v2 #offers .head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:0 40px}body.v2 #offers .head .kicker{flex-basis:100%}
body.v2 #offers .head h2{font-size:clamp(30px,3vw,40px)}body.v2 #offers .head .intro{margin:10px 0 8px;flex:1 1 100%;min-width:300px;max-width:none;font-size:16px;line-height:1.45}
body.v2 .ocards{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr)}
body.v2 .ocards{margin-top:22px;gap:14px}body.v2 .ocard{padding:22px}body.v2 .ocard .bi{width:44px;height:44px}body.v2 .ocard h3{font-size:20px}
body.v2 .ocard p{font-size:15px;line-height:1.45}body.v2 .oticks li{font-size:13.5px;line-height:1.35}body.v2 .oticks svg{width:18px;height:18px}
body.v2 .oclose{margin-top:22px;font-size:15.5px;line-height:1.45}
body.v2 #careers{padding:56px 0}body.v2 .car3{gap:36px}body.v2 #cr{font-size:clamp(30px,2.9vw,42px);line-height:1.08}
}
/* 7 Oct, Louis: "look at the gaps". The paragraph and the tick list were both flex:1, so the shorter cards stretched both and the
   ticks spread apart. Now the text sits tight, the ticks sit tight under it, and only the button drops to the bottom. */
body.v2 .ocard{gap:12px;padding:26px}body.v2 .ocard h3{font-size:21px}body.v2 .ocard p{flex:0 0 auto;font-size:16px;line-height:1.5}
body.v2 .oticks{flex:0 0 auto;gap:7px;margin-top:2px}body.v2 .oticks li{font-size:14.5px}body.v2 .ocard .btn{margin-top:auto}
body.v2 .oclose{margin-top:28px}

/* 7 Oct 2026, Louis: "This really needs optimizing for phone". Measured at 390x844 before: 21,831px (26 screens), the floating
   buttons sat on text, every step and fact stacked as a tall centred column. Phone rules only (640px and under), so desktop
   (already fitted to one laptop screen per section) is untouched. Pattern: rows not columns, one scale smaller, half the gaps. */
@media(max-width:640px){
body.v2 section{padding:48px 0}body.v2 .top .wrap{height:64px}body.v2 .logo-img img{height:34px;width:auto}@media(max-width:640px){body.v2 .top .wrap{height:58px}body.v2 .logo-img img{height:27px;width:auto}}
body.v2 h2{font-size:28px;line-height:1.08}body.v2 .head .intro,body.v2 .intro{font-size:15.5px;line-height:1.5;margin-top:12px}body.v2 .kicker{margin-bottom:8px;font-size:14px}
body.v2 .btn{min-height:46px}body.v2 .btn.big{min-height:50px}
body.v2 .fab{right:12px;bottom:12px;display:flex;flex-direction:row-reverse;gap:8px}body.v2 .fab-btn{width:48px;height:48px}body.v2 .fab-btn svg{width:22px;height:22px}
/* hero */
body.v2 .hero.photo{padding:28px 0 36px}body.v2 .hero.photo h1{font-size:36px;line-height:1.02}body.v2 .hero.photo .lede{font-size:15.5px;line-height:1.5;margin:12px 0 16px}
body.v2 .hero .ctas{display:grid;grid-template-columns:1fr 1fr;gap:8px}body.v2 .hero .ctas .btn:nth-child(3){grid-column:1/-1}body.v2 .hero .ctas .btn{width:100%;min-height:46px;padding:0 12px;font-size:15px}
body.v2 .herogrid{gap:22px}body.v2 .prof{padding:18px;border-radius:20px}body.v2 .prof .pn{font-size:13px}body.v2 .prof .big{font-size:21px;margin:4px 0 6px}body.v2 .prof p{font-size:14px;line-height:1.45}
body.v2 .prof.why ul.rows{gap:8px;margin-top:10px}body.v2 .prof.why li{gap:10px}body.v2 .prof.why li i{width:32px;height:32px}body.v2 .prof.why li i svg{width:16px;height:16px}
body.v2 .prof.why li b{font-size:14px}body.v2 .prof.why li span{font-size:12.5px;line-height:1.3}body.v2 .prof.why .tags{margin-top:10px;padding-top:8px;font-size:12px;line-height:1.5}
body.v2 .hstats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px;padding-top:14px}body.v2 .hstats b{font-size:22px}body.v2 .hstats span{font-size:11.5px;line-height:1.3;margin-top:3px}
body.v2 .credit{position:static;margin:12px 0 0;text-align:right}
/* sound familiar + quiz */
body.v2 .kicker.big{font-size:20px;margin-bottom:10px}body.v2 .bigquote{font-size:24px;line-height:1.15}body.v2 .pb2 .prose2{margin-top:14px}body.v2 .prose2{font-size:16px;line-height:1.45}
body.v2 .beats3{margin-top:20px;gap:8px}body.v2 .beats3 .bc{padding:12px 14px;gap:12px;border-radius:16px}body.v2 .beats3 .bi{width:38px;height:38px}body.v2 .beats3 b{font-size:17px}body.v2 .beats3 p span{font-size:14.5px;margin-top:2px}
body.v2 .cost{margin-top:16px;font-size:15.5px}body.v2 .blueband .quizwrap#quiz{margin-top:40px}body.v2 .quizwrap{gap:16px}
body.v2 .quiz{padding:18px;border-radius:20px}body.v2 .qopt{min-height:46px;padding:10px 14px;font-size:15px}body.v2 .qopts{gap:7px;margin-top:14px}body.v2 .qq{font-size:20px}
/* our approach */
body.v2 #kn{font-size:28px}body.v2 .team{gap:22px}body.v2 .team .prose{margin-top:14px;font-size:15.5px;line-height:1.5;gap:8px}
body.v2 .knows{margin:10px 0;gap:3px}body.v2 .knows.tick li{font-size:15px}body.v2 .knows.tick svg{width:20px;height:20px}
body.v2 .teamnote{margin-top:12px;padding:10px 14px;gap:12px}body.v2 .teamnote .tn-ic{width:36px;height:36px}body.v2 .teamnote p{font-size:14.5px}
body.v2 .node{padding:12px 14px;gap:10px;border-radius:16px}body.v2 .node .nic{width:38px;height:38px}body.v2 .node b{font-size:15.5px}body.v2 .node span{font-size:13px}body.v2 .conn{height:18px}
/* updates: words first, then the timeline, tighter rows */
body.v2 .upd .tl{order:2;padding:14px 12px 14px 10px;border-radius:18px}body.v2 .tl-steps{gap:8px}body.v2 .tl-steps li{grid-template-columns:28px minmax(0,1fr);gap:10px}
body.v2 .tl-dot{width:28px;height:28px}body.v2 .tl-dot svg{width:14px;height:14px}body.v2 .tl-steps li::before,body.v2 .tl-steps li::after{left:13px}body.v2 .tl-steps li::before{top:-5px}body.v2 .tl-steps li::after{bottom:-5px}
body.v2 .tl-card{grid-template-columns:34px minmax(0,1fr) auto;gap:8px 10px;padding:10px 12px;border-radius:12px;align-items:start}body.v2 .tl-ic{width:34px;height:34px;border-radius:10px}body.v2 .tl-ic svg{width:18px;height:18px}
body.v2 .tl-card b{font-size:14px}body.v2 .tl-card div>span{font-size:12.5px;line-height:1.35;margin-top:1px}body.v2 .tl-card time{grid-column:3;grid-row:1;font-size:12px;padding:0}
body.v2 .urows{margin-top:16px;gap:12px}body.v2 .ur-ic{width:40px;height:40px}body.v2 .ur-ic svg{width:18px;height:18px}body.v2 .urows b{font-size:15px}body.v2 .urows li>div>span{font-size:13.5px}
/* three ways */
body.v2 #offers .head{display:block}body.v2 #offers .head .intro{margin:10px 0 0}body.v2 .ocards{gap:10px;margin-top:18px}body.v2 .ocard{padding:18px;gap:8px;border-radius:18px}body.v2 .ocard .bi{width:40px;height:40px}
body.v2 .ocard h3{font-size:18px}body.v2 .ocard p{font-size:14.5px;line-height:1.45}body.v2 .oticks{gap:5px}body.v2 .oticks li{font-size:13.5px}body.v2 .ocard .btn{margin-top:6px;width:100%}
body.v2 .oclose{margin-top:18px;font-size:14.5px}
/* services */
body.v2 .svc{gap:18px}body.v2 .svfacts{margin-top:14px;gap:6px}body.v2 .svfacts li{font-size:13.5px;gap:9px}body.v2 .svfacts li span{width:34px;height:34px}body.v2 .svfacts li span svg{width:16px;height:16px}
body.v2 .svphoto{height:140px;margin-top:14px;border-radius:14px}body.v2 .svc-list{gap:7px}body.v2 .svc-item,body.v2 .svc-item:first-child{border-radius:14px}
body.v2 .svc-item summary{padding:9px 12px;min-height:54px;gap:10px}body.v2 .svi{width:36px;height:36px;border-radius:10px}body.v2 .svi svg{width:18px;height:18px}body.v2 .svc-item h3{font-size:15.5px;gap:10px}
body.v2 .sv-t small{font-size:12.5px;line-height:1.3;margin-top:1px}body.v2 .svc-body{padding:2px 12px 14px}body.v2 .svc-item p{font-size:14.5px;line-height:1.5;margin-top:4px}
body.v2 .svsup{margin-top:10px;padding:10px 12px}body.v2 .svsup b{font-size:13.5px;margin-bottom:6px}body.v2 .svsup ul{gap:5px}body.v2 .svsup li{font-size:13px}
/* how it works: a row per step */
body.v2 .hsteps{margin-top:22px;gap:14px}body.v2 .hsteps li{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:0 14px;align-items:start;text-align:left}
body.v2 .hsteps .hic{grid-row:1/3;width:52px;height:52px;margin:0}body.v2 .hsteps .hic svg{width:24px;height:24px}
body.v2 .hsteps .hn{position:absolute;left:34px;top:-7px;width:24px;height:24px;font-size:12px;box-shadow:0 0 0 2px var(--bg)}
body.v2 .hsteps h3{margin:2px 0 0;font-size:16.5px}body.v2 .hsteps p{margin-top:3px;font-size:14px;line-height:1.45}
/* about: compact rows */
body.v2 .abdk{padding:24px 18px;border-radius:20px;gap:22px}body.v2 .abdk h2{font-size:28px}body.v2 .abdk .intro{font-size:15px;line-height:1.5;margin-top:10px}body.v2 .abdk .intro+.intro{margin-top:8px}
body.v2 .abfacts{margin-top:16px;gap:10px}body.v2 .abfacts div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 12px;align-items:start}body.v2 .abfacts span{grid-row:1/3;width:38px;height:38px}body.v2 .abfacts span svg{width:18px;height:18px}
body.v2 .abfacts b{margin:0;font-size:15px}body.v2 .abfacts p{margin-top:2px;font-size:13px;line-height:1.4}
body.v2 .abpeople{gap:10px}body.v2 .abp{flex-direction:row;gap:12px;padding:14px;border-radius:16px}body.v2 .abp .av{width:46px;height:46px;font-size:18px}body.v2 .abp b{font-size:16px}body.v2 .abp b+span{font-size:12.5px;margin-top:1px}body.v2 .abp p{font-size:13.5px;line-height:1.45;margin-top:6px}
body.v2 .abpeople .btn{width:100%;margin-top:2px}
/* questions */
body.v2 .faqgrid{gap:8px;margin-top:18px}body.v2 .fq{gap:12px;padding:14px;border-radius:14px}body.v2 .fq-ic{width:38px;height:38px}body.v2 .fq-ic svg{width:18px;height:18px}body.v2 .fq h3{font-size:15.5px}body.v2 .fq p{font-size:13.5px;line-height:1.45;margin-top:4px}
body.v2 .faqcta{margin-top:12px;padding:16px;gap:12px;flex-direction:row;flex-wrap:wrap;align-items:center}body.v2 .fc-ic{width:42px;height:42px}body.v2 .faqcta b{font-size:18px}body.v2 .faqcta div>span{font-size:14px}body.v2 .faqcta .btn{width:100%}
/* careers */
body.v2 #cr{font-size:28px}body.v2 .car3{gap:18px}body.v2 #careers .prose{margin-top:12px;font-size:15.5px;line-height:1.5;gap:8px}body.v2 #careers .prose+p{margin-top:14px!important}
body.v2 .crows{gap:10px}body.v2 .crows .ur-ic{width:38px;height:38px}body.v2 .crows b{font-size:15px}body.v2 .crows li>div>span{font-size:13.5px}body.v2 .carphoto{min-height:300px;border-radius:18px}
/* contact */
body.v2 .fin2{padding:22px 16px 20px;border-radius:20px}body.v2 .fin2 h2{font-size:26px;margin-bottom:8px}body.v2 .fin2 .intro{font-size:14.5px;line-height:1.45}
body.v2 .fsteps{margin-top:16px;gap:8px}body.v2 .fsteps li{padding:10px 12px;gap:10px;border-radius:12px;align-items:center}body.v2 .fsteps li>span{width:36px;height:36px}body.v2 .fsteps li>span svg{width:16px;height:16px}body.v2 .fsteps b{font-size:14px}body.v2 .fsteps small{font-size:12.5px;line-height:1.35;margin-top:1px}
body.v2 .fin2 .ctas{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}body.v2 .fin2 .ctas .btn{width:100%;min-height:46px;padding:0 10px;font-size:14.5px}body.v2 .fin2 .ctas .btn:first-child{grid-column:1/-1}
body.v2 .fstrip{margin-top:16px;padding-top:14px;grid-template-columns:1fr 1fr;gap:10px}body.v2 .fstrip li{gap:8px;align-items:flex-start}body.v2 .fstrip li>span{width:30px;height:30px}body.v2 .fstrip li>span svg{width:18px;height:18px}body.v2 .fstrip b{font-size:13.5px;line-height:1.25}body.v2 .fstrip small{font-size:12px}
/* footer */
body.v2 footer{padding:28px 0 90px}body.v2 footer .wrap{gap:14px}body.v2 .fcol span{font-size:14px}
}

.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}
.tile{display:flex;flex-direction:column;gap:8px;padding:18px;border-radius:18px;background:var(--card);border:1px solid var(--line);color:inherit}
.tile:hover{border-color:var(--accent)}.tile .ti{width:40px;height:40px;border-radius:12px;background:#E8F2FC;color:var(--accent);display:grid;place-items:center}
.tile b{font:800 15.5px/1.25 var(--hf),Arial,sans-serif;color:var(--ink)}.tile>span:last-child{font-size:13.5px;color:var(--muted);line-height:1.4}
.tmore{text-align:center;margin-top:22px}.talk{text-align:center;margin-top:14px;color:var(--ink2)}.talk a{color:var(--accent);font-weight:700;display:inline-block;padding:10px 6px}
.flinks{grid-column:1/-1;flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:6px;font-weight:600;font-size:14px}
.proof .tl{align-self:center}
.svlist{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.svlist li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.svlist .sic{flex:none;width:40px;height:40px;border-radius:12px;background:#E8F2FC;color:var(--accent);display:grid;place-items:center}.svlist b{display:block;font:800 16px var(--hf),Arial,sans-serif;color:var(--ink)}.svlist div>span{display:block;margin-top:2px;font-size:14px;color:var(--muted);line-height:1.4}
@media(min-width:981px){body.v2 #services{padding:48px 0}body.v2 #services .head h2{font-size:clamp(30px,3vw,42px)}body.v2 .svlist{margin-top:18px}body.v2 .svbtn{padding:9px 8px}}
@media(max-width:980px){.svlist{grid-template-columns:1fr}}
@media(max-width:640px){body.v2 #services{padding:40px 0}body.v2 .svlist{margin-top:14px}body.v2 .svlist li{padding:10px 0;gap:12px}body.v2 .svlist .sic{width:36px;height:36px}body.v2 .svlist b{font-size:15px}body.v2 .svlist div>span{font-size:13.5px}}
.prof .ticks4{list-style:none;margin:18px 0 0;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.18);display:grid;gap:12px}.prof .ticks4 li{display:flex;gap:12px;align-items:center;font-weight:700;font-size:17px;color:#fff}
.prof .ticks4 li svg{flex:none;width:22px;height:22px;padding:4px;border-radius:50%;background:var(--accent2);color:#0b1830;stroke-width:3}
@media(min-width:981px){body.v2 .prof .ticks4{margin-top:14px;padding-top:16px;gap:10px}body.v2 .prof .ticks4 li{font-size:16.5px}}
@media(max-width:640px){body.v2 .prof .ticks4{margin-top:10px;padding-top:12px;gap:8px}body.v2 .prof .ticks4 li{font-size:15px}body.v2 .prof .ticks4 li svg{width:20px;height:20px}}
.updc{text-align:center}.updc .kicker.big{color:var(--accent);margin-bottom:14px}.updc .bigquote{margin:0 auto;max-width:900px}.updc .bigquote .hl{color:var(--accent)}
.updc .intro{margin:18px auto 0;max-width:720px;font-size:18px}.updc .intro+.intro{margin-top:12px}
.updc .tl{max-width:760px;margin:34px auto 0;text-align:left;padding:22px 24px 22px 20px}.updc .tl-steps{gap:12px}.updc .tl-card{padding:12px 16px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center}.updc .tl-ic{width:44px;height:44px}
.updc .tl-card b{font-size:15.5px}.updc .tl-card div>span{margin-top:1px;font-size:13.5px}
@media(min-width:981px){body.v2 .updc{padding:36px 0}body.v2 .updc .bigquote{font-size:clamp(30px,3vw,42px)}body.v2 .updc .intro{font-size:16px;line-height:1.45;margin-top:12px}body.v2 .updc .tl{margin-top:24px;padding:18px 22px 18px 18px}body.v2 .updc .tl-steps{gap:9px}body.v2 .updc .tl-card{padding:9px 14px}body.v2 .updc .kicker.big{margin-bottom:10px}}
@media(max-width:640px){.updc .intro{font-size:15.5px}.updc .tl{margin-top:22px;padding:14px 10px 14px 8px}.updc .tl-card{grid-template-columns:36px minmax(0,1fr);padding:10px 12px;gap:4px 10px}.updc .tl-ic{width:36px;height:36px}.updc .tl-card time{grid-column:2;justify-self:start}body.v2 .updc{padding:40px 0}}
.finband.centre{text-align:center}.finband.centre .kicker.big{color:#fff;margin-bottom:14px}.finband.centre .bigquote{color:#fff;margin:0 auto;max-width:920px}.finband.centre .bigquote .hl{color:#062440}
.finband.centre .intro{margin:20px auto 0;max-width:720px}.finband.centre .ctas{justify-content:center}.finband.centre .abpeople.row{margin-top:36px;text-align:left}.finband.centre .abpeople.row .kicker{grid-column:1/-1;text-align:center;margin:0;color:rgba(255,255,255,.85)}
@media(max-width:640px){.finband.centre .abpeople.row{margin-top:26px}}
@media(min-width:981px){#how .head:has(.oneline){max-width:none}#how .oneline{white-space:nowrap;font-size:clamp(32px,3.6vw,48px)}}
.tl-card.slim{grid-template-columns:48px minmax(0,1fr) auto;padding:12px 16px;align-items:center}.tl-card.slim b{font-size:16px}
.finband .split.j3{align-items:start}.abpeople.onblue .abp{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22)}.abpeople.onblue .abp .av{background:#fff;color:var(--accent)}
.abpeople.onblue .abp b+span{color:#fff;opacity:.85}.abpeople.onblue .abp p{color:rgba(255,255,255,.88)}.abpeople.stack{grid-template-columns:1fr;margin-top:0;align-content:start;gap:12px}.abpeople.stack .kicker{margin:0 0 4px;color:rgba(255,255,255,.85)}
@media(max-width:640px){.tl-card.slim{grid-template-columns:40px minmax(0,1fr) auto;padding:10px 12px}.tl-card.slim .tl-ic{width:40px;height:40px}.tl-card.slim b{font-size:14.5px}.abpeople.stack{margin-top:8px}}
.finband{background:var(--accent);color:#fff;padding:64px 0!important;border-radius:0}.finband .kicker{color:rgba(255,255,255,.85)}.finband h2{color:#fff;max-width:720px}.finband h2 .hl{color:#062440}
.finband .intro{color:rgba(255,255,255,.9);max-width:680px}.finband .ctas{margin-top:26px}.finband .btn.white{background:#fff;color:var(--accent)}.finband .btn.glass{background:rgba(255,255,255,.16);color:#fff}
.finband .talk{text-align:left;margin-top:14px;color:rgba(255,255,255,.85)}.finband .talk a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.abdk.one{grid-template-columns:1fr;gap:26px}.abtop{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end;justify-content:space-between}.abtop>div{max-width:720px}.abtop .intro{margin-top:12px}.abpeople.row{grid-template-columns:1fr 1fr}
@media(max-width:760px){.abpeople.row{grid-template-columns:1fr}.abtop .btn{width:100%}}
@media(max-width:640px){.finband{padding:40px 0!important}.finband .ctas{display:grid;grid-template-columns:1fr;gap:8px}.finband .ctas .btn{width:100%}.finband .talk{font-size:15px}}
.chain3{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:14px;align-items:center;margin-top:30px}.chain3 .node{max-width:none}.chain3 .arr{color:var(--accent);font-size:26px;font-weight:800}
.ocards.lite .ocard p{flex:1}.orows2{display:grid;gap:10px;margin-top:22px}.orow2{display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px 12px;align-items:center;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid #D6E6F6}
.orow2 .bi{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#E8F2FC;color:var(--accent)}.orow2 h3{font-size:17px}.orow2 p{margin:2px 0 0;color:var(--ink2);font-size:14.5px;line-height:1.4}.orow2 .btn{grid-column:1/-1;width:100%}
.faqacc{margin-top:28px;display:grid;gap:8px}.faqacc details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:0 18px}.faqacc summary{list-style:none;cursor:pointer;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700;color:var(--ink)}
.faqacc summary::-webkit-details-marker{display:none}.faqacc summary::after{content:"+";color:var(--accent);font-size:24px;flex:none}.faqacc details[open] summary::after{content:"\2212"}.faqacc p{margin:0 0 16px;color:var(--muted)}
.pg-faq h1{font-weight:800;font-size:clamp(32px,4.4vw,54px);line-height:1.04;letter-spacing:-.03em}.pg-faq h1 .hl{color:var(--accent)}
@media(min-width:641px){.mb-only{display:none}}@media(max-width:640px){.dt-only{display:none}.pg-faq h1{font-size:28px;line-height:1.08}.talk a{padding:10px 4px}.talk{font-size:15px}}
@media(max-width:980px){.chain3{grid-template-columns:1fr;gap:8px}.chain3 .arr{text-align:center;transform:rotate(90deg);font-size:22px}}
/* the section headings become the page h1 on their own pages: same size and colours as the h2 they were */
.pg-services h1,.pg-about h1,.pg-careers h1{font-weight:800;font-size:clamp(32px,4.4vw,54px);line-height:1.04;letter-spacing:-.03em}
.abdk h1{color:#fff}.abdk h1 .hl{color:var(--accent2);display:block}.svc .lead h1 .hl{color:var(--accent);display:block}.split h1 .hl{color:var(--accent)}
@media(min-width:981px){body.v2 .abdk h1{font-size:clamp(30px,3vw,40px)}body.v2.pg-careers #cr{font-size:clamp(30px,2.9vw,42px);line-height:1.08}}
@media(max-width:640px){.pg-services h1,.pg-about h1,.pg-careers h1{font-size:28px;line-height:1.08}}
.pg-services .svc-item summary{cursor:default;pointer-events:none}.pg-services .svc-item summary::after{display:none}.pg-services .svc-item[open] summary{background:transparent}
.pg-services .svc-list{gap:14px}.pg-start .blueband{padding-top:48px}
@media(min-width:981px){body.v2 .proof{gap:56px}body.v2 .proof .prose{margin-top:16px}}
@media(max-width:980px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.tiles{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.tile{padding:12px;border-radius:14px;gap:6px}.tile .ti{width:34px;height:34px}.tile .ti svg{width:18px;height:18px}.tile b{font-size:14px}.tile>span:last-child{font-size:12.5px}.tmore .btn{width:100%}.flinks{gap:6px 14px}}

/* 9 Oct 2026, Louis, third phone round: no border or kicker on the hero card, no stats strip on phones, a shorter hero, tighter quiz,
   centred How we are different, Our approach, Services and Three ways on phones, services as icon tiles, a bigger gap before the contact band. */
body.v2 .prof.why{background:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;border-radius:0!important;padding:0!important}
body.v2 .prof.why .big{text-shadow:0 2px 16px rgba(0,0,0,.4)}body.v2 .prof.why .ticks4{border-top:1px solid rgba(255,255,255,.28)}body.v2 .prof.why .ticks4 li{text-shadow:0 1px 10px rgba(0,0,0,.4)}
body.v2 .headc{text-align:center;max-width:none;margin-left:auto;margin-right:auto}body.v2 #how .headc h2{margin:0 auto}
body.v2 #offers{padding-bottom:76px}
@media(max-width:640px){
body.v2 .hstats{display:none}
body.v2 .hero.photo{padding:18px 0 22px}body.v2 .hero.photo h1{font-size:33px}body.v2 .hero.photo .lede{font-size:14.5px;line-height:1.45;margin:10px 0 14px}
body.v2 .hero .ctas{grid-template-columns:1fr 1fr;gap:8px}body.v2 .hero .ctas .btn{white-space:nowrap;font-size:14.5px;padding:0 8px}body.v2 .hero .ctas .btn:nth-child(2){display:none}body.v2 .hero .ctas .btn:nth-child(3){grid-column:auto}
body.v2 .herogrid{gap:16px}body.v2 .prof.why .big{font-size:21px;margin:0 0 4px}body.v2 .prof .ticks4{margin-top:10px;padding-top:12px;gap:7px}body.v2 .prof .ticks4 li{font-size:15px}
body.v2 .credit{margin-top:8px}
/* Sound familiar and the quiz: tighter, higher */
body.v2 .blueband .quizwrap#quiz{margin-top:22px}body.v2 .quizwrap{gap:10px}body.v2 .quizwrap h2{font-size:23px;line-height:1.1}body.v2 .quizwrap .kicker{margin-bottom:2px;font-size:13.5px}body.v2 .quizwrap .intro{font-size:14px;margin-top:6px}
body.v2 .quiz{padding:12px 12px 14px;border-radius:16px}body.v2 .quiz .qq{font-size:17.5px;margin:2px 0 8px}body.v2 .qopt{min-height:44px;padding:7px 12px;font-size:14.5px}body.v2 .qopts{gap:6px;margin-top:10px}
body.v2 .bigquote{font-size:22px}body.v2 .beats3{margin-top:14px;gap:7px}body.v2 .beats3 .bc{padding:9px 12px}body.v2 .cost{margin-top:12px;font-size:14.5px}body.v2 section.blueband{padding-top:34px;padding-bottom:30px}
/* How we are different: centred, tighter */
body.v2 #how{padding:26px 0 30px}body.v2 #how .headc h2{font-size:28px;line-height:1.1}body.v2 .hsteps{margin-top:22px;gap:12px}body.v2 .hsteps li{grid-template-columns:48px minmax(0,1fr);align-items:center}
/* Our approach: centred */
body.v2 section[aria-labelledby=pf]{padding:32px 0}body.v2 section[aria-labelledby=pf] .head{text-align:center}body.v2 section[aria-labelledby=pf] .head h2{font-size:26px}body.v2 section[aria-labelledby=pf] .intro{margin-left:auto;margin-right:auto}
body.v2 section[aria-labelledby=pf] .chain3 .node{flex-direction:column;align-items:center;text-align:center;padding:12px}body.v2 section[aria-labelledby=pf] .oclose{text-align:center;margin-top:16px}
/* Services: centred icon tiles, name underneath, no sub lines */
body.v2 #services .head{text-align:center}body.v2 #services .head h2{font-size:26px}
body.v2 .svlist{grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}
body.v2 .svlist li{flex-direction:column;align-items:center;text-align:center;gap:8px;padding:14px 8px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
body.v2 .svlist li div>span{display:none}body.v2 .svlist b{font-size:14px;line-height:1.25}body.v2 .svlist .sic{width:40px;height:40px}
/* Three ways: centred, more space below */
body.v2 #offers{padding-top:36px;padding-bottom:64px}body.v2 #offers .head{text-align:center}body.v2 #offers .head h2{font-size:27px}body.v2 #offers .head .intro{margin-left:auto;margin-right:auto}
body.v2 .orow2{grid-template-columns:1fr;justify-items:center;text-align:center;gap:6px;padding:16px 14px}body.v2 .orow2 .bi{margin:0 auto}body.v2 .orow2 .btn{margin-top:6px}
}

/* 9 Oct 2026, Louis: no numbers on the five steps (they read as notifications); services tiles open a pop-up */
body.v2 .hsteps .hn{display:none}body.v2 .hsteps::before{display:none}body.v2 .hsteps .hic{margin-top:0}
.svhint{margin:8px 0 0;font-size:14.5px;color:var(--muted)}
body.v2 .svlist li{padding:0}.svbtn{display:flex;gap:14px;align-items:flex-start;width:100%;padding:12px 8px;margin:0;background:none;border:0;border-radius:12px;text-align:left;cursor:pointer;font:inherit;color:inherit}
.svbtn:hover{background:rgba(5,104,201,.07)}.svbtn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.svbtn .svt{display:block}.svbtn .svt b{display:block;font:800 16px var(--hf),Arial,sans-serif;color:var(--ink)}.svbtn .svt span{display:block;margin-top:2px;font-size:14px;color:var(--muted);line-height:1.4}
.qmodal.sv .qm-box{width:min(560px,100%);height:auto;max-height:88vh;overflow:auto;border-radius:24px}
.sv-body{padding:6px 26px 26px}.sv-body h3{font-size:26px;margin:4px 0 6px}.sv-line{margin:0 0 12px;font-weight:700;color:var(--accent)}.sv-body p{margin:0 0 10px;color:var(--ink2);line-height:1.55}
.sv-body .svsup{margin-top:12px;padding:14px 16px;border-radius:14px;background:#EEF5FC}.sv-body .svsup b{display:block;margin-bottom:8px;font-size:14.5px}.sv-body .svsup ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.sv-body .svsup li{font-size:14px;color:var(--ink2);padding-left:18px;position:relative}
.sv-body .svsup li::before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.sv-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.sv-cta .btn{flex:1 1 200px}
@media(max-width:640px){body.v2 .svbtn{flex-direction:column;align-items:center;text-align:center;gap:8px;padding:14px 8px;border:1px solid var(--line);border-radius:16px;background:var(--card);min-height:44px}
body.v2 .svlist li{border:0;padding:0}body.v2 .svbtn .svt span{display:none}body.v2 .svbtn .svt b{font-size:14px;line-height:1.25}
body.v2 #services .svhint{text-align:center;font-size:13.5px}
.qmodal.sv{padding:0;place-items:end center}.qmodal.sv .qm-box{width:100%;max-height:86vh;border-radius:22px 22px 0 0;height:auto}.sv-body{padding:4px 18px 22px}.sv-body h3{font-size:22px}.sv-body .svsup ul{grid-template-columns:1fr}.sv-cta .btn{flex:1 1 100%}}

/* 9 Oct 2026, Louis: more calls to action; careers photo lifted into the text on phones */
body.v2 .car3{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}body.v2 .car3 .carphoto{min-height:440px}.ctarow{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:28px auto 0}.ctarow p{flex-basis:100%;margin:0 0 2px;text-align:center;font-weight:700;font-size:17px;color:var(--ink)}
@media(max-width:640px){body.v2 .ctarow{margin-top:20px}body.v2 .ctarow .btn{flex:1 1 100%}
body.v2 #careers{padding:28px 0 36px}body.v2 .car3{display:flex;flex-direction:column;gap:0}
body.v2 .car3 .carphoto{order:-1;min-height:380px;border-radius:24px;background-position:center 46%}
body.v2 .car3 .cartext{position:relative;z-index:1;background:#fff;border-radius:24px;padding:22px 18px 22px;margin:-34px 14px 0;box-shadow:0 18px 40px rgba(6,36,64,.14);text-align:center}
body.v2 .car3 .cartext .ctas{display:grid;grid-template-columns:1fr;justify-content:center}body.v2 .car3 .cartext .ctas .btn{width:100%;font-size:15px;white-space:nowrap;padding:0 10px}
body.v2 #cr{font-size:26px}}

/* 9 Oct 2026, Louis: no little blue titles anywhere, and every button the same size (the header buttons stay compact, they are navigation) */
body.v2 .kicker,body.v2 .kicker.big{display:none!important}
body.v2 .btn:not(.sm){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;min-height:52px;min-width:210px;padding:0 26px;font-size:16px;font-weight:700;line-height:1;white-space:nowrap;border-radius:999px}
body.v2 .ctarow{margin-top:26px}body.v2 .ctarow .btn{flex:0 1 240px}body.v2 .ctas .btn{flex:0 1 auto}
body.v2 .finband .ctas{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}body.v2 .finband .ctas .btn{flex:0 1 240px}
@media(max-width:640px){
body.v2 .btn:not(.sm){height:48px;min-height:48px;min-width:0;padding:0 16px;font-size:15px}
body.v2 .ctarow{gap:8px;margin-top:18px}body.v2 .ctarow .btn,body.v2 .finband .ctas .btn,body.v2 .car3 .cartext .ctas .btn{flex:1 1 100%;width:100%}
body.v2 .hero .ctas{grid-template-columns:1fr 1fr}body.v2 .hero .ctas .btn{width:100%;padding:0 8px;font-size:14.5px;min-width:0}
body.v2 .finband .ctas{flex-direction:column}
}

/* 10 Oct 2026: service pages, who we help, contact, insights, legal pages */
.subpage section{padding:44px 0}.subpage .finband{padding:64px 0}.subpage .pghero{padding:56px 0 28px}.subpage footer{padding-top:44px}.pghero{padding:56px 0 28px}.pghero h1{font-family:var(--hf),Arial,sans-serif;font-weight:800;font-size:clamp(32px,4.2vw,54px);line-height:1.05;letter-spacing:-.03em;color:var(--ink)}
.pghero .intro{max-width:720px;margin-top:16px;font-size:19px}.pghero .ctarow{justify-content:flex-start;margin-top:24px}
.svcsec{padding:40px 0;border-top:1px solid var(--line)}.svcgrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:44px;align-items:start}
.svcsec h2{font-size:clamp(26px,3vw,36px)}.svcsec .svline{margin:10px 0 14px;font-weight:700;font-size:18px;color:var(--accent)}.svcsec p{color:var(--ink2);line-height:1.6;margin:0 0 12px}
.svcard,.legal,.pghero,.svcsec,.routes{overflow-wrap:anywhere}.svcard li a{display:block;padding:11px 0}.svcard{padding:24px;border-radius:22px;background:var(--card);border:1px solid var(--line)}.svcard h3{font-size:19px;margin-bottom:12px}.svcard ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.svcard li{padding-left:22px;position:relative;color:var(--ink2);font-size:15.5px}.svcard li::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:50%;background:var(--accent)}
.svcard .btn{margin-top:16px}.svcard p{margin:0 0 6px}
.related{padding:40px 0}.related h2{font-size:26px;margin-bottom:16px}.related ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.related a{display:block;padding:16px 18px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-weight:700;color:var(--ink)}.related a:hover{border-color:var(--accent)}
.aud{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px}.aud .svcard h3{font-size:21px}.aud .svcard p{color:var(--ink2);line-height:1.55}
.routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.routes .svcard b{display:block;font-size:19px;color:var(--ink);margin-bottom:4px}
.legal{max-width:760px;padding:48px 0 64px}.legal h1{font-family:var(--hf),Arial,sans-serif;font-weight:800;font-size:clamp(30px,4vw,44px);line-height:1.1}.legal h2{font-size:22px;margin:30px 0 8px}.legal p,.legal li{color:var(--ink2);line-height:1.65}.legal ul{padding-left:20px}.legal .upd{color:var(--muted);margin-top:8px}
.topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.topics div{padding:18px 20px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-weight:700;color:var(--ink);line-height:1.35}
.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}
@media(max-width:900px){.svcgrid,.aud,.routes,.topics,.related ul{grid-template-columns:minmax(0,1fr)}.svcgrid{gap:20px}.svcsec h2{overflow-wrap:anywhere;hyphens:auto}}
@media(max-width:640px){.subpage section{padding:30px 0}.subpage .finband{padding:40px 0}.subpage .pghero{padding:32px 0 14px}.pghero{padding:32px 0 14px}.pghero .intro{font-size:16.5px}.pghero .ctarow{justify-content:center}.svcsec{padding:28px 0}.related{padding:28px 0}.legal{padding:28px 0 44px}}

@media(min-width:981px){body.v2 .quizwrap{align-items:center}}
@media(min-width:720px){body.v2 .oclose{max-width:none;white-space:nowrap}}
body.v2 .headc h2,body.v2 .headc p{margin-left:auto;margin-right:auto}

/*logo4*/body.v2 .top .logo-img img{height:40px;width:auto}@media(max-width:640px){body.v2 .top .logo-img img{height:27px;width:auto}}

/* careers without a photo (9 Nov 2026) */
body.v2 .car3.nophoto{display:block;max-width:760px;margin-inline:auto}body.v2 .car3.nophoto .cartext{margin:0;padding:0;box-shadow:none;background:none;text-align:center}body.v2 .car3.nophoto .ctas{justify-content:center}
