:root {
  --ink: #f3f5ed;
  --muted: #d4e4df;
  --copper: #a8d6c6;
  --panel: rgba(10, 42, 43, .88);
  --line: rgba(212, 236, 225, .3);
}
html, body { background: #092d30; }
a:focus-visible, video:focus-visible { outline-color: #bce9d8; }
.background-stage { background: #092d30; }
.background-shade { background: linear-gradient(180deg, rgba(5, 17, 18, .30), rgba(5, 17, 18, .27) 45%, rgba(3, 20, 22, .68)), linear-gradient(90deg, rgba(4, 30, 32, .16), rgba(6, 26, 28, .02)); }
.site-header { width: min(1320px, calc(100% - 80px)); min-height: 108px; border-color: rgba(205, 235, 221, .45); }
.wordmark { letter-spacing: .2em; }
.site-header nav { gap: 40px; }
.site-header nav a { color: #f0f6ef; }
.site-header nav a:hover, .text-link:hover, .underlined-link:hover { color: #c3ecdc; }
.header-cta { border-color: #afd6c7; color: #e4f2e9; padding: 13px 22px; }
.hero { width: min(1320px, calc(100% - 80px)); min-height: 830px; padding: 96px 0 175px; flex-direction: column; justify-content: center; align-items: center; text-align: center; }
.hero-copy { width: min(880px, 100%); }
.hero .eyebrow { justify-content: center; }
.eyebrow { color: #b9e3d2; }
h1 { max-width: none; font-size: clamp(3.8rem, 7.3vw, 7rem); line-height: 1.02; margin-bottom: 28px; }
h1 em, h2 em { color: #b6dfcd; }
.hero-lede { margin: 0 auto 32px; max-width: 690px; color: #eff3ec; }
.hero-actions { justify-content: center; gap: 30px; }
.button-light { background: #deefe1; color: #103c3c; }
.button-light span { color: #285b54; }
.text-link, .underlined-link { color: #e6f2e8; text-decoration-color: #a9cabd; }
.text-link span, .underlined-link span { color: #b6dfcd; }
.hero-note { bottom: 54px; right: 50%; transform: translateX(50%); width: 316px; padding: 17px 22px; text-align: left; background: rgba(6, 43, 46, .82); border-color: #b9e3d2; }
.js-sequence .hero-note { transform: translate(50%, 14px); }
.js-sequence.page-revealed .hero-note { transform: translate(50%, 0); }
.hero-note strong { color: #f5f7ed; }
.app-release-caption { color: #deebe2; }
.app-release-cta:hover { background: #124c4d; }
.scroll-cue { bottom: 22px; left: 50%; transform: translateX(-50%); white-space: nowrap; color: #d9ece3; }
.js-sequence .scroll-cue { transform: translate(-50%, 14px); }
.js-sequence.page-revealed .scroll-cue { transform: translate(-50%, 0); }
.section-wrap { width: min(1200px, calc(100% - 80px)); }
.approach { width: 100%; padding: 96px max(40px, calc((100% - 1200px) / 2)); background: #e9eee4; border: 0; color: #143b3b; }
.section-heading { max-width: none; display: grid; grid-template-columns: 1.25fr 1fr; column-gap: 85px; align-items: end; }
.section-heading .eyebrow { grid-column: 1 / -1; }
.section-heading h2 { margin: 0; font-size: clamp(2.7rem, 4.6vw, 4.25rem); }
.approach .eyebrow, .closing .eyebrow { color: #32675b; }
.approach h2 em, .closing h2 em { color: #317264; }
.section-intro { margin: 0; color: #34574e; }
.principles { margin-top: 55px; border-color: #a6bcb1; gap: 34px; }
.principles article, .principles article + article { padding: 25px 0; border: 0; }
.principles h3 { color: #173e3a; }
.principles p { color: #35554c; max-width: none; }
.story-section { padding: 100px 0; border-color: #a8cebe; grid-template-columns: 1.15fr 1fr; gap: 80px; }
.story-left .story-media { grid-column: 1; grid-row: 1; }
.story-left .story-copy { grid-column: 2; grid-row: 1; }
.story-right .story-media { grid-column: 2; grid-row: 1; }
.story-right .story-copy { grid-column: 1; grid-row: 1; }
.story-copy { max-width: none; }
.story-copy h2 { font-size: clamp(2.7rem, 4.2vw, 4.1rem); }
.story-copy > p:not(.eyebrow):not(.micro-note) { color: #deebe3; }
.micro-note { color: #d3e4d4; }
.media-frame { border-color: rgba(188, 221, 207, .6); box-shadow: 0 22px 60px rgba(0, 18, 24, .3); }
.support-band { width: 100%; padding: 95px max(40px, calc((100% - 1200px) / 2)); background: rgba(8, 49, 52, .30); border: 0; border-top: 1px solid #85b1a6; border-bottom: 1px solid #85b1a6; gap: 80px; }
.support-copy > p:not(.eyebrow) { color: #e0ece4; }
.support-callout { background: #1a4e4e; border-color: #b9deca; }
.support-callout p { color: #d9e9df; }
.support-callout strong { color: #f1f6eb; }
.closing { width: 100%; padding: 98px max(40px, calc((100% - 1200px) / 2)); background: #e9eee4; color: #143b3b; text-align: left; display: grid; grid-template-columns: .95fr 1.1fr; gap: 0 70px; }
.closing .eyebrow { grid-column: 1 / -1; justify-content: flex-start; }
.closing h2 { grid-column: 1; grid-row: 2 / 4; align-self: center; font-size: clamp(2.7rem, 4.2vw, 4.25rem); }
.app-intro { grid-column: 2; margin: 0 0 24px; color: #35594f; }
.app-features { grid-column: 2; grid-template-columns: 1fr; margin: 0 0 20px; gap: 0; }
.app-features article { padding: 17px 0; background: transparent; border-color: #a2b9ac; }
.app-features h3 { margin-bottom: 7px; }
.app-features p { color: #35594f; }
.app-actions { grid-column: 2; justify-content: flex-start; gap: 20px; }
.closing .button-light { background: #174e49; color: #f1f6e9; }
.closing .button-light span { color: #c6e7d2; }
.closing .text-link { color: #174e49; text-decoration-color: #527c68; }
.closing .text-link span { color: #326b59; }
.contact-address { grid-column: 2; color: #35594f; margin-top: 22px; }
.site-footer { width: min(1320px, calc(100% - 80px)); padding: 38px 0; grid-template-columns: 1fr 2fr; gap: 22px 50px; border: 0; }
.site-footer p { color: #dfebe3; font-size: .76rem; max-width: 680px; }
.footer-tag { grid-column: 1 / -1; text-align: left; color: #b9d8c7; padding-top: 16px; border-top: 1px solid #608d84; }
@media (max-width: 850px) {
  .site-header, .hero, .section-wrap, .site-footer { width: calc(100% - 48px); }
  .site-header nav { gap: 18px; }
  .hero { min-height: 810px; padding: 85px 0 180px; }
  .approach, .support-band, .closing { width: 100%; padding: 70px 24px; }
  .section-heading { gap: 0 35px; }
  .story-section { gap: 35px; padding: 75px 0; }
  .support-band { gap: 35px; }
  .closing { gap: 0 35px; }
  .site-footer p { grid-column: 2; grid-row: 1; }
}
@media (max-width: 620px) {
  .site-header, .hero, .section-wrap, .site-footer { width: calc(100% - 36px); }
  .site-header { min-height: 100px; padding: 20px 0 14px; }
  .header-cta { padding: 9px 12px; }
  .site-header nav { padding-top: 17px; }
  .hero { min-height: 790px; padding: 65px 0 195px; }
  .hero .eyebrow { font-size: .56rem; letter-spacing: .12em; }
  h1 { font-size: clamp(3.1rem, 14vw, 5rem); }
  .hero-lede { font-size: .96rem; }
  .hero-actions { align-items: center; gap: 19px; }
  .hero-note { width: min(316px, 100%); bottom: 68px; }
  .scroll-cue { bottom: 24px; font-size: .55rem; letter-spacing: .12em; }
  .approach, .support-band, .closing { width: 100%; padding: 62px 22px; }
  .section-heading { display: block; }
  .section-heading h2 { margin-bottom: 24px; }
  .principles { gap: 0; margin-top: 32px; }
  .principles article + article { border-top: 1px solid #a6bcb1; }
  .story-section, .story-right { grid-template-columns: 1fr; gap: 28px; padding: 62px 0; }
  .story-left .story-copy, .story-right .story-copy { grid-column: 1; grid-row: 1; }
  .story-left .story-media, .story-right .story-media { grid-column: 1; grid-row: 2; }
  .support-band { gap: 32px; }
  .closing { display: block; }
  .closing h2 { margin-bottom: 25px; }
  .app-intro { margin-bottom: 28px; }
  .app-actions { flex-direction: column; align-items: flex-start; }
  .site-footer { grid-template-columns: 1fr; padding: 35px 0 48px; }
  .site-footer p { grid-column: 1; grid-row: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-note { transform: translateX(50%) !important; }
  .scroll-cue { transform: translateX(-50%) !important; }
}
