@font-face { font-family: "Figtree"; src: url("fonts/figtree-latin.woff2") format("woff2"); font-weight: 300 900; 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: "Figtree"; src: url("fonts/figtree-latin-ext.woff2") format("woff2"); font-weight: 300 900; font-display: swap; unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+1EF2-1EFF, U+20A0-20C0, U+2C60-2C7F, U+A720-A7FF; }
:root {
--ink: #0e1a2f;
--text: #334155;
--muted: #566173;
--line: #e2e7ee;
--soft: #f5f7fa;
--paper: #ffffff;
--navy: #1b2a4a;
--navy-deep: #111d36;
--on-dark: #ffffff;
--on-dark-muted: #b9c6da;
--sky: #6fcaf3;
--sky-tint: #eaf6fd;
--sky-deep: #0b6fa4;
--coral: #ef8079;
--coral-deep: #b4453b;
--coral-tint: #fdeeec;
--green: #17744c;
--header-h: 80px;
--font: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
--wrap: 1200px;
--gutter: clamp(20px, 4vw, 40px);
--bleed: calc((100vw - min(100vw - 2 * var(--gutter), var(--wrap))) / 2);
--r-lg: 20px;
--r: 14px;
--section: clamp(80px, 10vw, 136px);
--ease: cubic-bezier(0.16, 1, 0.3, 1);
--shadow: 0 1px 2px rgb(14 26 47 / .06), 0 16px 40px -16px rgb(14 26 47 / .28);
}
*, *::before, *::after { box-sizing: border-box; }
html { background: var(--navy-deep); scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 8px); -webkit-text-size-adjust: 100%; overflow-x: clip; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; animation: none !important; } }
body { margin: 0; background: var(--paper); color: var(--text); font: 400 1.0625rem/1.6 var(--font); -webkit-font-smoothing: antialiased; overflow-x: clip; }
body { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
main { flex: 1 0 auto; display: flex; flex-direction: column; }
main > :last-child { flex: 1 0 auto; }
::selection { background: var(--coral); color: var(--ink); }
img { display: block; max-width: 100%; height: auto; }
h1, h2, h3, h4 { color: var(--ink); margin: 0; line-height: 1.08; text-wrap: balance; }
p, li, dd, figcaption, blockquote { text-wrap: pretty; }
p, blockquote, figure { margin: 0; }
a { color: var(--sky-deep); text-underline-offset: .2em; text-decoration-thickness: 1px; transition: color .25s var(--ease), text-decoration-color .3s var(--ease), text-underline-offset .3s var(--ease); }
a:hover { color: var(--ink); text-decoration-color: var(--coral); text-underline-offset: .3em; }
:is(.link-arrow, .nav a, .signin, .footer__grid a, .footer__btn, .crumbs a) { text-decoration-line: underline; text-decoration-color: transparent; text-decoration-thickness: 2px; text-underline-offset: .08em; }
:is(.link-arrow, .nav a, .signin, .footer__grid a, .footer__btn, .crumbs a):hover { text-decoration-color: var(--coral); text-underline-offset: .34em; }
:focus-visible { outline: 3px solid var(--sky-deep); outline-offset: 3px; border-radius: 6px; }
.grid-bg--dark :focus-visible, .hero :focus-visible, .site-header:not(.is-solid) :focus-visible { outline-color: var(--sky); }
.wrap { width: min(100% - 2 * var(--gutter), var(--wrap)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip { position: absolute; left: 16px; top: -60px; z-index: 60; background: var(--ink); color: #fff; padding: 10px 16px; border-radius: 8px; }
.skip:focus { top: 12px; color: #fff; }
.skip:not(:focus) { opacity: 0; pointer-events: none; }
.h2 { font-size: clamp(2.125rem, 4.2vw, 3.5rem); font-weight: 700; letter-spacing: -.03em; }
.h2--split span { display: block; }
.grid-bg { position: relative; isolation: isolate; --grid: rgb(14 26 47 / .06); --grid-mask: radial-gradient(ellipse 75% 60% at 50% 0%, #000 25%, transparent 75%); }
.grid-bg::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; border-radius: inherit;
background-image: linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);
background-size: 56px 56px; background-position: center top; -webkit-mask-image: var(--grid-mask); mask-image: var(--grid-mask); }
.grid-bg--dark { --grid: rgb(255 255 255 / .07); }
.glows { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; }
.glow { position: absolute; inset: 0; container-type: size;
--grid-lines: linear-gradient(#000 1px, transparent 1px), linear-gradient(90deg, #000 1px, transparent 1px);
-webkit-mask-image: var(--grid-lines); mask-image: var(--grid-lines);
-webkit-mask-size: 56px 56px; mask-size: 56px 56px; -webkit-mask-position: center top; mask-position: center top; }
.glow::before { content: ""; position: absolute; left: calc(var(--gx) - var(--rx)); top: calc(var(--gy) - var(--ry)); width: calc(var(--rx) * 2); height: calc(var(--ry) * 2);
background: radial-gradient(closest-side, var(--c) 0%, color-mix(in srgb, var(--c) 55%, transparent) 38%, transparent 72%);
animation: var(--path) var(--d) ease-in-out infinite; }
.glow--sky { --c: rgb(111 202 243 / .4); --rx: 720px; --ry: 560px; --gx: 60%; --gy: 40%; --path: glow-sky; --d: 24s; }
.glow--coral { --c: rgb(239 128 121 / .36); --rx: 640px; --ry: 480px; --gx: 72%; --gy: 94%; --path: glow-coral; --d: 30s; }
.hero .glow { --keep-clear: linear-gradient(90deg, transparent 0 36%, rgb(0 0 0 / .5) 48%, #000 60%);
-webkit-mask-image: var(--keep-clear), var(--grid-lines); mask-image: var(--keep-clear), var(--grid-lines);
-webkit-mask-size: 100% 100%, 56px 56px, 56px 56px; mask-size: 100% 100%, 56px 56px, 56px 56px;
-webkit-mask-position: 0 0, center top, center top; mask-position: 0 0, center top, center top;
-webkit-mask-repeat: no-repeat, repeat, repeat; mask-repeat: no-repeat, repeat, repeat;
-webkit-mask-composite: source-in, source-over, source-over; mask-composite: intersect, add, add; }
.hero .glow::before { background: radial-gradient(closest-side, var(--c) 0%, color-mix(in srgb, var(--c) 60%, transparent) 30%, color-mix(in srgb, var(--c) 25%, transparent) 58%, transparent 85%); }
.hero--page .glow { --keep-clear: linear-gradient(90deg, transparent 0 42%, rgb(0 0 0 / .5) 56%, #000 70%); }
@media (max-width: 900px) {
.hero .glow { --keep-clear: linear-gradient(180deg, transparent 0 52%, #000 72%); }
.hero--page .glow { --keep-clear: linear-gradient(180deg, transparent 0 70%, #000 100%); }
}
.glow--sky-soft { --c: rgb(111 202 243 / .26); --rx: 520px; --ry: 380px; --gx: 88%; --gy: 8%; --path: glow-sky-soft; --d: 36s; }
@keyframes glow-sky { 0%, 100% { transform: none; } 30% { transform: translate(-4cqw, 32cqh); } 55% { transform: translate(6cqw, 50cqh); } 80% { transform: translate(2cqw, -26cqh); } }
@keyframes glow-coral { 0%, 100% { transform: none; } 35% { transform: translate(18cqw, -14cqh); } 65% { transform: translate(-12cqw, 6cqh); } }
@keyframes glow-sky-soft { 0%, 100% { transform: none; } 50% { transform: translate(-22cqw, 8cqh); } }
.glow--j-coral { --c: rgb(239 128 121 / .55); --rx: 420px; --ry: 300px; --gx: 88%; --gy: 46%; --path: glow-j-coral; --d: 48s; }
.glow--j-sky { --c: rgb(111 202 243 / .45); --rx: 360px; --ry: 260px; --gx: 10%; --gy: 36%; --path: glow-j-sky; --d: 56s; }
@keyframes glow-j-coral { 0%, 100% { transform: none; } 33% { transform: translate(-24cqw, -24cqh); } 66% { transform: translate(-14cqw, 36cqh); } }
@keyframes glow-j-sky { 0%, 100% { transform: none; } 33% { transform: translate(28cqw, -18cqh); } 66% { transform: translate(16cqw, 38cqh); } }
.glow--p-sky { --c: rgb(111 202 243 / .5); --rx: 420px; --ry: 320px; --gx: 8%; --gy: 90%; --path: glow-p-sky; --d: 28s; }
.glow--p-coral { --c: rgb(239 128 121 / .45); --rx: 340px; --ry: 260px; --gx: 80%; --gy: 20%; --path: glow-p-coral; --d: 34s; }
@keyframes glow-p-sky { 0%, 100% { transform: none; } 50% { transform: translate(18cqw, -20cqh); } }
@keyframes glow-p-coral { 0%, 100% { transform: none; } 50% { transform: translate(12cqw, 50cqh); } }
.glow--c-coral { --c: rgb(239 128 121 / .45); --rx: 520px; --ry: 280px; --gx: 48%; --gy: 12%; --path: glow-c-coral; --d: 40s; }
.glow--c-sky { --c: rgb(111 202 243 / .4); --rx: 320px; --ry: 220px; --gx: 10%; --gy: 70%; --path: glow-c-sky; --d: 30s; }
@keyframes glow-c-coral { 0%, 100% { transform: none; } 50% { transform: translate(6cqw, 8cqh); } }
@keyframes glow-c-sky { 0%, 100% { transform: none; } 50% { transform: translate(80cqw, -10cqh); } }
@media (max-width: 900px) {
.glow--sky { --gx: 70%; --gy: 55%; --path: glow-sky-m; }
}
@keyframes glow-sky-m { 0%, 100% { transform: none; } 50% { transform: translate(-40cqw, 15cqh); } }
.has-shapes { position: relative; isolation: isolate; }
.shapes { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none;
--clear: linear-gradient(90deg, #000, rgb(0 0 0 / .45) 18%, rgb(0 0 0 / .45) 82%, #000);
-webkit-mask-image: var(--clear); mask-image: var(--clear); }
.hero .shapes { --clear: linear-gradient(90deg, rgb(0 0 0 / .35) 0 48%, #000 66%); }
@media (max-width: 900px) { .hero .shapes { --clear: linear-gradient(180deg, rgb(0 0 0 / .35) 0 48%, #000 70%); } }
.shape { position: absolute; left: var(--x); top: var(--y); width: var(--s); height: var(--s); opacity: var(--o); filter: blur(var(--b)); animation: roam var(--d) ease-in-out var(--dl, 0s) infinite; will-change: transform; }
.shape--ring { border: 4px solid var(--c); border-radius: 50%; }
.shape--blob { border-radius: 50%; background: var(--c); }
.shape--square { border-radius: 26%; background: var(--c); }
.shape--tri { background: var(--c); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M9 5.5v29l24-14.5z' fill='none' stroke='black' stroke-width='4' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M9 5.5v29l24-14.5z' fill='none' stroke='black' stroke-width='4' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.shape--rocket { background: var(--c); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='58 57 62 70'%3E%3Cpath d='M117.385,59.345c0,0-25.192-0.247-36.898,17.587c0,0-13.329,1.176-20.471,20.693 c0,0-1.072,2.23,2.043,1.854c0,0,7.641-6.604,13.464-6.579c0,0,5.066,8.896,12.542,11.373c0,0,0.132,7.793-4.872,13.601 c0,0-1.132,2.204,1.778,2.401c0,0,16.352-8.907,18.557-22.285C103.527,97.989,118.713,85.934,117.385,59.345 M99.67,84.885 c-3.35,0.135-6.173-2.473-6.309-5.819c-0.133-3.35,2.477-6.172,5.826-6.305c3.348-0.135,6.172,2.473,6.307,5.82 C105.628,81.93,103.021,84.752,99.67,84.885'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='58 57 62 70'%3E%3Cpath d='M117.385,59.345c0,0-25.192-0.247-36.898,17.587c0,0-13.329,1.176-20.471,20.693 c0,0-1.072,2.23,2.043,1.854c0,0,7.641-6.604,13.464-6.579c0,0,5.066,8.896,12.542,11.373c0,0,0.132,7.793-4.872,13.601 c0,0-1.132,2.204,1.778,2.401c0,0,16.352-8.907,18.557-22.285C103.527,97.989,118.713,85.934,117.385,59.345 M99.67,84.885 c-3.35,0.135-6.173-2.473-6.309-5.819c-0.133-3.35,2.477-6.172,5.826-6.305c3.348-0.135,6.172,2.473,6.307,5.82 C105.628,81.93,103.021,84.752,99.67,84.885'/%3E%3C/svg%3E") center / contain no-repeat; }
@keyframes roam {
0%, 100% { transform: translate(0, 0) rotate(0deg); }
25% { transform: translate(var(--x1), var(--y1)) rotate(calc(var(--r) * .5)); }
50% { transform: translate(var(--x2), var(--y2)) rotate(var(--r)); }
75% { transform: translate(var(--x3), var(--y3)) rotate(calc(var(--r) * .3)); }
}
@media (max-width: 640px) { .shapes .shape:nth-child(n+7) { display: none; } }
.shapes--calm .shape { animation-duration: calc(var(--d) * 1.8); opacity: calc(var(--o) * .7); }
.who { display: grid; gap: 2px; margin-top: 14px; font-size: .9375rem; line-height: 1.35; color: var(--muted); }
.who strong { color: var(--ink); font-size: 1rem; }
.who cite { font-style: normal; font-weight: 600; color: var(--coral-deep); }
.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 24px; border: 0; border-radius: 999px; font: 700 1rem/1 var(--font); text-decoration: none; cursor: pointer; transition: filter .2s var(--ease), box-shadow .2s var(--ease), transform .2s var(--ease), background-color .2s var(--ease); }
.btn--primary { color: #fff; background: radial-gradient(130% 160% at 22% 8%, #f8b1aa 0%, var(--coral) 46%, var(--coral) 100%); box-shadow: inset 0 1px 0 rgb(255 255 255 / .35), 0 1px 2px rgb(14 26 47 / .2); }
.btn--primary:hover { color: #fff; filter: brightness(1.04) saturate(1.05); box-shadow: inset 0 1px 0 rgb(255 255 255 / .4), 0 8px 18px -8px rgb(14 26 47 / .45); }
.btn--primary:active { transform: translateY(1px); }
.btn--primary[disabled] { opacity: .6; cursor: progress; }
.btn--ghost-dark { color: var(--on-dark); background: rgb(255 255 255 / .06); box-shadow: inset 0 0 0 1.5px rgb(255 255 255 / .35); }
.btn--ghost-dark:hover { color: var(--on-dark); background: rgb(255 255 255 / .12); }
.btn--sm { min-height: 44px; padding: 0 18px; font-size: 1rem; }
.ico { fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.link-arrow { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: inherit; }
.link-arrow svg { width: 18px; height: 18px; fill: none; stroke: var(--coral); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s var(--ease); }
.link-arrow:hover { color: inherit; }
.link-arrow:hover svg { transform: translateX(3px); }
.site-header { position: fixed; top: 0; left: 0; right: 0; z-index: 40; background: transparent; transition: background-color .3s var(--ease), box-shadow .3s var(--ease), backdrop-filter .3s; }
.site-header__inner { transition: padding .35s var(--ease); }
.site-header:not(.is-glass):not(.is-solid) .site-header__inner { padding-top: 24px; }
.site-header__inner { display: flex; align-items: center; gap: 40px; min-height: var(--header-h); }
.brand img { width: 144px; height: auto; }
.nav ul { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; }
.nav a, .signin { color: var(--on-dark); font-size: 1rem; font-weight: 500; }
.nav a:hover, .signin:hover { color: var(--on-dark); }
.signin { font-weight: 700; }
.site-header__actions { margin-left: auto; display: flex; align-items: center; gap: 22px; }
.site-header.is-glass { background: rgb(17 29 54 / .72); backdrop-filter: saturate(1.3) blur(14px); -webkit-backdrop-filter: saturate(1.3) blur(14px); box-shadow: 0 1px 0 rgb(255 255 255 / .08); }
.site-header.is-solid { background: rgb(255 255 255 / .95); backdrop-filter: saturate(1.4) blur(12px); -webkit-backdrop-filter: saturate(1.4) blur(12px); box-shadow: 0 1px 0 var(--line); }
.site-header.is-solid .nav a, .site-header.is-solid .signin { color: var(--ink); }
.hero { overflow: clip; padding: calc(var(--header-h) + 24px + clamp(40px, 6vw, 88px)) 0 calc(clamp(56px, 7vw, 96px) + 48px); color: var(--on-dark-muted);
background: var(--navy-deep); }
.hero__grid { display: grid; grid-template-columns: 1.02fr 1fr; gap: clamp(36px, 5vw, 72px); align-items: center; }
.hero h1 { color: var(--on-dark); font-size: clamp(2.5rem, 5vw, 4.25rem); font-weight: 700; letter-spacing: -.035em; line-height: 1.02; }
.hero h1 span { display: block; text-wrap: balance; }
.hero__actions .btn { min-height: 56px; padding: 0 30px; font-size: 1.0625rem; }
.hero h1, .hero .lede, .hero__note { text-shadow: 0 1px 2px rgb(17 29 54 / .7), 0 2px 18px rgb(17 29 54 / .9), 0 0 42px rgb(17 29 54 / .75); }
.hero h1 span + span { color: var(--sky); }
.lede { margin-top: 24px; font-size: clamp(1.125rem, 1.4vw, 1.3125rem); line-height: 1.55; color: #d3dcea; max-width: 30em; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.hero__media { position: relative; margin-right: calc(-1 * var(--bleed)); }
.hero__media > img { width: 100%; height: clamp(460px, 44vw, 640px); object-fit: cover; object-position: 50% 40%; border-radius: var(--r-lg) 0 0 var(--r-lg); box-shadow: 0 40px 80px -30px rgb(0 0 0 / .5); }
.quote-card { position: absolute; left: clamp(-40px, -3vw, -16px); bottom: 28px; max-width: 340px; padding: 20px 22px; border-radius: var(--r); background: var(--paper); color: var(--ink); box-shadow: 0 24px 48px -20px rgb(0 0 0 / .45); }
.quote-card p { font-size: 1.0625rem; font-weight: 600; line-height: 1.45; }
.proof { position: relative; z-index: 1; margin-top: -48px; padding: clamp(40px, 5vw, 56px) 0 clamp(40px, 5vw, 56px); border-radius: 40px 40px 0 0; background: var(--paper); box-shadow: 0 -1px 0 rgb(255 255 255 / .08); }
.proof__line { margin-inline: auto; text-align: center; font-size: clamp(1.625rem, 3vw, 2.5rem); font-weight: 600; line-height: 1.2; letter-spacing: -.025em; color: var(--muted); }
.proof__line strong { color: var(--ink); font-weight: 700; }
.proof__line span { display: block; text-wrap: balance; }
.proof__keep strong { color: var(--coral-deep); }
.marquee { margin-top: clamp(36px, 4.5vw, 52px); }
.marquee__head { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.marquee h3 { font-size: .9375rem; font-weight: 600; color: var(--muted); }
.marquee__viewport { margin-top: 24px; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.marquee__rail { display: flex; width: max-content; will-change: transform; }
.marquee__list { display: flex; align-items: center; gap: clamp(44px, 5vw, 72px); margin: 0; padding: 0 clamp(22px, 2.5vw, 36px); list-style: none; }
.marquee__list img { height: 44px; width: auto; }
.no-js .marquee__rail, .reduce-motion .marquee__rail { width: auto; will-change: auto; }
.reduce-motion .marquee__viewport, .no-js .marquee__viewport { -webkit-mask-image: none; mask-image: none; }
.reduce-motion .marquee__list, .no-js .marquee__list { flex-wrap: wrap; justify-content: center; row-gap: 28px; }
.reduce-motion .marquee__list[aria-hidden] { display: none; }
.reduce-motion .marquee__rail { transform: none !important; }
.results { padding: clamp(40px, 6vw, 72px) 0 var(--section); background: linear-gradient(to bottom, var(--paper), var(--sky-tint) 55%, var(--paper)); }
.results .h2 { max-width: 16ch; }
@media (min-width: 1024px) { .results .h2 { max-width: none; } }
.stats { display: grid; grid-template-columns: 1.1fr repeat(3, 1fr); gap: 16px; margin-top: 48px; }
.stats__lead { position: relative; display: grid; align-content: space-between; gap: 18px; padding: 28px; border-radius: var(--r-lg); background: var(--navy); color: var(--on-dark-muted); overflow: hidden; }
.stats__lead strong { font-size: clamp(2.5rem, 4.4vw, 3.5rem); font-weight: 700; letter-spacing: -.035em; line-height: 1; color: #fff; font-variant-numeric: tabular-nums; }
.stats__lead span { color: #fff; font-size: 1.125rem; font-weight: 600; line-height: 1.35; }
.stats__lead p { font-size: .9375rem; }
.stat { display: grid; align-content: start; gap: 10px; padding: 28px; border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line), 0 18px 40px -28px rgb(14 26 47 / .35); }
.stat strong { font-size: clamp(3rem, 5.6vw, 4.75rem); font-weight: 700; letter-spacing: -.045em; line-height: .95; color: var(--ink); font-variant-numeric: tabular-nums; }
.stat span { font-size: 1.125rem; color: var(--text); min-height: 2.7em; }
.meter { display: block; height: 8px; margin-top: 6px; border-radius: 99px; background: var(--coral-tint); overflow: hidden; }
.meter::after { content: ""; display: block; width: var(--v); height: 100%; border-radius: inherit; background: var(--coral); transform-origin: left; }
@media (prefers-reduced-motion: no-preference) { .js .stat .meter::after { transform: scaleX(0); transition: transform 1.2s var(--ease) .15s; } .js .stats.is-in .meter::after { transform: none; } }
.story-quote { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(28px, 5vw, 64px); align-items: center; margin-top: clamp(56px, 7vw, 88px); }
.story-quote > img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r-lg); }
.story-quote blockquote > p { font-size: clamp(1.375rem, 2.2vw, 1.875rem); font-weight: 600; line-height: 1.22; letter-spacing: -.02em; color: var(--ink); }
.story-quote .who { margin-top: 22px; font-size: 1rem; }
.offer { padding: var(--section) 0; color: #e6eef8; background: linear-gradient(160deg, #1c6799 0%, #1a5584 45%, var(--navy) 100%); }
.offer .h2 { color: #fff; }
.offer__head { display: grid; grid-template-columns: auto 1fr; gap: 24px 64px; align-items: end; }
.offer__head p { font-size: 1.1875rem; color: #e6eef8; }
.pillars { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 56px; }
.pillars article { padding: 28px; border-radius: var(--r-lg); background: rgb(14 26 47 / .45); }
.pillars .ico { width: 40px; height: 40px; color: var(--coral); stroke-width: 1.6; }
.pillars h3 { margin-top: 20px; color: #fff; font-size: 1.625rem; letter-spacing: -.02em; }
.pillars p { margin-top: 10px; color: #d7e2ef; }
.offer__foot { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 48px; align-items: baseline; margin-top: 48px; }
.offer__foot > p { font-size: 1.25rem; color: #e6eef8; }
.offer__foot strong { color: #fff; }
.offer__quote { padding: 24px 28px; border-radius: var(--r-lg); background: rgb(14 26 47 / .45); }
.offer__quote p { font-size: 1.125rem; color: #fff; font-weight: 500; }
.offer__quote .who { color: #c9d7e8; }
.offer__quote .who strong { color: #fff; }
.offer__quote .who cite { color: #fbc9c4; }
.voices { padding: var(--section) 0; background: var(--soft); }
.voices .h2 { max-width: 14ch; }
.voices__scroller:focus-visible { outline-offset: 6px; }
.voices__grid { columns: 3 300px; column-gap: 20px; margin: 48px 0 0; padding: 0; list-style: none; }
.voices__grid li { position: relative; break-inside: avoid; margin-bottom: 20px; }
.voices blockquote { position: relative; padding: 22px 28px 28px; border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.voices blockquote:has(.video)::before { display: none; }
.voices blockquote :is(.hang, .close-q) { display: none; }
.voices blockquote:has(.video) > p { position: relative; }
.voices blockquote:has(.video) > p::before { content: "“" / ""; position: absolute; left: -16px; top: -10px; text-indent: 0; font: 700 4rem/1 Georgia, "Times New Roman", serif; color: var(--coral); opacity: .55; }
.voices blockquote .video { margin: -22px -28px 22px; border-radius: var(--r-lg) var(--r-lg) 0 0; }
.voices blockquote .video__play { left: 14px; bottom: 14px; justify-content: center; width: 48px; min-height: 48px; padding: 0; }
.voices blockquote .video__play > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.voices blockquote > p:first-of-type { text-indent: 20px; }
.voices blockquote::before { content: "“" / ""; position: absolute; left: 12px; top: 12px; font: 700 4rem/1 Georgia, "Times New Roman", serif; color: var(--coral); opacity: .55; }
.voices blockquote > p { font-size: 1.125rem; line-height: 1.5; color: var(--ink); }
.voices__more { margin: 10px 0 0 4px; font-size: .9375rem; }
.voices__more .link-arrow { color: var(--ink); }
.toc--spaced { margin-top: 36px; }
.reasons--spaced { margin-top: 48px; }
.talk--page { background: var(--paper); }
.steps-row.steps-row--stack { --n: 1; gap: 22px; margin: 28px 0 32px; }
.steps-row--stack li { display: grid; grid-template-columns: 48px 1fr; column-gap: 18px; }
.steps-row--stack li::before { grid-row: span 2; }
.steps-row--stack h3 { margin-top: 10px; }
.steps-row--line { gap: 36px; margin: 0; }
.steps-row--line li { position: relative; }
.steps-row--line li:not(:last-child)::after { content: ""; position: absolute; left: 23px; top: 60px; bottom: -28px; width: 2px; border-radius: 2px; background: var(--coral-tint); }
.steps-row--line h3 { font-size: 1.375rem; }
.voices .who { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.hero__note { margin-top: 20px; font-size: .9375rem; color: var(--on-dark-muted); }
.problem { padding: var(--section) 0; }
.problem .h2 { font-size: clamp(2rem, 3.5vw, 3.25rem); }
.fixes__labels, .fixes li { display: grid; grid-template-columns: minmax(0, 1.1fr) 24px minmax(0, 1.25fr); column-gap: 20px; align-items: center; }
.fixes li { position: relative; }
.fixes li.is-led::after { content: ""; position: absolute; left: var(--lead-x); width: var(--lead-w); top: calc(var(--lead-y) - 2px); height: 4px; background: radial-gradient(circle, var(--sky-deep) 1.2px, transparent 1.6px) right 50% / 9px 4px repeat-x; -webkit-mask-image: linear-gradient(90deg, transparent, #000 80%); mask-image: linear-gradient(90deg, transparent, #000 80%); }
.fixes li.is-led .fixes__arrow { align-self: start; margin-top: calc(var(--lead-y) - 12px); }
.fixes__labels { margin-top: 44px; padding-bottom: 12px; font-size: .9375rem; font-weight: 700; color: var(--text); }
.fixes__labels span + span { grid-column: 3; color: var(--sky-deep); }
.fixes { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.fixes__pain { font-size: 1.125rem; font-weight: 500; line-height: 1.45; color: var(--text); }
.fixes__pain span:not(.sr-only) { display: block; margin-top: 4px; font-size: .875rem; font-weight: 400; color: var(--muted); }
.fixes__arrow { grid-column: 2; justify-self: center; width: 24px; height: 24px; color: var(--sky-deep); stroke-width: 2.2; }
.fixes__fix { display: flex; align-items: center; gap: 16px; padding: 16px 20px; border-radius: 16px; background: var(--paper); box-shadow: 0 0 0 1px var(--line), 0 14px 30px -24px rgb(14 26 47 / .35); font-size: 1.0625rem; font-weight: 600; line-height: 1.35; color: var(--ink); }
.fixes__fix .ico { flex: none; width: 44px; height: 44px; padding: 11px; border-radius: 12px; background: var(--sky-tint); color: var(--sky-deep); }
.fixes__result { margin-top: 12px; }
.fixes__result .problem__win { margin: 0; }
@media (max-width: 900px) {
.fixes__labels, .fixes li { grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1.2fr); column-gap: 14px; }
.fixes__pain { font-size: 1.0625rem; }
.fixes__fix { gap: 14px; padding: 14px 16px; font-size: 1rem; }
.fixes__fix .ico { width: 40px; height: 40px; padding: 10px; }
}
@media (max-width: 700px) {
.fixes__labels { display: none; }
.fixes { gap: 14px; margin-top: 32px; }
.fixes li { grid-template-columns: 1fr; border-radius: 16px; background: var(--paper); box-shadow: 0 0 0 1px var(--line), 0 14px 30px -24px rgb(14 26 47 / .35); overflow: hidden; }
.fixes__arrow { display: none; }
.fixes__pain { padding: 14px 18px; background: var(--soft); font-size: 1rem; font-weight: 400; color: var(--muted); }
.fixes__fix { padding: 14px 18px 16px; border-radius: 0; box-shadow: none; }
.fixes li.fixes__result { margin-top: 6px; background: none; box-shadow: none; overflow: visible; }
.fixes__result .fixes__pain { padding: 0 2px 12px; background: none; color: var(--text); }
}
.problem__win { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto 1fr; align-items: start; gap: 2px 20px; margin-top: 32px; padding: 22px 28px; border-radius: 22px; background: linear-gradient(120deg, var(--sky-tint) 0%, #f5fbff 100%); box-shadow: 0 0 0 1px rgb(11 111 164 / .2), 0 22px 44px -30px rgb(11 111 164 / .45); }
.problem__win strong { grid-row: span 2; margin-top: -4px; font-size: clamp(2.75rem, 4.4vw, 3.5rem); font-weight: 700; line-height: 1; letter-spacing: -.045em; color: var(--sky-deep); font-variant-numeric: tabular-nums; }
.problem__win span { font-size: 1.1875rem; font-weight: 700; line-height: 1.25; color: var(--ink); }
.problem__win small { align-self: start; font-size: .9375rem; color: var(--muted); }
.move { padding: var(--section) 0; }
.move__grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: clamp(28px, 5vw, 64px); align-items: start; margin-top: 48px; }
@media (max-width: 1180px) and (min-width: 901px) {
#switch .move__grid { grid-template-columns: 1fr; }
#switch .reasons { grid-template-columns: repeat(4, 1fr); gap: 0 32px; }
#switch .review ul { grid-template-columns: 1fr 1fr; column-gap: 32px; }
}
.move .reasons { grid-template-columns: 1fr 1fr; margin: 0; }
.review { padding: clamp(24px, 3vw, 36px); border-radius: 24px; background: var(--navy); color: #d3dcea; }
.review h3 { color: #fff; font-size: 1.375rem; letter-spacing: -.015em; }
.review ul { display: grid; gap: 12px; margin: 20px 0 0; padding: 0; list-style: none; }
.review li { display: flex; gap: 12px; align-items: baseline; }
.review li::before { content: ""; flex: none; width: 16px; height: 16px; transform: translateY(3px); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%23ef8079' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.journey__cta { grid-column: 3 / 5; justify-self: start; margin-top: 20px; }
.voices__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 16px; }
.voices__head h2 { min-width: 0; }
.voices__head .carousel-nav { flex-shrink: 0; }
.carousel-nav { display: none; gap: 8px; }
.carousel-nav__btn { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 1px solid #758296; background: var(--paper); color: var(--ink); cursor: pointer; }
.carousel-nav__btn svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.carousel-nav__btn:hover:not(:disabled) { border-color: var(--coral-deep); color: var(--coral-deep); }
.carousel-nav__btn:disabled { opacity: .35; cursor: default; }
.switch { padding: var(--section) 0 clamp(64px, 8vw, 104px); }
.section-head { display: grid; grid-template-columns: 1.15fr 1fr; gap: 24px 64px; align-items: end; }
.section-head p { font-size: 1.1875rem; color: var(--muted); max-width: 30em; }
.section-head:not(.section-head--stack) > :last-child:not(:first-child), .offer__head > p { justify-self: end; text-align: right; }
@media (max-width: 1100px) {
.section-head, .offer__head { grid-template-columns: 1fr; }
.section-head:not(.section-head--stack) > :last-child:not(:first-child), .offer__head > p { justify-self: start; text-align: left; }
}
.reasons { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 48px; margin: 48px 0 0; padding: 0; list-style: none; }
.reasons li { padding: 24px 0; border-top: 2px solid var(--line); transition: border-color .25s var(--ease); }
.reasons li:hover { border-top-color: var(--coral); }
.reasons h3 { font-size: 1.3125rem; letter-spacing: -.015em; }
.reasons--icons .ico { display: block; width: 48px; height: 48px; margin-bottom: 16px; padding: 12px; border-radius: 14px; background: var(--coral-tint); color: var(--coral-deep); }
.section--soft .reasons--icons .ico { background: #fff; box-shadow: 0 0 0 1px var(--line); }
.reasons p { margin-top: 6px; color: var(--muted); }
.journey { overflow: clip; padding: clamp(72px, 9vw, 120px) 0; color: var(--on-dark-muted); background: var(--navy); }
.journey .h2 { color: #fff; }
.journey__steps { --nx: 27px; position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; margin: 56px 0 0; padding: 0; list-style: none; }
.journey__steps li { position: relative; }
.journey__n { position: relative; z-index: 1; margin-left: calc(-1 * var(--nx)); display: grid; place-items: center; width: 72px; height: 72px; border-radius: 50%; background: var(--c); color: var(--ink); font-size: 1.75rem; font-weight: 700; box-shadow: 0 0 0 8px var(--navy); }
.journey__steps > li:nth-child(2) { --c: #6fcaf3; --c2: #a4b8d8; --t: 3px; }
.journey__steps > li:nth-child(3) { --c: #a4b8d8; --c2: #d69fac; --t: 6px; }
.journey__steps > li:nth-child(4) { --c: #d69fac; --c2: #ef8079; --t: 10px; }
.journey__steps > li:nth-child(5) { --c: #ef8079; }
.journey__steps > li:nth-child(-n+4):not(.journey__beam)::after { content: ""; position: absolute; top: calc(36px - var(--t) / 2); left: calc(80px - var(--nx)); right: calc(-24px - var(--nx)); height: var(--t); border-radius: 99px; background: linear-gradient(90deg, var(--c), var(--c2)); transform-origin: left; }
.journey__steps .journey__beam { position: absolute; left: calc(75% + 24px + 72px - var(--nx)); right: calc(-1 * var(--bleed) - 2px); top: -54px; height: 180px; pointer-events: none; }
.journey__beam svg { display: block; width: 100%; height: 100%; }
.journey__steps h3 { margin-top: 24px; color: #fff; font-size: 1.625rem; letter-spacing: -.02em; }
.journey__steps p { margin-top: 8px; font-size: 1.0625rem; color: #d3dcea; max-width: 16em; }
.journey__beyond { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; margin-top: 56px; }
.journey__beyond p { grid-column: 3 / 5; font-size: 1.25rem; font-weight: 600; color: #fff; }
@media (prefers-reduced-motion: no-preference) {
.js .journey__steps > li:not(.journey__beam)::after { transform: scaleX(0); transition: transform .7s var(--ease); }
.js .journey__steps > li:nth-child(3)::after { transition-delay: .35s; }
.js .journey__steps > li:nth-child(4)::after { transition-delay: .7s; }
.js .journey__beam { clip-path: inset(-20% 100% -20% 0); transition: clip-path 1.8s var(--ease) 1.05s; }
.js .journey.is-in .journey__steps > li::after { transform: none; }
.js .journey.is-in .journey__beam { clip-path: inset(-20% 0 -20% 0); }
}
.options { padding: var(--section) 0; background: var(--soft); }
.plans { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 48px; }
.plan { display: grid; align-content: start; padding: clamp(28px, 4vw, 44px); border-radius: 24px; background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.plan h3 { font-size: clamp(1.5rem, 2.4vw, 2rem); letter-spacing: -.02em; }
.plan__tag { margin-top: 6px; font-size: 1.1875rem; font-weight: 600; color: var(--sky-deep); }
.plan__fit { margin-top: 12px; color: var(--muted); }
.plan h4 { margin-top: 28px; font-size: .9375rem; color: var(--ink); }
.plan__list { display: grid; gap: 10px; margin: 12px 0 0; padding: 0; list-style: none; }
.plan__list li { display: flex; gap: 10px; align-items: baseline; }
.plan__list li::before { content: ""; flex: none; width: 16px; height: 16px; transform: translateY(3px); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%230b6fa4' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.plan__list--you li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='%23566173' stroke-width='2'/%3E%3C/svg%3E"); }
.plan__extra { margin-top: 24px; padding: 12px 16px; border-radius: 12px; background: var(--coral-tint); color: var(--ink); font-weight: 500; }
.plan--turnkey { background: var(--navy); box-shadow: none; color: #d3dcea; position: relative; overflow: hidden; }
.plan--turnkey h3, .plan--turnkey h4 { color: #fff; }
.plan--turnkey .plan__tag { color: var(--coral); }
.plan--turnkey .plan__fit { color: var(--on-dark-muted); }
.plan--turnkey .plan__list li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%236fcaf3' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.plan--turnkey .plan__list--you li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='%23b9c6da' stroke-width='2'/%3E%3C/svg%3E"); }
.how { padding: var(--section) 0; }
.how__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 48px); margin-top: 48px; }
.flow h3 { margin-top: 28px; font-size: 1.5rem; letter-spacing: -.015em; }
.flow__shot { display: grid; place-items: center; height: 380px; padding: 28px; border-radius: var(--r-lg); background: var(--sky-tint); overflow: hidden; }
.flow__shot img { max-height: 324px; width: auto; border-radius: 10px; box-shadow: var(--shadow); }
.flow__shot--phone img { border-radius: 24px; }
.flow__steps { margin: 16px 0 0; padding: 0; list-style: none; }
.flow__steps li { display: flex; align-items: center; gap: 16px; padding: 14px 0; border-top: 1px solid var(--line); color: var(--muted); }
.flow__steps .ico { flex: none; width: 44px; height: 44px; padding: 11px; border-radius: 12px; background: var(--coral-tint); color: var(--coral-deep); }
.flow__steps strong { color: var(--ink); }
.people { overflow: clip; padding: var(--section) 0; color: #d3dcea; background: var(--navy-deep); }
.people__grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: clamp(32px, 6vw, 80px); align-items: center; }
.people img { width: calc(100% + var(--bleed)); max-width: none; height: clamp(420px, 46vw, 680px); margin-left: calc(-1 * var(--bleed)); object-fit: cover; object-position: 50% 12%; border-radius: 0 var(--r-lg) var(--r-lg) 0; }
.people .h2 { color: #fff; font-size: clamp(2.125rem, 3.8vw, 3.25rem); }
.people p { margin: 18px 0 26px; font-size: 1.1875rem; max-width: 26em; }
.people .link-arrow { color: #fff; }
.talk { padding: var(--section) 0; background: var(--sky-tint); }
.talk__grid { display: grid; grid-template-columns: 1fr 1.35fr; gap: clamp(32px, 6vw, 80px); align-items: start; }
.talk__copy p { margin-top: 16px; font-size: 1.125rem; }
.form { display: grid; gap: 20px; padding: clamp(24px, 4vw, 40px); background: var(--paper); border-radius: var(--r-lg); box-shadow: 0 30px 60px -36px rgb(14 26 47 / .45); }
.form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.form__row[hidden], .field[hidden] { display: none; }
.field { display: grid; gap: 8px; margin: 0; padding: 0; border: 0; min-width: 0; align-content: start; }
.field label, .field legend { padding: 0; font-weight: 600; font-size: .9375rem; color: var(--ink); }
.field__opt { font-weight: 400; color: var(--muted); }
.opt { font-weight: 400; color: var(--muted); font-size: .9375rem; }
.field input[type="text"], .field input[type="email"], .field input[type="tel"], .field textarea { width: 100%; min-height: 48px; padding: 12px 14px; font: 400 1rem/1.4 var(--font); color: var(--ink); background: var(--paper); border: 1px solid #758296; border-radius: 12px; transition: border-color .2s var(--ease), box-shadow .2s var(--ease); }
.field textarea { resize: vertical; }
.field input:hover, .field textarea:hover { border-color: var(--ink); }
.field input:focus, .field textarea:focus { outline: none; border-color: var(--sky-deep); box-shadow: 0 0 0 4px rgb(11 111 164 / .2); }
.field :is(input, textarea)[aria-invalid="true"] { border-color: #b3372f; border-width: 2px; }
.field__err { color: #b3372f; font-size: .9375rem; font-weight: 600; }
.choices { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.choices label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid #758296; border-radius: 999px; font-weight: 500; color: var(--text); cursor: pointer; transition: border-color .2s var(--ease), background-color .2s var(--ease); }
.choices label:hover { border-color: var(--ink); }
.choices label:has(input:checked) { border-color: var(--coral-deep); background: var(--coral-tint); color: var(--ink); box-shadow: inset 0 0 0 1px var(--coral-deep); }
.choices input:focus-visible { outline: none; }
.choices label:has(input:focus-visible) { outline: 3px solid var(--sky-deep); outline-offset: 3px; border-color: var(--sky-deep); }
.choices input { width: 16px; height: 16px; margin: 0; accent-color: var(--coral-deep); }
.form__submit { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.form__legal { color: var(--muted); font-size: .9375rem; }
.form__status { padding: 16px 18px; border-radius: 12px; background: var(--coral-tint); color: var(--ink); }
.form__status.is-sent { background: #e3f4ec; }
.form__status strong { display: block; }
.evidence { padding: var(--section) 0; }
.evidence .section-head .link-arrow { color: var(--ink); font-size: 1.0625rem; }
.stories { display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px; margin: 44px 0 0; padding: 0; list-style: none; }
.stories li { grid-column: span 2; }
.stories li:nth-child(n+4) { grid-column: span 3; }
.story { display: grid; grid-template-rows: auto auto 1fr; height: 100%; border-radius: var(--r-lg); overflow: hidden; background: var(--paper); box-shadow: 0 0 0 1px var(--line); text-decoration: none; transition: box-shadow .25s var(--ease), transform .25s var(--ease); }
.story:hover { transform: translateY(-3px); box-shadow: 0 0 0 1px var(--coral), var(--shadow); }
.story__img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.stories li:nth-child(n+4) .story__img { aspect-ratio: 21 / 9; }
.story__img--logo { display: grid; place-items: center; background: var(--soft); }
.story__img--logo img { height: 56px; width: auto; }
.story__org { padding: 20px 24px 0; font-size: .9375rem; font-weight: 700; color: var(--coral-deep); }
.story__title { padding: 6px 24px 24px; font-size: 1.25rem; font-weight: 700; line-height: 1.25; color: var(--ink); letter-spacing: -.01em; }
.close { padding: clamp(72px, 9vw, 120px) 0 clamp(56px, 7vw, 88px); background: var(--navy-deep); --grid-mask: radial-gradient(ellipse 60% 100% at 50% 40%, #000 20%, transparent 75%); }
.close__inner { display: grid; justify-items: center; gap: 28px; text-align: center; }
.close h2 { color: #fff; font-size: clamp(2.125rem, 4.4vw, 3.75rem); font-weight: 700; letter-spacing: -.035em; max-width: 16ch; }
.site-footer { padding: 0 0 32px; font-size: .9375rem; background: var(--navy-deep); color: var(--on-dark-muted); }
.footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 32px; padding-top: 56px; border-top: 1px solid transparent; }
main:has(> .close:last-child) + .site-footer .footer__grid { border-top-color: rgb(255 255 255 / .1); }
.footer__grid img { width: 220px; }
.footer__grid p { margin-top: 16px; }
.footer__grid nav { display: grid; align-content: start; gap: 10px; }
.footer__grid h2 { font-size: 1rem; font-weight: 700; color: #fff; margin-bottom: 4px; }
.footer__grid a { color: #d3dcea; }
.footer__grid a:hover { color: #fff; }
.footer__btn { justify-self: start; padding: 0; border: 0; background: none; font: inherit; color: #d3dcea; text-align: left; cursor: pointer; }
.footer__btn:hover { color: #fff; }
.site-footer :focus-visible { outline-color: var(--sky); }
.footer__base { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; margin-top: 48px; padding-top: 20px; border-top: 1px solid rgb(255 255 255 / .1); font-size: .9375rem; }
@media (max-width: 1080px) {
.nav { display: none; }
.stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.stats__lead { grid-column: 1 / -1; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 4px 24px; }
.stats__lead strong { grid-row: span 2; }
.reasons { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px) {
.move__grid, .hero__grid, .section-head, .offer__head, .offer__foot, .people__grid, .talk__grid, .how__grid, .story-quote, .plans { grid-template-columns: 1fr; }
.section-head > :last-child:not(:first-child), .offer__head > p { justify-self: start; text-align: left; }
.pillars { grid-template-columns: 1fr; }
.pillars article { display: grid; grid-template-columns: 40px 1fr; gap: 6px 18px; padding: 22px 24px; }
.pillars .ico { grid-row: span 2; }
.pillars h3 { margin-top: 2px; }
.pillars p { margin-top: 0; }
.hero__media { margin-right: calc(-1 * var(--gutter)); }
.hero__media > img { height: clamp(250px, 47vw, 380px); aspect-ratio: auto; object-position: 50% 35%; }
.quote-card { position: relative; left: auto; bottom: auto; max-width: none; margin: -48px 16px 0; }
.people img { width: calc(100% + var(--gutter)); margin-left: calc(-1 * var(--gutter)); height: auto; aspect-ratio: 5 / 4; }
.journey__steps { grid-template-columns: 1fr 1fr; row-gap: 40px; }
.journey__beyond { grid-template-columns: 1fr; }
.journey__beyond p, .journey__cta { grid-column: 1; }
.journey__beam, .journey__steps > li::after { display: none; }
.journey__steps { column-gap: 32px; }
.journey__steps > li:not(.journey__beam) { display: grid; grid-template-columns: 56px 1fr; column-gap: 18px; align-items: start; }
.journey__n { margin-left: 0; width: 56px; height: 56px; font-size: 1.375rem; grid-row: span 2; }
.journey__steps h3 { margin-top: 12px; }
.journey__steps p { max-width: none; }
.stories li, .stories li:nth-child(n+4) { grid-column: span 3; }
.stories li:nth-child(n+4) .story__img { aspect-ratio: 16 / 9; }
.footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
:root { --section: 64px; }
.h2 { font-size: 2rem; }
.section-head { gap: 12px; }
.section-head p { font-size: 1.0625rem; }
.stats { grid-template-columns: 1fr; gap: 8px; margin-top: 28px; }
.stats__lead { grid-column: 1 / -1; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 4px 16px; padding: 18px 20px; }
.stats__lead strong { font-size: 2.25rem; grid-row: span 2; }
.stats__lead span { font-size: 1rem; }
.stats__lead p { font-size: .875rem; }
.stat { grid-template-columns: 4.6em 1fr; align-items: center; column-gap: 14px; row-gap: 10px; padding: 16px 18px; }
.stat strong { font-size: 2rem; letter-spacing: -.03em; }
.stat span { font-size: 1rem; line-height: 1.3; min-height: 0; }
.stat .meter { grid-column: 1 / -1; margin-top: 0; }
.meter { height: 6px; margin-top: 2px; }
.story-quote { margin-top: 40px; gap: 20px; }
.story-quote > img { aspect-ratio: 16 / 9; }
.story-quote blockquote > p { font-size: 1.375rem; }
.pillars { gap: 10px; margin-top: 32px; }
.pillars article { display: grid; grid-template-columns: 32px 1fr; gap: 4px 14px; padding: 18px; }
.pillars .ico { width: 30px; height: 30px; grid-row: span 2; }
.pillars h3 { margin-top: 0; font-size: 1.25rem; }
.pillars p { margin-top: 0; font-size: .9375rem; }
.offer__foot { margin-top: 28px; }
.offer__foot > p { font-size: 1.0625rem; }
.carousel-nav { display: flex; }
.voices__scroller { margin: 28px calc(-1 * var(--gutter)) 0; padding: 0 var(--gutter) 4px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); scrollbar-width: none; }
.voices__scroller::-webkit-scrollbar { display: none; }
.voices__scroller .voices__grid { display: flex; gap: 12px; columns: auto; margin: 0; width: max-content; }
.voices__scroller .voices__grid li { flex: 0 0 min(calc(100vw - 2 * var(--gutter) - 36px), 340px); margin: 0; scroll-snap-align: start; }
.voices__grid--static { columns: 1; margin-top: 28px; }
.voices blockquote { height: 100%; padding: 18px 22px 22px; }
.voices blockquote .video { margin: -18px -22px 22px; }
.voices blockquote > p:first-of-type { text-indent: 16px; }
.voices blockquote::before { left: 9px; top: 10px; font-size: 3.25rem; }
.voices blockquote:has(.video) > p::before { left: -13px; top: -8px; font-size: 3.25rem; }
.voices blockquote > p { font-size: 1rem; }
.reasons li { padding: 16px 0; }
.reasons h3 { font-size: 1.125rem; }
.review { padding: 22px; }
.journey__steps { gap: 18px; margin-top: 32px; }
.journey__steps > li:not(.journey__beam) { display: grid; grid-template-columns: 48px 1fr; column-gap: 16px; }
.journey__n { width: 48px; height: 48px; margin-left: 0; font-size: 1.125rem; box-shadow: none; grid-row: span 2; }
.journey__steps h3 { margin-top: 2px; font-size: 1.25rem; }
.journey__steps p { margin-top: 2px; font-size: .9375rem; }
.journey__beyond { margin-top: 28px; }
.journey__beyond p { font-size: 1.0625rem; }
.plans { margin-top: 28px; }
.plan { padding: 22px; }
.plan h4 { margin-top: 18px; }
.how__grid { margin-top: 28px; gap: 36px; }
.flow__shot { height: 220px; padding: 16px; }
.flow__shot img { max-height: 188px; }
.flow h3 { margin-top: 18px; }
.people p { font-size: 1.0625rem; }
.stories { gap: 10px; margin-top: 24px; }
.story { grid-template-columns: 88px 1fr; grid-template-rows: auto 1fr; align-items: start; }
.story__img, .stories li:nth-child(n+4) .story__img, .story__img--logo { grid-row: span 2; width: 88px; height: 100%; min-height: 88px; aspect-ratio: auto; }
.story__img--logo img { height: 22px; }
.story__org { padding: 14px 16px 0; font-size: .875rem; }
.story__title { padding: 2px 16px 14px; font-size: 1rem; }
:root { --header-h: 68px; }
.site-header__inner { gap: 12px; }
.brand img { width: 112px; }
.site-header__actions { gap: 14px; }
.btn--sm { padding: 0 14px; font-size: .9375rem; }
.signin, .site-header .btn--sm { white-space: nowrap; }
.hero__actions, .hero__actions .btn { width: 100%; }
.proof { border-radius: 28px 28px 0 0; }
.marquee__list img { height: 34px; }
.reasons, .move .reasons { grid-template-columns: 1fr; }
.journey__steps { grid-template-columns: 1fr; }
.journey__n { width: 56px; height: 56px; font-size: 1.375rem; }
.form__row { grid-template-columns: 1fr; }
.form__submit .btn { width: 100%; }
.flow__shot { height: 300px; padding: 20px; }
.flow__shot img { max-height: 260px; }
.stories { grid-template-columns: 1fr; }
.stories li, .stories li:nth-child(n+4) { grid-column: auto; }
.close .btn { width: 100%; max-width: 360px; }
.footer__grid { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
.footer__grid > div:first-child { grid-column: 1 / -1; }
.marquee__head { flex-wrap: wrap; }
}
.hero--page { padding-bottom: calc(clamp(56px, 7vw, 88px) + 40px); }
.hero--page .hero__copy { max-width: 46rem; }
.hero--page h1 { font-size: clamp(2.375rem, 4.6vw, 3.75rem); }
.hero--page .lede { max-width: 38em; }
.crumbs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 20px; padding: 0; list-style: none; font-size: .9375rem; color: var(--on-dark-muted); }
.crumbs li + li::before { content: "/"; margin-right: 6px; opacity: .6; }
.hero .lede a { color: #fff; text-decoration-color: var(--coral); }
.crumbs a { color: #d3dcea; }
.crumbs a:hover { color: #fff; }
.crumbs [aria-current] { color: #fff; }
.sheet { position: relative; z-index: 1; margin-top: -40px; border-radius: 40px 40px 0 0; background: var(--paper); }
.section { padding: var(--section) 0; }
.section--soft { background: var(--soft); }
.section--tint { background: var(--sky-tint); }
.section-head--stack { display: block; }
.section-lede { margin-top: 16px; font-size: 1.1875rem; color: var(--muted); max-width: 32em; }
.section-head--stack p { margin-top: 14px; }
.offer__quote--light { margin-top: 26px; padding: 24px 28px; background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.section--tint .offer__quote--light, .section--soft .offer__quote--light { box-shadow: none; }
.offer__quote--light p { color: var(--ink) !important; font-size: 1.0625rem !important; }
.offer__quote--light .who { color: var(--muted); }
.offer__quote--light .who strong { color: var(--ink); }
.offer__quote--light .who cite { color: var(--coral-deep); }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 6vw, 80px); align-items: center; }
.split--flip > :first-child { order: 2; }
.split > img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--r-lg); }
.team-photo { object-position: 50% 30%; }
.split h2 + p, .split .h2 + p { margin-top: 18px; }
.split p { font-size: 1.125rem; }
.split p + p { margin-top: 14px; }
.split .offer__quote--light + p { margin-top: 28px; }
.split--start { align-items: start; }
.split__sticky { position: sticky; top: calc(var(--header-h) + 32px); }
.split__sticky .btn { margin-top: 12px; }
@media (max-width: 900px) { .split__sticky { position: static; } }
.checks { display: grid; gap: 10px; margin: 22px 0 0; padding: 0; list-style: none; }
.checks + p { margin-top: 28px; }
.checks li { display: flex; gap: 12px; align-items: baseline; }
.checks li::before { content: ""; flex: none; width: 16px; height: 16px; transform: translateY(3px); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%23b4453b' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat; }
.steps-row { display: grid; grid-template-columns: repeat(var(--n, 4), 1fr); gap: 24px; margin: 44px 0 0; padding: 0; list-style: none; counter-reset: step; }
.steps-row li { counter-increment: step; }
.steps-row li::before { content: counter(step); display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--coral); color: var(--ink); font-weight: 700; font-size: 1.25rem; }
.steps-row h3 { margin-top: 18px; font-size: 1.25rem; }
.steps-row p { margin-top: 6px; color: var(--muted); }
.prose { max-width: 70ch; font-size: 1.125rem; line-height: 1.7; }
.prose > * + * { margin-top: 1.1em; }
.prose > :first-child, .prose > .story-hero-img + h2, .prose > .story-hero + h2 { margin-top: 0; }
.prose h2 { margin-top: 2.2em; font-size: clamp(1.625rem, 2.6vw, 2.125rem); letter-spacing: -.02em; line-height: 1.15; }
.prose h3 { margin-top: 1.8em; font-size: 1.3125rem; line-height: 1.25; }
.prose h2 + *, .prose h3 + * { margin-top: .7em; }
.prose ul, .prose ol { padding-left: 1.4em; }
.prose li + li { margin-top: .4em; }
.prose blockquote { margin: 1.6em 0; padding: 24px 28px; border-radius: var(--r-lg); background: var(--sky-tint); }
.prose blockquote p { font-size: 1.1875rem; font-weight: 500; color: var(--ink); line-height: 1.5; }
.prose blockquote .who { margin-top: 12px; }
.prose a { color: var(--sky-deep); }
.prose kbd { padding: 2px 8px; border-radius: 6px; background: var(--soft); box-shadow: inset 0 -2px 0 var(--line); font: 600 .9em var(--font); }
blockquote .hang { margin-left: -.42em; }
blockquote .hang--fr { margin-left: -.8em; }
.prose--legal { font-size: 1rem; line-height: 1.65; max-width: 76ch; }
.legal { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 64px; align-items: start; }
.legal__toc { grid-column: 2; grid-row: 1 / span 2; position: sticky; top: calc(var(--header-h) + 24px); max-height: calc(100vh - var(--header-h) - 48px); overflow-y: auto; padding: 4px 4px 4px 20px; border-left: 2px solid var(--line); font-size: .9375rem; }
.legal__toc-title { font-size: .9375rem; font-weight: 700; color: var(--muted); }
.legal__toc-doc { display: block; margin-top: 18px; font-weight: 700; color: var(--ink); text-decoration: none; }
.legal__toc ol { display: grid; gap: 2px; margin: 8px 0 0; padding: 0; list-style: none; }
.legal__toc ol a { display: block; padding: 4px 0; color: var(--muted); text-decoration: none; line-height: 1.35; }
.legal__toc a:hover { color: var(--coral-deep); }
.legal > .toc, .legal > .prose { grid-column: 1; }
.legal > .toc { display: none; }
.prose--legal li { padding-left: .35em; }
.prose--legal :is(li, h3)[id] { scroll-margin-top: calc(var(--header-h) + 16px); }
@media (max-width: 1080px) { .legal { display: block; } .legal__toc { display: none; } .legal > .toc { display: flex; } }
.prose--legal :is(p, li, h2, h3) { text-wrap: wrap; }
.prose--legal ol, .prose--legal ul { padding-left: 2em; }
.prose--legal :is(ol, ul) :is(ol, ul) { margin-top: .6em; padding-left: 1.6em; }
.prose--legal li + li { margin-top: .6em; }
.prose--legal li::marker { color: var(--muted); font-variant-numeric: tabular-nums; }
.prose--legal > ol > li { margin-top: 2em; }
.prose--legal > ol > li::marker { font-weight: 700; color: var(--ink); }
.prose--legal > ol > li > strong:first-child { display: inline-block; margin-bottom: .2em; font-size: 1.0625rem; letter-spacing: .03em; color: var(--ink); }
@media (max-width: 640px) {
.prose--legal ol, .prose--legal ul { padding-left: 1.5em; }
.prose--legal :is(ol, ul) :is(ol, ul) { padding-left: 1.1em; }
}
.prose--legal ol ol { list-style: lower-alpha; }
.prose--legal ol ol ol { list-style: lower-roman; }
.prose--legal h2 { scroll-margin-top: calc(var(--header-h) + 16px); }
.toc { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; padding: 0; list-style: none; }
.toc a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; background: var(--soft); color: var(--ink); font-weight: 600; text-decoration: none; }
.toc a:hover { background: var(--sky-tint); }
.ext-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 48px; margin: 40px 0 0; padding: 0; list-style: none; }
.ext-links a { display: grid; grid-template-columns: 1fr auto; gap: 4px 16px; height: 100%; padding: 22px 0; border-top: 2px solid var(--line); color: var(--ink); text-decoration: none; }
.ext-links a:hover { border-top-color: var(--coral); color: var(--ink); }
.ext-links__name { font-weight: 700; font-size: 1.1875rem; line-height: 1.3; }
.ext-links__host { grid-row: 2; color: var(--muted); }
.ext-links .ico { grid-row: 1 / 3; grid-column: 2; width: 24px; height: 24px; color: var(--coral-deep); transition: transform .25s var(--ease); }
.ext-links a:hover .ico { transform: translate(2px, -2px); }
@media (max-width: 900px) { .ext-links { grid-template-columns: 1fr; } }
.story-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(32px, 6vw, 80px); align-items: start; }
.glance { position: sticky; top: calc(var(--header-h) + 24px); padding: 28px; border-radius: var(--r-lg); background: var(--navy); color: #d3dcea; }
.glance h2 { color: #fff; font-size: 1.125rem; }
.glance dl { display: grid; gap: 14px; margin: 18px 0 0; }
.glance dt { font-size: .875rem; color: var(--on-dark-muted); }
.glance dd { margin: 2px 0 0; color: #fff; font-weight: 600; }
.glance__result { font-size: 1.75rem; font-weight: 700; letter-spacing: -.02em; color: var(--coral) !important; line-height: 1.15; }
.glance .btn { width: 100%; margin-top: 24px; }
.story-hero-img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; border-radius: var(--r-lg); margin-bottom: 40px; }
.story-hero { margin: 0 0 40px; }
.story-hero .story-hero-img { margin-bottom: 0; }
.story-hero figcaption { margin-top: 10px; font-size: .8125rem; line-height: 1.4; color: var(--muted); }
.story-hero figcaption a { color: inherit; text-underline-offset: 2px; }
.story-date { font-size: .9375rem; color: var(--on-dark-muted); margin-top: 18px; }
.faq { display: grid; gap: 10px; margin-top: 28px; }
.faq details { border-radius: 16px; background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.faq summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 56px; padding: 14px 20px; font-weight: 600; font-size: 1.0625rem; color: var(--ink); cursor: pointer; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: ""; flex: none; width: 12px; height: 12px; border-right: 2px solid var(--coral-deep); border-bottom: 2px solid var(--coral-deep); transform: rotate(45deg) translateY(-3px); transition: transform .2s var(--ease); }
.faq details[open] summary::after { transform: rotate(-135deg) translateX(-3px); }
.faq summary:focus-visible { outline: 3px solid var(--sky-deep); outline-offset: 2px; border-radius: 16px; }
.faq .faq__a { padding: 0 20px 20px; color: var(--text); }
.faq .faq__a > * + * { margin-top: .8em; }
.faq-group { margin-top: 40px; }
.faq-group + .faq-group { margin-top: 56px; }
.faq-group h2 { font-size: clamp(1.5rem, 2.4vw, 2rem); }
.stores { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.store { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 20px; border-radius: 14px; background: var(--ink); color: #fff; font-weight: 600; text-decoration: none; }
.store:hover { background: var(--navy); color: #fff; }
.store svg { width: 24px; height: 24px; }
.ico.brand { fill: currentColor; stroke: none; }
.store span { display: grid; line-height: 1.15; font-size: 1.0625rem; }
.store small { font-size: .75rem; font-weight: 500; }
.hero .store { background: #fff; color: var(--ink); }
.hero .store:hover { background: var(--sky-tint); color: var(--ink); }
.leaders { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 44px 0 0; padding: 0; list-style: none; }
.leaders li { padding: 28px; border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.leaders__img { display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 18px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 3px var(--paper), 0 0 0 4px var(--line); }
.leaders__img--initials { background: var(--sky-tint); color: var(--sky-deep); font-size: 1.375rem; font-weight: 700; letter-spacing: .02em; }
.leaders h3 { font-size: 1.3125rem; }
.leaders .role { margin-top: 4px; font-weight: 600; color: var(--coral-deep); }
.leaders p:last-child { margin-top: 12px; color: var(--muted); }
.values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px 48px; margin: 40px 0 0; padding: 0; list-style: none; }
.values li { display: flex; align-items: center; gap: .45em; font-size: clamp(1.5rem, 2.5vw, 2.125rem); font-weight: 700; letter-spacing: -.02em; line-height: 1.15; color: var(--ink); }
@media (max-width: 900px) { .values { grid-template-columns: 1fr 1fr; gap: 14px 24px; } }
@media (max-width: 420px) { .values { grid-template-columns: 1fr; } }
.values li::before { content: ""; flex: none; width: .5em; height: .5em; border-radius: 26%; background: var(--coral); }
.values li:nth-child(2)::before { border-radius: 50%; background: var(--sky-deep); }
.values li:nth-child(3)::before { border-radius: 50%; background: var(--sky); }
.values li:nth-child(4)::before { border-radius: 50%; background: var(--coral); }
.values li:nth-child(5)::before { background: var(--sky-deep); }
.note-card { padding: 24px 28px; border-radius: var(--r-lg); background: var(--coral-tint); color: var(--ink); }
.note-card a { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; vertical-align: middle; color: var(--ink); font-weight: 600; }
.note-card a .ico { flex: none; width: 18px; height: 18px; color: var(--coral-deep); }
.note-card a span { min-width: 0; overflow-wrap: anywhere; }
.talk__copy .note-card p { margin-top: 0; }
:is(.section--tint, .section--soft) .note-card { background: var(--paper); box-shadow: 0 0 0 1px var(--line), 0 18px 40px -30px rgb(14 26 47 / .35); }
.section--dark { background: var(--navy); color: var(--on-dark-muted); }
.section--dark :is(.h2, h2, h3, strong) { color: #fff; }
.section--dark :is(p, .section-lede, .section-head p) { color: var(--on-dark-muted); }
.section--dark .checks li { color: #e6ecf4; }
.section--dark .checks li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%23ef8079' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.section--dark .flow__shot { background: rgb(255 255 255 / .06); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .1); }
.section--dark .reasons li { border-top-color: rgb(255 255 255 / .16); }
.section--dark .steps-row p { color: var(--on-dark-muted); }
.section--dark .steps-row--line li:not(:last-child)::after { background: rgb(255 255 255 / .16); }
.section--dark .link-arrow { color: #fff; }
.section--dark :focus-visible { outline-color: var(--sky); }
.glows--light .glow--p-sky { --c: rgb(26 120 170 / .22); }
.glows--light .glow--p-coral { --c: rgb(214 92 84 / .2); }
.apply { display: grid; grid-template-columns: 1.35fr 1fr; gap: clamp(32px, 6vw, 88px); align-items: center; }
.subhead { font-size: 1.25rem; font-weight: 700; line-height: 1.3; color: var(--ink); }
.pull blockquote { margin: 20px 0 0; }
.pull blockquote p { font-size: clamp(1.5rem, 2.5vw, 2.125rem); font-weight: 600; line-height: 1.3; letter-spacing: -.02em; color: var(--ink); }
.pull .who { margin-top: 24px; }
.apply__card { padding: clamp(28px, 4vw, 44px); border-radius: 24px; background: var(--navy); color: var(--on-dark-muted); overflow: hidden; }
.apply__card h3 { color: #fff; font-size: clamp(1.5rem, 2.4vw, 2rem); letter-spacing: -.02em; }
.apply__card p { margin-top: 12px; font-size: 1.0625rem; }
.apply__card .link-arrow { color: #fff; }
.apply__card .glow { opacity: .55; }
.apply__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; margin-top: 28px; }
@media (max-width: 900px) { .apply { grid-template-columns: 1fr; } }
@media (min-width: 901px) { .ln { display: block; } }
@media (min-width: 1180px) { .ln-wide { display: block; } }
.steps-row.steps-row--stack h3 { display: flex; align-items: center; min-height: 48px; margin-top: 0; font-size: 1.375rem; }
.steps-row.steps-row--stack p { margin-top: 2px; font-size: 1.125rem; }
@media (max-width: 640px) { .steps-row.steps-row--stack h3 { min-height: 40px; font-size: 1.1875rem; } .steps-row.steps-row--stack p { font-size: 1rem; } }
.is-off .glow::before, .is-off .shape { animation-play-state: paused; }
@view-transition { navigation: auto; }
.site-header { view-transition-name: site-header; }
.a11y-fab { view-transition-name: a11y-fab; }
@media (prefers-reduced-motion: no-preference) {
::view-transition-old(root) { animation: none; }
::view-transition-new(root) { animation: vt-in .4s cubic-bezier(.2, .8, .2, 1) both; mix-blend-mode: normal; }
}
@keyframes vt-in { from { opacity: 0; transform: translateY(16px); } }
html.reduce-motion::view-transition-old(root), html.reduce-motion::view-transition-new(root) { animation: none; }
.who:has(.who__img) { grid-template-columns: auto 1fr; column-gap: 14px; align-items: center; }
.who:has(.who__img) > :not(.who__img) { grid-column: 2; }
.who__img { grid-row: 1 / span 3; width: 52px; height: 52px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 2px var(--paper), 0 0 0 3px var(--line); }
.menu-btn { display: none; place-items: center; flex: none; width: 44px; height: 44px; padding: 0; border: 1px solid rgb(255 255 255 / .35); border-radius: 50%; background: transparent; color: var(--on-dark); cursor: pointer; }
.menu-btn .ico { width: 22px; height: 22px; }
.site-header.is-solid .menu-btn { border-color: var(--line); color: var(--ink); }
.menu-btn:hover { border-color: var(--coral); }
.menu { position: fixed; inset: calc(var(--header-h) + 4px) 16px auto auto; width: min(320px, calc(100vw - 32px)); margin: 0; padding: 10px; border: 0; border-radius: 22px; background: var(--paper); color: var(--ink); box-shadow: 0 0 0 1px var(--line), 0 30px 60px -24px rgb(14 26 47 / .45);
opacity: 0; transform: translateY(-8px) scale(.98); transform-origin: top right; transition: opacity .2s var(--ease), transform .25s var(--ease), display .25s allow-discrete, overlay .25s allow-discrete; }
.menu:popover-open { opacity: 1; transform: none; }
@starting-style { .menu:popover-open { opacity: 0; transform: translateY(-8px) scale(.98); } }
.menu ul { display: grid; margin: 0; padding: 0; list-style: none; }
.menu a { display: flex; align-items: center; min-height: 52px; padding: 0 16px; border-radius: 14px; color: var(--ink); font-size: 1.125rem; font-weight: 600; text-decoration: none; }
.menu a:hover, .menu a[aria-current] { background: var(--soft); }
.menu a[aria-current] { color: var(--coral-deep); }
.menu__signin { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--line); }
.menu__signin { display: none; }
@media (max-width: 1080px) { .menu-btn { display: grid; } }
@media (max-width: 480px) { .site-header .signin { display: none; } .menu__signin { display: flex; } }
@media (max-width: 640px) {
.site-header .btn--sm { transition: opacity .25s var(--ease), transform .25s var(--ease), visibility .25s; }
.site-header:not(.cta-on) .btn--sm { opacity: 0; visibility: hidden; transform: translateY(-6px); }
}
@media (max-width: 900px) { .talk--page .talk__grid > :last-child { order: -1; } }
.plans--three { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 900px) { .plans--three { grid-template-columns: 1fr; } }
.plans + .section-lede { max-width: 48em; margin-top: 28px; }
.plans + .section-lede a { color: var(--sky-deep); font-weight: 600; }
.video { position: relative; display: block; aspect-ratio: 16 / 9; border-radius: var(--r-lg); overflow: hidden; background: var(--navy); }
.video img, .video iframe { display: block; width: 100%; height: 100%; object-fit: cover; border: 0; }
.video__play { position: absolute; left: 20px; bottom: 20px; display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 20px 0 14px; border-radius: 999px; background: var(--coral); color: var(--ink); font-weight: 700; }
.video__play .ico { width: 22px; height: 22px; fill: currentColor; }
.video:hover .video__play { background: #f39a94; }
@media (max-width: 900px) {
.split, .story-layout { grid-template-columns: 1fr; }
.split--flip > :first-child { order: 0; }
.glance { position: static; order: -1; }
.steps-row { grid-template-columns: 1fr 1fr; }
.steps-row { column-gap: 32px; row-gap: 28px; }
.steps-row li { display: grid; grid-template-columns: 48px 1fr; column-gap: 16px; align-items: start; }
.steps-row li::before { grid-row: span 2; }
.steps-row h3 { margin-top: 10px; }
.leaders { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
.sheet { margin-top: -28px; border-radius: 28px 28px 0 0; }
.steps-row { grid-template-columns: 1fr; gap: 18px; }
.steps-row li { display: grid; grid-template-columns: 40px 1fr; column-gap: 14px; }
.steps-row li::before { width: 40px; height: 40px; font-size: 1rem; grid-row: span 2; }
.steps-row h3 { margin-top: 6px; }
.prose { font-size: 1.0625rem; }
.story-hero-img { aspect-ratio: 16 / 9; margin-bottom: 28px; }
.story-hero { margin-bottom: 28px; }
}
@font-face { font-family: "Atkinson Hyperlegible Next"; src: url("fonts/atkinson-latin.woff2") format("woff2"); font-weight: 200 800; font-display: swap; }
.a11y-fab { position: fixed; left: 20px; bottom: 20px; z-index: 55; display: grid; place-items: center; width: 56px; height: 56px; border: 2px solid #fff; border-radius: 50%; background: var(--sky-deep); color: #fff; cursor: pointer; box-shadow: 0 8px 24px -8px rgb(14 26 47 / .6); transition: transform .2s var(--ease), background-color .2s var(--ease); }
.a11y-fab svg { width: 30px; height: 30px; fill: currentColor; }
.a11y-fab:hover { background: var(--navy); transform: scale(1.05); }
.a11y-fab:focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; }
.a11y-fab.is-active::after { content: ""; position: absolute; top: 2px; right: 2px; width: 12px; height: 12px; border-radius: 50%; background: var(--coral); border: 2px solid #fff; }
@media (max-width: 640px) { .a11y-fab { width: 48px; height: 48px; left: 14px; bottom: 14px; } .a11y-fab svg { width: 26px; height: 26px; } .site-footer { padding-bottom: 76px; } }
.a11y-panel { width: min(26.25rem, 100vw - 24px); max-width: none; max-height: min(760px, 100vh - 24px); margin: auto auto 12px 12px; padding: 0; border: 0; border-radius: 20px; background: var(--navy); color: #0e1a2f; font: 400 .9375rem/1.5 var(--font); box-shadow: 0 30px 80px -20px rgb(14 26 47 / .55); overflow: hidden; display: flex; flex-direction: column; letter-spacing: normal; word-spacing: normal;
opacity: 0; transform: translateY(16px) scale(.97); transform-origin: 0 100%;
transition: opacity .2s ease, transform .3s var(--ease), display .3s allow-discrete, overlay .3s allow-discrete; }
.a11y-panel:not([open]) { display: none; }
.a11y-panel[open] { opacity: 1; transform: none; }
@starting-style { .a11y-panel[open] { opacity: 0; transform: translateY(16px) scale(.97); } }
.a11y-panel::backdrop { background: rgb(14 26 47 / 0); transition: background-color .3s ease, display .3s allow-discrete, overlay .3s allow-discrete; }
.a11y-panel[open]::backdrop { background: rgb(14 26 47 / .45); }
@starting-style { .a11y-panel[open]::backdrop { background: rgb(14 26 47 / 0); } }
.a11y-panel__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 16px 16px 22px; background: var(--navy); color: #fff; }
.a11y-panel h2 { color: #fff; font-size: 1.125rem; letter-spacing: -.01em; }
.a11y-close { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgb(255 255 255 / .12); color: #fff; cursor: pointer; }
.a11y-close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.a11y-close:hover { background: rgb(255 255 255 / .22); }
.a11y-close:focus-visible { outline: 3px solid var(--coral); outline-offset: 2px; }
.a11y-panel__body { flex: 1; overflow-y: auto; background: #fff; padding: 8px 22px 16px; }
.a11y-panel section { padding: 16px 0; border-bottom: 1px solid #e2e7ee; }
.a11y-panel section:last-child { border-bottom: 0; }
.a11y-panel h3 { margin-bottom: 12px; font-size: 1rem; font-weight: 700; color: #0e1a2f; }
.a11y-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.a11y-opt { display: grid; gap: 2px; align-content: center; min-height: 48px; padding: 10px 12px; border: 1.5px solid #7a8699; border-radius: 12px; background: #fff; color: #0e1a2f; font: 600 .9375rem/1.3 var(--font); text-align: left; cursor: pointer; }
.a11y-opt:hover { border-color: #0e1a2f; }
.a11y-opt[aria-pressed="true"] { border-color: var(--sky-deep); background: var(--sky-tint); box-shadow: inset 0 0 0 1px var(--sky-deep); }
.a11y-opt[aria-pressed="true"]::after { content: "On"; justify-self: start; margin-top: 2px; padding: 1px 8px; border-radius: 99px; background: var(--sky-deep); color: #fff; font-size: .8125rem; font-weight: 700; }
.a11y-opt--profile strong { font-size: .9375rem; }
.a11y-opt span { font-weight: 400; font-size: .875rem; color: #445063; }
.a11y-opt[aria-disabled="true"] { cursor: default; }
.a11y-panel button:focus-visible, .a11y-panel select:focus-visible { outline: 3px solid var(--sky-deep); outline-offset: 2px; }
.a11y-stepper { display: grid; grid-template-columns: 1fr 48px auto 48px; align-items: center; gap: 6px; margin-bottom: 10px; font-weight: 600; font-size: .9375rem; }
.a11y-stepper button { min-height: 44px; border: 1.5px solid #7a8699; border-radius: 12px; background: #fff; color: #0e1a2f; font: 700 .9375rem var(--font); cursor: pointer; }
.a11y-stepper button:hover:not([aria-disabled="true"]) { border-color: #0e1a2f; }
.a11y-stepper button[aria-disabled="true"] { border-style: dashed; color: #6b7686; cursor: not-allowed; }
.a11y-stepper output { min-width: 4ch; text-align: center; font-variant-numeric: tabular-nums; }
.a11y-jump { display: grid; gap: 6px; margin-top: 12px; font-weight: 600; font-size: .9375rem; }
.a11y-jump__row { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.a11y-go { min-width: 64px; min-height: 44px; padding: 0 16px; border: 0; border-radius: 12px; background: var(--navy); color: #fff; font: 700 .9375rem var(--font); cursor: pointer; }
.a11y-go:hover { background: var(--ink); }
.a11y-jump select { min-width: 0; min-height: 44px; padding: 0 10px; border: 1.5px solid #758296; border-radius: 12px; background: #fff; color: #0e1a2f; font: 500 .9375rem var(--font); }
.a11y-panel__foot { padding: 14px 22px 18px; border-top: 1px solid #c9d1dc; background: #f5f7fa; font-size: .9375rem; color: #445063; }
@media (max-height: 520px) { .a11y-panel { overflow-y: auto; } .a11y-panel__body { flex: none; overflow: visible; } }
.a11y-reset { width: 100%; min-height: 44px; margin-bottom: 10px; border: 0; border-radius: 999px; background: var(--navy); color: #fff; font: 700 .9375rem var(--font); cursor: pointer; }
.a11y-reset:hover { background: var(--ink); }
@media (max-width: 640px) {
.a11y-fab { left: 12px; bottom: 12px; width: 50px; height: 50px; }
.a11y-panel { width: 100vw; max-height: 88vh; margin: auto 0 0; border-radius: 20px 20px 0 0; transform: translateY(40px); }
@starting-style { .a11y-panel[open] { transform: translateY(40px); } }
}
.a11y-lh main :is(p, li, dd, blockquote, label, span, h1, h2, h3, h4), .a11y-lh .site-footer * { line-height: 1.9 !important; }
.a11y-ls main *, .a11y-ls .site-footer * { letter-spacing: .08em !important; word-spacing: .16em !important; }
.a11y-font body, .a11y-font body *:not(svg):not(svg *) { font-family: "Atkinson Hyperlegible Next", Verdana, sans-serif !important; }
.a11y-align main *, .a11y-align .site-footer * { text-align: left !important; justify-items: start; }
.a11y-titles :is(h1, h2, h3):not(.a11y-panel *) { outline: 3px solid var(--coral) !important; outline-offset: 6px; border-radius: 4px; }
.a11y-links a:not(.a11y-panel a) { text-decoration: underline !important; text-decoration-thickness: 2px !important; outline: 2px dashed currentColor; outline-offset: 3px; }
.a11y-contrast-dark { background: #000; }
.a11y-contrast-dark body, .a11y-contrast-dark body *:not(img):not(svg):not(svg *):not(.a11y-panel):not(.a11y-panel *):not(.a11y-fab):not(.btn):not(.btn *) { background-color: #000 !important; background-image: none !important; color: #fff !important; border-color: #fff !important; box-shadow: none !important; text-shadow: none !important; }
.a11y-contrast-dark a:not(.a11y-panel a):not(.btn) { color: #ffd84d !important; }
.a11y-contrast-dark .btn { background: #ffd84d !important; color: #000 !important; box-shadow: none !important; border: 2px solid #ffd84d !important; }
.a11y-contrast-dark .btn--ghost-dark { background: #000 !important; color: #ffd84d !important; }
.a11y-contrast-light { background: #fff; }
.a11y-contrast-light body, .a11y-contrast-light body *:not(img):not(svg):not(svg *):not(.a11y-panel):not(.a11y-panel *):not(.a11y-fab):not(.btn):not(.btn *) { background-color: #fff !important; background-image: none !important; color: #000 !important; border-color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
.a11y-contrast-light a:not(.a11y-panel a):not(.btn) { color: #0033cc !important; }
.a11y-contrast-light .btn { background: #000 !important; color: #fff !important; box-shadow: none !important; border: 2px solid #000 !important; }
.a11y-contrast-light .btn--ghost-dark { background: #fff !important; color: #000 !important; }
:is(.a11y-contrast-dark, .a11y-contrast-light) :is(.shapes, .glows, .meter) { display: none !important; }
:is(.a11y-contrast-dark, .a11y-contrast-light) .grid-bg::before { display: none !important; }
:is(.a11y-contrast-dark, .a11y-contrast-light) :is(.story, .stat, .plan, .fixes__fix, .review, .voices blockquote, .form, .quote-card, .pillars article, .consent) { border: 2px solid currentColor !important; }
html.a11y-color-mono { filter: grayscale(1); }
html.a11y-color-low { filter: saturate(.45); }
html.a11y-color-high { filter: saturate(1.7); }
.reduce-motion *, .reduce-motion *::before, .reduce-motion *::after { animation: none !important; transition: none !important; }
html.reduce-motion { scroll-behavior: auto; }
.reduce-motion :is(.shapes, .glows) { display: none !important; }
.reduce-motion .stat .meter::after, .reduce-motion .journey__steps > li::after { transform: none !important; }
.reduce-motion .journey__beam { clip-path: none !important; }
.a11y-noimg main img, .a11y-noimg .story__img, .a11y-noimg :is(.shapes, .glows) { visibility: hidden !important; }
.a11y-noimg .grid-bg::before { display: none !important; }
.a11y-guide-bar { position: fixed; left: 0; right: 0; top: 0; z-index: 54; height: 12px; background: var(--coral); border-block: 2px solid var(--navy); opacity: .85; pointer-events: none; display: none; transform: translateY(-40px); }
html.a11y-guide .a11y-guide-bar { display: block; }
.a11y-mask-part { position: fixed; left: 0; right: 0; z-index: 54; background: rgb(14 26 47 / .62); pointer-events: none; display: none; }
.a11y-mask-part--top { top: 0; height: 0; }
.a11y-mask-part--bottom { top: 100vh; bottom: 0; }
html.a11y-mask .a11y-mask-part { display: block; }
.a11y-cursor, .a11y-cursor * { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Cpath d='M6 4l28 14-12 3-5 13z' fill='%230e1a2f' stroke='white' stroke-width='3' stroke-linejoin='round'/%3E%3C/svg%3E") 6 4, auto !important; }
.a11y-focus :focus { outline: 4px solid #ffb800 !important; outline-offset: 4px !important; box-shadow: 0 0 0 8px rgb(14 26 47 / .85) !important; }
.a11y-hover main :is(a, button, p, li, h1, h2, h3, blockquote):hover { outline: 2px dashed var(--sky-deep); outline-offset: 4px; }
.a11y-mag { position: fixed; z-index: 57; max-width: min(34rem, 100vw - 24px); padding: 14px 18px; border-radius: 14px; background: var(--navy-deep); color: #fff; font: 600 1.625rem/1.35 var(--font); letter-spacing: normal; text-align: left; box-shadow: 0 18px 40px -12px rgb(14 26 47 / .6); pointer-events: none; }
.a11y-mag[hidden] { display: none; }
.a11y-kb { position: fixed; z-index: 56; left: 50%; bottom: 12px; display: grid; gap: 6px; width: min(46rem, 100vw - 16px); padding: 10px; border-radius: 18px; background: var(--navy); box-shadow: 0 24px 60px -20px rgb(14 26 47 / .7); transform: translateX(-50%); touch-action: manipulation; }
.a11y-kb[hidden] { display: none; }
.a11y-kb__row { display: flex; gap: 6px; }
.a11y-kb button { flex: 1 1 0; min-width: 0; min-height: 48px; padding: 0 2px; border: 0; border-radius: 10px; background: #fff; color: #0e1a2f; font: 600 1.0625rem/1 var(--font); letter-spacing: normal; cursor: pointer; }
.a11y-kb button:hover { background: var(--sky-tint); }
.a11y-kb button:active { background: var(--sky); }
.a11y-kb .a11y-kb__wide { flex-grow: 1.8; background: #d9e2ee; font-size: .9375rem; }
.a11y-kb .a11y-kb__space { flex-grow: 5; }
.a11y-kb .a11y-kb__done { background: var(--sky); }
.a11y-kb [aria-pressed="true"] { background: var(--sky); box-shadow: inset 0 0 0 2px var(--navy-deep); }
html.a11y-kb-open body { padding-bottom: calc(var(--a11y-kb-h, 280px) + 24px); }
html.a11y-kb-open .a11y-fab { visibility: hidden; }
@media (max-width: 640px) { .a11y-kb { bottom: 0; gap: 5px; padding: 8px 6px max(8px, env(safe-area-inset-bottom)); border-radius: 16px 16px 0 0; width: 100vw; } .a11y-kb__row { gap: 4px; } .a11y-kb button { min-height: 44px; font-size: 1rem; border-radius: 8px; } .a11y-kb .a11y-kb__wide { font-size: .8125rem; } .a11y-mag { font-size: 1.375rem; } }
@media (prefers-contrast: more) {
:root { --text: #1f2a3a; --muted: #334155; --line: #8792a3; --on-dark-muted: #e6ecf4; }
.glows, .shapes, .grid-bg::before { display: none; }
.a11y-opt, .a11y-stepper button, .a11y-jump select { border-color: #0e1a2f; }
.a11y-opt span, .a11y-panel__foot { color: #1f2a3a; }
}
@media (prefers-reduced-transparency: reduce) {
.site-header.is-glass { background: var(--navy-deep); backdrop-filter: none; -webkit-backdrop-filter: none; }
.site-header.is-solid { background: #fff; backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@media (forced-colors: active) {
.glows, .shapes, .grid-bg::before { display: none; }
.a11y-fab, .a11y-opt, .a11y-stepper button, .a11y-go, .a11y-reset, .a11y-close { border: 2px solid ButtonText; }
.a11y-opt[aria-pressed="true"] { border: 4px solid Highlight; }
.a11y-opt[aria-pressed="true"]::after { forced-color-adjust: none; background: Highlight; color: HighlightText; }
.a11y-fab.is-active::after { forced-color-adjust: none; background: Highlight; }
.a11y-guide-bar, .a11y-mask-part { forced-color-adjust: none; }
.a11y-kb button, .a11y-mag { border: 1px solid CanvasText; }
.ico { color: CanvasText; }
}
@media (max-width: 400px) {
.brand img { width: 92px; }
.site-header__inner, .site-header__actions { gap: 10px; }
.site-header .btn--sm { padding: 0 12px; }
}
.sitemap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 64px; }
.sitemap h2 { margin: 0 0 14px; padding-bottom: 12px; border-bottom: 1px solid var(--line); font-size: 1.25rem; letter-spacing: -.01em; }
.sitemap ul { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.sitemap li { display: grid; gap: 2px; }
.sitemap a { justify-self: start; font-size: 1.0625rem; font-weight: 600; color: var(--ink); text-decoration: underline; text-decoration-color: var(--line); text-underline-offset: 4px; }
.sitemap a:hover { text-decoration-color: currentColor; }
.sitemap span { font-size: .9375rem; color: var(--muted); }
@media (max-width: 700px) { .sitemap { grid-template-columns: 1fr; gap: 36px; } }
.video__cc { position: absolute; left: 50%; bottom: 52px; z-index: 2; width: max-content; max-width: calc(100% - 32px); margin: 0; padding: 4px 10px; transform: translateX(-50%); border-radius: 6px; background: rgb(8 12 20 / .82); color: #fff; font: 500 clamp(.875rem, 2.4cqw, 1.25rem)/1.4 var(--font); text-align: center; white-space: pre-line; pointer-events: none; }
.video { container-type: inline-size; }
#features .glow--p-coral { --rx: 420px; --ry: 160px; --gx: 62%; --gy: 90px; --path: glow-f-coral; }
#features .glow--p-sky { --rx: 460px; --ry: 190px; --gx: 24%; --gy: calc(100% - 16px); --path: glow-f-sky; }
@keyframes glow-f-coral { 0%, 100% { transform: none; } 50% { transform: translateX(-30cqw); } }
@keyframes glow-f-sky { 0%, 100% { transform: none; } 50% { transform: translateX(48cqw); } }
:root { --mist: #f3f6fa; }
html { background: var(--mist); }
html.at-end { background: var(--navy-deep); }
.glow--coral, .glow--j-coral, .glow--p-coral, .glow--c-coral, .hero .glows { display: none; }
.site-header:not(.is-solid) .site-header__inner { padding-top: 16px; }
.nav a, .signin, .nav a:hover, .signin:hover { color: var(--ink); }
.nav a[aria-current] { color: var(--sky-deep); }
.site-header :focus-visible { outline-color: var(--sky-deep); }
.menu-btn { border-color: var(--line); color: var(--ink); }
.login { position: relative; }
.login summary { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; list-style: none; cursor: pointer; }
.login summary::-webkit-details-marker { display: none; }
.login__chev { width: 18px; height: 18px; stroke-width: 2.2; transition: transform .2s var(--ease); }
.login[open] .login__chev { transform: rotate(180deg); }
.login__menu { position: absolute; right: -12px; top: calc(100% + 10px); width: 320px; padding: 8px; border-radius: 18px; background: var(--paper); box-shadow: 0 0 0 1px var(--line), 0 30px 60px -24px rgb(14 26 47 / .4); }
.login__title { padding: 10px 12px 6px; font-size: .9375rem; font-weight: 700; color: var(--muted); }
.login__menu a { display: grid; grid-template-columns: 40px 1fr; gap: 14px; align-items: center; padding: 10px 12px; border-radius: 12px; color: var(--ink); text-decoration: none; }
.login__menu a:hover { background: var(--mist); color: var(--ink); }
.login__menu .ico, .menu__signin .ico { width: 40px; height: 40px; padding: 10px; border-radius: 10px; background: var(--sky-tint); color: var(--sky-deep); }
.login__menu strong { display: block; font-size: 1rem; }
.login__menu small { display: block; font-size: .875rem; line-height: 1.35; color: var(--muted); }
.menu__signin { display: none; margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--line); }
.menu__signin .login__title { padding: 10px 16px 4px; }
.menu__signin a { gap: 12px; padding: 0 8px; font-size: 1.0625rem; }
.menu__signin .ico { width: 36px; height: 36px; padding: 9px; }
@media (max-width: 480px) { .site-header .login { display: none; } .menu__signin { display: flex; } }
.hero { color: var(--text); background: var(--mist); --grid: rgb(14 26 47 / .055); }
.hero h1 { color: var(--ink); text-shadow: none; }
.hero h1 span + span { color: var(--sky-deep); }
.hero .lede, .hero__note { color: var(--text); text-shadow: none; }
.hero .lede { color: #3d4a5e; }
.hero__note { color: var(--muted); }
.hero .lede a { color: var(--ink); }
.hero :focus-visible { outline-color: var(--sky-deep); }
.crumbs, .story-date { color: var(--muted); }
.crumbs a { color: var(--text); }
.crumbs a:hover, .crumbs [aria-current] { color: var(--ink); }
.hero .store { background: var(--ink); color: #fff; }
.hero .store:hover { background: var(--navy); color: #fff; }
.hero .shapes { --clear: linear-gradient(90deg, rgb(0 0 0 / .5) 0 40%, #000 70%); }
.btn--ghost { color: var(--ink); background: var(--paper); box-shadow: inset 0 0 0 1.5px #8a96a8; }
.btn--ghost:hover { color: var(--ink); box-shadow: inset 0 0 0 1.5px var(--ink); }
.sheet { box-shadow: 0 -1px 0 var(--line); }
.hero--home { padding-bottom: clamp(56px, 7vw, 96px); --grid-mask: radial-gradient(ellipse 80% 70% at 50% 20%, #000 30%, transparent 80%); }
.hero__center { display: grid; justify-items: center; text-align: center; }
.hero--home h1 { font-size: clamp(2.5rem, 6vw, 4.75rem); max-width: 15ch; }
.hero--home .lede { max-width: 36em; margin-inline: auto; }
.hero--home .hero__actions { justify-content: center; }
.hero--home + .proof { margin-top: 0; border-radius: 0; box-shadow: none; }
.stage { position: relative; max-width: 1040px; margin: clamp(48px, 6vw, 72px) auto 0; padding: 0 clamp(0px, 5vw, 64px); }
.stage__window { overflow: hidden; border-radius: 16px; background: var(--paper); box-shadow: 0 0 0 1px rgb(14 26 47 / .08), 0 50px 100px -40px rgb(14 26 47 / .45); }
.stage__bar { display: flex; align-items: center; gap: 6px; height: 38px; padding: 0 14px; border-bottom: 1px solid var(--line); background: #fafbfd; }
.stage__bar i { width: 10px; height: 10px; border-radius: 50%; background: #d5dbe4; }
.stage__bar span { margin: 0 auto; padding: 2px 14px; border-radius: 6px; background: var(--mist); font-size: .8125rem; color: var(--muted); }
.stage__window img { width: 100%; height: auto; }
.stage__window { translate: 0 calc(var(--stage-parallax, 0) * -60px); }
.stage__phone { translate: 0 calc(var(--stage-parallax, 0) * -280px); }
.stage .quote-card { transform: translateY(calc(var(--stage-parallax, 0) * 64px)); }
.stage__phone img { width: 100%; }
html:lang(fr) .stage__phone img { clip-path: inset(.168% 1.429% 0 .714% round 16.79% / 7.73%); }
@media (max-width: 640px) {
.stage__window { translate: 0 calc(var(--stage-parallax, 0) * -30px); }
.stage__phone { translate: 0 calc(var(--stage-parallax, 0) * -160px); }
.stage .quote-card { transform: translateY(calc(var(--stage-parallax, 0) * 36px)); }
}
.reduce-motion :is(.stage__window, .stage__phone) { translate: none; }
.reduce-motion .stage .quote-card { transform: none; }
.stage__phone { position: absolute; left: 0; bottom: -40px; width: clamp(110px, 20%, 210px); filter: drop-shadow(0 30px 40px rgb(14 26 47 / .3)); }
.stage .quote-card { left: auto; right: 0; bottom: -36px; max-width: 320px; box-shadow: 0 0 0 1px rgb(14 26 47 / .06), 0 30px 60px -24px rgb(14 26 47 / .4); }
.cursor { position: absolute; z-index: 2; display: flex; align-items: flex-start; gap: 2px; pointer-events: none; animation: cursor-a 9s ease-in-out infinite; }
.cursor svg { width: 18px; height: 18px; fill: var(--c); stroke: #fff; stroke-width: 1.4; stroke-linejoin: round; }
.cursor b { margin-top: 14px; padding: 3px 10px; border-radius: 0 999px 999px 999px; background: var(--c); color: #fff; font-size: .8125rem; font-weight: 700; line-height: 1.4; box-shadow: 0 6px 14px -6px rgb(14 26 47 / .5); }
.cursor--admin { --c: var(--navy); left: 38%; top: 34%; }
.cursor--student { --c: var(--sky-deep); left: 15%; top: 70%; animation-name: cursor-b; animation-duration: 11s; }
.cursor--tutor { --c: var(--coral-deep); left: 76%; top: 22%; animation-name: cursor-c; animation-duration: 13s; }
@keyframes cursor-a { 0%, 100% { transform: none; } 40% { transform: translate(60px, 22px); } 70% { transform: translate(18px, 48px); } }
@keyframes cursor-b { 0%, 100% { transform: none; } 50% { transform: translate(28px, -36px); } }
@keyframes cursor-c { 0%, 100% { transform: none; } 35% { transform: translate(-44px, 40px); } 70% { transform: translate(-10px, 70px); } }
@media (max-width: 900px) {
.stage { padding: 0; }
.stage__phone { left: -6px; bottom: -28px; width: 26%; }
.stage .quote-card { position: relative; right: auto; bottom: auto; max-width: none; margin: 48px 0 0 auto; width: min(100%, 420px); }
.cursor--tutor { left: 66%; }
.stage { display: grid; }
.stage > :not(.quote-card) { grid-area: 1 / 1 / 2 / 2; }
.stage .quote-card { grid-area: 2 / 1 / 3 / 2; }
}
@media (max-width: 640px) {
.stage__bar { height: 28px; }
.stage__bar span { font-size: .6875rem; }
.stage__phone { width: 30%; bottom: -24px; }
.cursor b { margin-top: 12px; padding: 2px 8px; font-size: .75rem; }
.cursor--admin { left: 60%; top: 58%; }
.cursor--student { left: 30%; top: 56%; }
.cursor--tutor { left: 56%; top: 14%; }
.stage .quote-card { margin-top: 44px; }
}
.offer { background: var(--navy); }
.results { background: var(--paper); }
.story-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: clamp(32px, 4vw, 48px) 0 0; padding: 0; list-style: none; }
.story-stats li { display: grid; align-content: start; gap: 6px; padding: 22px 24px; border-radius: var(--r); background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.story-stats strong { font-size: clamp(2rem, 3.4vw, 2.75rem); font-weight: 700; line-height: 1; letter-spacing: -.03em; color: var(--ink); }
.story-stats span { font-size: 1rem; line-height: 1.4; color: var(--text); }
.glance__result { color: var(--sky) !important; }
.logo-cluster { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 36px 0 0; padding: 0; list-style: none; }
.logo-cluster li { display: grid; place-items: center; height: 64px; padding: 0 20px; border-radius: var(--r); background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.logo-cluster img { height: 30px; width: auto; max-width: 140px; object-fit: contain; }
.stories-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 20px; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { min-height: 44px; padding: 0 18px; border: 0; border-radius: 999px; background: var(--paper); box-shadow: inset 0 0 0 1.5px var(--line); font: inherit; font-size: .9375rem; font-weight: 600; color: var(--text); cursor: pointer; }
.chip:hover { box-shadow: inset 0 0 0 1.5px #8a96a8; color: var(--ink); }
.chip[aria-pressed="true"] { background: var(--ink); box-shadow: none; color: #fff; }
.chip:focus-visible { outline: 2px solid var(--sky-deep); outline-offset: 2px; }
.stories li, .stories li:nth-child(n+4) { grid-column: span 2; }
.stories li:nth-child(n+4) .story__img { aspect-ratio: 16 / 9; }
.stories li[hidden] { display: none; }
.story { grid-template-rows: auto auto 1fr auto; }
.story:hover { box-shadow: 0 0 0 1px var(--ink), var(--shadow); }
.story__org { color: var(--sky-deep); }
.story__more { display: inline-flex; align-items: center; gap: 6px; padding: 0 24px 22px; font-size: .9375rem; font-weight: 700; color: var(--ink); }
.story__more .ico { width: 16px; height: 16px; transition: transform .2s var(--ease); }
.story:hover .story__more .ico { transform: translateX(3px); }
@media (max-width: 1080px) { .stories li, .stories li:nth-child(n+4) { grid-column: span 3; } }
@media (max-width: 760px) {
.story-stats { grid-template-columns: 1fr; gap: 10px; }
.story-stats li { grid-template-columns: 6.5rem 1fr; align-items: center; gap: 14px; padding: 16px 18px; }
.story-stats strong { font-size: 1.75rem; }
.story__more { display: none; }
}
@media (max-width: 640px) { .stories li, .stories li:nth-child(n+4) { grid-column: auto; } .logo-cluster li { height: 52px; padding: 0 14px; } .logo-cluster img { height: 24px; max-width: 110px; } }
.event-feature { display: grid; grid-template-columns: auto 1fr; gap: clamp(24px, 4vw, 48px); margin-top: 20px; padding: clamp(24px, 4vw, 48px); border-radius: var(--r-lg); background: var(--navy); color: #d3dcea; }
.event-feature__date { display: grid; place-content: center; width: 120px; height: 132px; border-radius: var(--r); background: var(--paper); text-align: center; line-height: 1; }
.event-feature__date span { font-size: 1rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--sky-deep); }
.event-feature__date strong { font-size: 3.5rem; font-weight: 700; letter-spacing: -.03em; color: var(--ink); }
.event-feature h3 { color: #fff; font-size: clamp(1.75rem, 3vw, 2.5rem); max-width: 22ch; }
.event-feature p { margin-top: 14px; max-width: 38em; font-size: 1.125rem; }
.event-meta { display: flex; flex-wrap: wrap; gap: 10px 28px; margin: 22px 0 28px; padding: 0; list-style: none; color: #fff; }
.event-meta li { display: flex; align-items: center; gap: 8px; }
.event-meta .ico { width: 20px; height: 20px; color: var(--sky); }
.event-list { margin: 36px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.event-list li { display: grid; grid-template-columns: 12rem 1fr; gap: 8px 32px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.event-list time { font-weight: 700; color: var(--sky-deep); }
.event-list h3 { font-size: 1.375rem; font-weight: 700; color: var(--ink); letter-spacing: -.01em; }
.event-list p { display: flex; align-items: center; gap: 6px; margin-top: 4px; color: var(--muted); }
.event-list .ico { width: 18px; height: 18px; }
.ondemand { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 36px 0 0; padding: 0; list-style: none; }
.ondemand a { display: grid; grid-template-rows: auto 1fr auto; gap: 14px; height: 100%; padding: 26px; border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line); text-decoration: none; transition: box-shadow .25s var(--ease); }
.ondemand a:hover { box-shadow: 0 0 0 1px var(--ink), var(--shadow); }
.ondemand__tag { display: inline-flex; align-items: center; gap: 8px; font-size: .875rem; font-weight: 600; color: var(--muted); }
.ondemand__tag .ico { width: 18px; height: 18px; color: var(--sky-deep); }
.ondemand strong { font-size: 1.25rem; line-height: 1.3; color: var(--ink); }
.ondemand__more { display: inline-flex; align-items: center; gap: 6px; font-size: .9375rem; font-weight: 700; color: var(--ink); }
.ondemand__more .ico { width: 16px; height: 16px; }
@media (max-width: 900px) { .ondemand { grid-template-columns: 1fr; } }
@media (max-width: 640px) {
.event-feature { grid-template-columns: 1fr; }
.event-feature__date { width: 84px; height: 92px; }
.event-feature__date strong { font-size: 2.5rem; }
.event-feature .btn { width: 100%; }
.event-list li { grid-template-columns: 1fr; }
}
.hero__center { position: relative; isolation: isolate; }
.hero-shapes { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.hs { position: absolute; left: var(--x); top: var(--y); width: var(--s); height: var(--s); overflow: visible;
fill: none; stroke: var(--c); stroke-width: 3.5; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke;
rotate: var(--r, 0deg); animation: hs-in .9s var(--ease) var(--in, 0s) both, hs-float var(--d, 11s) ease-in-out var(--in, 0s) infinite alternate; }
.hs--tri { --x: 9%; --y: 6%; --s: 58px; --c: #4fa9d8; --r: -16deg; --d: 12s; --in: .1s; }
.hs--ring { --x: 15%; --y: 64%; --s: 44px; --c: #ef8079; --d: 10s; --in: .25s; }
.hs--square { --x: 85%; --y: 56%; --s: 40px; --c: #4fa9d8; --r: 14deg; --d: 13s; --in: .4s; }
.hs--plus { --x: 88%; --y: 8%; --s: 26px; --c: #ef8079; --d: 9s; --in: .55s; }
.hs--dot { --x: 4%; --y: 40%; --s: 14px; --c: #6fcaf3; --d: 8s; --in: .7s; fill: #6fcaf3; stroke: none; }
.hs--rocket { --x: 76%; --y: 22%; --s: 44px; --r: 8deg; --d: 14s; --in: .85s; fill: #ef8079; stroke: none; }
@keyframes hs-in { from { opacity: 0; scale: .6; } }
@keyframes hs-float { to { translate: 0 -14px; rotate: calc(var(--r, 0deg) + 10deg); } }
.is-off .hs { animation-play-state: paused; }
@media (max-width: 900px) {
.hs--tri { --x: 2%; --y: -2%; --s: 44px; }
.hs--ring { --x: 93%; --y: 16%; --s: 30px; }
.hs--square { --x: 1%; --y: 100%; --s: 28px; }
.hs--plus { --x: 84%; --y: -4%; --s: 22px; }
.hs--dot { --x: 3%; --y: 44%; }
.hs--rocket { --x: 93%; --y: 99%; --s: 34px; }
}
@media (max-width: 640px) {
.hs--ring, .hs--dot { display: none; }
.hs--tri { --x: -1%; --y: -6%; --s: 36px; }
.hs--plus { --x: 90%; --y: -5%; --s: 20px; }
.hs--square { --x: 0%; --y: 100%; --s: 24px; }
.hs--rocket { --x: 88%; --y: 99%; --s: 30px; }
}
:is(.a11y-contrast-dark, .a11y-contrast-light) .hero-shapes { display: none !important; }
.a11y-noimg .hero-shapes { visibility: hidden !important; }
@media (prefers-contrast: more), (forced-colors: active) { .hero-shapes { display: none; } }
:root { --coral-btn: #c44c45; --coral-btn-hi: #b8443d; --coral-btn-press: #a93c36; }
.btn { min-height: 54px; padding: 0 28px; font-size: 1.1875rem; letter-spacing: -.005em; }
.btn--primary, .btn--primary:hover { color: #fff; }
.btn--primary { background: radial-gradient(120% 150% at 18% 0%, var(--coral-btn) 0%, var(--coral-btn) 40%, var(--coral-btn-hi) 100%); box-shadow: 0 1px 2px rgb(14 26 47 / .22); }
.btn--primary:hover { filter: none; background: var(--coral-btn-hi); box-shadow: 0 10px 20px -10px rgb(14 26 47 / .55); }
.btn--primary:active { background: var(--coral-btn-press); box-shadow: 0 1px 2px rgb(14 26 47 / .22); }
.btn--primary[disabled], .btn--primary[aria-disabled="true"] { opacity: 1; background: #5d6878; cursor: progress; }
.hero__actions .btn { min-height: 60px; padding: 0 34px; font-size: 1.25rem; }
.btn--sm { min-height: 48px; padding: 0 22px; font-size: 1.0625rem; }
.btn--ghost { box-shadow: inset 0 0 0 2px #6b778a; }
.btn--ghost:hover { box-shadow: inset 0 0 0 2px var(--ink); }
.btn--ghost:active { transform: translateY(1px); }
.btn:focus-visible { outline-width: 3px; outline-offset: 3px; border-radius: 999px; }
@media (max-width: 760px) {
.btn--sm { padding: 0 18px; font-size: 1rem; }
.hero__actions .btn { font-size: 1.1875rem; }
}
@media (max-width: 400px) { .site-header .btn--sm { padding: 0 14px; } }
@media (forced-colors: active) { .btn { border: 2px solid ButtonText; } }
.a11y-contrast-dark .brand img { content: url(img/nimbus-logo.svg); }
.hero--home h1 { max-width: 15ch; font-size: clamp(2.9rem, 11.5vw, 6.25rem); font-weight: 800; letter-spacing: -.04em; line-height: .96; }
.hero--home .hero__center { padding-top: 8px; }
@media (min-width: 900px) {
.hero--home h1 { max-width: none; }
.hs--tri { --x: 0%; --y: -14%; } .hs--plus { --x: 79%; --y: -12%; } .hs--rocket { --x: 93%; --y: -16%; }
.hs--dot { --x: 1%; --y: 34%; } .hs--ring { --x: 12%; --y: 66%; } .hs--square { --x: 87%; --y: 66%; }
}
@media (min-width: 901px) {
.stage { margin-bottom: 120px; }
.stage__phone { left: clamp(-72px, calc((1120px - 100vw) / 2), 0px); }
.stage .quote-card { left: 50%; right: auto; bottom: -112px; translate: -50% 0; width: min(560px, 60%); max-width: none; }
.cursor--admin { left: 48%; top: 14%; }
.cursor--student { left: 36%; top: 62%; }
}
@media (min-width: 901px) and (max-width: 1280px) {
.stage { padding-left: 112px; padding-right: 24px; }
}
@media (max-width: 900px) {
.cursor { display: none; }
.stage__phone { left: auto; right: -6px; }
.stage .quote-card { margin-inline: auto; }
}
.hero .lede { color: #26334a; }
.hero--home .lede { font-size: clamp(1.25rem, 1.75vw, 1.5rem); line-height: 1.5; max-width: 40em; }
@media (min-width: 641px) { .hero--home .lede { font-size: 1.5rem; } }
.site-header .signin { min-height: 48px; padding: 0 16px 0 20px; border-radius: 999px; box-shadow: inset 0 0 0 2px #6b778a; text-decoration-line: none; transition: box-shadow .2s var(--ease); }
.site-header .signin:hover { box-shadow: inset 0 0 0 2px var(--ink); }
.login summary.signin:focus-visible { outline-offset: 3px; border-radius: 999px; }
@media (forced-colors: active) { .site-header .signin { border: 2px solid ButtonText; } }
.steps-row--six { --n: 3; gap: 40px 48px; }
.brand-shot { margin: 0; }
.brand-shot img { display: block; width: 100%; height: auto; }
.steps-row--six p { text-wrap: balance; }
.brand-shot img { border-radius: var(--r-lg); background: #fff; box-shadow: 0 0 0 1px var(--line, rgb(14 26 47 / .08)); }
.marquee__list img.logo--stacked { height: 64px; }
.logo-cluster img.logo--stacked { height: 50px; }
@media (max-width: 640px) { .logo-cluster img.logo--stacked { height: 42px; } .marquee__list img.logo--stacked { height: 50px; } }
.logo-cluster { gap: 8px 40px; padding: 22px 32px; border-radius: var(--r-lg); background: #fff; box-shadow: 0 0 0 1px var(--line); justify-content: space-between; }
.logo-cluster li { height: 56px; padding: 0; border-radius: 0; background: none; box-shadow: none; }
@media (max-width: 640px) { .logo-cluster { gap: 4px 28px; padding: 16px 20px; justify-content: center; } .logo-cluster li { height: 48px; padding: 0; } }
.hero--home .glows, .hero--home .glow--coral { display: block; }
.hero--home .glow--sky { --c: rgb(111 202 243 / .75); --rx: 620px; --ry: 520px; --gx: 10%; --gy: 34%; }
.hero--home .glow--coral { --c: rgb(239 128 121 / .6); --rx: 580px; --ry: 480px; --gx: 92%; --gy: 62%; }
.hero--home .glow { --keep-clear: radial-gradient(ellipse 34% 40% at 50% 34%, transparent 55%, #000 100%); }
@media (max-width: 900px) { .hero--home .glow { --keep-clear: radial-gradient(ellipse 90% 34% at 50% 32%, transparent 70%, #000 100%); } }
@media (prefers-contrast: more), (forced-colors: active) { .hero--home .glows { display: none; } }
@media (max-width: 640px) { .brand img { width: 132px; } }
@media (max-width: 480px) {
.site-header .login, .site-header .signin { display: flex; align-items: center; }
.site-header .signin { min-height: 44px; padding: 0 12px 0 16px; gap: 4px; font-size: .9375rem; }
.site-header:not(.cta-on) .btn--sm { display: none; }
.site-header.cta-on .login { display: none; }
.site-header__inner, .site-header__actions { gap: 10px; }
}
@media (max-width: 360px) { .brand img { width: 112px; } }
.nav-cta__short { display: none; }
@media (max-width: 640px) {
.site-header__actions > .btn--sm .nav-cta__full { display: none; }
.site-header__actions > .btn--sm .nav-cta__short { display: inline; }
html:lang(fr) .site-header__actions > .btn--sm { padding-inline: 10px; }
}
@media (max-width: 360px) {
html:lang(fr) .site-header .signin { padding-inline: 7px; font-size: .875rem; }
html:lang(fr) .site-header .login__chev { width: 14px; height: 14px; }
}
@keyframes arrow-nudge { 0%, 100% { transform: none; } 25%, 75% { transform: translateX(5px); } 50% { transform: none; } }
html:not(.reduce-motion) .is-nudge :is(svg, .ico) { animation: arrow-nudge 1.1s var(--ease) .3s 1; }
main p > a:not([class]) { overflow-wrap: anywhere; }
.form__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.plate { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: center; gap: 24px 56px; margin-top: 64px; padding: clamp(28px, 4vw, 48px) clamp(24px, 4.5vw, 56px); border-radius: var(--r-lg); background: var(--navy); color: var(--on-dark-muted); overflow: hidden; }
.plate h3 { color: #fff; font-size: clamp(1.5rem, 2.4vw, 2rem); letter-spacing: -.02em; }
.plate p { margin-top: 10px; max-width: 52ch; font-size: 1.125rem; }
.plate .plate__stat { display: grid; justify-items: center; margin: 0; padding-left: 56px; border-left: 1px solid rgb(255 255 255 / .16); text-align: center; }
.plate__stat strong { font-size: clamp(3.5rem, 6vw, 5rem); font-weight: 700; letter-spacing: -.045em; line-height: .95; color: var(--sky); font-variant-numeric: tabular-nums; }
.plate__stat span { margin-top: 8px; color: #fff; font-weight: 600; }
.plate__stat small { max-width: 24ch; margin-top: 10px; color: var(--on-dark-muted); font-size: .9375rem; line-height: 1.45; }
@media (max-width: 900px) {
.plate { grid-template-columns: 1fr; margin-top: 48px; }
.plate .plate__stat { grid-row: 1; justify-items: start; padding: 0 0 20px; border-left: 0; border-bottom: 1px solid rgb(255 255 255 / .16); text-align: left; }
}
.lang { display: inline-flex; flex: none; padding: 3px; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--line); }
.lang a { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 0 11px 0 9px; border-radius: 999px; color: var(--muted); font-size: .875rem; font-weight: 700; letter-spacing: .04em; text-decoration: none; }
.lang a:hover { color: var(--ink); }
.lang a[aria-current] { background: var(--sky-tint); color: var(--ink); }
.lang .flag { flex: none; width: 21px; height: 14px; border-radius: 3px; outline: 1px solid rgb(14 26 47 / .14); outline-offset: -1px; }
.menu__lang { display: flex; padding: 6px 6px 10px; margin-bottom: 6px; border-bottom: 1px solid var(--line); }
.menu .lang a { min-height: 44px; padding: 0 16px 0 12px; font-size: .9375rem; color: var(--muted); }
.menu .lang a[aria-current] { background: var(--sky-tint); color: var(--ink); }
.footer__base .lang { box-shadow: inset 0 0 0 1px rgb(255 255 255 / .2); }
.footer__base .lang a { color: rgb(255 255 255 / .75); }
.footer__base .lang a:hover, .footer__base .lang a[aria-current] { color: #fff; }
.footer__base .lang a[aria-current] { background: rgb(255 255 255 / .12); }
.footer__base .lang .flag { outline-color: rgb(255 255 255 / .25); }
.footer__base { align-items: center; }
@media (max-width: 640px) { .site-header__actions > .lang { display: none; } }
@media (forced-colors: active) { .lang a[aria-current] { outline: 2px solid CanvasText; } }
.nav a { white-space: nowrap; }
.site-header__actions > .lang a[aria-current] { display: none; }
@media (max-width: 1199px) { .nav { display: none; } .menu-btn { display: grid; } }
@media (max-width: 1300px) and (min-width: 1200px) { .nav ul { gap: 22px; } .site-header__inner { gap: 28px; } .site-header__actions { gap: 16px; } }
.site-header .brand { flex: none; }
.site-header .btn, .site-header .signin { white-space: nowrap; }
.btn--primary { background-color: var(--coral-btn-hi); }
.btn--primary:hover { background-image: none; background-color: var(--coral-btn-hi); }
.btn--primary:active { background-image: none; background-color: var(--coral-btn-press); }
.hs { --dx: 22px; --dy: 18px; animation: hs-in .9s var(--ease) var(--in, 0s) both, hs-drift var(--d, 16s) ease-in-out var(--in, 0s) infinite; }
.hs--tri { --d: 17s; } .hs--ring { --d: 14s; --dx: -20px; } .hs--square { --d: 19s; --dx: -18px; --dy: 22px; }
.hs--plus { --d: 13s; --dx: -16px; } .hs--dot { --d: 12s; --dx: 16px; --dy: 24px; } .hs--rocket { --d: 15s; --dx: 18px; --dy: 24px; }
@keyframes hs-drift {
0%, 100% { translate: 0 0; rotate: var(--r, 0deg); }
25% { translate: var(--dx) calc(var(--dy) * -1); rotate: calc(var(--r, 0deg) + 14deg); }
50% { translate: calc(var(--dx) * .3) calc(var(--dy) * -1.7); rotate: calc(var(--r, 0deg) + 4deg); }
75% { translate: calc(var(--dx) * -.8) calc(var(--dy) * -.6); rotate: calc(var(--r, 0deg) - 10deg); }
}
@media (max-width: 640px) { .hs { --dx: 9px; --dy: 8px; } .hs--ring, .hs--square { --dx: -9px; } }
@media (min-width: 1200px) {
.hs--tri { --s: 50px; } .hs--ring { --s: 40px; } .hs--plus { --s: 24px; } .hs--rocket { --s: 42px; } .hs--square { --s: 36px; }
}
@keyframes login-in { from { opacity: 0; transform: translateY(-6px) scale(.98); } }
@media (prefers-reduced-motion: no-preference) {
html:not(.reduce-motion) .login[open] .login__menu { animation: login-in .2s var(--ease); transform-origin: top right; }
html:not(.reduce-motion) .login__menu a { transition: background-color .15s var(--ease); }
}
.login__menu { width: 360px; }
.login__app { display: grid; grid-template-columns: 40px 1fr; gap: 14px; align-items: start; padding: 10px 12px; color: var(--ink); }
.login__stores { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.login__menu .login__stores a { display: inline-flex; grid-template-columns: none; gap: 6px; align-items: center; min-height: 36px; padding: 0 12px 0 10px; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--line); font-size: .875rem; font-weight: 700; }
.login__menu .login__stores .ico { width: 18px; height: 18px; padding: 0; border-radius: 0; background: none; color: var(--ink); }
.login__menu .login__stores a:hover { background: var(--mist); }
@media (max-width: 640px) {
.site-header__inner { position: relative; }
.site-header .login { position: static; }
.site-header .login__menu { left: 0; right: 0; width: auto; max-width: 400px; margin-inline: auto; top: calc(100% + 4px); }
html:not(.reduce-motion) .login[open] .login__menu { transform-origin: top center; }
}
@media (max-width: 640px) {
.site-header .login, .site-header .signin { display: flex; align-items: center; }
.site-header:not(.cta-on) .btn--sm, .site-header.cta-on .login { display: flex; }
.site-header .btn--sm, .site-header .login > summary { overflow: hidden; max-width: 280px; transform: none; transition: max-width .45s var(--ease), padding .45s var(--ease), margin .45s var(--ease), opacity .3s var(--ease), visibility .45s; }
.site-header:not(.hdr-measure):not(.hdr-swap):not(.cta-on) .btn--sm { max-width: 0; padding-inline: 0; margin-left: -10px; opacity: 0; visibility: hidden; transform: none; }
.site-header.hdr-swap:not(.hdr-measure) .site-header__actions { display: grid; grid-template-columns: auto auto; }
.site-header.hdr-swap:not(.hdr-measure) :is(.login, .site-header__actions > .btn--sm) { grid-area: 1 / 1; justify-self: end; }
.site-header.hdr-swap:not(.hdr-measure) .menu-btn { grid-area: 1 / 2; }
.site-header.hdr-swap:not(.hdr-measure):not(.cta-on) .btn--sm, .site-header.hdr-swap:not(.hdr-measure).cta-on .login { opacity: 0; visibility: hidden; }
}
.site-header.hdr-tight:not(.hdr-measure) .login { display: none !important; }
.site-header.hdr-tight .menu__signin { display: flex; }
.site-header.hdr-nav-off:not(.hdr-measure) .nav { display: none; }
.site-header.hdr-nav-off .menu-btn, .site-header.hdr-measure .menu-btn { display: grid; }
.site-header.hdr-still, .site-header.hdr-still * { transition: none !important; }
.menu__cta { display: none; }
.site-header.hdr-cta-off:not(.hdr-measure) .site-header__actions > .btn--sm { display: none !important; }
.site-header.hdr-cta-off .menu__cta { display: flex; width: 100%; margin-top: 12px; justify-content: center; }
.menu .menu__cta, .menu .menu__cta:hover { color: #fff; }
.menu .menu__cta:hover { background: var(--coral-btn-hi); }
.menu .menu__cta:active { background: var(--coral-btn-press); }
@media (max-width: 420px) { .brand img { width: 118px; } }
@media (max-width: 360px) { .brand img { width: 112px; } }
.who__logo { width: auto; height: 28px; max-width: 120px; margin-top: 10px; object-fit: contain; object-position: left; }
@media (max-width: 640px) {
.voices__scroller .voices__grid { align-items: flex-start; }
.voices blockquote { height: auto; }
}
.section-head--pipe h2, .section-head--pipe p { text-wrap: balance; }
.section-head--pipe p { max-width: 44em; }
.ondemand a { grid-template-rows: auto auto 1fr auto; padding-top: 0; overflow: hidden; }
.ondemand__thumb { position: relative; display: block; margin: 0 -26px 4px; aspect-ratio: 16 / 9; overflow: hidden; background: var(--sky-tint); }
.ondemand__thumb img { position: absolute; left: 10%; top: 14%; width: 80%; height: auto; border-radius: 8px 8px 0 0; box-shadow: var(--shadow); }
.ondemand__play { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 56px; height: 56px; margin: -28px 0 0 -28px; border-radius: 50%; background: rgb(14 26 47 / .82); color: #fff; }
.ondemand__play .ico { width: 22px; height: 22px; margin-left: 3px; fill: currentColor; }
@media (prefers-reduced-motion: no-preference) {
html:not(.reduce-motion) .ondemand__thumb img { transition: translate .4s var(--ease); }
html:not(.reduce-motion) .ondemand a:hover .ondemand__thumb img { translate: 0 -6px; }
}
.btn.btn--primary, .btn.btn--primary:is(:link, :visited, :hover, :focus, :active) { color: #fff; }
@media (max-width: 1199px) and (max-height: 500px) {
.site-header { transition: background-color .25s var(--ease), box-shadow .25s var(--ease); }
.site-header.is-solid { background: transparent; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; pointer-events: none; }
.site-header .brand, .site-header__actions > :not(.menu-btn) { transition: opacity .25s var(--ease), visibility .25s; }
.site-header.is-solid .brand, .site-header.is-solid .site-header__actions > :not(.menu-btn) { opacity: 0; visibility: hidden; }
.site-header.is-solid .menu-btn { display: grid; pointer-events: auto; width: 48px; height: 48px; border: 0; background: #fff; color: var(--ink); box-shadow: 0 0 0 1px var(--line), 0 10px 24px -10px rgb(14 26 47 / .45); }
.site-header.is-solid .menu__cta { display: flex; width: 100%; margin-top: 12px; justify-content: center; }
.site-header.is-solid .menu__signin { display: flex; }
.menu { max-height: calc(100dvh - var(--header-h) - 12px); overflow-y: auto; }
}
.menu__lang { padding: 0 0 8px; margin-bottom: 8px; }
.site-header .menu__cta { margin-top: 8px; }
.menu .menu__signin { margin-top: 8px; padding-top: 8px; }
.menu__signin .login__title { padding: 8px 16px 4px; }
.menu__signin a { gap: 14px; padding: 0 16px; }
.menu__app { display: grid; grid-template-columns: 36px 1fr; gap: 14px; align-items: start; padding: 8px 16px 10px; }
.menu__app strong { display: flex; align-items: center; min-height: 36px; font-size: 1.0625rem; font-weight: 600; }
.menu .login__stores { margin-top: 4px; }
.menu .login__stores a { min-height: 40px; gap: 6px; padding: 0 14px 0 12px; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--line); font-size: .9375rem; font-weight: 700; }
.menu .login__stores .ico { width: 18px; height: 18px; padding: 0; border-radius: 0; background: none; color: var(--ink); }
.os-ios [data-store="ios"], .os-android [data-store="android"] { order: -1; }
.shape { transition: opacity .6s var(--ease); }
.shape.is-hid { opacity: 0; }
.shapes-init .shape { transition: none; }
.hs.is-hid { opacity: 0; animation: none; }
.menu__app > span { display: contents; } .menu__app strong { grid-column: 2; } .menu .login__stores { grid-column: 1 / -1; margin-top: 2px; }
.ln { text-wrap: balance; }
.hero .lede strong { font-weight: 600; color: var(--ink); }
.logo-cluster li { height: 66px; }
.logo-cluster img { height: 36px; max-width: 168px; }
.logo-cluster img.logo--stacked { height: 60px; }
@media (max-width: 640px) { .logo-cluster li { height: 54px; } .logo-cluster img { height: 28px; max-width: 128px; } .logo-cluster img.logo--stacked { height: 48px; } }
.prose blockquote, .offer__quote--light { position: relative; padding: 24px 28px 26px; border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.section--tint .offer__quote--light, .section--soft .offer__quote--light { box-shadow: 0 0 0 1px var(--line); }
.prose blockquote::before, .offer__quote--light::before { content: "“" / ""; position: absolute; left: 12px; top: 12px; font: 700 4rem/1 Georgia, "Times New Roman", serif; color: var(--coral); opacity: .55; }
.prose blockquote :is(.hang, .close-q), .offer__quote--light :is(.hang, .close-q) { display: none; }
.prose blockquote > p:first-of-type, .offer__quote--light > p:first-of-type { text-indent: 20px; }
.prose blockquote .who, .offer__quote--light .who { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.prose blockquote p { font-size: 1.125rem; }
.who:has(.who__img) { align-items: start; }
.who__img { margin-top: 1px; }
.glance { padding: 30px; background: var(--paper); color: var(--text); box-shadow: 0 0 0 1px var(--line), 0 24px 48px -32px rgb(14 26 47 / .35); }
.glance h2 { color: var(--ink); font-size: clamp(1.5rem, 2vw, 1.75rem); letter-spacing: -.02em; }
.glance dl { gap: 16px; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); }
.glance dt { color: var(--muted); }
.glance dd { color: var(--ink); }
.glance__result { color: var(--sky-deep) !important; }
.hero--page { --grid: rgb(14 26 47 / .085); --grid-mask: radial-gradient(ellipse 95% 85% at 60% 0%, #000 35%, transparent 85%); }
.hero--page .shape:not(.is-hid) { opacity: min(1, calc(var(--o) * 1.8)); }
.hero--page .shape { filter: blur(calc(var(--b) * .45)); }
.hero--page .shapes { --clear: linear-gradient(90deg, rgb(0 0 0 / .6) 0 40%, #000 66%); }
@media (max-width: 900px) { .hero--page .shapes { --clear: linear-gradient(180deg, rgb(0 0 0 / .55) 0 50%, #000 72%); } }
.site-header:not(.cta-on) .btn--sm.btn--primary { background: rgb(255 255 255 / .6); background-image: none; color: var(--ink); box-shadow: inset 0 0 0 2px var(--coral-deep); }
.site-header:not(.cta-on) .btn--sm.btn--primary:hover { background: var(--coral-tint); }
.site-header .btn--sm.btn--primary { transition: background-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease); }
@media (forced-colors: active) { .site-header .btn--sm.btn--primary { border: 2px solid ButtonText; } }
.cursor--student { --c: var(--coral-deep); }
.cursor--tutor { --c: var(--sky-deep); }
:is(.login__app, .menu__app) .ico { background: var(--coral-tint); color: var(--coral-deep); }
:is(.login__menu, .menu__signin) a[href*="console."] .ico { background: #e6e9f0; color: var(--navy); }
.login__menu, .menu__signin { display: flex; flex-direction: column; }
.menu__signin { display: none; }
html:not(.os-ios):not(.os-android) :is(.login__app, .menu__app) { order: 3; }
.field__pair { display: grid; grid-template-columns: 1fr; gap: 12px; }
.field__pair.is-other { grid-template-columns: 1fr 1fr; }
@media (max-width: 640px) { .field__pair.is-other { grid-template-columns: 1fr; } }
.field select { width: 100%; min-height: 48px; padding: 12px 42px 12px 14px; font: 400 1rem/1.4 var(--font); color: var(--ink); border: 1px solid #758296; border-radius: 12px; cursor: pointer; appearance: none;
background: var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230e1a2f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center / 18px no-repeat;
transition: border-color .2s var(--ease), box-shadow .2s var(--ease); }
.field select:hover { border-color: var(--ink); }
.field select:focus { outline: none; border-color: var(--sky-deep); box-shadow: 0 0 0 4px rgb(11 111 164 / .2); }
@media (forced-colors: active) { .field select { appearance: auto; background-image: none; padding-right: 14px; } }
.event-find { margin-top: clamp(56px, 7vw, 80px); }
.event-feature { margin-top: 28px; }
@media (min-width: 900px) {
.event-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; border-top: 0; }
.event-list li { grid-template-columns: 1fr; align-content: start; gap: 10px; padding: 24px 26px; border: 0; border-radius: var(--r-lg); background: var(--soft); }
}
.pair-cards { display: grid; grid-template-columns: 1.25fr 1fr; gap: 24px; align-items: stretch; }
.pair-card { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(28px, 4vw, 44px); border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line), 0 18px 40px -30px rgb(14 26 47 / .35); }
.pair-card .h2 { font-size: clamp(1.625rem, 2.6vw, 2.25rem); }
.pair-card > p:first-of-type { margin-top: 14px; }
.pair-card > p:has(.btn) { margin-top: 24px; }
.pair-card > p:has(.btn) + p { margin-top: 16px; }
@media (max-width: 900px) { .pair-cards { grid-template-columns: 1fr; } }
.pair-card .btn { justify-content: center; text-align: center; text-wrap: balance; }
.stage-pager { position: fixed; left: 50%; bottom: 12px; z-index: 9999; translate: -50% 0; display: flex; align-items: center; gap: 4px; padding: 4px; border-radius: 999px; background: #0e1a2f; color: #fff; font: 600 .8125rem/1.2 var(--font); box-shadow: 0 10px 30px -10px rgb(0 0 0 / .5); }
.stage-pager a { padding: 8px 14px; border-radius: 999px; color: #fff; text-decoration: none; }
.stage-pager a:hover { background: rgb(255 255 255 / .14); }
.stage-pager span { display: grid; justify-items: center; padding: 0 6px; font-variant-numeric: tabular-nums; }
.stage-pager small { max-width: 16ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 400; opacity: .7; }
.logo-cluster { column-gap: clamp(16px, 1.6vw, 24px); justify-content: space-between; }
@media (max-width: 1299px) { .logo-cluster { display: grid; grid-template-columns: repeat(4, 1fr); justify-items: center; } }
@media (max-width: 640px) { .logo-cluster { grid-template-columns: repeat(2, 1fr); } }
.stage-pager, .stage-pager a { white-space: nowrap; }
html[lang^="fr"] .close h2 { max-width: 22ch; }
.story-top .story-hero { margin: 0; }
.story-top .story-hero-img { margin: 0; border-radius: var(--r-lg); box-shadow: 0 40px 80px -48px rgb(14 26 47 / .55); }
.story-top .story-hero figcaption { color: var(--muted); }
.sheet:has(> .story-layout) { padding-top: 56px; }
@media (min-width: 901px) {
.hero--page:has(.story-top) { padding-bottom: calc(clamp(56px, 6vw, 80px) + 40px); }
.story-top { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: clamp(40px, 5vw, 72px); align-items: center; }
.story-top .hero__copy { max-width: none; }
.story-top .story-hero { margin-right: calc(-1 * min(var(--bleed), 72px)); }
.story-top .story-hero-img { aspect-ratio: 3 / 2; }
.story-top .story-hero figcaption { position: absolute; margin: 0; }
.story-top .story-hero { position: relative; }
.story-top .story-hero figcaption { top: calc(100% + 10px); left: 0; }
.story-layout .glance { margin-top: -108px; }
}
@media (max-width: 900px) {
.story-top .story-hero { margin: 32px calc(-1 * var(--gutter)) 0 0; }
.story-top .story-hero-img { aspect-ratio: 16 / 9; border-radius: var(--r-lg) 0 0 var(--r-lg); }
.story-top .story-hero figcaption { padding-right: var(--gutter); }
.story-layout .glance { margin-top: -96px; }
}
@media (min-width: 901px) { .story-top .story-stats { grid-column: 1 / -1; margin-top: 8px; } }
.who__logo { height: 40px; max-width: 168px; margin-top: 14px; }
.who__logo.logo--stacked { height: 60px; }
@media (min-width: 901px) {
.split--video { grid-template-columns: minmax(0, .82fr) minmax(0, 1.3fr); gap: clamp(32px, 4vw, 64px); }
.split--video > .video { margin-right: calc(-1 * min(var(--bleed), 96px)); box-shadow: 0 40px 80px -48px rgb(14 26 47 / .55); }
}
@media (max-width: 900px) { .split--video > .video { margin-right: calc(-1 * var(--gutter)); border-radius: var(--r-lg) 0 0 var(--r-lg); } }
@media (min-width: 901px) {
.plans { --plan-pad: max(0px, min(clamp(28px, 4vw, 44px), var(--bleed) - 24px)); margin-inline: calc(-1 * var(--plan-pad)); }
.plans .plan { padding-inline: max(var(--plan-pad), 28px); }
}
.auds { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2vw, 24px); }
.aud { display: grid; grid-template-rows: auto 1fr; overflow: hidden; border-radius: var(--r-lg); background: var(--paper); box-shadow: 0 0 0 1px var(--line); }
.aud__shot { display: flex; justify-content: center; align-items: flex-start; height: clamp(240px, 24vw, 320px); margin: 0; padding: 32px 32px 0; overflow: hidden; background: var(--mist); }
.aud__shot img { display: block; height: auto; }
.aud__shot--phone img { width: clamp(150px, 14vw, 190px); filter: drop-shadow(0 24px 32px rgb(14 26 47 / .22)); }
.aud__shot--wide img { width: 100%; border-radius: 12px 12px 0 0; box-shadow: 0 0 0 1px var(--line), 0 24px 48px -24px rgb(14 26 47 / .3); }
.aud__shot--brand { align-items: center; padding: 20px 24px; }
.aud__shot--brand img { max-width: 100%; max-height: 100%; width: auto; }
.aud__body { padding: clamp(24px, 3vw, 40px); }
.aud__body .h2 { font-size: clamp(1.625rem, 2.6vw, 2.25rem); }
.aud__body .h2 + p { margin-top: 12px; }
.aud__body .checks { margin-top: 18px; }
.aud__body p:last-child { margin-top: 18px; }
@media (max-width: 900px) { .auds { grid-template-columns: 1fr; } }
.aud__shot--brand { background: #fff; box-shadow: inset 0 -1px 0 var(--line); }
.video__play { max-width: calc(100% - 40px); padding-block: 8px; line-height: 1.2; text-align: left; border-radius: 26px; }
.video__play .ico { flex: none; }
@media (max-width: 600px) { .video__play { left: 12px; bottom: 12px; max-width: calc(100% - 24px); min-height: 44px; gap: 8px; padding: 7px 16px 7px 12px; font-size: .875rem; line-height: 1.15; border-radius: 22px; } .video__play .ico { width: 18px; height: 18px; } }
.hero--home .lede .ln { display: block; }
.site-header .signin { box-shadow: inset 0 0 0 1px var(--line); }
.site-header .signin:hover, .site-header .login[open] > .signin { box-shadow: inset 0 0 0 1px var(--coral); }
@media (max-width: 1199px) {
.site-header .site-header__inner, .site-header:not(.is-solid) .site-header__inner, .site-header:not(.is-glass):not(.is-solid) .site-header__inner { padding-block: 0; }
}
@media (min-width: 901px) {
.site-header:not(.is-glass):not(.is-solid) .site-header__inner { padding-top: 32px; }
}
@media (max-width: 640px) { .site-header .login { transition: opacity .3s var(--ease), visibility .3s; } }
@media (min-width: 1200px) {
html:lang(fr) .site-header__inner { gap: 24px; }
html:lang(fr) .nav ul { gap: 18px; }
html:lang(fr) .site-header__actions { gap: 12px; }
}
.nav a { text-decoration-line: none; padding-bottom: 6px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 8' preserveAspectRatio='none'%3E%3Cpath d='M1.5 4.9C18 3.6 34 5.6 52 4.3S84 3.5 98.5 4.6' fill='none' stroke='%23ef8079' stroke-width='2.2' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3Cpath d='M4 5.9C24 5.1 46 6.2 66 5.2S88 5 96 5.6' fill='none' stroke='%23ef8079' stroke-opacity='.45' stroke-width='1' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") left bottom / 0 8px no-repeat; }
.nav a:hover { background-size: 100% 8px; }
@media (prefers-reduced-motion: no-preference) { html:not(.reduce-motion) .nav a { transition: background-size .3s var(--ease), color .2s var(--ease); } }
@media (forced-colors: active) { .nav a:hover { text-decoration-line: underline; } }
.values-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 0 clamp(40px, 7vw, 112px); align-items: start; margin-top: 40px; }
.values-split .values { grid-template-columns: 1fr; gap: 0; margin: 0; }
.values-split .values li { padding: 14px 0; border-bottom: 1px solid var(--line); }
.values-split .values li:first-child { border-top: 1px solid var(--line); }
.reasons--stack { grid-template-columns: 1fr; margin: 0; }
.reasons--stack li:first-child { padding-top: 14px; }
@media (max-width: 900px) { .values-split { grid-template-columns: 1fr; gap: 40px; } .values-split .values { grid-template-columns: 1fr; } }
.leaders__img { width: 136px; height: 136px; margin-bottom: 22px; }
.leaders__img--initials { font-size: 2.5rem; }
@media (max-width: 600px) { .leaders__img { width: 112px; height: 112px; } .leaders__img--initials { font-size: 2rem; } }
:is(.a11y-contrast-dark, .a11y-contrast-light) .journey__beam { display: none !important; }
@media (prefers-contrast: more), (forced-colors: active) { .journey__beam { display: none; } }
.menu { inset: var(--menu-top, calc(var(--header-h) + 4px)) var(--menu-right, 16px) auto auto; }
.menu { max-height: calc(100dvh - var(--menu-top, calc(var(--header-h) + 4px)) - 16px); overflow-y: auto; overscroll-behavior: contain; }
.site-header:is(.hdr-swap, .hdr-tight) .menu__signin { display: flex; }
@media (max-width: 760px) { :is(.people, .journey, .move) .glows { opacity: .35; } }
.plan__icon { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 20px; border-radius: 16px; background: var(--sky-tint); color: var(--sky-deep); }
.plan__icon .ico { width: 28px; height: 28px; }
.plan--turnkey .plan__icon { background: rgb(239 128 121 / .16); color: var(--coral); }
@media (max-width: 600px) { .plan__icon { width: 48px; height: 48px; margin-bottom: 16px; border-radius: 14px; } .plan__icon .ico { width: 24px; height: 24px; } }
.options--dark { position: relative; isolation: isolate; background: var(--navy); color: var(--on-dark-muted); }
.options--dark .h2 { color: #fff; }
.options--dark .section-head p { color: var(--on-dark-muted); }
.options--dark .plan { background: #24365c; color: #d3dcea; box-shadow: inset 0 0 0 1px rgb(255 255 255 / .14), 0 30px 60px -30px rgb(0 0 0 / .5); }
.options--dark .plan :is(h3, h4) { color: #fff; }
.options--dark .plan .plan__tag { color: #6fcaf3; }
.options--dark .plan .plan__fit { color: var(--on-dark-muted); }
.options--dark .plan .plan__icon { background: rgb(111 202 243 / .16); color: #6fcaf3; }
.options--dark .plan .plan__list li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%236fcaf3' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.options--dark .plan .plan__list--you li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='%23b9c6da' stroke-width='2'/%3E%3C/svg%3E"); }
.options--dark .plan--turnkey { background: var(--paper); color: var(--ink); box-shadow: 0 30px 60px -30px rgb(0 0 0 / .5); }
.options--dark .plan--turnkey :is(h3, h4) { color: var(--ink); }
.options--dark .plan--turnkey .plan__tag { color: var(--coral-deep); }
.options--dark .plan--turnkey .plan__fit { color: var(--muted); }
.options--dark .plan--turnkey .plan__icon { background: var(--coral-tint); color: var(--coral-deep); }
.options--dark .plan--turnkey .plan__list li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10.5 4 4 8-8.5' fill='none' stroke='%230b6fa4' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.options--dark .plan--turnkey .plan__list--you li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='6' fill='none' stroke='%23566173' stroke-width='2'/%3E%3C/svg%3E"); }
.survey__head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 16px 64px; }
.survey .h2 { max-width: none; }
.survey__count { margin: 0; color: var(--muted); font-size: 1.1875rem; line-height: 1.5; }
.survey__count strong { color: var(--ink); font-weight: 750; }
.survey__note { display: block; }
@media (min-width: 1181px) { .survey__count { white-space: nowrap; } }
.stats.stats--survey { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(28px, 5vw, 72px); margin-top: clamp(40px, 5vw, 64px); }
.stats--survey .stat { gap: 16px; padding: 0; border-radius: 0; background: none; box-shadow: none; }
.stats--survey .stat strong { font-size: clamp(4rem, 8vw, 7rem); font-weight: 750; letter-spacing: -.04em; line-height: .9; color: var(--sky-deep); }
.stats--survey .meter { height: 6px; margin-top: 4px; background: var(--sky-tint); }
.stats--survey .meter::after { background: var(--sky-deep); }
.stats--survey .stat span { min-height: 0; max-width: 22ch; color: var(--ink); font-size: 1.1875rem; line-height: 1.35; }
@media (max-width: 1180px) {
.survey__head { grid-template-columns: 1fr; }
.survey__count { max-width: 46ch; }
}
@media (max-width: 640px) {
.survey__count { font-size: 1.0625rem; }
.stats.stats--survey { grid-template-columns: 1fr; gap: 28px; margin-top: 32px; }
.stats--survey .stat { grid-template-columns: 6.5rem minmax(0, 1fr); grid-template-areas: "num label" "meter meter"; align-items: center; column-gap: 16px; row-gap: 12px; padding: 0; }
.stats--survey .stat strong { grid-area: num; font-size: 2.75rem; }
.stats--survey .stat span { grid-area: label; font-size: 1.0625rem; }
.stats--survey .meter { grid-area: meter; margin: 0; }
}
.plate { background: var(--paper); color: var(--muted); box-shadow: 0 0 0 1px var(--line); }
.plate h3 { color: var(--ink); }
.plate .plate__stat { border-left-color: var(--line); }
.plate__stat strong { color: var(--sky-deep); }
.plate__stat span { color: var(--ink); }
.plate__stat small { color: var(--muted); }
@media (max-width: 900px) { .plate .plate__stat { border-bottom-color: var(--line); } }
.plate--dark { background: var(--navy); color: var(--on-dark-muted); box-shadow: none; }
.plate--dark h3, .plate--dark .plate__stat span { color: var(--on-dark); }
.plate--dark .plate__stat { border-color: rgb(255 255 255 / .16); }
.plate--dark .plate__stat strong { color: var(--sky); }
.plate--dark .plate__stat small { color: var(--on-dark-muted); }
.pull .quote-card { position: static; max-width: none; margin: 24px 0 0; padding: clamp(24px, 3vw, 36px); box-shadow: 0 0 0 1px rgb(14 26 47 / .06), 0 30px 60px -24px rgb(14 26 47 / .3); }
.pull .quote-card p { font-size: clamp(1.25rem, 2vw, 1.625rem); line-height: 1.4; }
@media (max-width: 600px) {
.hero--page, .hero--page:has(.story-top) { padding-bottom: 64px; }
.hero--page + .sheet { padding-top: 40px; }
}
.story-hero figcaption { text-align: right; }
@media (min-width: 901px) { .story-top .story-hero figcaption { left: 0; right: 0; } }
.story-stats li { --hue: var(--sky-deep); --tint: var(--sky-tint); background: var(--tint); box-shadow: none; }
.story-stats li:nth-child(3n+2) { --hue: var(--coral-deep); --tint: var(--coral-tint); }
.story-stats li:nth-child(3n+3) { --hue: var(--green); --tint: #e8f4ee; }
.story-stats strong { color: var(--hue); }
:is(.a11y-contrast-dark, .a11y-contrast-light) .story-stats li { background: transparent !important; box-shadow: 0 0 0 2px currentColor !important; }
:is(.a11y-contrast-dark, .a11y-contrast-light) .story-stats strong { color: inherit !important; }
@media (forced-colors: active) { .story-stats li { border: 1px solid CanvasText; } }
.logo-cluster { --lc-pad: max(0px, min(32px, var(--bleed) - 16px)); margin-inline: calc(-1 * var(--lc-pad)); padding-inline: max(var(--lc-pad), 20px); }
.consent { position: fixed; right: 20px; bottom: 20px; z-index: 56; width: min(420px, calc(100% - 40px)); padding: 20px 22px; border-radius: 20px; background: var(--paper); color: var(--ink); box-shadow: 0 0 0 1px var(--line), 0 24px 48px -20px rgb(14 26 47 / .45); }
.consent[hidden] { display: none; }
.consent__title { font-size: 1.0625rem; font-weight: 700; }
.consent p { margin-top: 6px; font-size: .9375rem; line-height: 1.5; color: var(--muted); }
.consent a { color: var(--sky-deep); font-weight: 600; }
.consent__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 16px; }
@media (prefers-reduced-motion: no-preference) { .consent:not([hidden]) { animation: consent-in .45s var(--ease) both; } }
@keyframes consent-in { from { opacity: 0; transform: translateY(16px); } }
@media (max-width: 640px) {
.consent { right: 14px; bottom: 14px; width: calc(100% - 28px); padding: 18px; }
html.consent-open .a11y-fab { bottom: calc(var(--consent-h, 0px) + 26px); }
html.consent-open .site-footer { padding-bottom: calc(var(--consent-h, 0px) + 90px); }
}
main:focus { outline: none; }
@media (min-width: 641px) { .hero__actions--plain { flex-wrap: nowrap; width: max-content; max-width: none; } }
@media (min-width: 641px) and (max-width: 899px) { .hero__actions--plain .btn { padding: 0 20px; font-size: 1.0625rem; } }
@media (max-width: 1100px) {
html.consent-open .stage-pager { bottom: calc(var(--consent-h, 0px) + 26px); }
}
.btn { gap: 10px; }
.btn > .ico { width: 20px; height: 20px; flex: none; }
.tutor-invite { display: flex; align-items: flex-start; gap: 20px; margin-top: 36px; padding: 28px; border-radius: var(--r); background: var(--paper); border: 1px solid var(--line); }
.tutor-invite > .ico { width: 32px; height: 32px; flex: none; color: var(--sky-deep); }
.tutor-invite h3 { font-size: clamp(1.25rem, 2vw, 1.625rem); line-height: 1.25; }
.tutor-invite p { margin: 12px 0 16px; }
.section--event-next { padding-block: clamp(40px, 6vw, 72px); }
.event-next { padding: clamp(24px, 3vw, 40px); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--paper); }
.event-next h2 { font-size: clamp(1.625rem, 2.8vw, 2.25rem); line-height: 1.2; }
.event-next .section-lede { margin-top: 12px; max-width: none; }
.event-next__details { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px 32px; margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.event-next .event-meta { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 0; color: var(--text); }
.event-next .event-meta .ico { flex: none; color: var(--coral-deep); }
.event-next__details > .link-arrow { flex: none; }
.recording { display: grid; grid-template-columns: auto 1fr; gap: 28px; max-width: 1040px; margin-top: 36px; padding: 36px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.recording__icon { display: grid; place-items: center; width: 64px; height: 64px; background: var(--coral-tint); color: var(--coral-deep); border-radius: 50%; }
.recording__icon .ico { width: 28px; height: 28px; }
.recording h3 { max-width: 36ch; font-size: clamp(1.375rem, 2.5vw, 2rem); line-height: 1.3; letter-spacing: -.015em; }
.recording p { margin: 20px 0 24px; max-width: 65ch; }
.recording__meta { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 24px 0 0; padding: 0; list-style: none; color: var(--muted); }
.recording__meta li { display: flex; align-items: center; gap: 8px; }
.recording__meta .ico { width: 20px; height: 20px; flex: none; }
.webinar-note { display: flex; align-items: flex-start; gap: 16px; margin-top: 40px; color: var(--muted); }
.webinar-note > .ico { width: 24px; height: 24px; flex: none; }
.webinar-note h3 { font-size: 1.125rem; }
.webinar-note p { margin-top: 8px; }
.story-stats li { border: 1px solid var(--line); }
.story-layout .prose:not(.prose--legal) ul li::marker { color: var(--coral-deep); }
.glance .glance__contact { width: auto; margin-top: 24px; color: var(--sky-deep); }
.plate__stat strong { letter-spacing: 0; font-variant-numeric: proportional-nums; font-kerning: normal; }
.email-alternative { font-size: .9375rem !important; }
.apply__card .email-alternative a { color: #fff; }
.apply__card .email-alternative a:hover { color: var(--sky); }
.faq details.is-closing summary::after { transform: rotate(45deg) translateY(-3px); }
.hero--page:has(.story-stats) + .sheet .glance { margin-top: 0; }
@media (max-width: 900px) {
.story-layout .glance { margin-top: 0; }
}
@media (max-width: 640px) {
.recording { grid-template-columns: 1fr; gap: 20px; padding: 28px 0; }
.recording__icon { width: 48px; height: 48px; }
.tutor-invite { padding: 22px; gap: 14px; }
.apply__actions > .btn { width: 100%; line-height: 1.3; padding-block: 12px; text-align: center; }
}
.recording { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); max-width: none; gap: clamp(28px, 4vw, 56px); align-items: center; }
.recording__poster { margin: 0; max-width: 400px; }
.recording__poster img { width: 100%; height: auto; border-radius: var(--r); border: 1px solid var(--line); }
.recording__poster figcaption { margin-top: 12px; color: var(--muted); font-size: .875rem; }
@media (max-width: 900px) { .recording { grid-template-columns: 1fr; gap: 28px; } .recording__poster { max-width: 360px; } }
@media (min-width: 1100px) {
.reasons p, .pillars p, .plan__list, .plan__fit, .plan__extra,
.checks, .flow p, .steps-row p, .apply__card p, .faq summary, .faq__a {
font-size: 1.1875rem;
}
.reasons h3, .steps-row h3 { font-size: 1.5rem; }
.prose:not(.prose--legal) { font-size: 1.25rem; }
.fixes__pain span:not(.sr-only) { font-size: 1rem; }
.fixes__fix, .event-meta, .recording__meta { font-size: 1.125rem; }
.glance dt { font-size: 1rem; }
.glance dd:not(.glance__result) { font-size: 1.1875rem; }
}
.ico--down { rotate: 90deg; }
.plate--growth { grid-template-columns: auto minmax(0, 1fr); gap: 24px clamp(40px, 6vw, 88px); margin-top: clamp(56px, 7vw, 88px); background: var(--sky-tint); box-shadow: none; }
.plate--growth .plate__stat { justify-items: start; padding: 0; border: 0; text-align: left; }
.plate--growth .plate__stat strong { font-size: clamp(3.5rem, 7vw, 6rem); font-weight: 750; letter-spacing: -.04em; white-space: nowrap; }
.plate--growth .plate__stat span { max-width: 20ch; margin-top: 12px; font-size: 1.125rem; line-height: 1.35; }
.plate--growth p { color: var(--text); }
@media (max-width: 900px) {
.plate--growth { grid-template-columns: 1fr; row-gap: 32px; }
.plate--growth .plate__stat { max-width: none; padding: 0; border: 0; }
.plate--growth .plate__stat span { max-width: 32ch; }
}
.story-stats { gap: clamp(28px, 4vw, 64px); }
.story-stats li, .story-stats li:nth-child(n) { gap: 12px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.story-stats strong { font-size: clamp(2.5rem, 4vw, 4rem); font-weight: 750; letter-spacing: -.035em; line-height: .95; color: var(--sky-deep); }
.story-stats span { max-width: 30ch; color: var(--ink); font-size: 1.0625rem; line-height: 1.4; }
@media (max-width: 760px) {
.story-stats { gap: 24px; }
.story-stats li { grid-template-columns: 1fr; gap: 8px; padding: 0; }
.story-stats strong { font-size: 2.5rem; }
}
.hero-headline { position: relative; width: 100%; container-type: inline-size; }
.hero--home .hero-headline h1 { display: flex; justify-content: center; align-items: baseline; gap: .22em; max-width: none; font-size: clamp(1rem, 7.8cqi, 5.7rem); line-height: 1.1; white-space: nowrap; }
html:lang(fr) .hero--home .hero-headline h1 { font-size: clamp(.75rem, 5.7cqi, 4.8rem); }
.hero--home .hero-headline__prefix { color: var(--ink); }
.hero--home h1 .hero-headline__lines { display: grid; width: var(--phrase-width, auto); flex: none; overflow: visible clip; padding-block: .12em; text-align: left; transition: width .6s var(--ease); }
.hero--home h1 .hero-headline__line { grid-area: 1 / 1; justify-self: start; width: max-content; color: var(--sky-deep); opacity: 0; visibility: hidden; transform: translateY(.35em); transition: none; }
.js:not(.reduce-motion) .hero-headline:not(.hero-headline--ready):not(.hero-headline--reading) .hero-headline__line:not(.is-current) { position: absolute; }
.hero--home h1 .hero-headline__line.is-leaving { opacity: 0; visibility: visible; transform: translateY(-.35em); transition: transform .6s var(--ease), opacity .6s var(--ease); }
.hero--home h1 .hero-headline__line.is-current { opacity: 1; visibility: visible; transform: none; transition: transform .6s var(--ease), opacity .6s var(--ease); }
.no-js .hero--home h1 .hero-headline__line, .reduce-motion .hero--home h1 .hero-headline__line { grid-area: auto; opacity: 1; visibility: visible; transform: none; }
.no-js .hero--home .hero-headline h1, .reduce-motion .hero--home .hero-headline h1 { align-items: baseline; }
.site-header .login-admin { display: none; }
.no-js .hero--home h1 .hero-headline__lines, .reduce-motion .hero--home h1 .hero-headline__lines { width: auto; transition: none; }
.hero--home h1 .hero-headline__mobile-prefix, .hero-headline__break { display: none; }
.hero--home h1 .hero-headline__space { display: inline; }
@media (max-width: 900px) {
.hero--home .hero-headline h1 { display: block; font-size: clamp(2rem, 11.5cqi, 3.5rem); line-height: 1.15; white-space: normal; }
html:lang(fr) .hero--home .hero-headline h1 { font-size: clamp(1.7rem, 9.2cqi, 3rem); }
.hero--home .hero-headline__prefix, .hero--home h1 .hero-headline__space { display: none; }
.hero--home h1 .hero-headline__lines { width: 100%; text-align: center; }
.hero--home h1 .hero-headline__line { width: 100%; }
.hero--home h1 .hero-headline__mobile-prefix { display: inline; color: var(--ink); }
.hero-headline__break { display: block; }
}
.hero--home .lede .hero__clause { display: block; text-wrap: balance; }
@media (max-width: 640px) { .hero--home .lede .hero__clause + .hero__clause { margin-top: .25em; } }
.hero--home h1 .hero-headline__first, .hero--home h1 .hero-headline__second { display: inline; }
@media (max-width: 900px) {
.hero--home .hero-headline h1, html:lang(fr) .hero--home .hero-headline h1 { font-size: var(--hero-mobile-font, clamp(2rem, 11.5cqi, 3.5rem)); }
.hero--home h1 .hero-headline__first, .hero--home h1 .hero-headline__second { display: block; width: max-content; margin-inline: auto; white-space: nowrap; }
.hero-headline__break { display: none; }
}
.hero--home .hero-headline--reading h1, html:lang(fr) .hero--home .hero-headline--reading h1 { display: block; font-size: var(--hero-reading-font, 3.5rem); line-height: 1.2; white-space: normal; }
.hero--home .hero-headline--reading .hero-headline__prefix { display: none; }
.hero--home .hero-headline--reading h1 .hero-headline__lines { width: 100%; gap: .5em; transition: none; }
.hero--home .hero-headline--reading h1 .hero-headline__line { grid-area: auto; width: 100%; opacity: 1; visibility: visible; transform: none; transition: none; text-align: center; text-wrap: balance; overflow-wrap: anywhere; }
.hero--home .hero-headline--reading h1 .hero-headline__first, .hero--home .hero-headline--reading h1 .hero-headline__second { display: inline; width: auto; white-space: normal; }
.hero--home .hero-headline--reading h1 .hero-headline__mobile-prefix, .hero--home .hero-headline--reading h1 .hero-headline__space { display: inline; }
.hero--home .hero-headline--reading .hero-headline__break { display: none; }
@media (max-width: 900px) {
.hero--home .hero-headline h1 { position: relative; }
.js:not(.reduce-motion) .hero--home .hero-headline.hero-headline--ready:not(.hero-headline--reading) .hero-headline__prefix {
display: block; position: absolute; top: .12em; left: calc(50% - var(--mobile-first-width, 100%) / 2); width: max-content; transition: left .6s var(--ease);
}
.js:not(.reduce-motion) .hero--home .hero-headline.hero-headline--ready:not(.hero-headline--reading) .hero-headline__mobile-prefix { visibility: hidden; }
}
.form--hubspot > .btn { margin-block: 20px; }
.form--hubspot #hubspot-native { margin-block: 20px; min-width: 0; }
.form--hubspot iframe { max-width: 100%; }
