@layer reset, tokens, base, header, opening, process, sections, footer, motion, responsive, reduced;

@view-transition { navigation: auto; }

::view-transition-group(sf-header) {
  z-index: 1000;
  animation-duration: 300ms;
  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}

::view-transition-old(root) { animation: prototype-route-old 190ms cubic-bezier(0.65, 0, 0.35, 1) both; }
::view-transition-new(root) { animation: prototype-route-new 440ms cubic-bezier(0.22, 1, 0.36, 1) both; }

@keyframes prototype-route-old { to { opacity: 0.32; transform: translateY(-0.35rem) scale(.998); } }
@keyframes prototype-route-new { from { opacity: 0.28; transform: translateY(0.45rem) scale(.998); } to { opacity: 1; transform: none; } }

@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  html { overflow-x: clip; scroll-behavior: auto; scrollbar-gutter: stable; }
  body, h1, h2, h3, p, figure, figcaption, dl, dd, ol, ul { margin: 0; }
  ol, ul { padding: 0; }
  img { display: block; max-width: 100%; }
  button, input, textarea, select { font: inherit; }
  a { color: inherit; }
}

@layer tokens {
  :root {
    color-scheme: light;
    --ink: #171b17;
    --ink-soft: #4c534b;
    --ink-faint: #747a72;
    --paper: #eee7da;
    --paper-light: #f5f0e7;
    --paper-deep: #ded4c3;
    --forest: #172019;
    --forest-soft: #243228;
    --forest-ink: #f2efe8;
    --forest-muted: #b8bcb3;
    --mist: #dfe3dc;
    --river: #cfd8d4;
    --ember: #c94722;
    --ember-dark: #9d3217;
    --line: rgba(23, 27, 23, 0.2);
    --line-light: rgba(242, 239, 232, 0.26);
    --font-sans: "Noto Sans SC", "Microsoft YaHei UI", "PingFang SC", system-ui, sans-serif;
    --font-reading: "Noto Serif SC", "Songti SC", SimSun, serif;
    --shell: 82rem;
    --gutter: clamp(1.25rem, 4vw, 4rem);
    --header-height: calc(5rem + env(safe-area-inset-top, 0px));
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --space-16: 4rem;
    --space-20: 5rem;
    --space-24: 6rem;
    --space-32: 8rem;
    --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
    --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  }
}

@layer base {
  body {
    min-width: 320px;
    overflow-x: clip;
    background: var(--paper-light);
    color: var(--ink);
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.75;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
  }

  body.menu-open { overflow: hidden; }
  ::selection { background: var(--ember); color: #fff; }
  [id] { scroll-margin-top: calc(var(--header-height) + var(--space-6)); }
  h1, h2, h3 { font-weight: 630; line-height: 1.08; letter-spacing: -0.06em; text-wrap: balance; }
  p, dd, li { overflow-wrap: anywhere; }
  a { text-underline-offset: 0.3em; text-decoration-thickness: 1px; }
  button, a { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
  a.is-pressed, button.is-pressed { filter: brightness(0.9); }
  :focus-visible { outline: 3px solid var(--ember); outline-offset: 5px; }

  .shell { width: min(calc(100% - (2 * var(--gutter))), var(--shell)); margin-inline: auto; }
  .section-label {
    color: var(--ember-dark);
    font-size: 0.76rem;
    font-weight: 760;
    letter-spacing: 0.18em;
  }
  .section-label--light { color: #e48365; }

  .skip-link {
    position: fixed;
    top: var(--space-4);
    left: var(--space-4);
    z-index: 200;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding-inline: var(--space-4);
    background: var(--paper-light);
    color: var(--ink);
    transform: translateY(-180%);
    transition: transform 180ms var(--ease-out);
  }
  .skip-link:focus { transform: translateY(0); }

  .line-link {
    width: fit-content;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: var(--space-4);
    color: var(--ink);
    font-size: 0.92rem;
    font-weight: 720;
    text-decoration: none;
  }
  .line-link i, .hero-link i, .final-cta a i {
    position: relative;
    width: 3.15rem;
    height: 1px;
    background: currentColor;
    transform: scaleX(0.825);
    transform-origin: left center;
    transition: transform 220ms var(--ease-out);
  }
  .line-link i::after, .hero-link i::after, .final-cta a i::after {
    content: "";
    position: absolute;
    top: -3px;
    right: 0;
    width: 7px;
    height: 7px;
    border-top: 1px solid currentColor;
    border-right: 1px solid currentColor;
    transform: rotate(45deg);
  }
  .line-link:hover i, .line-link:focus-visible i,
  .hero-link:hover i, .hero-link:focus-visible i,
  .final-cta a:hover i, .final-cta a:focus-visible i { transform: scaleX(1); }
  .line-link:active i, .hero-link:active i, .final-cta a:active i { transform: scaleX(0.66) translateX(0.14rem); }
  .line-link--light { color: var(--forest-ink); }
}

@layer header {
  .site-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 100;
    height: var(--header-height);
    color: var(--forest-ink);
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    isolation: isolate;
    background: linear-gradient(180deg, rgba(9, 14, 10, 0.42), rgba(9, 14, 10, 0));
    transform: translateY(0);
    transition: transform 420ms var(--ease-out);
    view-transition-name: sf-header;
  }
  .site-header.is-hidden { transform: translateY(-102%); }
  .site-header:focus-within { transform: translateY(0); }
  .site-header::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(238, 231, 218, 0.97);
    opacity: 0;
    transition: opacity 360ms var(--ease-out);
  }
  .site-header.is-paper {
    color: var(--ink);
    border-bottom-color: var(--line);
  }
  .site-header.is-paper::before { opacity: 1; }
  .header-inner {
    width: min(calc(100% - (2 * var(--gutter))), var(--shell));
    height: 100%;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: var(--space-8);
    margin-inline: auto;
    padding-top: env(safe-area-inset-top, 0px);
  }
  .wordmark, .footer-wordmark {
    font-size: 1.35rem;
    font-weight: 720;
    letter-spacing: -0.08em;
    text-decoration: none;
  }
  .wordmark::after {
    content: "";
    display: block;
    width: 1.25rem;
    height: 2px;
    margin-top: 0.28rem;
    background: var(--ember);
  }
  .desktop-nav {
    display: flex;
    justify-content: flex-end;
    gap: clamp(1rem, 1.7vw, 2rem);
  }
  .desktop-nav a {
    position: relative;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    font-size: clamp(0.75rem, 0.82vw, 0.88rem);
    font-weight: 540;
    white-space: nowrap;
    text-decoration: none;
  }
  .desktop-nav a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0.6rem;
    left: 0;
    height: 2px;
    background: var(--ember);
    transform: scaleX(0);
    transform-origin: right;
    transition: transform 220ms var(--ease-out);
  }
  .desktop-nav a:hover::after, .desktop-nav a:focus-visible::after,
  .desktop-nav a[aria-current="page"]::after { transform: scaleX(1); transform-origin: left; }

  .menu-toggle {
    display: none;
    width: 52px;
    min-height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
  }
  .menu-toggle span { font-size: 0.8rem; }
  .menu-toggle i, .menu-toggle i::after {
    display: block;
    width: 1.5rem;
    height: 1px;
    margin-left: auto;
    background: currentColor;
    transition: transform 220ms var(--ease-out);
  }
  .menu-toggle i::after { content: ""; transform: translateY(0.38rem); }
  .menu-toggle[aria-expanded="true"] i { transform: translateY(0.2rem) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] i::after { transform: rotate(-90deg); }

  .mobile-menu {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: calc(100dvh - var(--header-height));
    z-index: 99;
    display: grid;
    align-content: start;
    gap: 0;
    padding:
      var(--space-6)
      max(var(--gutter), env(safe-area-inset-right, 0px))
      calc(var(--space-12) + env(safe-area-inset-bottom, 0px))
      max(var(--gutter), env(safe-area-inset-left, 0px));
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--paper);
    color: var(--ink);
  }
  .mobile-menu[hidden] { display: none; }
  .mobile-menu a {
    min-height: 3.8rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--line);
    font-size: 1.12rem;
    text-decoration: none;
  }
  .mobile-menu a[aria-current="page"]::after { content: "当前"; color: var(--ember-dark); font-size: 0.74rem; }
  .mobile-menu a:hover, .mobile-menu a:focus-visible { color: var(--ember-dark); }
  .mobile-menu .mobile-menu-cta { margin-top: var(--space-8); border: 1px solid var(--ink); padding-inline: var(--space-5); }
}

body main {
  transform-origin: 50% 24%;
  transition: opacity 220ms var(--ease-in-out), transform 260ms var(--ease-in-out);
}

body.is-route-leaving main {
  opacity: 0.22;
  transform: translateY(-0.35rem) scale(.998);
  pointer-events: none;
}

@layer opening {
  .opening {
    position: relative;
    z-index: 2;
    background: var(--forest);
    color: var(--forest-ink);
  }
  .opening-sticky { position: relative; min-height: 100svh; overflow: clip; isolation: isolate; }
  .hero-media { position: absolute; inset: 0; z-index: -4; overflow: hidden; background: #263227; }
  .hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transform-origin: 58% 51%;
  }
  .hero-caption {
    position: absolute;
    z-index: 2;
    right: var(--gutter);
    bottom: 1.35rem;
    max-width: 28rem;
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.68rem;
    letter-spacing: 0.04em;
    text-align: right;
  }
  .hero-shade {
    position: absolute;
    inset: 0;
    z-index: -3;
    background:
      linear-gradient(90deg, rgba(7, 12, 8, 0.76) 0%, rgba(7, 12, 8, 0.42) 31%, rgba(7, 12, 8, 0.05) 62%),
      linear-gradient(180deg, rgba(6, 11, 7, 0.2) 0%, rgba(6, 11, 7, 0.03) 52%, rgba(6, 11, 7, 0.44) 100%);
  }
  .light-seam {
    position: absolute;
    z-index: -2;
    top: -12vh;
    left: 71.5%;
    width: 1px;
    height: 112vh;
    background: linear-gradient(180deg, transparent, rgba(255, 232, 194, 0.24) 34%, rgba(255, 243, 218, 0.44) 68%, transparent);
    box-shadow: 0 0 12px rgba(255, 226, 176, 0.12);
    transform: rotate(7deg);
    transform-origin: center;
    opacity: 0.22;
  }
  .hero-content {
    position: relative;
    z-index: 2;
    min-height: 100svh;
    width: min(calc(100% - (2 * var(--gutter))), var(--shell));
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    margin-inline: auto;
    padding-top: var(--header-height);
    transform-origin: left center;
  }
  .hero-content h1 {
    display: flex;
    flex-wrap: nowrap;
    gap: clamp(1.6rem, 3vw, 3.25rem);
    max-width: none;
    color: #fff;
    font-size: clamp(3.6rem, 5.75vw, 6.15rem);
    font-weight: 600;
    line-height: 0.98;
    letter-spacing: -0.075em;
    text-shadow: 0 3px 24px rgba(0, 0, 0, 0.28);
    white-space: nowrap;
  }
  .hero-content > p {
    margin-top: clamp(1.6rem, 3vh, 2.5rem);
    color: rgba(255, 255, 255, 0.88);
    font-family: var(--font-reading);
    font-size: clamp(1.05rem, 1.45vw, 1.4rem);
    letter-spacing: 0.15em;
  }
  .hero-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: var(--space-4);
    margin-top: clamp(2.5rem, 5vh, 4rem);
    color: #f3653e;
    font-size: 0.95rem;
    font-weight: 690;
    text-decoration: none;
  }
  .scroll-cue {
    position: absolute;
    right: var(--gutter);
    bottom: 4.75rem;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.7rem;
    letter-spacing: 0.18em;
    writing-mode: vertical-rl;
  }
  .scroll-cue span { width: 1px; height: 2.2rem; background: rgba(255, 255, 255, 0.48); }

  .focus-toggle {
    position: absolute;
    z-index: 3;
    bottom: 1.4rem;
    left: var(--gutter);
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: var(--space-3);
    padding: 0;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.74);
    font-size: 0.7rem;
    letter-spacing: 0.12em;
    cursor: pointer;
  }
  .focus-toggle i {
    width: 1.8rem;
    height: 0.76rem;
    border: 1px solid currentColor;
    border-radius: 50%;
    transform-origin: center;
    transition: transform 180ms var(--ease-out), opacity 180ms var(--ease-out);
  }
  .focus-toggle i::after {
    content: "";
    display: block;
    width: 0.28rem;
    height: 0.28rem;
    margin: 0.19rem auto 0;
    border-radius: 50%;
    background: currentColor;
    transition: transform 240ms var(--ease-out);
  }
  .focus-toggle:hover, .focus-toggle:focus-visible, .focus-toggle[aria-pressed="true"] { color: #fff; }
  .focus-toggle:active i { transform: scaleX(0.86); }
  .focus-toggle[aria-pressed="true"] i::after { transform: scale(1.7); }

  .paper-wave {
    position: relative;
    z-index: 4;
    min-height: clamp(25rem, 44svh, 34rem);
    display: flex;
    align-items: center;
    margin-top: clamp(-7.5rem, -9svh, -4.75rem);
    padding: clamp(7rem, 10svh, 9rem) var(--gutter) clamp(5rem, 8svh, 7rem);
    border-radius: 50% 50% 0 0 / 7rem 7rem 0 0;
    background-color: var(--paper);
    background-image:
      radial-gradient(circle at 18% 20%, rgba(116, 88, 52, 0.045) 0 1px, transparent 1.4px),
      radial-gradient(circle at 74% 60%, rgba(255, 255, 255, 0.2) 0 1px, transparent 1.6px),
      linear-gradient(115deg, rgba(255, 255, 255, 0.18), transparent 34%, rgba(91, 67, 37, 0.03));
    background-size: 23px 23px, 31px 31px, auto;
    color: var(--ink);
    box-shadow: 0 -1px 0 rgba(255, 228, 187, 0.92), 0 -12px 38px rgba(255, 218, 160, 0.08);
  }
  .paper-wave-line {
    position: absolute;
    top: 0.05rem;
    left: 11%;
    width: 78%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 235, 201, 0.9) 22%, #fff1d6 55%, transparent);
    box-shadow: 0 0 12px rgba(255, 224, 175, 0.32);
  }
  .paper-wave-copy { width: min(calc(100% - (2 * var(--gutter))), var(--shell)); margin-inline: auto; }
  .paper-wave-copy span {
    display: block;
    color: var(--ember-dark);
    font-size: 0.76rem;
    font-weight: 740;
    letter-spacing: 0.18em;
  }
  .paper-wave-copy strong {
    display: block;
    max-width: 58rem;
    margin-top: var(--space-6);
    font-size: clamp(2.2rem, 4.3vw, 4.7rem);
    font-weight: 520;
    line-height: 1.12;
    letter-spacing: -0.065em;
  }
}

@layer process {
  .process-section { position: relative; z-index: 3; background: var(--paper); }
  .process-aperture {
    display: none;
  }
  .process-aperture::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(13, 18, 14, 0.05), rgba(13, 18, 14, 0.3));
  }
  .process-aperture span {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 70%;
    width: 1px;
    height: 100%;
    background: linear-gradient(180deg, transparent, rgba(255, 235, 201, 0.86), transparent);
    transform: rotate(5deg);
  }
  .paper-surface {
    position: relative;
    margin-top: 0;
    padding: clamp(6.5rem, 9vw, 9.5rem) 0 clamp(6.5rem, 9vw, 9.5rem);
    border-radius: 0;
    background-color: var(--paper);
    background-image:
      radial-gradient(circle at 18% 20%, rgba(116, 88, 52, 0.045) 0 1px, transparent 1.4px),
      radial-gradient(circle at 74% 60%, rgba(255, 255, 255, 0.2) 0 1px, transparent 1.6px),
      linear-gradient(115deg, rgba(255, 255, 255, 0.18), transparent 34%, rgba(91, 67, 37, 0.03));
    background-size: 23px 23px, 31px 31px, auto;
    box-shadow: none;
  }
  .process-heading {
    display: grid;
    grid-template-columns: minmax(0, 1.42fr) minmax(17rem, 0.58fr);
    gap: clamp(3rem, 8vw, 9rem);
    align-items: end;
  }
  .process-heading h2 {
    max-width: 15ch;
    margin-top: var(--space-5);
    font-size: clamp(2.8rem, 5.6vw, 6rem);
    font-weight: 510;
  }
  .process-intro { padding-bottom: 0.5rem; color: var(--ink-soft); font-size: 1.04rem; line-height: 2; }

  .workflow { position: relative; max-width: 70rem; margin-top: clamp(6rem, 9vw, 9rem); }
  .workflow-path { position: absolute; inset: 0 auto 0 50%; width: 12rem; height: 100%; overflow: visible; transform: translateX(-50%); }
  .workflow-path path { fill: none; stroke-width: 1.2; vector-effect: non-scaling-stroke; }
  .workflow-path-track { stroke: rgba(23, 27, 23, 0.13); }
  .workflow-path-progress {
    stroke: rgba(157, 50, 23, 0.72);
    path-length: 1;
    stroke-dasharray: 1;
    stroke-dashoffset: calc(1 - var(--workflow-progress, 0.16));
  }
  .workflow ol { position: relative; list-style: none; }
  .workflow li {
    position: relative;
    width: 43%;
    min-height: 13rem;
    display: grid;
    grid-template-columns: 1.25rem 1fr;
    gap: var(--space-6);
    align-items: start;
  }
  .workflow li:nth-child(even) { margin-left: auto; }
  .workflow li + li { margin-top: clamp(1.5rem, 3.5vw, 3.5rem); }
  .workflow-mark {
    width: 0.82rem;
    height: 0.82rem;
    margin-top: 0.45rem;
    border: 1px solid var(--ember-dark);
    border-radius: 50%;
    background: var(--paper);
    box-shadow: 0 0 0 0.34rem rgba(201, 71, 34, 0.08);
    transition: transform 220ms var(--ease-out);
  }
  .workflow span { color: var(--ember-dark); font-size: 0.76rem; font-weight: 740; letter-spacing: 0.16em; }
  .workflow h3 { max-width: 16ch; margin-top: var(--space-4); font-size: clamp(1.65rem, 2.5vw, 2.65rem); font-weight: 560; }
  .workflow-step {
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    text-align: left;
    cursor: pointer;
    transition: transform 120ms var(--ease-out);
  }
  .workflow-step:hover, .workflow-step:focus-visible { color: var(--ember-dark); }
  .workflow-step:active { transform: translateY(1px) scale(0.992); }
  .workflow p { max-width: 31rem; margin-top: var(--space-5); color: var(--ink-soft); line-height: 1.95; }
  .workflow li { opacity: 0.62; transition: opacity 420ms var(--ease-out), transform 520ms var(--ease-out); }
  .workflow li.is-active { opacity: 1; transform: translate3d(0, -0.22rem, 0); }
  .workflow li.is-active .workflow-mark { background: var(--ember); box-shadow: 0 0 0 0.58rem rgba(201, 71, 34, 0.1); transform: scale(1.08); }
  .workflow li.is-active p { color: var(--ink); }
  .process-action { display: flex; justify-content: flex-end; margin-top: clamp(4rem, 7vw, 6.5rem); }
}

@layer sections {
  .human-section {
    min-height: 72svh;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(24rem, 0.92fr);
    background: #141814;
    color: var(--forest-ink);
  }
  .human-media { position: relative; min-height: 40rem; overflow: hidden; }
  .human-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 58%, #141814 100%); }
  .human-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(0.72) contrast(1.04) brightness(0.76); }
  .human-media > p {
    position: absolute;
    z-index: 2;
    bottom: var(--space-6);
    left: var(--gutter);
    max-width: 26rem;
    color: rgba(255, 255, 255, 0.66);
    font-size: 0.7rem;
    letter-spacing: 0.04em;
  }
  .human-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: clamp(5rem, 8vw, 9rem) var(--gutter) clamp(5rem, 8vw, 9rem) clamp(2rem, 6vw, 7rem);
  }
  .human-copy h2 { max-width: 11ch; margin-top: var(--space-6); font-size: clamp(2.7rem, 4.8vw, 5.3rem); font-weight: 500; }
  .human-copy > p:not(.section-label) { max-width: 33rem; margin-top: var(--space-10); color: var(--forest-muted); font-size: 1.04rem; line-height: 2; }
  .human-copy .line-link { margin-top: var(--space-12); }

  .delivery-section {
    position: relative;
    overflow: hidden;
    padding: clamp(6.5rem, 9vw, 9.5rem) 0;
    background:
      radial-gradient(circle at 77% 18%, rgba(207, 216, 212, 0.34), transparent 28rem),
      var(--paper-light);
  }
  .delivery-section::before {
    content: "";
    position: absolute;
    top: -30rem;
    left: 38%;
    width: 56rem;
    height: 56rem;
    border: 1px solid rgba(157, 50, 23, 0.13);
    border-radius: 50%;
    pointer-events: none;
  }
  .delivery-heading { position: relative; display: grid; grid-template-columns: 0.3fr 1fr; gap: var(--space-12); align-items: start; }
  .delivery-heading h2 { max-width: 18ch; font-size: clamp(2.8rem, 4.55vw, 5rem); font-weight: 500; }
  .delivery-heading h2 span, .ai-heading h2 span { display: block; }
  .delivery-flow { position: relative; margin-top: clamp(5rem, 7vw, 7rem); }
  .delivery-flow ol {
    position: relative;
    display: grid;
    grid-template-columns: 1.08fr 0.92fr 1fr;
    gap: clamp(2rem, 5vw, 6rem);
    list-style: none;
  }
  .delivery-flow ol::before { content: ""; position: absolute; top: 0; right: 0; left: 0; height: 1px; background: var(--line); }
  .delivery-flow li { position: relative; padding-top: var(--space-8); }
  .delivery-flow li::before { content: ""; position: absolute; top: -3px; left: 0; width: 7px; height: 7px; border-radius: 50%; background: var(--ember); }
  .delivery-flow li:nth-child(2) { margin-top: 2.75rem; }
  .delivery-flow li:nth-child(3) { margin-top: 0.8rem; }
  .delivery-flow span { font-size: clamp(1.45rem, 2.1vw, 2.3rem); font-weight: 590; letter-spacing: -0.05em; }
  .delivery-flow p { max-width: 25rem; margin-top: var(--space-5); color: var(--ink-soft); }

  .ai-section {
    position: relative;
    padding: clamp(6.5rem, 9vw, 9.5rem) 0;
    background:
      linear-gradient(90deg, rgba(255,255,255,0.14), transparent 48%),
      var(--mist);
  }
  .ai-section::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - 1px);
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(23, 27, 23, 0.12) 22%, rgba(23, 27, 23, 0.12) 78%, transparent);
    pointer-events: none;
  }
  .ai-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(24rem, 0.98fr); gap: clamp(4rem, 9vw, 9rem); }
  .ai-heading h2 { max-width: none; margin-top: var(--space-6); font-size: clamp(2.8rem, 4.6vw, 4.125rem); font-weight: 500; }
  .ai-heading h2 span { white-space: nowrap; }
  .ai-copy { padding-top: clamp(0.5rem, 4vw, 3.5rem); }
  .ai-copy > p { max-width: 39rem; font-size: 1.05rem; line-height: 2; }
  .ai-copy dl { margin-top: var(--space-12); border-top: 1px solid var(--line); }
  .ai-copy dl div { display: grid; grid-template-columns: 8rem 1fr; gap: var(--space-6); padding: var(--space-6) 0; border-bottom: 1px solid var(--line); }
  .ai-copy dt { font-weight: 720; }
  .ai-copy dd { color: var(--ink-soft); }
  .ai-copy .line-link { margin-top: var(--space-10); }

  .about-section { position: relative; overflow: hidden; padding: clamp(7rem, 10vw, 10rem) 0 clamp(6rem, 8vw, 8rem); background: var(--forest-soft); color: var(--forest-ink); }
  .about-field { position: absolute; inset: 0; overflow: hidden; opacity: 0.42; pointer-events: none; }
  .about-field span { position: absolute; left: -10%; width: 120%; height: 1px; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent); transform: rotate(-7deg); }
  .about-field span:nth-child(1) { top: 22%; }
  .about-field span:nth-child(2) { top: 53%; transform: rotate(4deg); }
  .about-field span:nth-child(3) { top: 78%; transform: rotate(-2deg); }
  .about-grid { position: relative; display: grid; grid-template-columns: 0.42fr 1fr; gap: clamp(4rem, 10vw, 10rem); }
  .about-kicker { color: #e6d8c4; font-family: var(--font-reading); font-size: clamp(1rem, 1.6vw, 1.35rem); line-height: 2; letter-spacing: 0.08em; }
  .about-grid h2 { max-width: 14ch; font-size: clamp(2.8rem, 5.2vw, 5.8rem); font-weight: 500; }
  .about-grid h2 + p { max-width: 45rem; margin-top: var(--space-12); color: var(--forest-muted); font-size: 1.08rem; line-height: 2; }
  .about-legal { max-width: 43rem; margin-top: var(--space-6); color: rgba(242, 239, 232, 0.6); font-size: 0.82rem; }
  .about-links { display: flex; flex-wrap: wrap; gap: var(--space-8); margin-top: var(--space-12); }
  .about-links .line-link { color: var(--forest-ink); }

  .boundary-section { padding: clamp(3.5rem, 5vw, 5rem) 0 clamp(5rem, 7vw, 7rem); border-top: 1px solid var(--line-light); background: var(--forest-soft); color: var(--forest-ink); }
  .boundary-grid { display: grid; grid-template-columns: 0.28fr 1fr; gap: var(--space-12); align-items: start; }
  .boundary-grid > p { color: #e48365; font-size: 0.76rem; font-weight: 730; letter-spacing: 0.16em; }
  .boundary-grid h2 { max-width: 22ch; font-size: clamp(2rem, 3.3vw, 3.65rem); font-weight: 480; }
  .boundary-grid ul { grid-column: 2; display: flex; flex-wrap: wrap; gap: var(--space-3) var(--space-8); margin-top: var(--space-8); list-style: none; color: var(--forest-muted); }
  .boundary-grid li { display: inline-flex; align-items: center; gap: var(--space-3); font-size: 0.82rem; }
  .boundary-grid li::before { content: ""; width: 1.5rem; height: 1px; background: var(--line-light); }

  .final-cta {
    position: relative;
    z-index: 2;
    margin-top: -2.75rem;
    padding: clamp(8rem, 11vw, 11rem) 0 clamp(7rem, 10vw, 10rem);
    border-radius: 50% 50% 0 0 / 2.75rem 2.75rem 0 0;
    background: var(--paper);
  }
  .final-cta::before { content: ""; position: absolute; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg, transparent, rgba(157,50,23,0.32), transparent); }
  .final-cta-inner { display: grid; grid-template-columns: 0.33fr 1fr; gap: var(--space-12); align-items: end; }
  .final-cta-inner > p { align-self: start; color: var(--ink-soft); }
  .final-cta h2 { max-width: 12ch; font-size: clamp(3.2rem, 6.5vw, 7.2rem); font-weight: 500; line-height: 0.98; }
  .final-cta a {
    grid-column: 2;
    width: fit-content;
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    gap: var(--space-5);
    margin-top: var(--space-6);
    color: var(--ember-dark);
    font-size: 1rem;
    font-weight: 740;
    text-decoration: none;
  }
}

@layer footer {
  .site-footer { padding: var(--space-20) 0 var(--space-8); background: #101410; color: var(--forest-ink); }
  .footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, minmax(8.5rem, 0.65fr)); gap: clamp(2rem, 5vw, 5rem); }
  .footer-intro p { max-width: 25rem; margin-top: var(--space-6); color: var(--forest-muted); }
  .footer-intro span { display: block; margin-top: var(--space-3); color: rgba(242, 239, 232, 0.55); font-size: 0.76rem; }
  .footer-grid h2 { margin-bottom: var(--space-5); font-size: 0.76rem; font-weight: 720; letter-spacing: 0.14em; }
  .footer-grid > div:not(.footer-intro) { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
  .footer-grid a, .footer-grid span { color: var(--forest-muted); font-size: 0.78rem; text-decoration: none; }
  .footer-grid a { min-height: 30px; display: inline-flex; align-items: center; }
  .footer-grid a:hover, .footer-grid a:focus-visible { color: var(--forest-ink); }
  .footer-bottom { display: flex; justify-content: space-between; gap: var(--space-8); margin-top: var(--space-16); padding-top: var(--space-6); border-top: 1px solid var(--line-light); }
  .footer-bottom p { color: rgba(242, 239, 232, 0.5); font-size: 0.7rem; }
}

@layer motion {
  @media screen {
    .js.motion-ready .opening:not(.is-entered) .hero-media img {
      transform: scale(1.045);
      opacity: 0.78;
    }
    .js.motion-ready .opening:not(.is-entered) .hero-shade { opacity: 0.88; }
    .js.motion-ready .opening:not(.is-entered) .hero-content h1 span {
      opacity: 0.001;
      transform: translate3d(0, 1.3em, 0);
    }
    .js.motion-ready .opening:not(.is-entered) .hero-content > p,
    .js.motion-ready .opening:not(.is-entered) .hero-link,
    .js.motion-ready .opening:not(.is-entered) .scroll-cue,
    .js.motion-ready .opening:not(.is-entered) .focus-toggle,
    .js.motion-ready .opening:not(.is-entered) .hero-caption { opacity: 0.001; transform: translate3d(0, 0.75rem, 0); }

    .opening .hero-media img { transition: opacity 760ms var(--ease-out), transform 1100ms var(--ease-out); }
    .opening .hero-shade { transition: opacity 760ms var(--ease-out); }
    .opening .hero-content h1 span {
      transition: opacity 520ms var(--ease-out), transform 900ms var(--ease-out);
    }
    .opening .hero-content h1 span:nth-child(2) { transition-delay: 110ms; }
    .opening .hero-content > p { transition: opacity 540ms 260ms var(--ease-out), transform 680ms 260ms var(--ease-out); }
    .opening .hero-link { transition: opacity 520ms 340ms var(--ease-out), transform 640ms 340ms var(--ease-out); }
    .opening .scroll-cue, .opening .focus-toggle, .opening .hero-caption { transition: opacity 480ms 420ms var(--ease-out), transform 620ms 420ms var(--ease-out); }
    html:not([data-motion-quality="reduced"]) .opening.is-entered .scroll-cue span {
      animation: scroll-cue-breathe 1800ms 760ms var(--ease-in-out) infinite;
      transform-origin: center;
    }

    .opening.is-leaving .hero-media img { opacity: 0.82; transform: scale(1.018); }
    .opening.is-leaving .hero-content { transform: translate3d(0, -0.8rem, 0); opacity: 0.76; }
    .opening.is-leaving .hero-content > p, .opening.is-leaving .hero-link, .opening.is-leaving .scroll-cue, .opening.is-leaving .focus-toggle { opacity: 0.08; }
    .opening.is-focused .hero-media img { opacity: 1; transform: scale(1.065); }
    .opening.is-focused .hero-shade { opacity: 0.62; }
    .hero-content { transition: opacity 420ms var(--ease-out), transform 520ms var(--ease-out); }

    .js.motion-ready .paper-wave:not(.is-visible) { opacity: 0.001; transform: translate3d(0, 2.1rem, 0); }
    .paper-wave { transition: opacity 420ms var(--ease-out), transform 620ms var(--ease-out); }
    .paper-wave-line { transform-origin: center; transition: transform 720ms 240ms var(--ease-out), opacity 480ms var(--ease-out); }
    .js.motion-ready .paper-wave:not(.is-visible) .paper-wave-line { opacity: 0; transform: scaleX(0.18); }
    .paper-wave-copy span, .paper-wave-copy strong { transition: opacity 520ms var(--ease-out), transform 680ms var(--ease-out); }
    .js.motion-ready .paper-wave:not(.is-visible) .paper-wave-copy span,
    .js.motion-ready .paper-wave:not(.is-visible) .paper-wave-copy strong { opacity: 0.001; transform: translate3d(0, 1rem, 0); }
    .paper-wave-copy strong { transition-delay: 120ms; }

    .js.motion-ready [data-motion-enter]:not(.is-visible) > * { opacity: 0.001; transform: translate3d(0, 1.35rem, 0); }
    [data-motion-enter] > * { transition: opacity 600ms var(--ease-out), transform 720ms var(--ease-out); }
    [data-motion-enter] > *:nth-child(2) { transition-delay: 120ms; }

    .human-media[data-image-reveal] {
      opacity: 0.72;
      transform: scale(1.018);
      transform-origin: center;
      transition: opacity 820ms var(--ease-out), transform 820ms var(--ease-out);
    }
    .human-media[data-image-reveal].is-visible { opacity: 1; transform: none; }

    [data-section-motion] .section-label,
    [data-section-motion] h2,
    [data-section-motion] h2 span,
    [data-section-motion] .delivery-flow li,
    [data-section-motion] .ai-copy > p,
    [data-section-motion] .ai-copy dl > div,
    [data-section-motion] .ai-copy .line-link,
    [data-section-motion] .about-kicker,
    [data-section-motion] .about-grid > div > p,
    [data-section-motion] .about-links,
    [data-section-motion] .boundary-grid > p,
    [data-section-motion] .boundary-grid li,
    [data-section-motion] .final-cta-inner > p,
    [data-section-motion] .final-cta-inner > a,
    [data-section-motion] .footer-grid > *,
    [data-section-motion] .footer-bottom {
      transition: opacity 720ms var(--ease-out), transform 880ms var(--ease-out);
    }

    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .section-label,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) h2,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .delivery-flow li,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .ai-copy > p,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .ai-copy dl > div,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .ai-copy .line-link,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .about-kicker,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .about-grid > div > p,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .about-links,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .boundary-grid > p,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .boundary-grid li,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .final-cta-inner > p,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .final-cta-inner > a,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .footer-grid > *,
    .js.motion-ready [data-section-motion]:not(.is-motion-visible) .footer-bottom {
      opacity: .001;
      transform: translate3d(0, 1.15rem, 0);
    }

    .js.motion-ready [data-section-motion]:not(.is-motion-visible) h2 {
      transform: translate3d(0, 1.45rem, 0) scale(.992);
    }

    [data-section-motion] .delivery-flow li:nth-child(2),
    [data-section-motion] .ai-copy dl > div:nth-child(2),
    [data-section-motion] .boundary-grid li:nth-child(2) { transition-delay: 75ms; }
    [data-section-motion] .delivery-flow li:nth-child(3),
    [data-section-motion] .ai-copy dl > div:nth-child(3),
    [data-section-motion] .boundary-grid li:nth-child(3) { transition-delay: 140ms; }
    [data-section-motion] .boundary-grid li:nth-child(4) { transition-delay: 205ms; }
    [data-section-motion] .footer-grid > :nth-child(2) { transition-delay: 55ms; }
    [data-section-motion] .footer-grid > :nth-child(3) { transition-delay: 110ms; }
    [data-section-motion] .footer-grid > :nth-child(4) { transition-delay: 165ms; }
    [data-section-motion] .footer-bottom { transition-delay: 205ms; }

    .delivery-flow ol::before { transform: scaleX(.08); transform-origin: left; transition: transform 920ms var(--ease-out); }
    .delivery-section.is-motion-visible .delivery-flow ol::before { transform: scaleX(1); }
    .about-field span { opacity: .12; transition: opacity 880ms ease, transform 1100ms var(--ease-out); }
    .about-section.is-motion-visible .about-field span { opacity: 1; }
    .about-section.is-motion-visible .about-field span:nth-child(1) { transform: rotate(-7deg) translateX(2%); }
    .about-section.is-motion-visible .about-field span:nth-child(2) { transform: rotate(4deg) translateX(-2%); }
    .about-section.is-motion-visible .about-field span:nth-child(3) { transform: rotate(-2deg) translateX(1%); }

    .mobile-menu:not([hidden]) { animation: menu-surface-in 420ms var(--ease-out) both; }
    .mobile-menu:not([hidden]) a { animation: menu-link-in 420ms var(--ease-out) both; }
    .mobile-menu:not([hidden]) a:nth-child(2) { animation-delay: 35ms; }
    .mobile-menu:not([hidden]) a:nth-child(3) { animation-delay: 70ms; }
    .mobile-menu:not([hidden]) a:nth-child(4) { animation-delay: 105ms; }
    .mobile-menu:not([hidden]) a:nth-child(5) { animation-delay: 140ms; }
    .mobile-menu:not([hidden]) a:nth-child(6) { animation-delay: 175ms; }
    .mobile-menu:not([hidden]) a:nth-child(7) { animation-delay: 210ms; }
    .mobile-menu:not([hidden]) a:nth-child(8) { animation-delay: 245ms; }
    .mobile-menu.is-closing { animation: menu-surface-out 260ms var(--ease-in-out) both; }
    .mobile-menu.is-closing a { animation: none; opacity: 0.44; transition: opacity 160ms var(--ease-out); }
  }

  @keyframes menu-surface-in { from { opacity: 0; transform: translate3d(0, -0.75rem, 0); } to { opacity: 1; transform: none; } }
  @keyframes menu-surface-out { from { opacity: 1; transform: none; } to { opacity: 0; transform: translate3d(0, -0.75rem, 0); } }
  @keyframes menu-link-in { from { opacity: 0; transform: translate3d(0, 0.7rem, 0); } to { opacity: 1; transform: none; } }
  @keyframes scroll-cue-breathe {
    0%, 100% { opacity: 0.4; transform: scaleY(0.64); }
    50% { opacity: 1; transform: scaleY(1); }
  }
}

@media (update: none) {
  [data-section-motion],
  [data-section-motion] * {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}

@layer responsive {
  @media (max-width: 1120px) {
    .desktop-nav { display: none; }
    .menu-toggle { display: grid; align-content: center; gap: 0.16rem; }
    .human-section { grid-template-columns: 1fr 0.9fr; }
  }

  @media (max-width: 800px) {
    :root { --header-height: calc(4.25rem + env(safe-area-inset-top, 0px)); --gutter: clamp(1.15rem, 5vw, 1.6rem); }
    html { scroll-behavior: auto; scrollbar-gutter: auto; }
    .site-header { background: linear-gradient(180deg, rgba(8, 13, 9, 0.58), transparent); }
    .header-inner { gap: var(--space-4); }
    .wordmark { font-size: 1.22rem; }

    .opening-sticky { min-height: 78svh; overflow: hidden; }
    .hero-media { height: 78svh; }
    .hero-media img { object-position: 61% center; }
    .hero-shade {
      height: 78svh;
      background: linear-gradient(180deg, rgba(7, 12, 8, 0.16), rgba(7, 12, 8, 0.18) 34%, rgba(7, 12, 8, 0.82) 100%);
    }
    .light-seam { top: -6svh; left: 68%; height: 82svh; opacity: 0.18; }
    .hero-content {
      min-height: 78svh;
      justify-content: flex-end;
      padding: calc(var(--header-height) + var(--space-8)) 0 clamp(7rem, 16svh, 9rem);
    }
    .hero-content h1 { display: flex; gap: 0.35em; font-size: clamp(2.3rem, 10.8vw, 2.75rem); line-height: 1; white-space: nowrap; }
    .hero-content h1 span { display: inline; }
    .hero-content > p { margin-top: var(--space-6); font-size: 0.98rem; letter-spacing: 0.12em; }
    .hero-link { margin-top: var(--space-6); }
    .hero-caption { right: var(--gutter); bottom: 6.75rem; left: var(--gutter); color: rgba(255, 255, 255, 0.78); text-align: left; text-shadow: 0 1px 8px rgba(0, 0, 0, 0.72); }
    .scroll-cue {
      right: var(--gutter);
      bottom: 4.65rem;
      z-index: 5;
      display: flex;
      flex-direction: row-reverse;
      writing-mode: horizontal-tb;
    }
    .scroll-cue span { width: 1.8rem; height: 1px; }
    .focus-toggle { bottom: 4.25rem; z-index: 5; display: inline-flex; }

    .paper-wave {
      position: relative;
      right: auto;
      bottom: auto;
      left: auto;
      min-height: 28rem;
      display: block;
      margin-top: -4.25rem;
      padding: 8.5rem var(--gutter) 5rem;
      border-radius: 50% 50% 0 0 / 4.25rem 4.25rem 0 0;
    }
    .paper-wave-copy { width: 100%; }
    .paper-wave-copy strong { margin-top: var(--space-5); font-size: clamp(2rem, 8.8vw, 2.7rem); }

    .paper-surface { margin-top: 0; padding: 5.5rem 0 6rem; border-radius: 0; }
    .process-heading { grid-template-columns: 1fr; gap: var(--space-8); }
    .process-heading h2 { font-size: clamp(2.65rem, 12vw, 4rem); }
    .process-intro { max-width: 36rem; }
    .workflow { margin-top: 4.75rem; padding-left: 1rem; }
    .workflow-path { left: 0.45rem; width: 2rem; transform: none; }
    .workflow-path path { d: path("M 18 0 C 18 220 18 420 18 860"); }
    .workflow li, .workflow li:nth-child(even) { width: 100%; min-height: 0; margin-left: 0; opacity: 0.74; }
    .workflow li.is-active { opacity: 1; }
    .workflow li + li { margin-top: 3.5rem; }
    .workflow h3 { font-size: clamp(1.65rem, 7.2vw, 2.25rem); }
    .workflow p { line-height: 1.85; }
    .process-action { justify-content: flex-start; margin-top: 4rem; }

    .human-section { grid-template-columns: 1fr; min-height: 0; }
    .human-media { min-height: 48svh; }
    .human-media::after { background: linear-gradient(180deg, transparent 58%, #141814 100%); }
    .human-media > p { right: var(--gutter); bottom: 1.15rem; }
    .human-copy { padding: 4.75rem var(--gutter) 5.75rem; }
    .human-copy h2 { font-size: clamp(2.7rem, 12vw, 4rem); }

    .delivery-heading { grid-template-columns: 1fr; gap: var(--space-6); }
    .delivery-section { padding: 5.5rem 0 6rem; }
    .delivery-section::before { top: -17rem; left: 28%; width: 34rem; height: 34rem; }
    .delivery-heading h2 { font-size: clamp(1.95rem, 9.3vw, 3.25rem); }
    .delivery-heading h2 span { white-space: nowrap; }
    .delivery-flow { margin-top: 4rem; }
    .delivery-flow ol { grid-template-columns: 1fr; gap: 0; }
    .delivery-flow ol::before { top: 0; bottom: 0; left: 0.2rem; width: 1px; height: auto; }
    .delivery-flow li, .delivery-flow li:nth-child(2), .delivery-flow li:nth-child(3) { margin-top: 0; padding: 0 0 3rem 2.3rem; }
    .delivery-flow li::before { top: 0.55rem; left: -0.02rem; }

    .ai-grid, .about-grid, .boundary-grid, .final-cta-inner { grid-template-columns: 1fr; }
    .ai-section { padding: 5.5rem 0 6rem; }
    .ai-section::after { display: none; }
    .ai-grid { gap: var(--space-10); }
    .ai-heading h2, .about-grid h2 { font-size: clamp(2.4rem, 10.2vw, 3.55rem); }
    .ai-heading h2 span { white-space: normal; }
    .ai-copy { padding-top: 0; }
    .ai-copy dl div { grid-template-columns: 1fr; gap: var(--space-2); }
    .about-section { padding: 6rem 0 5rem; }
    .about-grid { gap: var(--space-10); }
    .about-kicker { max-width: 24rem; }
    .about-links { display: grid; gap: var(--space-3); }
    .boundary-section { padding: 4rem 0 5rem; }
    .boundary-grid { gap: var(--space-5); }
    .boundary-grid h2 { font-size: clamp(1.9rem, 8.2vw, 2.8rem); }
    .boundary-grid ul { grid-column: 1; display: grid; margin-top: var(--space-5); }
    .final-cta-inner { gap: var(--space-6); }
    .final-cta { margin-top: -2rem; padding: 7rem 0 6.5rem; border-radius: 50% 50% 0 0 / 2rem 2rem 0 0; }
    .final-cta h2 { font-size: clamp(3rem, 12.8vw, 4.5rem); }
    .final-cta a { grid-column: 1; }

    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-intro { grid-column: 1 / -1; padding-bottom: var(--space-6); }
    .footer-bottom { flex-direction: column; }
  }

  @media (max-width: 430px) {
    .hero-content h1 { font-size: clamp(2.2rem, 10.6vw, 2.6rem); }
    .hero-content h1 span + span { margin-left: 0.8em; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-intro { grid-column: auto; }
  }
}

@layer reduced {
  @media (update: none) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
    .opening { height: auto !important; }
    .opening-sticky { position: relative !important; height: auto !important; min-height: auto; overflow: hidden; }
    .hero-media { height: 82svh; }
    .hero-content { min-height: 82svh; justify-content: flex-end; padding-bottom: 8rem; transform: none !important; }
    .hero-media img { transform: none !important; filter: none !important; }
    .hero-content > p, .hero-link, .hero-caption, .scroll-cue { opacity: 1 !important; }
    .paper-wave {
      position: relative;
      right: auto;
      bottom: auto;
      left: auto;
      min-height: 27rem;
      margin-top: -4rem;
      padding: 8rem var(--gutter) 5rem;
      transform: none !important;
    }
    .paper-wave-copy { width: 100%; opacity: 1 !important; transform: none !important; }
    .human-media[data-image-reveal] { clip-path: none !important; }
    .workflow li { opacity: 1 !important; transform: none !important; }
    .workflow-path-progress { stroke-dashoffset: 0 !important; }
  }
}

@media print {
  .site-header, .scroll-cue, .menu-toggle { display: none !important; }
  .opening, .human-section, .about-section, .boundary-section, .site-footer { color: #000; background: #fff; }
  .opening { height: auto !important; }
  .opening-sticky, .hero-content { min-height: 0; }
  .hero-media, .hero-shade, .light-seam, .hero-caption, .paper-wave, .process-aperture, .human-media, .about-field { display: none; }
  .hero-content { padding: 3rem 0; color: #000; }
  .hero-content h1 { color: #000; text-shadow: none; }
  a { text-decoration: underline; }
}
