.about-page { background: #050505; color: #f5f5f5; font-family: Montserrat, Arial, sans-serif; }
.about-page *, .about-page *::before, .about-page *::after { box-sizing: border-box; }
.about-page img { display: block; max-width: 100%; }
.about-page p { line-height: 1.72; }
.about-page h1, .about-page h2, .about-page h3 { margin: 0; color: #fff; line-height: 1.14; }
.about-page h2 { font-size: clamp(29px, 3.5vw, 47px); letter-spacing: -.045em; }
.about-page h3 { font-size: clamp(18px, 1.7vw, 22px); letter-spacing: -.02em; }
.about-wrap { width: min(100% - 32px, 1240px); margin-inline: auto; }
.about-eyebrow { margin: 0 0 16px; color: #63d1f6; font-size: 12px; font-weight: 800; letter-spacing: .14em; }

.about-hero { display: grid; gap: 32px; padding-block: 54px 72px; }
.about-hero__copy { min-width: 0; align-self: center; }
.about-hero__logo { width: 166px; height: auto; margin-bottom: 38px; }
.about-hero h1 { max-width: 640px; font-size: clamp(35px, 4.9vw, 66px); letter-spacing: -.055em; }
.about-hero__copy > p:not(.about-eyebrow) { max-width: 590px; margin: 20px 0 0; color: #c6c9cd; font-size: clamp(14px, 1.3vw, 16px); }
.about-hero__poster { position: relative; min-width: 0; height: clamp(320px, 72vw, 580px); overflow: hidden; background: #171d25; }
.about-hero__poster img { position: absolute; top: 0; left: -100%; width: 200%; height: 100%; max-width: none; object-fit: cover; object-position: right center; }

.about-intro { display: grid; gap: 36px; padding-block: 72px 88px; border-top: 1px solid #292929; }
.about-intro__copy { min-width: 0; align-self: center; }
.about-intro__copy > p:not(.about-eyebrow) { max-width: 600px; margin: 20px 0 0; color: #bfc3c8; font-size: 15px; }
.about-intro__more { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; margin-top: 24px; color: #fff; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-decoration: none; border-bottom: 1px solid #63d1f6; }
.about-intro__more:hover, .about-intro__more:focus-visible { color: #63d1f6; }
.about-intro__gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; min-width: 0; }
.about-intro__gallery img { width: 100%; aspect-ratio: 1; object-fit: cover; background: #111; }

.about-company-poster { overflow: hidden; }
.about-company-poster img { width: 100%; height: clamp(250px, 38vw, 480px); object-fit: cover; object-position: center 42%; }

.about-history { padding-block: 78px 92px; border-bottom: 1px solid #292929; scroll-margin-top: 85px; }
.about-history__copy { max-width: 950px; }
.about-history__copy > p:not(.about-eyebrow) { margin: 20px 0 0; color: #c1c4c8; font-size: 15px; }
.about-history__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 48px; padding-top: 30px; border-top: 1px solid #333; }
.about-history__facts div { min-width: 0; }
.about-history__facts strong { display: block; color: #fff; font-size: clamp(21px, 3vw, 38px); line-height: 1.1; }
.about-history__facts span { display: block; margin-top: 9px; color: #aeb4b9; font-size: clamp(9px, 1vw, 12px); font-weight: 700; letter-spacing: .08em; line-height: 1.4; }

.about-certifications { padding-block: 82px 94px; border-bottom: 1px solid #292929; }
.about-certifications__heading { max-width: 780px; margin: 0 auto 38px; text-align: center; }
.about-certifications__heading > p:last-child { margin: 18px 0 0; color: #bdc2c7; font-size: 15px; }
.about-certifications__slots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.about-certifications__slots span { display: block; min-width: 0; aspect-ratio: 3 / 4; border: 1px solid #353535; background: #0a0a0a; }

.about-benefits { padding-block: 86px 100px; border-bottom: 1px solid #292929; }
.about-benefits__heading { max-width: 830px; margin-bottom: 38px; }
.about-benefits__heading > p:last-child { max-width: 680px; margin: 18px 0 0; color: #bdc2c7; font-size: 15px; }
.about-benefits__grid { display: grid; gap: 16px; }
.about-benefits__grid article { min-width: 0; padding: 27px; border: 1px solid #333; background: #111; }
.about-benefits__grid article > span, .about-process ol li > span { display: block; margin-bottom: 22px; color: #63d1f6; font-size: 13px; font-weight: 800; }
.about-benefits__grid article p { margin: 12px 0 0; color: #bfc3c7; font-size: 14px; }

.about-partners, .about-inquiry, .about-process { padding-block: 82px; border-bottom: 1px solid #292929; }
.about-partners h2, .about-inquiry h2, .about-process h2 { max-width: 850px; }
.about-partners > div > p:last-child, .about-inquiry > p:not(.about-eyebrow) { max-width: 700px; margin: 20px 0 0; color: #bdc2c7; font-size: 15px; }
.about-partners ul, .about-inquiry ul, .about-process ol { display: grid; gap: 14px; margin: 30px 0 0; padding: 0; list-style: none; }
.about-partners li, .about-inquiry li { display: flex; align-items: center; min-width: 0; min-height: 82px; padding: 20px 23px; border: 1px solid #333; background: #111; color: #f4f4f4; font-size: 14px; font-weight: 600; line-height: 1.5; }
.about-process__heading { text-align: center; }
.about-process__heading h2 { margin-inline: auto; }
.about-process ol { margin-top: 38px; }
.about-process ol li { min-width: 0; min-height: 210px; padding: 25px; border: 1px solid #333; background: #111; }
.about-process ol li p { margin: 12px 0 0; color: #bfc3c7; font-size: 14px; }

@media (min-width: 700px) {
  .about-hero { grid-template-columns: minmax(0, 1fr) minmax(0, .92fr); align-items: center; gap: clamp(32px, 5vw, 72px); padding-block: 72px 94px; }
  .about-hero__poster { height: clamp(480px, 46vw, 640px); }
  .about-intro { grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); align-items: center; gap: clamp(36px, 5vw, 76px); padding-block: 90px 100px; }
  .about-certifications__slots { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .about-benefits__grid, .about-partners ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-partners { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 72px); }
  .about-partners ul { margin-top: 0; }
  .about-inquiry ul, .about-process ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 380px) {
  .about-history__facts { gap: 7px; }
  .about-history__facts strong { font-size: 18px; }
  .about-history__facts span { font-size: 9px; }
}
