/* Maalouf Advisory shared styles.
   Layout: one editorial column on a wide grid; slate bands for key moments; brass as the single accent. */
:root{
  --paper:#F3F4F1;
  --panel:#FFFFFF;
  --ink:#16222B;
  --ink-2:#3C4A53;
  --muted:#66737B;
  --rule:#D5D9D6;
  --slate:#1D2C36;
  --on-slate:#EEF1EE;
  --brass:#9A6B1F;
  --brass-soft:#F1E6D2;
  --buy:#2F6B45;
  --negotiate:#9A6B1F;
  --walk:#9B3426;
  --display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --body:"Source Serif 4",Georgia,"Times New Roman",serif;
  --mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --max:1160px;
  --gut:clamp(20px,4vw,48px);
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#10171C;--panel:#16212A;--ink:#E7ECE8;--ink-2:#BCC6C2;--muted:#8E9A9A;--rule:#2A3843;
    --slate:#0B1115;--on-slate:#E7ECE8;--brass:#D2A24F;--brass-soft:#2B2416;
    --buy:#6FB58A;--negotiate:#D2A24F;--walk:#E07A69;color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#10171C;--panel:#16212A;--ink:#E7ECE8;--ink-2:#BCC6C2;--muted:#8E9A9A;--rule:#2A3843;
  --slate:#0B1115;--on-slate:#E7ECE8;--brass:#D2A24F;--brass-soft:#2B2416;
  --buy:#6FB58A;--negotiate:#D2A24F;--walk:#E07A69;color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--paper)}
img{max-width:100%}
[hidden]{display:none!important}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px),var(--gut));padding-right:max(16px,env(safe-area-inset-right,0px),var(--gut))}
.eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);margin:0}
h1,h2,h3,h4{font-family:var(--display);font-weight:700;letter-spacing:-.01em;line-height:1.08;text-wrap:balance;margin:0}
h2{font-size:clamp(30px,4.2vw,46px);font-stretch:88%}
h3{font-size:22px;font-stretch:95%}
p{margin:0}
.lede{font-size:clamp(19px,2vw,21px);color:var(--ink-2);max-width:62ch}
section{padding-block:clamp(64px,9vw,112px)}
.flush-top{padding-top:0}
.mt-s{margin-top:14px}.mt-m{margin-top:18px}.mt-l{margin-top:26px}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px}

/* header */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;padding-block:14px;flex-wrap:wrap}
.brand{display:flex;flex-direction:column;text-decoration:none;line-height:1}
.brand b{font-family:var(--display);font-weight:800;font-stretch:72%;font-size:24px;letter-spacing:.01em;text-transform:uppercase}
.brand span{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:4px}
nav.links{display:flex;gap:24px;align-items:center;font-family:var(--display);font-size:15px;font-weight:500}
nav.links a{text-decoration:none;color:var(--ink-2);white-space:nowrap}
nav.links a:hover{color:var(--ink)}
nav.links a[aria-current="page"]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--brass)}
@media (max-width:900px){
  nav.links{order:3;width:100%;gap:18px;overflow-x:auto;padding-bottom:2px;font-size:14.5px}
  nav.links .btn{display:none}
  .head-cta{display:inline-flex}
}
@media (min-width:901px){.head-cta{display:none}}

.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:600;font-size:16px;text-decoration:none;padding:13px 20px;border-radius:3px;border:1.5px solid var(--ink);background:var(--ink);color:var(--paper);transition:transform .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.small{padding:9px 14px;font-size:14.5px}
nav.links .btn{color:var(--paper)}
.arrow{font-family:var(--mono)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

/* home hero */
.hero{padding-block:clamp(56px,8vw,104px) clamp(48px,6vw,72px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:end}
.hero h1{font-size:clamp(40px,6.4vw,78px);font-stretch:78%;font-weight:800;line-height:.98;letter-spacing:-.015em;margin-top:18px}
.hero h1 em,.page-hero h1 em{font-family:var(--body);font-style:italic;font-weight:400;font-stretch:100%;letter-spacing:-.01em;color:var(--brass)}
.hero .lede{margin-top:26px}
.creds{border-left:2px solid var(--brass);padding-left:24px;display:grid;gap:18px}
.cred b{display:block;font-family:var(--display);font-stretch:85%;font-size:19px;font-weight:700;line-height:1.2}
.cred span{display:block;font-size:15.5px;color:var(--muted);line-height:1.45;margin-top:3px}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr}}

/* sub page hero */
.page-hero{padding-block:clamp(52px,7vw,92px) clamp(40px,5vw,64px);border-bottom:1px solid var(--rule)}
.page-hero h1{font-size:clamp(38px,5.6vw,68px);font-stretch:78%;font-weight:800;line-height:1;margin-top:16px;max-width:18ch}
.page-hero .lede{margin-top:22px}
.crumbs{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.06em}
.crumbs a{text-decoration:none;border-bottom:1px solid var(--rule)}

/* two doors */
.doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,28px);margin-top:40px}
.door{display:flex;flex-direction:column;gap:14px;background:var(--panel);border:1px solid var(--rule);border-radius:4px;padding:clamp(24px,3vw,36px);text-decoration:none;transition:border-color .15s ease,transform .15s ease}
.door:hover{border-color:var(--brass);transform:translateY(-2px)}
.door .tag{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass)}
.door h3{font-size:clamp(26px,3vw,34px);font-stretch:82%}
.door p{color:var(--ink-2);font-size:17px}
.door ul{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:0;border-top:1px solid var(--rule)}
.door li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--rule);font-family:var(--display);font-weight:500;font-size:16px}
.door li span{font-family:var(--mono);font-size:13.5px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.door .go{margin-top:auto;padding-top:8px;font-family:var(--display);font-weight:600;font-size:16px}
@media (max-width:820px){.doors{grid-template-columns:1fr}}

.doors.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1000px){.doors.three{grid-template-columns:1fr}}

/* coach in your corner */
.corner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,6vw,88px);align-items:start}
.corner .lede{color:color-mix(in srgb,var(--on-slate) 78%,transparent)}
.issues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;border-top:1px solid color-mix(in srgb,var(--on-slate) 22%,transparent)}
.issues div{padding:14px 0;border-bottom:1px solid color-mix(in srgb,var(--on-slate) 22%,transparent);font-family:var(--display);font-weight:500;font-size:17px;color:var(--on-slate)}
.corner-price{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:16px;color:color-mix(in srgb,var(--on-slate) 80%,transparent)}
.corner-price b{font-family:var(--display);color:var(--on-slate);font-weight:700}
.band .btn{background:var(--brass);border-color:var(--brass);color:#14100A}
@media (max-width:860px){.corner{grid-template-columns:1fr}}
@media (max-width:520px){.issues{grid-template-columns:1fr}}

/* free tools strip */
.tool-strip{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,2.4vw,28px);margin-top:36px}
.tool-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;padding:22px 24px;border:1px solid var(--rule);border-radius:4px;background:var(--panel);text-decoration:none;transition:border-color .15s ease}
.tool-card:hover{border-color:var(--brass)}
.tool-card .num{font-family:var(--display);font-weight:800;font-stretch:72%;font-size:44px;line-height:1;color:var(--brass);font-variant-numeric:tabular-nums}
.tool-card h3{font-size:21px;font-stretch:88%}
.tool-card p{font-size:15.5px;color:var(--muted);margin-top:4px}
@media (max-width:760px){.tool-strip{grid-template-columns:1fr}}

/* tools page */
.tool-jump{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px;max-width:820px}
.small-door{padding:20px 22px;gap:6px}
.small-door h3{font-size:22px}
.small-door p{font-size:15.5px}
@media (max-width:640px){.tool-jump{grid-template-columns:1fr}}
.tool-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:clamp(28px,5vw,64px);align-items:start}
.tool-intro{position:sticky;top:calc(env(safe-area-inset-top,0px) + 96px)}
.scale-note{margin-top:20px;font-family:var(--mono);font-size:13px;color:var(--muted)}
.scale-note b{color:var(--ink);font-weight:500}
@media (max-width:900px){.tool-grid{grid-template-columns:1fr}.tool-intro{position:static}}
.tool{background:var(--panel);border:1px solid var(--rule);border-radius:4px;padding:clamp(20px,3vw,32px);min-width:0}
.progress{height:4px;background:var(--rule);border-radius:2px;overflow:hidden}
.progress span{display:block;height:100%;width:0;background:var(--brass);transition:width .25s ease}
.progress-text{font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:8px}
fieldset.q{border:0;margin:0;padding:22px 0;border-bottom:1px solid var(--rule);min-width:0}
fieldset.q:last-child{border-bottom:0}
fieldset.q legend{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;font-family:var(--display);font-weight:600;font-stretch:94%;font-size:18px;line-height:1.3;padding:0;margin-bottom:14px}
.qn{font-family:var(--mono);font-weight:500;font-size:12.5px;color:var(--brass);min-width:18px}
.ctx{font-family:var(--mono);font-style:normal;font-weight:400;font-size:11.5px;color:var(--muted);letter-spacing:.04em}
.opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media (max-width:560px){.opts{grid-template-columns:1fr}}
.opt{position:relative;display:flex;cursor:pointer}
.opt input{position:absolute;opacity:0;width:1px;height:1px}
.opt span{flex:1;padding:11px 14px;border:1px solid var(--rule);border-radius:3px;font-size:15.5px;line-height:1.35;color:var(--ink-2);background:var(--paper);transition:border-color .12s ease,background .12s ease}
.opt:hover span{border-color:var(--muted)}
.opt input:checked+span{border-color:var(--brass);background:var(--brass-soft);color:var(--ink);box-shadow:inset 3px 0 0 var(--brass)}
.opt input:focus-visible+span{outline:2px solid var(--brass);outline-offset:2px}
.form-msg{margin-top:14px;font-size:15.5px;color:var(--walk);min-height:1px}
.tool-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
button.btn{cursor:pointer}
.result{margin-top:36px;background:var(--panel);border:1px solid var(--rule);border-top:3px solid var(--brass);border-radius:4px;padding:clamp(22px,3.4vw,40px);scroll-margin-top:96px}
.result:focus{outline:none}
.result-head{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:clamp(20px,4vw,48px);align-items:center}
@media (max-width:760px){.result-head{grid-template-columns:1fr}}
.big-score{font-family:var(--display);font-weight:800;font-stretch:70%;font-size:clamp(72px,9vw,112px);line-height:.9;margin:8px 0 12px;font-variant-numeric:tabular-nums}
.big-score small{font-size:.32em;color:var(--muted);font-weight:600;margin-left:4px}
.result-text p{font-size:17.5px;color:var(--ink-2)}
.timing-note{margin-top:12px;padding-left:14px;border-left:2px solid var(--brass)}
.gauge{margin-bottom:18px}
.gauge-track{position:relative;height:10px;border-radius:5px;background:linear-gradient(90deg,var(--walk),var(--negotiate),var(--buy))}
.gauge-track.rev{background:linear-gradient(90deg,var(--buy),var(--negotiate),var(--walk))}
.gauge-mark{position:absolute;top:-5px;width:4px;height:20px;margin-left:-2px;background:var(--ink);border-radius:2px;box-shadow:0 0 0 2px var(--panel)}
.gauge-scale{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:6px}
.gap-h{margin-top:32px;font-size:20px;font-stretch:88%}
.gaps{margin:14px 0 0;padding:0;list-style:none;counter-reset:g;display:grid;gap:0;border-top:1px solid var(--rule)}
.gaps li{counter-increment:g;display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:12px;padding:16px 0;border-bottom:1px solid var(--rule)}
.gaps li::before{content:counter(g);grid-row:span 2;font-family:var(--mono);color:var(--brass);font-size:14px;padding-top:2px}
.gaps b{font-family:var(--display);font-weight:600;font-size:17px}
.gaps p{font-size:16px;color:var(--ink-2);margin-top:4px}
.gap-none{margin-top:20px;color:var(--ink-2)}
.driver-bars{display:grid;gap:10px;margin-top:14px}
.dbar{display:grid;grid-template-columns:minmax(120px,190px) minmax(0,1fr) 36px;gap:14px;align-items:center;font-size:15px}
.dbar-name{font-family:var(--display);font-weight:500}
.dbar-track{height:8px;background:var(--rule);border-radius:4px;overflow:hidden}
.dbar-fill{display:block;height:100%;border-radius:4px}
.dbar-fill.ok{background:var(--buy)}.dbar-fill.watch{background:var(--negotiate)}.dbar-fill.risk{background:var(--walk)}
.dbar-val{font-family:var(--mono);font-size:12.5px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:520px){.dbar{grid-template-columns:1fr 36px}.dbar-track{grid-column:1/-1;grid-row:2}}
.result-cta{margin-top:30px;padding-top:22px;border-top:1px solid var(--rule)}
.result-cta p{font-size:17px;color:var(--ink-2);max-width:60ch}
.result-cta .cta-row{margin-top:16px}

/* lifecycle band */
.band{background:var(--slate);color:var(--on-slate)}
.band h2{color:var(--on-slate)}
.band .lede{color:color-mix(in srgb,var(--on-slate) 78%,transparent)}
.cycle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:48px;border-top:1px solid color-mix(in srgb,var(--on-slate) 22%,transparent)}
.stage{padding:28px 28px 8px 0;border-right:1px solid color-mix(in srgb,var(--on-slate) 22%,transparent)}
.stage+.stage{padding-left:28px}
.stage:last-child{border-right:0}
.stage .step{font-family:var(--mono);font-size:13px;letter-spacing:.1em;color:var(--brass)}
.stage h3{color:var(--on-slate);font-size:28px;margin-top:10px;font-stretch:85%}
.stage p{margin-top:12px;font-size:16.5px;color:color-mix(in srgb,var(--on-slate) 80%,transparent);line-height:1.55}
.stage a{display:inline-block;margin-top:18px;font-family:var(--display);font-weight:600;font-size:15px;color:var(--on-slate);text-decoration:none;border-bottom:1.5px solid var(--brass);padding-bottom:2px}
@media (max-width:820px){.cycle{grid-template-columns:1fr}.stage,.stage+.stage{padding:24px 0;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--on-slate) 22%,transparent)}.stage:last-child{border-bottom:0}}

/* independence pledge */
.pledge{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(32px,6vw,88px);align-items:start}
.pledge h2{font-stretch:80%;font-size:clamp(34px,5vw,58px)}
.pledge-list{display:grid;border-top:1px solid var(--rule)}
.pledge-list div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;padding:18px 0;border-bottom:1px solid var(--rule)}
.pledge-list i{font-style:normal;font-family:var(--mono);color:var(--brass);font-size:15px;padding-top:2px}
.pledge-list p{font-size:17px;color:var(--ink-2)}
.pledge-list strong{color:var(--ink);font-weight:600}
@media (max-width:860px){.pledge{grid-template-columns:1fr}}

/* services */
.services-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;align-items:end;margin-bottom:44px}
.services-head .note{max-width:42ch;color:var(--muted);font-size:16.5px}
.svc-group+.svc-group{margin-top:56px}
.svc-label{display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.svc-label::after{content:"";flex:1;height:1px;background:var(--rule)}
.svc{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(20px,3vw,40px);padding:32px 0;border-top:1px solid var(--rule)}
.svc:last-child{border-bottom:1px solid var(--rule)}
.svc h3{font-size:clamp(24px,2.6vw,30px);font-stretch:85%}
.svc .for{margin-top:10px;color:var(--muted);font-size:16px}
.svc ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}
.svc li{position:relative;padding-left:20px;font-size:16.5px;color:var(--ink-2);line-height:1.5}
.svc li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:1.5px;background:var(--brass)}
.price{text-align:right}
.price .amt{font-family:var(--display);font-weight:800;font-stretch:75%;font-size:clamp(32px,3.4vw,42px);line-height:1;font-variant-numeric:tabular-nums}
.price .from{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.price .unit{display:block;font-size:15px;color:var(--muted);margin-top:8px}
.price .time{display:inline-block;margin-top:14px;font-family:var(--mono);font-size:12.5px;padding:5px 9px;border:1px solid var(--rule);border-radius:2px;color:var(--ink-2)}
@media (max-width:900px){.svc{grid-template-columns:1fr}.price{text-align:left}}

/* pricing breakdown table */
.compare{margin-top:40px;overflow-x:auto;border:1px solid var(--rule);border-radius:4px;background:var(--panel)}
.compare table{min-width:1040px}
.compare th[scope="col"]{vertical-align:bottom;padding-top:22px;padding-bottom:18px}
.compare .tier{display:block;font-family:var(--display);font-weight:700;font-stretch:85%;font-size:19px;letter-spacing:0;text-transform:none;color:var(--ink);line-height:1.15}
.compare .tier-price{display:block;font-family:var(--display);font-weight:800;font-stretch:75%;font-size:30px;color:var(--ink);letter-spacing:0;text-transform:none;margin-top:8px;font-variant-numeric:tabular-nums}
.compare .tier-unit{display:block;font-family:var(--mono);font-size:11.5px;color:var(--muted);margin-top:2px}
.compare th[scope="row"]{font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:0;text-transform:none;color:var(--ink);white-space:nowrap}
.compare td{font-size:15.5px;color:var(--ink-2)}
.compare .yes{color:var(--buy);font-family:var(--mono)}
.compare .no{color:var(--muted);font-family:var(--mono)}
.compare-note{margin-top:14px;font-size:15px;color:var(--muted)}

/* tables (shared) */
table{width:100%;border-collapse:collapse;font-size:15px}
th,td{text-align:left;padding:12px 22px;border-bottom:1px solid var(--rule);vertical-align:top}
th{font-family:var(--mono);font-weight:500;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}

/* sample report */
.report-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(32px,5vw,72px);align-items:center}
.tinted{background:color-mix(in srgb,var(--rule) 32%,var(--paper))}
.report{background:var(--panel);border:1px solid var(--rule);box-shadow:0 24px 48px -32px rgba(10,20,26,.35);border-radius:4px;overflow:hidden;min-width:0}
.report-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;border-bottom:1px solid var(--rule)}
.report-top .meta{font-family:var(--mono);font-size:12px;color:var(--muted);line-height:1.6}
.report-top h4{font-size:19px;font-stretch:90%;margin-bottom:4px}
.stamp{flex:none;font-family:var(--display);font-weight:800;font-stretch:70%;font-size:22px;letter-spacing:.08em;color:var(--negotiate);border:2.5px solid var(--negotiate);padding:6px 12px 5px;border-radius:3px;transform:rotate(-4deg);text-transform:uppercase}
.rows{overflow-x:auto}
.rows table{min-width:460px}
.rows tbody tr:last-child td{border-bottom:1px solid var(--rule)}
td.k{font-family:var(--display);font-weight:600;font-stretch:92%}
td.k small{display:block;font-family:var(--mono);font-weight:400;font-size:11.5px;color:var(--muted);margin-top:2px}
td.num{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.pill{display:inline-block;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}
.pill.ok{color:var(--buy)}.pill.watch{color:var(--negotiate)}.pill.risk{color:var(--walk)}
.report-foot{padding:16px 24px;font-size:14.5px;color:var(--ink-2);background:color-mix(in srgb,var(--brass-soft) 55%,var(--panel))}
.report-foot b{font-family:var(--display);font-weight:600}
.sample-note{font-family:var(--mono);font-size:11.5px;color:var(--muted);margin-top:12px}
@media (max-width:900px){.report-wrap{grid-template-columns:1fr}}

/* value drivers */
.drivers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:44px;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.driver{padding:22px 22px 26px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.driver h4{font-size:18px;font-stretch:90%;line-height:1.2}
.driver p{margin-top:8px;font-size:15.5px;color:var(--muted);line-height:1.5}
@media (max-width:900px){.drivers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.drivers{grid-template-columns:1fr}}

/* who */
.who{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px);margin-top:40px}
.who div{border-top:2px solid var(--ink);padding-top:16px}
.who h4{font-size:20px;font-stretch:88%}
.who p{margin-top:8px;font-size:16.5px;color:var(--ink-2)}
@media (max-width:820px){.who{grid-template-columns:1fr}}

/* about */
.about{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:clamp(32px,6vw,88px)}
.portrait{aspect-ratio:4/5;max-width:100%;background:linear-gradient(160deg,color-mix(in srgb,var(--slate) 88%,var(--brass)) 0%,var(--slate) 70%);border-radius:4px;display:flex;align-items:flex-end;padding:22px;color:var(--on-slate)}
.portrait .name{font-family:var(--display);font-weight:800;font-stretch:72%;font-size:44px;line-height:.95;text-transform:uppercase}
.portrait .role{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-top:10px}
.story{display:grid;gap:20px;max-width:64ch}
.story p{font-size:18.5px;color:var(--ink-2)}
.timeline{margin-top:12px;border-top:1px solid var(--rule)}
.timeline div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--rule);font-size:16.5px}
.timeline span{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--brass);padding-top:3px}
.quote{font-family:var(--display);font-stretch:85%;font-weight:600;font-size:clamp(24px,2.8vw,32px);line-height:1.2;color:var(--ink)!important;border-left:2px solid var(--brass);padding-left:20px}
@media (max-width:860px){.about{grid-template-columns:1fr}.portrait{max-width:360px}}
@media (max-width:520px){.timeline div{grid-template-columns:1fr;gap:4px}}

/* process */
.process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px);margin-top:44px}
.process div{border-top:2px solid var(--ink);padding-top:18px}
.process .n{font-family:var(--mono);font-size:13px;color:var(--brass)}
.process h4{font-size:22px;font-stretch:88%;margin-top:6px}
.process p{margin-top:8px;font-size:16.5px;color:var(--ink-2)}
@media (max-width:820px){.process{grid-template-columns:1fr}}

/* faq */
.faq{max-width:860px;margin-top:36px;border-top:1px solid var(--rule)}
details{border-bottom:1px solid var(--rule)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-family:var(--display);font-weight:600;font-stretch:92%;font-size:19px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--mono);color:var(--brass);font-size:20px;line-height:1}
details[open] summary::after{content:"\2212"}
details p{padding:0 0 22px;color:var(--ink-2);font-size:17px;max-width:68ch}

/* closing */
.close{background:var(--slate);color:var(--on-slate)}
.close-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:end}
.close h2{color:var(--on-slate);font-size:clamp(36px,5.4vw,64px);font-stretch:78%;font-weight:800;margin-top:14px}
.close .lede{color:color-mix(in srgb,var(--on-slate) 78%,transparent);margin-top:18px}
.close .btn{background:var(--brass);border-color:var(--brass);color:#14100A}
.contact{display:grid;gap:14px;font-size:16.5px}
.contact .row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid color-mix(in srgb,var(--on-slate) 22%,transparent)}
.contact .lbl{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);width:100%}
.contact code{font-family:var(--mono);font-size:16px;user-select:all;overflow-wrap:anywhere}
.copy{font-family:var(--mono);font-size:12px;background:transparent;color:var(--on-slate);border:1px solid color-mix(in srgb,var(--on-slate) 35%,transparent);border-radius:2px;padding:4px 9px;cursor:pointer}
@media (max-width:860px){.close-grid{grid-template-columns:1fr}}
footer{background:var(--slate);color:color-mix(in srgb,var(--on-slate) 62%,transparent);font-size:13.5px;border-top:1px solid color-mix(in srgb,var(--on-slate) 16%,transparent)}
footer .wrap{padding-block:28px;display:grid;gap:12px}
footer nav{display:flex;flex-wrap:wrap;gap:18px}
footer nav a{text-decoration:none;color:var(--on-slate)}
footer .fine{max-width:90ch;line-height:1.55}

/* alternate option note inside a service list */
.svc li.alt{color:var(--muted);font-style:italic}
.svc li.alt::before{background:var(--rule)}

/* lead capture */
.lead{margin-top:30px;padding-top:24px;border-top:1px solid var(--rule)}
.lead-h{font-size:20px;font-stretch:88%}
.lead-p{margin-top:6px;font-size:16.5px;color:var(--ink-2);max-width:60ch}
.lead-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.lead-fields label{display:grid;gap:6px;font-family:var(--display);font-weight:600;font-size:14.5px}
.lead-fields input{font:inherit;font-family:var(--body);font-weight:400;font-size:16px;padding:11px 12px;border:1px solid var(--rule);border-radius:3px;background:var(--paper);color:var(--ink);min-width:0}
.lead-fields input:focus{outline:2px solid var(--brass);outline-offset:1px}
.opt-l{font-family:var(--mono);font-weight:400;font-size:11.5px;color:var(--muted)}
.lead-msg{margin-top:10px;font-size:15.5px;color:var(--ink-2);min-height:1px}
@media (max-width:700px){.lead-fields{grid-template-columns:1fr}}

/* email links */
.contact .mail{font-family:var(--mono);font-size:16px;color:var(--on-slate);text-decoration:none;border-bottom:1px solid var(--brass);overflow-wrap:anywhere}
.foot-contact{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:15px}
.foot-contact a{color:var(--on-slate);text-decoration:none;border-bottom:1px solid var(--brass)}

/* about photo */
.photo{margin:0;max-width:100%}
.photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:4px}
.photo figcaption{margin-top:10px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}
@media (max-width:860px){.photo{max-width:360px}}
.lead{margin-top:28px}
.result-head + div .lead{border-top:1px solid var(--rule)}

.photo.wide{max-width:100%}
.photo.wide img{aspect-ratio:3/2}
.lead-done{font-family:var(--display);font-weight:600;font-size:17px;color:var(--ink)}
.gap-sub{margin-top:4px;font-size:15px;color:var(--ink-2)}
@media (min-width:901px){header.site .head-cta{display:none}}
.compare tr.access th,.compare tr.access td{background:rgba(154,107,31,.08)}
.compare td strong,.svc li strong{font-weight:600;color:var(--ink)}
