:root {
  --about-brand: #022639;
  --about-accent: #AABF00;
  --about-orange: #FFB502;
  --about-ink: #1D1D1B;
  --about-paper: #FFFFFF;
  --about-paper-cool: #F4F7F8;
  --about-muted: #526B77;
  --about-radius: 1.75rem;
  --about-ease: cubic-bezier(.22, 1, .36, 1);
}

.about-page { color:var(--about-brand); background:var(--about-paper); font-family:"Comfortaa",sans-serif; }
.about-page .home-contact-panel-legacy { display:none !important; }
.about-page .page-main-content,.about-main { overflow:hidden; }
.about-page h1,.about-page h2,.about-page h3,.about-page p { font-family:inherit; }
.about-shell { width:min(1180px,calc(100% - 2rem)); margin-inline:auto; }
.about-section { position:relative; padding:clamp(5rem,9vw,9rem) 0; }
.about-kicker { display:flex; align-items:center; gap:.8rem; margin:0 0 1.25rem; color:var(--about-accent); font-size:.72rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.about-kicker::before { width:2rem; height:2px; background:currentColor; content:""; }
.about-section-heading h2,.about-team h2,.about-commitment h2 { margin:0; color:var(--about-brand); font-size:clamp(2.2rem,5vw,4.8rem); font-weight:700; letter-spacing:-.055em; line-height:1.03; }
.about-section-heading--center { max-width:850px; margin:0 auto clamp(3rem,6vw,5rem); text-align:center; }
.about-section-heading--center .about-kicker { justify-content:center; }

.about-hero { min-height:min(860px,92svh); display:grid; align-items:end; position:relative; color:var(--about-brand); background:#f7f8f5; isolation:isolate; }
.about-hero__media,.about-hero__veil { position:absolute; inset:0; }
.about-hero__media { z-index:-3; }
.about-hero__media img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.about-hero__veil { z-index:-2; background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.95) 35%,rgba(255,255,255,.58) 48%,rgba(255,255,255,0) 66%); }
.about-hero__content { padding-top:clamp(8rem,18vh,13rem); padding-bottom:clamp(5.5rem,10vh,8rem); }
.about-hero .about-kicker { color:var(--about-orange); }
.about-hero h1 { max-width:850px; margin:0; color:var(--about-brand); font-size:clamp(3.2rem,8.6vw,8rem); font-weight:700; letter-spacing:-.075em; line-height:.9; }
.about-hero h1 span { display:block; color:var(--about-accent); }
.about-hero__lead { max-width:660px; margin:2rem 0 0; color:#526b77; font-size:clamp(1rem,1.45vw,1.18rem); line-height:1.85; }
.about-scroll-cue { display:inline-flex; align-items:center; gap:.75rem; margin-top:2rem; color:var(--about-brand); font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.about-scroll-cue:hover { color:var(--about-accent); }
.about-scroll-cue span { display:grid; width:2.3rem; height:2.3rem; place-items:center; border:1px solid rgba(2,38,57,.3); border-radius:50%; }
.about-hero__curve { position:absolute; right:clamp(1rem,5vw,5rem); bottom:2.5rem; width:min(19vw,230px); aspect-ratio:1; border-right:2px solid var(--about-orange); border-bottom:2px solid var(--about-orange); border-radius:0 0 4rem; opacity:.9; }

.about-intro { background:var(--about-paper); }
.about-intro__grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(3rem,8vw,8rem); align-items:start; }
.about-intro__copy { padding-top:.45rem; }
.about-intro__copy p { margin:0; color:var(--about-muted); font-size:clamp(1rem,1.35vw,1.15rem); line-height:1.95; }
.about-intro__copy p + p { margin-top:1.4rem; }
.about-intro__copy strong { color:var(--about-brand); font-weight:700; text-transform:uppercase; }

.about-team { color:#fff; background:var(--about-brand); }
.about-team__grid { display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(3rem,7vw,7rem); align-items:center; }
.about-team__visual { min-height:520px; position:relative; margin:0; }
.about-team__visual::before { position:absolute; z-index:2; inset:1.25rem -1.25rem -1.25rem 1.25rem; border:1px solid rgba(170,191,0,.58); border-radius:var(--about-radius); content:""; }
.about-team__visual img { width:100%; height:100%; min-height:520px; display:block; position:relative; z-index:1; object-fit:cover; border-radius:var(--about-radius); filter:saturate(.82) contrast(1.04); }
.about-team__accent { width:4rem; height:4rem; position:absolute; z-index:3; right:-1.25rem; top:-1.25rem; border-radius:1rem 1rem 3rem 1rem; background:var(--about-orange); }
.about-team h2 { color:#fff; }
.about-team__content > p:not(.about-kicker) { margin:1.8rem 0 0; color:rgba(255,255,255,.72); font-size:clamp(1rem,1.35vw,1.15rem); line-height:1.85; }

.about-values { background:var(--about-paper-cool); }
.about-values__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
.about-value { min-height:430px; display:flex; flex-direction:column; position:relative; padding:clamp(1.7rem,3vw,2.5rem); border:1px solid rgba(2,38,57,.1); border-radius:var(--about-radius); background:#fff; box-shadow:0 18px 48px rgba(2,38,57,.07); transition:transform .35s var(--about-ease),box-shadow .35s var(--about-ease); }
.about-value:hover { transform:translateY(-8px); box-shadow:0 30px 62px rgba(2,38,57,.12); }
.about-value__icon { width:4.4rem; height:4.4rem; display:grid; place-items:center; color:var(--about-brand); border-radius:1.35rem; background:var(--about-accent); }
.about-value__icon--orange { background:var(--about-orange); }
.about-value__icon svg { width:2.5rem; height:2.5rem; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.about-value h3 { margin:clamp(1.75rem,3vw,2.5rem) 0 1rem; color:var(--about-brand); font-size:clamp(1.35rem,2vw,1.75rem); font-weight:700; letter-spacing:-.035em; }
.about-value p { margin:0; color:var(--about-muted); font-size:.95rem; line-height:1.8; }


.about-commitment { background:#fff; }
.about-commitment__grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(3rem,7vw,7rem); align-items:center; }
.about-commitment__content > p:not(.about-kicker) { margin:1.8rem 0 0; color:var(--about-muted); font-size:1.05rem; line-height:1.9; }
.about-cta { min-height:50px; display:inline-flex; align-items:center; justify-content:center; margin-top:2rem; padding:.75rem 1.5rem; color:var(--about-brand); border-radius:999px; background:var(--about-accent); font-size:.78rem; font-weight:700; letter-spacing:.06em; text-align:center; text-transform:uppercase; transition:transform .25s var(--about-ease),background .25s var(--about-ease); }
.about-cta:hover { color:var(--about-brand); background:var(--about-orange); transform:translateY(-3px); }
.about-commitment__visual { margin:0; position:relative; }
.about-commitment__visual::after { position:absolute; left:-1.5rem; bottom:-1.5rem; width:44%; height:42%; border-left:2px solid var(--about-accent); border-bottom:2px solid var(--about-accent); border-radius:0 0 0 3rem; content:""; }
.about-commitment__visual img { width:100%; aspect-ratio:8/5; display:block; object-fit:cover; border-radius:var(--about-radius); box-shadow:0 28px 68px rgba(2,38,57,.18); }

.about-page .about-reveal { opacity:0; transform:translateY(28px); filter:blur(8px); transition:opacity .9s var(--about-ease),transform .9s var(--about-ease),filter .9s var(--about-ease); }
.about-page .about-reveal:nth-child(2) { transition-delay:.08s; }
.about-page .about-reveal:nth-child(3) { transition-delay:.16s; }
.about-page .about-reveal:nth-child(4) { transition-delay:.24s; }
.about-page .is-visible .about-reveal,.about-page .about-reveal.is-visible { opacity:1; transform:none; filter:none; }
.about-scroll-cue:focus-visible,.about-cta:focus-visible { outline:3px solid var(--about-orange); outline-offset:4px; }

@media (max-width:991px) {
  .about-intro__grid,.about-team__grid,.about-commitment__grid { grid-template-columns:1fr; }
  .about-intro__grid { gap:2.5rem; }
  .about-team__visual { order:2; }
  .about-team__content { order:1; }
  .about-values__grid { grid-template-columns:1fr 1fr; }
  .about-value:last-child { grid-column:1/-1; min-height:340px; }
}

@media (max-width:767px) {
  .about-shell { width:min(100% - 1.5rem,1180px); }
  .about-section { padding:4.75rem 0; }
  .about-hero { min-height:780px; align-items:start; }
  .about-hero__media img { object-position:center; }
  .about-hero__veil { background:linear-gradient(180deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.97) 44%,rgba(255,255,255,.5) 61%,rgba(255,255,255,0) 76%); }
  .about-hero__content { padding-top:8rem; padding-bottom:3rem; }
  .about-hero h1 { max-width:22rem; font-size:clamp(2.7rem,13vw,4.25rem); }
  .about-hero__lead { max-width:21rem; margin-top:1.25rem; font-size:.95rem; line-height:1.65; }
  .about-hero__curve { width:6rem; bottom:1.5rem; border-radius:0 0 2rem; }
  .about-team__visual,.about-team__visual img { min-height:360px; }
  .about-team__visual::before { inset:.75rem -.5rem -.75rem .5rem; }
  .about-team__accent { right:-.25rem; top:-.75rem; width:3rem; height:3rem; }
  .about-values__grid { grid-template-columns:1fr; }
  .about-value,.about-value:last-child { min-height:360px; grid-column:auto; }
  .about-section-heading--center { text-align:left; }
  .about-section-heading--center .about-kicker { justify-content:flex-start; }
  .about-commitment__visual::after { left:-.5rem; bottom:-.75rem; }
}

@media (prefers-reduced-motion:reduce) {
  .about-page { scroll-behavior:auto; }
  .about-page .about-reveal { opacity:1; transform:none; filter:none; transition:none; }
  .about-value,.about-cta { transition:none; }
}
