/* =========================================================
   ABOUT PAGE — exact match to About_us.jpeg
   (loaded after css/style.css; overrides shared rules only on this page)
   ========================================================= */

/* ---------- Desktop layout holds down to 901px (design is 1024 wide) ---------- */
@media (min-width: 901px) {
  /* Hero */
  .hero--about { padding: 16px 0 16px; background: linear-gradient(180deg, #f7f7f9 0%, #f1f1f4 100%); }
  .hero--about .hero__inner { grid-template-columns: minmax(0, 35.5%) minmax(0, 1fr); gap: 14px; align-items: center; }
  .hero--about .hero__content { display: block; padding-left: 4px; }
  .hero--about .hero__title { font-size: clamp(30px, 3.55vw, 50px); line-height: 1.12; letter-spacing: -.015em; }
  .hero--about .bar { width: 80px; height: 5px; margin: 14px 0 20px; }
  .hero--about .hero__text { font-size: clamp(16px, 1.72vw, 23px); line-height: 1.32; color: #1d1d1d; }
  .about-hero__logo { grid-column: auto; grid-row: auto; margin: 26px 0 0; padding: 0; display: flex; justify-content: center; }
  .logo--dark { --s: clamp(.92px, .1vw, 1.3px); }

  .about-hero__media { aspect-ratio: 623 / 291; border-radius: 6px; }
  .about-hero__media img { object-position: center 48%; }

  /* yellow frame shapes around the hero photo, as in the design */
  .hero--about .hero__shape--right {
    right: 0; bottom: 0; top: auto;
    width: 41%; height: 19px;
    clip-path: polygon(2% 0, 100% 0, 100% 100%, 0 100%);
  }
  .hero--about::after {
    content: "";
    position: absolute;
    right: 0; top: 0;
    width: 15%; height: 100%;
    background: var(--yellow);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 88% 100%, 88% 6%, 0 6%);
    z-index: 0;
  }
  .hero--about .hero__shape--left { width: 58px; height: 115px; bottom: 0; }

  /* Story */
  .story { padding: 24px 0 18px; background: #F3F3F5; }
  .story .section-head { margin-bottom: 18px; }
  .story__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, .98fr) minmax(0, 1.04fr); gap: 14px; align-items: center; }
  .story__text { grid-column: auto; max-width: none; padding: 2px 10px 2px 20px; font-size: clamp(14px, 1.42vw, 19px); line-height: 1.32; color: #1d1d1d; }
  .story__text p + p { margin-top: 14px; }

  /* Mission */
  .mission { grid-template-columns: auto auto minmax(0, 1fr); row-gap: 0; padding: 18px 26px 18px 36px; }
  .mission__icon { margin-right: 32px; }
  .mission__title { border-right: 3px solid var(--yellow); padding: 4px 32px 4px 26px; }
  .mission__text { grid-column: auto; padding: 0 0 0 32px; border-top: 0; font-size: clamp(15px, 1.65vw, 22px); line-height: 1.3; color: #1d1d1d; }

  /* Pillars */
  .pillars { grid-template-columns: repeat(6, 1fr); gap: 11px 11px; }

  /* Central Texas */
  .home-tx { flex-direction: row; align-items: center; padding: 14px 36px 18px; min-height: 148px; }
  .home-tx__skyline { position: absolute; right: 0; bottom: 0; width: 52%; height: 100%; max-height: none; margin: 0; }

  /* CTA band */
  .cta-band { clip-path: polygon(3% 0, 100% 0, 97% 100%, 0 100%); }
  .cta-band__inner { flex-direction: row; text-align: left; gap: 34px; }
  .cta-band__title { border-right: 2px solid var(--ink); padding-right: 34px; }
}

/* ---------- Typography / details that match the design at every width ---------- */
.section-title--italic { font-size: clamp(26px, 3.3vw, 44px); letter-spacing: -.012em; }
.section-title--italic::before,
.section-title--italic::after { height: 3px; flex-basis: 130px; }

/* Founder cards: chest-up photo on a yellow slanted block, two-line name, yellow rule */
.founder-card { grid-template-columns: 49% 1fr; min-height: 0; border-radius: 6px; border: 1px solid #e3e3e7; box-shadow: 0 4px 14px rgba(0,0,0,.06); }
.founder-card__photo { overflow: hidden; align-items: flex-end; }
.founder-card__photo::before { inset: 10% 6% 0 0; clip-path: polygon(0 10%, 100% 0, 100% 100%, 0 100%); }
.founder-card__photo img { height: auto; width: 100%; max-width: none; object-fit: contain; object-position: bottom; }
.founder-card__body { padding: 12px 12px 12px 12px; }
.founder-card h3 { font-family: var(--f-wide); font-weight: 800; font-size: clamp(18px, 2.1vw, 28px); line-height: 1.08; letter-spacing: -.01em; }
.founder-card__exp { font-family: var(--f-body); font-style: italic; font-weight: 400; font-size: clamp(13px, 1.42vw, 19px); line-height: 1.18; margin: 4px 0 0; }
.founder-card__bar { display: block; width: 56px; height: 3px; background: var(--yellow); margin: 8px 0 10px; }
.founder-card__body > p:last-child { font-size: clamp(12.5px, 1.25vw, 16.5px); line-height: 1.22; color: #1d1d1d; }

/* Pillar tiles */
.pillar { border: 1.5px solid #dcdce0; border-radius: 7px; padding: 10px 6px 12px; gap: 6px; font-size: clamp(13px, 1.5vw, 19px); box-shadow: 0 2px 6px rgba(0,0,0,.04); }
.pillar__icon { width: clamp(44px, 4.8vw, 62px); height: clamp(44px, 4.8vw, 62px); font-size: clamp(24px, 2.6vw, 33px); }
.pillars-section .section-sub { font-size: clamp(14px, 1.42vw, 19px); color: #1d1d1d; }

/* Central Texas */
.home-tx__bar { display: block; width: 78px; height: 3px; background: var(--yellow); margin: 6px 0 2px; }
.home-tx__content > p { font-size: clamp(14px, 1.45vw, 19px); color: #1d1d1d; margin: 8px 0 16px; }
.home-tx__cities li { font-size: clamp(13px, 1.4vw, 18px); }

/* CTA */
.cta-band__title { font-size: clamp(24px, 2.95vw, 40px); }
.btn--dark { font-size: clamp(15px, 1.55vw, 20px); padding: 10px 18px; }

/* ---- pass 2: sizes measured against About_us.jpeg at 1024px ---- */
.section-title--italic { font-size: clamp(28px, 3.85vw, 52px); }
.home-tx__title { font-size: clamp(28px, 3.75vw, 50px); }
.mission__title { font-size: clamp(32px, 3.95vw, 52px); }
.pillar { font-size: clamp(13px, 1.62vw, 21px); }
.pillar__icon { width: clamp(46px, 5.1vw, 66px); height: clamp(46px, 5.1vw, 66px); font-size: clamp(25px, 2.75vw, 35px); }
.founder-card__photo img { height: 100%; width: 100%; object-fit: cover; object-position: center top; }
@media (min-width: 901px) {
  .hero--about .hero__title { font-size: clamp(32px, 3.9vw, 54px); }
  .logo--dark { --s: clamp(.85px, .092vw, 1.2px); }
  .about-hero__logo { margin-top: 22px; }
  .story__text { font-size: clamp(14px, 1.52vw, 20px); }
  .founder-card { min-height: clamp(200px, 21.2vw, 290px); }
}

/* ---- pass 3: vertical rhythm + photo framing ---- */
.founder-card__photo img { height: 100%; width: 100%; object-fit: contain; object-position: center bottom; }
.pillars-section { padding-top: 14px; }
.pillars-section .section-head { margin-bottom: 14px; }
.pillar { padding: 8px 4px 9px; gap: 4px; }
@media (min-width: 901px) {
  .story__text { font-size: clamp(14px, 1.45vw, 19px); }
  .story { padding: 20px 0 14px; }
  .story .section-head { margin-bottom: 14px; }
  .home-tx { min-height: 0; padding: 10px 36px 14px; }
}

/* ---- pass 4 ---- */
.founder-card__photo img { object-fit: cover; object-position: center top; }
@media (min-width: 901px) {
  .story__grid { grid-template-columns: minmax(0, 1.24fr) minmax(0, .95fr) minmax(0, 1fr); }
}
@media (min-width: 901px) {
  .hero--about .hero__title { font-size: clamp(32px, 3.9vw, 44px); }
}
