.about-page { color:#202822; }
.about-page h1,.about-page h2 { letter-spacing:-.037em; line-height:1.06; }
.about-opening,.about-closing { text-align:center; padding:var(--hero-space) var(--gutter); }
.about-opening img { margin:0 auto 35px; max-width:40vw; object-fit:contain; }
.about-opening h1 { font-size:clamp(52px,7.5vw,108px); color:black; }
.about-opening>div { max-width:550px; margin:35px auto 0; line-height:28px; }
.about-opening p+p,.about-copy p+p,.principle-details>div>p:first-child { margin-top:16px; }
.about-kite.home-bay { width:min(92.5%,1500px); height:auto; min-height:0; aspect-ratio:1332/384; border-radius:20px; margin:auto; }
.about-row { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,7vw,104px); align-items:start; }
.about-row>* { min-width:0; }
.about-lab,.about-pair,.about-dark,.about-loop { padding-block:var(--section-space); }
.about-heading { display:grid; justify-items:start; gap:24px; }
.principle-badge { display:inline-flex; align-items:center; gap:10px; padding:8px 16px 8px 8px; border-radius:99px; color:#202020; background:#eee; font-size:14px; line-height:25px; }
.principle-badge b { width:25px; height:25px; text-align:center; border-radius:50%; background:white; font-weight:500; }
.about-row h2 { font-size:clamp(38px,4.65vw,67px); }
.about-copy { font-size:18px; line-height:30px; }
.about-heading+.about-copy { margin-top:24px; }
.about-copy button { display:grid; place-items:center start; width:48px; height:44px; margin-top:8px; padding:0; background:transparent; color:inherit; }
.about-copy button span { border:1px solid currentColor; width:32px; height:32px; display:grid; place-items:center; line-height:1; font-size:22px; border-radius:50%; }
.about-standard { width:min(93.34%,1500px); margin:auto; padding:clamp(36px,5vw,72px) clamp(24px,3.6vw,52px); border-radius:24px; background:var(--accent); color:white; }
.telemetry { margin-top:17px; width:min(296px,100%); height:auto; }
.about-pair { display:grid; gap:var(--hero-space); }
.about-race { grid-template-columns:620fr 540fr; }
.about-everest { grid-template-columns:540fr 620fr; }
.about-race h2,.about-everest h2 { font-size:clamp(36px,3.62vw,52px); }
.about-race h2 { max-width:325px; }
.about-painting { width:100%; aspect-ratio:620/360; object-fit:cover; border-radius:20px; }
.about-dark { background:#272727; color:white; }
.about-dark .about-row { grid-template-columns:660fr 524fr; }
.about-dark h2 { font-size:clamp(38px,4.1vw,59px); }
.about-dark .about-painting { aspect-ratio:524/445; border-radius:25% / 29%; }
.about-loop { grid-template-columns:548fr 626fr; }
.about-loop figure { margin:0 0 44px; text-align:center; }
.about-loop .about-painting { aspect-ratio:626/278; border-radius:14px; }
.about-loop figcaption { margin-top:14px; font-size:15px; }
.about-closing { background:var(--accent); color:#faf8ef; padding-block:var(--section-space); }
.about-closing>span { color:#dfed7f; font-size:15px; }
.about-closing h2 { margin:20px auto 38px; font-size:clamp(44px,5.9vw,85px); }
.about-closing p { max-width:645px; margin:18px auto 0; }
@media(max-width:760px) {
 .about-row,.about-dark .about-row { grid-template-columns:1fr; gap:28px; }
 .about-kite.home-bay { aspect-ratio:2.35; }
 .about-race .about-painting { grid-row:2; }
 .about-standard { width:calc(100% - 2 * var(--gutter)); }
}

.principle-details { display:grid; grid-template-rows:1fr; }
.principle-details[inert] { grid-template-rows:0fr; }
.principle-details>div { min-height:0; overflow:hidden; }
.about-copy button span { position:relative; }
.about-copy button span::before,.about-copy button span::after {
  content:""; position:absolute; width:12px; height:1.5px; background:currentColor;
}
.about-copy button span::after { transform:rotate(90deg); }
.about-copy button[aria-expanded=true] span::after { transform:rotate(0); }
@media (prefers-reduced-motion:no-preference) {
  .about-copy:has(button:not([hidden])) .principle-details {
    transition:grid-template-rows 260ms cubic-bezier(.22,1,.36,1);
  }
  .about-copy:has(button:not([hidden])) .principle-details[inert] { transition-duration:190ms; }
  .about-copy button span::after { transition:transform 170ms cubic-bezier(.22,1,.36,1); }
}
