/* sections.css — internal pages, restyled to match the home (base.css).
   Loads AFTER base.css, which supplies the palette tokens, header, footer,
   .wrap, .pill, .mono-link, ::selection, etc. This file only styles page-body content. */

/* kill the old grain/dark theme so pages sit on paper like the home */
body.internal-page,body.blog-index,body.resources-page{background-color:#FFFAF2;color:var(--ink);font-family:var(--sans)}
main{display:block}
*{font-style:normal!important}

/* text-selection rule: yellow backgrounds get a blue highlight with white text */
.section.yellow ::selection,.acb-close-sub ::selection{background:var(--blue);color:#fff}
.section.yellow ::-moz-selection,.acb-close-sub ::-moz-selection{background:var(--blue);color:#fff}

/* ---------- section colour rhythm (like the home) ---------- */
.section.tint{background:var(--tint)}
.section.yellow{background:var(--yellow)}
.section.pink{background:var(--pink)}
.section.paper{background:var(--paper)}
.section.blue{background:var(--blue);color:#fff}
.section.blue .eyebrow,.section.blue .side-note{color:#fff}
.section.blue .prose p,.section.blue .section-head p{color:rgba(255,255,255,.85)}
.section.blue .prose strong,.section.blue .prose h2,.section.blue h2{color:#fff}
.section.ink{background:var(--ink);color:#fff}
.section.ink .eyebrow,.section.ink .side-note{color:var(--yellow)}
.section.ink .prose p,.section.ink .section-head p{color:rgba(255,255,255,.82)}
.section.ink .prose h2,.section.ink h2,.section.ink .prose strong{color:#fff}
.section.blue .btn{background:#fff;color:var(--blue);border-color:#fff}
.section.blue .btn:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.section.blue .btn-out{color:#fff;border-color:rgba(255,255,255,.6)}
.section.blue .btn-out:hover{background:#fff;color:var(--blue);border-color:#fff}
.section.blue .prose a:not(.btn){color:#fff}

/* ---------- two-column hero with image (like the home hero) ---------- */
.sub-hero{background:var(--blue);color:#fff}
.sub-hero .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sub-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(18.96px,4.25vw,50.56px);align-items:center;min-height:clamp(265.46px,51vh,404.5px)}
.sub-hero-copy{padding:clamp(25.28px,5.1vw,50.56px) 0}
.sub-hero-copy .mono{color:#fff;opacity:.85;display:block;margin-bottom:11.38px}
.sub-hero-copy h1{font-family:var(--sans);font-weight: 400;font-size:clamp(21.49px,3.74vw,41.72px);line-height:1;letter-spacing:-.04em;margin:0;max-width:16ch}
.sub-hero-copy p{font-size:clamp(10.74px,1.19vw,13.9px);line-height:1.45;color:rgba(255,255,255,.9);max-width:46ch;margin:15.17px 0 0}
.sub-hero-copy .cta{margin-top:18.96px}
.sub-hero-copy .btn{background:#fff;color:var(--blue);border-color:#fff}
.sub-hero-copy .btn:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.sub-hero-copy .btn-out{color:#fff;border-color:rgba(255,255,255,.7)}
.sub-hero-copy .btn-out:hover{background:#fff;color:var(--blue);border-color:#fff}
.sub-hero-img{align-self:stretch;min-height:100%;overflow:hidden}
.sub-hero-img img{width:100%;height:100%;min-height:clamp(202.26px,51vh,404.5px);object-fit:cover;display:block}
@media(max-width:774px){
  .sub-hero-grid{grid-template-columns:1fr;gap:0;min-height:0}
  .sub-hero-copy{padding:clamp(21.49px,6.8vw,34.13px) 0 0}
  .sub-hero-img img{min-height:47.6vh;margin-top:clamp(17.7px,5.1vw,27.81px)}
}

/* ---------- section rhythm (match the home: generous, even padding) ---------- */
.section{padding:clamp(40.46px,7.65vw,89.76px) 0}
.page-hero,.blog-hero{padding:clamp(40.46px,7.65vw,94.81px) 0 clamp(18.96px,3.4vw,35.39px)}

/* full-bleed image beside text — image touches the section edge, section height = content */
.flush-sec{overflow:hidden;padding:0!important}
.flush{display:grid;grid-template-columns:1.04fr .96fr;align-items:stretch;gap:clamp(20.82px,4vw,47.59px)}
.flush .copy{padding:clamp(29.74px,5.5vw,59.49px) 0 clamp(29.74px,5.5vw,59.49px) var(--pad);max-width:56ch}
.flush-img{align-self:stretch;overflow:hidden}
.flush-img img{width:100%;height:100%;object-fit:cover;display:block;min-height:clamp(208.21px,38vw,356.92px)}
.flush.reverse .copy{padding-left:0;padding-right:var(--pad)}
.flush.reverse .flush-img{order:-1}
@media(max-width:774px){.flush{grid-template-columns:1fr;gap:0}.flush .copy,.flush.reverse .copy{padding:clamp(20.82px,7vw,32.72px) var(--pad) 0}.flush-img img{min-height:60vw}}

/* text + image split, like the home's two-column blocks */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(21.49px,4.25vw,55.62px);align-items:center}
.split .prose{max-width:52ch}
.split-img{border-radius:5.06px;overflow:hidden;background:var(--tint);aspect-ratio:4/5}
.split-img img{width:100%;height:100%;object-fit:cover;display:block}
.split.reverse .split-img{order:-1}
@media(max-width:774px){.split{grid-template-columns:1fr;gap:20.22px}.split.reverse .split-img{order:0}}
.page-hero .wrap,.blog-hero .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.page-hero h1,.blog-hero h1{font-family:var(--sans);font-weight: 400;font-size:clamp(24.02px,5.1vw,58.15px);line-height:.98;letter-spacing:-.045em;max-width:18ch;margin:8.85px 0 0}
.page-hero p,.blog-hero p{font-size:clamp(10.74px,1.275vw,13.9px);color:var(--ink-soft);max-width:52ch;margin-top:13.9px;line-height:1.5}

/* eyebrows / small labels */
.eyebrow,.side-note,.faq-category-label,.kick{font-family:var(--sans);font-size:7.58px;font-weight: 400;letter-spacing:0.117em;text-transform:uppercase;color:var(--blue)}

/* ---------- two-column content grid ---------- */
.content-grid{display:grid;grid-template-columns:minmax(0,.32fr) minmax(0,1fr);gap:clamp(17.7px,4.25vw,56.88px);align-items:start}
.content-grid .side-note{padding-top:5.06px}
.prose{max-width:70ch}
.prose h2,.section-head h2,h2.display,.display{font-family:var(--sans);font-weight: 400;font-size:clamp(18.96px,3.74vw,41.72px);line-height:1;letter-spacing:-.04em;margin:0 0 13.9px}
.prose h3{font-size:clamp(12.65px,1.7vw,17.7px);font-weight: 400;letter-spacing:-.01em;margin:18.96px 0 6.32px}
.prose p{font-size:clamp(10.11px,1.062vw,12.01px);line-height:1.55;color:var(--ink-soft);margin:0 0 11.38px}
.prose p.lead{font-size:clamp(12.65px,1.7vw,18.96px);line-height:1.35;color:var(--ink)}
.prose strong{color:var(--ink);font-weight: 400}
.prose a:not(.btn){color:var(--ink);text-decoration:underline;text-underline-offset:2.22px}
.prose a:not(.btn):hover{color:var(--blue)}
.content-photo{margin:18.96px 0 0;border-radius:5.06px;overflow:hidden;background:var(--tint)}
.content-photo img{width:100%;display:block}

/* section head (label + heading/intro) */
.section-head{display:grid;grid-template-columns:minmax(0,.32fr) minmax(0,1fr);gap:clamp(17.7px,4.25vw,56.88px);align-items:start;margin-bottom:clamp(18.96px,3.4vw,37.93px)}
.section-head>div>p,.section-head p{font-size:clamp(10.74px,1.19vw,13.28px);color:var(--ink-soft);line-height:1.5;margin-top:10.11px;max-width:52ch}

/* ---------- callouts ---------- */
.callout{background:var(--tint);border-radius:6.32px;padding:clamp(15.17px,2.55vw,25.28px);margin-top:18.96px}
.callout h2,.callout h3{margin-top:0;font-weight: 400}
.callout p{color:var(--ink-soft)}
.callout.coral{background:var(--yellow)}
.callout.coral p{color:var(--ink)}

/* ---------- price / offer cards ---------- */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11.38px;align-items:stretch}
.price-card{background:#fff;border:0.75px solid var(--line);border-radius:7.58px;padding:clamp(16.43px,2.55vw,26.54px);display:flex;flex-direction:column}
.price-card .eyebrow{margin-bottom:8.85px}
.price-card h3{font-size:clamp(13.9px,1.87vw,18.96px);font-weight: 400;letter-spacing:-.01em;margin:0 0 7.58px}
.price-card .amount{font-size:clamp(21.49px,3.4vw,35.39px);font-weight: 400;letter-spacing:-.03em;line-height:1;margin:0 0 10.11px;color:var(--blue)}
.price-card p{font-size:9.48px;line-height:1.5;color:var(--ink-soft);margin:0 0 11.38px}
.price-card .btn{margin-top:auto;align-self:flex-start}
.price-card.featured{background:var(--blue);border-color:var(--blue);color:#fff}
.price-card.featured .eyebrow{color:#fff}
.price-card.featured .amount{color:#fff}
.price-card.featured p{color:rgba(255,255,255,.85)}
.price-card.featured .btn{background:#fff;color:var(--blue);border-color:#fff}
.price-card.featured .btn:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.access-note{max-width:min(565.12px,74%);margin:clamp(17.7px,2.89vw,29.07px) auto 0;background:var(--yellow);border-radius:8.85px;padding:clamp(15.17px,2.55vw,24.02px);font-size:10.11px;line-height:1.6;text-align:center}
.access-note strong{display:block;font-size:clamp(12.01px,1.53vw,15.17px);font-weight: 400;margin-bottom:5.06px}
.access-note a{color:var(--ink);text-decoration:underline;text-underline-offset:2.22px}
@media(max-width:630px){.access-note{max-width:100%}}

/* ---------- offer accordion ---------- */
.offer-list{margin-top:6.32px;border-top:0.75px solid var(--line)}
.offer-row{border-bottom:0.75px solid var(--line)}
.offer-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12.65px;background:none;border:0;cursor:pointer;padding:12.65px 0;font-family:var(--sans);font-size:clamp(10.11px,1.275vw,13.28px);font-weight: 400;color:var(--ink);text-align:left}
.offer-toggle:hover{color:var(--blue)}
.offer-body{max-height:0;overflow:hidden;transition:max-height .3s ease}
.offer-row.open .offer-body{max-height:252.82px}
.offer-body>div{padding:0 0 13.9px}
.offer-body p{font-size:9.48px;line-height:1.55;color:var(--ink-soft)}

/* ---------- method strip ---------- */
.method-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8.85px}
.method-step{background:var(--tint);border-radius:6.32px;padding:clamp(12.65px,1.7vw,18.96px)}
.method-step b{display:block;font-size:clamp(18.96px,2.55vw,29.07px);font-weight: 400;color:var(--blue);line-height:1;margin-bottom:7.58px}
.method-step h3{font-size:clamp(10.74px,1.275vw,13.9px);font-weight: 400;margin:0 0 5.06px}
.method-step p{font-size:8.85px;line-height:1.45;color:var(--ink-soft);margin:0}

/* ---------- stats ---------- */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:11.38px}
.stat{background:var(--tint);border-radius:7.58px;padding:clamp(16.43px,2.55vw,27.81px)}
.stat.big{background:var(--blue);color:#fff}
.stat strong{display:block;font-size:clamp(35.39px,6.8vw,75.84px);font-weight: 400;letter-spacing:-.05em;line-height:.85;margin-bottom:8.85px}
.stat p{font-size:9.48px;line-height:1.45;color:var(--ink-soft);margin:0}
.stat.big p{color:rgba(255,255,255,.9)}

/* ---------- buttons ---------- */
.btn,.btn-fill,.btn-out{display:inline-flex;align-items:center;gap:5.06px;font-family:var(--sans);font-size:7.58px;font-weight: 400;letter-spacing:0.099em;text-transform:uppercase;padding:8.85px 16.43px;border-radius:63.2px;border:0.75px solid var(--blue);background:var(--blue);color:#fff;transition:.18s;cursor:pointer}
.btn:hover,.btn-fill:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.btn.dark{background:var(--ink);border-color:var(--ink)}
.btn.dark:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}
.btn-out{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-out:hover{background:var(--ink);color:#fff}
.cta{display:flex;gap:8.85px;flex-wrap:wrap;margin-top:16.43px}

/* ---------- blog index ---------- */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11.38px}
.blog-card{display:flex;flex-direction:column;background:#fff;border:0.75px solid var(--line);border-radius:7.58px;overflow:hidden;transition:.18s}
.blog-card:hover{border-color:var(--blue)}
.blog-card .blog-art{aspect-ratio:16/10;background:var(--blue);color:#fff;display:flex;align-items:flex-end;padding:12.65px;font-family:var(--sans);font-weight: 400;font-size:clamp(11.38px,1.36vw,15.17px);letter-spacing:-.01em}
.blog-card.featured{grid-column:span 2}
.blog-card.featured .blog-art{background:var(--ink)}
.blog-copy{padding:13.9px 15.17px 16.43px}
.blog-meta{font-size:6.95px;letter-spacing:0.09em;text-transform:uppercase;color:var(--blue);margin:0 0 7.58px}
.blog-card h2{font-family:var(--sans);font-weight: 400;font-size:clamp(12.01px,1.445vw,15.8px);line-height:1.12;letter-spacing:-.02em;margin:0 0 7.58px}
.blog-card p{font-size:8.85px;line-height:1.5;color:var(--ink-soft);margin:0}

/* ---------- resources list ---------- */
.rescat{max-width:var(--wrap);margin:clamp(25.28px,3.825vw,41.72px) auto 0;padding:0 var(--pad)}
.rhead{display:flex;align-items:baseline;gap:8.85px;flex-wrap:wrap;margin:0 0 12.65px;padding-bottom:8.85px;border-bottom:0.75px solid var(--line)}
.rhead h3{font-family:var(--sans);font-weight: 400;font-size:clamp(12.65px,1.87vw,18.96px);letter-spacing:-.02em;margin:0}
.rhead .note{color:var(--ink-soft)}
.reslist{display:grid;grid-template-columns:repeat(3,1fr);gap:7.58px}
.resitem{display:flex;flex-direction:column;align-items:flex-start;gap:3.79px;padding:11.38px 12.65px;background:#fff;border:0.75px solid var(--line);border-radius:8.85px;min-height:61.94px;transition:.16s}
a.resitem{cursor:pointer}
a.resitem:hover{border-color:var(--blue);transform:translateY(-2.48px);box-shadow:0 8.92px 22.31px rgba(8,19,33,.07)}
.resitem b{display:block;font-weight: 400;color:var(--ink);font-size:9.48px;line-height:1.25}
.resitem>span{display:block;color:var(--ink-soft);font-size:8.22px;line-height:1.45}
.resitem .tag{margin-top:auto;font-size:6.32px;font-weight: 400;letter-spacing:0.063em;text-transform:uppercase;color:var(--blue);background:var(--tint);padding:2.53px 6.32px;border-radius:63.2px;line-height:1.3}
@media(max-width:810px){.reslist{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.reslist{grid-template-columns:1fr}}

/* ---------- faq ---------- */
.faq-category{margin-top:clamp(18.96px,3.4vw,34.13px)}
.faq-q{width:100%;text-align:left;background:none;border:0;border-bottom:0.75px solid var(--line);padding:12.65px 0;font-family:var(--sans);font-size:clamp(10.11px,1.19vw,12.65px);font-weight: 400;color:var(--ink);cursor:pointer}
.faq-q:hover{color:var(--blue)}

/* ---------- big centred text hero ---------- */
.center-hero{padding:clamp(45.51px,9.35vw,106.18px) 0 clamp(31.6px,5.95vw,65.74px);text-align:center}
.center-hero .mono{color:var(--blue);display:block;margin-bottom:13.9px}
.center-hero h1{font-family:var(--sans);font-weight: 400;font-size:clamp(20.22px,4.08vw,46.77px);line-height:1.05;letter-spacing:-.04em;margin:0 auto}
.center-hero h1 .ln{white-space:nowrap}
.center-hero p{font-size:clamp(11.38px,1.317vw,14.54px);color:var(--ink-soft);max-width:50ch;margin:17.7px auto 0;line-height:1.5}
.center-hero .cta{justify-content:center;margin-top:21.49px}
@media(max-width:540px){.center-hero h1 .ln{white-space:normal}.center-hero h1{font-size:clamp(17.7px,6.8vw,25.28px)}}

/* ---------- centred section head ---------- */
.section-head.center{display:block;text-align:center;margin-bottom:clamp(18.96px,3.4vw,34.13px)}
.section-head.center>div{max-width:none}
.section-head.center p{margin-left:auto;margin-right:auto}

/* ---------- sound-familiar split (text left, tags right) ---------- */
.tagsplit{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(18.96px,4.25vw,50.56px);align-items:start}
.tagsplit .copy h2{font-size:clamp(15.17px,2.38vw,25.28px);font-weight: 400;letter-spacing:-.025em;line-height:1.05;margin:8.85px 0 0}
.tagsplit .copy p{font-size:clamp(9.48px,1.02vw,11.38px);line-height:1.5;color:var(--ink);margin:11.38px 0 0;max-width:40ch}
@media(max-width:738px){.tagsplit{grid-template-columns:1fr;gap:16.43px}}

/* ---------- sound-familiar: flush image left, text + tags right ---------- */
.familiar-sec{background:var(--yellow);overflow:hidden}
.familiar-sec ::selection{background:var(--blue);color:#fff}
.familiar-sec ::-moz-selection{background:var(--blue);color:#fff}
.familiar{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:clamp(17.7px,3.4vw,41.72px)}
.familiar-img{align-self:stretch}
.familiar-img img{width:100%;height:100%;object-fit:cover;min-height:clamp(227.54px,39.1vw,379.22px);display:block}
.familiar .content{padding:clamp(25.28px,5.1vw,55.62px) var(--pad) clamp(25.28px,5.1vw,55.62px) 0}
.familiar .content .eyebrow{display:block;margin-bottom:7.58px}
.familiar .content h2{font-size:clamp(16.43px,2.55vw,27.81px);font-weight: 400;letter-spacing:-.03em;line-height:1.05;margin:0}
.familiar .content>p{font-size:clamp(10.11px,1.105vw,12.01px);line-height:1.5;color:var(--ink);margin:10.11px 0 16.43px;max-width:46ch}
@media(max-width:738px){.familiar{grid-template-columns:1fr}.familiar-img img{min-height:47.6vw}.familiar .content{padding:clamp(17.7px,5.95vw,27.81px) var(--pad)}}

/* ---------- the arc: sticky title + stacking step cards (CRAFT) ---------- */
.arc-card .letter{font-size:clamp(18.96px,2.55vw,29.07px);font-weight: 400;color:var(--blue);line-height:1;margin-bottom:3.79px}
.arc{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(18.96px,4.25vw,50.56px);align-items:start}
.arc-head{position:sticky;top:75.84px}
.arc-head h2{font-size:clamp(18.96px,3.4vw,36.66px);font-weight: 400;letter-spacing:-.035em;line-height:1;margin:8.85px 0 0}
.arc-head p{font-size:clamp(9.48px,1.02vw,11.38px);color:var(--ink-soft);line-height:1.5;margin:11.38px 0 0;max-width:34ch}
.arc-steps{display:flex;flex-direction:column;gap:11.38px}
.arc-sec{background:var(--tint)}
.arc-card{position:sticky;top:75.84px;background:#fff;border:0.75px solid var(--line);border-radius:10.11px;padding:clamp(15.17px,2.38vw,25.28px);box-shadow:0 -1.66px 22.31px rgba(8,19,33,.08)}
.arc-card:nth-child(1){top:70.79px}
.arc-card:nth-child(2){top:79.63px}
.arc-card:nth-child(3){top:88.48px}
.arc-card:nth-child(4){top:97.34px}
.arc-card:nth-child(5){top:106.18px}
.arc-card:nth-child(6){top:115.04px}
.arc-card .n{font-size:7.58px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue)}
.arc-card h3{font-size:clamp(12.65px,1.7vw,17.7px);font-weight: 400;letter-spacing:-.01em;margin:6.32px 0 0}
.arc-card p{font-size:9.48px;line-height:1.55;color:var(--ink-soft);margin:7.58px 0 0;max-width:52ch}
.arc-card .q{margin:8.85px 0 0;font-size:8.85px;line-height:1.5;color:var(--ink)}
.arc-card .q b{color:var(--blue);font-weight: 400}
@media(max-width:738px){
  .arc{grid-template-columns:1fr;gap:15.17px}
  .arc-head{position:static}
  .arc-card{position:static}
}

/* ---------- compact band (e.g. sound-familiar tags) ---------- */
.section.compact{padding:clamp(21.49px,4.25vw,37.93px) 0}
.tagline-head{margin-bottom:12.65px}
.tagline-head .eyebrow{display:block;margin-bottom:6.32px}
.tagline-head h2{font-size:clamp(12.65px,1.87vw,18.96px);font-weight: 400;letter-spacing:-.02em;margin:0;max-width:26ch}
.section.compact .acb-block-tags span{padding:4.42px 6.95px;font-size:clamp(7.58px,0.807vw,8.85px)}

/* ---------- journey steps ---------- */
.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:10.11px}
.journey .step{background:#fff;border-radius:7.58px;padding:clamp(13.9px,2.04vw,20.22px);display:flex;flex-direction:column;gap:7.58px}
.journey .step .n{font-size:7.58px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue)}
.journey .step h3{font-size:clamp(11.38px,1.36vw,14.54px);font-weight: 400;letter-spacing:-.01em;margin:0}
.journey .step p{font-size:8.85px;line-height:1.5;color:var(--ink-soft);margin:0}
@media(max-width:810px){.journey{grid-template-columns:1fr 1fr}}
@media(max-width:504px){.journey{grid-template-columns:1fr}}

/* ---------- support / value trio ---------- */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:11.38px}
.trio.two{grid-template-columns:1fr 1fr;max-width:743.58px;margin:0 auto}
.trio .card{background:#fff;border:0.75px solid var(--line);border-radius:8.85px;padding:clamp(16.43px,2.55vw,26.54px);display:flex;flex-direction:column;gap:7.58px}
.trio .card h3{font-size:clamp(13.9px,1.87vw,18.96px);font-weight: 400;letter-spacing:-.015em;margin:0;color:var(--ink)}
.trio .card p{font-size:9.48px;line-height:1.5;color:var(--ink-soft);margin:0}
.trio .card.hl{background:var(--blue);border-color:var(--blue)}
.trio .card.hl h3{color:#fff}
.trio .card.hl p{color:rgba(255,255,255,.9)}
@media(max-width:738px){.trio,.trio.two{grid-template-columns:1fr}}

/* stronger "what you leave with" cards */
.leave .card{align-items:flex-start}
.leave .card .n{width:25.28px;height:21.49px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:9.48px;font-weight: 400}
.leave .card h3{font-size:clamp(15.17px,2.21vw,21.49px)}

/* ---------- faq accordion ---------- */
.faq-list{max-width:654.35px;margin:0 auto;border-top:0.75px solid var(--line)}
.faq-item{border-bottom:0.75px solid var(--line)}
.faq-item .faq-q{width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:13.9px 0;font-family:var(--sans);font-size:clamp(10.74px,1.36vw,13.9px);font-weight: 400;color:var(--ink);display:flex;justify-content:space-between;gap:12.65px;align-items:center;transition:color .25s ease}
.faq-item .faq-q::after{content:"+";display:inline-block;font-size:15.17px;color:var(--blue);line-height:1;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.faq-item.open .faq-q::after{transform:rotate(135deg)}
.faq-item .faq-q:hover{color:var(--blue)}
.faq-a{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s cubic-bezier(.16,1,.3,1),opacity .3s ease}
.faq-item.open .faq-a{grid-template-rows:1fr;opacity:1}
.faq-a>p{overflow:hidden;min-height:0;padding:0 0 13.9px;font-size:9.48px;line-height:1.55;color:var(--ink-soft);margin:0;max-width:74ch}

/* ---------- 7+1 map hero-lead ---------- */
.blockmap-sec{padding-top:clamp(35.69px,6.5vw,77.33px)}
.blockmap-head{margin:0 0 clamp(20.82px,3.6vw,38.66px);max-width:64ch}
.blockmap-head .mono{color:var(--blue);display:block;margin-bottom:9.67px}
.blockmap-head h1{font-family:var(--sans);font-weight: 400;font-size:clamp(29.74px,6vw,68.41px);line-height:.94;letter-spacing:-.045em;margin:0}
.blockmap-head p{font-size:clamp(11.9px,1.35vw,15.61px);color:var(--ink-soft);line-height:1.5;margin:13.38px 0 0;max-width:62ch}
.blockmap.big a{min-height:clamp(141.28px,19vw,208.21px);padding:clamp(17.85px,2.4vw,25.28px)}
.blockmap.big h3{font-size:clamp(16.36px,2.1vw,23.05px)}
.blockmap.big .sci{font-size:8.92px}
.blockmap.big p{font-size:11.15px}
.blockmap.big .arr{font-size:17.85px}

/* ---------- 7+1 block map grid ---------- */
.blockmap{display:grid;grid-template-columns:repeat(4,1fr);gap:8.85px}
.blockmap a{display:flex;flex-direction:column;gap:5.06px;background:#fff;border:0.75px solid var(--line);border-radius:10.11px;padding:clamp(12.65px,1.7vw,18.96px);transition:.16s;min-height:132.72px}
.blockmap a:hover{border-color:var(--blue);transform:translateY(-2.48px);box-shadow:0 10.41px 29.74px rgba(8,19,33,.08)}
.blockmap .sci{font-size:6.95px;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue)}
.blockmap h3{font-size:clamp(11.38px,1.36vw,14.54px);font-weight: 400;letter-spacing:-.015em;margin:1.26px 0 0;color:var(--ink)}
.blockmap p{font-size:8.85px;line-height:1.45;color:var(--ink-soft);margin:0}
.blockmap .arr{margin-top:auto;color:var(--blue);font-size:12.65px;line-height:1}
.blockmap a.plus1{background:var(--ink);border-color:var(--ink)}
.blockmap a.plus1 .sci{color:var(--yellow)}
.blockmap a.plus1 h3{color:#fff}
.blockmap a.plus1 p{color:rgba(255,255,255,.82)}
.blockmap a.plus1 .arr{color:var(--yellow)}
@media(max-width:810px){.blockmap{grid-template-columns:1fr 1fr}}
@media(max-width:504px){.blockmap{grid-template-columns:1fr}}

/* closing CTA band (like home .acb-close) */
.acb-close-sub{background:var(--yellow);text-align:center;padding:clamp(40.46px,8.5vw,94.81px) 0}
.acb-close-sub h2{font-family:var(--sans);font-weight: 400;font-size:clamp(24.02px,5.95vw,69.53px);line-height:.9;letter-spacing:-.05em;max-width:16ch;margin:0 auto}
.acb-close-sub .cta{justify-content:center;margin-top:clamp(17.7px,3.4vw,30.34px)}

/* ---------- resources page ---------- */
.resources-page main>section,.blog-index main>section{padding-left:0;padding-right:0}
.panel{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.phero{margin:clamp(15.17px,2.55vw,27.81px) auto 0}
.panel.p-blue{background:var(--blue);color:#fff;border-radius:10.11px;padding:clamp(25.28px,5.1vw,50.56px)}
.phero .kick{color:#fff}
.disp{font-family:var(--sans);font-weight: 400;font-size:clamp(18.96px,3.74vw,40.46px);letter-spacing:-.04em;line-height:1;margin:8.85px 0 0}
.phero p{color:rgba(255,255,255,.9);max-width:62ch;margin:11.38px 0 0;font-size:clamp(10.11px,1.105vw,12.65px);line-height:1.5}
.rescat{max-width:var(--wrap);margin-left:auto;margin-right:auto;padding:0 var(--pad)}

/* ---------- factors: fixed vs movable columns + pull quote ---------- */
.pullquote{font-family:var(--sans);font-weight: 400;font-size:clamp(15.61px,2.5vw,26.77px);line-height:1.2;letter-spacing:-.02em;max-width:26ch;margin:0 0 clamp(20.82px,3.6vw,37.18px);color:var(--ink)}
.pullquote cite{display:block;font-size:9.29px;font-weight: 400;letter-spacing:0.063em;text-transform:uppercase;color:var(--blue);margin-top:11.15px}
.terrain-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(13.38px,2.6vw,25.28px)}
.tcol{display:flex;flex-direction:column;gap:8.92px}
.tcol>.eyebrow{margin-bottom:3.72px}
.tcard{background:#fff;border:0.75px solid var(--line);border-radius:10.41px;padding:clamp(14.87px,2.2vw,22.31px)}
.tcol.movable .tcard{background:var(--blue);border-color:var(--blue)}
.tcol.movable .tcard h3{color:#fff}
.tcol.movable .tcard p{color:rgba(255,255,255,.9)}
.tcard h3{font-size:clamp(13.38px,1.7vw,17.85px);font-weight: 400;margin:0 0 5.2px;color:var(--ink)}
.tcard p{font-size:10.41px;line-height:1.5;color:var(--ink-soft);margin:0}
@media(max-width:684px){.terrain-cols{grid-template-columns:1fr}}

/* credentials chips */
.creds{display:flex;flex-wrap:wrap;gap:6.32px;margin:12.65px 0 15.17px}
.creds span{font-size:7.58px;letter-spacing:0.045em;text-transform:uppercase;padding:5.06px 8.85px;border:0.75px solid var(--blue);border-radius:63.2px;color:var(--blue)}

/* misc */
.note{font-size:8.22px;color:var(--ink-soft)}
.statement{font-family:var(--sans);font-weight: 400;font-size:clamp(18.96px,3.74vw,41.72px);line-height:1.02;letter-spacing:-.03em}
.reveal{opacity:1!important;transform:none!important}

/* ---------- responsive ---------- */
@media(max-width:810px){
  .content-grid,.section-head{grid-template-columns:1fr}
  .price-grid,.stats{grid-template-columns:1fr}
  .method-strip{grid-template-columns:1fr 1fr}
  .blog-grid{grid-template-columns:1fr 1fr}
  .blog-card.featured{grid-column:span 2}
}
@media(max-width:540px){
  .method-strip,.blog-grid{grid-template-columns:1fr}
  .blog-card.featured{grid-column:span 1}
  .resitem{flex-direction:column;gap:3.79px}
}

/* ---------- references appendix ---------- */
.ref-note{max-width:609.73px;margin:0 0 clamp(16.36px,3vw,26.77px);font-size:clamp(10.41px,1.1vw,11.9px);line-height:1.6;color:var(--ink-soft)}
ol.refs{max-width:669.22px;margin:0;padding:0;list-style:none;counter-reset:ref}
ol.refs li{counter-increment:ref;position:relative;padding:9.67px 0 9.67px 31.23px;border-top:0.75px solid var(--line);font-size:10.04px;line-height:1.55;color:var(--ink-soft)}
ol.refs li::before{content:counter(ref);position:absolute;left:0;top:9.67px;font-size:8.18px;font-weight: 400;color:var(--blue);letter-spacing:0.036em}
ol.refs li b{color:var(--ink);font-weight: 400}
sup.cite{font-size:0.558em;font-weight: 400;color:var(--blue);vertical-align:super;margin-left:0.75px}
.section.blue sup.cite{color:#fff}

/* ---------- references slide-in panel ---------- */
.refbar-wrap{border-top:0.75px solid var(--line)}
.refbar{display:flex;align-items:center;gap:7.43px;width:100%;max-width:var(--wrap);margin:0 auto;padding:13.38px var(--pad);background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:9.67px;font-weight: 400;letter-spacing:0.072em;text-transform:uppercase;color:var(--ink);text-align:left}
.refbar:hover{color:var(--blue)}
.refbar .arr{margin-left:auto;transition:transform .25s ease}
.refscrim{position:fixed;inset:0;background:rgba(8,19,33,.5);opacity:0;visibility:hidden;transition:opacity .3s ease;z-index:60}
.refscrim.open{opacity:1;visibility:visible}
.refpanel{position:fixed;top:0;right:0;height:100%;width:min(46%,386.66px);background:var(--ink);color:#fff;transform:translateX(100%);transition:transform .34s cubic-bezier(.4,0,.1,1);z-index:61;overflow-y:auto;box-shadow:-19.83px 0 44.61px rgba(0,0,0,.3)}
.refpanel.open{transform:translateX(0)}
.refpanel-inner{padding:clamp(20.82px,4vw,38.66px)}
.refpanel h3{font-family:var(--sans);font-weight: 400;font-size:clamp(16.36px,2.4vw,23.8px);letter-spacing:-.02em;margin:0 0 4.46px;color:#fff}
.refpanel .refpanel-note{font-size:10.04px;line-height:1.6;color:rgba(255,255,255,.7);margin:0 0 19.33px;max-width:42ch}
.refpanel-close{position:absolute;top:14.87px;right:16.36px;background:none;border:0;color:rgba(255,255,255,.75);font-family:var(--sans);font-size:8.92px;font-weight: 400;letter-spacing:0.072em;text-transform:uppercase;cursor:pointer}
.refpanel-close:hover{color:var(--yellow)}
.refpanel ol.refs{max-width:none}
.refpanel ol.refs li{border-top:0.75px solid rgba(255,255,255,.14);color:rgba(255,255,255,.72);padding-left:32.72px}
.refpanel ol.refs li::before{color:var(--yellow)}
.refpanel ol.refs li b{color:#fff}
@media(max-width:774px){.refpanel{width:88%}}

/* CRAFT deep step list */
.craft-list{display:grid;gap:0;margin-top:4.46px}
.craft-list .cstep{display:grid;grid-template-columns:auto 1fr;gap:clamp(11.9px,3vw,32.72px);padding:clamp(17.85px,3vw,31.23px) 0;border-top:0.75px solid var(--line)}
.craft-list .cstep .cletter{font-family:var(--sans);font-weight: 400;font-size:clamp(23.8px,4vw,43.13px);line-height:1;color:var(--blue)}
.craft-list .cstep h3{font-size:clamp(13.38px,1.7vw,18.59px);font-weight: 400;margin:0 0 7.43px;letter-spacing:-.01em;color:var(--ink)}
.craft-list .cstep p{max-width:64ch;margin:0 0 8.92px;color:var(--ink-soft);font-size:clamp(10.41px,1.05vw,12.27px);line-height:1.6}
.craft-list .cstep .clink{display:inline-block;font-family:var(--sans);font-size:9.29px;font-weight: 400;letter-spacing:0.018em;color:var(--blue);text-decoration:none;border-bottom:0.75px solid currentColor;padding-bottom:0.75px}
.craft-list .cstep .clink:hover{color:var(--ink)}
@media(max-width:576px){.craft-list .cstep{grid-template-columns:1fr;gap:5.95px}}

/* evidence stat cards */
.statnum{font-family:var(--sans);font-weight: 400;font-size:clamp(25.28px,4.5vw,44.61px);line-height:1;letter-spacing:-.03em;color:var(--blue);margin:0 0 4.46px}
.section.blue .statnum{color:#fff}
.card .statsrc{display:block;margin-top:8.92px;font-size:8.55px;line-height:1.45;color:var(--ink-soft)}
.section.blue .card .statsrc{color:rgba(255,255,255,.7)}

/* factors: coloured terrain columns (left blue / right yellow) */
.terrain-cols .tcol{border-radius:11.9px;padding:clamp(14.87px,2.4vw,23.8px);background:var(--blue)}
.terrain-cols .tcol.movable{background:var(--yellow)}
.terrain-cols .tcol>.eyebrow{color:#fff}
.terrain-cols .tcol.movable>.eyebrow{color:var(--ink)}
.terrain-cols .tcol .tcard{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.22)}
.terrain-cols .tcol .tcard h3{color:#fff}
.terrain-cols .tcol .tcard p{color:rgba(255,255,255,.85)}
.terrain-cols .tcol.movable .tcard{background:rgba(255,255,255,.6);border-color:rgba(0,0,0,.08)}
.terrain-cols .tcol.movable .tcard h3{color:var(--ink)}
.terrain-cols .tcol.movable .tcard p{color:var(--ink-soft)}

/* 7+1 expanded block doors */
.doors{display:grid;gap:clamp(10.41px,1.6vw,14.87px)}
.door{background:#fff;border:0.75px solid var(--line);border-radius:11.9px;padding:clamp(17.85px,3vw,31.23px)}
.door.trap{background:var(--ink);color:#fff;border-color:var(--ink)}
.door-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:4.46px 10.41px;margin-bottom:10.41px}
.door .sci{width:100%;font-family:var(--sans);font-size:8.18px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue)}
.door.trap .sci{color:var(--yellow)}
.door h3{font-size:clamp(16.36px,2.4vw,25.28px);font-weight: 400;letter-spacing:-.02em;margin:0;color:inherit}
.door .sub{font-size:clamp(11.15px,1.4vw,14.13px);color:var(--ink-soft)}
.door.trap .sub{color:rgba(255,255,255,.75)}
.door .desc{max-width:68ch;margin:0 0 16.36px;color:var(--ink-soft);font-size:clamp(10.41px,1.05vw,12.27px);line-height:1.6}
.door.trap .desc{color:rgba(255,255,255,.82)}
.door-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(11.9px,2.4vw,26.77px)}
.door-grid h4{font-family:var(--sans);font-size:7.8px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue);margin:0 0 8.18px}
.door.trap .door-grid h4{color:var(--yellow)}
.door-chips{display:flex;flex-wrap:wrap;gap:5.2px}
.door-chips span{font-size:9.67px;padding:4.46px 8.18px;border:0.75px solid var(--line);border-radius:742.84px;color:var(--ink);line-height:1.2}
.door.trap .door-chips span{border-color:rgba(255,255,255,.25);color:#fff}
.door-under{font-size:10.78px;line-height:1.6;color:var(--ink-soft);margin:0}
.door.trap .door-under{color:rgba(255,255,255,.82)}
.door-under b{color:var(--ink);font-weight: 400}
.door.trap .door-under b{color:#fff}
@media(max-width:648px){.door-grid{grid-template-columns:1fr;gap:13.38px}}

/* contact form */
.cform{display:grid;gap:11.15px;max-width:416.4px}
.cform label{display:grid;gap:4.46px;font-family:var(--sans);font-size:8.55px;font-weight: 400;letter-spacing:0.045em;text-transform:uppercase;color:var(--ink-soft)}
.cform input,.cform select,.cform textarea{font-family:var(--sans);font-size:11.15px;padding:9.67px 10.41px;border:0.75px solid var(--line);border-radius:7.43px;background:#fff;color:var(--ink);width:100%}
.cform textarea{min-height:111.54px;resize:vertical}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:none;border-color:var(--blue)}
.cform .row2{display:grid;grid-template-columns:1fr 1fr;gap:11.15px}
@media(max-width:504px){.cform .row2{grid-template-columns:1fr}}
.cform button{justify-self:start;margin-top:2.97px;border:0;cursor:pointer}
.contact-side{border-left:0.75px solid var(--line);padding-left:clamp(16.36px,3vw,38.66px)}
@media(max-width:774px){.contact-side{border-left:0;padding-left:0;border-top:0.75px solid var(--line);padding-top:20.82px}}
.mail-big{display:inline-block;font-family:var(--sans);font-weight: 400;font-size:clamp(13.38px,2vw,19.33px);letter-spacing:-.01em;color:var(--blue);text-decoration:none;border-bottom:1.48px solid currentColor;padding-bottom:1.48px}
.mail-big:hover{color:var(--ink)}

/* ---------- FAQ redesign ---------- */
.faq-hero{background:var(--yellow)}
.faq-hero h1{color:var(--ink)}
.faq-hero p{color:var(--ink)}
.faqx{display:grid;grid-template-columns:minmax(0,.26fr) minmax(0,1fr);gap:clamp(20.82px,5vw,62.46px);align-items:start}
.faqx-nav{position:sticky;top:72.87px;display:flex;flex-direction:column;gap:1.48px}
.faqx-nav .lbl{font-family:var(--sans);font-size:7.8px;font-weight: 400;letter-spacing:0.117em;text-transform:uppercase;color:var(--blue);margin-bottom:7.43px}
.faqx-nav a{font-family:var(--sans);font-size:10.04px;font-weight: 400;color:var(--ink-soft);text-decoration:none;padding:5.2px 0;border-bottom:0.75px solid var(--line)}
.faqx-nav a:hover{color:var(--blue)}
.faqx-cat{scroll-margin-top:77.33px}
.faqx-cat+.faqx-cat{margin-top:clamp(29.74px,5vw,56.51px)}
.faqx-cat-head{display:flex;align-items:baseline;gap:10.41px;margin-bottom:2.97px}
.faqx-cat-head .n{font-family:var(--sans);font-size:9.67px;font-weight: 400;color:var(--blue)}
.faqx-cat-head h2{font-family:var(--sans);font-weight: 400;font-size:clamp(15.61px,2.6vw,24.53px);letter-spacing:-.02em;margin:0;color:var(--ink)}
.faqx .offer-list{margin-top:4.46px;border-top:0}
.faqx .offer-row{border-bottom:0.75px solid var(--line)}
.faqx .offer-toggle{padding:16.36px 0;font-size:clamp(11.53px,1.5vw,14.87px);font-weight: 400;gap:17.85px;align-items:center}
.faqx .offer-toggle .pm{flex:none;width:22.31px;height:22.31px;border:0.75px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:12.65px;line-height:1;color:var(--blue);transition:transform .3s ease,background .2s,color .2s}
.faqx .offer-toggle:hover .pm{border-color:var(--blue)}
.faqx .offer-row.open .offer-toggle .pm{transform:rotate(45deg);background:var(--blue);color:#fff;border-color:var(--blue)}
.faqx .offer-row.open .offer-body{max-height:342.05px}
.faqx .offer-body>div{padding:0 clamp(0px,4vw,40.15px) 19.33px 0}
.faqx .offer-body p{font-size:11.15px;line-height:1.6;max-width:66ch;color:var(--ink-soft)}
@media(max-width:774px){.faqx{grid-template-columns:1fr}.faqx-nav{display:none}}

/* blog index tweaks */
.blog-hero.yellow{background:var(--yellow);padding-bottom:clamp(34.21px,6.5vw,77.33px)}
.blog-hero.yellow .eyebrow{color:var(--ink)}
.blog-hero.yellow h1,.blog-hero.yellow p{color:var(--ink)}
.blog-list{padding-bottom:clamp(44.61px,8vw,92.2px)}
.blog-card.is-hidden{display:none}
.blog-more{display:flex;justify-content:center;padding:25.28px 0 2.97px}

/* CRAFT page: bigger step letters + roomier cards */
.method-page .arc-card{padding:clamp(17.85px,2.8vw,29.74px)}
.method-page .arc-card .letter{font-size:clamp(34.21px,5.5vw,62.46px);font-weight: 400;letter-spacing:-.03em;margin-bottom:1.48px}
.method-page .arc-card h3{font-size:clamp(14.87px,2vw,20.82px);font-weight: 400;margin-top:1.48px}
.method-page .arc-card p{font-size:clamp(10.04px,1.05vw,11.9px);line-height:1.6}
.method-page .arc-card .clink{margin-top:10.41px}
.craft-close{max-width:60ch}
.craft-close h2{font-family:var(--sans);font-weight: 400;font-size:clamp(19.33px,3.4vw,37.18px);letter-spacing:-.035em;line-height:1;margin:0 0 11.9px}
.craft-close p{color:rgba(255,255,255,.85);font-size:clamp(11.15px,1.2vw,13.38px);line-height:1.55;margin:0 0 16.36px;max-width:58ch}

/* ---------- 7+1 editorial block table ---------- */
.blocktable{margin-top:7.43px;border-top:1.48px solid var(--ink)}
.brow{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:clamp(14.87px,4vw,44.61px);padding:clamp(22.31px,4vw,43.13px) 0;border-bottom:0.75px solid var(--line);transition:background .25s ease}
.brow:hover{background:linear-gradient(90deg,rgba(0,111,218,.05),transparent 70%)}
.brow-idx{font-family:var(--sans);font-size:8.92px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue)}
.brow h3{font-family:var(--sans);font-weight: 400;font-size:clamp(20.82px,3.8vw,38.66px);letter-spacing:-.035em;line-height:.98;margin:8.92px 0 0;color:var(--ink);transition:color .2s}
.brow:hover h3{color:var(--blue)}
.brow .sub{display:block;margin-top:9.67px;font-size:clamp(11.15px,1.4vw,14.13px);color:var(--ink-soft);max-width:32ch}
.brow .desc{margin:11.9px 0 0;font-size:10.78px;line-height:1.6;color:var(--ink-soft);max-width:44ch}
.brow-right{display:grid;grid-template-columns:1fr 1fr;gap:clamp(13.38px,2.4vw,29.74px);padding-top:4.46px}
.brow-right h4{font-family:var(--sans);font-size:7.8px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue);margin:0 0 8.92px}
.bchips{display:flex;flex-wrap:wrap;gap:5.2px}
.bchips span{font-size:9.29px;padding:4.46px 8.18px;border:0.75px solid var(--line);border-radius:742.84px;color:var(--ink);line-height:1.2}
.bunder{margin:0;font-size:10.41px;line-height:1.6;color:var(--ink-soft)}
.bunder b{color:var(--ink);font-weight: 400}
.brow.trap{background:var(--ink);color:#fff;border-radius:13.38px;border-bottom:0;padding:clamp(20.82px,3.5vw,40.15px);margin-top:14.87px}
.brow.trap:hover{background:var(--ink)}
.brow.trap .brow-idx,.brow.trap .brow-right h4{color:var(--yellow)}
.brow.trap h3{color:#fff}
.brow.trap:hover h3{color:var(--yellow)}
.brow.trap .sub,.brow.trap .desc,.brow.trap .bunder{color:rgba(255,255,255,.82)}
.brow.trap .bunder b{color:#fff}
.brow.trap .bchips span{border-color:rgba(255,255,255,.28);color:#fff}
@media(max-width:738px){.brow{grid-template-columns:1fr;gap:16.36px}}
@media(max-width:468px){.brow-right{grid-template-columns:1fr}}

/* centered pull quote band */
.quote-center{max-width:684.09px;margin:0 auto;text-align:center}
.quote-center blockquote{font-family:var(--sans);font-weight: 400;font-size:clamp(17.1px,3.4vw,32.72px);line-height:1.18;letter-spacing:-.025em;color:var(--ink);margin:0}
.quote-center cite{display:block;margin-top:16.36px;font-style:normal;font-size:9.29px;font-weight: 400;letter-spacing:0.09em;text-transform:uppercase;color:var(--blue)}

/* contact consent checkbox */
.cform-consent{display:flex;gap:7.43px;align-items:flex-start;font-size:9.29px;line-height:1.5;color:var(--ink-soft);text-transform:none;letter-spacing:0;font-weight: 400}
.cform-consent input{width:11.9px;height:11.9px;margin-top:1.48px;flex:none;accent-color:var(--blue)}
.cform-consent a{color:var(--blue)}

/* taller subpage sections + more breathing room */
.section{padding:clamp(55.03px,10vw,118.97px) 0}
.section-head{margin-bottom:clamp(25.28px,4.4vw,49.08px)}
.page-hero,.blog-hero{padding:clamp(55.03px,10vw,111.54px) 0 clamp(22.31px,4vw,41.64px)}

/* references bar →︎ blue on all pages */
.refbar-wrap{background:var(--blue);border-top:0}
.refbar{color:#fff}
.refbar:hover{color:var(--yellow)}

/* stacked section head (eyebrow / title / body in one left column) */
.section-head.stack{display:block}
.section-head.stack .eyebrow{display:block;margin-bottom:10.41px}
.section-head.stack>div:last-child{max-width:none}
.section-head.stack h2{max-width:20ch}
.section-head.stack p{max-width:66ch;margin-top:11.9px}

/* quote on ink background */
.section.ink .quote-center blockquote{color:#fff}
.section.ink .quote-center cite{color:var(--yellow)}

/* evidence: wider 'research we draw on' text column */
.evidence-page .flush{grid-template-columns:1.28fr .72fr}
.evidence-page .flush .copy{max-width:74ch}

/* CRAFT closing centered */
.craft-close{max-width:66ch;margin:0 auto;text-align:center}
.craft-close p{margin-left:auto;margin-right:auto}
.craft-close .cta{justify-content:center}
/* CRAFT step links as pill buttons with more top space */
.method-page .arc-card .clink{margin-top:16.36px;padding:8.18px 14.87px;border:0.75px solid var(--blue);border-bottom:0.75px solid var(--blue);border-radius:742.84px;transition:background .2s,color .2s}
.method-page .arc-card .clink:hover{background:var(--blue);color:#fff}

/* ---------- 7+1 editorial rows (white list) ---------- */
.blocks-rows{background:#fff;border:0.75px solid var(--line);border-radius:13.38px;overflow:hidden;margin-top:7.43px}
.brow2{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:clamp(13.38px,3vw,38.66px);width:100%;text-align:left;background:none;border:0;border-top:0.75px solid var(--line);cursor:pointer;padding:clamp(11.9px,1.8vw,19.33px) clamp(13.38px,2.4vw,29.74px);transition:background .2s}
.brow2:first-child{border-top:0}
.brow2:hover{background:var(--yellow)}
.brow2-img{width:clamp(62.46px,9vw,102.62px);aspect-ratio:4/3;border-radius:7.43px;overflow:hidden;background:var(--tint);flex:none}
.brow2-img img{width:100%;height:100%;object-fit:cover;display:block}
.brow2-name .sci{display:block;font-family:var(--sans);font-size:7.8px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--blue);margin-bottom:5.2px}
.brow2-name h3{font-family:var(--serif);font-weight: 400;font-size:clamp(19.33px,3.4vw,38.66px);line-height:1;letter-spacing:-.02em;color:var(--ink);margin:0}
.brow2-tags{list-style:none;margin:0;padding:0;display:grid;gap:5.2px;min-width:clamp(141.28px,16vw,178.46px)}
.brow2-tags li{font-family:var(--sans);font-size:8.18px;font-weight: 400;letter-spacing:0.045em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brow2-tags li::before{content:"→︎ ";color:var(--blue)}
.brow2-arr{font-size:clamp(14.87px,2vw,22.31px);color:var(--ink);flex:none;transition:transform .2s}
.brow2:hover .brow2-arr{transform:translateX(3.72px)}
.brow2.trap{background:var(--ink)}
.brow2.trap .brow2-name h3{color:#fff}
.brow2.trap .brow2-name .sci{color:var(--yellow)}
.brow2.trap .brow2-tags li{color:rgba(255,255,255,.72)}
.brow2.trap .brow2-tags li::before{color:var(--yellow)}
.brow2.trap .brow2-arr{color:#fff}
.brow2.trap:hover{background:#0d1c30}
@media(max-width:774px){.brow2{grid-template-columns:auto 1fr auto;gap:11.9px}.brow2-tags{display:none}}
/* block detail panel content (reuses .refpanel dark slide-in) */
.bd-sci{display:block;font-family:var(--sans);font-size:8.18px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--yellow);margin-bottom:7.43px}
.refpanel .bd-lead{font-size:11.53px;line-height:1.6;color:rgba(255,255,255,.85);margin:0 0 14.87px}
.refpanel h4{font-family:var(--sans);font-size:7.8px;font-weight: 400;letter-spacing:0.108em;text-transform:uppercase;color:var(--yellow);margin:17.85px 0 8.18px}
.refpanel .bd-list{list-style:none;margin:0;padding:0;display:grid;gap:6.69px}
.refpanel .bd-list li{font-size:10.41px;color:rgba(255,255,255,.82);padding-left:14.87px;position:relative;line-height:1.4}
.refpanel .bd-list li::before{content:"→︎";position:absolute;left:0;color:var(--yellow)}
.refpanel .bd-under{font-size:10.78px;line-height:1.6;color:rgba(255,255,255,.82);margin:0}
.refpanel .bd-under b{color:#fff;font-weight: 400}
.bd-src{display:none}

/* 7+1 rows: taller portrait image, bigger name + subtitle, tighter hero */
.brow2{gap:clamp(14.87px,3.2vw,41.64px);padding:clamp(13.38px,2vw,22.31px) clamp(13.38px,2.4vw,29.74px)}
.brow2-img{width:clamp(71.39px,10.5vw,117.49px);aspect-ratio:3/4}
.brow2-name .sci{font-size:clamp(8.18px,1vw,10.41px);margin-bottom:6.69px}
.brow2-name h3{font-size:clamp(22.31px,4.4vw,49.08px);line-height:.98}
.brow2-tags li{font-size:clamp(7.8px,0.8vw,8.92px)}
.blocks-page .center-hero{padding-bottom:clamp(22.31px,4vw,44.61px)}

/* final-v3: "Inter" + squared corners across all subpages */
:root{--sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;--serif:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}
.card,.price-card,.tcard,.split-img,.flush-img,.content-photo,.blog-card,.blog-art,.refpanel,.brow2-img,.brow2,.door,.arc-card,.callout,.faq-item,.statnum,.terrain-cols .tcol,.method-strip .method-step,.cform input,.cform textarea,.cform select,.blocks-rows,.acb-close-sub{border-radius:0!important}


/* final CTA unification: keep action buttons on the compact 4i treatment even when sections.css loads last. */
html body#acb-design main :is(.cta .btn,.cta .btn-out,.cta .pill,.cta .pill.big,.cta .pill.alt,.plan-card .btn,.speaking-grid .btn,.refbar-btn,.map-test-inline,.bm-hypo button,.hero-panel .btn){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:8.26px 14.87px!important;
  border:0!important;
  border-radius:var(--radius-card)!important;
  background:#4f46e5!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:"Inter",sans-serif!important;
  font-size:13.22px!important;
  line-height:1!important;
  font-weight: 400!important;
  letter-spacing:-.015em!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
html body#acb-design main :is(.cta .btn,.cta .btn-out,.cta .pill,.cta .pill.big,.cta .pill.alt,.plan-card .btn,.speaking-grid .btn,.refbar-btn,.map-test-inline,.bm-hypo button,.hero-panel .btn):hover{background:#3f37c4!important;color:#fff!important}
html body#acb-design main .section.blue :is(.cta .btn,.cta .btn-out){background:#fff!important;color:#4f46e5!important}
html body#acb-design main .section.blue :is(.cta .btn,.cta .btn-out):hover{background:#f4f2ed!important;color:#3f37c4!important}


/* plain-selector CTA lock: avoids parser/specificity edge cases from older rules. */
html body#acb-design.home-page main .cta a.pill,
html body#acb-design.home-page main .cta a.pill.big,
html body#acb-design.home-page main .cta a.pill.alt,
html body#acb-design.home-page main .acb-close a.pill,
html body#acb-design.internal-page main .cta a.btn,
html body#acb-design.internal-page main .cta a.btn-out,
html body#acb-design.internal-page main .cta a.pill,
html body#acb-design.internal-page main .plan-card a.btn,
html body#acb-design.internal-page main .speaking-grid a.btn,
html body#acb-design.internal-page main a.refbar-btn,
html body#acb-design.internal-page main button.map-test-inline,
html body#acb-design.internal-page main .bm-hypo button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:8.26px 14.87px!important;
  border:0!important;
  border-radius:var(--radius-card)!important;
  background:#4f46e5!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:"Inter",sans-serif!important;
  font-size:13.22px!important;
  line-height:1!important;
  font-weight: 400!important;
  letter-spacing:-.015em!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
html body#acb-design.home-page main .cta a.pill:hover,
html body#acb-design.home-page main .acb-close a.pill:hover,
html body#acb-design.internal-page main .cta a.btn:hover,
html body#acb-design.internal-page main .cta a.btn-out:hover,
html body#acb-design.internal-page main .cta a.pill:hover,
html body#acb-design.internal-page main .plan-card a.btn:hover,
html body#acb-design.internal-page main .speaking-grid a.btn:hover,
html body#acb-design.internal-page main a.refbar-btn:hover,
html body#acb-design.internal-page main button.map-test-inline:hover,
html body#acb-design.internal-page main .bm-hypo button:hover{
  background:#3f37c4!important;
  color:#fff!important;
}
html body#acb-design.internal-page main .section.blue .cta a.btn,
html body#acb-design.internal-page main .section.blue .cta a.btn-out{background:#fff!important;color:#4f46e5!important}


/* CTA pseudo-arrow + closing band exact lock. */
html body#acb-design.home-page main .cta a.pill::after,
html body#acb-design.home-page main .acb-close a.pill::after,
html body#acb-design.internal-page main .cta a.btn::after,
html body#acb-design.internal-page main .cta a.btn-out::after,
html body#acb-design.internal-page main .plan-card a.btn::after{
  display:inline-block!important;
  margin-left:5.79px!important;
  font-size:1em!important;
  line-height:1!important;
}
html body#acb-design.home-page main .acb-close>.wrap .cta a.pill,
html body#acb-design.home-page main .acb-close>.wrap .cta a.pill.big{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:8.26px 14.87px!important;
  border:0!important;
  border-radius:var(--radius-card)!important;
  background:#4f46e5!important;
  color:#fff!important;
  font-size:13.22px!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  text-transform:none!important;
  white-space:nowrap!important;
}


/* CTA row-direction lock for generated arrows and close-band variants. */
html body#acb-design.home-page main .cta a.pill,
html body#acb-design.home-page main .acb-close a.pill,
html body#acb-design.home-page main .acb-close a.pill.big,
html body#acb-design.internal-page main .cta a.btn,
html body#acb-design.internal-page main .cta a.btn-out,
html body#acb-design.internal-page main .plan-card a.btn{
  flex-direction:row!important;
  gap:0!important;
  font-size:13.22px!important;
  line-height:1!important;
  padding:8.26px 14.87px!important;
}
html body#acb-design.home-page main .cta a.pill::after,
html body#acb-design.home-page main .acb-close a.pill::after,
html body#acb-design.internal-page main .cta a.btn::after,
html body#acb-design.internal-page main .cta a.btn-out::after,
html body#acb-design.internal-page main .plan-card a.btn::after{
  flex:0 0 auto!important;
}


/* Home CTA exact 4i lock: no generated arrow, compact physical height. */
html body#acb-design.home-page main .cta a.pill::after,
html body#acb-design.home-page main .acb-close a.pill::after{content:""!important;display:none!important;margin:0!important}
html body#acb-design.home-page main .cta a.pill,
html body#acb-design.home-page main .cta a.pill.big,
html body#acb-design.home-page main .cta a.pill.alt,
html body#acb-design.home-page main .acb-close a.pill,
html body#acb-design.home-page main .acb-close a.pill.big,
html body#acb-design.home-page main .acb-close>.wrap a.pill,
html body#acb-design.home-page main .acb-close>.wrap a.pill.big{
  box-sizing:border-box!important;
  height:29.74px!important;
  max-height:29.74px!important;
  min-height:29.74px!important;
  padding:8.26px 14.87px!important;
  font-size:13.22px!important;
  line-height:1!important;
}

/* One CTA component everywhere.  This is the compact treatment used on the
   individuals page: fixed 30px rhythm, 5px corners, Inter and a solid blue
   action colour.  Labels and destinations remain page-specific. */
html body#acb-design main :is(a.btn,a.btn-out,a.pill,a.pill.big,a.pill.alt,button.btn,button.btn-out,button.pill,.refbar-btn,.map-test-inline,.bm-hypo button){
  box-sizing:border-box!important;
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  height:29.74px!important;
  min-height:29.74px!important;
  max-height:29.74px!important;
  margin:0!important;
  padding:0 14.87px!important;
  border:0!important;
  border-radius:var(--radius-card,5px)!important;
  background:#4f46e5!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:"Inter",sans-serif!important;
  font-size:13.22px!important;
  font-weight: 400!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  text-transform:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
html body#acb-design main :is(a.btn,a.btn-out,a.pill,a.pill.big,a.pill.alt,button.btn,button.btn-out,button.pill,.refbar-btn,.map-test-inline,.bm-hypo button)::after{
  content:""!important;
  display:none!important;
}
html body#acb-design main :is(a.btn,a.btn-out,a.pill,a.pill.big,a.pill.alt,button.btn,button.btn-out,button.pill,.refbar-btn,.map-test-inline,.bm-hypo button):hover{
  background:#3f37c4!important;
  color:#fff!important;
}
