/* About page (loaded only on /about). Uses the V12 brand tokens from public-v12.css; no new palette. */
.ab{--ab-gap:clamp(72px,9vw,128px);--ab-tint:#fbf0df;--ab-tint2:#f3e3c9;--ab-good:#245b2c;--ab-good-bg:#eef8ef;--ab-radius:28px;font-size:17px}
.ab .ab-ico{width:24px;height:24px;flex:0 0 24px}
.ab h1,.ab h2,.ab h3{font-family:Georgia,"Times New Roman",serif;color:var(--ink);letter-spacing:-.02em}
.ab h2{font-size:clamp(34px,4.4vw,56px);line-height:1.06;margin:14px 0 18px}
.ab h3{font-size:22px;line-height:1.2;margin:0 0 8px}
.ab p{color:#5b544b;line-height:1.7}
.ab .btn{min-height:52px;padding:14px 22px;border-radius:14px;font-size:15px}.ab .btn .ab-ico{width:18px;height:18px;flex-basis:18px}
.ab-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.ab-kicker{display:inline-flex;align-items:center;gap:10px;color:#75480f;font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.ab-kicker:before{content:"";width:28px;height:2px;border-radius:2px;background:var(--warm)}
.ab-head{max-width:760px;margin-bottom:56px}.ab-head p{font-size:19px;margin:0}
.ab-head-center{text-align:center;margin-left:auto;margin-right:auto}.ab-head-center .ab-kicker{justify-content:center}
.ab-section{padding:var(--ab-gap) 0}
.ab-chip{display:inline-block;font-style:normal;white-space:nowrap;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:850;letter-spacing:.02em;background:var(--ab-good-bg);color:var(--ab-good);border:1px solid #c8e5cc}
.ab-chip.is-calm{background:#fff8ee;color:#75480f;border-color:#ead8bf}

/* Hero */
.ab-hero{padding:clamp(56px,7vw,104px) 0 clamp(64px,8vw,112px);background:radial-gradient(circle at 88% 12%,rgba(165,100,18,.11),transparent 32%),linear-gradient(180deg,#fffdf9,#faf5ed);border-bottom:1px solid var(--line);overflow:hidden}
.ab-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(40px,6vw,88px);align-items:center}
.ab-hero h1{font-size:clamp(40px,4.6vw,64px);line-height:1.04;margin:22px 0 24px;letter-spacing:-.03em}.ab-hero h1 span{color:var(--warm);display:block}
.ab-lead{font-size:clamp(18px,1.6vw,21px);max-width:620px;margin:0}
.ab-pillars{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ab-pillars li{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;font-size:13px;color:var(--muted);line-height:1.45}
.ab-pillars .ab-ico{width:40px;height:40px;flex-basis:40px;padding:9px;border-radius:12px;background:var(--ab-tint);color:var(--warm)}
.ab-pillars b{display:block;color:var(--ink);font-size:14px}
.ab-hero-visual{position:relative;padding:0 0 64px 0}
.ab-hero-photo{margin:0 0 0 auto;width:min(460px,88%);aspect-ratio:4/5;border-radius:var(--ab-radius);overflow:hidden;box-shadow:var(--shadow);background:var(--soft)}
.ab-hero-photo img{width:100%;height:100%;object-fit:cover;display:block}
.ab-sample{position:absolute;left:0;bottom:0;width:min(340px,78%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px 20px 10px;box-shadow:0 30px 70px rgba(67,48,22,.16)}
.ab-sample-head{display:grid;gap:2px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.ab-sample-kicker{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--warm)}
.ab-sample-head strong{font-family:Georgia,"Times New Roman",serif;font-size:20px}.ab-sample-head small{color:var(--muted);font-size:12px}
.ab-sample-rows{margin:0}.ab-sample-rows>div{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:2px 10px;align-items:center;padding:11px 0;border-bottom:1px solid #f0e6d8}.ab-sample-rows>div:last-child{border-bottom:0}
.ab-sample-rows dt{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:var(--ink)}.ab-sample-rows dt .ab-ico{width:18px;height:18px;flex-basis:18px;color:var(--warm)}
.ab-sample-rows dt{grid-column:1;grid-row:1}.ab-sample-rows dd{display:contents}.ab-sample-rows dd span{grid-column:1;grid-row:2;padding-left:26px;font-size:12px;color:var(--muted)}.ab-sample-rows dd .ab-chip{grid-column:2;grid-row:1/3;align-self:center}

/* Challenge */
.ab-challenge-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,72px);align-items:center}
.ab-questions{position:relative;margin:0;border-radius:var(--ab-radius);overflow:hidden;box-shadow:var(--shadow);background:var(--soft)}
.ab-questions img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.ab-questions figcaption{position:absolute;inset:auto 18px 18px 18px;display:grid;gap:8px;justify-items:start}
.ab-questions figcaption span{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:14px;background:rgba(255,253,249,.94);backdrop-filter:blur(8px);font-size:14px;font-weight:750;color:var(--ink);box-shadow:0 10px 26px rgba(26,24,21,.14)}
.ab-questions figcaption .ab-ico{width:18px;height:18px;flex-basis:18px;color:var(--warm)}
.ab-problems{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ab-problems li{padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;display:grid;gap:6px}
.ab-problems .ab-ico{width:46px;height:46px;padding:11px;border-radius:14px;background:var(--ab-tint);color:var(--warm);margin-bottom:8px}
.ab-problems b{font-size:16px}.ab-problems span{font-size:14px;color:var(--muted);line-height:1.55}
.ab-compare{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;margin-top:clamp(48px,6vw,80px)}
.ab-compare-col{padding:clamp(26px,3.4vw,40px);border-radius:var(--ab-radius);border:1px solid var(--line);background:var(--soft)}
.ab-compare-col.is-ours{background:var(--dark);border-color:var(--dark)}.ab-compare-col.is-ours h3{color:#fff}
.ab-compare ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:14px}
.ab-compare li{display:flex;gap:12px;align-items:flex-start;font-size:16px;color:#5b544b}.ab-compare .is-ours li{color:#eee6db}
.ab-compare li .ab-ico{width:22px;height:22px;flex-basis:22px;padding:3px;border-radius:50%;background:#efe5d6;color:#8a7f72}
.ab-compare .is-ours li .ab-ico{background:var(--warm);color:#fff}

/* Knowledge layer */
.ab-layer{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ab-layer-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(40px,6vw,96px);align-items:center}
.ab-layer-list{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:layer}
.ab-layer-list li{display:flex;gap:18px;align-items:flex-start;padding:22px 24px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.ab-layer-list .ab-ico{width:48px;height:48px;flex-basis:48px;padding:12px;border-radius:15px;background:var(--ab-tint);color:var(--warm)}
.ab-layer-list p{margin:0;font-size:15px}
.ab-stack{position:relative;display:grid;gap:14px;padding:8px 0 8px 34px}
.ab-stack:before{content:"";position:absolute;left:14px;top:40px;bottom:40px;width:2px;background:linear-gradient(var(--warm),rgba(165,100,18,.15))}
.ab-stack-core{display:grid;justify-items:center;text-align:center;gap:4px;padding:26px 24px;margin-bottom:10px;border-radius:24px;background:var(--dark);color:#fff;box-shadow:var(--shadow)}
.ab-stack-core .ab-ico{width:52px;height:52px;padding:12px;border-radius:50%;background:var(--warm);color:#fff;margin-bottom:6px}
.ab-stack-core b{font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:700}.ab-stack-core span{color:#ddbd8a;font-size:13px;font-weight:800;letter-spacing:.06em}
.ab-stack-layer{position:relative;display:flex;align-items:center;gap:14px;padding:20px 24px;border-radius:20px;font-weight:850;font-size:16px;color:var(--ink);border:1px solid rgba(165,100,18,.22);box-shadow:var(--softshadow)}
.ab-stack-layer:before{content:"";position:absolute;left:-26px;top:50%;width:18px;height:2px;background:rgba(165,100,18,.45)}
.ab-stack-layer:after{content:"";position:absolute;left:-31px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:var(--warm)}
.ab-stack-layer .ab-ico{width:40px;height:40px;flex-basis:40px;padding:9px;border-radius:12px;background:rgba(255,255,255,.75);color:var(--warm)}
.ab-stack-layer.l1{background:#fffaf2}.ab-stack-layer.l2{background:#fbf0df;margin-left:18px}.ab-stack-layer.l3{background:#f6e4c8;margin-left:36px}.ab-stack-layer.l4{background:#efd6b0;margin-left:54px}
.ab-outcomes{list-style:none;padding:0;margin:clamp(48px,6vw,80px) 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ab-outcomes li{display:grid;gap:6px;padding:28px;border-radius:24px;background:#fff;border:1px solid var(--line)}
.ab-outcomes .ab-ico{width:46px;height:46px;padding:11px;border-radius:14px;background:var(--dark);color:#e3b574;margin-bottom:10px}
.ab-outcomes b{font-family:Georgia,"Times New Roman",serif;font-size:21px}.ab-outcomes span{color:var(--muted);font-size:15px;line-height:1.6}

/* AI era */
.ab-ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:center}
.ab-ai-photo{position:relative;margin:0;border-radius:var(--ab-radius);overflow:hidden;box-shadow:var(--shadow);background:var(--dark)}
.ab-ai-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;opacity:.88}
.ab-ai-photo figcaption{position:absolute;inset:0;display:grid;align-content:end;justify-items:end;gap:8px;padding:20px;background:linear-gradient(200deg,transparent 35%,rgba(26,24,21,.72))}
.ab-ai-photo figcaption span{padding:8px 13px;border-radius:12px;background:rgba(26,24,21,.72);border:1px solid rgba(227,181,116,.45);color:#fff;font-size:13px;font-weight:750;backdrop-filter:blur(6px)}
.ab-ai-copy h2{font-size:clamp(32px,3.6vw,48px)}.ab-ai-copy p{font-size:18px}
.ab-principles{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:14px}
.ab-principles li{display:grid;gap:2px;padding:4px 0 4px 20px;border-left:3px solid var(--warm)}
.ab-principles b{font-size:17px}.ab-principles span{color:var(--muted);font-size:15px}

/* Verification */
.ab-verify{background:linear-gradient(180deg,#fffdf9,#faf5ed);border-top:1px solid var(--line)}
.ab-ssf{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ab-ssf article{padding:clamp(26px,3vw,36px);border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--softshadow)}
.ab-ssf .ab-ico{width:52px;height:52px;padding:13px;border-radius:16px;background:var(--ab-tint);color:var(--warm);margin-bottom:16px}
.ab-ssf p{margin:0;font-size:16px}
.ab-example{margin-top:28px;border-radius:24px;background:#fff;border:1px solid var(--line);padding:clamp(22px,3vw,34px)}
.ab-example-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.ab-example-head h3{margin:0}
.ab-example-head span{font-size:12px;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.ab-table-wrap{overflow-x:auto}
.ab-example table{width:100%;border-collapse:collapse;font-size:15px;min-width:560px}
.ab-example th,.ab-example td{text-align:left;padding:15px 12px;border-bottom:1px solid #f0e6d8;color:#5b544b}
.ab-example thead th{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:850}
.ab-example tbody th{color:var(--ink);font-weight:850}.ab-example tbody tr:last-child>*{border-bottom:0}
.ab-notice{margin:28px auto 0;max-width:860px;font-size:14px;text-align:center}

/* Audiences */
.ab-aud-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ab-aud{display:grid;grid-template-rows:auto 1fr;border-radius:var(--ab-radius);overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--softshadow)}
.ab-aud figure{margin:0;background:var(--soft)}.ab-aud img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.ab-aud-body{position:relative;padding:clamp(28px,3.4vw,44px)}
.ab-aud-icon{position:absolute;top:-30px;left:clamp(28px,3.4vw,44px);width:60px;height:60px;border-radius:18px;background:var(--warm);color:#fff;display:grid;place-items:center;box-shadow:0 12px 26px rgba(165,100,18,.3)}
.ab-aud-icon .ab-ico{width:28px;height:28px}
.ab-aud h2{font-size:clamp(30px,3vw,40px);margin:22px 0 4px}.ab-aud-sub{margin:0 0 20px;color:var(--warm)!important;font-weight:800}
.ab-aud ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:12px}
.ab-aud li{display:flex;gap:12px;align-items:flex-start;color:#5b544b;font-size:16px}
.ab-aud li .ab-ico{width:22px;height:22px;flex-basis:22px;padding:3px;border-radius:50%;background:var(--ab-good-bg);color:var(--ab-good)}

/* Closing */
.ab-closing{padding:clamp(80px,9vw,128px) 0;text-align:center;color:#fff;background:radial-gradient(circle at 18% 0%,rgba(198,135,39,.35),transparent 42%),radial-gradient(circle at 85% 100%,rgba(165,100,18,.30),transparent 45%),linear-gradient(145deg,#171512,#2a241c)}
.ab-closing h2{color:#fff;max-width:880px;margin:0 auto 14px}.ab-closing p{color:#e8dfd2;font-size:20px;margin:0}
.ab-closing .ab-actions{justify-content:center}.ab-closing .btn-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.ab-closing .ab-owner{margin-top:44px;font-size:13px;color:#b9ae9f}

/* Responsive */
@media(max-width:1080px){.ab-pillars{grid-template-columns:1fr}.ab-problems{grid-template-columns:1fr}.ab-stack-layer.l2{margin-left:12px}.ab-stack-layer.l3{margin-left:24px}.ab-stack-layer.l4{margin-left:36px}}
@media(max-width:860px){
 .ab{font-size:16px}
 .ab-hero-grid,.ab-challenge-grid,.ab-layer-grid,.ab-ai-grid,.ab-compare,.ab-aud-grid{grid-template-columns:1fr}
 .ab-pillars{grid-template-columns:repeat(3,minmax(0,1fr))}
 .ab-hero-visual{max-width:560px;margin:8px auto 0;width:100%}
 .ab-problems{grid-template-columns:1fr 1fr}
 .ab-outcomes,.ab-ssf{grid-template-columns:1fr}
 .ab-head{margin-bottom:40px}
}
@media(max-width:560px){
 .ab-pillars,.ab-problems{grid-template-columns:1fr}
 .ab-hero-visual{padding-bottom:0}.ab-hero-photo{width:100%}
 .ab-sample{position:relative;width:auto;margin:-72px 14px 0}
 .ab-questions figcaption{position:static;padding:18px;background:#fff}.ab-questions figcaption span{box-shadow:none;border:1px solid var(--line)}
 .ab-ai-photo figcaption{position:static;justify-items:start;background:var(--dark)}
 .ab-stack{padding-left:28px}.ab-stack-layer{font-size:15px;padding:16px 18px}.ab-stack-layer.l2,.ab-stack-layer.l3,.ab-stack-layer.l4{margin-left:0}
 .ab .btn{width:100%}
 .ab-example table{min-width:0}.ab-example thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .ab-example tr{display:grid;gap:6px;padding:14px 0;border-bottom:1px solid #f0e6d8}.ab-example tbody tr:last-child{border-bottom:0}
 .ab-example th,.ab-example td{display:flex;justify-content:space-between;gap:12px;padding:0;border:0}
 .ab-example td:before{content:attr(data-label);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
}
@media print{.ab-hero-photo,.ab-questions img,.ab-ai-photo,.ab-aud figure{display:none}.ab-sample{position:static;box-shadow:none}.ab-closing{color:#000;background:none}.ab-closing h2,.ab-closing p{color:#000}}
