.charcoal-page { background: #eef0ee; }
.charcoal-hero { position: relative; min-height: min(700px, 80vh); margin-top: 86px; overflow: hidden; color: white; background: #151c1e; }
.charcoal-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.charcoal-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,21,26,.95) 0%, rgba(9,21,26,.78) 35%, rgba(9,21,26,.18) 75%); }
.charcoal-hero-content { position: relative; z-index: 1; width: min(800px, 80vw); padding: clamp(120px, 17vh, 190px) 0 155px 6vw; }
.charcoal-hero .eyebrow { color: #78d9e3; }
.charcoal-hero h1 { margin: 0; max-width: 780px; font-size: clamp(2.7rem, 4.4vw, 4.8rem); line-height: 1.04; letter-spacing: -.05em; }
.charcoal-hero-content > p:last-child { max-width: 610px; margin-top: 32px; color: rgba(255,255,255,.84); font-size: clamp(1.05rem, 1.5vw, 1.35rem); }
.charcoal-illustration { position: absolute; z-index: 1; right: 4vw; bottom: 25px; color: rgba(255,255,255,.65); font: .68rem var(--mono); letter-spacing: .04em; }
.charcoal-facts { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--line); background: white; }
.charcoal-facts > div { min-height: 150px; display: flex; flex-direction: column; justify-content: center; padding: 24px 6vw; border-right: 1px solid var(--line); }
.charcoal-facts strong { color: var(--cyan-dark); font-size: clamp(2.1rem, 3.3vw, 3.3rem); line-height: 1; }
.charcoal-facts span { margin-top: 12px; color: var(--ink-3); font: .68rem var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.charcoal-section { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; padding: 110px 6vw; }
.charcoal-section h2, .charcoal-specs h2 { max-width: 750px; margin: 0; font-size: clamp(2.2rem, 3.4vw, 3.8rem); line-height: 1.08; letter-spacing: -.045em; }
.charcoal-section > div:last-child { padding-top: 47px; font-size: 1.25rem; color: var(--ink-2); }
.charcoal-specs { padding: 105px 6vw 120px; color: white; background: #1e353f; }
.charcoal-specs-heading { max-width: 820px; }
.charcoal-spec-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin: 72px 0 0; border-top: 1px solid rgba(255,255,255,.25); }
.charcoal-spec-grid > div { min-height: 190px; padding: 26px 20px 0 0; border-right: 1px solid rgba(255,255,255,.25); }
.charcoal-spec-grid > div + div { padding-left: 25px; }
.charcoal-spec-grid dt { color: #8ee2e9; font: .72rem var(--mono); text-transform: uppercase; letter-spacing: .07em; }
.charcoal-spec-grid dd { margin: 35px 0 0; font-size: clamp(1.9rem, 2.5vw, 2.8rem); font-weight: 700; line-height: 1.05; letter-spacing: -.045em; }
.charcoal-spec-grid small { font-size: .37em; letter-spacing: 0; }
@media (max-width: 760px) {
  .charcoal-hero { margin-top: 72px; min-height: 620px; }
  .charcoal-hero > img { object-position: 67% center; }
  .charcoal-hero-shade { background: linear-gradient(90deg, rgba(9,21,26,.88), rgba(9,21,26,.37)), linear-gradient(0deg, rgba(9,21,26,.5), transparent 55%); }
  .charcoal-hero-content { width: auto; padding: 130px 22px 120px; }
  .charcoal-hero h1 { font-size: clamp(2.3rem, 9vw, 3.4rem); }
  .charcoal-illustration { right: 20px; left: 20px; bottom: 20px; }
  .charcoal-facts { grid-template-columns: 1fr; }
  .charcoal-facts > div { min-height: 105px; padding: 20px 24px; border-right: 0; border-bottom: 1px solid var(--line); }
  .charcoal-facts strong { font-size: 2.5rem; }
  .charcoal-section { grid-template-columns: 1fr; gap: 26px; padding: 75px 24px; }
  .charcoal-section > div:last-child { padding-top: 0; font-size: 1.08rem; }
  .charcoal-specs { padding: 78px 24px 90px; }
  .charcoal-spec-grid { grid-template-columns: repeat(2, 1fr); margin-top: 50px; }
  .charcoal-spec-grid > div { min-height: 145px; padding: 22px 12px 0 0; border-bottom: 1px solid rgba(255,255,255,.25); }
  .charcoal-spec-grid > div + div { padding-left: 12px; }
  .charcoal-spec-grid > div:nth-child(3) { padding-left: 0; }
  .charcoal-spec-grid dd { margin-top: 25px; font-size: 2.15rem; }
}
