@font-face{font-family:'Instrument Serif';src:url("assets/instrument-serif.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url("assets/instrument-serif-italic.ttf") format("truetype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url("assets/hanken-grotesk.ttf") format("truetype");font-weight:100 900;font-style:normal;font-display:swap}
:root{--color-paper:#f2ebdd;--color-paper-light:#f6efe2;--color-card:#fff;--color-cover-bg:#2a2419;--color-ink-900:#221c14;--color-ink-700:#4a4034;--color-ink-500:#6d6252;--color-ink-400:#8b7f6d;--color-accent-600:#b4602f;--color-accent-2-800:#3f4a2c;--color-on-accent-2:#f6efe2;--color-on-accent-2-muted:#e3e8d6;--color-on-accent-2-label:#d9e0c8;--color-rule:rgba(34,28,20,.22);--set-sand:#c9a77c;--set-leaf:#5d6b3c}



:root{--color-paper:#f3f2ec;--color-paper-light:#fafaf6;--color-accent-600:#9c4a22;--color-rule:rgba(28,34,24,.16)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{overflow-x:hidden;background:var(--color-paper);color:var(--color-ink-700);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--color-accent-600);text-decoration:none}a:hover{color:var(--color-ink-900)}
.serif{font-family:var(--serif);font-weight:400}
h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--color-ink-900);line-height:1.05;text-wrap:balance}
h2{font-size:clamp(38px,5vw,60px);letter-spacing:-.01em}
h2 em,h1 em{font-style:italic;color:var(--color-accent-2-800)}
p{text-wrap:pretty}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent-2-800);display:flex;align-items:center;gap:10px}
.eyebrow:before{content:"";width:22px;height:1.5px;background:currentColor}
section{padding:56px 0;border-top:1px solid var(--color-rule)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:end;margin-bottom:32px}
.sec-head .eyebrow{margin-bottom:18px}
.sec-head p{max-width:520px;font-size:18px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:999px;font-weight:600;font-size:15px;border:1.5px solid var(--color-ink-900);transition:.2s}
.btn-dark{background:var(--color-ink-900);color:var(--color-paper-light)}.btn-dark:hover{background:var(--color-accent-2-800);border-color:var(--color-accent-2-800);color:var(--color-paper-light)}
.btn-line{color:var(--color-ink-900)}.btn-line:hover{background:var(--color-ink-900);color:var(--color-paper-light)}
.btns{display:flex;flex-wrap:wrap;gap:12px}
/* header */
header{position:sticky;top:0;z-index:10;background:rgba(243,242,236,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-rule)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:68px;gap:24px}
.logo{font-family:var(--serif);font-size:26px;color:var(--color-ink-900)}
nav{display:flex;gap:28px}.menu{display:none;width:40px;height:40px;border:0;background:none;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px}.menu span{width:22px;height:1.5px;background:var(--color-ink-900);transition:.2s}.nav-open .menu span:first-child{transform:translateY(3.75px) rotate(45deg)}.nav-open .menu span:last-child{transform:translateY(-3.75px) rotate(-45deg)}nav a,.hdr-r a.plain{color:var(--color-ink-700);font-size:15px;font-weight:500}nav a:hover{color:var(--color-accent-600)}
.hdr-r{display:flex;align-items:center;gap:20px}.hdr-r .btn{padding:10px 18px;font-size:14px}
/* hero */
.hero{padding:48px 0 56px;border:0}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:64px;align-items:center}
.hero h1{font-size:clamp(56px,8vw,104px);margin:22px 0 6px;letter-spacing:-.02em}
.hero .role{font-family:var(--serif);font-style:italic;font-size:clamp(26px,3vw,36px);color:var(--color-accent-2-800);margin-bottom:28px}
.hero .lede{font-size:19px;color:var(--color-ink-700);max-width:600px;margin-bottom:16px}
.hero .proofline{font-weight:600;color:var(--color-ink-900);font-size:16px;margin:26px 0 32px;padding:14px 0;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);max-width:600px}
.avail{display:flex;gap:10px;align-items:flex-start;margin-top:28px;font-size:14px;color:var(--color-ink-500);max-width:520px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--set-leaf);margin-top:7px;flex:none;box-shadow:0 0 0 4px rgba(93,107,60,.18)}
.photo{position:relative}
.photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%;border-radius:4px;display:block;filter:sepia(.12) saturate(.92)}
.tape{position:absolute;width:110px;height:30px;background:rgba(201,167,124,.75);top:-12px;left:50%;transform:translateX(-50%) rotate(-4deg)}
.photo .tag{position:absolute;left:-28px;bottom:36px;background:var(--color-accent-2-800);color:var(--color-on-accent-2);padding:14px 18px;font-size:13px;line-height:1.35;max-width:200px;transform:rotate(-2deg)}
.photo .tag b{display:block;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1}
/* proof */
.proof{padding:40px 0;background:var(--color-paper-light)}
.proof h3{font-family:var(--sans);font-size:14px;font-weight:500;color:var(--color-ink-500);margin-bottom:28px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stat{padding:0 28px;border-left:1px solid var(--color-rule)}.stat:first-child{padding-left:0;border:0}
.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(40px,4.4vw,58px);color:var(--color-ink-900);line-height:1;margin-bottom:10px}
.stat span{font-size:14px}
/* expertise */
.exp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--color-rule)}
.exp{padding:32px 32px 36px 0;border-bottom:1px solid var(--color-rule)}
.exp:not(:nth-child(3n+1)){padding-left:32px;border-left:1px solid var(--color-rule)}
.exp .n{font-size:12px;font-weight:600;color:var(--color-accent-600);letter-spacing:.1em}
.exp h3{font-size:30px;margin:10px 0 12px}
.exp p{font-size:15.5px}
/* work */
.cases{display:flex;flex-direction:column;gap:20px}
details.case{background:var(--color-card);border-radius:6px;border:1px solid var(--color-rule);overflow:hidden}
details.case summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;padding:40px 44px}
details summary::-webkit-details-marker{display:none}
.case .meta{font-size:13px;font-weight:600;color:var(--color-accent-600);letter-spacing:.06em;text-transform:uppercase;display:flex;gap:12px}
.case .meta span{color:var(--color-ink-500)}
.case h3{font-size:clamp(30px,3.2vw,42px);margin:14px 0 18px}
.case .sum p{font-size:16px;max-width:520px}
.toggle{display:inline-flex;align-items:center;gap:10px;margin-top:26px;font-weight:600;font-size:15px;color:var(--color-ink-900);border-bottom:1.5px solid var(--color-accent-600);padding-bottom:3px}
.toggle i{font-style:normal;transition:transform .25s;display:inline-block}
details[open] .toggle i{transform:rotate(45deg)}
.toggle .c{display:none}details[open] .toggle .o{display:none}details[open] .toggle .c{display:inline}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--color-rule);align-self:start;border:1px solid var(--color-rule)}
.kpi{background:var(--color-paper-light);padding:20px 22px}
.kpi b{display:block;font-family:var(--serif);font-weight:400;font-size:36px;line-height:1;color:var(--color-ink-900);margin-bottom:6px}
.kpi span{font-size:13.5px;line-height:1.4;display:block}
.kpi.hl{background:var(--color-accent-2-800)}.kpi.hl b,.kpi.hl span{color:var(--color-on-accent-2)}
.case-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;padding:0 44px 44px;border-top:1px dashed var(--color-rule);padding-top:36px;margin:0}
.case-body h4,.svc-body h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-600);margin:0 0 12px}
.case-body p{margin-bottom:14px;font-size:16px}
.case-body ul,.svc-body ul{list-style:none;display:flex;flex-direction:column;gap:9px;margin:4px 0 18px}
.case-body li,.svc-body li{padding-left:22px;position:relative;font-size:15.5px}
.case-body li:before,.svc-body li:before{content:"→";position:absolute;left:0;color:var(--color-accent-600)}
.allres{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin-bottom:24px}
.allres div{border-top:1px solid var(--color-rule);padding-top:10px}
.allres b{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--color-ink-900);display:block;line-height:1.1}
.allres span{font-size:13.5px}
.takeaway{background:var(--color-paper);padding:24px 26px;border-radius:4px}
.takeaway p{font-family:var(--serif);font-size:23px;line-height:1.3;color:var(--color-ink-900);margin-bottom:10px}
.takeaway p+p{font-family:var(--sans);font-size:15.5px;color:var(--color-ink-700);line-height:1.6;margin:0 0 10px}.takeaway p:last-child{margin-bottom:0}.case .sum p+p{margin-top:8px}.case-body .pullnum{font-size:23px!important;margin:18px 0 8px!important}
.pullnum{font-family:var(--serif);font-size:26px;color:var(--color-accent-2-800);line-height:1.25;margin:6px 0 16px!important}
/* experience */
.timeline{display:flex;flex-direction:column}
.job{display:grid;grid-template-columns:260px minmax(0,1fr);gap:48px;padding:36px 0;border-top:1px solid var(--color-rule);position:relative}
.job .when{font-size:14px;color:var(--color-ink-500);font-weight:500}
.job .when b{display:block;font-family:var(--serif);font-weight:400;font-size:32px;color:var(--color-ink-900);line-height:1.1;margin-bottom:6px}
.job .title{font-weight:600;color:var(--color-ink-900);margin-bottom:10px;font-size:16px}
.job p{margin-bottom:10px;max-width:680px;font-size:16px}
.job p strong{color:var(--color-ink-900)}
.job.small .when b{font-size:24px}
.now{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--set-leaf);color:var(--color-paper-light);padding:3px 8px;border-radius:3px;margin-top:8px}
/* AI */
.ai{background:var(--color-paper-light)}
.ai .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.ai h2{font-size:clamp(34px,4vw,50px);margin:18px 0 24px}
.ai p{margin-bottom:14px}
.tools{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--color-rule);align-self:start;margin-top:8px}
.tools div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--color-rule)}
.tools dt{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600);padding-top:5px}
.tools dd{display:flex;flex-wrap:wrap;gap:6px}
.stack{display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start}.stack .chip{font-size:16px;padding:9px 18px}
.chip{font-size:13.5px;padding:4px 11px;border:1px solid var(--color-rule);border-radius:999px;background:var(--color-paper);color:var(--color-ink-900)}
/* about */
.about .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.about .photo img{aspect-ratio:3/4}
.about h2{margin:18px 0 14px}
.about .lead{font-family:var(--serif);font-style:italic;font-size:clamp(26px,2.6vw,34px);color:var(--color-accent-2-800);line-height:1.2;margin-bottom:28px}
.about p{margin-bottom:16px;max-width:620px}
.about .note{border-left:2px solid var(--color-accent-600);padding:4px 0 4px 18px;color:var(--color-ink-900);font-weight:500;margin:28px 0}
/* services */
.audit{background:var(--color-accent-2-800);color:var(--color-on-accent-2-muted);border-radius:6px;padding:48px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;margin-bottom:56px}
.audit .lbl{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-on-accent-2-label)}
.audit h3{color:var(--color-on-accent-2);font-size:clamp(36px,4vw,50px);margin:12px 0 8px}
.audit .price{font-size:16px;color:var(--color-on-accent-2);margin-bottom:20px}.audit .price b{font-family:var(--serif);font-weight:400;font-size:30px}
.audit p{font-size:17px}
.audit .btn{border-color:var(--color-on-accent-2);color:var(--color-on-accent-2);margin-top:26px}.audit .btn:hover{background:var(--color-on-accent-2);color:var(--color-accent-2-800)}
.audit h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-on-accent-2-label);margin-bottom:12px}
.audit ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:22px}
.audit li{font-size:15px;padding-left:22px;position:relative;color:var(--color-on-accent-2)}
.audit li:before{content:"→";position:absolute;left:0;color:var(--color-on-accent-2-label)}
.audit .ret{background:rgba(246,239,226,.08);padding:18px 20px;border-radius:4px;font-size:15px;color:var(--color-on-accent-2)}
.audit .small{font-size:13px;margin-top:12px;color:var(--color-on-accent-2-label)}
.ongoing-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px;gap:20px;flex-wrap:wrap}
.ongoing-h h3{font-size:34px}
.ongoing-h p{font-size:14px;color:var(--color-ink-500)}
.svcs{border-top:1px solid var(--color-ink-900)}
details.svc{border-bottom:1px solid var(--color-rule)}
details.svc summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:44px minmax(0,1.3fr) minmax(0,1.2fr) 200px 40px;gap:24px;align-items:center;padding:28px 0}
details.svc summary:hover h3{color:var(--color-accent-600)}
.svc .n{font-size:13px;font-weight:600;color:var(--color-ink-400)}
.svc h3{font-size:28px;transition:color .2s}
.svc .mode{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-500);display:block;margin-top:4px;font-family:var(--sans)}
.svc .for{font-size:15px}
.svc .pr{text-align:right;font-size:13px;color:var(--color-ink-500);line-height:1.3}.svc .pr b{display:block;font-family:var(--serif);font-weight:400;font-size:26px;color:var(--color-ink-900)}
.plus{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--color-ink-900);display:grid;place-items:center;font-size:20px;line-height:1;color:var(--color-ink-900);transition:.25s}
details[open] .plus{transform:rotate(45deg);background:var(--color-ink-900);color:var(--color-paper-light)}
.svc-body{display:grid;grid-template-columns:44px minmax(0,1.3fr) minmax(0,1.2fr);gap:24px;padding:0 0 36px}
.svc-body ul{grid-column:2}
.svc-body .own{grid-column:3;align-self:start;background:var(--color-paper-light);padding:24px;border-radius:4px}
.svc-body .own p{font-family:var(--serif);font-size:24px;line-height:1.25;color:var(--color-ink-900)}
.svc-body .own small{display:block;margin-top:14px;font-size:14px;color:var(--color-ink-500)}
.perm{margin-top:28px;font-size:15px;color:var(--color-ink-500)}
.intro{margin:26px 0 30px;padding-top:24px;border-top:1px solid var(--color-rule);max-width:600px}
.intro .lead{font-family:var(--serif);font-style:italic;font-size:clamp(24px,2.4vw,30px);color:var(--color-accent-2-800);line-height:1.2;margin-bottom:14px}
.intro p{font-size:16px;margin-bottom:10px}.intro strong{color:var(--color-ink-900)}
header .wrap{justify-content:space-between}.hdr-r{margin-left:auto}
.matrix{display:grid;grid-template-columns:220px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"x c1 c2" "r1 a1 a2" "r2 b1 b2";gap:16px;align-items:start}
.mx-corner{grid-area:x}.c1{grid-area:c1}.c2{grid-area:c2}.r1{grid-area:r1}.r2{grid-area:r2}.a1{grid-area:a1}.a2{grid-area:a2}.b1{grid-area:b1}.b2{grid-area:b2}
.mx-col{border-bottom:1.5px solid var(--color-ink-900);padding-bottom:12px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.mx-col b{font-family:var(--serif);font-weight:400;font-size:32px;color:var(--color-ink-900);line-height:1}
.mx-col span,.mx-row span{font-size:13px;color:var(--color-ink-500)}
.mx-row{padding-top:26px;display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--color-rule)}
.mx-row b{font-family:var(--serif);font-weight:400;font-size:26px;color:var(--color-ink-900);line-height:1.1}
details.tier{background:var(--color-card);border:1px solid var(--color-rule);border-radius:6px;transition:border-color .2s}
details.tier:hover{border-color:var(--color-ink-900)}
details.tier[open]{border-color:var(--color-accent-2-800);box-shadow:inset 0 3px 0 var(--color-accent-2-800)}
details.tier summary{list-style:none;cursor:pointer;padding:26px 26px 22px;display:flex;flex-direction:column;gap:10px}
.mode-tag{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-2-800);background:rgba(63,74,44,.1);padding:4px 9px;border-radius:3px}
details.tier h3{font-size:30px}
details.tier .for{font-size:15px}
.tier-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--color-rule);padding-top:16px;margin-top:6px;flex-wrap:wrap}
.tier-foot .pr{font-size:14px;color:var(--color-ink-500)}.tier-foot .pr b{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--color-ink-900)}
.scope{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--color-ink-900)}.scope .plus{width:30px;height:30px;font-size:17px}
.tier-body{padding:0 26px 26px}
.tier-body ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.tier-body li,.audit-body li{padding-left:22px;position:relative;font-size:15px}
.tier-body li:before,.audit-body li:before{content:"→";position:absolute;left:0;color:var(--color-accent-600)}
.tier-body .own{background:var(--color-paper-light);padding:18px 20px;border-radius:4px}
.tier-body .own p{font-family:var(--serif);font-size:21px;line-height:1.25;color:var(--color-ink-900)}
.tier-body .own small{display:block;margin-top:10px;font-size:13.5px;color:var(--color-ink-500)}
details.audit-d{margin-top:28px;background:var(--color-accent-2-800);color:var(--color-on-accent-2-muted);border-radius:6px}
details.audit-d summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto minmax(0,.9fr) minmax(0,1.3fr) auto 36px;gap:24px;align-items:center;padding:24px 28px}
.audit-d .lbl{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-2-800);background:var(--color-on-accent-2-label);padding:4px 9px;border-radius:3px}
.audit-d h3{color:var(--color-on-accent-2);font-size:30px}
.audit-d .for{font-size:15px}
.audit-d .pr{font-size:13px;color:var(--color-on-accent-2-label);text-align:right;line-height:1.2}.audit-d .pr b{display:block;font-family:var(--serif);font-weight:400;font-size:28px;color:var(--color-on-accent-2)}
.audit-d .plus{border-color:var(--color-on-accent-2);color:var(--color-on-accent-2)}
details.audit-d[open] .plus{background:var(--color-on-accent-2);color:var(--color-accent-2-800)}
.audit-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding:8px 28px 32px;border-top:1px solid rgba(246,239,226,.15);padding-top:24px;margin:0 0 0}
.audit-body h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-on-accent-2-label);margin-bottom:12px}
.audit-body ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.audit-body li{color:var(--color-on-accent-2)}.audit-body li:before{color:var(--color-on-accent-2-label)}
.audit-body .ret{background:rgba(246,239,226,.08);padding:18px 20px;border-radius:4px;font-size:15px;color:var(--color-on-accent-2)}
.audit-body .small{font-size:13px;margin:12px 0 22px;color:var(--color-on-accent-2-label)}
.audit-body .btn{border-color:var(--color-on-accent-2);color:var(--color-on-accent-2)}.audit-body .btn:hover{background:var(--color-on-accent-2);color:var(--color-accent-2-800)}
@media (max-width:960px){
.matrix{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"c1 c2" "a1 a2" "b1 b2"}.mx-row,.mx-corner{display:none}
details.audit-d summary{grid-template-columns:minmax(0,1fr) auto 36px}.audit-d .lbl{grid-column:1/-1;justify-self:start}.audit-d .for{display:none}
.audit-body{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
.matrix{grid-template-columns:minmax(0,1fr);grid-template-areas:"c1" "a1" "b1" "c2" "a2" "b2"}.c2{margin-top:20px}
details.tier summary{padding:22px 20px 18px}.tier-body{padding:0 20px 22px}details.tier h3{font-size:26px}
details.audit-d summary{padding:20px;gap:14px}.audit-d h3{font-size:24px}.audit-body{padding:20px}
}
/* faq */
.faq .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px}
.faq h2{margin-top:18px}
details.q{border-bottom:1px solid var(--color-rule)}details.q:first-child{border-top:1px solid var(--color-rule)}
details.q summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px 0;font-family:var(--serif);font-size:26px;color:var(--color-ink-900);line-height:1.2}
details.q summary .plus{width:30px;height:30px;font-size:17px;flex:none}
details.q .a{padding:0 60px 26px 0}details.q .a p{margin-bottom:10px}details.q .a strong{color:var(--color-ink-900)}
/* cta */
.cta{background:var(--color-accent-2-800);color:var(--color-on-accent-2-muted);text-align:center;padding:72px 0;border:0}
.cta .eyebrow{justify-content:center;color:var(--color-on-accent-2-label)}.cta .eyebrow:before{display:none}
.cta h2{color:var(--color-on-accent-2);font-size:clamp(44px,6.4vw,84px);margin:22px auto 24px;max-width:900px}
.cta h2 em{color:#e7c9a4}
.cta p{max-width:600px;margin:0 auto 36px;font-size:18px}
.cta .btns{justify-content:center}
.cta .btn{border-color:var(--color-on-accent-2);color:var(--color-on-accent-2)}
.cta .btn.btn-dark{background:var(--color-on-accent-2);color:var(--color-accent-2-800)}
.cta .btn:hover{background:var(--color-accent-600);border-color:var(--color-accent-600);color:var(--color-paper-light)}
.cta small{display:block;margin-top:30px;font-size:14px;color:var(--color-on-accent-2-label)}
footer{background:var(--color-cover-bg);color:#b9ad97;padding:40px 0;font-size:14px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
footer .logo{color:var(--color-paper-light);font-size:24px;display:block}
footer a{color:var(--color-paper-light)}footer a:hover{color:#e7c9a4}
footer .links{display:flex;gap:20px}
/* responsive */
@media (max-width:960px){
nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--color-paper);border-bottom:1px solid var(--color-rule);flex-direction:column;gap:0;padding:8px 28px 20px}nav a{padding:14px 0;font-size:18px;border-bottom:1px solid var(--color-rule)}.nav-open nav{display:flex}.menu{display:flex;order:3}header .wrap{position:relative}
.hero .wrap,.sec-head,.ai .wrap,.about .wrap,.faq .wrap,.audit{grid-template-columns:minmax(0,1fr);gap:40px}
.hero .photo{max-width:420px}.photo .tag{left:-10px}
.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 0}.stat:nth-child(3){padding-left:0;border:0}
.exp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.exp,.exp:not(:nth-child(3n+1)){padding:28px 24px 30px 0;border-left:0}.exp:nth-child(2n){padding-left:24px;border-left:1px solid var(--color-rule)}
details.case summary,.case-body{grid-template-columns:minmax(0,1fr);gap:28px;padding-left:28px;padding-right:28px}
.job{grid-template-columns:minmax(0,1fr);gap:12px}
details.svc summary{grid-template-columns:minmax(0,1fr) auto 36px;gap:16px}
.svc .n,.svc .for{display:none}
.svc-body{grid-template-columns:minmax(0,1fr)}.svc-body ul,.svc-body .own{grid-column:1}
section{padding:48px 0}
}
@media (max-width:560px){
.wrap{padding:0 20px}.hdr-r a.plain{display:none}.hdr-r{gap:8px}.hdr-r .btn{padding:9px 14px;font-size:13px}.logo{font-size:22px}nav{padding:8px 20px 20px}
section{padding:40px 0}.hero{padding:28px 0 40px}.hero h1{font-size:52px}.hero .lede{font-size:17px}.btns .btn{flex:1 1 auto;justify-content:center}
.photo .tag{left:12px;bottom:16px}.sec-head{margin-bottom:36px;gap:20px}
.stat{padding:0 16px}.stat:nth-child(odd){padding-left:0;border:0}.stat b{font-size:32px}.stat span{font-size:13px}
details.case summary{padding:28px 20px}.case-body{padding:28px 20px 28px}.kpi b{font-size:30px}.case h3{font-size:28px}
.exp h3{font-size:26px}.audit h3{font-size:34px}.svc h3{font-size:24px}details.q summary{font-size:22px}
.stack .chip{font-size:14px;padding:7px 14px}.cta{padding:80px 0}.cta .btns .btn{flex:1 1 100%}
footer .wrap{flex-direction:column;align-items:flex-start}
.exp-grid,.kpis,.allres{grid-template-columns:minmax(0,1fr)}.exp:nth-child(2n){padding-left:0;border:0}
.audit{padding:32px 24px}
details.svc summary{grid-template-columns:minmax(0,1fr) 36px}.svc .pr{grid-column:1;text-align:left;grid-row:2}
.tools div{grid-template-columns:minmax(0,1fr);gap:8px}
details.q .a{padding-right:0}
}
.inr{font-size:inherit;color:inherit;display:inline-block}.kpi b{font-size:clamp(26px,2.6vw,36px)}.kpi,.allres div{min-width:0}

/* multi-page */
header .wrap{justify-content:flex-start}
header .logo{margin-right:auto}
nav a.on{color:var(--color-ink-900);box-shadow:inset 0 -1.5px 0 var(--color-accent-600)}
.hero{min-height:calc(100vh - 68px);display:flex;align-items:center;padding:80px 0}
.hero .wrap{width:100%;gap:96px}
.hero h1{margin:26px 0 10px}
.hero .role{margin-bottom:36px}
.hero .lede{font-size:20px;max-width:520px;margin-bottom:44px}
.hero .photo{max-width:440px;justify-self:end;width:100%}
.page-head{padding:96px 0 48px;border:0}
.page-head h1{font-size:clamp(52px,7vw,92px);letter-spacing:-.02em;margin:22px 0 20px}
.page-head h1 em{font-style:italic;color:var(--color-accent-2-800)}
.page-head p{font-size:19px;max-width:600px}
.recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:20px}
.rec{background:var(--color-card);border:1px solid var(--color-rule);border-radius:6px;padding:32px;display:flex;flex-direction:column;gap:24px}
.rec blockquote{font-family:var(--serif);font-size:24px;line-height:1.3;color:var(--color-ink-900)}
.rec .who{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--color-rule);padding-top:16px;margin-top:auto}
.rec .who b{color:var(--color-ink-900);font-weight:600;font-size:15px}
.rec .who span{font-size:13.5px;color:var(--color-ink-500);line-height:1.45}
.teasers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.teaser{display:flex;flex-direction:column;gap:14px;background:var(--color-card);border:1px solid var(--color-rule);border-radius:6px;padding:40px;color:var(--color-ink-700);transition:border-color .2s}
.teaser:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.teaser h3{font-size:clamp(30px,3.2vw,40px)}
.teaser .go{margin-top:auto;padding-top:12px;font-weight:600;color:var(--color-ink-900);font-size:15px}
.about-body .intro{border:0;margin:0 0 28px;padding:0}
.about-body .intro p{font-size:17px;margin-bottom:16px}
.stack-sec .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start}
.stack-sec h2{font-size:clamp(34px,4vw,50px);margin-top:18px}
@media (max-width:960px){
.hero{min-height:0;padding:56px 0 64px}.hero .photo{justify-self:start}
.teasers,.stack-sec .wrap{grid-template-columns:minmax(0,1fr);gap:28px}
.page-head{padding:64px 0 32px}
nav a.on{box-shadow:none;color:var(--color-accent-600)}
}
@media (max-width:560px){.teaser{padding:28px 24px}.rec{padding:24px}.rec blockquote{font-size:21px}}

/* v2: white background, nav always visible, socials */
:root{--color-paper:#fff;--color-paper-light:#f7f5f0}
header{background:rgba(255,255,255,.94)}
.takeaway{background:var(--color-paper-light)}
.proof,.ai{background:var(--color-paper-light)}
.chip{background:#fff}
.hdr-r .socials{display:flex;gap:16px}
.socials a{color:var(--color-ink-700);font-size:14px;font-weight:500}.socials a:hover{color:var(--color-accent-600)}
footer .links a{color:var(--color-paper-light)}
.hero .socials{display:flex;gap:20px;margin-top:36px;padding-top:20px;border-top:1px solid var(--color-rule);max-width:520px;flex-wrap:wrap}
.hero .socials:before{content:"Find me on";font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-500);align-self:center}
.feeds{display:flex;flex-direction:column;gap:64px}
.feed-h{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;border-bottom:1.5px solid var(--color-ink-900);padding-bottom:14px;margin-bottom:24px}
.feed-h h3{font-size:clamp(28px,3vw,38px)}
.feed-h a{font-weight:600;font-size:15px}
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:20px}
.post{display:flex;flex-direction:column;gap:10px;border:1px solid var(--color-rule);border-radius:6px;padding:28px;color:var(--color-ink-700)}
.post:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.post .date{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600)}
.post h4{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.15;color:var(--color-ink-900)}
.post p{font-size:15px}
.post .go{margin-top:auto;font-weight:600;color:var(--color-ink-900);font-size:14px}
.embeds{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:20px;align-items:start}
.embeds.one{grid-template-columns:minmax(0,640px)}
.embeds iframe{width:100%;border:1px solid var(--color-rule);border-radius:6px;background:#fff}
.feed-empty{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px dashed var(--color-rule);border-radius:6px;padding:28px;font-weight:600;color:var(--color-ink-900)}
.feed-empty span{font-family:var(--serif);font-weight:400;font-size:30px}
.feed-empty:hover{border-color:var(--color-ink-900);color:var(--color-accent-600)}
.feed-loading{color:var(--color-ink-500);font-size:15px}
@media (max-width:1180px){.hdr-r .socials{display:none}}
@media (min-width:761px) and (max-width:960px){
nav{display:flex;position:static;flex-direction:row;gap:22px;padding:0;background:none;border:0}
nav a{padding:0;font-size:15px;border:0}.menu{display:none!important}.hdr-r a.plain{display:none}
}
@media (max-width:760px){nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;border-bottom:1px solid var(--color-rule);flex-direction:column;gap:0;padding:8px 28px 20px}.nav-open nav{display:flex}.menu{display:flex}}

/* v3: personal-brand home */
section.h{padding:112px 0;border:0}
section.h.alt{background:var(--color-paper-light)}
.h .kick{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent-600);margin-bottom:20px}
.h h2{font-size:clamp(36px,4.6vw,56px);max-width:18ch;letter-spacing:-.01em}
.h .intro-p{font-size:18px;max-width:560px;margin-top:20px;color:var(--color-ink-700)}
.h-head{margin-bottom:56px}
.h-hero{padding:96px 0 0;border:0}
.h-hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:80px;align-items:center}
.h-hero h1{font-size:clamp(52px,6.6vw,88px);letter-spacing:-.025em;line-height:1}
.h-hero h1 em{font-style:italic;color:var(--color-accent-2-800)}
.h-hero .lede{font-size:20px;max-width:520px;margin:28px 0 40px}
.h-hero .small{margin-top:24px;font-size:15px;color:var(--color-ink-500);font-family:var(--serif);font-style:italic;font-size:20px}
.h-hero img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%;border-radius:200px 200px 6px 6px;display:block}
.creds{margin-top:96px;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}
.creds .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px}
.creds span{font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-700)}
.pains{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.pain{background:#fff;border-radius:6px;padding:36px;display:flex;flex-direction:column;gap:12px}
.pain h3{font-size:30px}
.pain p{font-size:16px}
.svc-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.svc-card{display:flex;flex-direction:column;gap:14px;border:1px solid var(--color-rule);border-radius:6px;padding:36px;color:var(--color-ink-700);transition:border-color .2s}
.svc-card:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.svc-card h3{font-size:32px}
.svc-card p{font-size:16px}
.svc-card .pr{margin-top:auto;padding-top:18px;border-top:1px solid var(--color-rule);font-size:14px;color:var(--color-ink-500);display:flex;justify-content:space-between;align-items:baseline}
.svc-card .pr b{font-family:var(--serif);font-weight:400;font-size:28px;color:var(--color-ink-900)}
.svc-card.dark{background:var(--color-accent-2-800);border-color:var(--color-accent-2-800);color:var(--color-on-accent-2-muted)}
.svc-card.dark h3,.svc-card.dark .pr b{color:var(--color-on-accent-2)}.svc-card.dark .pr{border-color:rgba(246,239,226,.2);color:var(--color-on-accent-2-label)}
.svc-card.dark .kick{color:var(--color-on-accent-2-label)}
.svc-card .kick{margin:0}
.more{margin-top:40px}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;list-style:none;counter-reset:s}
.steps li{border-top:1.5px solid var(--color-ink-900);padding-top:22px;display:flex;flex-direction:column;gap:12px}
.steps .n{font-family:var(--serif);font-size:56px;line-height:1;color:var(--color-accent-600)}
.steps h3{font-size:30px}
.steps p{font-size:16px}
.quote{text-align:center;max-width:860px;margin:0 auto}
.quote blockquote{font-family:var(--serif);font-size:clamp(30px,3.6vw,46px);line-height:1.2;color:var(--color-ink-900);letter-spacing:-.01em}
.quote figcaption{margin-top:32px;font-size:15px;color:var(--color-ink-500)}
.quote figcaption b{display:block;color:var(--color-ink-900);font-weight:600}
.work-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.work-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;background:#fff;border-radius:6px;padding:36px;color:var(--color-ink-700);border:1px solid transparent;transition:border-color .2s}
.work-card:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.work-card .meta{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-500);grid-column:1/-1}
.work-card h3{font-size:28px;line-height:1.15}
.work-card .big{text-align:right;font-family:var(--serif);font-size:52px;line-height:1;color:var(--color-accent-2-800)}
.work-card .big small{display:block;font-family:var(--sans);font-size:13px;color:var(--color-ink-500);margin-top:8px;max-width:140px;margin-left:auto;line-height:1.35}
.work-card .go{grid-column:1/-1;font-weight:600;font-size:15px;color:var(--color-ink-900)}
.soc-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:20px}
.soc-row a{display:flex;flex-direction:column;gap:6px;border:1px solid var(--color-rule);border-radius:6px;padding:28px;color:var(--color-ink-700)}
.soc-row a:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.soc-row b{font-family:var(--serif);font-weight:400;font-size:32px;color:var(--color-ink-900)}
.soc-row span{font-size:15px}
.h-faq .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px}
.h-cta{background:var(--color-accent-2-800);padding:120px 0;text-align:center;border:0}
.h-cta h2{color:var(--color-on-accent-2);margin:0 auto;max-width:16ch;font-size:clamp(40px,5.4vw,68px)}
.h-cta h2 em{color:#e7c9a4;font-style:italic}
.h-cta p{color:var(--color-on-accent-2-muted);max-width:520px;margin:24px auto 40px;font-size:18px}
.h-cta .btns{justify-content:center}
.h-cta .btn{border-color:var(--color-on-accent-2);color:var(--color-on-accent-2)}
.h-cta .btn-dark{background:var(--color-on-accent-2);color:var(--color-accent-2-800)}
.h-cta .btn:hover{background:var(--color-accent-600);border-color:var(--color-accent-600);color:#fff}
footer.rich{padding:80px 0 32px}
footer.rich .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:48px;align-items:start}
footer.rich h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#e7c9a4;margin-bottom:16px}
footer.rich ul{list-style:none;display:flex;flex-direction:column;gap:10px}
footer.rich .blurb p{margin-top:14px;max-width:340px;line-height:1.6}
footer.rich .links{display:flex;flex-direction:column;gap:10px}
footer.rich .base{grid-column:1/-1;border-top:1px solid rgba(246,239,226,.12);padding-top:24px;margin-top:24px;font-size:13px}
@media (max-width:960px){
.h-hero .wrap,.h-faq .wrap{grid-template-columns:minmax(0,1fr);gap:48px}.h-hero img{max-width:420px}
.svc-cards{grid-template-columns:minmax(0,1fr)}
.steps{grid-template-columns:repeat(2,minmax(0,1fr))}
.work-cards,.pains{grid-template-columns:minmax(0,1fr)}
footer.rich .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
section.h{padding:80px 0}.creds{margin-top:64px}
}
@media (max-width:560px){
.h-hero{padding-top:56px}.steps{grid-template-columns:minmax(0,1fr)}
.pain,.svc-card,.work-card{padding:26px}
.work-card{grid-template-columns:minmax(0,1fr)}.work-card .big{text-align:left}.work-card .big small{margin-left:0}
footer.rich .wrap{grid-template-columns:minmax(0,1fr)}
.creds .wrap{justify-content:flex-start;gap:12px 24px}
}

/* v4: calmer type + spacing */
h2{font-size:clamp(32px,3.6vw,46px)}
.h h2{font-size:clamp(32px,3.4vw,44px);max-width:28ch;line-height:1.1}
.h-cta h2{font-size:clamp(36px,4.4vw,56px);max-width:20ch}
.page-head h1{font-size:clamp(44px,5.4vw,72px)}
.h-hero h1{font-size:clamp(48px,5.6vw,76px)}
section.h{padding:80px 0}
.h-head{margin-bottom:36px}
.h-hero{padding:72px 0 0}
.res{margin-top:72px;background:var(--color-paper-light);border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}
.res .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-top:32px;padding-bottom:32px}
.res .wrap>div{padding:0 24px;border-left:1px solid var(--color-rule)}.res .wrap>div:first-child{padding-left:0;border:0}
.res b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(32px,3.2vw,44px);line-height:1;color:var(--color-ink-900);margin-bottom:8px}
.res span{font-size:14px}
.res + section.h.alt{border-top:0}
.find{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}
.find:before{content:"Find me on";width:100%;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-on-accent-2-label);margin-bottom:4px}
.find a{color:var(--color-on-accent-2);border-bottom:1px solid rgba(246,239,226,.4);font-weight:600;font-size:15px;margin:0 8px}
.find a:hover{color:#e7c9a4}
section.h,section.h-hero{border-top:0}
@media (max-width:960px){section.h{padding:64px 0}.res .wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0}.res .wrap>div:nth-child(3){padding-left:0;border:0}.res{margin-top:56px}}
@media (max-width:560px){.res .wrap>div{padding:0 14px}.res .wrap>div:nth-child(odd){padding-left:0;border:0}}

/* v5: diagrams, recs, blogs */
section.h{padding:56px 0}
.h-head{margin-bottom:32px}
.more{margin-top:28px}
.h-hero{padding:56px 0 0}.res{margin-top:56px}
.h-head.split{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.h-head.split p{max-width:420px;font-size:16px}
/* lifecycle diagram */
.life{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.life-g{border-radius:6px;padding:28px 28px 32px;background:#fff}
.life-g.miss{background:var(--color-accent-2-800);color:var(--color-on-accent-2-muted)}
.life-g .lbl{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-500);display:flex;justify-content:space-between;gap:12px}
.life-g.miss .lbl{color:var(--color-on-accent-2-label)}
.track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:28px;position:relative}
.track:before{content:"";position:absolute;left:12.5%;right:12.5%;top:9px;height:1.5px;background:var(--color-ink-900)}
.miss .track:before{background:none;border-top:1.5px dashed var(--color-on-accent-2-label)}
.node{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;position:relative}
.node i{width:20px;height:20px;border-radius:50%;background:var(--color-ink-900);display:block}
.miss .node i{background:var(--color-accent-2-800);border:1.5px dashed var(--color-on-accent-2)}
.node b{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.1;color:var(--color-ink-900)}
.miss .node b{color:var(--color-on-accent-2)}
.life-g p{margin-top:24px;font-size:15px;padding-top:18px;border-top:1px solid var(--color-rule)}
.life-g.miss p{border-color:rgba(246,239,226,.18)}
/* flow steps */
.flow{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr) 40px minmax(0,1fr);align-items:stretch}
.flow .arr{display:grid;place-items:center;color:var(--color-accent-600);font-size:28px}
.fstep{background:#fff;border-radius:26px;padding:26px 24px;display:flex;flex-direction:column;gap:10px}
.fstep .n{width:36px;height:36px;border-radius:50%;background:var(--color-accent-600);color:#fff;display:grid;place-items:center;font-weight:600;font-size:14px}
.fstep h3{font-size:28px}
.fstep p{font-size:15px}
.fstep.end{background:var(--color-accent-2-800)}.fstep.end h3{color:var(--color-on-accent-2)}.fstep.end p{color:var(--color-on-accent-2-muted)}.fstep.end .n{background:var(--color-on-accent-2);color:var(--color-accent-2-800)}
/* work viz */
.wk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.wk-card{display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid var(--color-rule);border-radius:6px;padding:30px;color:var(--color-ink-700);transition:border-color .2s}
.wk-card:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.wk-card .meta{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-500)}
.wk-card h3{font-size:26px;line-height:1.15}
.bars{display:flex;flex-direction:column;gap:14px;padding:18px 0;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}
.bar{display:grid;grid-template-columns:120px minmax(0,1fr) 72px;gap:12px;align-items:center;font-size:13px}
.bar .t{display:flex;flex-direction:column;gap:5px}
.bar .t s,.bar .t u{display:block;height:8px;border-radius:4px;text-decoration:none}
.bar .t s{background:rgba(34,28,20,.12)}
.bar .t u{background:var(--color-ink-900)}
.bar .t u.g{background:var(--color-accent-2-800)}
.bar .t u.c{background:var(--color-accent-600)}
.bar b{font-family:var(--serif);font-weight:400;font-size:24px;color:var(--color-ink-900);text-align:right;line-height:1}
.bar-key{display:flex;gap:16px;font-size:12px;color:var(--color-ink-500)}
.bar-key span{display:flex;align-items:center;gap:6px}.bar-key span:before{content:"";width:14px;height:6px;border-radius:3px;background:rgba(34,28,20,.12)}.bar-key span+span:before{background:var(--color-ink-900)}
.wk-card .go{font-weight:600;font-size:15px;color:var(--color-ink-900);margin-top:auto}
/* recommendations */
.recs2{columns:3 300px;column-gap:20px}
.r2{break-inside:avoid;margin:0 0 20px;background:#fff;border-radius:6px;padding:28px;display:flex;flex-direction:column;gap:20px;border:1px solid var(--color-rule)}
.r2 blockquote{font-family:var(--serif);font-size:23px;line-height:1.3;color:var(--color-ink-900)}
.r2 blockquote:before{content:"“";display:block;font-size:56px;line-height:.6;color:var(--color-accent-600);margin-bottom:6px}
.r2.full blockquote{font-family:var(--sans);font-size:15.5px;line-height:1.65;color:var(--color-ink-700)}
.r2.full blockquote p+p{margin-top:10px}
.r2 .who{display:flex;gap:12px;align-items:center;border-top:1px solid var(--color-rule);padding-top:16px}
.r2 .av{width:40px;height:40px;border-radius:50%;background:var(--color-paper-light);border:1px solid var(--color-rule);display:grid;place-items:center;font-family:var(--serif);font-size:18px;color:var(--color-ink-900);flex:none}
.r2 .who b{display:block;color:var(--color-ink-900);font-weight:600;font-size:15px}
.r2 .who span{font-size:13px;color:var(--color-ink-500);line-height:1.4;display:block}
/* blogs */
.blogs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:20px}
.blog{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--color-rule);border-radius:6px;padding:28px;color:var(--color-ink-700);transition:border-color .2s}
.blog:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.blog-n{font-family:var(--serif);font-size:40px;line-height:1;color:var(--color-accent-600)}
.blog-tag{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-500)}
.blog h3{font-size:24px;line-height:1.15}
.blog p{font-size:15px}
.blog .go{margin-top:auto;padding-top:10px;font-weight:600;font-size:14px;color:var(--color-ink-900)}
.blogs.list{grid-template-columns:minmax(0,1fr);gap:0;border-top:1.5px solid var(--color-ink-900)}
.blogs.list .blog{display:grid;grid-template-columns:72px 140px minmax(0,1fr) auto;align-items:baseline;gap:24px;border:0;border-bottom:1px solid var(--color-rule);border-radius:0;padding:28px 0;background:none}
.blogs.list .blog p{grid-column:3}.blogs.list .blog .go{grid-column:4;grid-row:1;padding:0}
.blogs.list .blog:hover h3{color:var(--color-accent-600)}
/* follow */
.follow{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding:28px 0}
.follow h3{font-size:30px}
.follow .links{display:flex;gap:12px;flex-wrap:wrap}
.follow .links a{border:1.5px solid var(--color-ink-900);border-radius:999px;padding:10px 20px;font-weight:600;font-size:15px;color:var(--color-ink-900)}
.follow .links a:hover{background:var(--color-ink-900);color:#fff}
@media (max-width:960px){
.life,.wk{grid-template-columns:minmax(0,1fr)}
.flow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.flow .arr{display:none}
.blogs.list .blog{grid-template-columns:56px minmax(0,1fr);gap:8px 16px}.blogs.list .blog>*{grid-column:2}.blogs.list .blog .blog-n{grid-column:1;grid-row:1/5}.blogs.list .blog .go{grid-row:auto}
}
@media (max-width:560px){
.flow{grid-template-columns:minmax(0,1fr)}
.track{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}.track:before{display:none}
.bar{grid-template-columns:96px minmax(0,1fr) 60px}
.life-g,.wk-card{padding:22px}
}

.r2 .who .av{display:grid;font-size:18px;color:var(--color-ink-900);line-height:1}
.h-head.split>div:first-child{flex:1 1 420px;min-width:0}
.bar-key span+span:before{background:linear-gradient(90deg,var(--color-accent-600) 50%,var(--color-accent-2-800) 50%)}

/* v6: tighten negative space */
.h-hero{padding:48px 0 0}
.h-hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:56px;max-width:1120px}
.h-hero h1{font-size:clamp(46px,5.4vw,80px)}
.h-hero .lede{max-width:600px;margin:22px 0 32px;font-size:19px}
.h-hero img{aspect-ratio:5/6;max-height:460px}
.res{margin-top:48px}
.page-head{padding:56px 0 28px}
.page-head h1{margin:16px 0 14px}
section{padding:48px 0}
section.h{padding:52px 0}
.h-cta{padding:80px 0}
.h-cta p{margin:18px auto 28px}
footer.rich{padding:56px 0 28px}
.sec-head{margin-bottom:28px}
details.case summary{padding:32px 36px}
.case-body{padding:28px 36px 36px}
@media (max-width:960px){.h-hero .wrap{grid-template-columns:minmax(0,1fr);gap:32px}.h-hero img{max-width:360px}.page-head{padding:44px 0 24px}section.h{padding:44px 0}}

:root{--serif:'Instrument Serif',Georgia,serif;--sans:'Hanken Grotesk',system-ui,sans-serif}
/* v7 */
.res .wrap{max-width:960px;text-align:center}
.res .wrap>div,.res .wrap>div:first-child{padding:0 24px;border-left:1px solid var(--color-rule)}
.res .wrap>div:first-child{border-left:0}
.svc-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:48px;align-items:center}
.svc-band h2{margin:0}
.svc-list{display:flex;flex-direction:column;border-top:1.5px solid var(--color-ink-900)}
.svc-list a{display:grid;grid-template-columns:minmax(0,1fr) auto 24px;gap:16px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--color-rule);color:var(--color-ink-700)}
.svc-list a:hover b{color:var(--color-accent-600)}
.svc-list b{font-family:var(--serif);font-weight:400;font-size:26px;color:var(--color-ink-900);transition:color .2s}
.svc-list small{display:block;font-size:14px;color:var(--color-ink-500);margin-top:2px}
.svc-list .p{font-size:14px;color:var(--color-ink-500);white-space:nowrap}.svc-list .p strong{font-family:var(--serif);font-weight:400;font-size:22px;color:var(--color-ink-900)}
.svc-list i{font-style:normal;color:var(--color-accent-600)}
@media (max-width:960px){.svc-band{grid-template-columns:minmax(0,1fr);gap:24px}}
@media (max-width:560px){.svc-list a{grid-template-columns:minmax(0,1fr) 20px}.svc-list .p{grid-column:1}}

/* Option E: same fonts, calmer pairing */
html.type-e h1,html.type-e h2{letter-spacing:-.005em;line-height:1.08}
html.type-e .h-hero h1{letter-spacing:-.01em}
html.type-e :is(.pain h3,.svc-card h3,.fstep h3,.wk-card h3,.blog h3,.steps h3,.exp h3,details.tier h3,.feed-h h3,.follow h3,.teaser h3,.ongoing-h h3,.svc h3,.audit-d h3,.mx-col b,.mx-row b,.svc-list b,.node b,.soc-row b,details.q summary){font-family:var(--sans);font-weight:600;letter-spacing:-.01em;line-height:1.25}
html.type-e :is(.pain h3,.wk-card h3,.blog h3,.exp h3,details.tier h3,.svc-list b,.audit-d h3){font-size:21px}
html.type-e :is(.fstep h3,.svc-card h3,.steps h3,.follow h3,.feed-h h3,.teaser h3){font-size:22px}
html.type-e :is(.node b){font-size:15px}
html.type-e :is(.mx-col b){font-size:20px}html.type-e .mx-row b{font-size:18px}
html.type-e details.q summary{font-size:18px}
html.type-e .case h3{letter-spacing:-.005em}
html.type-e .r2 blockquote{font-size:21px;line-height:1.35}
html.type-e .kick,html.type-e .eyebrow{letter-spacing:.12em}

/* Site fonts: option C */
:root{--serif:'DM Serif Display',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif}

/* v8: smaller type for DM Serif Display (wider than Instrument Serif) */
body{font-size:16px}
h2,.h h2,.sec-head h2{font-size:clamp(28px,2.8vw,36px);line-height:1.15}
.h-hero h1,.hero h1{font-size:clamp(34px,3.6vw,48px)!important;line-height:1.12!important;letter-spacing:-.01em}
.page-head h1{font-size:clamp(36px,4vw,52px);line-height:1.1}
.h-cta h2,.cta h2{font-size:clamp(30px,3.4vw,44px)}
.h-hero .lede,.hero .lede,.page-head p{font-size:17px}
.h .intro-p,.sec-head p,.h-head.split p{font-size:16px}
.res b,.stat b{font-size:clamp(26px,2.4vw,34px)}
.res span{font-size:13px}
.pain h3,.svc-card h3,.fstep h3,.steps h3,.exp h3,details.tier h3,.follow h3,.feed-h h3,.teaser h3,.ongoing-h h3{font-size:22px;line-height:1.2}
.wk-card h3,.blog h3,.work-card h3{font-size:20px;line-height:1.25}
.case h3{font-size:clamp(24px,2.4vw,30px)}
.svc-list b,.svc h3,.audit-d h3{font-size:21px}
.svc-list .p strong,.svc-card .pr b,.tier-foot .pr b,.audit-d .pr b,.svc .pr b{font-size:20px}
.node b{font-size:17px}
.mx-col b{font-size:24px}.mx-row b{font-size:20px}
.kpi b{font-size:clamp(22px,2vw,28px)!important}
.allres b{font-size:22px}
.bar b{font-size:20px}
.fstep .n{width:32px;height:32px;font-size:13px}
.blog-n{font-size:30px}
.steps .n{font-size:40px}
.job .when b{font-size:24px}
details.q summary{font-size:19px}
.r2 blockquote{font-size:18px;line-height:1.4}
.r2 blockquote:before{font-size:44px}
.r2.full blockquote{font-size:15px}
.quote blockquote{font-size:clamp(24px,2.6vw,32px)}
.takeaway p{font-size:19px}
.pullnum,.case-body .pullnum{font-size:20px!important}
.about .lead,.intro .lead,.hero .role{font-size:clamp(20px,2vw,24px)}
.tier-body .own p,.svc-body .own p{font-size:18px}
.logo{font-size:22px}
footer .logo{font-size:20px}
.btn{font-size:14px;padding:12px 22px}
nav a{font-size:14.5px}
.kick,.eyebrow{font-size:12px}
.svc-card,.pain,.wk-card,.blog,.fstep,.life-g{padding:26px}
@media (max-width:560px){.h-hero h1{font-size:32px!important}h2,.h h2{font-size:26px}}

.cs-peek{display:flex;flex-direction:column;border-top:1.5px solid var(--color-ink-900)}
.cs-peek a{display:grid;grid-template-columns:200px minmax(0,1fr) 24px;gap:28px;align-items:center;padding:20px 0;border-bottom:1px solid var(--color-rule);color:var(--color-ink-700)}
.cs-peek a:hover b{color:var(--color-accent-600)}
.cs-num{font-family:var(--serif);font-size:28px;line-height:1;color:var(--color-accent-2-800)}
.cs-num small{display:block;font-family:var(--sans);font-size:12.5px;color:var(--color-ink-500);margin-top:6px}
.cs-t small{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-500);margin-bottom:4px}
.cs-t b{font-family:var(--serif);font-weight:400;font-size:20px;line-height:1.25;color:var(--color-ink-900);transition:color .2s}
.cs-peek i{font-style:normal;color:var(--color-accent-600)}
@media (max-width:560px){.cs-peek a{grid-template-columns:minmax(0,1fr) 20px;gap:10px 16px}.cs-num{grid-column:1}.cs-t{grid-column:1}.cs-peek i{grid-row:1/3;grid-column:2}}

.recs2.peek{columns:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.recs2.peek .r2{margin:0}
@media (max-width:960px){.recs2.peek{grid-template-columns:minmax(0,1fr)}}
details.more-rec summary{list-style:none;cursor:pointer;margin-top:10px;font-family:var(--sans);font-weight:600;font-size:14px;color:var(--color-ink-900);border-bottom:1.5px solid var(--color-accent-600);display:inline-block;padding-bottom:2px}
details.more-rec summary::-webkit-details-marker{display:none}
details.more-rec .c{display:none}details.more-rec[open] .o{display:none}details.more-rec[open] .c{display:inline}
details.more-rec[open] summary{order:2}
details.more-rec{display:flex;flex-direction:column}
details.more-rec p{margin-top:10px}

.blogs.list.peek .blog{padding:20px 0}.blogs.list.peek .blog p{display:none}.blogs.list.peek .blog-n{font-size:24px}

figure.r2{grid-area:auto}

/* headings: 1 line, max 2 */
h1,h2{text-wrap:balance}
.h h2,.sec-head h2,.h-head h2,h2{max-width:none}
.h-head.split>div:first-child{flex:1 1 560px}
.svc-band{grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr)}
.page-head h1{max-width:none}
.h-hero h1{max-width:22ch}
.h-cta h2{max-width:26ch}
.sec-head{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}

.h-hero h1{max-width:40ch}
.h-hero .wrap{grid-template-columns:minmax(0,1.5fr) minmax(0,340px)}
.h-cta h2{max-width:36ch}

/* body text in sans, serif only for headings + big numbers */
.r2 blockquote,.quote blockquote,.takeaway p,.tier-body .own p,.svc-body .own p,.rec blockquote{font-family:var(--sans);font-weight:400;letter-spacing:0}
.r2 blockquote{font-size:16.5px;line-height:1.6;color:var(--color-ink-700)}
.r2 blockquote:before{font-family:var(--serif)}
.takeaway p{font-size:17px;font-weight:600;color:var(--color-ink-900);line-height:1.45}
.tier-body .own p,.svc-body .own p{font-size:16px;font-weight:500;line-height:1.5}
.pullnum,.case-body .pullnum{font-family:var(--sans)!important;font-weight:600;font-size:17px!important;line-height:1.45}
.about .lead,.intro .lead,.hero .role{font-family:var(--sans);font-style:normal;font-weight:500;font-size:19px;line-height:1.45}

/* item titles in sans; serif reserved for section headings + big numbers */
.blog h3,.cs-t b,.svc-list b,.wk-card h3,.node b,.pain h3,.fstep h3,.svc-card h3,.exp h3,details.tier h3,.teaser h3,.follow h3,.feed-h h3,.ongoing-h h3,.svc h3,.audit-d h3,.mx-col b,.mx-row b,.soc-row b,details.q summary,.post h4,.r2 .av,.rec .who b{font-family:var(--sans);font-weight:600;letter-spacing:-.005em}
.blog h3,.cs-t b{font-size:18px;line-height:1.35}
.blogs.list .blog h3{font-size:18px}
.svc-list b{font-size:19px}
.pain h3,.fstep h3,.svc-card h3,.exp h3,details.tier h3,.teaser h3,.audit-d h3{font-size:20px;line-height:1.3}
.node b{font-size:15px}
.mx-col b{font-size:20px}.mx-row b{font-size:17px}
details.q summary{font-size:17px}
.r2 .av{font-size:14px}
.blog-n{font-family:var(--sans);font-weight:600;font-size:15px!important;color:var(--color-accent-600);letter-spacing:.04em}

.cs-band{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}.cs-band>div{flex:1 1 520px;min-width:0}.cs-band .intro-p{margin-top:12px}

/* Option A (your system fonts), sized for Instrument Serif's narrower letters */
html.type-a h2,html.type-a .h h2,html.type-a .sec-head h2{font-size:clamp(34px,3.4vw,46px);line-height:1.05;letter-spacing:-.01em}
html.type-a .h-hero h1{font-size:clamp(42px,4.4vw,60px)!important;line-height:1.02!important;letter-spacing:-.015em}
html.type-a .page-head h1{font-size:clamp(44px,4.8vw,64px);line-height:1}
html.type-a .h-cta h2,html.type-a .cta h2{font-size:clamp(36px,4vw,54px)}
html.type-a .res b,html.type-a .stat b{font-size:clamp(32px,3vw,42px)}
html.type-a .logo{font-size:26px}
html.type-a .case h3{font-size:clamp(28px,2.8vw,36px)}
html.type-a .kpi b{font-size:clamp(26px,2.4vw,34px)!important}
html.type-a .allres b{font-size:26px}
html.type-a .svc-list .p strong,html.type-a .svc-card .pr b,html.type-a .tier-foot .pr b,html.type-a .audit-d .pr b{font-size:24px}

.h-hero .wrap{max-width:1180px;grid-template-columns:minmax(0,1fr) minmax(0,300px);gap:56px}
html:not(.type-a) .h-hero h1{font-size:clamp(32px,3.2vw,42px)!important}

/* no italics in headings */
h1 em,h2 em,h3 em,.h-cta h2 em,.cta h2 em,.page-head h1 em{font-style:normal}

/* Buttons: two types only */
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;font-family:var(--sans);font-weight:600;font-size:14px;line-height:1.2;border:1.5px solid var(--color-ink-900);transition:background .2s,color .2s,border-color .2s}
.btn-primary,.h-cta .btn-primary,.cta .btn-primary,.audit-body .btn-primary{background:var(--color-ink-900);border-color:var(--color-ink-900);color:#fff}
.btn-primary:hover,.h-cta .btn-primary:hover,.cta .btn-primary:hover,.audit-body .btn-primary:hover{background:var(--color-accent-2-800);border-color:var(--color-accent-2-800);color:#fff}
.btn-secondary,.h-cta .btn-secondary,.cta .btn-secondary,.audit-body .btn-secondary{background:transparent;border-color:var(--color-ink-900);color:var(--color-ink-900)}
.btn-secondary:hover,.h-cta .btn-secondary:hover,.cta .btn-secondary:hover,.audit-body .btn-secondary:hover{background:var(--color-ink-900);border-color:var(--color-ink-900);color:#fff}
/* on dark green bands */
.h-cta .btn-primary,.cta .btn-primary,.audit-body .btn-primary{background:#fff;border-color:#fff;color:var(--color-ink-900)}
.h-cta .btn-primary:hover,.cta .btn-primary:hover,.audit-body .btn-primary:hover{background:var(--color-paper-light);border-color:var(--color-paper-light);color:var(--color-ink-900)}
.h-cta .btn-secondary,.cta .btn-secondary,.audit-body .btn-secondary{border-color:#fff;color:#fff}
.h-cta .btn-secondary:hover,.cta .btn-secondary:hover,.audit-body .btn-secondary:hover{background:#fff;border-color:#fff;color:var(--color-ink-900)}
.hdr-r .btn{padding:10px 18px;font-size:14px}
.follow .links a{border-width:1.5px;padding:12px 22px;font-size:14px}

h1 em,h2 em,h3 em{font-style:normal!important}

/* v9 */
.h-hero{padding:40px 0}
.h-hero .wrap{align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,320px)}
.h-hero img{aspect-ratio:1/1;max-height:none;width:100%;border-radius:10px;object-position:50% 30%;box-shadow:0 14px 34px rgba(34,28,20,.12)}
.res{margin-top:0}
section.h{padding:40px 0}
.h-head{margin-bottom:24px}
.h-head .intro-p.one{max-width:none;margin-top:10px}
.h-cta{padding:56px 0}
.more{margin-top:20px}
@media (max-width:960px){.h-hero img{max-width:280px}section.h{padding:36px 0}}

/* Case studies page v2 */
.cs-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:32px}
.cs-index a{display:flex;flex-direction:column;gap:6px;padding:18px 20px;background:var(--color-paper-light);border:1px solid transparent;border-radius:12px;color:var(--color-ink-700);transition:border-color .2s,background .2s}
.cs-index a:hover{border-color:var(--color-ink-900);background:#fff;color:var(--color-ink-700)}
.cs-index .n{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600)}
.cs-index b{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.05;color:var(--color-ink-900)}
.cs-index .l{font-size:13px;color:var(--color-ink-500)}
.cs2{display:flex;flex-direction:column;gap:20px;border:0}
.cs2 details.case{background:#fff;border:1px solid var(--color-rule);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(34,28,20,.06);scroll-margin-top:84px;margin:0;padding:0}
.cs2 details.case[open]{border-color:rgba(34,28,20,.32)}
.cs2 details.case summary{display:flex;flex-direction:column;gap:24px;padding:32px 36px;cursor:pointer;list-style:none;border:0}
.cs2 details.case summary::-webkit-details-marker{display:none}
.cs2 .sum{display:flex;flex-direction:column;gap:10px;max-width:780px}
.cs2 .meta{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600)}
.cs2 .meta span{color:var(--color-ink-500);font-weight:500}
.cs2 .sum h3{font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.3vw,30px);line-height:1.15;color:var(--color-ink-900);margin:4px 0 2px}
.cs2 .sum p{font-size:16px;line-height:1.6;color:var(--color-ink-700);margin:0}
.cs2 .sum p strong{color:var(--color-ink-900)}
.cs2 .toggle{order:9;align-self:flex-start;display:inline-flex;align-items:center;gap:10px;margin-top:10px;padding:10px 18px;border:1.5px solid var(--color-ink-900);border-radius:999px;font-size:14px;font-weight:600;color:var(--color-ink-900);transition:background .2s,color .2s}
.cs2 summary:hover .toggle{background:var(--color-ink-900);color:#fff}
.cs2 .toggle i{font-style:normal;font-size:18px;line-height:1;transition:transform .2s}
.cs2 .toggle .c{display:none}
.cs2 details[open] .toggle .o{display:none}.cs2 details[open] .toggle .c{display:inline}
.cs2 details[open] .toggle i{transform:rotate(45deg)}
.cs2 .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--color-rule);border:1px solid var(--color-rule);border-radius:12px;overflow:hidden;margin:0}
.cs2 .kpi{background:var(--color-paper-light);padding:18px 20px;display:flex;flex-direction:column;gap:6px;border:0;margin:0}
.cs2 .kpi b{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2vw,28px)!important;line-height:1.05;color:var(--color-ink-900)}
.cs2 .kpi b small{font-family:var(--sans);font-size:13px;color:var(--color-ink-500)}
.cs2 .kpi span{font-size:13px;line-height:1.4;color:var(--color-ink-500)}
.cs2 .kpi.hl{background:var(--color-accent-2-800)}
.cs2 .kpi.hl b,.cs2 .kpi.hl b small{color:var(--color-on-accent-2)}
.cs2 .kpi.hl span{color:var(--color-on-accent-2-muted)}
.cs2 .case-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:48px;padding:8px 36px 40px;border-top:1px solid var(--color-rule);margin:0 36px 0 36px;padding-left:0;padding-right:0;background:none}
.cs2 .case-body h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-600);margin:32px 0 12px}
.cs2 .case-body p{font-size:16px;line-height:1.65;color:var(--color-ink-700);margin:0 0 12px}
.cs2 .case-body ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.cs2 .case-body li{position:relative;padding-left:22px;font-size:16px;line-height:1.6;color:var(--color-ink-700)}
.cs2 .case-body li:before{content:"→";position:absolute;left:0;top:0;color:var(--color-accent-600)}
.cs2 .case-body li strong{color:var(--color-ink-900)}
.cs2 .pullnum{background:var(--color-paper-light);border-radius:12px;padding:16px 20px!important;margin:20px 0 12px!important;font-family:var(--sans)!important;font-size:16.5px!important;font-weight:600;line-height:1.45;color:var(--color-ink-900)!important;border:0}
.cs2 .pullnum span{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-600);margin-bottom:6px}
.cs2 .cs-side{position:sticky;top:88px;align-self:start}
.cs2 .allres{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--color-rule);border:1px solid var(--color-rule);border-radius:12px;overflow:hidden;margin:0 0 16px}
.cs2 .allres div{background:#fff;padding:16px 18px;display:flex;flex-direction:column;gap:4px;border:0;margin:0}
.cs2 .allres b{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.1;color:var(--color-ink-900)}
.cs2 .allres b small{font-family:var(--sans);font-size:12px;color:var(--color-ink-500)}
.cs2 .allres span{font-size:12.5px;line-height:1.4;color:var(--color-ink-500)}
.cs2 .takeaway{background:var(--color-accent-2-800);border-radius:14px;padding:22px 24px;border:0;margin:0}
.cs2 .takeaway p{font-family:var(--sans);font-size:15px;font-weight:400;line-height:1.6;color:var(--color-on-accent-2-muted);margin:0 0 10px}
.cs2 .takeaway p:first-child{font-family:var(--serif);font-size:21px;line-height:1.2;color:var(--color-on-accent-2)}
.cs2 .takeaway p:last-child{margin:0}
#work + #expertise,#expertise{background:var(--color-paper-light)}
@media (max-width:960px){
.cs-index{grid-template-columns:repeat(2,minmax(0,1fr))}
.cs2 .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.cs2 .case-body{grid-template-columns:minmax(0,1fr);gap:8px}
.cs2 .cs-side{position:static}
}
@media (max-width:560px){
.cs2 details.case summary{padding:22px}
.cs2 .case-body{margin:0 22px;padding-bottom:28px}
.cs-index b{font-size:22px}
}

.cs2 .kpis{align-self:stretch;width:100%}
.cs2 .sum{align-self:stretch}

.cs2 .sum{max-width:none}
.cs2 .sum p{max-width:none;margin:0}
.cs2 .sum p strong,.cs2 .case-body p strong,.cs2 .case-body li strong{font-weight:600}
.cs2 .sum p + p{margin-top:2px}
.cs2 details.case summary{gap:18px}

.cs2 .sum{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.cs2 .sum p{text-wrap:wrap;max-width:none!important}
.cs2 .sum p+p{margin-top:6px!important}

/* tiers: same outline whether open or closed */
details.tier,details.tier[open]{border:1px solid var(--color-rule);box-shadow:none}
details.tier:hover{border-color:var(--color-ink-900)}

/* matrix row label shares .r2 with recommendation cards: reset */
.mx-row.r2{background:none;border:0;border-top:1px solid var(--color-rule);border-radius:0;padding:26px 0 0;margin:0;gap:6px;grid-area:r2}

/* home v10 */
.hero-sub{font-size:15px;color:var(--color-ink-500);margin:-16px 0 28px;max-width:600px}
.res span{max-width:260px;margin:0 auto;display:block;line-height:1.45}
.cw{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cw-card{display:flex;flex-direction:column;gap:14px;background:#fff;border:1px solid var(--color-rule);border-radius:14px;padding:26px;color:var(--color-ink-700);transition:border-color .2s}
.cw-card:hover{border-color:var(--color-ink-900);color:var(--color-ink-700)}
.cw-card .meta{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600)}
.cw-card p{font-size:15.5px;line-height:1.55;margin:0}
.cw-stat{margin-top:auto;padding-top:16px;border-top:1px solid var(--color-rule);font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.1;color:var(--color-accent-2-800)}
.cw-stat span{display:block;font-family:var(--sans);font-size:13px;color:var(--color-ink-500);margin-top:4px}
.cw-card .go{font-weight:600;font-size:14px;color:var(--color-ink-900)}
.ab-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.ab-band h2{margin:0}
.svc-band{align-items:start}
.recs2.peek.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.h-head.split h2{flex:1 1 420px;min-width:0;margin:0}
footer.rich .wrap{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}
footer.rich .links{flex-direction:row;flex-wrap:wrap;gap:10px 20px}
@media (max-width:960px){.cw,.ab-band,.recs2.peek.two{grid-template-columns:minmax(0,1fr)}.ab-band{gap:16px}footer.rich .wrap{grid-template-columns:minmax(0,1fr)}}

/* case studies v3: two results + single reading column */
.page-head .ph-note{font-size:14px;color:var(--color-ink-500);margin-top:8px}
.cs2 .kpis.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px}
.cs2 .case-body.one{display:block;margin:0 36px;padding:4px 0 40px}
.cs2 .cs-read{max-width:720px}
.cs2 .cs-read h4:first-child{margin-top:28px}
@media (max-width:560px){.cs2 .case-body.one{margin:0 22px;padding-bottom:28px}.cs2 .kpis.two{grid-template-columns:minmax(0,1fr)}}

.cs2 .kpis.two{max-width:none}
.cs2 .cs-read{max-width:none}

/* services v2 */
section.sv-sec{padding:44px 0;border:0}
section.sv-sec.alt{background:var(--color-paper-light)}
.sv-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 32px;margin-bottom:24px}
.sv-head h2{margin:0}
.sv-head p{font-size:16px;max-width:560px;margin:0;color:var(--color-ink-700)}
.sv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.sv-card,.sv-audit{background:#fff;border:1px solid var(--color-rule);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:14px}
.sv-tag{align-self:flex-start;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600)}
.sv-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;font-size:14px;color:var(--color-ink-500)}
.sv-price b{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1;color:var(--color-ink-900)}
.sv-desc{font-size:16px;line-height:1.55;color:var(--color-ink-700);margin:0}
.sv-scope{border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}
.sv-scope summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-weight:600;font-size:14px;color:var(--color-ink-900)}
.sv-scope summary::-webkit-details-marker{display:none}
.sv-scope summary i{font-style:normal;font-size:18px;color:var(--color-accent-600);transition:transform .2s}
.sv-scope .c{display:none}.sv-scope[open] .o{display:none}.sv-scope[open] .c{display:inline}.sv-scope[open] summary i{transform:rotate(45deg)}
.sv-scope ul{list-style:none;padding:0 0 16px;margin:0;display:flex;flex-direction:column;gap:10px}
.sv-scope li{position:relative;padding-left:22px;font-size:15px;line-height:1.55;color:var(--color-ink-700)}
.sv-scope li:before{content:"→";position:absolute;left:0;color:var(--color-accent-600)}
.sv-scope li strong{color:var(--color-ink-900);font-weight:600}
.sv-note{font-size:14px;line-height:1.55;color:var(--color-ink-500);background:var(--color-paper-light);border-radius:10px;padding:12px 14px;margin:0 0 16px}
.sv-cta{align-self:flex-start}
.sv-audit{padding:32px}
.sv-audit-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end}
.sv-audit-top h2{margin:8px 0 10px}
.sv-audit-side{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.sv-audit-cols{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;padding-bottom:8px}
.sv-audit-cols h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-600);margin:4px 0 12px}
.sv-audit-cols p{font-size:15px;line-height:1.6;color:var(--color-ink-700);margin:0 0 10px}
@media (max-width:860px){.sv-grid,.sv-audit-cols,.sv-audit-top{grid-template-columns:minmax(0,1fr)}.sv-audit-top{gap:16px}.sv-audit-cols{gap:8px}}
@media (max-width:560px){.sv-card,.sv-audit{padding:22px}}

/* services v2 polish */
.page-head p{max-width:760px}
.sv-grid{align-items:stretch}
.sv-card{gap:12px}
.sv-card .sv-scope{margin-top:4px}
.sv-card .sv-cta{margin-top:auto}
.sv-card .sv-scope + .sv-cta{margin-top:8px}
.sv-card>.sv-desc{flex:0 0 auto}
.sv-price{column-gap:6px;row-gap:2px}
.sv-price .lbl{flex-basis:100%;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-500)}
.sv-tag{margin-bottom:2px}
.sv-head{align-items:end;margin-bottom:20px}
.sv-head p{flex:1 1 420px;max-width:none;text-align:left}
.sv-head h2{flex:0 1 auto}
.sv-audit-top{align-items:start}
.sv-audit .sv-scope{margin-top:8px}
.sv-audit-side{padding-top:22px}

.sv-head{display:block;margin-bottom:22px}
.sv-head p{max-width:760px;margin-top:8px}
.sv-grid{align-items:start}
.sv-title{font-family:var(--sans);font-weight:600;font-size:20px;line-height:1.2;color:var(--color-ink-900);margin:0 0 4px}
.sv-audit .sv-scope{border-bottom:0}
.sv-audit .sv-scope summary{padding-bottom:0}
.sv-audit .sv-scope[open] summary{padding-bottom:14px}
.sv-audit-side{padding-top:28px}

footer.rich{padding:40px 0 24px}
footer.rich .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:16px 40px;align-items:start}
footer.rich .blurb p{margin-top:8px}
footer.rich ul{gap:6px}
footer.rich .base{margin-top:8px;padding-top:18px}
@media (max-width:960px){footer.rich .wrap{grid-template-columns:minmax(0,1fr) auto;}footer.rich .wrap>div:nth-child(2){grid-column:1}footer.rich .wrap>div:nth-child(3){grid-column:2;grid-row:1}}
@media (max-width:560px){footer.rich .wrap{grid-template-columns:minmax(0,1fr)}footer.rich .wrap>div:nth-child(3){grid-column:1;grid-row:auto}}

/* about v2 */
.ab-hero{padding:48px 0 52px;border:0}
.ab-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,320px);gap:56px;align-items:start}
.ab-hero h1{font-size:clamp(32px,3.2vw,42px);line-height:1.12;margin:16px 0 20px}
.ab-copy p{font-size:16.5px;line-height:1.65;color:var(--color-ink-700);margin:0 0 14px}
.ab-copy .ab-lede{font-size:18.5px;color:var(--color-ink-900)}
.ab-copy .ab-pull{font-family:var(--serif);font-size:24px;line-height:1.25;color:var(--color-accent-2-800);margin:20px 0}
.ab-copy .btns{margin-top:24px}
.ab-photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%;border-radius:10px;position:sticky;top:96px;box-shadow:0 14px 34px rgba(34,28,20,.12)}
.tl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tl-group{background:var(--color-paper-light);border-radius:14px;padding:22px}
.tl-group h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-600);margin:0 0 14px}
.tl-chips{display:flex;flex-wrap:wrap;gap:8px}
.tl-chips span{background:#fff;border:1px solid var(--color-rule);border-radius:999px;padding:7px 14px;font-size:14px;font-weight:500;color:var(--color-ink-900)}
.recs-more{margin-top:20px}
.recs-more>summary{list-style:none;cursor:pointer}
.recs-more>summary::-webkit-details-marker{display:none}
.recs-more .c{display:none}.recs-more[open] .o{display:none}.recs-more[open] .c{display:inline}
.recs-more[open]>summary{margin-bottom:20px}
.recs-more .recs2 .r2{background:#fff}
.h-cta .find{margin-top:24px}
@media (max-width:860px){.ab-hero .wrap{grid-template-columns:minmax(0,1fr);gap:28px}.ab-photo{position:static;max-width:300px;order:-1}.tl-grid{grid-template-columns:minmax(0,1fr)}}

.soc-btns{display:flex;flex-wrap:wrap;gap:10px}
.soc-btns a{display:inline-flex;align-items:center;padding:10px 18px;border:1.5px solid var(--color-ink-900);border-radius:999px;font-weight:600;font-size:14px;color:var(--color-ink-900);transition:background .2s,color .2s}
.soc-btns a:hover{background:var(--color-ink-900);color:#fff}

/* writing list */
.wr-h{margin:0 0 18px}
.wr-list{display:flex;flex-direction:column;border-top:1.5px solid var(--color-ink-900)}
.wr-item{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--color-rule);color:var(--color-ink-700)}
.wr-item:hover h3{color:var(--color-accent-600)}
.wr-plat{justify-self:start;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-600);background:rgba(180,96,47,.08);border-radius:999px;padding:4px 10px}
.wr-txt h3{font-family:var(--sans);font-weight:600;font-size:18px;line-height:1.35;color:var(--color-ink-900);margin:0 0 4px;transition:color .2s}
.wr-txt p{font-size:15px;line-height:1.55;margin:0}
.wr-go{font-weight:600;font-size:14px;color:var(--color-ink-900);white-space:nowrap}
@media (max-width:760px){.wr-item{grid-template-columns:minmax(0,1fr);gap:8px}}

/* contact v2 */
.ct-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ct-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;background:var(--color-paper-light);border-radius:16px;padding:32px}
.ct-card h3{font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.1;color:var(--color-ink-900);margin:0}
.ct-card p{font-size:16px;line-height:1.6;color:var(--color-ink-700);margin:0 0 8px}
.ct-card.dark{background:var(--color-accent-2-800)}
.ct-card.dark h3{color:var(--color-on-accent-2)}.ct-card.dark p{color:var(--color-on-accent-2-muted)}
.ct-card.dark .btn-primary{background:#fff;border-color:#fff;color:var(--color-ink-900)}
.ct-card.dark .btn-primary:hover{background:var(--color-paper-light);border-color:var(--color-paper-light)}
.ct-mail{font-weight:600;font-size:17px;color:var(--color-ink-900);border-bottom:1.5px solid var(--color-accent-600);padding-bottom:2px;word-break:break-all}
.ct-mail:hover{color:var(--color-accent-600)}
.ct-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:28px;padding-top:24px;border-top:1px solid var(--color-rule)}
.ct-foot>p{margin:0;font-size:15px;color:var(--color-ink-700)}
.ct-foot .ct-loc{flex-basis:100%;color:var(--color-ink-500);font-size:14px}
@media (max-width:760px){.ct-grid{grid-template-columns:minmax(0,1fr)}.ct-card{padding:24px}}

/* ===== Mobile layer (must stay last) ===== */
@media (max-width:960px){
.h-hero .wrap,.svc-band,.ab-band,.cs-band,.sv-grid,.sv-audit-top,.sv-audit-cols,.ct-grid,.cw,.recs2.peek,.recs2.peek.two,.stack-sec .wrap,.teasers{grid-template-columns:minmax(0,1fr)!important}
.h-hero .wrap{gap:28px}
.h-hero img{max-width:320px;width:100%}
.svc-band,.ab-band{gap:20px}
.cs-index{grid-template-columns:repeat(2,minmax(0,1fr))}
.about .wrap{grid-template-columns:minmax(0,1fr)!important;gap:28px}
.about .photo{max-width:320px}
}
@media (max-width:760px){
.wrap{padding-left:20px;padding-right:20px}
header .wrap{height:60px}
.hdr-r{gap:10px}
.hdr-r .btn{padding:9px 14px;font-size:13px}
.menu{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;background:none;border:0}
nav{top:60px}
nav a{padding:14px 0;font-size:17px;border-bottom:1px solid var(--color-rule)}
nav a:last-child{border-bottom:0}
.h-hero{padding:28px 0 32px}
.h-hero h1{font-size:32px!important;line-height:1.12!important}
.h-hero .lede{font-size:16.5px;margin:16px 0 20px}
.hero-sub{margin:-8px 0 20px;font-size:14px}
.h-hero img{max-width:none;aspect-ratio:4/3;object-position:50% 25%}
.res .wrap{grid-template-columns:minmax(0,1fr)!important;gap:0;padding-top:8px;padding-bottom:8px;text-align:left}
.res .wrap>div,.res .wrap>div:first-child{padding:16px 0!important;border-left:0!important;border-top:1px solid var(--color-rule)}
.res .wrap>div:first-child{border-top:0}
.res span{margin:0;max-width:none}
section.h,section.sv-sec{padding:36px 0}
.page-head{padding:36px 0 20px}
.page-head h1,h1{font-size:32px;line-height:1.12}
h2,.h h2,.sec-head h2{font-size:26px!important;line-height:1.18}
.h-cta{padding:44px 0}
.h-cta h2{font-size:28px!important}
.h-head.split{flex-direction:column;align-items:flex-start;gap:14px}
.h-head.split h2{flex:none}
.btns{flex-wrap:wrap;gap:10px}
.btns .btn{flex:1 1 auto;justify-content:center}
.btn{min-height:44px;justify-content:center}
.svc-list a{grid-template-columns:minmax(0,1fr) 20px;gap:6px 12px;padding:16px 0}
.svc-list .p{grid-column:1;grid-row:2}
.svc-list i{grid-column:2;grid-row:1/3;align-self:center}
.svc-list b{font-size:19px}
.cw-card,.sv-card,.sv-audit,.ct-card,.r2{padding:22px}
.cw-stat{font-size:24px}
.r2 blockquote{font-size:16px}
.wr-item{padding:18px 0}
.wr-txt h3{font-size:17px}
.cs-index{gap:10px}
.cs-index a{padding:14px}
.cs-index b{font-size:20px}
.cs-index .n{font-size:10.5px}
.cs2 details.case summary{padding:22px;gap:16px}
.cs2 .sum h3{font-size:22px}
.cs2 .sum p{font-size:15px}
.cs2 .kpis,.cs2 .kpis.two{grid-template-columns:minmax(0,1fr)!important}
.cs2 .kpi{padding:14px 16px}
.cs2 .case-body.one{margin:0 22px}
.cs2 .toggle{width:100%;justify-content:center;min-height:44px}
.sv-price b{font-size:30px}
.sv-scope summary{min-height:44px;padding:10px 0}
.sv-cta{align-self:stretch}
.ct-foot{gap:10px}
.soc-btns,.follow .links,.find{display:flex;flex-wrap:wrap;gap:10px}
.soc-btns a,.follow .links a{min-height:44px;display:inline-flex;align-items:center;padding:0 18px;border:1.5px solid var(--color-ink-900);border-radius:999px;font-weight:600;font-size:14px;color:var(--color-ink-900)}
footer.rich{padding:32px 0 20px}
footer.rich .wrap{grid-template-columns:minmax(0,1fr)!important;gap:16px}
footer.rich .wrap>div{grid-column:1!important;grid-row:auto!important}
footer.rich .links{gap:4px 18px}
footer.rich .links a,footer.rich ul a{display:inline-flex;align-items:center;min-height:40px}
.stack{gap:8px}
.chip{font-size:13px}
details.more-rec summary{min-height:40px;display:inline-flex;align-items:center}
}
@media (max-width:380px){.hdr-r .btn{display:none}.cs-index{grid-template-columns:minmax(0,1fr)}}
@media (max-width:760px){.res .wrap[style]{grid-template-columns:minmax(0,1fr)!important}}

/* ===== Design system v2: Bricolage Grotesque display, Hanken Grotesk body, IG palette ===== */
:root{--serif:'Bricolage Grotesque',system-ui,sans-serif;--sans:'Hanken Grotesk',system-ui,sans-serif;--accent:'Instrument Serif',Georgia,serif;
--color-paper-light:#f6efe2;--color-accent-600:#b4602f;--color-accent-2-800:#3f4a2c;--color-on-accent-2:#f6efe2;--color-on-accent-2-muted:#e3e8d6;--color-on-accent-2-label:#d9e0c8}
body{font-family:var(--sans)}
h1,h2,.h-cta h2,.page-head h1,.h-hero h1{font-family:var(--serif);font-weight:800;letter-spacing:-.035em;font-variation-settings:"opsz" 96}
h2,.h h2,.sec-head h2{font-weight:800;letter-spacing:-.03em}
.serif,
h1,
h2,
h3,
.logo,
.hero .role,
.photo .tag b,
.stat b,
.kpi b,
.allres b,
.takeaway p,
.pullnum,
.job .when b,
.about .lead,
.audit .price b,
.svc .pr b,
.svc-body .own p,
.intro .lead,
.mx-col b,
.mx-row b,
.tier-foot .pr b,
.tier-body .own p,
.audit-d .pr b,
details.q summary,
.post h4,
.feed-empty span,
.h-hero .small,
.svc-card .pr b,
.steps .n,
.work-card .big,
.soc-row b,
.res b,
.node b,
.bar b,
.r2 .av,
.blog-n,
.svc-list b,
.svc-list .p strong,
.cs-num,
.cs-t b,
.cs-index b,
.cs2 .sum h3,
.cs2 .kpi b,
.cs2 .allres b,
.cs2 .takeaway p:first-child,
.cw-stat,
.sv-price b,
.ab-copy .ab-pull,
.ct-card h3{font-weight:700;letter-spacing:-.02em}
h1 em,h2 em,h3 em{font-family:inherit;font-style:normal!important;font-weight:inherit;color:var(--color-accent-2-800)}
.h-cta h2 em,.cta h2 em{color:#e3c9a4}
.logo{font-family:var(--serif);font-weight:800;letter-spacing:-.03em}

/* mobile: re-assert sizes for wider Bricolage display font */
@media (max-width:760px){
h1,.page-head h1,.h-hero h1{font-size:30px!important;line-height:1.08!important;letter-spacing:-.03em}
h2,.h h2,.sec-head h2{font-size:24px!important;line-height:1.12;letter-spacing:-.025em}
.h-cta h2{font-size:26px!important}
.res b{font-size:30px}
h1,h2,h3{overflow-wrap:break-word}
}
