/* V3 About page — trust evidence first, then the history and service boundaries. */
.about-page { background: var(--cis-cream); color: var(--cis-navy); }
.about-page .site-header { position: sticky; }

.about-hero {
  background: var(--cis-yellow);
  overflow: hidden;
  padding-block: clamp(88px, 9vw, 148px) clamp(70px, 7vw, 116px);
  position: relative;
}

.about-hero__arc {
  border: clamp(13px, 1.25vw, 21px) solid rgba(185, 229, 217, .9);
  border-radius: 50%;
  height: clamp(350px, 37vw, 640px);
  left: clamp(-290px, -15vw, -160px);
  position: absolute;
  top: clamp(-350px, -19vw, -170px);
  width: clamp(350px, 37vw, 640px);
}

.about-hero__inner { align-items: center; display: grid; gap: 32px; grid-template-columns: minmax(0, 1.35fr) minmax(270px, .65fr); position: relative; }
.about-hero__copy { max-width: 800px; }
.about-hero__eyebrow,
.about-section-heading > p,
.about-commitment__frame > div > p { align-items: center; color: var(--cis-green-deep); display: flex; font-size: 15px; font-weight: 800; gap: 10px; letter-spacing: .08em; margin: 0 0 18px; }
.about-hero__eyebrow i { background: var(--cis-cream); border-radius: 50%; height: 10px; width: 10px; }
.about-hero h1 { font-size: clamp(47px, 5vw, 75px); letter-spacing: -.08em; line-height: 1.13; margin: 0; }
.about-hero h1 span,
.about-section-heading h2 span,
.about-commitment h2 span { color: var(--cis-green-deep); }
.about-hero__copy > p:last-child { font-size: clamp(18px, 1.5vw, 22px); line-height: 1.8; margin: 30px 0 0; max-width: 760px; }
.about-hero__art { height: auto; justify-self: end; max-width: 100%; width: clamp(250px, 29vw, 420px); }

.about-proof { background: var(--cis-cream); border-bottom: 1px solid var(--cis-line); padding-block: clamp(30px, 4vw, 56px); }
.about-proof__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.about-proof__grid article { border-left: 1px solid var(--cis-line); padding: 0 clamp(20px, 2.5vw, 42px); }
.about-proof__grid article:first-child { border-left: 0; padding-left: 0; }
.about-proof__grid p { color: var(--cis-yellow-deep); font-family: "DM Sans", sans-serif; font-size: 16px; font-weight: 800; margin: 0 0 14px; }
.about-proof__grid h2 { font-size: 21px; letter-spacing: -.04em; line-height: 1.35; margin: 0 0 8px; }
.about-proof__grid span { color: var(--cis-copy); display: block; font-size: 15px; line-height: 1.65; }

.about-origin { padding-block: clamp(78px, 9vw, 138px); }
.about-section-heading { margin-bottom: clamp(34px, 4vw, 60px); max-width: 930px; }
.about-section-heading h2,
.about-commitment h2 { font-size: clamp(38px, 4.2vw, 62px); letter-spacing: -.075em; line-height: 1.2; margin: 0; }
.about-origin__timeline { background: var(--cis-navy); border-radius: 28px; color: var(--cis-cream); display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; padding: clamp(30px, 4vw, 58px); }
.about-origin__timeline article { border-left: 1px solid rgba(185, 229, 217, .32); padding: 0 clamp(22px, 3vw, 48px); }
.about-origin__timeline article:first-child { border-left: 0; padding-left: 0; }
.about-origin__year { color: var(--cis-yellow); font-family: "DM Sans", sans-serif; font-size: clamp(45px, 5vw, 72px); font-weight: 800; letter-spacing: -.08em; line-height: 1; margin: 0 0 36px; }
.about-origin__kicker { color: var(--cis-mint); font-size: 14px; font-weight: 800; letter-spacing: .06em; margin: 0; }
.about-origin__timeline h3 { color: var(--cis-cream); font-size: clamp(24px, 2.2vw, 32px); letter-spacing: -.04em; line-height: 1.3; margin: 12px 0; }
.about-origin__timeline div > p:last-child { color: rgba(255, 249, 235, .78); font-size: 16px; line-height: 1.8; margin: 0; }

.about-services { background: var(--cis-mint); padding-block: clamp(78px, 9vw, 136px); }
.about-section-heading--light > span { color: var(--cis-copy); display: block; font-size: 18px; line-height: 1.7; margin-top: 18px; max-width: 620px; }
.about-services__list { counter-reset: services; display: grid; gap: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.about-services__list li { align-items: start; border-top: 1px solid rgba(39, 52, 71, .25); display: flex; gap: 20px; padding: 24px 14px 24px 0; }
.about-services__list li:nth-child(odd) { margin-right: clamp(18px, 3vw, 46px); }
.about-services__list li:nth-child(even) { padding-left: clamp(18px, 3vw, 46px); }
.about-services__list li > span { background: var(--cis-yellow); border-radius: 50%; display: grid; flex: 0 0 auto; font-family: "DM Sans", sans-serif; font-size: 14px; font-weight: 800; height: 36px; place-items: center; width: 36px; }
.about-services__list h3 { font-size: 24px; letter-spacing: -.04em; line-height: 1.25; margin: 3px 0 5px; }
.about-services__list p { color: var(--cis-copy); font-size: 16px; line-height: 1.7; margin: 0; }

.about-commitment { background: var(--cis-cream); padding-block: clamp(70px, 8vw, 120px); }
.about-commitment__frame { align-items: center; background: linear-gradient(135deg, rgba(185, 229, 217, .74), rgba(255, 249, 235, .92)); border: 1px solid rgba(39, 52, 71, .13); border-radius: 28px; display: grid; gap: clamp(32px, 5vw, 80px); grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); padding: clamp(32px, 4vw, 64px); }
.about-commitment__frame ul { display: grid; gap: 17px; list-style: none; margin: 0; padding: 0; }
.about-commitment__frame li { color: var(--cis-copy); font-size: 17px; line-height: 1.75; padding-left: 24px; position: relative; }
.about-commitment__frame li::before { background: var(--cis-yellow); border-radius: 50%; content: ""; height: 10px; left: 0; position: absolute; top: .65em; width: 10px; }
.about-commitment__frame strong { color: var(--cis-navy); }

@media (max-width: 900px) {
  .about-hero__inner { grid-template-columns: 1fr; }
  .about-hero__art { margin: 6px 0 -68px auto; width: min(47vw, 340px); }
  .about-proof__grid { gap: 24px; grid-template-columns: repeat(2, 1fr); }
  .about-proof__grid article:nth-child(3) { border-left: 0; padding-left: 0; }
  .about-origin__timeline { grid-template-columns: 1fr; }
  .about-origin__timeline article,
  .about-origin__timeline article:first-child { border-left: 0; border-top: 1px solid rgba(185, 229, 217, .32); padding: 28px 0 0; }
  .about-origin__timeline article:first-child { border-top: 0; padding-top: 0; }
  .about-origin__year { margin-bottom: 16px; }
  .about-commitment__frame { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .about-hero { padding-top: 72px; }
  .about-hero h1 { font-size: clamp(39px, 11vw, 54px); }
  .about-hero__copy > p:last-child { font-size: 16px; }
  .about-proof__grid { grid-template-columns: 1fr; }
  .about-proof__grid article,
  .about-proof__grid article:first-child,
  .about-proof__grid article:nth-child(3) { border-left: 0; border-top: 1px solid var(--cis-line); padding: 22px 0 0; }
  .about-proof__grid article:first-child { border-top: 0; padding-top: 0; }
  .about-services__list { grid-template-columns: 1fr; }
  .about-services__list li:nth-child(odd) { margin-right: 0; }
  .about-services__list li:nth-child(even) { padding-left: 0; }
  .about-commitment__frame { border-radius: 20px; }
}
