.labs-page { background: #fbfbfd; }
.labs-main { padding: 0 0 118px; }
.labs-shell { width: min(1180px, calc(100% - 48px)); margin-right: auto; margin-left: auto; }
.labs-hero { display: grid; grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr); gap: clamp(42px, 7vw, 96px); align-items: center; padding-top: clamp(66px, 8vw, 112px); padding-bottom: clamp(62px, 8vw, 108px); }
.labs-kicker { margin: 0 0 18px; color: #0b8065; font-size: 12px; font-weight: 800; }
.labs-hero h1 { margin: 0; font-size: clamp(36px, 3.5vw, 46px); font-weight: 580; line-height: 1.12; letter-spacing: 0; }
.labs-hero-copy > p:last-child { max-width: 440px; margin: 30px 0 0; color: #6e6e73; font-size: 16px; line-height: 1.78; }
.labs-hero-media { margin: 0; overflow: hidden; border-radius: 6px; background: #e8e9e7; }
.labs-hero-media img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; }
.labs-index { display: flex; flex-wrap: wrap; gap: 14px 32px; padding-top: 22px; padding-bottom: 22px; border-top: 1px solid rgba(29,29,31,.13); border-bottom: 1px solid rgba(29,29,31,.13); }
.labs-index a { color: #5f5f64; font-size: 13px; font-weight: 650; text-decoration: none; }
.labs-index a:hover { color: #0071e3; }
.labs-section { padding-top: clamp(72px, 9vw, 118px); scroll-margin-top: 76px; }
.labs-section-head { display: grid; grid-template-columns: 64px minmax(0, 560px); gap: 22px; margin-bottom: 38px; }
.labs-section-head > p { margin: 7px 0 0; color: #0b8065; font-size: 12px; font-weight: 800; }
.labs-section-head h2 { margin: 0; font-size: clamp(30px, 3.5vw, 46px); font-weight: 580; line-height: 1.15; }
.labs-section-head div > p { margin: 14px 0 0; color: #77777c; font-size: 14px; line-height: 1.68; }
.labs-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(30px, 4vw, 50px); }
.lab-card, .lab-feature { color: #1d1d1f; text-decoration: none; }
.lab-card-media, .lab-feature-media { overflow: hidden; border-radius: 5px; background: #e9eaeb; }
.lab-card-media img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; transition: transform .4s ease; }
.lab-card:hover img, .lab-feature:hover img { transform: scale(1.015); }
.lab-card-status { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 18px; color: #77777c; font-size: 11px; font-weight: 750; }
.lab-card-status span + span::before { margin-right: 9px; color: #b8b8bd; content: "·"; }
.lab-card-status.research span:first-child { color: #a55a18; }
.lab-card h3, .lab-feature h3 { margin: 12px 0 10px; font-size: clamp(23px, 2.5vw, 32px); font-weight: 620; line-height: 1.22; }
.lab-card > p, .lab-feature-copy > p { margin: 0; color: #6e6e73; font-size: 14px; line-height: 1.7; }
.lab-card-link { display: inline-block; margin-top: 16px; color: #45454a; font-size: 12px; font-weight: 760; }
.lab-card:hover h3, .lab-card:hover .lab-card-link, .lab-feature:hover h3, .lab-feature:hover .lab-card-link { color: #0071e3; }
.lab-feature { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr); gap: clamp(34px, 6vw, 78px); align-items: center; }
.lab-feature-reverse { grid-template-columns: minmax(290px, .65fr) minmax(0, 1.35fr); }
.lab-feature-reverse .lab-feature-media { order: 2; }
.lab-feature-media img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; transition: transform .4s ease; }
.lab-feature-video .lab-feature-media img { aspect-ratio: 16 / 9; }
.lab-feature-copy .lab-card-status { margin-top: 0; }
.labs-section-last { padding-bottom: 12px; }
.lab-result-page { background: #fbfbfd; }
.lab-result-page .article-header { padding-bottom: 44px; }
.lab-result-page .article-header h1 { max-width: 980px; }
.lab-breadcrumb { margin: 0 0 24px; }
.lab-breadcrumb a { color: #6e6e73; font-size: 12px; font-weight: 700; text-decoration: none; }
.lab-breadcrumb a:hover { color: #0071e3; }
.lab-evidence { display: grid; grid-template-columns: repeat(3, 1fr); margin: 34px 0 8px; border-top: 1px solid rgba(29,29,31,.16); border-bottom: 1px solid rgba(29,29,31,.16); }
.lab-evidence div { padding: 20px 18px 20px 0; }
.lab-evidence div + div { padding-left: 18px; border-left: 1px solid rgba(29,29,31,.1); }
.lab-evidence strong, .lab-evidence span { display: block; }
.lab-evidence strong { font-size: 19px; line-height: 1.3; }
.lab-evidence span { margin-top: 6px; color: #77777c; font-size: 12px; line-height: 1.5; }
.lab-state { display: inline-flex; margin-bottom: 16px; color: #0b8065; font-size: 11px; font-weight: 820; }
.lab-state.is-research { color: #a55a18; }
.lab-result-page code { padding: 2px 5px; border-radius: 3px; background: #eeeeef; font-size: .88em; }
@media (max-width: 820px) {
  .labs-hero, .lab-feature, .lab-feature-reverse { grid-template-columns: 1fr; }
  .labs-hero { gap: 34px; }
  .labs-hero-copy > p:last-child { margin-top: 22px; }
  .lab-feature-reverse .lab-feature-media { order: 0; }
}
@media (max-width: 680px) {
  .labs-shell { width: min(100% - 40px, 1180px); }
  .labs-main { padding-bottom: 80px; }
  .labs-hero { padding-top: 52px; padding-bottom: 58px; }
  .labs-hero h1 { font-size: 32px; }
  .labs-hero-media { width: calc(100% + 40px); margin-left: -20px; border-radius: 0; }
  .labs-index { gap: 12px 22px; }
  .labs-section { padding-top: 70px; }
  .labs-section-head { grid-template-columns: 34px minmax(0, 1fr); gap: 10px; margin-bottom: 28px; }
  .labs-section-head h2 { font-size: 30px; }
  .labs-grid { grid-template-columns: 1fr; gap: 48px; }
  .lab-feature { gap: 26px; }
  .lab-evidence { grid-template-columns: 1fr; }
  .lab-evidence div, .lab-evidence div + div { padding: 15px 0; border-bottom: 1px solid rgba(29,29,31,.1); border-left: 0; }
}
