/* TYPOGRAPHY */
em{font-style:italic}
.sw-narrow{max-width:760px;margin:0 auto}
h1,h2{font-family:var(--ff-d)}
h1{font-size:clamp(2.6rem,5vw,3.8rem);font-weight:700;line-height:1.1}
h2{font-size:clamp(1.8rem,3vw,2.4rem);font-weight:600;color:var(--navy);line-height:1.2;margin-bottom:.9rem}
h3{font-family:var(--ff-d);font-size:1.2rem;font-weight:600;color:var(--navy);margin-bottom:.6rem}
p{line-height:1.78}

/* ABOUT HERO */
.about-hero{background:linear-gradient(135deg,var(--navy-dark) 0%,var(--navy) 55%,#1E3A54 100%);padding:5rem 2rem 4.5rem;position:relative;overflow:hidden}
.about-hero::before{content:'';position:absolute;top:-20%;right:-8%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(13,148,136,.12) 0%,transparent 68%);pointer-events:none}
.about-hero-w{max-width:1160px;margin:0 auto;position:relative;z-index:1}
.about-hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(13,148,136,.13);border:1px solid rgba(13,148,136,.28);color:#5EEAD4;font-size:.82rem;font-weight:500;padding:.38rem 1rem;border-radius:100px;margin-bottom:1.5rem}
.about-hero-badge::before{content:'';width:6px;height:6px;background:var(--teal);border-radius:50%;flex-shrink:0}
.about-hero h1{color:#fff;max-width:700px;margin-bottom:1.25rem}
.about-hero h1 em{font-style:normal;color:#5EEAD4}
.about-hero-sub{font-size:1.1rem;color:rgba(255,255,255,.7);max-width:520px;line-height:1.75}

/* ORIGIN STORY */
.origin{background:#fff}
.origin-grid{display:grid;grid-template-columns:1fr 1.8fr;gap:5rem;align-items:start}
.origin-sidebar{position:sticky;top:5rem}
.origin-num{font-family:var(--ff-d);font-size:7rem;font-weight:700;color:#8a9094;line-height:1;margin-bottom:.5rem;letter-spacing:-.04em}
.origin-sidebar h2{margin-bottom:1rem}
.origin-sidebar .slabel{margin-bottom:.65rem}
.story-block{margin-bottom:2rem}
.story-block p{font-size:1.02rem;color:var(--muted);margin-bottom:1rem}
.story-block p:last-child{margin-bottom:0}
.callout{background:var(--teal-pale);border-left:4px solid var(--teal);border-radius:0 var(--r-md) var(--r-md) 0;padding:1.5rem 1.75rem;margin:2rem 0}
.callout blockquote{font-family:var(--ff-d);font-size:1.25rem;color:var(--navy);line-height:1.5;font-weight:600}
.callout cite{display:block;font-size:.85rem;color:var(--muted);margin-top:.75rem;font-style:normal}

/* TRIAL BY FIRE */
.trial{background:var(--navy);padding:5rem 2rem}
.trial-w{max-width:1160px;margin:0 auto}
.trial-intro{max-width:640px;margin-bottom:3.5rem}
.trial-label{font-size:.76rem;font-weight:600;letter-spacing:.12em;color:rgba(255,255,255,.35);text-transform:uppercase;margin-bottom:.65rem}
.trial-intro h2{color:#fff;margin-bottom:1rem}
.trial-intro p{font-size:1rem;color:rgba(255,255,255,.65);line-height:1.75}
.trial-intro p+p{margin-top:1rem}
.trial-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.trial-stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-lg);padding:2rem;text-align:center}
.trial-stat-n{font-family:var(--ff-d);font-size:3.2rem;font-weight:700;line-height:1;margin-bottom:.5rem}
.trial-stat-n.teal{color:#5EEAD4}
.trial-stat-n.orange{color:var(--orange)}
.trial-stat-l{font-size:.9rem;color:rgba(255,255,255,.55);line-height:1.45}
.trial-footer{margin-top:2rem;font-family:var(--ff-d);font-size:1.1rem;color:rgba(255,255,255,.5);font-style:italic;text-align:center}

/* PHILOSOPHY */
.philosophy{background:var(--navy)}
.phil-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.phil-left .slabel{color:#5EEAD4}
.phil-left h2{margin-bottom:1.5rem;color:#fff}
.phil-left p{font-size:1rem;color:rgba(255,255,255,.65);margin-bottom:1.25rem;line-height:1.78}
.phil-right{display:flex;flex-direction:column;gap:1.25rem}
.phil-card{background:rgba(255,255,255,.06);border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.1);padding:1.5rem}
.phil-card-icon{margin-bottom:.75rem;color:#5EEAD4}
.phil-card-icon svg{width:22px;height:22px}
.phil-card h3{font-size:1rem;margin-bottom:.4rem;color:#fff}
.phil-card p{font-size:.9rem;color:rgba(255,255,255,.6);line-height:1.65}

/* JOURNEY TIMELINE */
.journey-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:5rem;align-items:start}
.journey-intro{font-size:1rem;color:var(--muted);margin-top:1rem;line-height:1.75}
.timeline{position:relative;padding-left:2rem}
.timeline::before{content:'';position:absolute;left:0;top:.75rem;bottom:.75rem;width:2px;background:var(--slate)}
.tl-item{position:relative;padding-bottom:2.5rem}
.tl-item:last-child{padding-bottom:0}
.tl-dot{position:absolute;left:-2.3rem;top:.35rem;width:14px;height:14px;border-radius:50%;background:var(--white);border:2px solid var(--teal);transition:background .2s}
.tl-dot.filled{background:var(--teal)}
.tl-dot.orange{border-color:var(--orange);background:var(--orange)}
.tl-year{font-size:.8rem;font-weight:600;color:var(--teal-dk);letter-spacing:.06em;margin-bottom:.2rem}
.tl-item h3{margin-bottom:.4rem}
.tl-item p{font-size:.93rem;color:var(--muted);line-height:1.65}

/* PERSONAL WHY */
.personal-why{background:var(--off);padding:5rem 2rem}
.pw-w{max-width:820px;margin:0 auto;text-align:center}
.pw-quote{font-family:var(--ff-d);font-size:clamp(1.5rem,3vw,2.2rem);font-weight:600;color:var(--navy);line-height:1.45;margin-bottom:1.5rem}
.pw-quote em{font-style:normal;color:var(--teal-dk)}
.pw-body{font-size:1rem;color:var(--muted);line-height:1.8;margin-bottom:2.5rem;max-width:680px;margin-left:auto;margin-right:auto}
.pw-sig{font-family:var(--ff-d);font-size:1.1rem;color:var(--faint);font-style:italic}

/* CREDENTIALS */
.creds{background:var(--off)}
.creds-header{margin-bottom:2.5rem}
.creds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}
.cred-card{background:#fff;border-radius:var(--r-lg);border:1px solid var(--slate);padding:1.5rem}
.cred-type{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#6b7585;margin-bottom:.75rem}
.cred-title{font-weight:600;font-size:1rem;color:var(--navy);margin-bottom:.25rem}
.cred-org{font-size:.88rem;color:var(--muted)}
.cred-year{font-size:.82rem;color:var(--teal-dk);font-weight:500;margin-top:.4rem}

@media(max-width:900px){
  .origin-grid{grid-template-columns:1fr}
  .origin-sidebar{position:static}
  .origin-num{font-size:4rem}
  .phil-grid{grid-template-columns:1fr}
  .trial-stats{grid-template-columns:1fr}
  .journey-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .about-hero{padding:3.5rem 1.25rem}
  .trial{padding:3.5rem 1.25rem}
  h1{font-size:2.2rem}
}
