:root {
  --night: #041c2c;
  --night-2: #082b41;
  --ocean: #0879f9;
  --aqua: #30e0d0;
  --sky: #c7f5f3;
  --mango: #ffb84a;
  --sun: #ffe1a4;
  --foam: #f5f8f3;
  --white: #fff;
  --ink: #082538;
  --muted: #5f747c;
  --line: rgba(8,37,56,.18);
  --dark-line: rgba(255,255,255,.19);
  --mono: "SFMono-Regular", Consolas, monospace;
  --sans: "Avenir Next", Avenir, "Helvetica Neue", Arial, sans-serif;
  --display: "Helvetica Neue", Arial, sans-serif;
  --max: 1600px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--foam); font-family: var(--sans); font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
img, svg { display: block; }
.skip-link { position: fixed; z-index: 200; top: 8px; left: 8px; padding: 10px 14px; color: var(--night); background: var(--aqua); transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.progress { position: fixed; z-index: 150; inset: 0 0 auto; height: 2px; pointer-events: none; }
.progress i { display: block; width: 100%; height: 100%; background: var(--mango); transform: scaleX(0); transform-origin: left; }

.site-header { position: sticky; z-index: 100; top: 0; width: 100%; height: 72px; padding: 0 clamp(22px, 4vw, 68px); display: flex; align-items: center; justify-content: space-between; color: var(--white); border-bottom: 1px solid var(--dark-line); background: rgba(4,28,44,.78); backdrop-filter: blur(20px) saturate(1.2); }
.wordmark { display: inline-flex; align-items: center; gap: 12px; font-size: 17px; font-weight: 800; letter-spacing: -.035em; }
.wordmark i { color: var(--mango); font-style: normal; }
.wordmark-chip { position: relative; width: 16px; height: 16px; display: block; border-radius: 50%; background: var(--mango); box-shadow: 0 0 0 5px rgba(255,184,74,.13); }
.wordmark-chip::after { content: ""; position: absolute; width: 6px; height: 6px; right: -8px; top: 5px; border-radius: 50%; background: var(--aqua); }
.primary-nav { display: flex; align-items: center; gap: clamp(18px, 2.2vw, 36px); font-size: 11px; font-weight: 650; }
.primary-nav > a:not(.nav-action) { position: relative; padding: 26px 0; color: rgba(255,255,255,.74); }
.primary-nav > a:not(.nav-action)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 19px; height: 1px; background: var(--aqua); transition: right .22s ease; }
.primary-nav > a:not(.nav-action):hover { color: var(--white); }
.primary-nav > a:not(.nav-action):hover::after { right: 0; }
.nav-action { min-width: 148px; display: flex; justify-content: space-between; gap: 24px; padding: 12px 14px; color: var(--night); background: var(--white); }
.nav-action span { color: var(--ocean); }
.menu-button { display: none; border: 0; background: transparent; }

.hero { position: relative; isolation: isolate; width: 100%; min-height: max(820px, calc(100svh - 72px)); padding: 36px clamp(22px, 4vw, 68px) 0; display: grid; grid-template-columns: repeat(12, 1fr); grid-template-rows: 36px minmax(600px,1fr) 142px; column-gap: 20px; overflow: hidden; color: var(--white); background: var(--night); }
.hero::before { content: ""; position: absolute; z-index: -3; inset: -24px 0; background: url('./assets/hero-caribbean-products-v1.webp') center calc(50% + var(--hero-shift,0px)) / cover no-repeat; transform: scale(1.025); }
.hero::after { content: ""; position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg, rgba(3,21,34,.93) 0%, rgba(3,21,34,.72) 38%, rgba(3,21,34,.18) 70%, rgba(3,21,34,.08) 100%), linear-gradient(0deg, rgba(3,21,34,.9) 0%, transparent 42%); }
.hero-index { grid-column: 1 / -1; position: relative; z-index: 2; display: flex; justify-content: space-between; color: rgba(255,255,255,.62); font: 8px/1 var(--mono); letter-spacing: .14em; }
.hero-copy { grid-column: 1 / 8; grid-row: 2; position: relative; z-index: 4; align-self: center; padding: 52px 0 90px; }
.section-code { margin: 0 0 26px; color: var(--aqua); font: 9px/1 var(--mono); letter-spacing: .14em; text-transform: uppercase; }
.section-code.dark { color: var(--ocean); }
.hero h1, .statement h2, .range-title h2, .selector-heading h2, .delivery h2, .process h2, .brief h2 { margin: 0; font-family: var(--display); font-weight: 520; line-height: .92; letter-spacing: -.065em; }
.hero h1 { max-width: 900px; font-size: clamp(76px, 8.4vw, 132px); }
.hero h1 em { color: var(--mango); font-family: Georgia, serif; font-weight: 400; }
.hero-lede { max-width: 620px; margin: 32px 0 0; color: rgba(255,255,255,.78); font-size: clamp(17px,1.35vw,21px); line-height: 1.55; }
.hero-actions { display: flex; align-items: center; gap: 30px; margin-top: 38px; }
.button { min-height: 54px; display: inline-flex; align-items: center; justify-content: space-between; gap: 40px; padding: 0 18px; border: 0; border-radius: 0; font-size: 11px; font-weight: 760; cursor: pointer; transition: transform .2s ease, filter .2s ease; }
.button:hover { transform: translateY(-2px); filter: brightness(1.04); }
.button-lime { color: var(--night); background: var(--aqua); }
.button-blue { color: var(--white); background: var(--ocean); }
.quiet-link { padding: 12px 0 8px; border-bottom: 1px solid rgba(255,255,255,.6); font-size: 11px; font-weight: 650; }
.quiet-link span { margin-left: 18px; color: var(--mango); }

.photo-stage { position: relative; overflow: hidden; isolation: isolate; }
.stage-light { position: absolute; inset: 0; background: radial-gradient(circle at var(--light-x,70%) var(--light-y,25%), rgba(48,224,208,.22), transparent 34%); }
.stage-label { position: absolute; z-index: 2; top: 22px; left: 22px; right: 22px; display: flex; justify-content: space-between; gap: 18px; color: var(--white); font: 8px/1 var(--mono); letter-spacing: .1em; }
.stage-label span { padding: 7px 8px; color: var(--night); background: var(--aqua); }
.stage-label b { align-self: center; font-weight: 500; }
.stage-direction { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 22px; padding-top: 14px; color: rgba(255,255,255,.7); border-top: 1px solid rgba(255,255,255,.38); font-size: 11px; }
.stage-direction span { color: var(--mango); font: 8px/1 var(--mono); letter-spacing: .12em; }
.stage-direction p { margin: 8px 0 0; }
.hero-ghost { display: none; }
.hero-rail { grid-column: 1 / -1; grid-row: 3; position: relative; z-index: 4; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--dark-line); background: rgba(4,28,44,.38); backdrop-filter: blur(10px); }
.hero-rail > div { display: grid; grid-template-columns: 38px 1fr; grid-template-rows: auto auto; align-content: center; padding: 22px 30px 22px 0; border-right: 1px solid var(--dark-line); }
.hero-rail > div + div { padding-left: 30px; }
.hero-rail > div:last-child { border-right: 0; }
.hero-rail span { grid-row: 1 / 3; color: var(--mango); font: 9px/1 var(--mono); }
.hero-rail b { font-size: 12px; }
.hero-rail p { margin: 5px 0 0; color: rgba(255,255,255,.56); font-size: 10px; }

.system-first { width: 100%; padding: clamp(100px,11vw,170px) clamp(22px,5vw,84px); background: linear-gradient(150deg, #e8fbf8 0%, var(--foam) 54%); }
.statement { padding-bottom: 92px; border-bottom: 1px solid var(--ink); }
.statement h2 { max-width: 1260px; font-size: clamp(58px,6.8vw,104px); }
.statement h2 em { color: var(--ocean); font-family: Georgia, serif; font-weight: 400; }
.brief-grid { display: grid; grid-template-columns: 1.2fr repeat(3,1fr); border-bottom: 1px solid var(--line); }
.brief-grid > * { min-height: 270px; padding: 34px 30px; border-right: 1px solid var(--line); }
.brief-grid > *:first-child { padding-left: 0; }
.brief-grid > *:last-child { border-right: 0; }
.brief-intro { display: flex; flex-direction: column; justify-content: space-between; }
.brief-intro > p { max-width: 350px; margin: 0; color: var(--muted); font-size: 14px; }
.black-link { width: fit-content; padding-bottom: 7px; border-bottom: 1px solid var(--ink); font-size: 11px; font-weight: 700; }
.black-link span { margin-left: 22px; color: var(--ocean); }
.brief-grid article span { color: var(--ocean); font: 10px/1 var(--mono); }
.brief-grid article h3 { margin: 72px 0 14px; font-size: 24px; line-height: 1; letter-spacing: -.035em; }
.brief-grid article p { margin: 0; color: var(--muted); font-size: 12px; }
.compatibility-line { display: grid; grid-template-columns: 1.2fr 3fr; gap: 34px; padding-top: 26px; font-size: 12px; }
.compatibility-line strong { color: var(--ocean); }
.compatibility-line p { max-width: 760px; margin: 0; color: var(--muted); }

.range { width: 100%; background: var(--foam); }
.range-title { min-height: 500px; display: grid; grid-template-columns: .66fr 1.5fr .84fr; align-items: end; gap: 42px; padding: 120px clamp(22px,5vw,84px) 80px; color: var(--ink); border-bottom: 1px solid var(--line); }
.range-title .section-code { align-self: start; color: var(--ocean); }
.range-title h2 { font-size: clamp(66px,6.7vw,104px); }
.range-title > p:last-child { margin: 0 0 6px; color: var(--muted); font-size: 13px; }
.range-item { display: grid; grid-template-columns: 112px minmax(360px,.78fr) minmax(520px,1.22fr); min-height: 650px; border-bottom: 1px solid var(--line); }
.range-item.wristbands { grid-template-columns: 112px minmax(520px,1.22fr) minmax(360px,.78fr); }
.range-number { padding: 34px 24px; color: var(--ink); border-right: 1px solid var(--line); }
.range-number span { color: var(--ocean); font: 10px/1 var(--mono); }
.range-number p { margin: 24px 0 0; font: 750 9px/1.2 var(--mono); letter-spacing: .07em; writing-mode: vertical-rl; }
.range-copy { display: flex; flex-direction: column; justify-content: center; padding: 68px clamp(38px,5vw,78px); }
.range-copy h3 { margin: 0; font-size: clamp(45px,4.2vw,67px); font-weight: 520; line-height: .96; letter-spacing: -.055em; }
.range-copy > p { max-width: 610px; margin: 28px 0 0; color: var(--muted); font-size: 13px; }
.range-copy ul { margin: 38px 0 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.range-copy li { padding: 11px 0; border-bottom: 1px solid var(--line); color: #3e5a65; font-size: 11px; }
.range-copy > a { width: fit-content; margin-top: 38px; padding-bottom: 8px; border-bottom: 1px solid var(--ink); font-size: 11px; font-weight: 700; }
.range-copy > a span { margin-left: 28px; color: var(--ocean); }
.product-stage { min-height: 650px; background-image: linear-gradient(180deg, rgba(4,28,44,.04) 42%, rgba(4,28,44,.68) 100%), url('./assets/keycard-family-v1.webp'); background-position: center; background-size: cover; }
.warm-stage { background-image: linear-gradient(180deg, rgba(4,28,44,.02) 42%, rgba(4,28,44,.66) 100%), url('./assets/wristband-family-v1.webp'); background-position: center; }
.product-stage .stage-label { color: var(--white); }
.product-stage .stage-direction { max-width: 320px; color: var(--white); }
.wristbands .range-copy { order: 3; }

.selector { width: 100%; padding: clamp(105px,10vw,160px) clamp(22px,5vw,84px); background: var(--sky); }
.selector-heading { display: grid; grid-template-columns: .66fr 1.5fr .84fr; gap: 42px; align-items: end; margin-bottom: 68px; }
.selector-heading .section-code { align-self: start; color: var(--ocean); }
.selector-heading h2 { font-size: clamp(62px,6.3vw,96px); }
.selector-heading > p:last-child { margin: 0 0 4px; color: #3f6e76; font-size: 12px; }
.selector-console { display: grid; grid-template-columns: .56fr 1.44fr; min-height: 540px; color: var(--white); background: rgba(4,28,44,.97); box-shadow: 0 34px 80px rgba(4,28,44,.22); }
.selector-tabs { display: flex; flex-direction: column; border-right: 1px solid var(--dark-line); }
.selector-tabs button { position: relative; flex: 1; display: grid; grid-template-columns: 42px 1fr; align-items: center; text-align: left; padding: 24px 30px; border: 0; border-bottom: 1px solid var(--dark-line); color: rgba(255,255,255,.48); background: transparent; font-size: clamp(19px,2vw,27px); font-weight: 650; cursor: pointer; transition: color .2s,background .2s; }
.selector-tabs button span { color: var(--aqua); font: 9px/1 var(--mono); }
.selector-tabs button::after { content: "↗"; position: absolute; right: 24px; color: var(--mango); opacity: 0; }
.selector-tabs button.is-active { color: var(--night); background: var(--aqua); }
.selector-tabs button.is-active span { color: var(--night); }
.selector-tabs button.is-active::after { color: var(--night); opacity: 1; }
.selector-output { display: flex; flex-direction: column; padding: clamp(48px,6vw,88px); }
.output-kicker { display: flex; justify-content: space-between; gap: 24px; color: rgba(255,255,255,.45); font: 8px/1 var(--mono); letter-spacing: .11em; }
.output-kicker i { color: var(--mango); font-style: normal; }
.selector-output h3 { max-width: 790px; margin: 72px 0 24px; font-size: clamp(50px,5.1vw,78px); font-weight: 520; line-height: .94; letter-spacing: -.055em; }
.selector-output > p { max-width: 760px; margin: 0; color: rgba(255,255,255,.6); font-size: 13px; }
.selector-output dl { display: grid; grid-template-columns: repeat(3,1fr); margin: auto 0 0; border-top: 1px solid var(--dark-line); }
.selector-output dl > div { padding: 18px 20px 0 0; border-right: 1px solid var(--dark-line); }
.selector-output dl > div + div { padding-left: 20px; }
.selector-output dl > div:last-child { border-right: 0; }
.selector-output dt { color: var(--aqua); font: 8px/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.selector-output dd { margin: 10px 0 0; font-size: 11px; }
.selector-output > a { width: fit-content; margin-top: 38px; padding-bottom: 8px; border-bottom: 1px solid var(--white); font-size: 11px; font-weight: 700; }
.selector-output > a span { margin-left: 32px; color: var(--mango); }

.delivery { position: relative; isolation: isolate; width: 100%; min-height: 800px; padding: clamp(100px,10vw,160px) clamp(22px,5vw,84px); display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(70px,10vw,160px); overflow: hidden; color: var(--night); background: var(--mango); }
.delivery-lead,.delivery-copy { position: relative; z-index: 2; }
.delivery h2 { max-width: 860px; font-size: clamp(68px,7.2vw,112px); }
.delivery h2 em { color: var(--ocean); font-family: Georgia,serif; font-weight: 400; }
.delivery-copy { align-self: center; }
.delivery-intro { max-width: 620px; margin: 0 0 46px; font-size: 17px; }
.delivery-copy dl { margin: 0; border-top: 1px solid rgba(4,28,44,.4); }
.delivery-copy dl > div { display: grid; grid-template-columns: 120px 1fr; gap: 30px; padding: 18px 0; border-bottom: 1px solid rgba(4,28,44,.4); }
.delivery-copy dt { font: 800 9px/1.2 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.delivery-copy dd { margin: 0; font-size: 12px; }
.delivery-word { position: absolute; z-index: 1; left: -2%; bottom: -6%; margin: 0; color: rgba(4,28,44,.08); font: 700 clamp(130px,20vw,320px)/.7 var(--display); letter-spacing: -.075em; }

.process { width: 100%; padding: clamp(100px,10vw,160px) clamp(22px,5vw,84px); display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(70px,10vw,160px); background: var(--foam); }
.process-label { align-self: start; position: sticky; top: 120px; }
.process h2 { font-size: clamp(60px,5.9vw,92px); }
.process-list { margin: 0; padding: 0; border-top: 1px solid var(--ink); list-style: none; }
.process-list li { display: grid; grid-template-columns: 54px 1fr auto; gap: 28px; align-items: center; min-height: 148px; border-bottom: 1px solid var(--line); transition: padding .2s,background .2s; }
.process-list li:hover { padding-inline: 18px; background: var(--white); }
.process-list li > span { color: var(--ocean); font: 10px/1 var(--mono); }
.process-list h3 { margin: 0 0 8px; font-size: clamp(29px,2.9vw,43px); font-weight: 550; line-height: 1; letter-spacing: -.04em; }
.process-list p { margin: 0; color: var(--muted); font-size: 12px; }
.process-list i { color: var(--muted); font: 8px/1 var(--mono); letter-spacing: .11em; }

.brief { width: 100%; padding: clamp(100px,10vw,160px) clamp(22px,5vw,84px); display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(70px,10vw,160px); color: var(--white); background: var(--night); }
.brief h2 { font-size: clamp(62px,6.2vw,98px); }
.brief-heading > p:last-child { max-width: 600px; margin: 34px 0 0; color: rgba(255,255,255,.5); font-size: 12px; }
.order-form { display: grid; grid-template-columns: 1fr 1fr; column-gap: 30px; align-content: start; }
.field { margin-bottom: 30px; padding-bottom: 16px; border-bottom: 1px solid var(--dark-line); }
.field.wide { grid-column: 1 / -1; }
.field label { display: block; margin-bottom: 9px; color: var(--aqua); font: 8px/1 var(--mono); letter-spacing: .11em; text-transform: uppercase; }
.field input,.field select,.field textarea { width: 100%; padding: 5px 0; color: var(--white); border: 0; outline: 0; border-radius: 0; background: transparent; resize: vertical; }
.field input::placeholder,.field textarea::placeholder { color: rgba(255,255,255,.34); }
.field select { color-scheme: dark; }
.field:focus-within { border-color: var(--aqua); }
.form-end { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.form-end p { max-width: 310px; margin: 0; color: rgba(255,255,255,.38); font-size: 9px; }
.form-end p a { color: rgba(255,255,255,.68); border-bottom: 1px solid rgba(255,255,255,.28); }
.form-status { grid-column: 1 / -1; min-height: 18px; margin: 18px 0 0; color: var(--aqua); font-size: 11px; }

.site-footer { width: 100%; padding: 64px clamp(22px,5vw,84px) 30px; color: var(--white); background: #02121c; }
.footer-top { display: grid; grid-template-columns: 1fr 1fr auto; gap: 60px; padding-bottom: 64px; }
.footer-top > p { margin: 0; color: rgba(255,255,255,.48); font-size: 12px; }
.footer-top > a:last-child { padding-bottom: 8px; border-bottom: 1px solid rgba(255,255,255,.55); font-size: 11px; font-weight: 700; }
.footer-top > a:last-child span { margin-left: 52px; color: var(--mango); }
.footer-bottom { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; padding-top: 26px; border-top: 1px solid var(--dark-line); color: rgba(255,255,255,.34); font-size: 9px; }
.footer-bottom p { max-width: 700px; margin: 0; }
.footer-bottom > div { display: flex; justify-content: flex-end; gap: 28px; flex-wrap: wrap; }
.footer-bottom a { color: rgba(255,255,255,.55); }
.has-js .reveal { opacity: 0; transform: translateY(30px); transition: opacity .7s cubic-bezier(.22,.72,.18,1),transform .7s cubic-bezier(.22,.72,.18,1); }
.has-js .reveal.is-visible { opacity: 1; transform: none; }

@media (max-width:1120px) {
  .primary-nav { gap: 16px; }
  .primary-nav > a:not(.nav-action) { display: none; }
  .hero-copy { grid-column: 1 / 8; }
  .brief-grid { grid-template-columns: 1fr 1fr; }
  .brief-grid > * { border-bottom: 1px solid var(--line); }
  .range-title,.selector-heading { grid-template-columns: .55fr 1.45fr; }
  .range-title > p:last-child,.selector-heading > p:last-child { grid-column: 2; }
  .range-item,.range-item.wristbands { grid-template-columns: 90px 1fr 1fr; }
}

@media (max-width:760px) {
  .site-header { height: 66px; padding-inline: 18px; }
  .menu-button { width: 62px; height: 42px; display: grid; grid-template-columns: 1fr 20px; align-content: center; gap: 4px 8px; padding: 0; color: var(--white); }
  .menu-button span { grid-row: 1 / 3; align-self: center; font: 8px/1 var(--mono); text-transform: uppercase; }
  .menu-button i { width: 20px; height: 1px; display: block; background: var(--white); transition: transform .2s; }
  .menu-button[aria-expanded="true"] i:nth-of-type(1) { transform: translateY(2.5px) rotate(45deg); }
  .menu-button[aria-expanded="true"] i:nth-of-type(2) { transform: translateY(-2.5px) rotate(-45deg); }
  .primary-nav { position: fixed; inset: 66px 0 auto; display: none; padding: 24px 18px 30px; color: var(--white); background: rgba(4,28,44,.98); box-shadow: 0 30px 50px rgba(0,0,0,.35); }
  .primary-nav.is-open { display: grid; }
  .primary-nav > a:not(.nav-action) { display: block; padding: 13px 0; border-bottom: 1px solid var(--dark-line); color: var(--white); }
  .nav-action { margin-top: 10px; background: var(--aqua); }

  .hero { min-height: auto; padding: 28px 18px 0; display: flex; flex-direction: column; }
  .hero::before { background-position: 61% center; }
  .hero::after { background: linear-gradient(90deg,rgba(3,21,34,.93),rgba(3,21,34,.52)),linear-gradient(0deg,rgba(3,21,34,.9),transparent 55%); }
  .hero-index { order: 0; }
  .hero-index span:last-child { display: none; }
  .hero-copy { order: 1; padding: 72px 0 50px; }
  .hero h1 { font-size: clamp(61px,17vw,78px); }
  .hero-lede { font-size: 16px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 18px; }
  .hero-rail { order: 2; width: calc(100% + 36px); margin: 0 -18px; grid-template-columns: 1fr; }
  .hero-rail > div,.hero-rail > div + div { min-height: 104px; padding: 22px 18px; border-right: 0; border-bottom: 1px solid var(--dark-line); }

  .system-first,.selector,.process,.brief { padding: 88px 18px; }
  .statement { padding-bottom: 54px; }
  .statement h2 { font-size: 51px; }
  .brief-grid { grid-template-columns: 1fr; }
  .brief-grid > * { min-height: auto; padding: 30px 0; border-right: 0; }
  .brief-intro { gap: 40px; }
  .brief-grid article h3 { margin-top: 36px; }
  .compatibility-line { grid-template-columns: 1fr; }

  .range-title,.selector-heading { min-height: auto; display: block; padding: 88px 18px 52px; }
  .range-title h2,.selector-heading h2 { font-size: 55px; }
  .range-title > p:last-child,.selector-heading > p:last-child { margin-top: 28px; }
  .range-item,.range-item.wristbands { display: flex; flex-direction: column; min-height: auto; }
  .range-number { min-height: 74px; display: flex; align-items: center; justify-content: space-between; padding: 20px 18px; border-right: 0; border-bottom: 1px solid var(--line); }
  .range-number p { margin: 0; writing-mode: initial; }
  .range-copy { order: 2 !important; padding: 54px 18px 64px; }
  .range-copy h3 { font-size: 48px; }
  .product-stage { order: 1; min-height: 470px; }

  .selector-heading { padding: 0; margin-bottom: 44px; }
  .selector-console { grid-template-columns: 1fr; }
  .selector-tabs { border-right: 0; border-bottom: 1px solid var(--dark-line); }
  .selector-tabs button { min-height: 82px; flex: none; font-size: 20px; }
  .selector-output { min-height: 620px; padding: 42px 22px; }
  .selector-output h3 { margin-top: 58px; font-size: 49px; }
  .selector-output dl { grid-template-columns: 1fr; margin-top: 52px; }
  .selector-output dl > div,.selector-output dl > div + div { padding: 14px 0; border-right: 0; border-bottom: 1px solid var(--dark-line); }

  .delivery { min-height: auto; display: block; padding: 88px 18px 110px; }
  .delivery h2 { font-size: 58px; }
  .delivery-copy { margin-top: 66px; }
  .delivery-copy dl > div { grid-template-columns: 98px 1fr; gap: 18px; }
  .delivery-word { font-size: 88px; bottom: 2%; }

  .process { grid-template-columns: 1fr; }
  .process-label { position: static; }
  .process h2 { font-size: 54px; }
  .process-list li { grid-template-columns: 38px 1fr; min-height: 134px; }
  .process-list li > i { display: none; }
  .process-list h3 { font-size: 31px; }
  .brief { grid-template-columns: 1fr; }
  .brief h2 { font-size: 55px; }
  .order-form { grid-template-columns: 1fr; }
  .field,.field.wide,.form-end,.form-status { grid-column: 1; }
  .form-end { align-items: flex-start; flex-direction: column; }
  .site-footer { padding: 58px 18px 26px; }
  .footer-top,.footer-bottom { grid-template-columns: 1fr; gap: 28px; }
  .footer-bottom > div { justify-content: flex-start; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
  .has-js .reveal { opacity:1; transform:none; }
}
