@font-face {
font-family: "Inter";
src: url("/assets/fonts/inter-latin.woff2") format("woff2");
font-weight: 100 900;
font-style: normal;
font-display: swap;
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
font-family: "Inter";
src: url("/assets/fonts/inter-latin-ext.woff2") format("woff2");
font-weight: 100 900;
font-style: normal;
font-display: swap;
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
font-family: "Inter stand-in";
src: local("Arial"), local("Helvetica Neue"), local("Liberation Sans");
size-adjust: 110.18%;
font-weight: 100 900;
font-style: normal;
}
:root {
--ink:        #0C0D0F;
--ink-2:      #14161A;
--ink-3:      #1E2126;
--paper:      #F2EFE9;
--paper-2:    #E9E5DD;
--paper-3:    #DDD8CD;
--signal:      #D6F03C;
--signal-mark: #7A8A00;
--signal-text: #5C6900;
--signal-ink:  #D6F03C;
--signal-display: #6E7D00;
--danger:      #BE330E;
--danger-ink:  #FF6337;
--bg:          var(--paper);
--fg:          var(--ink);
--fg-muted:    #63605A;
--fg-faint:    #67635A;
--rule:        rgba(12, 13, 15, 0.16);
--rule-strong: rgba(12, 13, 15, 0.42);
--accent:      var(--signal-text);
--accent-fill: var(--signal-mark);
--field-bg:    transparent;
--selection:   rgba(214, 240, 60, 0.42);
--font-sans: "Inter", "Inter stand-in", -apple-system, BlinkMacSystemFont,
"Segoe UI", "Helvetica Neue", Arial, sans-serif;
--t-display: clamp(3.2rem, 10.4vw, 9rem);
--t-h1:      clamp(2.5rem, 6.6vw, 5.25rem);
--t-h2:      clamp(1.95rem, 4.4vw, 3.5rem);
--t-h3:      clamp(1.3rem, 2.1vw, 1.85rem);
--t-h4:      clamp(1.05rem, 1.4vw, 1.25rem);
--t-lede:    clamp(1.125rem, 1.55vw, 1.5rem);
--t-body:    1.0625rem;
--t-small:   0.9375rem;
--t-meta:    0.75rem;
--lh-display: 1.2;
--lh-head:    1.2;
--lh-body:    1.5;
--tr-display: normal;
--tr-head:    normal;
--tr-meta:    0.1em;
--gutter:      clamp(20px, 4.6vw, 76px);
--max:         1620px;
--max-read:    62ch;
--section:     clamp(78px, 11vw, 178px);
--section-tight: clamp(56px, 7vw, 104px);
--stack-1: 8px;
--stack-2: 16px;
--stack-3: 24px;
--stack-4: 40px;
--stack-5: 64px;
--stack-6: 96px;
--ease:      cubic-bezier(0.22, 0.61, 0.36, 1);
--ease-out:  cubic-bezier(0.16, 1, 0.3, 1);
--dur-fast:  180ms;
--dur:       420ms;
--dur-slow:  900ms;
--header-h: 68px;
}
@media (min-width: 900px) {
:root { --header-h: 82px; }
}
.on-ink {
--bg:          var(--ink);
--fg:          var(--paper);
--fg-muted:    #9A968D;
--fg-faint:    #8A857C;
--rule:        rgba(242, 239, 233, 0.18);
--rule-strong: rgba(242, 239, 233, 0.46);
--accent:      var(--signal-ink);
--accent-fill: var(--signal-ink);
--danger:      var(--danger-ink);
--selection:   rgba(214, 240, 60, 0.26);
background: var(--bg);
color: var(--fg);
}
.on-paper-2 {
--bg: var(--paper-2);
background: var(--bg);
}
*, *::before, *::after { box-sizing: border-box; }
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
scroll-padding-top: calc(var(--header-h) + 24px);
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
}
body {
margin: 0;
background: var(--paper);
color: var(--ink);
font-family: var(--font-sans);
font-size: var(--t-body);
line-height: var(--lh-body);
font-weight: 400;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-synthesis-weight: none;
overflow-x: hidden;
}
body.is-locked { overflow: hidden; }
::selection { background: var(--selection); }
h1, h2, h3, h4, h5, h6, p, figure, blockquote, ul, ol, dl, dd { margin: 0; }
ul, ol { padding: 0; list-style: none; }
img, svg, video, picture { display: block; max-width: 100%; }
img, video { height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea {
font: inherit;
color: inherit;
background: none;
border: 0;
margin: 0;
}
button { cursor: pointer; }
hr { border: 0; border-top: 1px solid var(--rule); margin: 0; }
:focus { outline: none; }
:focus-visible {
outline: 2px solid var(--accent);
outline-offset: 3px;
}
.wordmark { padding-block: 6px; margin-block: -6px; }
.link { padding-top: 8px; margin-top: -8px; }
.foot__bottom a,
.foot__bottom button,
.mobile-nav__link,
.mobile-nav__disclosure {
font-family: var(--font-sans);
font-size: 0.9375rem;
font-weight: 500;
letter-spacing: -0.01em;
text-transform: none;
}
.foot__col a,
.foot__entity a,
.foot__bottom a,
.foot__bottom button,
.hero__meta a { padding-block: 5px; margin-block: -5px; }
.skip-link {
position: absolute;
left: var(--gutter);
top: -100px;
z-index: 1000;
background: var(--ink);
color: var(--paper);
padding: 14px 20px;
font-family: var(--font-sans);
font-size: 0.9375rem;
font-weight: 500;
letter-spacing: -0.01em;
transition: top var(--dur-fast) var(--ease);
}
.skip-link:focus-visible { top: 12px; outline-offset: 2px; }
.sr-only {
position: absolute;
width: 1px; height: 1px;
padding: 0; margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
clip-path: inset(50%);
white-space: nowrap;
border: 0;
}
.container {
width: 100%;
max-width: var(--max);
margin-inline: auto;
padding-inline: var(--gutter);
}
.container--read { max-width: calc(var(--max-read) + var(--gutter) * 2); }
.section { padding-block: var(--section); }
.section--tight { padding-block: var(--section-tight); }
.section--flush-top { padding-top: 0; }
.measure { max-width: var(--max-read); }
.body-lg.measure, .prose.body-lg { max-width: 56ch; }
.measure-sm { max-width: 46ch; }
.measure-xs { max-width: 34ch; }
.grid {
display: grid;
grid-template-columns: repeat(12, minmax(0, 1fr));
column-gap: clamp(16px, 2vw, 32px);
}
.display {
font-size: var(--t-display);
line-height: var(--lh-display);
letter-spacing: var(--tr-display);
font-weight: 700;
text-wrap: balance;
}
.h1 { font-size: var(--t-h1); line-height: var(--lh-head); letter-spacing: var(--tr-head); font-weight: 700; text-wrap: balance; }
.h2 { font-size: var(--t-h2); line-height: var(--lh-head); letter-spacing: var(--tr-head); font-weight: 700; text-wrap: balance; }
.h3 { font-size: var(--t-h3); line-height: var(--lh-head); letter-spacing: normal; font-weight: 600; }
.h4 { font-size: var(--t-h4); line-height: var(--lh-head); letter-spacing: normal; font-weight: 600; }
.lede { font-size: var(--t-lede); line-height: 1.5; letter-spacing: normal; font-weight: 400; text-wrap: pretty; }
.body-lg { font-size: clamp(1.0625rem, 1.15vw, 1.1875rem); line-height: 1.55; }
.small { font-size: var(--t-small); }
.muted { color: var(--fg-muted); }
.faint { color: var(--fg-faint); }
.meta {
font-family: var(--font-sans);
font-size: var(--t-meta);
line-height: 1.2;
letter-spacing: var(--tr-meta);
text-transform: uppercase;
font-weight: 500;
}
.prose p + p { margin-top: 1.15em; }
.prose a {
text-decoration: underline;
text-underline-offset: 0.22em;
text-decoration-thickness: 1px;
text-decoration-color: var(--rule-strong);
transition: text-decoration-color var(--dur-fast) var(--ease);
}
.prose a:hover { text-decoration-color: var(--accent); }
.stack-1 > * + * { margin-top: var(--stack-1); }
.stack-2 > * + * { margin-top: var(--stack-2); }
.stack-3 > * + * { margin-top: var(--stack-3); }
.stack-4 > * + * { margin-top: var(--stack-4); }
.stack-5 > * + * { margin-top: var(--stack-5); }
.accent { color: var(--accent); }
.btn {
--btn-fg: var(--bg);
--btn-bg: var(--fg);
--btn-edge: var(--fg);
display: inline-flex;
align-items: center;
gap: 10px;
padding: 13px 20px;
border-radius: 3px;
background: var(--btn-bg);
color: var(--btn-fg);
border: 1px solid var(--btn-edge);
font-family: var(--font-sans);
font-size: 0.9375rem;
font-weight: 500;
line-height: 1.2;
letter-spacing: -0.01em;
white-space: nowrap;
transition: background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease),
border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease);
}
.btn .btn-arrow {
display: block;
width: 13px;
height: 9px;
transition: transform var(--dur) var(--ease-out);
will-change: transform;
}
.btn:hover {
--btn-bg: var(--ink);
--btn-fg: var(--signal);
--btn-edge: var(--signal);
}
.btn:hover .btn-arrow { transform: translateX(4px); }
.btn:active { transform: translateY(1px); }
.btn[aria-disabled="true"],
.btn:disabled {
--btn-bg: var(--paper-3);
--btn-fg: var(--fg-faint);
--btn-edge: var(--paper-3);
pointer-events: none;
}
.btn--ghost {
--btn-bg: transparent;
--btn-fg: var(--fg);
--btn-edge: var(--rule-strong);
}
.btn--lg { padding: 16px 26px; font-size: 1rem; }
@media (prefers-reduced-motion: reduce) {
.btn, .btn .btn-arrow { transition: background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease); }
.btn:active { transform: none; }
.btn:hover .btn-arrow { transform: none; }
}
.link {
display: inline-flex;
align-items: baseline;
gap: 10px;
position: relative;
padding-bottom: 3px;
font-family: var(--font-sans);
font-size: 0.9375rem;
font-weight: 500;
letter-spacing: -0.01em;
}
.link::after {
content: "";
position: absolute;
left: 0; right: 0; bottom: 0;
height: 1px;
background: currentColor;
transform-origin: left;
transform: scaleX(1);
transition: transform var(--dur) var(--ease-out);
}
.link:hover { color: var(--accent); }
.link:hover::after { transform: scaleX(0); transform-origin: right; }
.site-head {
position: fixed;
inset: 0 0 auto 0;
z-index: 90;
height: var(--header-h);
color: var(--fg);
transition: background var(--dur) var(--ease), color var(--dur) var(--ease),
transform var(--dur) var(--ease);
}
.site-head::after {
content: "";
position: absolute;
left: 0; right: 0; bottom: 0;
height: 1px;
background: var(--rule);
opacity: 0;
transition: opacity var(--dur) var(--ease);
}
.site-head.is-stuck { background: var(--bg); }
.site-head.is-stuck::after { opacity: 1; }
.site-head.is-hidden { transform: translateY(-100%); }
@media (prefers-reduced-motion: reduce) {
.site-head { transition: background var(--dur) var(--ease), color var(--dur) var(--ease); }
}
.site-head.is-open,
.site-head.is-flyout {
--bg: var(--ink);
--fg: var(--paper);
--accent: var(--signal-ink);
--accent-fill: var(--signal-ink);
--rule: rgba(242, 239, 233, 0.18);
background: var(--ink);
color: var(--paper);
}
.site-head__inner {
height: 100%;
display: flex;
align-items: center;
justify-content: space-between;
gap: 32px;
}
.wordmark {
display: inline-flex;
align-items: center;
gap: 10px;
font-size: 1.0625rem;
font-weight: 500;
letter-spacing: -0.03em;
line-height: 1;
}
.wordmark__mark { width: 13px; height: 13px; flex: none; }
.wordmark__mark rect { fill: currentColor; }
.wordmark__mark rect.is-accent { fill: var(--accent); }
.wordmark:hover .wordmark__mark rect.is-accent { fill: currentColor; }
.nav { display: none; }
@media (min-width: 1000px) {
.nav { display: flex; align-items: center; gap: 4px; }
}
.nav__item { position: relative; }
.nav__link {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 16px;
font-family: var(--font-sans);
font-size: 0.9375rem;
font-weight: 500;
letter-spacing: -0.01em;
color: var(--fg);
transition: color var(--dur-fast) var(--ease);
}
.nav__link:hover, .nav__link[aria-expanded="true"] { color: var(--accent); }
.nav__link[aria-current="page"] { color: var(--accent); }
.nav__chev {
width: 7px; height: 7px;
transition: transform var(--dur-fast) var(--ease);
}
.nav__link[aria-expanded="true"] .nav__chev { transform: rotate(180deg); }
.nav__cta { margin-left: 12px; }
.flyout {
position: fixed;
left: 0; right: 0;
top: var(--header-h);
background: var(--ink);
color: var(--paper);
--bg: var(--ink);
--fg: var(--paper);
--rule: rgba(242, 239, 233, 0.16);
--fg-muted: #9A968D;
--accent: var(--signal-ink);
--accent-fill: var(--signal-ink);
border-top: 1px solid rgba(242, 239, 233, 0.16);
opacity: 0;
visibility: hidden;
transform: translateY(-8px);
transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease-out),
visibility var(--dur);
}
.flyout[data-open="true"] { opacity: 1; visibility: visible; transform: none; }
.flyout__inner {
display: grid;
grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
gap: clamp(32px, 5vw, 96px);
padding-block: clamp(36px, 4vw, 60px) clamp(40px, 4.5vw, 68px);
}
.flyout__aside { max-width: 34ch; }
.flyout__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(24px, 3vw, 56px); }
.flyout__link {
display: block;
padding: 18px 0;
border-top: 1px solid var(--rule);
transition: color var(--dur-fast) var(--ease);
}
.flyout__link:hover { color: var(--signal-ink); }
.flyout__link .h4 { transition: transform var(--dur) var(--ease-out); }
.flyout__link:hover .h4 { transform: translateX(6px); }
.flyout__link p { color: var(--fg-muted); margin-top: 4px; }
.mobile-toggle {
display: inline-flex;
align-items: center;
gap: 10px;
padding: 13px 0 13px 12px;
font-family: var(--font-sans);
font-size: 0.9375rem;
font-weight: 500;
letter-spacing: -0.01em;
color: var(--fg);
}
@media (min-width: 1000px) { .mobile-toggle { display: none; } }
.mobile-toggle__bars { display: grid; gap: 4px; width: 18px; }
.mobile-toggle__bars span {
display: block; height: 1px; background: currentColor;
transition: transform var(--dur) var(--ease-out), opacity var(--dur-fast) var(--ease);
}
.site-head.is-open .mobile-toggle__bars span:nth-child(1) { transform: translateY(2.5px) rotate(45deg); }
.site-head.is-open .mobile-toggle__bars span:nth-child(2) { opacity: 0; }
.site-head.is-open .mobile-toggle__bars span:nth-child(3) { transform: translateY(-2.5px) rotate(-45deg); }
.mobile-nav {
position: fixed;
inset: var(--header-h) 0 0 0;
z-index: 89;
background: var(--ink);
color: var(--paper);
--bg: var(--ink);
--fg: var(--paper);
--rule: rgba(242, 239, 233, 0.16);
--fg-muted: #9A968D;
--accent: var(--signal-ink);
--accent-fill: var(--signal-ink);
display: flex;
flex-direction: column;
overflow-y: auto;
overscroll-behavior: contain;
visibility: hidden;
opacity: 0;
transition: opacity var(--dur) var(--ease), visibility var(--dur);
}
.mobile-nav[data-open="true"] { visibility: visible; opacity: 1; }
@media (min-width: 1000px) { .mobile-nav { display: none; } }
.mobile-nav__scroll { flex: 1; padding-block: 8px 40px; }
.mobile-nav__row {
border-bottom: 1px solid var(--rule);
}
.mobile-nav__link,
.mobile-nav__disclosure {
display: flex;
width: 100%;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 22px 0;
text-align: left;
font-size: clamp(1.75rem, 8vw, 2.5rem);
line-height: 1.05;
letter-spacing: -0.035em;
font-weight: 500;
}
.mobile-nav__disclosure .sign {
position: relative;
width: 16px; height: 16px; flex: none;
transition: transform var(--dur) var(--ease-out);
}
.mobile-nav__disclosure .sign::before,
.mobile-nav__disclosure .sign::after {
content: ""; position: absolute; background: currentColor;
left: 50%; top: 50%;
}
.mobile-nav__disclosure .sign::before { width: 16px; height: 1px; transform: translate(-50%, -50%); }
.mobile-nav__disclosure .sign::after { width: 1px; height: 16px; transform: translate(-50%, -50%); transition: transform var(--dur) var(--ease-out); }
.mobile-nav__disclosure[aria-expanded="true"] .sign::after { transform: translate(-50%, -50%) scaleY(0); }
.mobile-nav__panel { display: none; padding-bottom: 20px; }
.mobile-nav__panel[data-open="true"] { display: block; }
.mobile-nav__sub {
display: block;
padding: 13px 0;
border-top: 1px solid var(--rule);
color: var(--fg-muted);
font-size: 1.0625rem;
letter-spacing: -0.01em;
}
.mobile-nav__sub:hover, .mobile-nav__sub[aria-current="page"] { color: var(--signal-ink); }
.mobile-nav__foot {
border-top: 1px solid var(--rule);
padding-block: 24px 40px;
display: grid;
gap: 20px;
}
.mobile-nav__foot .btn { justify-content: space-between; width: 100%; }
.media {
position: relative;
display: block;
overflow: hidden;
background: var(--paper-3);
isolation: isolate;
}
.on-ink .media { background: var(--ink-3); }
.media > img, .media > video {
width: 100%; height: 100%;
object-fit: cover;
display: block;
}
.media--parallax > .media__inner {
position: absolute;
inset: -8% 0;
will-change: transform;
}
.media--parallax > .media__inner > img,
.media--parallax > .media__inner > video { width: 100%; height: 100%; object-fit: cover; }
.media__placeholder {
position: absolute;
inset: 0;
display: flex;
flex-direction: column;
justify-content: space-between;
padding: clamp(16px, 1.8vw, 26px);
--ph-line: rgba(12, 13, 15, 0.075);
--ph-edge: rgba(12, 13, 15, 0.22);
color: #56534D;
background:
linear-gradient(var(--ph-edge), var(--ph-edge)) 0 0 / 100% 1px no-repeat,
linear-gradient(var(--ph-edge), var(--ph-edge)) 0 100% / 100% 1px no-repeat,
repeating-linear-gradient(to bottom, var(--ph-line) 0 1px, transparent 1px 56px),
repeating-linear-gradient(to right, var(--ph-line) 0 1px, transparent 1px 56px);
}
.media__placeholder-top {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 20px;
}
.on-ink .media__placeholder,
.media__placeholder .meta { display: block; }
.media__placeholder-name { color: #2B2924; }
.on-ink .media__placeholder-name,
.media__caption { margin-top: 12px; color: var(--fg-muted); }
.ratio-hero   { aspect-ratio: 16 / 10; }
.ratio-wide   { aspect-ratio: 16 / 7; }
.ratio-still  { aspect-ratio: 4 / 3; }
.ratio-tall   { aspect-ratio: 3 / 4; }
.ratio-square { aspect-ratio: 1 / 1; }
@media (max-width: 700px) {
.ratio-wide { aspect-ratio: 4 / 3; }
.ratio-hero { aspect-ratio: 4 / 3; }
}
.index { border-top: 0; }
.index__row {
display: grid;
grid-template-columns: 1fr;
gap: 8px 24px;
padding: clamp(14px, 1.8vw, 24px) 0;
position: relative;
transition: color var(--dur) var(--ease);
}
a.index__row::before {
content: "";
position: absolute;
left: calc(var(--gutter) * -1); right: calc(var(--gutter) * -1);
top: 0; bottom: 0;
background: var(--fg);
opacity: 0;
z-index: -1;
transition: opacity var(--dur) var(--ease);
}
.index__num { color: var(--fg-faint); }
.index__title { display: flex; align-items: baseline; gap: 14px; }
.index__arrow { width: 13px; height: 9px; flex: none; opacity: 0; transform: translateX(-8px); transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease-out); }
a.index__row:hover .index__arrow { opacity: 1; transform: none; }
a.index__row:hover { color: var(--accent); }
.index__desc { color: var(--fg-muted); max-width: 50ch; }
@media (min-width: 860px) {
.index__row {
grid-template-columns: 5rem minmax(0, 7fr) minmax(0, 11fr);
align-items: start;
gap: 0 clamp(24px, 3vw, 56px);
}
.index__row--wide { grid-template-columns: 5rem minmax(0, 9fr) minmax(0, 9fr); }
}
.steps { display: grid; gap: clamp(24px, 3vw, 44px); }
.step {
display: grid;
gap: 10px 24px;
}
@media (min-width: 860px) {
.step { grid-template-columns: 4.5rem minmax(0, 6fr) minmax(0, 10fr); align-items: baseline; }
.steps--compact .step { grid-template-columns: 3.25rem minmax(0, 1fr); }
.steps--compact .step p { grid-column: 2; }
}
.step__num { color: var(--accent); }
.step p, .deflist__item p { max-width: 58ch; }
.deflist { display: grid; gap: clamp(24px, 3vw, 44px); }
.deflist__item {
display: grid;
gap: 8px 24px;
}
@media (min-width: 780px) {
.deflist__item { grid-template-columns: minmax(0, 5fr) minmax(0, 9fr); align-items: baseline; }
}
.ruled-list li {
padding: 7px 0;
display: flex;
gap: 16px;
align-items: baseline;
}
.ruled-list li::before {
content: "";
flex: none;
width: 6px; height: 6px;
background: var(--accent-fill);
transform: translateY(-2px);
}
@media (min-width: 780px) {
.ruled-list--2col { columns: 2; column-gap: clamp(32px, 4vw, 72px); }
.ruled-list--2col li { break-inside: avoid; }
}
.sec-head {
display: grid;
gap: clamp(20px, 3vw, 40px);
padding-bottom: clamp(36px, 5vw, 72px);
}
@media (min-width: 900px) {
.sec-head { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: end; }
.sec-head--stack { grid-template-columns: 1fr; }
}
.sec-head__eyebrow {
display: flex;
align-items: center;
gap: 12px;
color: var(--fg-muted);
margin-bottom: clamp(20px, 2.5vw, 32px);
}
.statement {
font-size: clamp(1.5rem, 3.4vw, 2.75rem);
line-height: 1.16;
letter-spacing: -0.03em;
font-weight: 400;
text-wrap: pretty;
max-width: 22ch;
}
.crosslinks {
display: grid;
gap: clamp(14px, 1.8vw, 24px);
}
.crosslink {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 20px;
padding: 4px 0;
transition: color var(--dur-fast) var(--ease);
}
.crosslink:hover { color: var(--accent); }
.crosslink__meta { color: var(--fg-faint); text-align: right; }
@media (min-width: 700px) {
.crosslinks--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(32px, 5vw, 88px); }
}
.link > svg,
.crosslink svg,
.mobile-nav__link > svg,
.flyout__aside svg { width: 13px; height: 9px; flex: none; align-self: center; }
.link { white-space: nowrap; }
.crosslink__meta { display: inline-flex; align-items: center; gap: 12px; }
.form { display: grid; gap: 0; border-top: 1px solid var(--rule-strong); }
.field { position: relative; border-bottom: 1px solid var(--rule); padding-block: 6px 0; }
.field--half { }
@media (min-width: 720px) {
.form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(24px, 4vw, 64px); }
.form__row > .field { border-bottom: 1px solid var(--rule); }
}
.field__label {
display: block;
font-family: var(--font-sans);
font-size: var(--t-meta);
letter-spacing: var(--tr-meta);
text-transform: uppercase;
color: var(--fg-muted);
padding-top: 14px;
}
.field__label .req { color: var(--accent); }
.field__control,
.field select,
.field textarea,
.field input {
display: block;
width: 100%;
padding: 10px 0 18px;
font-size: clamp(1.0625rem, 1.4vw, 1.25rem);
letter-spacing: -0.015em;
color: var(--fg);
background: var(--field-bg);
border: 0;
border-radius: 0;
appearance: none;
}
.field textarea { resize: vertical; min-height: 7.5em; line-height: 1.5; }
.field input::placeholder, .field textarea::placeholder { color: var(--fg-faint); }
.field select {
background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),
linear-gradient(135deg, currentColor 50%, transparent 50%);
background-position: right 6px center, right 1px center;
background-size: 6px 6px, 6px 6px;
background-repeat: no-repeat;
padding-right: 24px;
cursor: pointer;
}
.field select option { color: #111; background: #fff; }
.field:focus-within { border-bottom-color: var(--accent); }
.field:focus-within .field__label { color: var(--fg); }
.field input:focus-visible, .field textarea:focus-visible, .field select:focus-visible {
outline: none;
}
.field:focus-within::after {
content: "";
position: absolute; left: 0; right: 0; bottom: -1px;
height: 1px; background: var(--accent);
}
.field[data-invalid="true"] { border-bottom-color: var(--danger); }
.field__error {
display: none;
font-family: var(--font-sans);
font-size: var(--t-meta);
letter-spacing: 0.06em;
color: var(--danger);
padding-bottom: 12px;
}
.field[data-invalid="true"] .field__error { display: block; }
.form__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 20px;
padding-top: clamp(28px, 3.5vw, 44px);
}
.form__status {
font-family: var(--font-sans);
font-size: var(--t-meta);
letter-spacing: 0.06em;
line-height: 1.5;
max-width: 46ch;
}
.form__status[data-state="error"] { color: var(--danger); }
.form__consent {
padding-block: 22px;
border-bottom: 1px solid var(--rule);
color: var(--fg-muted);
}
.setup-note {
border: 1px solid var(--accent);
padding: 16px 20px;
margin-bottom: clamp(28px, 4vw, 48px);
color: var(--fg);
display: grid;
gap: 6px;
}
.setup-note .meta { color: var(--accent); }
.site-foot { padding-block: clamp(56px, 7vw, 96px) 32px; }
.foot__top {
display: grid;
gap: clamp(40px, 5vw, 72px);
padding-bottom: clamp(48px, 6vw, 88px);
}
@media (min-width: 900px) {
.foot__top { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); }
}
.foot__cols {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: clamp(28px, 4vw, 48px) clamp(20px, 3vw, 48px);
}
@media (min-width: 700px) { .foot__cols { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.foot__col h3 { color: var(--fg-faint); margin-bottom: 18px; }
.foot__col li + li { margin-top: 9px; }
.foot__col a {
font-size: var(--t-small);
letter-spacing: -0.01em;
color: var(--fg);
transition: color var(--dur-fast) var(--ease);
}
.foot__col a:hover { color: var(--accent); }
.foot__legal {
border-top: 1px solid var(--rule);
padding-top: 32px;
display: grid;
gap: 28px;
}
@media (min-width: 900px) {
.foot__legal { grid-template-columns: minmax(0, 5fr); }
}
.foot__entity { color: var(--fg-muted); font-size: var(--t-small); line-height: 1.65; }
.foot__entity strong { color: var(--fg); font-weight: 500; }
.foot__bottom {
border-top: 1px solid var(--rule);
margin-top: 32px;
padding-top: 24px;
display: flex;
flex-wrap: wrap;
gap: 16px 32px;
justify-content: space-between;
color: var(--fg-faint);
}
.foot__bottom a:hover { color: var(--accent); }
.foot__wordmark {
font-size: clamp(3.5rem, 15vw, 13rem);
line-height: 0.82;
letter-spacing: -0.055em;
font-weight: 500;
color: var(--fg);
opacity: 0.1;
user-select: none;
margin-top: clamp(40px, 6vw, 80px);
overflow: hidden;
}
.consent {
position: fixed;
z-index: 95;
left: 0; right: 0; bottom: 0;
background: var(--ink);
color: var(--paper);
--rule: rgba(242, 239, 233, 0.2);
--fg: var(--paper);
--fg-muted: #9A968D;
--accent: var(--signal-ink);
--accent-fill: var(--signal-ink);
border-top: 1px solid rgba(242, 239, 233, 0.2);
transform: translateY(100%);
transition: transform var(--dur-slow) var(--ease-out);
}
.consent[data-open="true"] { transform: none; }
.consent__inner {
display: grid;
gap: 24px;
padding-block: clamp(24px, 3vw, 36px);
}
@media (min-width: 940px) {
.consent__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: center; gap: 48px; }
}
.consent__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-start; }
@media (min-width: 940px) { .consent__actions { justify-content: flex-end; } }
.consent-dialog {
position: fixed;
inset: 0;
z-index: 96;
display: none;
align-items: flex-end;
justify-content: center;
}
.consent-dialog[data-open="true"] { display: flex; }
.consent-dialog__scrim { position: absolute; inset: 0; background: rgba(12, 13, 15, 0.6); }
.consent-dialog__panel {
position: relative;
width: min(680px, 100%);
max-height: 88vh;
overflow-y: auto;
background: var(--paper);
color: var(--ink);
padding: clamp(24px, 4vw, 44px);
border-top: 3px solid var(--signal);
}
@media (min-width: 700px) {
.consent-dialog { align-items: center; }
.consent-dialog__panel {
border: 1px solid var(--ink);
border-top: 3px solid var(--signal);
}
}
.toggle-row {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 20px;
padding: 20px 0;
border-bottom: 1px solid var(--rule);
}
.toggle {
position: relative;
flex: none;
width: 46px; height: 24px;
border: 1px solid var(--rule-strong);
transition: background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);
}
.toggle::after {
content: "";
position: absolute;
top: 3px; left: 3px;
width: 16px; height: 16px;
background: var(--ink);
transition: transform var(--dur) var(--ease-out), background var(--dur-fast) var(--ease);
}
.toggle[aria-checked="true"] { background: var(--signal); border-color: var(--signal); }
.toggle[aria-checked="true"]::after { transform: translateX(22px); background: #fff; }
.toggle[aria-disabled="true"] { opacity: 0.45; cursor: not-allowed; }
.hero {
position: relative;
padding-top: calc(var(--header-h) + clamp(48px, 9vw, 128px));
padding-bottom: clamp(48px, 7vw, 104px);
}
.hero__grid { display: grid; gap: clamp(32px, 4vw, 56px); }
.hero__title { margin-bottom: clamp(24px, 3vw, 36px); }
.hero__meta {
display: flex;
flex-wrap: wrap;
gap: 10px 28px;
color: var(--fg-muted);
padding-bottom: clamp(24px, 3vw, 40px);
}
.hero__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 16px 28px;
padding-top: clamp(28px, 3.5vw, 44px);
}
@media (min-width: 980px) {
.hero--split .hero__grid {
grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
align-items: end;
gap: clamp(40px, 5vw, 88px);
}
}
.system {
display: grid;
}
@media (min-width: 760px) { .system { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1180px) { .system { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.system__cell {
padding: clamp(20px, 2.2vw, 30px) clamp(18px, 1.8vw, 26px) clamp(28px, 3vw, 44px);
display: flex;
flex-direction: column;
gap: 12px;
min-height: clamp(190px, 20vw, 260px);
position: relative;
}
.system__cell::after {
content: "";
position: absolute;
left: clamp(18px, 1.8vw, 26px);
bottom: clamp(14px, 1.6vw, 22px);
width: 14px; height: 1px;
background: var(--accent-fill);
transform-origin: left;
transform: scaleX(0.4);
transition: transform var(--dur-slow) var(--ease-out);
}
.system__cell.is-in::after { transform: scaleX(1); }
.system__idx { color: var(--fg-faint); }
.system__cell p { color: var(--fg-muted); font-size: var(--t-small); }
.split { display: grid; gap: clamp(32px, 4vw, 64px); align-items: start; }
@media (min-width: 900px) {
.split { grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: clamp(48px, 6vw, 112px); }
.split--reverse > *:first-child { order: 2; }
.split--center { align-items: center; }
.split--narrow { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
}
.industries { border-top: 0; }
.industry-row {
display: grid;
gap: 12px 24px;
padding: clamp(14px, 1.8vw, 24px) 0;
position: relative;
transition: color var(--dur) var(--ease);
}
.industry-row:hover { color: var(--accent); }
@media (min-width: 900px) {
.industry-row {
grid-template-columns: 4.5rem minmax(0, 5fr) minmax(0, 8fr) auto;
align-items: baseline;
gap: 0 clamp(24px, 3vw, 56px);
}
}
.industry-row__go { width: 13px; height: 9px; opacity: 0.35; transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease-out); }
.industry-row:hover .industry-row__go { opacity: 1; transform: translateX(5px); }
.cta-band { padding-block: clamp(76px, 10vw, 168px); }
.cta-band__inner { display: grid; gap: clamp(28px, 4vw, 52px); }
@media (min-width: 900px) {
.cta-band__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: end; }
}
.doc { display: grid; gap: clamp(32px, 5vw, 72px); }
@media (min-width: 1000px) {
.doc { grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); align-items: start; }
.doc__nav { position: sticky; top: calc(var(--header-h) + 40px); }
}
.doc__nav h2 { color: var(--fg-faint); margin-bottom: 16px; }
.doc__nav li { padding-block: 2px; }
.doc__nav a {
display: block;
padding: 11px 0;
font-size: var(--t-small);
color: var(--fg-muted);
transition: color var(--dur-fast) var(--ease);
}
.doc__nav a:hover, .doc__nav a.is-active { color: var(--accent); }
.doc__body { max-width: 74ch; }
.doc__section { padding-block: clamp(32px, 4vw, 52px); }
.doc__section:first-child { border-top: 0; padding-top: 0; }
.doc__section h2 { margin-bottom: 20px; }
.doc__section h3 { margin: 28px 0 10px; }
.doc__section p, .doc__section li { color: var(--fg-muted); }
.doc__section p + p, .doc__section p + ul, .doc__section ul + p { margin-top: 1.1em; }
.doc__section ul { margin-top: 0.8em; }
.doc__section ul li {
padding-left: 22px;
position: relative;
margin-top: 8px;
}
.doc__section ul li::before {
content: "";
position: absolute;
left: 0; top: 0.72em;
width: 8px; height: 1px;
background: var(--accent-fill);
}
.doc__section strong { color: var(--fg); font-weight: 500; }
.flag {
border-left: 2px solid var(--accent-fill);
padding: 4px 0 4px 18px;
margin-top: 1.1em;
}
.flag .meta { color: var(--accent); display: block; margin-bottom: 6px; }
.doc__table { width: 100%; border-collapse: collapse; margin-top: 1.2em; font-size: var(--t-small); }
.doc__table th, .doc__table td {
text-align: left;
padding: 14px 16px 14px 0;
border-bottom: 1px solid var(--rule);
vertical-align: top;
color: var(--fg-muted);
}
.doc__table th { color: var(--fg); font-weight: 500; border-bottom-color: var(--rule-strong); }
.doc__table-wrap { overflow-x: auto; }
.notfound {
min-height: 72vh;
display: flex;
align-items: center;
padding-top: calc(var(--header-h) + clamp(40px, 6vw, 96px));
padding-bottom: clamp(56px, 8vw, 120px);
}
.notfound__code {
font-size: clamp(6rem, 26vw, 22rem);
line-height: 0.8;
letter-spacing: -0.06em;
font-weight: 500;
}
[data-reveal] {
opacity: 0;
transform: translateY(18px);
transition: opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);
transition-delay: var(--reveal-delay, 0ms);
}
[data-reveal].is-in { opacity: 1; transform: none; }
[data-reveal="mask"] {
opacity: 1;
transform: none;
clip-path: inset(0 0 100% 0);
transition: clip-path 1100ms var(--ease-out);
transition-delay: var(--reveal-delay, 0ms);
}
[data-reveal="mask"].is-in { clip-path: inset(0 0 0 0); }
[data-reveal="rule"] {
opacity: 1;
transform: none;
transform-origin: left;
scale: 0 1;
transition: scale 1000ms var(--ease-out);
transition-delay: var(--reveal-delay, 0ms);
}
[data-reveal="rule"].is-in { scale: 1 1; }
.js-off [data-reveal] { opacity: 1; transform: none; clip-path: none; scale: none; }
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.001ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.001ms !important;
scroll-behavior: auto !important;
}
[data-reveal] { opacity: 1 !important; transform: none !important; clip-path: none !important; scale: none !important; }
.media--parallax > .media__inner { position: static; inset: auto; transform: none !important; }
}
@media print {
.site-head, .mobile-nav, .consent, .consent-dialog, .site-foot .foot__wordmark { display: none !important; }
body { background: #fff; color: #000; }
}
html.is-smooth { scroll-behavior: auto; }
html.is-smooth [data-scroll-wrapper] {
position: fixed;
inset: 0;
overflow: hidden;
}
html.is-smooth [data-scroll-content] { will-change: transform; }
.ticker { display: inline-block; vertical-align: baseline; }
.ticker__window {
display: inline-block;
height: calc(var(--lh-display, 1.2) * 1em);
overflow: hidden;
vertical-align: bottom;
}
.ticker__strip {
display: block;
animation-duration: 8s;
animation-timing-function: var(--ease-out);
animation-iteration-count: infinite;
animation-delay: 0.6s;
animation-fill-mode: both;
will-change: transform;
}
.ticker__word {
display: block;
height: calc(var(--lh-display, 1.2) * 1em);
line-height: var(--lh-display, 1.2);
white-space: nowrap;
}
.roulette {
--row: 1.25em;
position: relative;
display: inline-block;
height: calc(var(--row) * 5);
}
.roulette__track,
.roulette__focus { display: block; overflow: hidden; }
.roulette__track {
height: calc(var(--row) * 5);
color: var(--fg-faint);
opacity: 0.32;
}
.roulette__focus {
position: absolute;
top: calc(var(--row) * 2);
left: 0;
height: var(--row);
color: var(--accent);
}
.roulette__focus .roulette__strip { margin-top: calc(var(--row) * -2); }
.roulette__strip {
display: block;
animation-timing-function: var(--ease-out);
animation-iteration-count: infinite;
animation-delay: 0.5s;
animation-fill-mode: both;
will-change: transform;
}
.roulette__item {
display: block;
height: var(--row);
line-height: var(--row);
white-space: nowrap;
}
@media (max-width: 760px) {
.roulette,
.roulette__track { height: calc(var(--row) * 3); }
.roulette__track .roulette__strip { margin-top: calc(var(--row) * -1); }
.roulette__focus { top: var(--row); }
}
.js-off .ticker__strip,
.js-off .roulette__strip { animation: none; }
@media (prefers-reduced-motion: reduce) {
html.is-smooth [data-scroll-wrapper] { position: static; overflow: visible; }
html.is-smooth { scroll-behavior: auto; }
.ticker__strip,
.roulette__strip { animation: none !important; }
}
.story {
position: relative;
background: var(--bg);
}
.story__pin { position: relative; }
.story__wash { display: none; }
.story__panel { padding: calc(var(--header-h) + var(--section-tight)) 0 var(--section-tight); }
.story__panel-body {
max-width: var(--max);
margin-inline: auto;
padding-inline: var(--gutter);
}
.story__meta {
display: flex;
flex-wrap: wrap;
gap: 8px 24px;
margin-bottom: var(--stack-4);
color: var(--fg-faint);
}
.story__eyebrow {
display: flex;
align-items: baseline;
gap: 14px;
margin-bottom: var(--stack-3);
color: var(--accent);
}
.deck__num { color: var(--fg-faint); }
.story__title { margin: 0; }
.story__title .accent { display: block; }
.story__title .ticker { color: var(--signal-display); }
.story__body {
max-width: 46ch;
margin: var(--stack-3) 0 0;
color: var(--fg-muted);
}
.story__actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: var(--stack-3) var(--stack-4);
margin-top: var(--stack-4);
}
.story__stage {
position: relative;
aspect-ratio: 16 / 9;
border-top: 1px solid var(--rule);
border-bottom: 1px solid var(--rule);
overflow: hidden;
}
.story__clip { position: absolute; inset: 0; }
.story__clip + .story__clip { display: none; }
.story__video,
.story__slot,
.story__slot .media__placeholder { width: 100%; height: 100%; }
.story__video {
display: block;
object-fit: cover;
object-position: center;
}
.story__slot { padding: 0; }
html.is-story .story .story__pin {
position: relative;
display: flex;
align-items: flex-end;
min-height: 100svh;
overflow: hidden;
isolation: isolate;
}
html.is-story .story .story__stage {
position: absolute;
z-index: 1;
inset: 0;
width: auto;
height: auto;
aspect-ratio: auto;
transform: none;
border: 0;
}
html.is-story .story .story__clip + .story__clip { display: block; }
html.is-story .story .story__clip {
opacity: 0;
transition: opacity 90ms linear;
}
html.is-story .story .story__clip:first-child { opacity: 1; }
html.is-story .story .story__video {
transform: translateZ(0);
backface-visibility: hidden;
}
html.is-story .story .story__panel {
position: relative;
z-index: 3;
width: 100%;
padding: 0 0 clamp(20px, 3.6vh, 44px);
}
html.is-story .story .story__panel-body {
max-height: calc(33svh - 0.5rem);
overflow: hidden;
}
html.is-story .story .story__panel-body {
width: min(78vw, 92rem);
max-width: none;
margin-inline: 0;
}
html.is-story .story .story__title { font-size: clamp(1.8rem, min(4.3vw, 6.4vh), 4rem); }
html.is-story .story .story__meta { margin-bottom: clamp(12px, 2.4vh, 26px); }
html.is-story .story .story__body {
margin-top: clamp(12px, 2.4vh, 26px);
font-size: clamp(0.9rem, min(1.55vw, 2.1vh), 1.3rem);
}
html.is-story .story .story__actions { margin-top: clamp(14px, 2.8vh, 30px); }
.deck { position: relative; }
.deck__slide {
position: sticky;
top: 0;
min-height: 100svh;
display: flex;
align-items: center;
padding-block: calc(var(--header-h) + var(--stack-4)) var(--stack-5);
background: var(--bg);
color: var(--fg);
}
html.is-smooth .deck__slide {
position: relative;
will-change: transform;
}
.deck__slide-inner { width: 100%; }
.deck__slide .story__title { font-size: clamp(1.9rem, min(5.2vw, 6.4vh), 4.4rem); line-height: 1.03; }
.deck__slide .story__body { margin-top: clamp(14px, 2.6vh, 28px); }
.deck__slide .story__panel-body { max-width: var(--max); }
.slide__split {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
gap: clamp(28px, 4.5vw, 80px);
align-items: center;
}
.slide__visual .media { aspect-ratio: 4 / 3; padding: 0; }
.slide__visual .media__inner,
.slide__visual img {
width: 100%;
height: 100%;
object-fit: cover;
}
.story__title--roulette {
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 0 0.32em;
}
.story__cards {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: clamp(10px, 1.4vw, 22px);
margin-top: clamp(20px, 3.4vh, 40px);
}
.card { display: block; color: inherit; text-decoration: none; }
.card__media {
display: block;
overflow: hidden;
background: var(--paper-3);
}
.card__media .media { aspect-ratio: 3 / 4; padding: 0; }
.card__media img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform var(--dur-slow) var(--ease-out);
}
.card:hover .card__media img { transform: scale(1.03); }
.card__label {
display: flex;
align-items: baseline;
gap: 10px;
margin-top: clamp(8px, 1.4vh, 14px);
}
.card__label .meta { color: var(--accent); }
.card__label strong { font-size: var(--t-h4); font-weight: 600; }
.story__rail {
display: flex;
align-items: center;
gap: 12px;
margin-top: clamp(20px, 3.4vh, 40px);
flex-wrap: wrap;
color: var(--fg-faint);
max-width: 52rem;
}
.story__rail-go { width: 13px; flex: none; color: var(--accent); }
.story__steps {
margin: clamp(20px, 3.4vh, 40px) 0 0;
padding: 0;
list-style: none;
max-width: 52rem;
}
.story__steps li {
display: grid;
grid-template-columns: 52px 1fr;
align-items: baseline;
padding: clamp(6px, 1.1vh, 13px) 0;
}
.story__steps span { color: var(--accent); }
.story__steps strong { font-size: var(--t-h4); font-weight: 500; letter-spacing: -0.01em; }
@media (min-width: 761px) and (max-aspect-ratio: 1.4 / 1) {
html.is-story .story .story__video { object-fit: contain; }
}
@media (max-width: 1000px) {
html.is-story .story .story__panel-body { width: min(86vw, 40rem); margin-inline: 0; }
.slide__split { gap: clamp(20px, 3vw, 40px); }
}
@media (max-width: 820px) {
.slide__split { grid-template-columns: 1fr; gap: clamp(16px, 2.6vh, 30px); }
.slide__visual .media { aspect-ratio: 16 / 9; max-height: 26svh; }
}
@media (max-width: 760px) {
html.is-story .story .story__pin { align-items: flex-end; }
html.is-story .story .story__panel {
padding-top: 0;
padding-bottom: clamp(20px, 4vh, 44px);
}
html.is-story .story .story__wash {
display: block;
position: absolute;
z-index: 2;
inset: 0;
pointer-events: none;
background: linear-gradient(
to top,
var(--bg) 0%,
var(--bg) 38%,
color-mix(in srgb, var(--bg) 97%, transparent) 39%,
color-mix(in srgb, var(--bg) 76%, transparent) 40.4%,
color-mix(in srgb, var(--bg) 42%, transparent) 41.9%,
color-mix(in srgb, var(--bg) 13%, transparent) 43.3%,
transparent 44.6%
);
}
html.is-story .story .story__panel-body { max-height: none; overflow: visible; }
html.is-story .story .story__panel-body { width: 100%; margin-inline: 0; }
html.is-story .story .story__title { font-size: clamp(2.1rem, min(10.6vw, 6vh), 3.4rem); }
html.is-story .story .story__body { font-size: var(--t-small); line-height: 1.45; }
html.is-story .story .story__meta { gap: 6px 14px; font-size: 0.6875rem; }
}
@media (max-width: 760px) and (max-height: 700px) {
html.is-story .story .story__title { font-size: clamp(1.7rem, min(9.6vw, 5.4vh), 2.4rem); }
html.is-story .story .story__meta { margin-bottom: clamp(8px, 1.6vh, 14px); }
html.is-story .story .story__actions { margin-top: clamp(10px, 2vh, 16px); gap: 10px 16px; }
html.is-story .story .story__panel { padding-bottom: clamp(14px, 2.6vh, 24px); }
html.is-story .story .story__wash {
background: linear-gradient(
to top,
var(--bg) 0%,
var(--bg) 41.5%,
color-mix(in srgb, var(--bg) 82%, transparent) 42.7%,
color-mix(in srgb, var(--bg) 44%, transparent) 44%,
color-mix(in srgb, var(--bg) 14%, transparent) 44.9%,
transparent 45.5%
);
}
}
@media (max-width: 760px) {
.deck__slide { padding-block: calc(var(--header-h) + var(--stack-3)) var(--stack-4); }
.deck__slide .story__title { font-size: clamp(1.7rem, min(8.2vw, 5vh), 2.6rem); }
.deck__slide .story__body { font-size: var(--t-small); line-height: 1.45; }
.slide__visual .media { max-height: 22svh; }
.story__cards {
display: flex;
gap: 12px;
margin-inline: calc(var(--gutter) * -1);
padding-inline: var(--gutter);
overflow-x: auto;
scroll-snap-type: x mandatory;
-webkit-overflow-scrolling: touch;
}
.card { flex: 0 0 46%; scroll-snap-align: start; }
.story__steps li,
.story__steps strong,
.story__rail { gap: 8px; }
}
@media (max-width: 760px) and (max-height: 740px) {
html.is-story .story .story__body { font-size: 0.8125rem; }
}
@media (max-width: 480px) {
.deck__slide { padding-block: calc(var(--header-h) + 10px) var(--stack-3); }
.story__steps li,
}
@media (prefers-reduced-motion: reduce) {
html.is-story .story .story__pin {
display: block;
min-height: 0;
overflow: visible;
}
html.is-story .story .story__panel {
padding: calc(var(--header-h) + var(--section-tight)) 0 var(--section-tight);
}
html.is-story .story .story__panel-body { width: auto; max-width: var(--max); }
html.is-story .story .story__stage {
position: relative;
inset: auto;
aspect-ratio: 16 / 9;
border-top: 1px solid var(--rule);
border-bottom: 1px solid var(--rule);
}
html.is-story .story .story__clip { opacity: 1; transition: none; }
html.is-story .story .story__clip + .story__clip { display: none; }
html.is-story .story .story__wash { display: none; }
.deck__slide { position: relative; transform: none !important; }
}
@keyframes tk-story-open{0%{transform:translateY(0)}19.5%{transform:translateY(0)}25%{transform:translateY(-1.2em)}44.5%{transform:translateY(-1.2em)}50%{transform:translateY(-2.4em)}69.5%{transform:translateY(-2.4em)}75%{transform:translateY(-3.6em)}94.5%{transform:translateY(-3.6em)}100%{transform:translateY(-4.8em)}}
.ticker__strip[style*="tk-story-open"]{animation-duration:8s}
@keyframes rl-slide-services{0%{transform:translateY(0)}13%{transform:translateY(0)}16.6667%{transform:translateY(-1.25em)}29.6666%{transform:translateY(-1.25em)}33.3333%{transform:translateY(-2.5em)}46.3333%{transform:translateY(-2.5em)}50%{transform:translateY(-3.75em)}63%{transform:translateY(-3.75em)}66.6667%{transform:translateY(-5em)}79.6666%{transform:translateY(-5em)}83.3333%{transform:translateY(-6.25em)}96.3333%{transform:translateY(-6.25em)}100%{transform:translateY(-7.5em)}}
.roulette__strip[style*="rl-slide-services"]{animation-duration:13.200000000000001s}