/* About page (/about/) — uses main.css tokens (.glass, .stat, .portrait-frame, .btn-gold) */
.ab-page{padding:100px 0 3rem}
.ab-page h1{font-size:clamp(1.9rem,5.4vw,3rem);margin-bottom:.35em;background:linear-gradient(135deg,var(--ink),var(--gold2));-webkit-background-clip:text;background-clip:text;color:transparent}
.ab-page a:not(.btn){color:var(--cyan)}
.ab-page a:not(.btn):hover{text-decoration:underline}
.ab-hero{padding:clamp(1.5rem,5vw,3.5rem) 0}
.ab-hero-grid{display:grid;gap:2rem;align-items:center}
.ab-portrait{margin:0;max-width:380px;justify-self:center;width:100%}
.ab-portrait .portrait-frame img{aspect-ratio:534/751;object-fit:cover;object-position:top}
.ab-roles{color:var(--cyan);font-size:clamp(.95rem,2.6vw,1.1rem);font-weight:600;margin-bottom:1.1em}
.ab-lead{font-size:1.12rem;color:var(--gold2)}
.ab-lead strong{font-weight:700}
.ab-sec{padding:clamp(1.5rem,4vw,2.75rem) 0}
.ab-card{padding:clamp(1.25rem,4vw,2.4rem)}
.ab-card + .ab-card{margin-top:1rem}
.ab-card h2{font-size:clamp(1.35rem,3.6vw,1.9rem)}
.ab-card h3{color:var(--gold2)}
.ab-card p:last-child{margin-bottom:0}
.ab-quote{border-inline-start:3px solid var(--gold);padding-inline-start:1rem;color:var(--gold2);font-weight:600}
.ab-h2c,.ab-head{text-align:center;max-width:760px;margin-inline:auto}
.ab-h2c{font-size:clamp(1.4rem,4vw,2.1rem);margin-bottom:1.25rem}
.ab-head{margin-bottom:1.5rem}
.ab-head h2{font-size:clamp(1.4rem,4vw,2.1rem)}
.ab-head p{color:var(--muted)}
.ab-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
.ab-stats .stat{padding:1.25rem .9rem;justify-content:center;gap:.25rem}
.ab-stats .stat strong{font-size:clamp(1.05rem,3vw,1.35rem);line-height:1.5}
.ab-stats .stat span{font-size:.9rem}
.ab-stats .ab-stat-wide{grid-column:1/-1}
.ab-stats .ab-stat-wide span{color:var(--ink)}
.ab-note{max-width:820px;margin:1.25rem auto 0;text-align:center;color:var(--muted)}
.ab-feats{display:grid;gap:.9rem}
.ab-feat{padding:1.25rem 1.25rem 1.1rem;display:flex;gap:.9rem;align-items:flex-start}
.ab-feat p{margin:0}
.ab-feat strong{color:var(--gold2)}
.ab-num{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font-weight:800;color:#1a1206;background:linear-gradient(135deg,var(--gold2),var(--gold) 45%,var(--gold-d))}
.ab-book{display:grid;gap:1.5rem;align-items:center}
.ab-book-cover{margin:0;max-width:220px;justify-self:center}
.ab-book-cover img{border-radius:10px;box-shadow:0 24px 60px -20px rgba(242,196,109,.45)}
.ab-links{padding-top:1rem;border-top:1px solid var(--line)}
.ab-two{display:grid;gap:1rem}
.ab-two .ab-card + .ab-card{margin-top:0}
.ab-mission{text-align:center;border-color:rgba(242,196,109,.35);background:linear-gradient(160deg,rgba(242,196,109,.10),var(--glass))}
.ab-mission .ab-lead{font-size:clamp(1.1rem,3vw,1.35rem)}
.ab-cta{text-align:center;padding:clamp(1.75rem,5vw,3rem);background:radial-gradient(600px 240px at 50% 0,rgba(47,139,255,.22),transparent 70%),linear-gradient(160deg,var(--glass2),var(--glass))}
.ab-cta h3{font-size:clamp(1.2rem,3.4vw,1.6rem)}
.ab-cta p{max-width:640px;margin-inline:auto;color:var(--muted)}
.ab-cta .btn{margin-top:.5rem}
@media (min-width:760px){
  .ab-stats{grid-template-columns:repeat(4,1fr)}
  .ab-stats .ab-stat-wide{grid-column:span 2}
  .ab-feats{grid-template-columns:repeat(3,1fr)}
  .ab-book{grid-template-columns:200px 1fr}
  .ab-two{grid-template-columns:1fr 1fr}
}
@media (min-width:960px){
  .ab-hero-grid{grid-template-columns:360px 1fr;gap:3.5rem}
}
