:root {
  --gh-header-height: 88px;
  --gh-anchor-height: 58px;
  --gh-navy: #0d2029;
  --gh-blue: #005ead;
  --gh-lime: #92c024;
  --gh-moss: #678126;
  --gh-sage: #d6dbd2;
  --gh-stone: #73726c;
  --gh-paper: #f4f5f1;
  --gh-white: #fff;
  --gh-line: rgba(13, 32, 41, .16);
  --type-page: clamp(56px, 6vw, 96px);
  --type-section: clamp(44px, 5vw, 72px);
  --type-card: clamp(20px, 1.55vw, 28px);
  --type-technical: clamp(18px, 1.4vw, 22px);
  --type-lead: clamp(18px, 1.3vw, 20px);
  --type-body: 16px;
  --type-compact: 14px;
  --type-label: 13px;
  --type-index: 12px;
  --type-nav: 14px;
  --type-subnav: 12px;
  --type-note: 13px;
  --type-nav-mobile: 16px;
  --type-data: 15px;
  --editorial-gutter: 48px;
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  :root { --editorial-gutter: 32px; }
}

html { overflow-x: hidden; }
body { display: flex; min-height: 100vh; min-height: 100dvh; overflow-x: hidden; margin: 0; padding-top: var(--gh-header-height); flex-direction: column; background: var(--gh-paper); color: var(--gh-navy); font-family: Arial, Helvetica, sans-serif; }
body > main { flex: 1 0 auto; }
body > [data-site-footer], body > .site-footer { margin-top: auto; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
h1, h2, h3, p { margin-top: 0; }
.site-shell { padding-right: 5.8vw; padding-left: 5.8vw; }

body > [data-site-header] { position: fixed; z-index: 1030; top: 0; right: 0; left: 0; }
.site-header { position: relative; z-index: 1030; background: rgba(13, 32, 41, .96); backdrop-filter: blur(12px); }
.navbar-container-ir { min-height: 88px; padding: 0; }
.navbar-brand { width: 167px; margin: 0; padding: 0; }
.ir-nav-brand-logo-img { display: block; width: 100%; }
.navbar-toggler { border: 0; border-radius: 0; box-shadow: none !important; }
.navbar-nav-ir { gap: clamp(10px, 1.15vw, 20px); }
.navbar-nav-ir .nav-link { padding: 34px 0 31px; border-bottom: 3px solid transparent; color: var(--gh-white); }
.navbar-nav-ir button.nav-link { border-top: 0; border-right: 0; border-left: 0; border-radius: 0; background: transparent; }
.navbar-nav-ir .dropdown-toggle::after { width: 7px; height: 7px; margin-left: 8px; border: 0; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; vertical-align: 2px; transform: rotate(45deg); transition: transform .2s ease; }
.navbar-nav-ir .dropdown-toggle[aria-expanded="true"]::after { transform: translateY(3px) rotate(225deg); }
.navbar-nav-ir .nav-label { cursor: default; }
.navbar-nav-ir .nav-link.active,
.navbar-nav-ir .nav-link:hover,
.navbar-nav-ir .nav-link:focus-visible { border-bottom-color: var(--gh-lime); color: var(--gh-lime); }
.dropdown-menu { border: 0; border-radius: 0; box-shadow: 0 20px 50px rgba(0, 0, 0, .2); }
.dropdown-menu:not(.investor-mega-menu) { padding: 10px 0; }
.dropdown-menu:not(.investor-mega-menu) .dropdown-item { padding: 10px 16px; }
.dropdown-menu .dropdown-item { transition: color .18s ease, background-color .18s ease, padding-left .18s ease; }
.dropdown-menu button.dropdown-item { width: 100%; border: 0; text-align: left; }
.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus { padding-left: 20px; background: rgba(13, 32, 41, .055); color: var(--gh-blue); }
.dropdown-menu .dropdown-item.active,
.dropdown-menu .dropdown-item:active { background: rgba(0, 94, 173, .09); color: var(--gh-blue); box-shadow: inset 3px 0 0 var(--gh-blue); }
.dropdown-menu .dropdown-item.active:hover,
.dropdown-menu .dropdown-item.active:focus { background: rgba(0, 94, 173, .12); }
.investor-mega-menu { width: 100%; margin: 0; padding: 0; border-top: 0; background: var(--gh-white); color: var(--gh-navy); }
.investor-mega-inner { padding: 44px 5.8vw 48px; }
.investor-mega-grid { display: grid; grid-template-columns: .85fr 1.5fr 1.5fr 1.3fr 1.15fr 1.2fr; }
.investor-mega-group { min-width: 0; padding: 0 clamp(20px, 2vw, 34px); border-left: 1px solid var(--gh-line); }
.investor-mega-group:first-child { padding-left: 0; border-left: 0; }
.investor-mega-group:last-child { padding-right: 0; }
.navbar-nav-ir .nav-link, .dropdown-menu .dropdown-item, .investor-mega-heading, .investor-mega-links a { font-family: Arial, Helvetica, sans-serif; font-size: var(--type-nav); font-weight: 500; line-height: 1.35; letter-spacing: 0; white-space: nowrap; }
.investor-mega-heading { display: block; color: #111; font-weight: 700; }
a.investor-mega-heading, .investor-mega-links a { transition: color .2s ease, transform .2s ease; }
a.investor-mega-heading:hover, a.investor-mega-heading:focus-visible,
.investor-mega-links a:hover, .investor-mega-links a:focus-visible { color: var(--gh-blue); transform: translateX(4px); }
.investor-mega-heading.active, .investor-mega-links a.active { color: var(--gh-blue); }
.investor-mega-links { display: flex; margin-top: 24px; flex-direction: column; gap: 24px; }
.investor-mega-links a { color: #676767; }

@media (min-width: 992px) {
  .investor-mega-dropdown { position: static; }
  .investor-mega-menu { position: absolute !important; top: 100%; right: 0; left: 0; transform: none !important; }
}

.hero { height: calc(100vh - var(--gh-header-height)); height: calc(100dvh - var(--gh-header-height)); min-height: 0; overflow: hidden; background: var(--gh-navy); }
.hero::after { position: absolute; z-index: 1; inset: 0; content: ''; background: rgba(8, 27, 36, .72); }
.hero-video { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: grayscale(1) contrast(1.06); }
[data-home-parallax] > .hero-video { transform: translate3d(0, var(--home-hero-parallax-y, 0), 0) scale(1.08); transform-origin: center; will-change: transform; }
.hero .site-shell { position: relative; z-index: 2; }
.hero-copy { width: min(76vw, 1120px); max-width: none; padding-top: clamp(56px, 10vh, 150px); padding-bottom: clamp(72px, 9vh, 130px); }
.eyebrow, .section-kicker { --eyebrow-color: var(--gh-stone); --eyebrow-rule: var(--gh-line); display: flex; width: min(300px, 100%); flex-direction: column; gap: 16px; color: var(--eyebrow-color); font-size: var(--type-label); font-weight: 600; line-height: 1.35; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow::before, .section-kicker::before { display: block; width: 100%; height: 1px; content: ''; background: var(--eyebrow-rule); }
.hero .eyebrow, .detail-hero .eyebrow { --eyebrow-color: var(--gh-lime); --eyebrow-rule: var(--gh-lime); }
.eyebrow { margin-bottom: 34px; }
h1 { max-width: 100%; margin-bottom: 0; font-size: var(--type-page); font-weight: 500; line-height: .94; letter-spacing: -.025em; }
.home-hero-title .hero-title-line + .hero-title-line::before { content: ' '; }
.hero-support { max-width: 900px; margin: 32px 0 38px; color: rgba(255, 255, 255, .72); font-size: var(--type-lead); line-height: 1.55; }
button { transition: background-color .24s ease, border-color .24s ease, color .24s ease, opacity .24s ease; }
button > span[aria-hidden="true"] { transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.primary-cta { width: 220px; padding: 16px 18px; background: var(--gh-lime); color: var(--gh-navy); font-size: var(--type-nav); font-weight: 700; transition: background-color .28s ease, color .28s ease; }
.primary-cta > span { transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.primary-cta:hover, .primary-cta:focus-visible { background: var(--gh-blue); color: var(--gh-white); }
.primary-cta:hover > span, .primary-cta:focus-visible > span { transform: translateX(7px); }
.scroll-cue { position: absolute; z-index: 5; left: 50%; bottom: 24px; display: flex; flex-direction: column; align-items: center; gap: 7px; width: 34px; color: var(--gh-lime); transform: translateX(-50%); }
.scroll-cue > span:first-child { display: block; width: 1px; height: 31px; background: linear-gradient(to bottom, transparent, var(--gh-lime)); transform-origin: bottom; animation: scroll-pulse 1.8s ease-in-out infinite; }
.scroll-arrow { animation: scroll-nudge 1.8s ease-in-out infinite; }
@keyframes scroll-pulse { 0%, 100% { opacity: .35; transform: scaleY(.55); } 50% { opacity: 1; transform: scaleY(1); } }
@keyframes scroll-nudge { 0%, 100% { transform: translateY(-2px); } 50% { transform: translateY(4px); } }

.motion-enhanced [data-home-parallax]:not(.hero-motion-ready) .hero-copy > * { opacity: 0; clip-path: inset(-.18em -.05em 100% -.05em); transform: translateY(30px); }
.motion-enhanced [data-home-parallax].hero-motion-ready .hero-copy > * { opacity: 1; clip-path: inset(-.18em -.05em); transform: none; transition: opacity .62s ease, clip-path .76s cubic-bezier(.22, 1, .36, 1), transform .76s cubic-bezier(.22, 1, .36, 1); }
.motion-enhanced [data-home-parallax].hero-motion-ready .hero-copy > :nth-child(1) { transition-delay: .08s; }
.motion-enhanced [data-home-parallax].hero-motion-ready .hero-copy > :nth-child(2) { transition-delay: .18s; }
.motion-enhanced [data-home-parallax].hero-motion-ready .hero-copy > :nth-child(3) { transition-delay: .3s; }
.motion-enhanced [data-home-parallax].hero-motion-ready .hero-copy > :nth-child(4) { transition-delay: .42s; }
.motion-enhanced [data-home-parallax]:not(.hero-motion-ready) .scroll-cue { opacity: 0; }
.motion-enhanced [data-home-parallax].hero-motion-ready .scroll-cue { opacity: 1; transition: opacity .5s ease .62s; }

.reveal-section { position: relative; }
.site-plus { position: absolute; z-index: 4; width: 14px; height: 14px; opacity: 0; pointer-events: none; color: rgba(13, 32, 41, .14); }
.site-plus::before, .site-plus::after { position: absolute; top: 50%; left: 50%; content: ''; background: currentColor; transform: translate(-50%, -50%); }
.site-plus::before { width: 100%; height: 1px; }
.site-plus::after { width: 1px; height: 100%; }
.site-plus--large { width: 18px; height: 18px; }
.site-plus--on-dark { color: rgba(255, 255, 255, .16); }
.site-plus--accent { color: rgba(0, 94, 173, .16); }
.site-plus--on-dark.site-plus--accent { color: rgba(146, 192, 36, .18); }
.site-plus--top-left { top: 17%; left: clamp(16px, 2.3vw, 38px); }
.site-plus--top-right { top: 21%; right: clamp(16px, 2.3vw, 38px); }
.site-plus--middle-left { top: 52%; left: clamp(16px, 2.3vw, 38px); }
.site-plus--middle-right { top: 47%; right: clamp(16px, 2.3vw, 38px); }
.site-plus--bottom-left { bottom: 17%; left: clamp(16px, 2.3vw, 38px); }
.site-plus--bottom-right { right: clamp(16px, 2.3vw, 38px); bottom: 14%; }
.site-plus-active .site-plus { animation: site-plus-flicker .48s linear both; }
.site-plus-static .site-plus { opacity: 1; }
@keyframes site-plus-flicker {
  0% { opacity: 0; }
  18% { opacity: .82; }
  31% { opacity: .16; }
  48% { opacity: .94; }
  63% { opacity: .32; }
  100% { opacity: 1; }
}
.reveal-enabled .reveal-section:not(.is-visible) .reveal-item { opacity: 0; transform: translateY(22px); }
.reveal-enabled .reveal-section.is-visible .reveal-item { opacity: 1; transform: none; transition: opacity .58s ease .18s, transform .58s cubic-bezier(.22, 1, .36, 1) .18s; }
.reveal-enabled .reveal-section:not(.is-visible) .editorial-reveal-text { opacity: 0; clip-path: inset(-.18em -.05em 100% -.05em); transform: translateY(26px); }
.reveal-enabled .reveal-section.is-visible .editorial-reveal-text { opacity: 1; clip-path: inset(-.18em -.05em); transform: none; transition: opacity .58s ease var(--editorial-delay, .16s), clip-path .7s cubic-bezier(.22, 1, .36, 1) var(--editorial-delay, .16s), transform .7s cubic-bezier(.22, 1, .36, 1) var(--editorial-delay, .16s); }

.mission { padding: 152px 0; }
.section-marker { width: min(180px, 100%); padding-top: 16px; border-top: 1px solid var(--gh-line); color: var(--gh-stone); font-size: var(--type-label); font-weight: 600; line-height: 1.35; letter-spacing: .14em; text-transform: uppercase; }
.mission-copy h2 { max-width: 990px; margin-bottom: 70px; font-size: var(--type-section); font-weight: 500; line-height: 1.02; letter-spacing: -.025em; }
.mission-feature { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: start; }
.mission-headline { margin-bottom: clamp(56px, 7vw, 104px); }
.mission-headline .section-marker { margin-bottom: clamp(20px, 2vw, 28px); }
.mission-headline h2 { max-width: none; margin-bottom: 0; font-size: clamp(42px, 4.4vw, 62px); }
.mission-feature .mission-image { position: relative; width: 100%; min-width: 0; aspect-ratio: 16 / 9; margin: 0; overflow: hidden; background: var(--gh-navy); }
.mission-feature .mission-image::before { position: absolute; z-index: 1; top: 0; left: 0; width: clamp(120px, 34%, 220px); height: 3px; content: ''; background: var(--gh-lime); }
.mission-feature .mission-image video { display: block; width: 100%; height: 100%; object-fit: cover; }
.mission-play-button { position: absolute; z-index: 2; top: 50%; left: 50%; display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 7px 18px 7px 9px; border: 0; border-radius: 999px; background: #fff; color: var(--gh-navy); font-weight: 700; white-space: nowrap; cursor: pointer; transform: translate(-50%, -50%); box-shadow: 0 8px 28px rgba(0, 0, 0, .3); }
.mission-play-button:hover { background: #eef2f2; }
.mission-play-button:focus-visible { outline: 3px solid var(--gh-lime); outline-offset: 3px; }
.mission-play-button[hidden] { display: none; }
.mission-play-icon { display: grid; width: 32px; height: 32px; flex: 0 0 32px; border-radius: 50%; place-items: center; background: var(--gh-navy); color: #fff; }
.mission-play-icon svg { display: block; width: 18px; height: 18px; margin-left: 2px; }
.mission-body { display: flex; min-width: 0; flex-direction: column; gap: clamp(34px, 3vw, 48px); }
.mission-body p { margin: 0; color: #44545c; font-size: var(--type-lead); line-height: 1.65; }
.mission-body .mission-close { color: var(--gh-navy); font-size: clamp(21px, 1.7vw, 24px); font-weight: 700; line-height: 1.4; }
.mission-body .text-link { align-self: flex-start; }

.validation { border-bottom: 1px solid var(--gh-line); background: var(--gh-line); }
.validator-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 1px; }
.validator-logo { display: grid; min-width: 0; min-height: 120px; padding: 24px 12px; place-items: center; background: var(--gh-paper); }
.validator-logo img { display: block; width: min(100%, 220px); height: auto; max-height: 80px; object-fit: contain; }
@media (min-width: 1200px) {
  .validator-logo img { width: min(100%, 100px); max-height: 36px; }
}
@media (max-width: 1199.98px) {
  .validator-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.funding-acknowledgement { display: grid; min-height: 120px; margin-top: 1px; padding: 0 5.8vw; background: var(--gh-paper); place-items: center; }
.funding-acknowledgement__inner { display: flex; align-items: center; justify-content: center; width: fit-content; max-width: 100%; gap: 42px; text-align: left; }
.funding-acknowledgement img { display: block; flex: 0 1 340px; width: min(340px, 34vw); max-width: 100%; height: auto; object-fit: contain; }
.funding-acknowledgement p { max-width: 520px; margin: 0; color: #58676e; font-size: 12px; line-height: 1.6; }
.funding-acknowledgement a { color: var(--gh-navy); text-decoration: underline; text-decoration-color: var(--gh-lime); text-underline-offset: 3px; }

.home-process { min-height: 0; padding: clamp(46px, 3.5vw, 56px) 0 0; overflow: hidden; scroll-margin-top: var(--gh-header-height); background: var(--gh-navy); }
.home-process-inner { width: 100%; }
.home-process-layout { display: grid; min-height: 0; grid-template-columns: minmax(340px, .4fr) minmax(0, .6fr); align-items: center; gap: clamp(46px, 4vw, 70px); }
.home-process-copy { padding-top: 0; align-self: center; }
.home-process-copy .section-kicker { --eyebrow-color: var(--gh-lime); --eyebrow-rule: var(--gh-lime); margin: 0 0 clamp(24px, 2.4vw, 34px); }
.home-process-copy h2 { max-width: 620px; margin: 0; font-size: var(--type-section); font-weight: 500; line-height: .98; letter-spacing: -.025em; }
.home-process-subhead { max-width: 540px; margin: clamp(26px, 2.5vw, 36px) 0 22px; font-size: var(--type-lead); font-weight: 500; line-height: 1.28; letter-spacing: -.012em; }
.home-process-body { max-width: 500px; padding-top: 22px; }
.home-process-body p { margin: 0; color: rgba(255, 255, 255, .72); font-size: var(--type-body); line-height: 1.52; }
.home-process-body p + p { margin-top: 16px; }
.process-summary-band { margin-top: clamp(22px, 2.5vw, 36px); padding: clamp(28px, 2.2vw, 34px) 0; background: #071b24; }
.process-summary-inner { display: grid; grid-template-columns: minmax(0, 2.6fr) minmax(0, 4fr); align-items: center; gap: clamp(24px, 2.5vw, 44px); }
.process-provenance { display: flex; min-width: 0; align-items: center; gap: 18px; }
.process-provenance-icon { display: block; width: 56px; height: 56px; flex: 0 0 56px; object-fit: contain; filter: drop-shadow(0 0 3px rgba(151, 199, 36, .28)); }
.process-provenance p { margin: 0; color: rgba(255, 255, 255, .78); font-size: clamp(10px, .68vw, 12px); font-weight: 650; line-height: 1.55; letter-spacing: .14em; text-transform: uppercase; }
.process-provenance p span { display: block; }
.process-provenance p span + span { margin-top: 4px; }
.home-process-visual { min-width: 0; }
.process-diagram { --process-panel-height: clamp(245px, 19vw, 260px); --process-panel-gap: 10px; position: relative; display: grid; margin: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: auto auto; align-items: start; gap: var(--process-panel-gap) clamp(6px, .65vw, 10px); }
.process-stage { display: flex; min-width: 0; min-height: var(--process-panel-height); height: var(--process-panel-height); padding: clamp(16px, 1.2vw, 20px) clamp(13px, 1vw, 17px); flex-direction: column; background: #071b24; }
.process-stage-number { display: block; color: var(--gh-lime); font-size: 11px; font-weight: 700; line-height: 1; letter-spacing: .08em; }
.process-stage-heading { display: flex; min-height: 24px; flex-direction: column; gap: 8px; }
.process-output-label { display: flex; grid-column: 3; grid-row: 1; min-height: 24px; align-items: baseline; gap: 9px; color: rgba(255, 255, 255, .72); font-size: 9px; font-weight: 700; line-height: 1.3; letter-spacing: .1em; text-transform: uppercase; }
.process-output-label .process-stage-number { flex: 0 0 auto; }
.process-stage-1, .process-stage-2, .process-stage-3, .process-stage-4 { grid-row: 2; }
.process-stage-1 { grid-column: 1; }
.process-stage-2 { grid-column: 2; }
.process-stage-3 { grid-column: 3; height: auto; min-height: 0; padding: 0; background: transparent; }
.process-stage-4 { grid-column: 4; }
.process-stage-outputs { display: flex; width: 100%; flex-direction: column; gap: var(--process-panel-gap); }
.process-card { position: relative; display: flex; min-width: 0; padding: 0; flex-direction: column; background: transparent; }
.process-stage-1 > .process-card, .process-stage-2 > .process-card, .process-stage-4 > .process-card { margin-top: clamp(12px, 1.1vw, 16px); }
.process-stage-outputs .process-card { min-height: var(--process-panel-height); padding: clamp(16px, 1.2vw, 20px) clamp(13px, 1vw, 17px); flex: 0 0 var(--process-panel-height); background: #071b24; }
.process-icon { display: block; width: clamp(42px, 3vw, 52px); height: 46px; margin: 0 0 12px; color: #84b6df; }
.process-icon svg { width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.process-icon svg text { fill: currentColor; stroke: none; font-family: Arial, Helvetica, sans-serif; font-size: 10px; font-weight: 700; }
.process-icon .process-pellets circle { fill: rgba(0, 94, 173, .08); }
.process-icon .process-heat { stroke: var(--gh-lime); stroke-width: 4; }
.process-number { display: block; width: auto; height: auto; margin-bottom: 9px; background: transparent; color: var(--gh-lime); font-size: 11px; font-weight: 700; line-height: 1; letter-spacing: .08em; text-transform: uppercase; }
.process-card h3 { margin: 0 0 7px; font-size: clamp(16px, 1.1vw, 19px); font-weight: 500; line-height: 1.08; letter-spacing: -.02em; }
.process-card p { margin: 0; color: rgba(255, 255, 255, .64); font-size: clamp(10px, .67vw, 12px); line-height: 1.42; }
.process-stage-outputs .process-icon { width: clamp(42px, 3vw, 52px); height: 46px; margin-bottom: 10px; }
.process-stage-outputs .process-number { margin-bottom: clamp(12px, 1.1vw, 16px); font-size: 10px; }
.process-stage-outputs .process-card h3 { margin-bottom: 7px; font-size: clamp(16px, 1.1vw, 19px); }
.process-stage-outputs .process-card p { font-size: clamp(10px, .67vw, 12px); line-height: 1.42; }
.process-benefits { display: grid; min-width: 0; margin: 0; padding: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; }
.process-benefits li { display: flex; min-width: 0; padding: 0 clamp(10px, 1.2vw, 16px); align-items: center; gap: 12px; color: rgba(255, 255, 255, .8); font-size: clamp(11px, .78vw, 13px); font-weight: 600; line-height: 1.3; letter-spacing: .04em; }
.process-benefits li:first-child { padding-left: 0; }
.process-benefits li:last-child { padding-right: 0; }
.process-benefits li + li { border-left: 1px solid rgba(255, 255, 255, .18); }
.process-benefit-icon { display: block; width: 46px; height: 46px; flex: 0 0 46px; color: var(--gh-lime); }
.process-benefit-icon svg { width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.process-benefit-icon text { fill: currentColor; stroke: none; font-family: Arial, Helvetica, sans-serif; font-size: 13px; font-weight: 700; }
.process-benefit-icon .process-benefit-fill { fill: currentColor; stroke: none; }

@media (min-width: 992px) {
  .process-story-enabled :is(.process-stage-1, .process-stage-2) { transform: translate3d(0, var(--process-stage-offset, 0px), 0); transition: transform .36s cubic-bezier(.22, 1, .36, 1); will-change: transform; }
}
@media (min-width: 768px) {
  .process-stage-4 { align-self: end; }
}
.text-link { position: relative; gap: 30px; padding-bottom: 8px; font-size: var(--type-nav); font-weight: 700; }
.text-link::before, .text-link::after { position: absolute; right: 0; bottom: 0; left: 0; height: 1px; content: ''; background: currentColor; }
.text-link::before { opacity: .34; }
.text-link::after { transform: scaleX(0); transform-origin: left; transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.text-link > span { transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.text-link:hover::after, .text-link:focus-visible::after { transform: scaleX(1); }
.text-link:hover > span, .text-link:focus-visible > span { transform: translateX(7px); }
.text-link.on-dark { margin-top: 45px; color: var(--gh-lime); }

.closed-loop { background: var(--gh-paper); }
.closed-loop-intro { display: flex; width: 50%; min-height: 860px; flex-direction: column; padding: 0; border-right: 1px solid var(--gh-line); }
.closed-loop-content { flex: 1; padding: 120px 4.5vw 70px; }
.closed-loop-intro h2 { max-width: 760px; margin: 0 0 70px; font-size: var(--type-section); font-weight: 500; line-height: .98; letter-spacing: -.025em; }
.closed-loop-images { width: 100%; aspect-ratio: 1672 / 941; overflow: hidden; }
.closed-loop-images img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; }
.output-cards { display: flex; width: 50%; }
.output-cards > .row { width: 100%; min-height: 100%; margin: 0; align-content: stretch; }
.output-card { min-height: 630px; padding: 55px 4vw; border-right: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); background: var(--gh-white); }
.output-card.alumina { border-right: 0; background: var(--gh-sage); }
.output-icon { margin-bottom: 80px; color: var(--gh-blue); font-size: 48px; font-weight: 400; line-height: 1; }
.output-icon.element-symbol { display: grid; width: 42px; height: 42px; place-items: center; border: 2px solid currentColor; font-size: 24px; font-weight: 700; }
.output-card h3 { margin-bottom: 16px; font-size: var(--type-card); font-weight: 500; letter-spacing: -.025em; }
.output-card p { min-height: 6.6em; margin-bottom: 0; color: #4b5a61; font-size: var(--type-compact); line-height: 1.65; }
.output-link-row { min-height: 72px; --output-link-gutter: 4vw; padding: 0 var(--output-link-gutter); border-bottom: 1px solid var(--gh-line); background: var(--gh-white); font-size: var(--type-label); font-weight: 700; transition: color .32s ease, background-color .32s ease, padding .38s cubic-bezier(.22, 1, .36, 1), box-shadow .32s ease; }
.output-link-row > span { transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.output-link-row:hover, .output-link-row:focus-visible { padding-right: calc(var(--output-link-gutter) + 14px); padding-left: calc(var(--output-link-gutter) + 14px); background: rgba(151, 199, 36, .1); box-shadow: inset 3px 0 0 var(--gh-lime); color: var(--gh-blue); }
.output-link-row:hover > span, .output-link-row:focus-visible > span { transform: translateX(6px); }

.momentum { padding: 125px 0 140px; }
.momentum-head { margin-bottom: 65px; }
.momentum-head h2 { margin-bottom: -9px; font-size: var(--type-section); font-weight: 500; line-height: 1; letter-spacing: -.025em; }
.news-grid { --bs-gutter-x: 0; display: grid; margin-right: 0; margin-left: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.news-grid article { display: flex; width: auto; min-height: 360px; padding: 30px 22px 30px 0; flex-direction: column; justify-content: space-between; border-top: 1px solid var(--gh-navy); border-bottom: 1px solid var(--gh-line); transition: border-color .24s ease; }
.news-grid article:focus-within { border-top-color: var(--gh-lime); }
.news-grid time { color: var(--gh-stone); font-size: 11px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; transition: color .24s ease; }
.news-grid article:focus-within time { color: var(--gh-navy); }
.news-grid h3 { max-width: none; margin: 0; font-size: var(--type-card); font-weight: 500; line-height: 1.14; letter-spacing: -.025em; transition: color .24s ease; }
.news-grid article:focus-within h3 { color: var(--gh-blue); }

@media (hover: hover) {
  .news-grid article:hover { border-top-color: var(--gh-lime); }
  .news-grid article:hover h3 { color: var(--gh-blue); }
  .news-grid article:hover time { color: var(--gh-navy); }
}

@media (max-width: 991.98px) {
  .news-grid { grid-template-columns: 1fr; }
}

.closing { background: var(--gh-blue); }
.closing-copy { display: flex; min-height: 600px; padding: 100px 5.8vw; align-items: center; border-right: 1px solid rgba(255, 255, 255, .25); }
.closing-copy h2 { max-width: 850px; margin: 0; font-size: var(--type-section); font-weight: 500; line-height: .96; letter-spacing: -.025em; }
.closing-paths a { min-height: 300px; padding: 55px 4.5vw; border-bottom: 1px solid rgba(255, 255, 255, .25); font-size: clamp(26px, calc(2.4vw + 1px), 39px); letter-spacing: -.035em; }
.closing-paths a:last-child { border-bottom: 0; }
.closing-paths a:hover { background: var(--gh-lime); color: var(--gh-navy); }

.site-footer { padding: 95px 0 24px; background: #0d2029; color: var(--gh-white); }
.footer-brand img { width: min(152px, 100%); }
.footer-top, .footer-group, .footer-children { text-align: left; }
.footer-nav .footer-primary { margin-bottom: 18px; color: rgba(255, 255, 255, .96); font-size: var(--type-label); font-weight: 700; line-height: 1.35; }
.footer-nav .footer-children a { margin-bottom: 10px; color: rgba(255, 255, 255, .52); font-size: var(--type-subnav); line-height: 1.45; }
.footer-nav .footer-children span { margin-bottom: 10px; color: rgba(255, 255, 255, .38); font-size: var(--type-subnav); line-height: 1.45; }
.footer-utility { margin-top: 70px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, .16); }
.footer-utility > span { color: rgba(255, 255, 255, .36); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.footer-utility a { color: rgba(255, 255, 255, .5); font-size: var(--type-subnav); }

@media (min-width: 1200px) {
  .footer-nav-column { padding-left: clamp(24px, 2.5vw, 44px); }
  .footer-nav { --bs-gutter-y: 0; display: grid; grid-template-columns: .7fr .9fr 1.15fr 1.55fr .9fr 1.25fr .75fr; gap: 0 clamp(8px, .75vw, 12px) !important; margin: 0; }
  .footer-nav > .footer-group { width: auto; min-width: 0; padding: 0; align-items: flex-start; text-align: left; }
  .footer-nav .footer-children { align-items: flex-start; }
  .footer-nav .footer-primary { white-space: nowrap; }
}

@media (min-width: 768px) {
  .hero-copy { width: min(88vw, 1400px); }
  .home-hero-title { font-size: var(--type-page); }
  .home-hero-title .hero-title-line { display: block; width: max-content; white-space: nowrap; }
  .home-hero-title .hero-title-line + .hero-title-line::before { content: none; }
}

@media (min-width: 992px) {
  .hero-support { white-space: nowrap; }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .home-process { min-height: 0; padding-top: 76px; padding-bottom: 0; }
  .home-process-layout { min-height: 0; grid-template-columns: 1fr; gap: 62px; }
  .home-process-copy { max-width: 920px; padding-top: 0; }
  .home-process-copy h2 { max-width: 760px; }
  .home-process-subhead { max-width: 720px; margin-top: 36px; }
  .home-process-body { max-width: 720px; }
  .process-diagram { --process-panel-height: 260px; }
  .process-stage { min-height: var(--process-panel-height); }
  .process-card p { font-size: 13px; }
  .process-stage-outputs .process-card p { font-size: 13px; }
  .process-summary-inner { grid-template-columns: 1fr; gap: 28px; }
  .process-benefits li { padding-right: 18px; padding-left: 18px; }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .process-diagram { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .process-stage-1 { grid-column: 1; grid-row: 1; }
  .process-stage-2 { grid-column: 2; grid-row: 1; }
  .process-output-label { grid-column: 1; grid-row: 2; margin-top: 18px; }
  .process-stage-3 { grid-column: 1; grid-row: 3; }
  .process-stage-4 { grid-column: 2; grid-row: 3; }
}

/* Interior pages */
.interior-page { overflow-x: clip; background: var(--gh-paper); }
.detail-hero { position: relative; display: flex; height: calc(100vh - var(--gh-header-height)); height: calc(100dvh - var(--gh-header-height)); min-height: 0; overflow: hidden; align-items: center; background: var(--gh-navy); color: var(--gh-white); }
.interior-page .detail-hero:not(.investor-hero) { height: auto; min-height: 50vh; min-height: 50dvh; }
.interior-page .detail-hero:not(.investor-hero) .detail-hero-copy { padding-top: clamp(42px, 4vh, 52px); padding-bottom: calc(var(--gh-anchor-height) + clamp(70px, 6vh, 88px)); }
.interior-page .detail-hero:not(.investor-hero) .eyebrow { margin-bottom: 20px; }
.interior-page .detail-hero:not(.investor-hero) h1 { font-size: var(--type-page); }
.interior-page .detail-hero:not(.investor-hero) .detail-hero-support { margin-top: 20px; font-size: var(--type-lead); }
.detail-hero::after { position: absolute; z-index: 1; inset: 0; content: ''; background: rgba(8, 27, 36, .72); }
.detail-hero .hero-video { filter: grayscale(1) contrast(1.06); }
.detail-hero .site-shell { position: relative; z-index: 2; width: 100%; }
.detail-hero-copy { display: flex; width: min(76vw, 1120px); max-width: none; padding-top: clamp(56px, 10vh, 150px); padding-bottom: clamp(72px, 9vh, 130px); flex-direction: column; justify-content: center; }
.detail-hero .eyebrow { margin-bottom: 34px; }
.detail-hero h1 { max-width: 1040px; font-size: var(--type-page); }
.detail-hero-support { max-width: 760px; margin: 32px 0 0; color: rgba(255, 255, 255, .72); font-size: var(--type-lead); line-height: 1.55; }
.interior-page .detail-hero .scroll-cue { right: 5.8vw; bottom: calc(var(--gh-anchor-height) + 24px); left: auto; transform: none; }
.investor-hero { height: min(500px, calc(100dvh - var(--gh-header-height))); }
.investor-hero .detail-hero-copy { padding-top: 58px; padding-bottom: 58px; }
.investor-hero h1 { font-size: var(--type-page); }
.kscope-section { min-height: 420px; }
.kscope-widget-host { width: 100%; min-height: 260px; overflow-x: auto; }
.kscope-widget-host-stock { min-height: 420px; }
.press-feed-section { padding-top: clamp(88px, 8vw, 125px); padding-bottom: clamp(100px, 9vw, 145px); }
.press-feed-widget { overflow-x: visible; }
.release-detail-wrap { max-width: 940px; margin-inline: auto; }
.release-detail-probe { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.release-back-link { display: inline-flex; margin-bottom: 48px; }
.release-detail-wrap time { display: block; margin-bottom: 18px; color: var(--gh-stone); font-size: 12px; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.release-detail-wrap h2 { margin: 0 0 36px; font-size: clamp(36px, 4.5vw, 64px); font-weight: 500; line-height: 1.08; letter-spacing: -.025em; }
.release-detail-wrap h2:empty { display: none; }
.release-detail-body { color: var(--gh-navy); font-size: clamp(16px, 1.5vw, 18px); line-height: 1.7; overflow-wrap: anywhere; }
.release-detail-body img { max-width: 100%; height: auto; }
.release-preview-label { color: var(--gh-stone); font-size: 14px; font-weight: 700; letter-spacing: .03em; }
.release-detail-body a:not(.release-source-link) { color: var(--gh-blue); text-decoration: underline; }
.release-source-link { display: inline-block; margin-top: 24px; padding: 14px 18px; background: var(--gh-lime); color: var(--gh-navy); font-size: 14px; font-weight: 700; }
.release-source-link:hover, .release-source-link:focus-visible { background: var(--gh-blue); color: #fff; }
.kscope-widget-status { margin: 0; padding: 30px 0; border-top: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); color: var(--gh-stone); font-size: 16px; line-height: 1.6; }
.kscope-widget-error { border-left: 4px solid var(--gh-lime); padding-right: 24px; padding-left: 24px; color: var(--gh-navy); }
.page-anchor-nav { position: sticky; z-index: 1020; top: var(--gh-header-height); overflow-x: auto; border-bottom: 0; background: #071b24; scrollbar-width: none; transition: background-color .2s ease; }
.detail-hero + .page-anchor-nav { margin-top: calc(-1 * var(--gh-anchor-height)); }
.page-anchor-nav.is-over-hero { background: rgba(7, 27, 36, .5); backdrop-filter: blur(8px); }
.page-anchor-nav::-webkit-scrollbar { display: none; }
.page-anchor-nav .anchor-track { display: flex; min-width: max-content; padding: 0 5.8vw; }
.page-anchor-nav a { display: flex; min-height: var(--gh-anchor-height); padding: 2px 24px 0; align-items: center; border-bottom: 3px solid transparent; border-left: 1px solid rgba(255, 255, 255, .2); color: var(--gh-white); font-size: var(--type-subnav); font-weight: 700; transition: color .2s ease, border-color .2s ease; }
.page-anchor-nav a:first-child { padding-left: 0; border-left: 0; }
.page-anchor-nav a:hover, .page-anchor-nav a:focus-visible { border-bottom-color: var(--gh-lime); background: transparent; color: var(--gh-white); }
.interior-page main > .page-anchor-nav ~ [id], .interior-page main > .page-anchor-nav ~ * [id] { scroll-margin-top: calc(var(--gh-header-height) + var(--gh-anchor-height) + 8px); }
.governance-anchor-target { scroll-margin-top: calc(var(--gh-header-height) + 58px); }
.governance-documents-section { padding-top: clamp(64px, 6vw, 88px); padding-bottom: clamp(64px, 6vw, 88px); }
.governance-documents-heading { display: grid; margin-bottom: clamp(34px, 4vw, 52px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: end; }
.governance-documents-heading .section-heading { max-width: 760px; margin-bottom: 0; }
.governance-documents-heading > p { max-width: 560px; margin: 0 0 8px; color: #44545c; font-size: var(--type-lead); line-height: 1.55; }
.governance-document-list { border-top: 1px solid var(--gh-navy); }
.governance-document-row { display: grid; min-height: 108px; padding: 18px 0; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: center; border-bottom: 1px solid var(--gh-line); }
.governance-document-row h3 { max-width: 920px; margin: 0; color: var(--gh-navy); font-size: var(--type-card); font-weight: 500; line-height: 1.15; letter-spacing: -.02em; }
.governance-document-button { display: inline-flex; min-width: 176px; min-height: 48px; padding: 12px 18px; align-items: center; justify-content: space-between; gap: 24px; border: 1px solid var(--gh-blue); border-radius: 0; background: transparent; color: var(--gh-blue); font: inherit; font-size: 13px; font-weight: 700; line-height: 1; opacity: 1; }
.governance-document-button[aria-disabled="true"] { color: var(--gh-blue); cursor: default; opacity: 1; }
.governance-document-button:hover, .governance-document-button:focus-visible { border-color: var(--gh-blue); background: var(--gh-blue); color: var(--gh-white); }
.governance-document-button:hover > span, .governance-document-button:focus-visible > span { transform: translateX(6px); }
.committee-composition-section { padding-top: clamp(64px, 6vw, 88px); padding-bottom: clamp(64px, 6vw, 88px); scroll-margin-top: var(--gh-header-height); background: var(--gh-paper); }
.committee-composition-heading { display: grid; margin-bottom: clamp(34px, 4vw, 52px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: end; }
.committee-composition-heading .section-heading { margin-bottom: 0; }
.committee-composition-heading > p { max-width: 580px; margin: 0 0 8px; color: #44545c; font-size: var(--type-lead); line-height: 1.55; }
.committee-table-wrap { overflow-x: auto; border-top: 1px solid var(--gh-navy); outline: 0; }
.committee-table { width: 100%; min-width: 880px; border-collapse: collapse; table-layout: fixed; }
.committee-table th, .committee-table td { padding: 18px 28px; border-right: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); text-align: center; vertical-align: middle; }
.committee-table th:last-child, .committee-table td:last-child { border-right: 0; }
.committee-table thead th { height: 78px; color: var(--gh-stone); font-size: 12px; font-weight: 700; line-height: 1.35; letter-spacing: .09em; text-transform: uppercase; }
.committee-table thead th:first-child { width: 31%; text-align: left; }
.committee-table tbody th { color: var(--gh-navy); font-size: clamp(18px, 1.45vw, 23px); font-weight: 500; line-height: 1.2; text-align: left; }
.committee-table tbody td { color: var(--gh-stone); font-size: 15px; }
.committee-role { display: inline-flex; min-width: 84px; min-height: 32px; padding: 8px 12px; align-items: center; justify-content: center; background: rgba(0, 94, 173, .08); color: var(--gh-blue); font-size: 12px; font-weight: 700; line-height: 1; }
.committee-role--chair { background: var(--gh-lime); color: var(--gh-navy); }
.analyst-coverage-heading { display: grid; margin-bottom: clamp(52px, 6vw, 88px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: end; }
.analyst-coverage-heading .section-heading { max-width: 780px; margin-bottom: 0; }
.analyst-coverage-heading > p { max-width: 590px; margin: 0 0 8px; color: #44545c; font-size: var(--type-lead); line-height: 1.55; }
.analyst-coverage-table-wrap { overflow-x: auto; border-top: 1px solid var(--gh-navy); outline: 0; }
.analyst-coverage-table { width: 100%; min-width: 720px; border-collapse: collapse; table-layout: fixed; }
.analyst-coverage-table th, .analyst-coverage-table td { padding: 26px 28px; border-right: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); text-align: left; vertical-align: middle; }
.analyst-coverage-table th:last-child, .analyst-coverage-table td:last-child { border-right: 0; }
.analyst-coverage-table thead th { color: var(--gh-stone); font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.analyst-coverage-table tbody th { color: var(--gh-navy); font-size: clamp(20px, 1.6vw, 26px); font-weight: 500; line-height: 1.15; }
.analyst-coverage-table tbody td { color: #44545c; font-size: 15px; }
.analyst-coverage-table tbody td:last-child span { display: inline-flex; min-height: 32px; padding: 8px 12px; align-items: center; background: rgba(0, 94, 173, .08); color: var(--gh-blue); font-size: 12px; font-weight: 700; line-height: 1; }
.analyst-coverage-note { max-width: 820px; margin: 28px 0 0; color: var(--gh-stone); font-size: var(--type-note); line-height: 1.55; }
.leadership-section .section-heading { margin-bottom: clamp(48px, 6vw, 86px); }
.leadership-heading-row { display: grid; margin-bottom: clamp(48px, 6vw, 86px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: end; }
.leadership-heading-row .section-heading { margin-bottom: 0; }
.leadership-intro { max-width: 620px; margin: 0; color: #44545c; font-size: var(--type-lead); line-height: 1.58; }
.leadership-section-alt { background: var(--gh-paper); }
.leadership-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(18px, 1.8vw, 28px); }
[data-page="about"] #leadership .leadership-grid { align-items: start; }
.leadership-card { position: relative; display: block; min-height: 0; padding: 0; border: 1px solid var(--gh-line); background: var(--gh-white); }
.leadership-portrait { display: block; width: 100%; aspect-ratio: 4 / 3; background: var(--gh-sage); }
.leadership-portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.leadership-portrait span { display: none; }
.leadership-details { padding: clamp(30px, 3vw, 46px); }
.leadership-number { position: absolute; top: clamp(24px, 2.5vw, 38px); left: clamp(28px, 3vw, 48px); color: var(--gh-blue); font-size: var(--type-index); font-weight: 700; letter-spacing: .12em; }
.leadership-card:hover .leadership-number { color: var(--gh-lime); }
.leadership-card h3 { max-width: 330px; margin: 0 0 10px; font-size: var(--type-card); font-weight: 500; line-height: 1.05; letter-spacing: -.025em; }
.leadership-card p { margin: 0; color: var(--gh-stone); font-size: var(--type-compact); line-height: 1.5; }
.leadership-actions { display: flex; margin-top: 30px; padding-top: 18px; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid var(--gh-line); }
.linkedin-link { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border: 1px solid var(--gh-blue); color: var(--gh-blue); font-size: 14px; font-weight: 700; line-height: 1; transition: background-color .2s ease, color .2s ease; }
.linkedin-link:hover, .linkedin-link:focus-visible { background: var(--gh-blue); color: var(--gh-white); }
.bio-link { display: inline-flex; align-items: center; gap: 24px; color: var(--gh-navy); font-size: var(--type-label); font-weight: 700; }
.bio-link > span { transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.bio-link:hover, .bio-link:focus-visible { color: var(--gh-blue); }
.bio-link:hover > span, .bio-link:focus-visible > span { transform: translateX(6px); }
[data-page="about"] #leadership .linkedin-link { pointer-events: none; }
[data-page="about"] #leadership .linkedin-link:hover { background: transparent; color: var(--gh-blue); }
[data-page="about"] #leadership button.bio-link { padding: 0; border: 0; background: transparent; font: inherit; font-size: var(--type-label); font-weight: 700; cursor: pointer; }
.leadership-modal .modal-dialog { margin-right: auto; margin-left: auto; border-radius: 0; }
.leadership-modal .modal-content { overflow: hidden; border: 0; border-radius: 0; background: var(--gh-paper); box-shadow: 0 28px 80px rgba(8, 27, 36, .28); }
.leadership-modal .modal-header { position: relative; padding: clamp(30px, 4vw, 54px); padding-right: clamp(82px, 8vw, 116px); align-items: flex-start; border: 0; border-radius: 0; background: var(--gh-navy); color: var(--gh-white); }
.leadership-modal .modal-header > div { min-width: 0; }
.leadership-modal .leadership-modal-kicker { margin: 0 0 20px; color: var(--gh-lime); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.leadership-modal .modal-title { margin: 0; font-size: var(--type-section); font-weight: 500; line-height: .98; letter-spacing: -.035em; }
.leadership-modal .leadership-modal-role { margin: 16px 0 0; color: rgba(255, 255, 255, .72); font-size: 16px; line-height: 1.4; }
.leadership-modal .btn-close { position: absolute; top: clamp(24px, 3vw, 40px); right: clamp(24px, 3vw, 40px); margin: 0; flex: 0 0 auto; filter: invert(1) grayscale(1) brightness(2); opacity: .8; }
.leadership-modal .btn-close:hover, .leadership-modal .btn-close:focus-visible { opacity: 1; }
.leadership-modal .modal-body { padding: clamp(32px, 5vw, 62px); border-radius: 0; }
.leadership-modal .modal-body ul { display: grid; margin: 0; padding: 0; list-style: none; }
.leadership-modal .modal-body li { position: relative; padding: 22px 0 22px 34px; border-top: 1px solid var(--gh-line); color: #34464f; font-size: var(--type-body); line-height: 1.58; }
.leadership-modal .modal-body li::before { position: absolute; top: 31px; left: 2px; width: 8px; height: 8px; content: ''; background: var(--gh-lime); }
.leadership-modal .modal-body li:last-child { border-bottom: 1px solid var(--gh-line); }
@media (min-width: 992px) {
  .leadership-details { padding: clamp(20px, 2vw, 30px); }
  .leadership-card h3 { font-size: var(--type-card); }
  .leadership-actions { gap: 10px; }
  .bio-link { gap: 10px; font-size: var(--type-index); }
}
.about-anchor-target { scroll-margin-top: calc(var(--gh-header-height) + 58px); }
.about-company-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--editorial-gutter); row-gap: clamp(22px, 3.5vw, 60px); align-items: end; }
.about-company-copy { max-width: 600px; padding-bottom: 4px; }
.about-company-image { min-height: 320px; margin: clamp(56px, 7vw, 100px) 0 0; overflow: hidden; }
.about-company-image:nth-of-type(1) { grid-column: 1; }
.about-company-image:nth-of-type(2) { grid-column: 2; }
.about-company-image img { display: block; width: 100%; height: 100%; min-height: 320px; object-fit: cover; filter: saturate(.86) contrast(1.04); }
.about-company-image.about-company-image--wide { position: relative; grid-column: 1 / -1; min-height: 0; margin-top: 0; aspect-ratio: 1672 / 660; }
.about-company-image.about-company-image--wide img { position: absolute; top: 50%; left: 0; height: auto; min-height: 0; object-fit: contain; transform: translate3d(0, calc(-50% + var(--about-parallax-y, 0px)), 0); will-change: transform; }
[data-page="about"] #company { padding-bottom: clamp(44px, 4.5vw, 72px); }
.about-reading-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: start; }
.about-belief-image { width: min(100%, 480px); margin: 0; overflow: hidden; aspect-ratio: 760 / 792; }
.about-belief-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.about-belief-copy, .about-future-copy { max-width: 780px; }
.about-mission-line { margin-top: clamp(48px, 6vw, 82px); padding-top: clamp(32px, 4vw, 54px); border-top: 1px solid rgba(255, 255, 255, .24); color: var(--gh-white); font-size: clamp(28px, 3.1vw, 48px); font-weight: 500; line-height: 1.16; letter-spacing: -.025em; }
.about-future-close { color: var(--gh-navy); font-weight: 700; }
.about-board-section .leadership-portrait { background: #e3e6df; }
.about-board-section .section-kicker::before { display: none; }
.about-join { position: relative; min-height: clamp(520px, 62vw, 760px); overflow: hidden; background: var(--gh-navy); color: var(--gh-white); }
.about-join::after { position: absolute; z-index: 1; inset: 0; content: ''; background: rgba(8, 27, 36, .7); }
.about-join > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(.55) contrast(1.08); transform: translate3d(0, var(--about-parallax-y, 0), 0) scale(1.1); transform-origin: center; will-change: transform; }
.about-join-content { position: relative; z-index: 2; display: flex; min-height: inherit; align-items: center; }
.about-join-content > div { width: min(760px, 70vw); }
.about-join .section-kicker { --eyebrow-color: var(--gh-lime); --eyebrow-rule: var(--gh-lime); }
.about-join h2 { margin: 0 0 clamp(42px, 5vw, 68px); font-size: var(--type-section); font-weight: 500; line-height: .96; letter-spacing: -.035em; }
.about-secondary-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid rgba(255, 255, 255, .25); border-left: 1px solid rgba(255, 255, 255, .25); }
.about-secondary-links a { display: flex; min-height: 190px; padding: clamp(26px, 3vw, 42px); align-items: flex-end; justify-content: space-between; gap: 24px; border-right: 1px solid rgba(255, 255, 255, .25); border-bottom: 1px solid rgba(255, 255, 255, .25); color: var(--gh-white); font-size: var(--type-card); font-weight: 500; line-height: 1.1; transition: background-color .25s ease, color .25s ease; }
.about-secondary-links a > span:last-child { transition: transform .38s cubic-bezier(.22, 1, .36, 1); }
.about-secondary-links a:hover, .about-secondary-links a:focus-visible { background: var(--gh-lime); color: var(--gh-navy); }
.about-secondary-links a:hover > span:last-child, .about-secondary-links a:focus-visible > span:last-child { transform: translateX(7px); }
.about-paths-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: start; }
.about-paths-heading .section-heading { margin-bottom: 0; }
.about-paths-section .about-secondary-links { grid-template-columns: 1fr; border-top-color: var(--gh-navy); border-left: 0; }
.about-paths-section .about-secondary-links a { min-height: 88px; padding: 24px 0; align-items: center; border-right: 0; border-bottom-color: var(--gh-line); color: var(--gh-navy); font-size: var(--type-card); }
.about-paths-section .about-secondary-links a:hover, .about-paths-section .about-secondary-links a:focus-visible { background: transparent; color: var(--gh-blue); }
@media (prefers-reduced-motion: reduce) {
  .about-join > img { transform: scale(1.1); will-change: auto; }
  .about-company-image.about-company-image--wide img { transform: translateY(-50%); will-change: auto; }
}
.careers-anchor-target { scroll-margin-top: calc(var(--gh-header-height) + 58px); }
.careers-hero-cta { margin-top: 28px; }
#why-here .section-kicker { grid-area: kicker; }
#why-here .section-heading { grid-area: heading; max-width: none; margin-bottom: 20px; }
.careers-proof-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-areas: "kicker ." "heading image" "list image"; column-gap: var(--editorial-gutter); row-gap: 0; align-items: start; }
.careers-proof-list { display: grid; grid-area: list; }
.careers-proof-list article { display: grid; min-height: 145px; padding: clamp(20px, 2vw, 28px) 0; grid-template-columns: 1fr; gap: 10px; align-content: center; align-items: start; border-bottom: 1px solid var(--gh-line); text-align: left; }
.careers-proof-list article:first-child { min-height: 0; padding-top: 10px; padding-bottom: 22px; align-content: start; }
.careers-proof-list article:last-child { border-bottom: 0; }
.careers-proof-list h3 { margin: 0; color: var(--gh-blue); font-size: var(--type-card); font-weight: 500; line-height: 1.08; letter-spacing: -.025em; }
.careers-proof-list p { max-width: 720px; margin: 0; color: #4b5a61; font-size: var(--type-compact); line-height: 1.5; }
.careers-proof-image { width: min(82%, 520px); aspect-ratio: 1; grid-area: image; margin: 0; align-self: start; justify-self: end; overflow: hidden; background: var(--gh-sage); }
.careers-proof-image img { display: block; width: 100%; height: 100%; object-fit: cover; filter: saturate(.82) contrast(1.05); }
.careers-discipline-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 3vw, 46px); align-items: start; }
.discipline-panel { padding: 0; border: 0; background: transparent; text-align: left; }
.discipline-panel h3 { margin: 0 0 clamp(22px, 2.4vw, 34px); font-size: var(--type-card); font-weight: 500; line-height: 1.05; letter-spacing: -.025em; }
.discipline-panel dl { margin: 0; border-top: 1px solid var(--gh-line); }
.discipline-panel dl > div { display: grid; padding: 15px 0; grid-template-columns: minmax(170px, .92fr) minmax(0, 1.08fr); gap: 26px; border-bottom: 1px solid var(--gh-line); }
.discipline-panel dt { font-size: 15px; font-weight: 700; line-height: 1.45; }
.discipline-panel dd { margin: 0; color: #4b5a61; font-size: 15px; line-height: 1.55; }
.careers-apply-layout { display: grid; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); gap: clamp(52px, 7vw, 120px); align-items: start; }
.careers-apply-intro { max-width: 540px; }
.careers-apply-intro .section-heading { margin-bottom: 30px; }
.careers-apply-intro > p:last-child { color: #44545c; font-size: var(--type-lead); line-height: 1.72; }
.careers-form { width: 100%; }
.careers-form input[type="file"] { padding: 8px 0; font-size: 14px; }
.careers-form input[type="file"]::file-selector-button { margin-right: 14px; padding: 8px 12px; border: 1px solid var(--gh-line); border-radius: 0; background: var(--gh-paper); color: var(--gh-navy); font: inherit; cursor: pointer; }
.application-source-note { grid-column: 1 / -1; margin-top: -12px; }
.application-source-error { grid-column: 1 / -1; margin: -12px 0 0; padding: 12px 14px; border-left: 3px solid #b63a2f; background: rgba(182, 58, 47, .08); color: #81271f; font-size: 13px; line-height: 1.5; }
.application-source-error:empty { display: none; }
.careers-open-roles { display: flex; align-items: flex-end; justify-content: space-between; gap: clamp(44px, 8vw, 130px); }
.careers-open-roles .section-heading { margin-bottom: 0; }
.careers-open-roles .primary-cta { flex: 0 0 220px; }
.content-section { padding: clamp(88px, 9vw, 145px) 0; background: var(--gh-paper); }
.content-section .row.gy-5.gx-xl-5 { --bs-gutter-x: var(--editorial-gutter); --bs-gutter-y: 48px; }
.content-section.bg-white { background: var(--gh-white) !important; }
.content-section.is-dark { background: var(--gh-navy); color: var(--gh-white); }
.content-section.is-blue { background: var(--gh-blue); color: var(--gh-white); }
.section-kicker { margin-bottom: 28px; }
.is-dark .section-kicker, .is-blue .section-kicker { --eyebrow-color: var(--gh-lime); --eyebrow-rule: var(--gh-lime); }
.is-dark :is(.eyebrow, .section-kicker, .section-marker, .card-index, .leadership-number, .path-label, .reaction-column-title, .purity-tier-number, .installation-systems-label, .process-strip article > span, .scale-step > span, .cash-flow strong) { color: var(--gh-lime); }
.section-heading { max-width: 980px; margin-bottom: 48px; font-size: var(--type-section); font-weight: 500; line-height: .98; letter-spacing: -.03em; }
[data-support-parallax] { overflow: hidden; }
[data-support-parallax] > img { transform: translate3d(0, var(--support-parallax-y, 0px), 0) scale(1.16); transform-origin: center; will-change: transform; }
@media (min-width: 768px) {
  .section-heading-single-line { max-width: none; white-space: nowrap; }
}
.section-intro { max-width: 800px; margin-bottom: 56px; color: #44545c; font-size: var(--type-lead); line-height: 1.65; }
.is-dark .section-intro, .is-blue .section-intro { color: rgba(255, 255, 255, .72); }
.body-copy { color: #44545c; font-size: var(--type-body); line-height: 1.72; }
.body-copy p { margin-bottom: 24px; }
.body-copy strong { color: var(--gh-navy); }
.is-dark .body-copy, .is-blue .body-copy { color: rgba(255, 255, 255, .72); }
.is-dark .body-copy strong, .is-blue .body-copy strong { color: var(--gh-white); }
.energy-flow { width: 100%; max-width: 500px; margin: clamp(48px, 5vw, 72px) 0 0; }
.energy-reaction-copy { align-self: center; }
.energy-flow svg { display: block; width: 100%; height: auto; overflow: visible; }
.energy-flow-box { fill: #f7f8f5; stroke: var(--gh-line); stroke-width: 1; }
.energy-flow-source-box { fill: var(--gh-navy); stroke: var(--gh-navy); }
.energy-flow-connector { fill: none; stroke: var(--gh-blue); stroke-width: 2; }
.energy-flow-node { fill: var(--gh-lime); }
.energy-flow-label { fill: var(--gh-blue); font-family: inherit; font-size: 11px; font-weight: 700; letter-spacing: 1.1px; }
.energy-flow-value { fill: var(--gh-navy); font-family: inherit; font-size: 18px; font-weight: 500; }
.energy-flow-value-compact { font-size: 16px; }
.energy-flow-label:first-of-type { fill: var(--gh-lime); }
.energy-flow-label:first-of-type + .energy-flow-value { fill: var(--gh-white); }
.energy-cta-links { gap: clamp(28px, 3.5vw, 58px); }
.energy-cta-links-stacked { display: flex; flex-direction: column; align-items: flex-start; gap: 48px; }
.energy-cta-secondary-row { display: flex; width: 100%; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: clamp(24px, 2.5vw, 40px); }
.energy-cta-secondary-row .text-link.on-dark { margin-top: 0; }
.next-step-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(54px, 7vw, 112px); align-items: center; }
.next-step-content { min-width: 0; align-self: center; }
.next-step-content > .section-heading { margin-bottom: 30px; }
.next-step-content > .section-intro { margin-bottom: 42px; font-size: var(--type-lead); line-height: 1.6; }
.next-step-media { width: 75%; min-height: 0; margin: 0; justify-self: end; overflow: hidden; background: var(--gh-sage); aspect-ratio: 1 / 1; }
.next-step-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.next-step-topographic { overflow: hidden; padding: 0; }
.next-step-topographic .site-shell { padding-right: 0; }
.next-step-topographic .next-step-layout { grid-template-columns: minmax(0, 1fr) minmax(420px, .86fr); align-items: stretch; }
.next-step-topographic .next-step-content { padding-top: clamp(52px, 4.5vw, 75px); padding-bottom: clamp(52px, 4.5vw, 75px); }
.next-step-topographic .next-step-media { width: 100%; height: 100%; min-height: 100%; aspect-ratio: auto; background: transparent; }
.next-step-topographic .next-step-media img { object-fit: contain; object-position: center; }
@media (min-width: 992px) {
  .next-step-topographic .next-step-layout { height: 640px; }
}
#hydrogen-reaction-title span { display: block; }
.status-line { display: inline-flex; margin-bottom: 34px; padding: 10px 14px; border-left: 3px solid var(--gh-lime); background: rgba(146, 192, 36, .1); color: var(--gh-navy); font-size: var(--type-label); font-weight: 700; }
.is-dark .status-line, .is-blue .status-line { color: var(--gh-white); }
.numbered-process { counter-reset: steps; border-top: 1px solid var(--gh-line); }
.process-step { display: grid; padding: 42px 0; grid-template-columns: minmax(86px, .22fr) minmax(220px, .7fr) minmax(0, 1.45fr); gap: 30px; border-bottom: 1px solid var(--gh-line); }
.process-step::before { counter-increment: steps; content: counter(steps, decimal-leading-zero); color: var(--gh-blue); font-size: clamp(42px, 4vw, 68px); font-weight: 500; line-height: .9; }
.process-step h3 { margin: 0; font-size: var(--type-card); font-weight: 500; line-height: 1.1; }
.process-step p { max-width: 760px; margin: 0; color: #4b5a61; font-size: var(--type-body); line-height: 1.65; }
#how-it-works { padding-bottom: clamp(32px, 3vw, 50px); }
#how-it-works .process-step:last-child { border-bottom: 0; }
.feature-grid, .application-grid, .related-grid, .path-grid, .cta-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--gh-line); border-left: 1px solid var(--gh-line); }
.feature-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.application-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.feature-card, .application-card, .related-card, .path-card, .cta-card { min-height: 300px; padding: 38px; border-right: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); background: var(--gh-white); }
.feature-card .card-index, .application-card .card-index { display: block; margin-bottom: 74px; color: var(--gh-blue); font-size: var(--type-index); font-weight: 700; letter-spacing: .12em; }
.feature-card h3, .application-card h3, .related-card h3, .path-card h3, .cta-card h3 { margin-bottom: 18px; font-size: var(--type-card); font-weight: 500; line-height: 1.08; }
.feature-card p, .application-card p, .related-card p, .path-card p, .cta-card p { margin: 0; color: #4b5a61; font-size: var(--type-compact); line-height: 1.65; }
#core-technology .feature-grid { gap: clamp(32px, 4vw, 68px); border: 0; }
#core-technology .feature-card { min-height: 0; padding: 0; border: 0; background: transparent; }
#core-technology .feature-card .card-index { margin-bottom: 24px; }
#core-technology .feature-card h3 { font-size: var(--type-card); }
#core-technology .feature-card h3 span { display: block; white-space: nowrap; }
#core-technology { padding-bottom: clamp(48px, 4vw, 68px); background: #f4f4f4; }
#core-technology .core-technology-image { width: min(90%, 1152px); margin: clamp(24px, 3vw, 44px) auto clamp(36px, 4vw, 56px); }
#core-technology .core-technology-image img { display: block; width: 100%; height: auto; }
#core-technology .core-technology-note { margin: clamp(68px, 6vw, 100px) 0 0; }
#uses { --application-gap: clamp(32px, 4vw, 68px); }
#uses .uses-intro { display: grid; margin-bottom: clamp(56px, 6vw, 84px); grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: var(--application-gap); }
#uses .uses-intro-copy { min-width: 0; }
#uses .application-grid { gap: var(--application-gap); border: 0; }
#uses .application-card { min-height: 0; padding: 0; border: 0; background: transparent; }
#uses .application-card .card-index { margin-bottom: 24px; }
#uses .application-card h3 { min-height: 2.16em; font-size: var(--type-card); }
#uses .application-card h3 span { display: block; white-space: nowrap; }
#uses .uses-facility-image { margin: 0; }
#uses .uses-facility-image img { display: block; width: 100%; height: auto; }
#uses .uses-summary { max-width: 540px; margin: 0; font-size: var(--type-lead); line-height: 1.5; }
.is-dark .feature-grid, .is-dark .feature-card { border-color: rgba(255, 255, 255, .2); }
.is-dark .feature-card { background: transparent; }
.is-dark .feature-card .card-index { color: var(--gh-lime); }
.is-dark .feature-card h3 { color: var(--gh-white); }
.is-dark .feature-card p { color: rgba(255, 255, 255, .65); }
.capacity-figure { width: 100%; margin: 0; padding-top: clamp(14px, 2vw, 28px); }
.capacity-symbol-library { position: absolute; width: 0; height: 0; overflow: hidden; }
.capacity-rail { position: relative; display: grid; padding: 0 18px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.capacity-rail::before { position: absolute; top: 88px; right: 18px; left: 18px; height: 1px; content: ''; background: var(--gh-lime); transform-origin: left center; }
.capacity-rail::after { position: absolute; top: 84px; right: 18px; width: 9px; height: 9px; content: ''; border-right: 1px solid var(--gh-lime); border-bottom: 1px solid var(--gh-lime); transform: rotate(-45deg); }
.capacity-stage { position: relative; display: grid; min-width: 0; grid-template-rows: 72px auto auto; justify-items: center; text-align: center; }
.capacity-stage::before { position: absolute; top: 84px; left: 50%; width: 9px; height: 9px; border: 2px solid var(--gh-lime); border-radius: 50%; content: ''; background: var(--gh-navy); transform: translateX(-50%); }
.capacity-module-group { display: flex; height: 72px; align-items: flex-end; justify-content: center; gap: 3px; color: var(--gh-white); }
.capacity-module-group svg { width: 38px; height: 48px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: square; stroke-linejoin: miter; }
.capacity-stage strong { margin-top: 34px; color: var(--gh-white); font-size: clamp(28px, 3vw, 46px); font-weight: 500; line-height: 1; letter-spacing: -.04em; }
.capacity-stage > span { margin-top: 8px; color: rgba(255, 255, 255, .58); font-size: 12px; line-height: 1.4; }
.capacity-stage-equation { display: flex; align-items: baseline; justify-content: center; gap: 9px; white-space: nowrap; }
.capacity-stage-equation span { color: var(--gh-lime); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.capacity-continuation { display: flex; height: 72px; align-items: center; gap: 8px; }
.capacity-continuation span { width: 5px; height: 5px; border-radius: 50%; background: var(--gh-white); }
@media (min-width: 768px) {
  .capacity-rail { grid-template-columns: 0 minmax(0, 1fr) 0 minmax(0, 1fr) 0 minmax(0, 1fr) 0; }
  .capacity-stage { width: max-content; justify-self: center; }
  .capacity-stage:nth-child(1) { grid-column: 1; }
  .capacity-stage:nth-child(2) { grid-column: 3; }
  .capacity-stage:nth-child(3) { grid-column: 5; }
  .capacity-stage:nth-child(4) { grid-column: 7; }
  .capacity-stage:first-child { justify-self: start; justify-items: start; text-align: left; }
  .capacity-stage:first-child::before { left: 0; transform: none; }
  .capacity-stage:first-child .capacity-module-group,
  .capacity-stage:first-child .capacity-stage-equation { justify-content: flex-start; }
  .capacity-stage:last-child { justify-self: end; justify-items: end; text-align: right; }
  .capacity-stage:last-child::before { right: 0; left: auto; transform: none; }
  .capacity-stage:last-child .capacity-continuation { justify-content: flex-end; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .capacity-stage { width: 180px; }
}
.installation-systems { position: relative; margin-top: clamp(72px, 8vw, 110px); padding-top: clamp(42px, 5vw, 64px); background: linear-gradient(rgba(255, 255, 255, .25), rgba(255, 255, 255, .25)) 18px 0 / calc(100% - 36px) 1px no-repeat; }
.installation-systems::before, .installation-systems::after { position: absolute; top: -8px; width: 1px; height: 8px; content: ''; background: rgba(255, 255, 255, .25); }
.installation-systems::before { left: 18px; }
.installation-systems::after { right: 18px; }
.installation-systems-label { position: absolute; top: 0; left: 50%; margin: 0; padding: 0 20px; background: var(--gh-navy); color: var(--gh-lime); font-size: var(--type-index); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; transform: translate(-50%, -50%); white-space: nowrap; }
.installation-systems-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(32px, 5vw, 76px); }
.installation-system { display: grid; min-width: 0; grid-template-columns: 58px minmax(0, 1fr); align-items: center; gap: 20px; }
.installation-system-icon { --installation-icon-size: 54px; display: grid; width: var(--installation-icon-size); height: var(--installation-icon-size); place-items: center; color: var(--gh-white); }
.installation-system-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: square; stroke-linejoin: miter; }
.installation-system-hydrogen { display: flex; align-items: center; justify-content: center; color: var(--gh-white); font-size: calc(var(--installation-icon-size) * .88); font-weight: 500; line-height: 1; }
.installation-system-hydrogen sub { position: relative; top: .35em; font-size: .5em; line-height: 1; vertical-align: baseline; }
.installation-system h3 { margin: 0 0 7px; color: var(--gh-white); font-size: var(--type-technical); font-weight: 500; line-height: 1.08; }
.installation-system p { margin: 0; color: rgba(255, 255, 255, .58); font-size: var(--type-compact); line-height: 1.45; }
.reveal-enabled .reveal-section:not(.is-visible) .capacity-rail::before { transform: scaleX(0); }
.reveal-enabled .reveal-section.is-visible .capacity-rail::before { transform: scaleX(1); transition: transform .8s cubic-bezier(.22, 1, .36, 1) .25s; }
.reveal-enabled .reveal-section:not(.is-visible) .capacity-stage, .reveal-enabled .reveal-section:not(.is-visible) .installation-system { opacity: 0; transform: translateY(16px); }
.reveal-enabled .reveal-section.is-visible .capacity-stage, .reveal-enabled .reveal-section.is-visible .installation-system { opacity: 1; transform: translateY(0); transition: opacity .5s ease, transform .5s cubic-bezier(.22, 1, .36, 1); }
.reveal-enabled .reveal-section.is-visible .capacity-stage:nth-child(2) { transition-delay: .12s; }
.reveal-enabled .reveal-section.is-visible .capacity-stage:nth-child(3) { transition-delay: .24s; }
.reveal-enabled .reveal-section.is-visible .capacity-stage:nth-child(4) { transition-delay: .36s; }
.reveal-enabled .reveal-section.is-visible .installation-system:nth-child(2) { transition-delay: .12s; }
.reveal-enabled .reveal-section.is-visible .installation-system:nth-child(3) { transition-delay: .24s; }
.spec-table { margin: 0; border-color: var(--gh-line); color: var(--gh-navy); }
.spec-table th, .spec-table td { width: 50%; padding: 10px 18px; border-color: var(--gh-line); background: transparent; font-size: 15px; vertical-align: middle; }
.spec-table th { font-weight: 600; }
.specifications-section { padding-top: clamp(64px, 6vw, 96px); padding-bottom: clamp(64px, 6vw, 96px); }
.specifications-section .spec-table th, .specifications-section .spec-table td { padding: 12px 18px; line-height: 1.4; }
.spec-pending { color: var(--gh-stone); font-style: italic; }
.table-note { margin-top: 18px; color: var(--gh-stone); font-size: var(--type-note); }
.is-dark .spec-table { color: var(--gh-white); }
.is-dark .spec-table th, .is-dark .spec-table td { border-color: rgba(255, 255, 255, .22); color: inherit; }
#specifications { border-bottom: 0; box-shadow: none; }
#safety { padding-top: clamp(48px, 4vw, 68px); }
.safety-layout { display: block; }
#safety::before { display: none; }
.safety-intro { margin-bottom: 48px; }
.safety-intro .section-heading { max-width: none; margin-bottom: 0; }
.safety-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(32px, 4vw, 68px); background: transparent; }
.safety-item { min-height: 0; padding: 0; background: transparent; }
.safety-item h3 { margin-bottom: 16px; color: var(--gh-blue); font-size: var(--type-technical); }
.safety-item p { margin: 0; color: #4b5a61; font-size: var(--type-compact); line-height: 1.65; }
.process-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid currentColor; border-left: 1px solid currentColor; }
.process-strip article { min-height: 220px; padding: 34px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; }
.process-strip span { display: block; margin-bottom: 58px; color: var(--gh-lime); font-size: var(--type-index); font-weight: 700; }
.process-strip h3 { margin-bottom: 12px; font-size: var(--type-card); font-weight: 500; }
.process-strip p { margin: 0; color: rgba(255, 255, 255, .68); font-size: var(--type-compact); line-height: 1.55; }
#polishing-line .polishing-line-intro { display: grid; margin-bottom: clamp(54px, 6vw, 90px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: start; }
#polishing-line .polishing-line-copy .section-heading { max-width: 720px; }
#polishing-line .polishing-line-copy .section-intro { max-width: 680px; margin-bottom: 0; }
#polishing-line .polishing-line-image { width: 100%; margin: 0; overflow: hidden; background: transparent; aspect-ratio: 1224 / 1002; }
#polishing-line .polishing-line-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
#polishing-line .process-strip { gap: 6px; border: 0; }
#polishing-line .process-strip article { border: 0; background: #091820; }
@media (max-width: 991.98px) {
  #polishing-line .polishing-line-intro { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
}
.alumina-process-editorial .section-heading { max-width: none; margin-bottom: 46px; }
.alumina-process-editorial .section-intro { max-width: 860px; margin-bottom: 0; }
.alumina-process-grid { display: grid; margin-bottom: clamp(68px, 6vw, 96px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: center; }
.alumina-process-image { width: 100%; margin: 0; overflow: hidden; background: #eef6fb; aspect-ratio: 4 / 3; }
.alumina-process-image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.alumina-process-editorial .process-strip { gap: clamp(34px, 4.5vw, 72px); border: 0; }
.alumina-process-editorial .process-strip article { min-height: 0; padding: 0; border: 0; }
.alumina-process-editorial .process-strip span { margin-bottom: 36px; color: var(--gh-blue); }
.alumina-process-editorial .process-strip h3 { margin-bottom: 22px; color: var(--gh-navy); font-size: var(--type-card); line-height: 1.08; }
.alumina-process-editorial .process-strip p { color: #4b5a61; font-size: var(--type-compact); line-height: 1.65; }
.alumina-commercial-topographic .next-step-content > .section-heading { max-width: 720px; margin-bottom: 58px; }
.alumina-commercial-actions { display: grid; max-width: 760px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 3.5vw, 52px); }
.alumina-commercial-actions article { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; }
.alumina-commercial-actions h3 { margin-bottom: 12px; font-size: var(--type-card); font-weight: 500; line-height: 1.1; }
.alumina-commercial-actions p { min-height: 3.2em; margin: 0 0 26px; color: #4b5a61; font-size: var(--type-compact); line-height: 1.6; }
.alumina-commercial-actions .text-link { margin-top: 11px; }
.cta-grid { border-color: rgba(255, 255, 255, .25); }
.cta-card { display: flex; min-height: 360px; flex-direction: column; justify-content: space-between; border-color: rgba(255, 255, 255, .25); background: transparent; color: var(--gh-white); }
.cta-card p { color: rgba(255, 255, 255, .7); }
.cta-card .primary-cta { margin-top: 40px; }
.technology-closing .site-shell { display: block; }
.technology-closing-intro { margin-bottom: clamp(38px, 4vw, 58px); }
.technology-closing-intro .section-heading { margin-bottom: 0; }
.technology-closing .cta-grid { grid-template-columns: 1fr; border: 0; }
.technology-closing .cta-card { display: grid; min-height: 0; padding: clamp(28px, 3vw, 42px) 0; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 32px; border: 0; color: var(--gh-navy); }
.technology-closing .cta-card + .cta-card { border-top: 1px solid var(--gh-line); }
.technology-closing .cta-card p { color: #4b5a61; }
.technology-closing .cta-card .primary-cta { margin-top: 0; }
@media (min-width: 992px) {
  .technology-closing .next-step-layout { height: auto; min-height: 640px; }
}
.reaction-illustration { margin: clamp(56px, 7vw, 96px) 0 0; padding: 0; background: transparent; }
.reaction-flow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; }
.reaction-column { position: relative; min-width: 0; padding: 0 clamp(32px, 4vw, 62px); }
.reaction-column:not(:last-child) { border-right: 1px solid var(--gh-line); }
.reaction-flow-arrow { position: absolute; top: 50%; right: 0; width: 34px; height: 34px; background: var(--gh-white); color: var(--gh-lime); font-size: 24px; line-height: 32px; text-align: center; transform: translate(50%, -50%); }
.reaction-column-title { margin: 0 0 clamp(34px, 4vw, 56px); color: var(--gh-moss); font-size: var(--type-index); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.reaction-stack { display: grid; gap: clamp(18px, 2vw, 28px); }
.reaction-node { display: grid; min-width: 0; grid-template-columns: 62px minmax(0, 1fr); gap: clamp(18px, 2vw, 28px); align-items: center; background: transparent; }
.reaction-icon { display: grid; width: 58px; height: 58px; place-items: center; color: var(--gh-blue); }
.reaction-icon svg { display: block; width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: square; stroke-linejoin: miter; vector-effect: non-scaling-stroke; }
.reaction-node h4 { margin: 0 0 7px; font-size: var(--type-technical); font-weight: 500; line-height: 1.08; letter-spacing: -.02em; }
.reaction-node p { margin: 0; color: #59686f; font-size: var(--type-compact); line-height: 1.5; }
.reaction-core-node { min-height: 0; }
.reaction-core-graphic { position: relative; display: grid; width: 58px; height: 58px; place-items: center; color: var(--gh-blue); }
.reaction-core-graphic svg { display: block; width: 100%; height: auto; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: square; stroke-linejoin: miter; vector-effect: non-scaling-stroke; }
.reaction-core-copy { text-align: left; }
.reaction-core-copy h4 { margin: 0 0 7px; font-size: var(--type-technical); font-weight: 500; line-height: 1.08; letter-spacing: -.02em; }
.reaction-core-copy p { margin: 0; color: #59686f; font-size: var(--type-compact); line-height: 1.5; }
.reaction-icon-hydrogen strong { color: var(--gh-blue); font-size: 30px; font-weight: 500; line-height: 1; }
.reaction-icon-hydrogen sub { font-size: .5em; vertical-align: -.2em; }
.reveal-enabled .reveal-section:not(.is-visible) .reaction-column { opacity: 0; transform: translateX(-18px); }
.reveal-enabled .reveal-section.is-visible .reaction-column { opacity: 1; transform: translateX(0); transition: opacity .55s ease, transform .55s cubic-bezier(.22, 1, .36, 1); }
.reveal-enabled .reveal-section.is-visible .reaction-column:nth-child(2) { transition-delay: .16s; }
.reveal-enabled .reveal-section.is-visible .reaction-column:nth-child(3) { transition-delay: .32s; }
.system-overview-header { display: grid; margin-bottom: 56px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: end; }
.system-overview-header .section-heading, .system-overview-header .section-intro { max-width: none; margin-bottom: 0; }
.system-overview-header .section-heading { white-space: normal; }
.scale-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; background: rgba(255, 255, 255, .2); }
.scale-step { min-height: 310px; padding: 42px; background: var(--gh-navy); }
.scale-step strong { display: block; margin-bottom: 80px; color: var(--gh-lime); font-size: clamp(48px, 5vw, 82px); font-weight: 500; line-height: .9; }
.scale-step p { margin: 0; color: rgba(255, 255, 255, .7); font-size: var(--type-compact); line-height: 1.6; }
#hydrogen-scale .section-heading, #scale .section-heading { max-width: 1080px; }
#hydrogen-scale .scale-steps, #scale .scale-steps { gap: 6px; background: transparent; }
#hydrogen-scale .scale-step, #scale .scale-step { min-height: 220px; padding: 34px; background: #091820; }
#hydrogen-scale .scale-step > span, #scale .scale-step > span { display: block; margin-bottom: 58px; color: var(--gh-lime); font-size: var(--type-index); font-weight: 700; }
#hydrogen-scale .scale-step h3, #scale .scale-step h3 { margin-bottom: 18px; color: var(--gh-white); font-size: var(--type-section); font-weight: 500; line-height: .98; letter-spacing: -.03em; }
#hydrogen-scale .scale-step h3, #scale .scale-step h3 { color: var(--gh-lime); }
#hydrogen-scale .scale-step h3 sub { font-size: .45em; line-height: 0; vertical-align: -.15em; }
#hydrogen-scale .scale-step p, #scale .scale-step p { color: rgba(255, 255, 255, .68); font-size: var(--type-compact); line-height: 1.55; }
.path-card { min-height: 390px; }
#origin .heat-path { margin-top: 32px; border-top: 1px solid var(--gh-line); }
#origin .heat-path > div { display: flex; padding: 14px 0; align-items: baseline; gap: 24px; border-bottom: 1px solid var(--gh-line); line-height: 1.5; }
#origin .heat-path strong { flex: 0 0 175px; }
@media (max-width: 575.98px) {
  #origin .heat-path > div { display: block; }
  #origin .heat-path strong { display: block; margin-bottom: 2px; }
}
.path-card:first-child { background: var(--gh-white); }
.path-card:last-child { background: var(--gh-sage); }
.path-label { display: block; margin-bottom: 90px; color: var(--gh-blue); font-size: var(--type-index); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
#paths { --path-gap: clamp(32px, 4vw, 68px); }
#paths .paths-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); grid-template-rows: auto auto 1fr; grid-template-areas: "heading paths" "image paths" "subtext paths"; column-gap: 24px; }
#paths .paths-heading { grid-area: heading; }
#paths .paths-heading .section-heading { max-width: 100%; margin-bottom: 20px; }
#paths .paths-subtext { grid-area: subtext; max-width: 680px; margin: 12px 0 0; color: #44545c; font-size: var(--type-body); line-height: 1.55; }
#paths .paths-image { grid-area: image; width: min(80%, 440px); margin: 0; }
#paths .paths-image img { display: block; width: 100%; height: auto; }
#paths .path-grid { grid-area: paths; grid-template-columns: 1fr; gap: 0; border: 0; border-top: 1px solid var(--gh-line); }
#paths .path-card { min-height: 0; padding: clamp(34px, 3.5vw, 52px) 0; border: 0; border-bottom: 1px solid var(--gh-line); background: transparent; }
#paths .path-label { margin-bottom: 24px; }
#paths .path-card h3 { min-height: 0; font-size: var(--type-card); }
#paths .path-card h3 span { display: block; white-space: nowrap; }
.purity-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: var(--editorial-gutter); }
.purity-intro-column { display: flex; min-width: 0; flex-direction: column; }
.purity-editorial .section-heading { margin-bottom: 36px; }
.purity-editorial .section-intro { margin-bottom: clamp(42px, 4vw, 60px); }
.purity-market-map { display: grid; width: min(100%, 500px); margin: auto 0 0; grid-template-columns: 114px 58px minmax(0, 1fr); align-items: center; }
.purity-market-hub { display: flex; width: 114px; height: 114px; flex-direction: column; align-items: center; justify-content: center; border: 2px solid var(--gh-lime); border-radius: 50%; background: #091820; box-shadow: 0 0 0 12px rgba(146, 192, 36, .07); text-align: center; }
.purity-market-hub span { color: rgba(255, 255, 255, .62); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.purity-market-hub strong { margin-top: 5px; color: var(--gh-white); font-size: 18px; font-weight: 500; line-height: 1; }
.purity-market-connectors { display: block; width: 58px; height: 312px; overflow: visible; color: rgba(146, 192, 36, .58); }
.purity-market-connectors path { fill: none; stroke: currentColor; stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.purity-market-list { display: grid; margin: 0; padding: 0; grid-template-rows: repeat(3, 96px); gap: 12px; list-style: none; }
.purity-market-list li { display: grid; min-width: 0; padding: 12px 0 12px 12px; grid-template-columns: 34px minmax(0, 1fr); align-items: center; gap: 12px; border-top: 1px solid rgba(255, 255, 255, .22); }
.purity-market-list li:last-child { border-bottom: 1px solid rgba(255, 255, 255, .22); }
.purity-market-icon { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid var(--gh-lime); border-radius: 50%; color: var(--gh-lime); }
.purity-market-icon svg { width: 19px; height: 19px; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
.purity-market-copy > span { display: block; margin-bottom: 7px; color: var(--gh-lime); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.purity-market-copy strong { display: block; color: var(--gh-white); font-size: var(--type-compact); font-weight: 500; line-height: 1.3; }
.purity-rows { border-top: 1px solid rgba(255, 255, 255, .22); }
.purity-row { display: grid; min-width: 0; padding: clamp(30px, 3vw, 44px) 0; grid-template-columns: 38px minmax(170px, .72fr) minmax(0, 1.28fr); align-items: start; gap: clamp(14px, 1.5vw, 24px); border-bottom: 1px solid rgba(255, 255, 255, .22); }
.purity-tier-number { color: var(--gh-lime); font-size: var(--type-label); font-weight: 700; line-height: 1; letter-spacing: .12em; }
.purity-row h3 { margin: 0; color: var(--gh-white); font-size: var(--type-card); font-weight: 500; line-height: 1.08; letter-spacing: -.02em; }
.purity-row p { margin: 0; color: rgba(255, 255, 255, .68); font-size: var(--type-compact); line-height: 1.62; }
.purity-validation-note { max-width: 520px; margin: 20px 0 0; color: rgba(255, 255, 255, .5); font-size: 11px; line-height: 1.55; }
.supply-editorial { padding-top: clamp(64px, 6vw, 88px); padding-bottom: clamp(64px, 6vw, 88px); }
.supply-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: var(--editorial-gutter); }
.supply-heading { position: relative; min-width: 0; }
.supply-heading .section-heading { max-width: none; margin-bottom: 0; font-size: var(--type-section); white-space: nowrap; }
.supply-bottle-image { position: absolute; top: clamp(130px, 11vw, 155px); right: 0; bottom: 0; left: 0; margin: 0; overflow: hidden; }
.supply-bottle-image img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: left bottom; }
.supply-narrative { border-top: 1px solid var(--gh-line); }
.supply-point { display: grid; padding: clamp(26px, 2.6vw, 36px) 0; grid-template-columns: 52px minmax(0, 1fr); align-items: start; gap: clamp(24px, 3vw, 46px); border-bottom: 1px solid var(--gh-line); }
.supply-index { padding-top: 4px; color: var(--gh-blue); font-size: var(--type-index); font-weight: 700; line-height: 1; letter-spacing: .12em; }
.supply-point-label { margin-bottom: 18px; color: var(--gh-moss); font-size: 11px; font-weight: 700; line-height: 1.35; letter-spacing: .12em; text-transform: uppercase; }
.supply-point-copy > p:last-child { max-width: 760px; margin-bottom: 0; color: #44545c; font-size: var(--type-lead); line-height: 1.65; }
.supply-point-featured .supply-point-copy > p:last-child { color: var(--gh-navy); font-size: var(--type-lead); line-height: 1.55; }
.supply-narrative > .table-note { max-width: 760px; margin-top: 18px; }
.site-facts { border-top: 1px solid var(--gh-line); }
.site-fact { display: grid; padding: 22px 0; grid-template-columns: .7fr 1.3fr; gap: 30px; border-bottom: 1px solid var(--gh-line); }
.site-fact dt { font-size: var(--type-label); font-weight: 700; }
.site-fact dd { margin: 0; color: #4b5a61; font-size: var(--type-data); }
.image-band { min-height: 460px; overflow: hidden; background: var(--gh-navy); }
.image-band img { width: 100%; height: 100%; min-height: 460px; object-fit: cover; filter: saturate(.78) contrast(1.05); }
.related-card { display: flex; min-height: 280px; flex-direction: column; justify-content: space-between; transition: background-color .24s ease, color .24s ease; }
.related-card:hover { background: var(--gh-lime); color: var(--gh-navy); }
.related-card p { max-width: 420px; }
.related-card span { align-self: flex-end; font-size: 24px; }

.roles-grid, .archetype-grid, .stats-grid, .logistics-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--gh-line); border-left: 1px solid var(--gh-line); }
.roles-grid { grid-template-columns: 1.2fr .8fr; }
.role-card, .archetype-card, .stat-card, .logistics-card { min-height: 290px; padding: clamp(30px, 3vw, 48px); border-right: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); background: var(--gh-white); }
.role-card h3, .archetype-card h3, .logistics-card h3 { margin-bottom: 18px; font-size: var(--type-card); font-weight: 500; line-height: 1.08; }
.role-card p, .archetype-card p, .logistics-card p { margin: 0; color: #4b5a61; font-size: var(--type-compact); line-height: 1.65; }
.archetype-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.archetype-card { min-height: 260px; }
.stat-card { min-height: 260px; background: transparent; color: var(--gh-white); }
.stat-card strong { display: block; margin-bottom: 56px; color: var(--gh-lime); font-size: clamp(56px, 7vw, 106px); font-weight: 500; line-height: .84; letter-spacing: -.05em; }
.stat-card p { max-width: 360px; margin: 0; color: rgba(255, 255, 255, .7); font-size: var(--type-compact); line-height: 1.55; }
.mandate-callout { margin-top: 1px; padding: clamp(34px, 4vw, 60px); border-left: 4px solid var(--gh-lime); background: var(--gh-blue); color: var(--gh-white); }
.mandate-callout p { max-width: 980px; margin: 0; font-size: clamp(22px, 2.5vw, 38px); line-height: 1.3; }
.cash-flow { display: grid; margin: 56px 0; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: stretch; border: 1px solid rgba(255, 255, 255, .22); }
.cash-flow > div { display: flex; min-height: 230px; padding: 34px; flex-direction: column; justify-content: space-between; }
.cash-flow strong { color: var(--gh-lime); font-size: var(--type-index); letter-spacing: .12em; text-transform: uppercase; }
.cash-flow span { font-size: clamp(24px, 2.6vw, 40px); line-height: 1.06; }
.cash-flow .flow-arrow { display: grid; min-height: 230px; padding: 0 18px; place-items: center; border-right: 1px solid rgba(255, 255, 255, .22); border-left: 1px solid rgba(255, 255, 255, .22); color: var(--gh-lime); font-size: 28px; }
.logistics-card:first-child { background: var(--gh-navy); color: var(--gh-white); }
.logistics-card:first-child p { color: rgba(255, 255, 255, .68); }
.logistics-card:last-child { background: var(--gh-sage); }
.dual-cta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid rgba(255, 255, 255, .25); border-left: 1px solid rgba(255, 255, 255, .25); }
.dual-cta article { display: flex; min-height: 360px; padding: clamp(32px, 4vw, 54px); flex-direction: column; justify-content: space-between; border-right: 1px solid rgba(255, 255, 255, .25); border-bottom: 1px solid rgba(255, 255, 255, .25); }
.dual-cta h3 { margin-bottom: 18px; font-size: var(--type-card); font-weight: 500; }
.dual-cta p { max-width: 430px; color: rgba(255, 255, 255, .7); font-size: var(--type-body); line-height: 1.6; }

.contact-page { background: var(--gh-white); }
.contact-page-header { padding: clamp(76px, 8vw, 125px) 0 clamp(64px, 7vw, 105px); background: var(--gh-white); }
.contact-page-heading { max-width: 1080px; }
.contact-page-heading .eyebrow { margin-bottom: 34px; }
.contact-page-heading h1 { max-width: 980px; font-size: var(--type-page); }
.contact-page-heading > p:last-child { max-width: 680px; margin: 34px 0 0; color: #44545c; font-size: var(--type-lead); line-height: 1.6; }
.contact-page-content { padding: clamp(76px, 8vw, 125px) 0; border-top: 1px solid var(--gh-line); background: var(--gh-paper); }
.contact-page-layout { display: block; }
.adaptive-contact-form { width: min(100%, 980px); margin: 0 auto; padding: clamp(34px, 4vw, 62px); }
.adaptive-contact-form .form-field-lead { margin-bottom: 12px; padding-bottom: clamp(28px, 3vw, 44px); border-bottom: 1px solid var(--gh-line); }
.adaptive-contact-form .form-field-lead label { color: var(--gh-navy); font-size: 14px; }
.adaptive-contact-form .form-field-lead select { color: var(--gh-blue); font-size: clamp(20px, 2vw, 28px); font-weight: 500; }
.conditional-fields[hidden] { display: none; }
.conditional-fields:not([hidden]) { display: contents; }
.contact-layout { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(54px, 7vw, 120px); align-items: start; }
.contact-intro { max-width: 520px; }
.contact-intro .section-heading { margin-bottom: 30px; }
.contact-intro p { color: #44545c; font-size: var(--type-body); line-height: 1.7; }
.contact-topics { display: grid; margin-top: 48px; border-top: 1px solid var(--gh-line); }
.contact-topics span { padding: 15px 0; border-bottom: 1px solid var(--gh-line); color: var(--gh-navy); font-size: var(--type-label); font-weight: 600; }
.contact-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; padding: clamp(32px, 4vw, 58px); border: 1px solid var(--gh-line); background: var(--gh-white); }
.contact-form.adaptive-contact-form { padding: 0; border: 0; background: transparent; }
.form-field { display: flex; min-width: 0; flex-direction: column; gap: 10px; }
.form-field-full { grid-column: 1 / -1; }
.form-field label, .form-legend { margin: 0; color: var(--gh-stone); font-size: var(--type-index); font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.form-field input, .form-field select, .form-field textarea { width: 100%; min-height: 48px; padding: 11px 0; border: 0; border-bottom: 1px solid rgba(13, 32, 41, .35); border-radius: 0; outline: 0; background: transparent; color: var(--gh-navy); font: inherit; transition: border-color .2s ease, box-shadow .2s ease; }
.form-field textarea { min-height: 150px; resize: vertical; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { border-bottom-color: var(--gh-blue); box-shadow: 0 1px 0 var(--gh-blue); }
.form-consent { display: flex; grid-column: 1 / -1; align-items: flex-start; gap: 12px; color: #44545c; font-size: var(--type-label); line-height: 1.5; }
.form-consent input { width: 18px; height: 18px; margin-top: 1px; accent-color: var(--gh-blue); }
.contact-form .primary-cta { grid-column: 1 / -1; border: 0; }
.contact-form-note { grid-column: 1 / -1; margin: -8px 0 0; color: var(--gh-stone); font-size: var(--type-index); line-height: 1.5; }

.faq-section { scroll-margin-top: calc(var(--gh-header-height) + 58px); }
.faq-section-heading { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--editorial-gutter); align-items: start; }
.faq-section-heading .section-kicker { grid-column: 1; }
.faq-section-heading .section-heading { grid-column: 1; max-width: 620px; margin-bottom: 0; }
.faq-section-heading .section-intro { grid-column: 2; grid-row: 2; margin: 0; align-self: end; }
.faq-list { margin-top: clamp(58px, 7vw, 100px); border-top: 1px solid var(--gh-line); }
.faq-item { border-bottom: 1px solid var(--gh-line); }
.faq-item summary { display: grid; min-height: 92px; padding: 28px 0; grid-template-columns: minmax(0, 1fr) 32px; gap: 28px; align-items: center; color: var(--gh-navy); font-size: var(--type-card); font-weight: 500; line-height: 1.25; letter-spacing: -.015em; cursor: pointer; list-style: none; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary > span { position: relative; display: block; width: 24px; height: 24px; justify-self: end; }
.faq-item summary > span::before, .faq-item summary > span::after { position: absolute; top: 50%; left: 50%; width: 16px; height: 1px; content: ''; background: var(--gh-blue); transform: translate(-50%, -50%); transition: transform .25s ease; }
.faq-item summary > span::after { transform: translate(-50%, -50%) rotate(90deg); }
.faq-item[open] summary > span::after { transform: translate(-50%, -50%) rotate(0); }
.faq-item summary:hover, .faq-item summary:focus-visible { color: var(--gh-blue); }
.faq-item summary:focus-visible { outline: 2px solid var(--gh-blue); outline-offset: 5px; }
.faq-answer { max-width: 900px; padding: 0 64px 34px 0; color: #44545c; font-size: var(--type-body); line-height: 1.7; }
.faq-answer p { margin: 0; }
.faq-answer a { color: var(--gh-blue); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.faq-section-dark .faq-list, .faq-section-dark .faq-item { border-color: rgba(255, 255, 255, .22); }
.faq-section-dark .faq-item summary { color: var(--gh-white); }
.faq-section-dark .faq-item summary:hover, .faq-section-dark .faq-item summary:focus-visible, .faq-section-dark .faq-answer a { color: var(--gh-lime); }
.faq-section-dark .faq-item summary:focus-visible { outline-color: var(--gh-lime); }
.faq-section-dark .faq-item summary > span::before, .faq-section-dark .faq-item summary > span::after { background: var(--gh-lime); }
.faq-section-dark .faq-answer { color: rgba(255, 255, 255, .72); }

/* Compact Investor FAQ rhythm */
[data-page="investor-faqs"] .faq-section { padding-top: clamp(58px, 5.5vw, 88px); padding-bottom: clamp(58px, 5.5vw, 88px); }
[data-page="investor-faqs"] .faq-section-heading { align-items: end; }
[data-page="investor-faqs"] .faq-section-heading .section-kicker { margin-bottom: 18px; }
[data-page="investor-faqs"] .faq-section-heading .section-heading { max-width: none; }
[data-page="investor-faqs"] .faq-section-heading .section-intro { max-width: 560px; font-size: var(--type-lead); line-height: 1.55; }
[data-page="investor-faqs"] .faq-list { margin-top: clamp(32px, 3.5vw, 52px); }
[data-page="investor-faqs"] .faq-item summary { min-height: 64px; padding: 17px 0; grid-template-columns: minmax(0, 1fr) 26px; gap: 20px; font-size: var(--type-technical); line-height: 1.2; }
[data-page="investor-faqs"] .faq-item summary > span { width: 20px; height: 20px; }
[data-page="investor-faqs"] .faq-answer { max-width: 980px; padding: 0 52px 21px 0; font-size: var(--type-compact); line-height: 1.6; }

@media (max-width: 1199.98px) {
  .feature-grid, .application-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
  .capacity-rail { margin-left: 8px; padding: 0 0 34px 52px; grid-template-columns: 1fr; gap: 18px; }
  .capacity-rail::before { top: 0; right: auto; bottom: 0; left: 18px; width: 1px; height: auto; transform-origin: center top; }
  .capacity-rail::after { top: auto; right: auto; bottom: 0; left: 14px; transform: rotate(45deg); }
  .capacity-stage { min-height: 104px; grid-template-columns: 116px minmax(0, 1fr); grid-template-rows: 1fr 1fr; justify-items: start; text-align: left; }
  .capacity-stage::before { top: 31px; left: -34px; transform: none; }
  .capacity-module-group, .capacity-continuation { height: 72px; grid-column: 1; grid-row: 1 / 3; justify-content: flex-start; }
  .capacity-stage strong { margin-top: 0; grid-column: 2; grid-row: 1; align-self: end; }
  .capacity-stage > span { grid-column: 2; grid-row: 2; align-self: start; }
  .capacity-stage-equation { justify-content: flex-start; }
  .installation-systems { margin-top: 70px; }
  .installation-systems-grid { grid-template-columns: 1fr; gap: 34px; }
  .reaction-illustration { padding: 0; }
  .reaction-flow-grid { grid-template-columns: 1fr; }
  .reaction-column, .reaction-column:first-child, .reaction-column:last-child { padding: 38px 0; }
  .reaction-column:first-child { padding-top: 0; }
  .reaction-column:last-child { padding-bottom: 0; }
  .reaction-column:not(:last-child) { border-right: 0; border-bottom: 1px solid var(--gh-line); }
  .reaction-flow-arrow { top: auto; right: 50%; bottom: 0; line-height: 34px; transform: translate(50%, 50%) rotate(90deg); }
  .reaction-column-title { margin-bottom: 30px; }
  .reaction-node { grid-template-columns: 54px minmax(0, 1fr); gap: 18px; }
  .reaction-icon { width: 52px; height: 52px; }
  .reaction-core-graphic { width: 52px; height: 52px; }
  .reveal-enabled .reveal-section:not(.is-visible) .reaction-column { transform: translateY(18px); }
  .reveal-enabled .reveal-section.is-visible .reaction-column { transform: translateY(0); }
}

@media (max-width: 991.98px) {
  .site-plus { width: 12px; height: 12px; }
  .site-plus--large { width: 15px; height: 15px; }
  .system-overview-header { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .next-step-layout { grid-template-columns: 1fr; gap: 48px; }
  .alumina-process-grid { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .alumina-process-image { aspect-ratio: 16 / 10; }
  .next-step-media { width: 100%; min-height: 320px; aspect-ratio: 16 / 10; }
  .next-step-topographic .site-shell { padding-left: 0; }
  .next-step-topographic .next-step-layout { grid-template-columns: 1fr; gap: 0; }
  .next-step-topographic .next-step-content { padding: clamp(72px, 10vw, 104px) 5.8vw; }
  .next-step-topographic .next-step-media { min-height: 0; aspect-ratio: 16 / 10; }
  #paths .paths-layout { grid-template-columns: 1fr; grid-template-rows: auto; grid-template-areas: "heading" "image" "subtext" "paths"; }
  #paths .paths-heading .section-heading { max-width: 100%; }
  #paths .path-grid { margin-top: var(--editorial-gutter); }
  .safety-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-layout { grid-template-columns: 1fr; }
  .faq-section-heading { grid-template-columns: 1fr; gap: 0; }
  .faq-section-heading .section-kicker, .faq-section-heading .section-heading, .faq-section-heading .section-intro { grid-column: 1; grid-row: auto; }
  .faq-section-heading .section-heading { margin-bottom: var(--editorial-gutter); }
  [data-page="investor-faqs"] .faq-section-heading { grid-template-columns: 1fr; }
  [data-page="investor-faqs"] .faq-section-heading .section-heading { margin-bottom: var(--editorial-gutter); }
  .about-company-grid, .about-reading-layout { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .about-company-image.about-company-image--wide { margin-top: -21px; }
  .about-paths-layout { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .about-company-image { margin-top: 16px; }
  .about-company-image:nth-of-type(1), .about-company-image:nth-of-type(2) { grid-column: auto; }
  .about-secondary-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .careers-proof-grid, .careers-apply-layout { grid-template-columns: 1fr; }
  .careers-proof-grid { grid-template-areas: "kicker" "heading" "list" "image"; }
  .careers-proof-image { margin-top: var(--editorial-gutter); }
  .careers-proof-image { width: 100%; max-width: none; min-height: 360px; aspect-ratio: 16 / 9; justify-self: stretch; border-top: 1px solid var(--gh-line); border-left: 0; }
  .governance-documents-heading, .committee-composition-heading, .analyst-coverage-heading { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .careers-discipline-grid { grid-template-columns: 1fr; }
  .leadership-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .leadership-heading-row { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .detail-hero-copy { padding-top: 70px; padding-bottom: 86px; }
  .hero-copy, .detail-hero-copy { width: 100%; }
  .page-anchor-nav { top: var(--gh-header-height); }
  .page-anchor-nav .anchor-track { padding: 0 22px; }
  .interior-page .detail-hero .scroll-cue { right: 22px; }
  .process-step { grid-template-columns: 70px 1fr; }
  .process-step p { grid-column: 2; }
  .process-strip, .scale-steps { grid-template-columns: 1fr 1fr; }
  .footer-nav .footer-children span { align-self: flex-start; }
}

@media (max-width: 575.98px) {
  .site-plus { display: none; }
  .site-plus.site-plus--mobile-primary { display: block; width: 10px; height: 10px; }
  .technology-closing .cta-card { grid-template-columns: 1fr; align-items: start; gap: 24px; }
  .contact-form { grid-template-columns: 1fr; padding: 28px 22px; }
  .contact-page-header { padding-top: 68px; padding-bottom: 66px; }
  .contact-page-heading h1 { font-size: var(--type-page); }
  .faq-item summary { min-height: 78px; padding: 22px 0; grid-template-columns: minmax(0, 1fr) 26px; gap: 18px; font-size: var(--type-card); }
  .faq-answer { padding: 0 0 28px; font-size: var(--type-body); }
  [data-page="investor-faqs"] .faq-section { padding-top: 48px; padding-bottom: 48px; }
  [data-page="investor-faqs"] .faq-section-heading .section-kicker { margin-bottom: 15px; }
  [data-page="investor-faqs"] .faq-section-heading .section-heading { margin-bottom: var(--editorial-gutter); }
  [data-page="investor-faqs"] .faq-list { margin-top: 26px; }
  [data-page="investor-faqs"] .faq-item summary { min-height: 58px; padding: 14px 0; gap: 14px; font-size: var(--type-technical); }
  [data-page="investor-faqs"] .faq-answer { padding: 0 38px 18px 0; font-size: var(--type-compact); line-height: 1.55; }
  .adaptive-contact-form .form-field-lead { margin-bottom: 4px; }
  .about-company-image { min-height: 240px; }
  .about-company-image img { min-height: 240px; }
  [data-page="about"] #company { padding-bottom: 38px; }
  .about-join { min-height: 520px; }
  .about-join::after { background: rgba(8, 27, 36, .7); }
  .about-join-content > div { width: 100%; }
  .about-secondary-links { grid-template-columns: 1fr; }
  .about-secondary-links a { min-height: 130px; }
  .careers-proof-list article { min-height: 0; grid-template-columns: 1fr; gap: 18px; }
  .careers-proof-image { min-height: 280px; }
  .governance-document-row { min-height: 0; padding: 26px 0; grid-template-columns: 1fr; gap: 20px; }
  .governance-document-button { width: 100%; }
  .discipline-panel { padding: 0; }
  .discipline-panel dl > div { grid-template-columns: 1fr; gap: 8px; }
  .careers-open-roles { align-items: flex-start; flex-direction: column; }
  .careers-open-roles .primary-cta { flex-basis: auto; }
  .leadership-grid { grid-template-columns: 1fr; }
  .leadership-card { min-height: 0; }
  .form-field-full, .form-consent, .contact-form .primary-cta, .contact-form-note { grid-column: 1; }
  .content-section { padding: 76px 0; }
  .next-step-topographic { padding: 0; }
  .specifications-section { padding: 60px 0; }
  .process-step { padding: 34px 0; grid-template-columns: 54px 1fr; gap: 18px; }
  .feature-grid, .application-grid, .related-grid, .path-grid, .cta-grid, .safety-grid, .process-strip, .scale-steps { grid-template-columns: 1fr; }
  .alumina-commercial-actions { grid-template-columns: 1fr; gap: 36px; }
  .alumina-commercial-actions p { min-height: 0; }
  .feature-card, .application-card, .related-card, .path-card, .cta-card { min-height: 250px; padding: 28px; }
  #uses .uses-intro { grid-template-columns: 1fr; gap: 32px; }
  .system-overview-header .section-heading { font-size: var(--type-section); }
  .installation-systems-label { width: min(260px, 80%); white-space: normal; text-align: center; }
  .installation-system { grid-template-columns: 48px minmax(0, 1fr); gap: 16px; }
  .installation-system-icon { --installation-icon-size: 46px; }
  .reaction-stack { gap: 18px; }
  .reaction-node { grid-template-columns: 48px minmax(0, 1fr); gap: 16px; }
  .reaction-icon { width: 46px; height: 46px; }
  .reaction-node h4 { font-size: 19px; }
  .reaction-core-graphic { width: 46px; height: 46px; }
  .site-fact { grid-template-columns: 1fr; gap: 8px; }
  .spec-table th, .spec-table td { padding: 8px 12px; font-size: 13px; }
  .specifications-section .spec-table th, .specifications-section .spec-table td { padding: 10px 12px; }
  .roles-grid, .archetype-grid, .stats-grid, .logistics-grid, .dual-cta { grid-template-columns: 1fr; }
  .cash-flow { grid-template-columns: 1fr; }
  .cash-flow .flow-arrow { min-height: 54px; border-top: 1px solid rgba(255, 255, 255, .22); border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .22); border-left: 0; transform: rotate(90deg); }
}

/* IR Overview */
[data-page="ir-overview"] :is(#company-overview, #latest-news, #investor-resources) { scroll-margin-top: calc(var(--gh-header-height) + 58px); }
[data-page="ir-overview"] .ir-company-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--editorial-gutter); align-items: start; }
[data-page="ir-overview"] .ir-company-detail { padding-top: 3px; }
[data-page="ir-overview"] .ir-company-detail .body-copy { max-width: 760px; }
[data-page="ir-overview"] .ir-fact-strip { display: grid; margin: clamp(44px, 5vw, 70px) 0 0; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); }
[data-page="ir-overview"] .ir-fact-strip > div { min-width: 0; padding: 25px 22px 27px; border-left: 1px solid var(--gh-line); }
[data-page="ir-overview"] .ir-fact-strip > div:first-child { padding-left: 0; border-left: 0; }
[data-page="ir-overview"] .ir-fact-strip dt { margin-bottom: 11px; color: var(--gh-blue); font-size: clamp(25px, 2.2vw, 34px); font-weight: 500; line-height: 1; letter-spacing: -.025em; }
[data-page="ir-overview"] .ir-fact-strip dd { margin: 0; color: #5d6b72; font-size: var(--type-label); line-height: 1.45; }
[data-page="ir-overview"] .ir-latest-news { background: var(--gh-paper); }
[data-page="ir-overview"] .ir-section-heading { display: flex; margin-bottom: clamp(46px, 5vw, 72px); align-items: end; justify-content: space-between; gap: 40px; }
[data-page="ir-overview"] .ir-section-heading .section-heading { max-width: 760px; margin-bottom: 0; }
[data-page="ir-overview"] .ir-section-heading .text-link { display: inline-flex; flex: 0 0 auto; color: var(--gh-blue); }
@media (min-width: 992px) {
  [data-page="ir-overview"] .ir-latest-news .ir-section-heading .section-heading { max-width: none; white-space: nowrap; }
}
[data-page="ir-overview"] .ir-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(24px, 3vw, 46px); }
[data-page="ir-overview"] .ir-news-grid article { display: flex; min-width: 0; min-height: 330px; padding: 27px 18px 20px 0; flex-direction: column; border-top: 1px solid var(--gh-navy); border-bottom: 1px solid var(--gh-line); transition: border-color .22s ease; }
[data-page="ir-overview"] .ir-news-grid article:hover,
[data-page="ir-overview"] .ir-news-grid article:focus-within { border-top-color: var(--gh-lime); }
[data-page="ir-overview"] .ir-news-grid time { margin-bottom: 42px; color: var(--gh-stone); font-size: 11px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
[data-page="ir-overview"] .ir-news-grid h3 { margin: 0; font-size: var(--type-card); font-weight: 500; line-height: 1.16; letter-spacing: -.025em; }
[data-page="ir-overview"] .ir-news-grid h3 a { transition: color .22s ease; }
[data-page="ir-overview"] .ir-news-grid article:hover h3 a,
[data-page="ir-overview"] .ir-news-grid h3 a:focus-visible { color: var(--gh-blue); }
[data-page="ir-overview"] .ir-news-grid article > span { margin-top: auto; color: var(--gh-blue); font-size: 20px; transition: transform .22s ease; }
[data-page="ir-overview"] .ir-news-grid article:hover > span,
[data-page="ir-overview"] .ir-news-grid article:focus-within > span { transform: translateX(7px); }
[data-page="ir-overview"] .ir-resources .ir-section-heading { margin-bottom: clamp(52px, 6vw, 84px); }
[data-page="ir-overview"] .ir-resource-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--gh-line); border-bottom: 1px solid var(--gh-line); }
[data-page="ir-overview"] .ir-resource-grid a { display: flex; min-width: 0; min-height: 220px; padding: 29px 26px 25px; flex-direction: column; border-left: 1px solid var(--gh-line); transition: background-color .22s ease, color .22s ease; }
[data-page="ir-overview"] .ir-resource-grid a:first-child { padding-left: 0; border-left: 0; }
[data-page="ir-overview"] .ir-resource-grid span { color: var(--gh-navy); font-size: var(--type-card); font-weight: 500; line-height: 1.15; letter-spacing: -.02em; }
[data-page="ir-overview"] .ir-resource-grid small { max-width: 220px; margin-top: 18px; color: #5d6b72; font-size: var(--type-label); line-height: 1.5; }
[data-page="ir-overview"] .ir-resource-grid b { margin-top: auto; color: var(--gh-blue); font-size: 20px; font-weight: 400; transition: transform .22s ease; }
[data-page="ir-overview"] .ir-resource-grid a:hover,
[data-page="ir-overview"] .ir-resource-grid a:focus-visible { background: rgba(13, 32, 41, .035); }
[data-page="ir-overview"] .ir-resource-grid a:hover b,
[data-page="ir-overview"] .ir-resource-grid a:focus-visible b { transform: translateX(7px); }

@media (max-width: 991.98px) {
  [data-page="ir-overview"] .ir-company-grid { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  [data-page="ir-overview"] .ir-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-page="ir-overview"] .ir-resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-page="ir-overview"] .ir-resource-grid a:nth-child(odd) { padding-left: 0; border-left: 0; }
  [data-page="ir-overview"] .ir-resource-grid a:nth-child(n+3) { border-top: 1px solid var(--gh-line); }
}

@media (max-width: 575.98px) {
  [data-page="ir-overview"] .ir-fact-strip { grid-template-columns: 1fr; }
  [data-page="ir-overview"] .ir-fact-strip > div,
  [data-page="ir-overview"] .ir-fact-strip > div:first-child { padding: 20px 0 22px; border-top: 1px solid var(--gh-line); border-left: 0; }
  [data-page="ir-overview"] .ir-fact-strip > div:first-child { border-top: 0; }
  [data-page="ir-overview"] .ir-section-heading { align-items: flex-start; flex-direction: column; }
  [data-page="ir-overview"] .ir-news-grid { grid-template-columns: 1fr; gap: 0; }
  [data-page="ir-overview"] .ir-news-grid article { min-height: 240px; padding-right: 0; }
  [data-page="ir-overview"] .ir-resource-grid { grid-template-columns: 1fr; }
  [data-page="ir-overview"] .ir-resource-grid a,
  [data-page="ir-overview"] .ir-resource-grid a:first-child,
  [data-page="ir-overview"] .ir-resource-grid a:nth-child(odd) { min-height: 170px; padding: 24px 0; border-top: 1px solid var(--gh-line); border-left: 0; }
  [data-page="ir-overview"] .ir-resource-grid a:first-child { border-top: 0; }
}

/* Events & Presentations */
[data-page="events-presentations"] :is(#upcoming, #featured, #past-events) { scroll-margin-top: calc(var(--gh-header-height) + 58px); }
.events-presentations-lead { padding-top: clamp(76px, 7vw, 116px); padding-bottom: clamp(76px, 7vw, 116px); }
.events-feature-grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); gap: clamp(64px, 8vw, 132px); }
.events-feature-grid > section { min-width: 0; }
.events-column-heading { margin: 0 0 clamp(42px, 4vw, 64px); color: var(--gh-white); font-size: var(--type-section); font-weight: 500; line-height: 1; letter-spacing: -.025em; }
.upcoming-event { padding: 26px 0 34px; border-top: 1px solid rgba(255, 255, 255, .24); }
.upcoming-event:last-child { border-bottom: 1px solid rgba(255, 255, 255, .24); }
.sample-label { margin: 0 0 13px; color: var(--gh-lime); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.event-date { margin: 0 0 9px; color: rgba(255, 255, 255, .64); font-size: var(--type-compact); }
.upcoming-event h3, .featured-presentation-meta h3 { margin: 0; color: var(--gh-white); font-size: var(--type-card); font-weight: 500; line-height: 1.15; }
.event-actions { display: flex; margin-top: 24px; flex-wrap: wrap; gap: 10px 24px; }
.event-actions a { color: var(--gh-white); font-size: var(--type-label); font-weight: 700; }
.event-actions a span { display: inline-block; margin-left: 7px; color: var(--gh-lime); transition: transform .2s ease; }
.event-actions a:hover, .event-actions a:focus-visible { color: var(--gh-lime); }
.event-actions a:hover span, .event-actions a:focus-visible span { transform: translateX(4px); }
.presentation-cover { position: relative; min-height: 330px; overflow: hidden; border: 1px solid rgba(255, 255, 255, .18); background: var(--gh-blue); isolation: isolate; }
.presentation-cover::before { position: absolute; z-index: -1; top: -36%; right: -12%; width: 78%; aspect-ratio: 1; border: 72px solid rgba(255, 255, 255, .14); border-radius: 50%; content: ""; }
.presentation-cover::after { position: absolute; z-index: -1; bottom: -28%; left: -12%; width: 72%; height: 70%; background: var(--gh-navy); content: ""; transform: skewY(-12deg); transform-origin: left bottom; }
.presentation-cover-mark { position: absolute; top: 30px; right: 32px; color: rgba(255, 255, 255, .85); font-size: 27px; font-weight: 700; letter-spacing: -.05em; }
.presentation-cover-label { position: absolute; top: 32px; left: 34px; color: var(--gh-lime); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.presentation-cover-title { position: absolute; z-index: 1; right: 34px; bottom: 34px; left: 34px; color: var(--gh-white); font-size: var(--type-section); font-weight: 500; line-height: .93; letter-spacing: -.035em; }
.presentation-cover-rule { position: absolute; z-index: 1; right: 34px; bottom: 21px; left: 34px; height: 3px; background: var(--gh-lime); }
.featured-presentation-meta { padding-top: 25px; }
.featured-presentation-meta .event-date { margin: 9px 0 0; }
.featured-presentation-meta .text-link { margin-top: 25px; }
.past-events-heading { display: grid; margin-bottom: clamp(38px, 4vw, 62px); grid-template-columns: minmax(0, 1fr) auto; gap: 52px; align-items: end; }
.past-events-heading .section-heading { margin-bottom: 24px; }
.past-events-heading .section-intro { margin-bottom: 0; font-size: var(--type-lead); }
.past-events-filter { display: flex; align-items: center; gap: 14px; }
.past-events-filter label { font-size: var(--type-label); font-weight: 700; white-space: nowrap; }
.past-events-filter select { min-width: 150px; min-height: 46px; padding: 0 42px 0 15px; border: 1px solid var(--gh-line); border-radius: 0; background-color: var(--gh-white); color: var(--gh-navy); font: inherit; font-size: var(--type-compact); }
.past-events-list { border-top: 1px solid var(--gh-line); }
.past-event { display: grid; padding: 25px 0; grid-template-columns: minmax(145px, .42fr) minmax(0, 1.5fr) auto; gap: 30px; align-items: center; border-bottom: 1px solid var(--gh-line); }
.past-event :is(p, h3) { margin: 0; }
.past-event-date { color: #65737a; font-size: var(--type-compact); }
.past-event h3 { font-size: var(--type-card); font-weight: 500; line-height: 1.25; }
.past-event > a { color: var(--gh-blue); font-size: var(--type-label); font-weight: 700; white-space: nowrap; }
.past-event > a span { display: inline-block; margin-left: 8px; transition: transform .2s ease; }
.past-event > a:hover span, .past-event > a:focus-visible span { transform: translateX(4px); }
.events-pagination { display: flex; margin-top: 34px; align-items: center; }
.events-pagination a { display: inline-flex; min-width: 42px; height: 42px; padding: 0 12px; align-items: center; justify-content: center; border: 1px solid var(--gh-line); border-right: 0; color: var(--gh-navy); font-size: 13px; font-weight: 700; }
.events-pagination a:last-child { border-right: 1px solid var(--gh-line); }
.events-pagination a:hover, .events-pagination a:focus-visible, .events-pagination .is-current { background: var(--gh-blue); color: var(--gh-white); }
.events-presentations-lead .events-column-heading,
.events-presentations-lead :is(.upcoming-event h3, .featured-presentation-meta h3) { color: var(--gh-navy); }
.events-presentations-lead :is(.upcoming-event, .events-featured, .presentation-cover) { border-color: var(--gh-line); }
.events-presentations-lead .sample-label,
.events-presentations-lead .featured-presentation-meta .text-link { color: var(--gh-blue); }
.events-presentations-lead .event-date { color: #65737a; }
.events-presentations-lead .event-actions a { color: var(--gh-navy); }
.events-presentations-lead .event-actions a:hover,
.events-presentations-lead .event-actions a:focus-visible { color: var(--gh-blue); }
.events-presentations-lead .featured-presentation-meta .text-link { display: inline-flex; }
.past-events-section :is(.past-events-list, .past-event) { border-color: rgba(255, 255, 255, .22); }
.past-events-section .past-event-date { color: rgba(255, 255, 255, .64); }
.past-events-section .past-event > a { color: var(--gh-lime); }
.past-events-section .events-pagination a { border-color: rgba(255, 255, 255, .28); color: var(--gh-white); }
.past-events-section .events-pagination a:last-child { border-right-color: rgba(255, 255, 255, .28); }
.events-alert-closing { background: var(--gh-paper); }
@media (min-width: 992px) {
  [data-page="events-presentations"] .events-alert-closing .next-step-layout { height: 500px; }
}
.legacy-route { min-height: 70vh; padding-top: calc(var(--gh-header-height) + 100px); }

@media (max-width: 991.98px) {
  .events-feature-grid { grid-template-columns: 1fr; gap: 74px; }
  .events-featured { padding-top: 66px; border-top: 1px solid rgba(255, 255, 255, .24); }
  .presentation-cover { min-height: 0; aspect-ratio: 16 / 9; }
  .past-events-heading { grid-template-columns: 1fr; gap: 34px; align-items: start; }
  .past-events-filter { justify-content: flex-start; }
  .past-event { grid-template-columns: 1fr auto; gap: 10px 24px; }
  .past-event-date { grid-column: 1 / -1; }
}

@media (max-width: 575.98px) {
  .event-actions { flex-direction: column; align-items: flex-start; gap: 14px; }
  .presentation-cover-mark { top: 22px; right: 22px; }
  .presentation-cover-label { top: 24px; left: 22px; }
  .presentation-cover-title { right: 22px; bottom: 28px; left: 22px; font-size: 38px; }
  .presentation-cover-rule { right: 22px; bottom: 16px; left: 22px; }
  .past-events-filter { align-items: flex-start; flex-direction: column; }
  .past-events-filter select { width: 100%; }
  .past-event { grid-template-columns: 1fr; padding: 23px 0; }
  .past-event-date { grid-column: auto; }
  .past-event > a { margin-top: 8px; justify-self: start; }
}

@media (max-width: 991.98px) {
  :root { --gh-header-height: 74px; }
  .site-shell { padding-right: 22px; padding-left: 22px; }
  .purity-layout { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .supply-layout { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .supply-heading .section-kicker, .supply-heading .section-heading { max-width: 60%; }
  .supply-heading .section-heading { font-size: var(--type-section); white-space: normal; }
  .supply-bottle-image { top: 0; bottom: -44px; left: auto; width: 38%; }
  .supply-bottle-image img { object-position: center bottom; }
  .purity-editorial .section-heading { margin-bottom: 28px; }
  .purity-editorial .section-intro { margin-bottom: 52px; }
  .purity-row { padding: 30px 0 34px; grid-template-columns: 42px minmax(0, 1fr); align-items: start; gap: 12px 18px; }
  .purity-tier-number { grid-row: 1 / span 2; padding-top: 5px; }
  .purity-row h3, .purity-row p { grid-column: 2; }
  .navbar-container-ir { min-height: 74px; }
  .navbar-brand { width: 145px; }
  .navbar-collapse { padding: 18px 0 28px; }
  .navbar-nav-ir { gap: 0; }
  .navbar-nav-ir .nav-link { padding: 14px 0; border-bottom: 1px solid rgba(255, 255, 255, .14); }
  .investor-mega-menu { max-height: calc(100dvh - 150px); overflow-y: auto; box-shadow: none; }
  .investor-mega-inner { padding: 4px 18px 10px; }
  .investor-mega-grid { grid-template-columns: 1fr; }
  .investor-mega-group, .investor-mega-group:first-child, .investor-mega-group:last-child { padding: 16px 0; border-top: 1px solid var(--gh-line); border-left: 0; }
  .investor-mega-group:first-child { border-top: 0; }
  .investor-mega-links { margin-top: 13px; gap: 0; }
  .investor-mega-links a { padding: 9px 0 9px 14px; }
  .hero::after { background: rgba(8, 27, 36, .72); }
  .mission { padding: 112px 0; }
  .momentum { padding-top: 90px; padding-bottom: 100px; }
  .mission-feature { grid-template-columns: 1fr; gap: var(--editorial-gutter); }
  .mission-feature .mission-image { width: 100%; }
  .validator-logo { min-height: 112px; padding: 20px 16px; }
  .funding-acknowledgement { min-height: 100px; }
  .closed-loop-intro, .output-cards { width: 100%; }
  .closed-loop-intro { min-height: auto; padding: 0; border-right: 0; border-bottom: 1px solid var(--gh-line); }
  .closed-loop-content { padding: 90px 22px 70px; }
  .output-card { min-height: 430px; padding: 50px 22px; }
  .output-card p { min-height: 0; }
  .output-link-row { --output-link-gutter: 22px; }
  .closing-copy { min-height: auto; padding: 90px 22px; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .25); }
  .closing-copy h2 { margin-top: 0; }
  .closing-paths a { min-height: 250px; padding-right: 22px; padding-left: 22px; }
  .site-footer { padding: 70px 0 24px; }
}

@media (max-width: 767.98px) {
  :root { --type-page: clamp(50px, 12vw, 72px); --type-section: clamp(40px, 10vw, 56px); --type-card: clamp(22px, 5.5vw, 28px); --type-technical: clamp(18px, 5vw, 20px); }
  .next-step-topographic .next-step-media { display: none; }
  .output-card { min-height: 0; padding: 36px 22px 40px; }
  .output-card.justify-content-end { justify-content: flex-start !important; }
  .output-icon { margin-bottom: 32px; }
  .output-card h3 { margin-bottom: 12px; }
  .output-card p { line-height: 1.5; }
  .closing-copy { padding-top: 64px; padding-bottom: 64px; flex-direction: column; align-items: flex-start; gap: 24px; }
  .closing-copy h2, .closing-copy p { width: 100%; max-width: none; }
  .closing-copy p { margin: 0; font-size: 15px; line-height: 1.55; }
  .closing-paths a { min-height: 116px; padding: 28px 22px; }
  .mission-headline { margin-bottom: clamp(40px, 6vw, 64px); }
  .mission-headline h2 { font-size: clamp(36px, 9vw, 50px); }
  .validator-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .validator-logo img { max-height: 68px; }
  .funding-acknowledgement { min-height: 0; padding: 32px 22px 36px; }
  .funding-acknowledgement__inner { width: 100%; flex-direction: column; gap: 20px; text-align: center; }
  .funding-acknowledgement img { flex: none; width: min(100%, 420px); max-width: 100%; height: auto; }
  .closed-loop-content { padding-bottom: 32px; }
  .closed-loop-intro h2 { margin-bottom: 0; }
  .home-process { min-height: 0; padding-top: 60px; padding-bottom: 0; }
  .home-process-layout { min-height: 0; grid-template-columns: 1fr; gap: 44px; }
  .home-process-copy { padding-top: 0; }
  .home-process-copy .section-kicker { margin-bottom: 28px; }
  .home-process-copy h2 { font-size: var(--type-section); }
  .home-process-subhead { margin: 32px 0 24px; font-size: var(--type-lead); }
  .home-process-body { padding-top: 24px; }
  .home-process-body p { font-size: var(--type-body); line-height: 1.58; }
  .process-provenance { gap: 14px; }
  .process-provenance-icon { width: 50px; height: 50px; flex-basis: 50px; }
  .process-provenance p { font-size: 10px; letter-spacing: .11em; }
  .process-diagram { display: flex; flex-direction: column; gap: 8px; }
  .process-stage-1 { order: 1; }
  .process-stage-2 { order: 2; }
  .process-output-label { min-height: 0; margin: 22px 0 8px; order: 3; }
  .process-stage-3 { order: 4; }
  .process-stage-4 { order: 5; }
  .process-stage { height: auto; min-height: 0; padding: 28px 24px; }
  .process-stage-3 { padding: 0; }
  .process-stage-1 > .process-card, .process-stage-2 > .process-card, .process-stage-4 > .process-card { display: grid; margin-top: 12px; grid-template-columns: 58px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 18px; }
  .process-stage-1 .process-icon, .process-stage-2 .process-icon, .process-stage-4 .process-icon { grid-area: 1 / 1 / 3 / 2; width: 54px; height: 50px; margin: 0; }
  .process-stage-1 h3, .process-stage-2 h3, .process-stage-4 h3 { grid-area: 1 / 2; margin-bottom: 8px; font-size: 20px; }
  .process-stage-1 p, .process-stage-2 p, .process-stage-4 p { grid-area: 2 / 2; font-size: 13px; }
  .process-stage-heading { min-height: 0; margin-bottom: 8px; }
  .process-stage-outputs { gap: 8px; }
  .process-stage-outputs .process-card { display: grid; min-height: 0; padding: 28px 24px; flex-basis: auto; grid-template-columns: 58px minmax(0, 1fr); grid-template-rows: auto auto auto; column-gap: 18px; }
  .process-stage-outputs .process-icon { grid-area: 1 / 1 / 4 / 2; width: 50px; height: 46px; margin: 0; }
  .process-stage-outputs .process-number { grid-area: 1 / 2; margin-bottom: 7px; font-size: 10px; }
  .process-stage-outputs .process-card h3 { grid-area: 2 / 2; margin-bottom: 8px; font-size: 20px; }
  .process-stage-outputs .process-card p { grid-area: 3 / 2; font-size: 13px; }
  .process-summary-band { margin-top: 38px; padding-top: 30px; padding-bottom: 30px; }
  .process-summary-inner { grid-template-columns: 1fr; gap: 28px; }
  .process-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 18px; }
  .process-benefits li { padding: 0 12px; gap: 10px; font-size: 11px; }
  .process-benefits li:nth-child(odd) { padding-left: 0; border-left: 0; }
  .process-benefits li:nth-child(even) { padding-right: 0; border-left: 1px solid rgba(255, 255, 255, .18); }
  .process-benefits li:nth-child(n + 3) { padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .12); }
  .process-benefit-icon { width: 42px; height: 42px; flex-basis: 42px; }
}

@media (max-width: 575.98px) {
  h1 { font-size: var(--type-page); }
  .navbar-nav-ir .nav-link, .dropdown-menu .dropdown-item, .investor-mega-heading, .investor-mega-links a { font-size: var(--type-nav-mobile); }
  .site-footer { padding-top: 48px; }
  .footer-top.gy-5 { --bs-gutter-y: 30px; }
  .footer-nav.g-4 { --bs-gutter-y: 18px; }
  .footer-nav .footer-primary { margin-bottom: 10px; }
  .footer-nav .footer-primary:last-child { margin-bottom: 0; }
  .footer-nav .footer-children a { margin-bottom: 7px; }
  .footer-utility { margin-top: 48px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
  .site-plus { opacity: 1 !important; animation: none !important; }
  [data-home-parallax] > .hero-video { transform: scale(1.08) !important; will-change: auto; }
  [data-home-parallax] .hero-copy > *, [data-home-parallax] .scroll-cue, .editorial-reveal-text { opacity: 1 !important; clip-path: none !important; transform: none !important; }
  .reaction-column { opacity: 1 !important; transform: none !important; }
  .capacity-rail::before { transform: none !important; }
  .capacity-stage, .installation-system { opacity: 1 !important; transform: none !important; }
  .primary-cta:hover > span, .primary-cta:focus-visible > span { transform: none; }
  button:hover > span[aria-hidden="true"], button:focus-visible > span[aria-hidden="true"] { transform: none; }
  .reveal-item { opacity: 1 !important; transform: none !important; }
  [data-constraint-parallax] img { transform: translateY(-8px) !important; will-change: auto; }
  [data-commercial-reactor-parallax] img { transform: translate3d(0, -50%, 0) !important; will-change: auto; }
  [data-support-parallax] > img { transform: none !important; will-change: auto; }
}

/* Deployment-page editorial system */
:is([data-page="hamilton"], [data-page="data-centres"], [data-page="industrial"], [data-page="off-grid"]) .deployment-split,
:is([data-page="data-centres"], [data-page="off-grid"]) .deployment-paths {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--editorial-gutter);
  align-items: start;
}

:is([data-page="hamilton"], [data-page="data-centres"], [data-page="industrial"], [data-page="off-grid"]) .deployment-heading .section-heading,
:is([data-page="data-centres"], [data-page="off-grid"]) .deployment-paths-intro .section-heading {
  margin-bottom: 0;
}

:is([data-page="data-centres"], [data-page="off-grid"]) .deployment-paths-intro .section-intro {
  max-width: 560px;
  margin: clamp(34px, 4vw, 58px) 0 0;
}

/* Hamilton */
[data-page="hamilton"] #site .row,
[data-page="hamilton"] #feedstock .row,
[data-page="hamilton"] .deployment-output .row {
  align-items: start;
}

[data-page="hamilton"] .image-band {
  height: clamp(380px, 28vw, 440px);
  min-height: 0;
}

[data-page="hamilton"] .image-band video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: saturate(.78) contrast(1.05);
}

[data-page="hamilton"] #site .site-facts {
  border-top: 0;
}

[data-page="hamilton"] #site .hamilton-site-copy .site-facts {
  margin-top: clamp(14px, 2.5vw, 34px);
  margin-bottom: 0;
}

[data-page="hamilton"] #site .hamilton-site-plan {
  overflow: hidden;
  margin: 0;
  padding: 0;
  aspect-ratio: 954 / 1079;
  background: var(--gh-paper);
}

[data-page="hamilton"] #site .hamilton-site-plan img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 992px) {
  [data-page="hamilton"] #site .row { align-items: flex-end; }
  [data-page="hamilton"] #site .hamilton-site-plan { width: 37.5%; margin-left: auto; flex: 0 0 37.5%; }
}

[data-page="hamilton"] #site .site-fact {
  padding: 17px 20px;
  border-bottom: 0;
}

[data-page="hamilton"] #site .site-fact:nth-child(odd) {
  background: rgba(13, 32, 41, .035);
}

[data-page="hamilton"] #site .hamilton-site-copy .site-fact {
  padding-top: 11px;
  padding-bottom: 11px;
}

[data-page="hamilton"] #feedstock { padding-top: clamp(84px, 7vw, 100px); padding-bottom: clamp(56px, 5vw, 72px); }
[data-page="hamilton"] #feedstock .feedstock-copy .body-copy { max-width: 590px; }
[data-page="hamilton"] #feedstock .feedstock-bag-image { width: min(100%, 420px); margin: 0 auto; }
[data-page="hamilton"] #feedstock .feedstock-bag-image img { display: block; width: 100%; height: auto; }

[data-page="hamilton"] .deployment-output .section-heading {
  max-width: 620px;
  margin-bottom: 30px;
  font-size: var(--type-section);
}

[data-page="hamilton"] .deployment-output .status-line {
  display: block;
  max-width: 520px;
  margin: 0;
  padding: 17px 0 0;
  border-top: 2px solid var(--gh-lime);
  border-left: 0;
  background: transparent;
  line-height: 1.5;
}

[data-page="hamilton"] .deployment-output .body-copy > p:first-child {
  margin-top: 2px;
}

[data-page="hamilton"] .deployment-output .spec-table {
  overflow: hidden;
  border: 0;
}

[data-page="hamilton"] .deployment-output .spec-table th,
[data-page="hamilton"] .deployment-output .spec-table td {
  padding: 14px 16px;
  border: 0;
}

[data-page="hamilton"] .deployment-output .spec-table > :not(caption) > *,
[data-page="hamilton"] .deployment-output .spec-table > :not(caption) > * > * {
  border: 0 !important;
}

[data-page="hamilton"] .deployment-output .spec-table,
[data-page="hamilton"] .deployment-output .spec-table tbody,
[data-page="hamilton"] .deployment-output .spec-table tr,
[data-page="hamilton"] .deployment-output .spec-table th,
[data-page="hamilton"] .deployment-output .spec-table td {
  border: 0 !important;
  box-shadow: none !important;
}

[data-page="hamilton"] .deployment-output .spec-table th,
[data-page="hamilton"] .deployment-output .spec-table td {
  background: transparent !important;
}

[data-page="hamilton"] .deployment-output .spec-table tr:nth-child(odd) {
  background: rgba(13, 32, 41, .045);
}

[data-page="hamilton"] .deployment-output.is-dark .spec-table tr:nth-child(odd) {
  background: rgba(0, 0, 0, .14);
}

[data-page="hamilton"] #next-deployments .related-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(32px, 4vw, 68px);
  border: 0;
}

[data-page="hamilton"] #next-deployments .related-card {
  display: grid;
  min-height: 0;
  padding: 24px 0 8px;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: start;
  border: 0;
  border-top: 1px solid var(--gh-line);
  background: transparent;
}

[data-page="hamilton"] #next-deployments .related-card:hover,
[data-page="hamilton"] #next-deployments .related-card:focus-visible {
  background: transparent;
  color: var(--gh-lime);
}

[data-page="hamilton"] #next-deployments .related-card {
  border-top-color: rgba(255, 255, 255, .24);
  color: var(--gh-white);
}

[data-page="hamilton"] #next-deployments .related-card p {
  color: rgba(255, 255, 255, .68);
}

[data-page="hamilton"] #next-deployments .related-card > span {
  margin-top: 3px;
  align-self: start;
  color: var(--gh-lime);
}

[data-page="hamilton"] #next-deployments {
  padding-bottom: clamp(68px, 6vw, 96px);
}

/* Data centres */
[data-page="data-centres"] #phasing .scale-steps {
  gap: 6px;
  background: transparent;
}

[data-page="data-centres"] #phasing .scale-step {
  min-height: 235px;
  padding: 34px;
  background: #091820;
}

[data-page="data-centres"] #phasing .scale-step strong {
  margin-bottom: 58px;
}

[data-page="data-centres"] #roles .roles-grid,
[data-page="data-centres"] #surplus .path-grid,
[data-page="off-grid"] #logistics .logistics-grid {
  grid-template-columns: 1fr;
  border: 0;
  border-top: 1px solid var(--gh-line);
}

[data-page="data-centres"] #roles .role-card,
[data-page="data-centres"] #surplus .path-card,
[data-page="off-grid"] #logistics .logistics-card {
  min-height: 0;
  padding: clamp(34px, 3.5vw, 52px) 0;
  border: 0;
  border-bottom: 1px solid var(--gh-line);
  background: transparent;
}

[data-page="data-centres"] #roles .role-card h3,
[data-page="data-centres"] #surplus .path-card h3,
[data-page="off-grid"] #logistics .logistics-card h3 {
  font-size: var(--type-card);
}

[data-page="data-centres"] #surplus .path-label {
  margin-bottom: 24px;
}

[data-page="data-centres"] #surplus .path-grid,
[data-page="data-centres"] #surplus .path-card {
  border-color: rgba(255, 255, 255, .22);
}

[data-page="data-centres"] #surplus .path-card h3 {
  color: var(--gh-white);
}

[data-page="data-centres"] #surplus .path-card p {
  color: rgba(255, 255, 255, .68);
}

[data-page="data-centres"] #requirements .body-copy strong {
  display: block;
  margin-top: clamp(38px, 4vw, 58px);
  padding-top: 22px;
  border-top: 2px solid var(--gh-lime);
  font-size: var(--type-technical);
  line-height: 1.45;
}

@media (min-width: 992px) {
  [data-page="data-centres"] #constraint .body-copy {
    padding-top: 63px;
  }
}

[data-page="data-centres"] #constraint .constraint-image-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(8px, 1vw, 16px);
  margin-top: clamp(48px, 5vw, 76px);
}

[data-page="data-centres"] #constraint .constraint-image-row figure {
  position: relative;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 8 / 5;
}

[data-page="data-centres"] #constraint .constraint-image-row img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: calc(100% + 16px);
  object-fit: cover;
  object-position: right center;
  transform: translateY(calc(-8px + var(--constraint-parallax-y, 0px)));
  will-change: transform;
}

@media (max-width: 991.98px) {
  [data-page="data-centres"] #constraint .constraint-image-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  [data-page="data-centres"] #constraint .constraint-image-row {
    grid-template-columns: 1fr;
  }
}

/* Industrial co-location */
[data-page="industrial"] #byoe .commercial-reactor-image {
  --reactor-parallax-travel: 340px;
  position: relative;
  height: clamp(280px, 30vw, 380px);
  margin: clamp(48px, 5vw, 76px) 0 0;
  overflow: hidden;
}

[data-page="industrial"] #byoe .commercial-reactor-image img {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 100%;
  height: calc(100% + var(--reactor-parallax-travel));
  object-fit: cover;
  object-position: center;
  transform: translate3d(0, calc(-50% + var(--reactor-parallax-y, 0px)), 0);
  will-change: transform;
}

@media (max-width: 991.98px) {
  [data-page="industrial"] #byoe .commercial-reactor-image {
    --reactor-parallax-travel: 220px;
  }
}

@media (max-width: 575.98px) {
  [data-page="industrial"] #byoe .commercial-reactor-image {
    --reactor-parallax-travel: 128px;
    height: clamp(220px, 56vw, 300px);
  }
}

[data-page="industrial"] #facilities .archetype-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 1.7vw, 32px);
  border: 0;
}

[data-page="industrial"] #facilities .archetype-card {
  min-height: 0;
  padding: 28px 0 0;
  border: 0;
  border-top: 1px solid var(--gh-line);
  background: transparent;
}

[data-page="industrial"] #facilities .archetype-card h3 {
  font-size: var(--type-card);
}

[data-page="industrial"] #economics .body-copy {
  max-width: 980px;
}

[data-page="industrial"] #economics .cash-flow {
  margin: clamp(54px, 6vw, 90px) 0;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, .22);
  border-bottom: 1px solid rgba(255, 255, 255, .22);
}

[data-page="industrial"] #economics .cash-flow > div {
  min-height: 175px;
  padding: 28px 0;
}

[data-page="industrial"] #economics .cash-flow .flow-arrow {
  min-height: 175px;
  padding: 0 clamp(20px, 3vw, 50px);
  border: 0;
}

[data-page="industrial"] #on-site .site-facts {
  border-top: 0;
}

[data-page="industrial"] #on-site .industrial-on-site-image {
  width: 90%;
  margin: 0;
}

[data-page="industrial"] #on-site .industrial-on-site-image img {
  display: block;
  width: 100%;
  aspect-ratio: 5 / 3;
  object-fit: cover;
}

[data-page="industrial"] #on-site .site-fact {
  padding: 17px 20px;
  border-bottom: 0;
}

[data-page="industrial"] #on-site .site-fact:nth-child(odd) {
  background: rgba(13, 32, 41, .035);
}

/* Off-grid, northern and defence */
[data-page="off-grid"] #diesel .row {
  align-items: center;
}

[data-page="off-grid"] #diesel .section-heading {
  margin-bottom: 32px;
}

[data-page="off-grid"] #diesel .diesel-copy p:last-child {
  margin-bottom: 0;
}

[data-page="off-grid"] #diesel .diesel-image {
  width: 100%;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

[data-page="off-grid"] #diesel .diesel-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

[data-page="off-grid"] #hardening .row {
  align-items: center;
}

[data-page="off-grid"] #hardening .section-heading {
  margin-bottom: 32px;
}

@media (max-width: 991.98px) {
  [data-page="off-grid"] #hardening .hardening-title-break {
    display: none;
  }
}

[data-page="off-grid"] #hardening .hardening-copy p:last-child {
  margin-bottom: 0;
}

[data-page="off-grid"] #hardening .hardening-image {
  width: 100%;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

[data-page="off-grid"] #hardening .hardening-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

[data-page="off-grid"] #defence .defence-submarine-image {
  width: 82.5%;
  margin: clamp(30px, 3vw, 46px) 0 0;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

[data-page="off-grid"] #defence .defence-submarine-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 992px) {
  [data-page="off-grid"] #defence .row > .col-lg-6:first-child {
    display: flex;
    flex-direction: column;
  }

  [data-page="off-grid"] #defence .defence-submarine-image {
    margin-top: auto;
  }
}

[data-page="off-grid"] #north .stats-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, .22);
}

[data-page="off-grid"] #north .stat-card {
  min-height: 230px;
  padding: 34px clamp(22px, 2.5vw, 40px);
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, .22);
}

[data-page="off-grid"] #north .stat-card:first-child {
  padding-left: 0;
}

[data-page="off-grid"] #north .stat-card:last-child {
  padding-right: 0;
  border-right: 0;
}

[data-page="off-grid"] #north .stat-card strong {
  margin-bottom: 44px;
  font-size: clamp(48px, 5vw, 78px);
}

[data-page="off-grid"] #north .mandate-callout {
  margin-top: clamp(34px, 4vw, 58px);
  padding: clamp(30px, 3.5vw, 52px);
  border-left: 3px solid var(--gh-lime);
  background: #091820;
}

[data-page="off-grid"] #logistics .logistics-card p {
  color: #4b5a61;
}

[data-page="off-grid"] #logistics .logistics-card h3 {
  color: var(--gh-navy);
}

[data-page="off-grid"] #communities .community-image {
  width: 100%;
  margin: 0;
  overflow: hidden;
  aspect-ratio: 12 / 5;
}

[data-page="off-grid"] #communities .community-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

[data-page="off-grid"] #communities .communities-copy {
  padding-top: clamp(24px, 2.5vw, 36px);
  border-top: 1px solid var(--gh-line);
}

[data-page="off-grid"] #communities .communities-copy p {
  margin-bottom: 0;
}

@media (max-width: 991.98px) {
  [data-page="off-grid"] #communities .community-image {
    aspect-ratio: 16 / 9;
  }

  [data-page="off-grid"] #communities .communities-title-break {
    display: none;
  }
}

/* Shared deployment closings */
:is([data-page="hamilton"], [data-page="data-centres"], [data-page="industrial"], [data-page="off-grid"]) .deployment-closing .next-step-content {
  padding-right: clamp(28px, 4vw, 64px);
}

[data-page="off-grid"] .deployment-closing .dual-cta {
  grid-template-columns: 1fr;
  gap: 0;
  border: 0;
  border-top: 1px solid var(--gh-line);
}

[data-page="off-grid"] .deployment-closing .dual-cta article {
  min-height: 0;
  padding: 24px 0;
  border: 0;
  border-bottom: 1px solid var(--gh-line);
}

[data-page="off-grid"] .deployment-closing .dual-cta h3 {
  margin-bottom: 8px;
  color: var(--gh-navy);
  font-size: var(--type-card);
}

[data-page="off-grid"] .deployment-closing .dual-cta p {
  margin-bottom: 20px;
  color: #4b5a61;
  font-size: var(--type-compact);
}

[data-page="off-grid"] .deployment-closing .dual-cta .primary-cta {
  min-width: min(100%, 250px);
}

[data-page="off-grid"] .deployment-closing .next-step-content {
  padding-top: 38px;
  padding-bottom: 38px;
}

[data-page="off-grid"] .deployment-closing .next-step-content > .section-heading {
  margin-bottom: 22px;
}

[data-page="off-grid"] .deployment-closing .dual-cta article {
  padding-top: 17px;
  padding-bottom: 17px;
}

[data-page="off-grid"] .deployment-closing .dual-cta p {
  margin-bottom: 12px;
}

@media (max-width: 1199.98px) {
  [data-page="industrial"] #facilities .archetype-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  :is([data-page="hamilton"], [data-page="data-centres"], [data-page="industrial"], [data-page="off-grid"]) .deployment-split,
  :is([data-page="data-centres"], [data-page="off-grid"]) .deployment-paths {
    grid-template-columns: 1fr;
    gap: var(--editorial-gutter);
  }

  [data-page="hamilton"] #next-deployments .related-grid,
  [data-page="industrial"] #facilities .archetype-grid,
  [data-page="off-grid"] #north .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  [data-page="off-grid"] #north .stat-card,
  [data-page="off-grid"] #north .stat-card:first-child,
  [data-page="off-grid"] #north .stat-card:last-child {
    padding: 30px 22px;
    border-right: 1px solid rgba(255, 255, 255, .22);
    border-bottom: 1px solid rgba(255, 255, 255, .22);
  }

  [data-page="off-grid"] #north .stat-card:nth-child(2n) {
    border-right: 0;
  }
}

@media (max-width: 575.98px) {
  [data-page="industrial"] #economics .cash-flow { margin: 36px 0; }
  [data-page="industrial"] #economics .cash-flow > div { min-height: 120px; padding: 18px 0; }
  [data-page="industrial"] #economics .cash-flow .flow-arrow { min-height: 32px; padding: 0; font-size: 22px; }
  [data-page="off-grid"] #defence .defence-submarine-image {
    width: 100%;
  }

  .about-company-image.about-company-image--wide { aspect-ratio: 1672 / 760; }
  .purity-market-map { grid-template-columns: 1fr; justify-items: center; }
  .purity-market-hub { width: 100px; height: 100px; }
  .purity-market-connectors { width: 1px; height: 28px; background: rgba(146, 192, 36, .58); }
  .purity-market-connectors path { display: none; }
  .purity-market-list { width: 100%; grid-template-rows: none; gap: 0; }
  .purity-market-list li { min-height: 76px; padding: 14px 0; }
  .purity-market-copy strong { font-size: var(--type-body); }
  [data-page="hamilton"] .image-band {
    height: 260px;
  }

  [data-page="hamilton"] #next-deployments .related-grid,
  [data-page="industrial"] #facilities .archetype-grid,
  [data-page="off-grid"] #north .stats-grid {
    grid-template-columns: 1fr;
  }

  [data-page="industrial"] #economics .cash-flow {
    grid-template-columns: 1fr;
  }

  [data-page="industrial"] #economics .cash-flow .flow-arrow {
    min-height: 50px;
    padding: 0;
    transform: rotate(90deg);
  }

  [data-page="off-grid"] #north .stat-card,
  [data-page="off-grid"] #north .stat-card:first-child,
  [data-page="off-grid"] #north .stat-card:last-child,
  [data-page="off-grid"] #north .stat-card:nth-child(2n) {
    padding: 28px 0;
    border-right: 0;
  }
}
