/* About-only editorial layouts; shared navigation and footer remain unchanged. */
.about-page { color:var(--color-navy); }
.about-wrap { width:min(1100px,calc(100% - 80px)); margin-inline:auto; }
.about-page p { font-family:var(--font-body); font-size:1rem; line-height:1.85; color:var(--color-text-muted); max-width:65ch; margin:0 0 1.25rem; }
.about-page h1,.about-page h2,.about-page h3 { color:var(--color-navy); }
.about-page h1 { font-family:var(--font-display); font-weight:400; font-size:clamp(3.5rem,6vw,5.5rem); line-height:1.05; margin:1rem 0 1.75rem; }
.about-page h2 { font-family:var(--font-display); font-weight:400; font-size:clamp(2.35rem,4vw,3.5rem); line-height:1.15; margin:.8rem 0 2.5rem; max-width:24ch; }
.about-page h3 { font-family:var(--font-heading); font-size:1.15rem; line-height:1.5; margin:0 0 1rem; }
.about-page .about-lead { font-size:1.18rem; color:var(--color-navy); line-height:1.75; }
.about-label,.about-stage { display:block; color:var(--color-accent); font-family:var(--font-heading); font-size:.72rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.about-section { padding:5.5rem 0; border-top:1px solid var(--color-border); }
.about-opening { padding:calc(var(--nav-height) + 4.5rem) 0 5rem; }
.about-intro-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:4rem; align-items:center; }
.about-portrait { aspect-ratio:3 / 4; min-width:0; display:grid; place-items:center; background:var(--color-bg-alt); border:1px solid var(--color-border); border-radius:var(--radius-xl); }
.about-portrait span { color:var(--color-text-muted); font-family:var(--font-body); font-size:.85rem; }
.about-origin { display:grid; grid-template-columns:1fr 1.1fr; gap:4rem; align-items:center; margin-bottom:3.5rem; }
.about-origin blockquote { margin:0; border-left:3px solid var(--color-accent); padding:1rem 0 1rem 2rem; font-family:var(--font-display); font-size:2rem; line-height:1.4; }
.about-origin blockquote .about-label { margin-bottom:1rem; }
.about-journey { display:grid; grid-template-columns:1fr 1fr; gap:3rem 4rem; }
.about-journey article { border-top:1px solid var(--color-border); padding-top:1.5rem; }
.about-stage { margin-bottom:.8rem; }
.about-connection { background:var(--color-white); }
.about-page .about-statement { font-family:var(--font-display); font-size:clamp(2.3rem,4.5vw,4rem); line-height:1.2; color:var(--color-accent); max-width:23ch; margin:2.5rem 0 3rem; }
.about-threads { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; }
.about-threads article { border-top:2px solid var(--color-border); padding-top:1.3rem; }
.about-threads p { font-size:.95rem; }
.about-page .about-closing { border-top:1px solid var(--color-border); padding-top:2rem; margin:1.5rem 0 0; max-width:75ch; }
.about-principle { display:grid; grid-template-columns:1fr 1.1fr; gap:5rem; }
.about-principle blockquote { margin:0; font-family:var(--font-display); font-size:clamp(2.5rem,4.5vw,4rem); line-height:1.2; }
.about-principle em { color:var(--color-accent); }
.about-evolution { background:var(--color-bg-alt); }
.about-evolution-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:5rem; }
.about-text-link { display:inline-block; padding:.65rem 0; color:var(--color-accent); text-decoration:underline; text-underline-offset:5px; line-height:1.6; }
.about-degrees { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.about-degrees article { background:var(--color-white); padding:1.75rem 2.25rem; border:1px solid var(--color-border); border-radius:var(--radius-lg); }
.about-degrees h3 { font-size:1.35rem; margin:1rem 0; }
.about-distinction { display:inline-block; color:var(--color-accent); background:var(--color-accent-light); padding:.35rem .75rem; border-radius:var(--radius-sm); font-size:.85rem; }
.about-certifications { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:2rem; }
.about-certifications p { padding:.5rem 0 .5rem 1.25rem; border-left:2px solid var(--color-border); }
.about-certifications strong { display:block; color:var(--color-navy); font-family:var(--font-heading); font-size:.95rem; }
.about-certifications span { font-size:.9rem; }
.about-milestones ol { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; column-gap:4rem; }
.about-milestones li { display:grid; grid-template-columns:2.5rem 1fr; gap:1rem; padding:1.75rem 0; border-top:1px solid var(--color-border); }
.about-milestones li>span { font-family:var(--font-display); font-style:italic; font-size:2rem; color:var(--color-accent); line-height:1.3; }
.about-milestones li p { margin:0; }
.about-final { text-align:center; background:var(--color-white); }
.about-final h2 { max-width:none; }
.about-final .about-wrap>div { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }
.about-final .btn { min-height:48px; }
@media(max-width:900px) { .about-intro-grid,.about-origin,.about-principle,.about-evolution-grid { gap:2.5rem; } .about-threads { grid-template-columns:1fr 1fr; } }
@media(max-width:680px) {
.about-wrap { width:calc(100% - 40px); }
.about-opening { padding-top:calc(var(--nav-height) + 2.5rem); }
.about-section { padding:3.5rem 0; }
.about-intro-grid,.about-origin,.about-journey,.about-principle,.about-evolution-grid,.about-degrees,.about-certifications,.about-milestones ol { grid-template-columns:1fr; }
.about-portrait { width:100%; max-width:440px; margin:auto; }
.about-page h2 { margin-bottom:1.75rem; }
.about-journey { gap:1.5rem; }
.about-threads { gap:1.5rem; }
.about-origin { margin-bottom:2rem; }
.about-origin blockquote { padding-left:1.25rem; font-size:1.75rem; }
.about-degrees article { padding:1.125rem 1.5rem; }
.about-certifications { gap:.5rem; }
.about-final .btn { width:100%; }
}
@media(max-width:380px) { .about-threads { grid-template-columns:1fr; } }

/* Homepage palette applied without changing editorial geometry or content. */
.about-opening {
  background-color:var(--color-navy);
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),radial-gradient(ellipse at 20% 20%,rgba(26,86,196,.2),transparent 65%);
  background-size:60px 60px,60px 60px,100% 100%;
}
.about-opening h1 { color:var(--color-white); }
.about-opening p { color:#c9d5e6; }
.about-opening .about-lead { color:var(--color-white); }
.about-opening .about-label { color:#bdd3f5; }
.about-connection { background:var(--color-accent-light); border-color:#c4d4eb; }
.about-threads article,.about-page .about-closing { border-color:#b5c9e5; }
.about-evolution { background:var(--color-navy); border-color:var(--color-navy); }
.about-evolution h2,.about-evolution .about-lead { color:var(--color-white); }
.about-evolution p { color:#c9d5e6; }
.about-evolution .about-label,.about-evolution .about-text-link { color:#8dbbff; }
.about-evolution .about-text-link:focus-visible { outline:2px solid #8dbbff; outline-offset:4px; }
.about-degrees article { border-color:#d6e1ef; box-shadow:0 8px 24px rgba(13,31,60,.06); }
.about-certifications p { border-color:#8dbbff; }
.about-milestones { background:var(--color-white); }
.about-milestones li { border-color:#d6e1ef; }
.about-final { background:var(--color-accent-light); border-color:#c4d4eb; }

/* Full portrait within the existing reserved vertical area. */
.about-portrait { overflow:hidden; }
.about-portrait img { display:block; width:100%; height:100%; min-height:0; object-fit:contain; object-position:center bottom; }
