:root {
  --ink: #111414;
  --ink-soft: #1d2222;
  --silver: #bfc5c2;
  --offwhite: #e8e8e1;
  --signal: #d6f03a;
  --line: rgba(232, 232, 225, .22);
  --display: "Barlow Condensed", sans-serif;
  --body: "Manrope", sans-serif;
  --mono: "DM Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--offwhite); background: var(--ink); font-family: var(--body); }
button, a { font: inherit; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
.site-grain { position: fixed; inset: 0; z-index: 20; pointer-events: none; opacity: .17; mix-blend-mode: soft-light; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E"); }

.site-header { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 0 clamp(1.5rem, 4.25vw, 5rem); position: absolute; z-index: 10; inset: 0 0 auto; transition: background .25s ease, height .25s ease; }
.site-header.is-scrolled { position: fixed; height: 66px; background: rgba(17, 20, 20, .9); backdrop-filter: blur(18px); border-bottom: 1px solid var(--line); }
.brand img, .footer-brand img { display: block; width: 145px; max-height: 35px; object-fit: contain; object-position: left center; }
.site-header nav { display: flex; gap: clamp(1rem, 2.8vw, 3.2rem); margin-left: auto; }
.site-header nav a, .header-cta, .scroll-cue, .profile-caption, .layout-tag, .section-number, .card-number, .unit, footer { font-family: var(--mono); font-size: .63rem; letter-spacing: .11em; text-transform: uppercase; }
.site-header nav a { opacity: .74; transition: opacity .2s ease; }
.site-header nav a:hover { opacity: 1; }
.header-cta { display: flex; gap: .7rem; align-items: center; padding: .8rem 1rem; border: 1px solid var(--line); transition: border-color .2s, background .2s; }
.header-cta:hover { border-color: var(--signal); background: var(--signal); color: var(--ink); }
.header-cta span { font-size: 1.1rem; line-height: 0; }

.hero { min-height: 860px; height: 100svh; position: relative; overflow: hidden; background: #1c2020; }
.hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 51% 46%, rgba(215, 240, 58, .15), transparent 26%), linear-gradient(115deg, #111 7%, transparent 55%), linear-gradient(0deg, #111 0%, transparent 38%); z-index: 2; pointer-events: none; }
.hero::after { content: ""; position: absolute; z-index: 1; height: 1px; width: 100%; bottom: 119px; background: var(--line); }
.hero-copy { position: absolute; z-index: 3; top: 19.5%; left: clamp(1.5rem, 8.3vw, 10rem); width: min(580px, 52vw); }
.eyebrow { display: flex; align-items: center; gap: .65rem; margin: 0 0 1.25rem; color: var(--signal); font: .67rem var(--mono); letter-spacing: .13em; text-transform: uppercase; }
.eyebrow > span:first-child { width: 25px; height: 1px; background: currentColor; }.typewriter { min-width: 12.5rem; }.typewriter::after { content: "_"; display: inline-block; margin-left: .18rem; animation: typewriter-cursor .75s steps(1, end) infinite; }.typewriter.is-complete::after { animation: none; opacity: 0; }.hero-heading-part.is-typing::after { content: "_"; display: inline-block; margin-left: .06em; color: var(--signal); animation: typewriter-cursor .75s steps(1, end) infinite; }
h1, h2 { margin: 0; font-family: var(--display); font-weight: 600; line-height: .82; letter-spacing: -.04em; text-transform: uppercase; }
h1 { min-height: 2.46em; font-size: clamp(5.2rem, 10.6vw, 11rem); }
h1 em, h2 em { font-style: normal; color: var(--signal); }
.hero-intro { max-width: 320px; margin: 2rem 0 2.1rem; color: #cdd0c9; font-size: .9rem; line-height: 1.7; }
.solid-button, .outline-button { display: inline-flex; gap: 2.3rem; align-items: center; justify-content: space-between; padding: 1rem 1.1rem 1rem 1.25rem; background: var(--signal); color: var(--ink); font: 700 .68rem var(--mono); letter-spacing: .1em; text-transform: uppercase; border: 1px solid var(--signal); transition: transform .2s, background .2s, color .2s; }
.solid-button span { font-size: 1.2rem; line-height: .5; }
.solid-button:hover { transform: translateY(-3px); background: transparent; color: var(--signal); }
.hero-machine { position: absolute; inset: 0; overflow: hidden; }
.hero-slide { position: absolute; inset: 0; overflow: hidden; opacity: 0; transition: opacity 1.5s ease-in-out; }.hero-slide picture { position: absolute; inset: 0; display: block; }.hero-slide img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 53%; filter: saturate(.9) contrast(1.08) brightness(.78); transform: scale(1.02); transition: transform 7s ease-out; }.hero-slide.is-active { opacity: 1; }.hero-slide.is-active img { transform: scale(1.08); }
.hero-machine::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(11,16,18,.92) 0%, rgba(11,16,18,.58) 25%, transparent 58%), linear-gradient(0deg, rgba(9,13,14,.84), transparent 38%); }
.hero-index { position: absolute; z-index: 2; right: clamp(1.5rem, 4.3vw, 5rem); top: 19%; color: var(--signal); font: .68rem var(--mono); letter-spacing: .14em; text-align: right; }
.hero-index b { font: 500 clamp(9rem, 18vw, 18rem)/.7 var(--display); letter-spacing: -.06em; }
.scan-line { position: absolute; left: 7%; right: 7%; bottom: 27%; z-index: 3; height: 1px; background: rgba(214,240,58,.65); transform: rotate(-16deg); transform-origin: left; }
.machine-label { position: absolute; z-index: 3; color: #e8e8e1; font: .57rem var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.machine-label span { color: var(--signal); padding-right: .4rem; }
.label-a { left: 28%; bottom: 31%; }.label-b { right: 7%; bottom: 29%; }
.hero-carousel-controls { position: absolute; z-index: 4; right: clamp(1.5rem, 4.25vw, 5rem); top: 39%; display: flex; flex-direction: column; align-items: flex-end; gap: .45rem; }.hero-carousel-controls button { width: 20px; height: 3px; padding: 0; border: 0; background: rgba(232,232,225,.45); transition: width .25s, background .25s; }.hero-carousel-controls button.is-active { width: 42px; background: var(--signal); }.hero-carousel-timer { width: 52px; height: 52px; margin-bottom: .6rem; position: relative; display: grid; place-items: center; color: var(--signal); font-family: var(--mono); }.hero-carousel-timer svg { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }.hero-carousel-timer circle { fill: none; stroke-width: 1.3; }.timer-track { stroke: rgba(232,232,225,.28); }.timer-progress { stroke: var(--signal); stroke-linecap: square; stroke-dasharray: 113.1; stroke-dashoffset: 113.1; }.hero-carousel-timer.is-counting .timer-progress { animation: slide-countdown 6s linear forwards; }.hero-carousel-timer span { position: relative; padding-top: .1rem; font-size: .58rem; letter-spacing: -.05em; }.hero-carousel-timer small { position: absolute; top: calc(100% - 4px); color: #ccd0c9; font: .42rem var(--mono); letter-spacing: .12em; }.hero-carousel-timer::before, .hero-carousel-timer::after { content: ""; position: absolute; background: var(--signal); }.hero-carousel-timer::before { top: 0; left: 50%; width: 1px; height: 5px; }.hero-carousel-timer::after { right: 0; top: 50%; width: 5px; height: 1px; }
@keyframes slide-countdown { to { stroke-dashoffset: 0; } }
@keyframes typewriter-cursor { 50% { opacity: 0; } }
.hero-meta { position: absolute; z-index: 4; left: clamp(1.5rem, 8.3vw, 10rem); right: clamp(1.5rem, 4.25vw, 5rem); bottom: 0; height: 120px; display: flex; align-items: center; gap: clamp(1.2rem, 4vw, 4.5rem); }
.hero-meta span { font: 500 clamp(1.25rem, 2vw, 1.8rem) var(--display); letter-spacing: .01em; }.hero-meta small { display: block; margin-top: .25rem; color: #979c98; font: .54rem var(--mono); letter-spacing: .12em; }
.scroll-cue { position: absolute; z-index: 4; right: clamp(1.5rem, 4.25vw, 5rem); bottom: 43px; display: flex; align-items: center; gap: .7rem; color: #b9bdb8; }.scroll-cue i { display: block; width: 36px; height: 1px; background: var(--signal); }

.section-wrap { padding-left: clamp(1.5rem, 8.3vw, 10rem); padding-right: clamp(1.5rem, 8.3vw, 10rem); }.section-number { color: #8d938d; }
.statement { min-height: 610px; padding-top: 9.7rem; padding-bottom: 8.5rem; display: grid; grid-template-columns: .5fr 1.25fr 1fr; column-gap: 3rem; background: var(--offwhite); color: var(--ink); }.statement .section-number { color: #69706a; }.statement .eyebrow, .statement h2 em { color: #465542; }.statement-title h2 { font-size: clamp(4.5rem, 8.5vw, 9rem); }.statement-copy { align-self: end; max-width: 355px; }.statement-copy p { margin: 0 0 2rem; font-size: .95rem; line-height: 1.85; }.text-link { padding-bottom: .6rem; border-bottom: 1px solid #737a73; font: .65rem var(--mono); text-transform: uppercase; letter-spacing: .1em; }.text-link span { padding-left: 3rem; font-size: 1.15rem; }
.profile { position: relative; overflow: hidden; background: #838381; }.profile-image { height: min(70vw, 770px); min-height: 450px; }.profile-image picture, .layout-visual picture, .drawing-preview picture { display: block; width: 100%; height: 100%; }.profile-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 54%; filter: grayscale(1) contrast(1.15); }.profile::after { content:""; inset: 0; position: absolute; background: linear-gradient(90deg, rgba(17,20,20,.72), transparent 45%), linear-gradient(0deg, rgba(17,20,20,.78), transparent 24%); }.profile-caption { z-index: 1; position: absolute; inset: auto clamp(1.5rem, 4.25vw, 5rem) 1.5rem; display: flex; justify-content: space-between; color: #eef0e9; }
.data-ribbon { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--signal); color: var(--ink); }.data-ribbon div { padding: 2.2rem clamp(1rem, 2.8vw, 3.3rem); border-right: 1px solid rgba(17,20,20,.25); }.data-ribbon b { display: block; font: 500 clamp(2rem, 3.4vw, 3.6rem)/.9 var(--display); letter-spacing: -.02em; }.data-ribbon span { display: block; margin-top: .6rem; max-width: 150px; font: .57rem/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.layout { background: #202525; padding-top: 9rem; padding-bottom: 9rem; }.layout-head { display: grid; grid-template-columns: .5fr 1.25fr 1fr; gap: 3rem; align-items: end; }.layout h2 { font-size: clamp(4.5rem, 8vw, 8.4rem); }.layout-head > p { margin: 0; max-width: 310px; color: #b4bbb4; font-size: .9rem; line-height: 1.8; }.layout-visual { margin-top: 4.5rem; position: relative; overflow: hidden; background: #dff5f6; }.layout-visual::after { content:""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(17,20,20,.29), transparent 32%); pointer-events: none; }.layout-visual img { display: block; width: 100%; aspect-ratio: 2.1/1; object-fit: cover; filter: grayscale(.5) contrast(1.05); }.layout-tag { position: absolute; z-index: 1; background: rgba(17,20,20,.82); padding: .7rem .9rem; border-left: 2px solid var(--signal); }.layout-tag b { color: var(--signal); margin-right: .6rem; }.tag-engine { left: 5%; top: 46%; }.tag-console { left: 45%; top: 23%; }.tag-bow { right: 6%; bottom: 21%; }
.specifications { color: var(--ink); background: #d1d2ca; padding-top: 9rem; padding-bottom: 9rem; }.spec-heading .eyebrow { margin-top: 4rem; color: #596155; }.spec-heading h2 { max-width: 900px; font-size: clamp(4.8rem, 8.8vw, 9.2rem); }.spec-heading h2 em { color: #475444; }.spec-grid { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 1px; margin-top: 4rem; }.spec-card { min-height: 340px; padding: 1.7rem; background: #e6e6df; display: flex; flex-direction: column; }.card-number { color: #656c65; }.spec-card strong { display: block; margin-top: auto; font: 500 clamp(5rem, 8vw, 8.5rem)/.72 var(--display); letter-spacing: -.045em; }.spec-card strong small { font-size: .44em; }.spec-card .unit { display: block; margin-top: 1rem; color: #4c554d; }.spec-card p { max-width: 280px; margin: auto 0 0; color: #596159; font-size: .76rem; line-height: 1.75; }.power-card { background: var(--signal); }.construction-card { background: #b6bbb4; }.dimensions-card { background: var(--ink); color: var(--offwhite); }.dimensions-card .card-number { color: #8f968f; }.dimensions-card dl { margin: auto 0 0; }.dimensions-card dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0; border-bottom: 1px solid #3e4341; }.dimensions-card dt { color: #abb0aa; font-size: .72rem; }.dimensions-card dd { margin: 0; color: var(--signal); font: 1.8rem var(--display); }.dimensions-card dd small { font: .55rem var(--mono); }
.blueprint { min-height: 700px; display: grid; grid-template-columns: 37% 63%; background: #272c2b; }.blueprint-copy { padding: 8rem clamp(1.5rem, 5vw, 6rem); display: flex; flex-direction: column; }.blueprint h2 { margin-top: 4rem; font-size: clamp(4rem, 6.5vw, 7.6rem); }.blueprint-copy > p { max-width: 270px; margin: 2.4rem 0; color: #b8bdb8; font-size: .8rem; line-height: 1.85; }.outline-button { margin-top: auto; color: var(--offwhite); background: transparent; border-color: #848c84; }.outline-button:hover { background: var(--signal); border-color: var(--signal); color: var(--ink); }.outline-button span { font-size: 1.15rem; }.drawing-grid { display: grid; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 1px; background: #5f655f; }.drawing-preview { min-height: 0; aspect-ratio: 2.86 / 1; padding: 0; position: relative; overflow: hidden; background: #f9f9f6; border: 0; }.drawing-preview img { width: 100%; height: 100%; display: block; object-fit: contain; transition: transform .55s ease; }.drawing-preview:hover img { transform: scale(1.035); }.drawing-preview span { position: absolute; right: 1.2rem; bottom: 1.2rem; padding: .6rem .8rem; background: var(--ink); color: var(--signal); font: .58rem var(--mono); text-transform: uppercase; letter-spacing: .1em; }
footer { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 2rem; padding: 2.4rem clamp(1.5rem, 4.25vw, 5rem); color: #939a93; background: #111414; }.footer-brand img { width: 110px; }.footer-brand { display: flex; align-items: center; }footer p { margin: 0; } footer a { color: var(--signal); } footer a span { margin-left: .8rem; font-size: 1rem; }.footer-contact-grid { grid-column: 1 / -1; display: grid; grid-template-columns: 1.5fr repeat(4, 1fr); gap: 1.5rem; width: 100%; padding: 2rem 0; border-top: 1px solid #323734; border-bottom: 1px solid #323734; font: .62rem/1.65 var(--mono); letter-spacing: .04em; text-transform: uppercase; }.footer-contact-grid address { font-style: normal; }.footer-contact-grid span { display: block; margin-bottom: .65rem; color: var(--signal); font-size: .53rem; letter-spacing: .12em; }.footer-contact-grid a { display: inline-block; color: var(--offwhite); text-transform: none; letter-spacing: 0; }.footer-contact-grid a:hover { color: var(--signal); }footer small { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 1rem; font-size: .52rem; line-height: 1.4; }.footer-credit { color: var(--signal); text-align: right; text-transform: none; letter-spacing: .04em; }.footer-credit strong { font-weight: 500; }
.legal-links { grid-column: 1 / -1; display: flex; gap: 1.25rem; font-size: .55rem; }.legal-links a { color: #939a93; }.legal-links a:hover, .legal-links a[aria-current="page"] { color: var(--signal); }.mobile-dock { display: none; }
.legal-page { background: var(--offwhite); color: var(--ink); }.legal-page .site-header { position: relative; background: var(--ink); }.legal-page .site-header.is-scrolled { position: fixed; }.legal-content { padding-top: clamp(5rem, 10vw, 10rem); padding-bottom: clamp(5rem, 10vw, 10rem); }.legal-intro { max-width: 950px; padding-bottom: clamp(4rem, 8vw, 8rem); border-bottom: 1px solid #afb3ac; }.legal-intro .eyebrow { color: #596155; }.legal-intro h1 { min-height: 0; font-size: clamp(5rem, 12vw, 12rem); }.legal-intro h1 em { color: #596155; }.legal-intro > p:last-child { max-width: 340px; margin: 2rem 0 0; color: #596159; font-size: .9rem; line-height: 1.7; }.legal-card { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 3rem; padding: clamp(3rem, 6vw, 6rem) 0; border-bottom: 1px solid #afb3ac; }.legal-card h2 { margin-top: 2rem; font-size: clamp(3.2rem, 5vw, 5.5rem); }.legal-card h2 em { color: #596155; }.legal-details { font-size: .85rem; line-height: 1.75; }.legal-details address { margin-bottom: 1.8rem; font-style: normal; }.legal-details p { margin: 0 0 1.2rem; }.legal-details strong, .legal-officers span { display: block; margin-bottom: .25rem; color: #596155; font: .57rem var(--mono); letter-spacing: .12em; text-transform: uppercase; }.legal-details a, .legal-copy a { color: #36492f; text-decoration: underline; text-decoration-color: var(--signal); text-underline-offset: .25em; }.legal-officers { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: #afb3ac; border-bottom: 1px solid #afb3ac; }.legal-officers div { padding: 2rem; background: #d9dad4; }.legal-officers strong { font: clamp(2rem, 3.5vw, 3.6rem) var(--display); text-transform: uppercase; }.legal-copy { display: grid; grid-template-columns: 1fr minmax(0, 2fr); gap: 3rem; padding-top: clamp(4rem, 8vw, 8rem); }.legal-copy > div:last-child { max-width: 800px; }.legal-copy h2 { margin: 0 0 1.1rem; font-size: clamp(2rem, 3.2vw, 3.4rem); line-height: .95; }.legal-copy h2:not(:first-child) { margin-top: 4rem; }.legal-copy p { margin: 0 0 1.4rem; color: #464b46; font-size: .9rem; line-height: 1.85; }.privacy-copy h2 { font-size: clamp(1.75rem, 2.6vw, 2.7rem); }.legal-attribution { margin-top: 3rem !important; padding-top: 1.5rem; border-top: 1px solid #afb3ac; font-size: .75rem !important; }
.drawing-modal { width: min(1200px, 92vw); padding: 0; background: #ebece5; border: 0; box-shadow: 0 25px 80px rgba(0,0,0,.6); }.drawing-modal::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(7px); }.drawing-modal img { display: block; width: 100%; max-height: 86vh; object-fit: contain; }.modal-close, .modal-nav { position: fixed; z-index: 1; width: 42px; height: 42px; color: var(--ink); background: var(--signal); border: 0; font: 2rem/1 var(--display); transition: transform .2s, background .2s; }.modal-close:hover, .modal-nav:hover { transform: scale(1.08); background: var(--offwhite); }.modal-close { top: 1.5rem; right: 1.5rem; }.modal-nav { top: 50%; transform: translateY(-50%); }.modal-nav:hover { transform: translateY(-50%) scale(1.08); }.modal-previous { left: 1.5rem; }.modal-next { right: 1.5rem; }

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.hero-slide { transition: none; } }
@media (max-width: 800px) { .site-header { height: 65px; }.site-header nav { display: none; }.header-cta { margin-left: auto; }.hero { min-height: 720px; }.hero-copy { top: 19%; width: calc(100% - 3rem); }.hero-machine img { object-position: 61% 50%; }.hero::before { background: linear-gradient(0deg, #111 2%, transparent 65%), linear-gradient(90deg, rgba(17,20,20,.85), rgba(17,20,20,.17)); }.hero-index { top: 17%; }.machine-label, .scan-line { display: none; }.hero-meta { height: 94px; gap: 1.1rem; overflow: hidden; }.hero-meta span { font-size: 1.2rem; }.hero-meta small { font-size: .47rem; }.scroll-cue { display: none; }.statement, .layout-head { grid-template-columns: 1fr; gap: 2.1rem; }.statement { min-height: 0; padding-top: 6rem; padding-bottom: 6rem; }.statement-copy { max-width: 440px; }.profile-image { height: 95vw; min-height: 380px; }.data-ribbon { grid-template-columns: 1fr 1fr; }.data-ribbon div:nth-child(2) { border-right: 0; }.data-ribbon div:nth-child(n+3) { border-top: 1px solid rgba(17,20,20,.25); }.layout { padding-top: 6rem; padding-bottom: 6rem; }.layout-visual { margin-top: 3rem; }.layout-visual img { aspect-ratio: 1.1 / 1; object-fit: cover; }.tag-console { left: 43%; top: 29%; }.tag-bow { right: 2%; }.specifications { padding-top: 6rem; padding-bottom: 6rem; }.spec-heading .eyebrow { margin-top: 2.4rem; }.spec-grid { grid-template-columns: 1fr; margin-top: 3rem; }.spec-card { min-height: 260px; }.blueprint { grid-template-columns: 1fr; }.blueprint-copy { min-height: 600px; padding-top: 6rem; padding-bottom: 3rem; }.blueprint h2 { margin-top: 2.8rem; }.drawing-preview { min-height: 0; } footer { grid-template-columns: 1fr auto; gap: 1.2rem; } footer p { grid-column: 1 / -1; }.footer-contact-grid { grid-template-columns: 1fr 1fr; gap: 1.8rem 1rem; }.footer-contact-grid address { grid-column: 1 / -1; } }
@media (max-width: 460px) { .site-header { gap: 1rem; }.brand { flex: 0 0 122px; }.header-cta { padding: .65rem .75rem; font-size: .53rem; }.brand img { width: 122px; max-height: none; height: auto; }.hero-meta { align-items: flex-start; padding-top: 1.3rem; }.hero-meta span:nth-child(3) { display: none; }.layout-tag { font-size: .47rem; padding: .5rem; }.tag-engine { left: 2%; }.spec-heading h2 { font-size: 4.3rem; }.blueprint h2 { font-size: 4.6rem; } }
@media (max-width: 800px) { .legal-page .site-header { position: relative; }.legal-card, .legal-copy { grid-template-columns: 1fr; gap: 2rem; }.legal-card { padding: 3.5rem 0; }.legal-officers { grid-template-columns: 1fr; }.legal-copy { padding-top: 4rem; }.legal-copy h2:not(:first-child) { margin-top: 3rem; }.legal-links { grid-column: 1 / -1; } }
@media (max-width: 800px), (hover: none) and (pointer: coarse) and (orientation: portrait) { body:not(.legal-page) { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }.mobile-dock { position: fixed; z-index: 50; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4, 1fr); padding: .45rem .5rem calc(.45rem + env(safe-area-inset-bottom)); background: rgba(17,20,20,.92); border-top: 1px solid rgba(232,232,225,.24); backdrop-filter: blur(16px); }.mobile-dock a { display: grid; place-items: center; min-height: 42px; color: #d9ddd6; font: .54rem var(--mono); letter-spacing: .06em; text-align: center; text-transform: uppercase; }.mobile-dock a + a { border-left: 1px solid rgba(232,232,225,.18); }.mobile-dock a:hover, .mobile-dock a:focus-visible { color: var(--signal); } }
@media (max-width: 800px) { .hero h1 { font-size: clamp(3.4rem, 13vw, 5rem); }.hero-index { top: 14%; }.hero-index b { font-size: clamp(5rem, 13vw, 8rem); }.hero-intro { max-width: 275px; margin: 1.45rem 0 1.65rem; font-size: .78rem; line-height: 1.6; }.hero .solid-button { padding: .9rem 1rem .9rem 1.1rem; font-size: .61rem; }.hero-carousel-controls { top: 42%; } }
@media (max-width: 460px) { .hero h1 { font-size: 3.15rem; }.hero-index { top: 15%; }.hero-index b { font-size: 4.75rem; }.hero-copy { top: 20%; }.hero-intro { max-width: 245px; font-size: .73rem; }.hero-carousel-controls { transform: scale(.88); transform-origin: right top; } }
@media (max-width: 800px) { .profile-image { height: auto; min-height: 0; aspect-ratio: 16 / 9; background: #d8dad5; }.profile-image img { object-fit: contain; object-position: center; }.layout-visual img { aspect-ratio: 1600 / 748; object-fit: contain; } }
@media (max-width: 600px), (hover: none) and (pointer: coarse) and (orientation: portrait) { .hero { min-height: 0; height: auto; display: flex; flex-direction: column; padding-top: 65px; background: #1c2020; }.hero::before, .hero::after { display: none; }.hero-machine { position: relative; inset: auto; order: 1; width: 100%; height: calc(100vh - 65px); height: calc(100dvh - 65px); min-height: 500px; background: #1c2020; }.hero-machine::after { display: block; background: rgba(9, 13, 14, .38); }.hero-slide::before { display: none; }.hero-slide--model::after { content: ""; position: absolute; inset: 0; z-index: 2; background: rgba(9, 13, 14, .16); }.hero-slide img { position: relative; z-index: 1; object-fit: cover; object-position: center; transform: none; filter: saturate(.9) contrast(1.08); }.hero-slide.is-active img { transform: none; }.hero-index { display: none; }.hero-carousel-controls { top: .7rem; right: 1rem; transform: scale(.8); transform-origin: right top; }.hero-copy { position: absolute; z-index: 5; inset: auto 0 90px; order: 2; width: auto; padding: 4.5rem 1.5rem 2.25rem; pointer-events: none; background: linear-gradient(0deg, rgba(9,13,14,.96), rgba(9,13,14,.68) 68%, transparent); }.hero-copy .eyebrow { margin-bottom: .85rem; }.hero-copy .hero-intro, .hero-copy .solid-button { display: none; }.hero-meta { position: relative; inset: auto; order: 3; height: auto; min-height: 90px; padding: 1.25rem 1.5rem; overflow: visible; border-top: 1px solid var(--line); }.scroll-cue { display: none; } }
@media (max-width: 800px) { footer small { flex-wrap: wrap; }.footer-credit { text-align: left; } }
