@import url("subpoenas-page.css");

/* About page only. Shared header, banner, and footer remain controlled by style.css. */
.about-page-shell .banner-head {
  min-height: 270px;
}

.about-page-shell .banner-head h1 {
  max-width: 1000px;
  margin: 0 auto;
  padding: 1.65em 20px 0;
  font-size: 3em;
  line-height: 1.12;
}

.about-page {
  overflow: hidden;
}

.about-pillars,
.about-values,
.about-savings {
  padding: 70px 0;
}

.about-section-heading {
  max-width: 780px;
  margin: 0 auto 42px;
  text-align: center;
}

.about-section-heading h2 {
  margin-bottom: 16px;
}

.about-section-heading h2::after {
  content: '';
  display: block;
  width: 48px;
  height: 2px;
  margin: 17px auto 0;
  background: #2289dc;
}

.about-section-heading > p:last-child {
  max-width: 690px;
  margin-right: auto;
  margin-left: auto;
  color: #596b7b;
}

.about-pillar-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

.about-pillar {
  display: flex;
  min-width: 0;
  flex-direction: column;
  border: 1px solid #dce5ed;
  border-bottom: 4px solid #267ec4;
  background: #fff;
  box-shadow: 0 12px 30px rgba(22, 43, 61, 0.09);
}

.about-pillar--service {
  border-bottom-color: #43ad2b;
}

.about-pillar img {
  display: block;
  width: 100%;
  height: 215px;
  object-fit: cover;
}

.about-pillar__content {
  flex: 1;
  padding: 28px 27px 30px;
}

.about-pillar__content h3 {
  margin-bottom: 12px;
}

.about-pillar__content p {
  margin-bottom: 0;
  color: #526575;
}

.about-legacy {
  padding: 54px 0;
  background: linear-gradient(120deg, #0a3157, #124f82);
  color: #fff;
}

.about-legacy__grid {
  display: grid;
  grid-template-columns: minmax(330px, 1.55fr) repeat(3, minmax(150px, 0.65fr));
  gap: 0;
  align-items: center;
}

.about-legacy__intro {
  padding-right: 42px;
}

.about-legacy .subpoena-eyebrow {
  color: #8fcfff;
}

.about-legacy h2 {
  max-width: 560px;
  margin-bottom: 0;
  color: #fff;
  font-size: 2em;
}

.about-stat {
  min-height: 88px;
  padding: 9px 24px;
  border-left: 1px solid rgba(255, 255, 255, 0.23);
}

.about-stat strong,
.about-stat span {
  display: block;
}

.about-stat strong {
  margin-bottom: 7px;
  color: #fff;
  font-family: 'Karla-Bold', Arial, sans-serif;
  font-size: 1.38em;
  line-height: 1.15;
}

.about-stat span {
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.96em;
  line-height: 1.45;
}

.about-values {
  background: #f4f7fa;
  border-bottom: 1px solid #e0e7ed;
}

.about-values__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid #d7e1e9;
  border-bottom: 1px solid #d7e1e9;
}

.about-value {
  min-width: 0;
  padding: 31px 29px 28px;
  border-left: 1px solid #d7e1e9;
}

.about-value:first-child {
  border-left: 0;
}

.about-value__number {
  display: block;
  margin-bottom: 21px;
  color: #2789d8;
  font-family: 'Karla-Bold', Arial, sans-serif;
  font-size: 0.83em;
  letter-spacing: 0.12em;
}

.about-value h3 {
  margin-bottom: 11px;
}

.about-value p {
  margin-bottom: 0;
  color: #5b6d7c;
}

.about-savings__layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.78fr) minmax(0, 1.35fr);
  gap: 78px;
  align-items: start;
}

.about-savings__intro {
  position: sticky;
  top: 30px;
}

.about-savings__intro h2 {
  margin-bottom: 16px;
}

.about-savings__intro > p:last-child {
  color: #596b7b;
}

.about-savings__list {
  border-top: 1px solid #dce5ed;
}

.about-saving {
  position: relative;
  padding: 26px 12px 25px 47px;
  border-bottom: 1px solid #dce5ed;
}

.about-saving::before {
  content: '';
  position: absolute;
  top: 34px;
  left: 8px;
  width: 11px;
  height: 11px;
  border: 3px solid #2789d8;
  border-radius: 50%;
}

.about-saving h3 {
  margin-bottom: 7px;
  font-size: 1.28em;
}

.about-saving p {
  margin-bottom: 0;
  color: #596b7b;
}

.about-closing {
  padding: 57px 0;
  border-top: 1px solid #e2e4e2;
  background: #f7f7f4;
  text-align: center;
}

.about-closing h2 {
  max-width: 780px;
  margin: 0 auto 12px;
}

.about-closing p {
  margin-bottom: 20px;
  color: #596b7b;
}

.about-closing .subpoena-button {
  margin-top: 0;
}

@media (max-width: 991px) {
  .about-pillars,
  .about-values,
  .about-savings {
    padding: 56px 0;
  }

  .about-pillar-grid {
    gap: 18px;
  }

  .about-pillar img {
    height: 180px;
  }

  .about-pillar__content {
    padding: 24px 21px 26px;
  }

  .about-legacy__grid {
    grid-template-columns: 1.3fr repeat(3, 0.7fr);
  }

  .about-legacy__intro {
    padding-right: 24px;
  }

  .about-stat {
    padding-right: 15px;
    padding-left: 15px;
  }

  .about-values__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .about-value:nth-child(3) {
    border-left: 0;
  }

  .about-value:nth-child(n+3) {
    border-top: 1px solid #d7e1e9;
  }

  .about-savings__layout {
    gap: 48px;
  }
}

@media (max-width: 767px) {
  .about-page-shell .banner-head {
    min-height: 205px;
  }

  .about-page-shell .banner-head h1 {
    padding-top: 2.15em;
    font-size: 2em;
  }

  .about-pillars,
  .about-values,
  .about-savings {
    padding: 46px 0;
  }

  .about-section-heading {
    margin-bottom: 31px;
  }

  .about-pillar-grid,
  .about-savings__layout {
    grid-template-columns: 1fr;
  }

  .about-pillar-grid {
    gap: 24px;
  }

  .about-pillar img {
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .about-legacy {
    padding: 43px 0 35px;
  }

  .about-legacy__grid {
    grid-template-columns: 1fr;
  }

  .about-legacy__intro {
    padding: 0 0 28px;
  }

  .about-legacy h2 {
    font-size: 1.75em;
  }

  .about-stat {
    min-height: 0;
    padding: 19px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.23);
    border-left: 0;
  }

  .about-stat strong {
    margin-bottom: 3px;
  }

  .about-savings__layout {
    gap: 27px;
  }

  .about-savings__intro {
    position: static;
  }
}

@media (max-width: 479px) {
  .about-values__grid {
    grid-template-columns: 1fr;
  }

  .about-value,
  .about-value:nth-child(3) {
    border-top: 1px solid #d7e1e9;
    border-left: 0;
  }

  .about-value:first-child {
    border-top: 0;
  }

  .about-value {
    padding: 25px 20px 24px;
  }

  .about-closing {
    padding: 45px 0;
  }
}
