.about-page-body { background:#fff; }
.about-page-main { overflow:hidden; }

.about-page-hero {
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  min-height:330px;
  padding:72px 0;
  background:
    linear-gradient(90deg,rgba(12,14,17,.88),rgba(20,22,25,.74)),
    url("../img/fire-ex.png") center 54% / cover no-repeat;
  color:#fff;
}
.about-page-hero::after {
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:3px;
  background:linear-gradient(90deg,transparent 0 37%,var(--red) 50%,transparent 63%);
}
.about-page-hero__content {
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.about-breadcrumb {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-top:18px;
  color:#fff;
  font-size:14px;
  font-weight:700;
  letter-spacing:.01em;
}
.about-breadcrumb a { color:#e3e5e7; }
.about-breadcrumb a:hover { color:#ff4a4f; }
.about-breadcrumb span[aria-hidden="true"] { color:#ff4a4f; font-size:18px; }
.about-page-hero h1 {
  font-size:clamp(48px,5.2vw,66px);
  line-height:1;
  letter-spacing:.015em;
  text-shadow:0 4px 20px rgba(0,0,0,.36);
}

.about-story-section {
  position:relative;
  padding:96px 0 102px;
  background:
    linear-gradient(135deg,transparent 0 73%,#f8f7f3 73% 100%),
    #fff;
}
.about-story-layout {
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  align-items:center;
  gap:clamp(58px,6vw,92px);
}
.about-story-gallery {
  position:relative;
  min-height:575px;
}
.about-story-photo {
  position:absolute;
  overflow:hidden;
  background:#ececec;
}
.about-story-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .65s ease;
}
.about-story-gallery:hover .about-story-photo img { transform:scale(1.025); }
.about-story-photo--main {
  inset:0 62px 34px 0;
  border-top:6px solid var(--red);
  box-shadow:-6px 7px 0 var(--red),0 24px 50px #17191d17;
}
.about-story-photo--inset {
  right:0;
  bottom:0;
  width:45%;
  height:46%;
  border:8px solid #fff;
  box-shadow:0 20px 42px #17191d26;
}
.about-experience-badge {
  position:absolute;
  top:28px;
  left:-18px;
  min-width:124px;
  padding:14px 18px;
  background:#17191d;
  color:#fff;
  box-shadow:5px 5px 0 var(--red);
}
.about-experience-badge strong {
  display:block;
  color:#ff343b;
  font:800 31px/1 "Barlow Condensed",sans-serif;
}
.about-experience-badge span {
  display:block;
  margin-top:5px;
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.about-section-kicker {
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:15px;
  color:var(--red);
  font-size:11px;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.about-section-kicker::before {
  content:"";
  width:36px;
  height:2px;
  background:var(--red);
}
.about-story-copy h2,
.about-purpose-heading h2,
.about-why-heading h2 {
  color:#14161a;
  font-size:clamp(37px,3.7vw,50px);
  line-height:1;
  letter-spacing:.005em;
}
.about-story-copy h2 {
  font-size:clamp(22px,2.1vw,32px);
  line-height:1.08;
  white-space:nowrap;
}
.about-story-lead {
  margin-top:23px;
  color:#24282e;
  font-size:17px;
  font-weight:500;
  line-height:1.7;
}
.about-story-text {
  margin-top:15px;
  color:#697078;
  font-size:14px;
  line-height:1.8;
}
.about-strengths {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
  margin-top:27px;
}
.about-strength {
  min-height:112px;
  padding:17px 15px;
  border:1px solid #e4e2de;
  background:#fff;
}
.about-strength span {
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  margin-bottom:12px;
  border-radius:50%;
  background:#fff0f1;
  color:var(--red);
  font-size:16px;
  font-weight:800;
}
.about-strength b {
  display:block;
  color:#17191d;
  font-size:11px;
  line-height:1.45;
}
.about-continuation {
  margin-top:18px;
  padding:17px 19px;
  border-left:3px solid var(--red);
  background:#f7f7f6;
}
.about-continuation > span {
  display:block;
  margin-bottom:5px;
  color:#17191d;
  font-size:10px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.about-continuation p {
  color:#5e656d;
  font-size:12px;
  line-height:1.65;
}
.about-page-stats {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:26px;
  padding-top:24px;
  border-top:1px solid #e7e4df;
}
.about-page-stats > div + div {
  padding-left:24px;
  border-left:1px solid #e7e4df;
}
.about-page-stats strong {
  display:block;
  color:var(--red);
  font:800 36px/1 "Barlow Condensed",sans-serif;
}
.about-page-stats span {
  display:block;
  margin-top:7px;
  color:#697078;
  font-size:9px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.about-purpose-section {
  position:relative;
  padding:88px 0 94px;
  overflow:hidden;
  background:#17191d;
  color:#fff;
}
.about-purpose-section::after {
  content:"";
  position:absolute;
  right:-120px;
  bottom:-190px;
  width:410px;
  height:410px;
  border:70px solid #d719200b;
  border-radius:50%;
}
.about-purpose-section > .container { position:relative; z-index:1; }
.about-purpose-heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);
  align-items:end;
  gap:60px;
  margin-bottom:38px;
}
.about-purpose-heading h2 {
  max-width:none;
  color:#fff;
  font-size:clamp(27px,2.6vw,38px);
  white-space:nowrap;
}
.about-purpose-heading > p {
  color:#aeb3b8;
  font-size:13px;
  line-height:1.75;
}
.about-purpose-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.about-purpose-card {
  position:relative;
  min-height:300px;
  padding:32px 34px;
  overflow:hidden;
  border:1px solid #ffffff12;
  background:#202328;
  transition:border-color .25s ease,transform .25s ease;
}
.about-purpose-card:hover { border-color:#d719205c; transform:translateY(-4px); }
.about-purpose-card::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:var(--red);
}
.about-purpose-card--goal { background:#1d2024; }
.about-purpose-card > span {
  position:absolute;
  top:28px;
  right:30px;
  color:#ffffff12;
  font:800 64px/1 "Barlow Condensed",sans-serif;
}
.about-purpose-icon {
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  margin-bottom:26px;
  border:1px solid #d719204f;
  background:#d7192012;
  color:#ff4248;
}
.about-purpose-icon svg {
  width:31px;
  height:31px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.about-purpose-card h3 {
  color:#fff;
  font-size:31px;
  letter-spacing:.02em;
}
.about-purpose-card p {
  max-width:520px;
  margin-top:15px;
  color:#aeb3b8;
  font-size:13px;
  line-height:1.8;
}

.about-why-section {
  position:relative;
  padding:88px 0 96px;
  overflow:hidden;
  background:#fff;
}
.about-why-layout {
  display:grid;
  grid-template-columns:minmax(340px,.82fr) minmax(0,1.18fr);
  align-items:center;
  gap:72px;
}
.about-why-visual {
  position:relative;
  margin:0;
}
.about-why-visual::before {
  content:"";
  position:absolute;
  inset:14px -13px -14px 13px;
  z-index:0;
  border:1px solid #d7192040;
  border-radius:22px;
}
.about-why-visual img {
  position:relative;
  z-index:1;
  width:100%;
  aspect-ratio:.82;
  object-fit:cover;
  object-position:center;
  border-radius:20px;
  box-shadow:0 24px 55px rgba(23,25,29,.13);
}
.about-why-visual figcaption {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:18px;
  color:#626970;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.about-why-visual figcaption span {
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:1px solid #d7192050;
  border-radius:50%;
  color:var(--red);
  font-size:11px;
}
.about-why-heading {
  max-width:720px;
}
.about-why-heading h2 {
  margin-top:2px;
  color:#17191d;
  font-family:"DM Sans",sans-serif;
  font-size:clamp(34px,3.15vw,48px);
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.045em;
  text-transform:none;
}
.about-why-heading h2 span {
  display:block;
  color:var(--red);
}
.about-why-heading > p {
  max-width:650px;
  margin-top:17px;
  color:#687078;
  font-size:12px;
  line-height:1.7;
}
.about-why-heading > p + p {
  margin-top:10px;
}
.about-why-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
  margin-top:27px;
}
.about-why-card {
  position:relative;
  min-height:94px;
  display:grid;
  grid-template-columns:43px minmax(0,1fr);
  align-items:center;
  gap:13px;
  padding:16px;
  border:1px solid #e6e2dc;
  border-radius:12px;
  background:#fff;
  box-shadow:0 10px 24px rgba(23,25,29,.035);
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.about-why-card:hover {
  border-color:#d719203a;
  box-shadow:0 15px 32px rgba(23,25,29,.08);
  transform:translateY(-3px);
}
.about-why-icon {
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border:1px solid #d7192040;
  background:#fff5f5;
  color:var(--red);
  border-radius:10px;
}
.about-why-icon svg {
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.about-why-card h3 {
  color:#17191d;
  font-family:"DM Sans",sans-serif;
  font-size:12.5px;
  line-height:1.3;
  text-transform:none;
}
.about-why-card p {
  margin-top:5px;
  color:#697078;
  font-size:9.5px;
  line-height:1.55;
}

@media (max-width:1000px) {
  .about-story-layout { grid-template-columns:1fr; gap:58px; }
  .about-story-gallery { width:min(680px,100%); min-height:565px; }
  .about-story-copy { max-width:760px; }
  .about-purpose-heading { grid-template-columns:1fr; gap:18px; }
  .about-purpose-heading > p { max-width:650px; }
  .about-why-layout { grid-template-columns:1fr; gap:58px; }
  .about-why-visual { width:min(620px,100%); }
  .about-why-visual img { aspect-ratio:1.16; object-position:center 55%; }
  .about-why-content { max-width:760px; }
}

@media (max-width:760px) {
  .about-page-hero { min-height:270px; padding:58px 0; background-position:58% 54%; }
  .about-page-hero h1 { font-size:clamp(43px,12vw,55px); }
  .about-story-section { padding:68px 0 75px; }
  .about-story-gallery { min-height:470px; }
  .about-story-photo--main { inset:0 45px 30px 0; }
  .about-story-photo--inset { width:46%; height:43%; border-width:6px; }
  .about-experience-badge { top:20px; left:-5px; }
  .about-purpose-section { padding:68px 0 74px; }
  .about-purpose-grid { grid-template-columns:1fr; }
  .about-purpose-card { min-height:0; }
  .about-why-section { padding:65px 0 74px; }
}

@media (max-width:560px) {
  .about-page-hero__content,
  .about-story-section > .container,
  .about-purpose-section > .container,
  .about-why-section > .container { width:calc(100% - 28px); }
  .about-breadcrumb { margin-top:15px; font-size:13px; }
  .about-story-gallery { min-height:375px; }
  .about-story-photo--main { inset:0 33px 23px 0; border-top-width:4px; box-shadow:-4px 5px 0 var(--red),0 18px 35px #17191d17; }
  .about-story-photo--inset { width:48%; height:42%; }
  .about-experience-badge { min-width:105px; padding:11px 13px; }
  .about-experience-badge strong { font-size:26px; }
  .about-story-copy h2 { font-size:28px; white-space:normal; }
  .about-purpose-heading h2 { font-size:clamp(22px,7vw,28px); }
  .about-why-heading h2 { font-size:32px; }
  .about-story-lead { margin-top:19px; font-size:15px; }
  .about-story-text { font-size:13px; }
  .about-strengths { grid-template-columns:1fr; gap:8px; }
  .about-strength { min-height:0; display:grid; grid-template-columns:31px minmax(0,1fr); align-items:center; gap:11px; padding:13px 14px; }
  .about-strength span { margin:0; }
  .about-continuation { padding:15px 16px; }
  .about-page-stats > div + div { padding-left:13px; }
  .about-page-stats strong { font-size:29px; }
  .about-page-stats span { font-size:7.5px; line-height:1.4; }
  .about-purpose-card { padding:27px 23px; }
  .about-purpose-card > span { top:24px; right:22px; font-size:52px; }
  .about-purpose-card h3 { font-size:27px; }
  .about-why-grid { grid-template-columns:1fr; }
  .about-why-card { min-height:0; padding:15px; }
  .about-why-visual img { aspect-ratio:.92; }
}
