.phead { padding: 56px 0 64px; }
@media (min-width: 48rem) { .phead { padding: 96px 0 96px; } }
.phead__wrap { display: flex; flex-direction: column; align-items: center; text-align: center; }
.phead__back { margin-bottom: 40px; color: var(--fg); }
.phead__title { max-width: 13em; font-size: 3.1875rem; line-height: 1; letter-spacing: -.01em; font-weight: 400; text-wrap: balance; }
@media (min-width: 48rem) { .phead__title { font-size: 4.4375rem; } }
@media (min-width: 80rem) { .phead__title { font-size: 6rem; } }
.phead__title em { font-style: italic; }
.phead__title--long { max-width: 24em; font-size: 2.25rem; line-height: 1.05; }
@media (min-width: 48rem) { .phead__title--long { font-size: 3.1875rem; } }
@media (min-width: 80rem) { .phead__title--long { font-size: 3.1875rem; } }
.phead__sub { margin-top: 32px; max-width: 40rem; color: var(--fg-80); }
.phead__meta { margin-top: 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 16px; }
.phero { position: relative; isolation: isolate; display: flex; align-items: flex-end; min-height: 600px; height: 88svh; max-height: 1000px;
  margin-top: calc(-1 * var(--header-h)); overflow: hidden; color: var(--paper-soft); background: var(--navy-dark); }
.phero__photo { position: absolute; inset: 0; z-index: -2; }
.phero__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.phero__shade { position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, rgb(0 0 0 / .34) 0%, rgb(0 0 0 / .18) 38%, rgb(0 0 0 / .46) 100%); }
.phero__copy { display: flex; flex-direction: column; align-items: center; padding-bottom: 56px; text-align: center; }
@media (min-width: 64rem) { .phero__copy { padding-bottom: 72px; } }
.phero__eyebrow { color: var(--paper-soft); }
.phero__title { max-width: 10em; font-size: 3.1875rem; line-height: 1; letter-spacing: -.01em; font-weight: 400; text-wrap: balance; }
@media (min-width: 40rem) { .phero__title { font-size: 4.4375rem; } }
@media (min-width: 64rem) { .phero__title { font-size: 6rem; } }
.phero__title em { font-style: italic; }
.phero__sub { margin-top: 32px; max-width: 34rem; color: color-mix(in oklab, var(--paper-soft) 92%, transparent); }
.split { padding: 80px 0; }
@media (min-width: 48rem) { .split { padding: 120px 0; } }
.split--wash { background: var(--blue-subtle); }
.split__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 48px; }
@media (min-width: 64rem) {
  .split__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px; align-items: start; }
  .split__head { grid-column: 1 / span 6; position: sticky; top: calc(var(--chrome-offset, 64px) + 40px); }
  .split__copy { grid-column: 8 / span 5; }
}
.split__head .h2 { max-width: 10em; }
.split__head .h2--sm { max-width: 14em; }
.split__copy { display: flex; flex-direction: column; gap: 24px; }
.split__lede, .split__p { font-size: 1.125rem; line-height: 1.6; text-wrap: pretty; }
@media (min-width: 48rem) { .split__lede, .split__p { font-size: 1.25rem; } }
.split__lede { color: var(--fg); }
.split__p { color: var(--fg-80); }
.split__copy em { font-style: italic; }
.split__actions { margin-top: 8px; }
.split__fine { color: var(--fg-60); }
.split__quote { border-radius: 20px; background: var(--blue-subtle); padding: 32px 28px 36px; }
.split__quote p { max-width: 29em; text-indent: -.21em; font-family: var(--font-display);   
  font-size: clamp(1.5rem, 1.05rem + 1.4vw, 2.5rem); line-height: 1.24; letter-spacing: -.012em; font-weight: 400;
  font-variation-settings: "opsz" 144, "SOFT" 30, "WONK" 0; color: var(--fg); text-wrap: pretty; }
.split__qmark { color: var(--blue-ink); }
@media (min-width: 48rem) { .split__quote { padding: 56px 64px 60px; } }
@media (min-width: 64rem) {
  .split--quote .split__head { position: static; }
  .split--quote .split__head .h2 { max-width: 7.5em; }   
  .split__quote { grid-column: 1 / -1; margin-top: 24px; padding: 72px 96px 76px; }
}
.steps { background: var(--blue-subtle); padding: 80px 16px; }
@media (min-width: 48rem) { .steps { padding: 120px 32px; } }
.steps__wrap { display: flex; flex-direction: column; gap: 64px; }
@media (min-width: 48rem) { .steps__wrap { gap: 96px; } }
.steps__list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
@media (min-width: 48rem) { .steps__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 80rem) { .steps__list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.steps__list { grid-auto-rows: auto; }
.step { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; border-radius: 16px; background: var(--neutral-white); padding: 24px; }
@media (min-width: 64rem) { .step { padding: 32px; } }
.step__head { display: flex; align-items: center; gap: 8px; margin-bottom: 56px; color: var(--fg-60); }
@media (min-width: 64rem) { .step__head { margin-bottom: 96px; } }
.step__mark { width: 18px; height: 18px; flex-shrink: 0; color: var(--blue); }
.step__num { font-variant-numeric: tabular-nums; }
.step__title { margin-bottom: 16px; font-size: 1.625rem; line-height: 1.2; letter-spacing: -.01em; font-weight: 500; text-wrap: balance; }
.step__p { font-size: 1rem; line-height: 1.6; color: var(--fg-80); text-wrap: pretty; }
.cases { padding: 80px 16px; }
@media (min-width: 48rem) { .cases { padding: 120px 32px; } }
.cases__wrap { display: flex; flex-direction: column; gap: 64px; }
@media (min-width: 48rem) { .cases__wrap { gap: 96px; } }
.cases__board { display: flex; width: 100%; max-width: 72rem; margin-inline: auto; flex-direction: column; gap: 8px; }
.cases__list { border-radius: 16px; background: var(--neutral-white); padding: 0 24px; }
@media (min-width: 64rem) { .cases__list { padding: 0 40px; } }
.case { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding-block: 24px; border-bottom: 1px solid var(--fg-12); }
.case:last-child { border-bottom: 0; }
@media (min-width: 64rem) { .case { grid-template-columns: 10rem minmax(0, 1fr) auto; align-items: center; column-gap: 40px; padding-block: 32px; } }
.case__sev { display: flex; align-items: center; gap: 12px; font-size: .875rem; line-height: 1.3; font-weight: 500; color: var(--fg-80); }
.case__meter { display: inline-flex; gap: 3px; }
.case__meter span { width: 14px; height: 6px; border-radius: calc(infinity * 1px); background: var(--fg-12); }
.case__meter span.on { background: var(--blue-ink); }
.case__name { font-size: 1.25rem; line-height: 1.3; letter-spacing: -.01em; font-weight: 500; }
.case__path { margin-top: 6px; font-size: .875rem; line-height: 1.6; color: var(--fg-60); }
.case__cost { font-size: 2.25rem; line-height: 1; letter-spacing: -.01em; white-space: nowrap; }
@media (min-width: 64rem) { .case__cost { text-align: right; } }
.cases__with { display: flex; align-items: center; gap: 16px; border-radius: 16px; background: var(--blue-ink); padding: 24px; color: var(--neutral-white); }
@media (min-width: 64rem) { .cases__with { padding: 32px 40px; } }
.cases__icon { flex-shrink: 0; }
.cases__with p { display: flex; flex-direction: column; gap: 4px; }
@media (min-width: 48rem) { .cases__with p { flex-direction: row; align-items: baseline; flex-wrap: wrap; column-gap: 16px; } }
.cases__with-t { font-size: 1.625rem; line-height: 1.2; letter-spacing: -.01em; font-weight: 500; }
.cases__with-s { color: color-mix(in oklab, var(--neutral-white) 86%, transparent); }
.cases__note { margin-top: -32px; text-align: center; color: var(--fg-60); }
@media (min-width: 48rem) { .cases__note { margin-top: -64px; } }
.faq { padding: 80px 0; }
@media (min-width: 48rem) { .faq { padding: 120px 0; } }
.faq__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 48px; }
@media (min-width: 64rem) {
  .faq__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px; align-items: start; }
  .faq__head { grid-column: 1 / span 5; position: sticky; top: calc(var(--chrome-offset, 64px) + 40px); }
  .faq__list { grid-column: 7 / span 6; }
}
.faq__head .h2 { max-width: 12em; }
.faq__lead { margin-top: 32px; max-width: 30rem; color: var(--fg-80); }
.faq__list { border-top: 1px solid var(--fg-12); }
.faq__item { border-bottom: 1px solid var(--fg-12); }
.faq__q { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 24px; cursor: pointer; list-style: none;
  font-size: 1.25rem; line-height: 1.3; letter-spacing: -.01em; font-weight: 500; border-radius: 4px; }
.faq__q::-webkit-details-marker { display: none; }
.faq__icon { display: inline-flex; width: 32px; height: 32px; flex-shrink: 0; align-items: center; justify-content: center; border-radius: calc(infinity * 1px);
  background: var(--blue-subtle); color: var(--blue-ink); transition: transform .3s var(--ease), background-color .15s var(--ease), color .15s var(--ease); }
@media (hover: hover) { .faq__q:hover .faq__icon { background: var(--blue-soft); } }
.faq__item[open] .faq__icon { transform: rotate(45deg); background: var(--blue-ink); color: var(--neutral-white); }
.faq__a { padding: 0 56px 28px 0; }
.faq__a p { font-size: 1.125rem; line-height: 1.6; color: var(--fg-80); text-wrap: pretty; }
@media (prefers-reduced-motion: reduce) { .faq__icon { transition: none; } }
.ask { padding: 0 16px 80px; }
@media (min-width: 48rem) { .ask { padding: 0 32px 120px; } }
.ask__card { display: flex; flex-direction: column; align-items: center; gap: 32px; border-radius: 16px; background: var(--navy-dark); padding: 64px 24px;
  text-align: center; color: var(--paper-soft); }
@media (min-width: 64rem) { .ask__card { padding: 120px 64px; } }
.ask__card .h2 { max-width: 12em; }
.ask__p { max-width: 40rem; font-size: 1.125rem; line-height: 1.6; color: color-mix(in oklab, var(--paper-soft) 82%, transparent); text-wrap: pretty; }
@media (min-width: 48rem) { .ask__p { font-size: 1.25rem; } }
.ask__p a.link-strong { color: var(--peri); }
.progs { padding: 80px 16px; }
@media (min-width: 48rem) { .progs { padding: 120px 32px; } }
.progs__wrap { display: flex; flex-direction: column; gap: 64px; }
@media (min-width: 48rem) { .progs__wrap { gap: 96px; } }
.progs__list { display: flex; width: 100%; max-width: 80rem; margin-inline: auto; flex-direction: column; gap: 16px; }
.prog { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; border-radius: 16px; background: var(--neutral-white); padding: 24px; }
@media (min-width: 64rem) { .prog { grid-template-columns: repeat(12, minmax(0, 1fr)); padding: 40px; } .prog__head { grid-column: span 5 / span 5; } .prog__facts { grid-column: 6 / span 7; } }
.prog__head { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.prog__img { position: relative; width: 100%; aspect-ratio: 16 / 10; margin-bottom: 20px; overflow: hidden; border-radius: 12px; background: var(--paper-dark); }
.prog__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.prog__title { font-size: 2rem; line-height: 1.2; letter-spacing: -.01em; font-weight: 500; text-wrap: balance; }
.prog__sub { color: var(--fg-60); }
.chip--live { margin-top: 12px; background: var(--blue-ink); color: var(--neutral-white); }
.chip--live::before { content: ""; width: 6px; height: 6px; border-radius: calc(infinity * 1px); background: currentColor; }
.chip--dev { margin-top: 12px; background: var(--stone-soft); color: var(--stone-dark); }
.prog__facts { margin: 0; }
.prog__fact { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; padding-block: 16px; border-top: 1px solid var(--fg-12); }
.prog__fact:last-child { padding-bottom: 0; }
@media (min-width: 48rem) { .prog__fact { grid-template-columns: 12rem minmax(0, 1fr); gap: 24px; } }
.prog__fact dt { font-size: .875rem; line-height: 1.6; color: var(--fg-60); }
.prog__fact dd { margin: 0; font-size: 1.125rem; line-height: 1.5; text-wrap: pretty; }
.cover { padding: 16px 16px 80px; }
@media (min-width: 48rem) { .cover { padding: 16px 32px 120px; } }
.cover__grid { display: grid; width: 100%; max-width: 80rem; margin-inline: auto; grid-template-columns: minmax(0, 1fr); gap: 16px; }
@media (min-width: 64rem) { .cover__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.cover__grid { grid-auto-rows: auto; }
.cover__card { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; border-radius: 16px; background: var(--neutral-white); padding: 24px; }
@media (min-width: 64rem) { .cover__card { padding: 40px; } }
.cover__card > * + * { margin-top: 24px; }
@media (min-width: 64rem) { .cover__card > * + * { margin-top: 28px; } .cover__card > .cover__list { margin-top: 36px; } }
.cover__card--on { background: var(--blue-ink); color: var(--neutral-white); }
.cover__label { font-size: 1.25rem; line-height: 1.3; letter-spacing: -.01em; font-weight: 500; color: var(--fg-60); }
.cover__card--on .cover__label { color: color-mix(in oklab, var(--neutral-white) 80%, transparent); }
.cover__h { font-size: 2.25rem; line-height: 1; letter-spacing: -.01em; }
@media (min-width: 48rem) { .cover__h { font-size: 3.1875rem; } }
.cover__lead { font-size: 1.125rem; line-height: 1.6; color: var(--fg-80); text-wrap: pretty; }
.cover__card--on .cover__lead { color: color-mix(in oklab, var(--neutral-white) 86%, transparent); }
.cover__list { border-top: 1px solid var(--fg-12); }
.cover__card--on .cover__list, .cover__card--on .cover__row { border-color: color-mix(in oklab, var(--neutral-white) 24%, transparent); }
.cover__row { display: flex; align-items: flex-start; gap: 12px; padding-block: 16px; border-bottom: 1px solid var(--fg-12); }
.cover__icon { flex-shrink: 0; color: var(--fg-40); }
.cover__card--on .cover__icon { color: var(--neutral-white); }
.cover__row p { display: flex; flex-direction: column; gap: 4px; padding-top: 1px; }
.cover__t { font-size: 1.125rem; line-height: 1.35; font-weight: 500; }
.cover__s { font-size: .9375rem; line-height: 1.5; color: var(--fg-60); }
.cover__card--on .cover__s { color: color-mix(in oklab, var(--neutral-white) 80%, transparent); }
.cover__note { max-width: 80rem; margin: 32px auto 0; color: var(--fg-60); }
.bandsec { padding: 0 16px; }
@media (min-width: 48rem) { .bandsec { padding: 0 32px; } }
.band { display: grid; grid-template-columns: minmax(0, 1fr); gap: 40px; border-radius: 16px; background: var(--blue-ink); padding: 32px 24px;
  color: var(--neutral-white); transition: background-color .15s var(--ease); }
@media (min-width: 64rem) { .band { grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: end; gap: 32px; padding: 64px; }
  .band__main { grid-column: span 7 / span 7; } .band__side { grid-column: 9 / span 4; } }
@media (hover: hover) { .band:hover { background: var(--blue-dark); } .band:hover .tbtn__label { text-decoration: underline; text-underline-position: from-font; } }
.band:focus-visible { outline: 2px solid var(--neutral-black); outline-offset: 2px; }
.band__tag { background: color-mix(in oklab, var(--neutral-white) 16%, transparent); color: var(--neutral-white); }
.band__h { margin-top: 24px; font-size: 2.25rem; line-height: 1.05; letter-spacing: -.01em; }
@media (min-width: 48rem) { .band__h { font-size: 3.1875rem; line-height: 1; } }
.band__h em { font-style: italic; }
.band__side { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.band__p { font-size: 1.125rem; line-height: 1.6; color: color-mix(in oklab, var(--neutral-white) 86%, transparent); }
.band__go { color: var(--neutral-white); }
.facts { padding: 80px 16px; }
@media (min-width: 48rem) { .facts { padding: 120px 32px; } }
.facts__wrap { display: flex; flex-direction: column; gap: 64px; }
@media (min-width: 48rem) { .facts__wrap { gap: 96px; } }
.facts__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
@media (min-width: 48rem) { .facts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fact:last-child { grid-column: span 2 / span 2; } }
@media (min-width: 80rem) { .facts__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .fact, .fact:last-child { grid-column: span 2 / span 2; } .fact:nth-child(-n+2) { grid-column: span 3 / span 3; } }
.fact { display: flex; min-height: 280px; flex-direction: column; gap: 32px; border-radius: 16px; padding: 32px; }
@media (min-width: 64rem) { .fact { padding: 40px; } }
.fact__big { font-size: 3.1875rem; line-height: 1; letter-spacing: -.01em; }
@media (min-width: 48rem) { .fact__big { font-size: 4.4375rem; } }
.fact__txt { max-width: 30rem; font-size: 1.25rem; line-height: 1.5; text-wrap: pretty; }
.fact__src { display: block; margin-top: 12px; font-size: .875rem; line-height: 1.4; opacity: .72; }
.fact--blue { background: var(--blue); color: var(--neutral-white); }
.fact--navy { background: var(--navy-dark); color: var(--paper-soft); }
.fact--mist { background: var(--blue-subtle); color: var(--neutral-black); }
.fact--peri { background: var(--peri); color: var(--neutral-black); }
.fact--white { background: var(--neutral-white); color: var(--neutral-black); }
.news { padding: 16px 16px 80px; }
@media (min-width: 48rem) { .news { padding: 16px 32px 120px; } }
.news--wash { background: var(--blue-subtle); padding-top: 80px; }
@media (min-width: 48rem) { .news--wash { padding-top: 120px; } }
.news__wrap { display: flex; flex-direction: column; gap: 48px; }
@media (min-width: 48rem) { .news__wrap { gap: 64px; } }
.news__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 24px 32px; }
.news__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.ncard { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; border-radius: 16px; background: var(--neutral-white); padding: 8px;
  transition: box-shadow .15s var(--ease); }
@media (min-width: 64rem) { .ncard { grid-template-columns: repeat(12, minmax(0, 1fr)); } .ncard__media { grid-column: span 7 / span 7; } .ncard__body { grid-column: span 5 / span 5; } }
@media (hover: hover) { .ncard:hover { box-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); } }
.ncard__media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 12px; background: var(--paper-dark); }
@media (min-width: 64rem) { .ncard__media { aspect-ratio: auto; min-height: 440px; } }
.ncard__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: scale .5s var(--ease); }
@media (hover: hover) { .ncard:hover .ncard__media img { scale: 1.03; } }
.ncard__body { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; padding: 16px 16px 24px; }
@media (min-width: 64rem) { .ncard__body { padding: 40px; } }
.ncard__h { font-size: 1.625rem; line-height: 1.2; letter-spacing: -.01em; font-weight: 500; }
@media (min-width: 64rem) { .ncard__h { font-size: 2rem; } }
.ncard__link { color: inherit; }
.ncard__link::after { content: ""; position: absolute; inset: 0; border-radius: 16px; }
.ncard__link:focus-visible { outline: none; }
.ncard:has(.ncard__link:focus-visible) { outline: 2px solid var(--blue); outline-offset: 2px; }
.ncard__p { font-size: 1.125rem; line-height: 1.6; color: var(--fg-80); text-wrap: pretty; }
.ncard__go { margin-top: auto; padding-top: 16px; }
@media (hover: hover) { .ncard:hover .tbtn__label { text-decoration: underline; text-underline-position: from-font; } }
@media (prefers-reduced-motion: reduce) { .ncard__media img, .story__media img { transition: none; } }
.artfig { padding: 0 16px; }
@media (min-width: 48rem) { .artfig { padding: 0 32px; } }
.artfig__img { position: relative; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 16px; background: var(--paper-dark); }
@media (min-width: 48rem) { .artfig__img { aspect-ratio: 21 / 9; } }
.artfig__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.artbody { padding: 64px 16px 96px; }
@media (min-width: 48rem) { .artbody { padding: 96px 32px 120px; } }
.artbody__col { display: flex; max-width: 42rem; margin-inline: auto; flex-direction: column; gap: 24px; }
.artbody__col > p { font-size: 1.125rem; line-height: 1.7; color: var(--fg-80); text-wrap: pretty; }
@media (min-width: 48rem) { .artbody__col > p { font-size: 1.1875rem; } }
.artbody__col a { color: var(--blue-ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.artbody h2 { margin-top: 32px; font-size: 2.25rem; line-height: 1.05; letter-spacing: -.01em; text-wrap: balance; }
.dateline { font-weight: 600; color: var(--fg); }
.artbody__col > .art__by { margin-top: 8px; margin-bottom: -8px; font-size: 1rem; font-weight: 600; color: var(--fg); }
.art__quote { border-radius: 16px; background: var(--blue-subtle); padding: 24px; }
@media (min-width: 48rem) { .art__quote { padding: 32px; } }
.art__quote p { font-size: 1.25rem; line-height: 1.45; letter-spacing: -.01em; font-weight: 500; text-wrap: pretty; }
.legal { padding: 16px 16px 96px; }
@media (min-width: 48rem) { .legal { padding: 16px 32px 120px; } }
.legal__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 48px; }
@media (min-width: 64rem) { .legal__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 32px; align-items: start; }
  .toc { grid-column: span 3 / span 3; position: sticky; top: calc(var(--chrome-offset, 64px) + 32px); } .ldoc { grid-column: 5 / span 8; } }
@media (min-width: 64rem) { .ldoc { grid-column: 5 / span 7; } }
.toc { border-radius: 16px; background: var(--neutral-white); padding: 24px; }
.toc__title { margin-bottom: 16px; font-size: 1rem; line-height: 1.3; font-weight: 500; color: var(--fg-60); }
.toc__list { counter-reset: toc; }
.toc__list li { counter-increment: toc; border-top: 1px solid var(--fg-12); }
.toc__list a { display: flex; gap: 12px; padding-block: 10px; font-size: .9375rem; line-height: 1.4; color: var(--fg-80); transition: color .15s var(--ease); }
.toc__list a::before { content: counter(toc, decimal-leading-zero); flex-shrink: 0; width: 22px; color: var(--blue-ink); font-weight: 500; font-variant-numeric: tabular-nums; }
@media (hover: hover) { .toc__list a:hover { color: var(--fg); text-decoration: underline; text-underline-offset: 3px; } }
.ldoc { min-width: 0; max-width: 46rem; }
.ldoc .summary { margin-bottom: 48px; border-radius: 16px; background: var(--blue-subtle); padding: 24px; }
@media (min-width: 48rem) { .ldoc .summary { padding: 32px; } }
.ldoc .summary h2 { margin-bottom: 16px; font-family: var(--font-display); font-size: 1.625rem; line-height: 1.1; letter-spacing: -.01em; font-weight: 400; }
.ldoc section { margin-bottom: 40px; padding-bottom: 40px; border-bottom: 1px solid var(--fg-12); }
.ldoc section:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
.ldoc section > h2 { display: flex; align-items: baseline; gap: 16px; margin-bottom: 20px; font-family: var(--font-display); font-size: 1.75rem; line-height: 1.1;
  letter-spacing: -.01em; font-weight: 400; font-variation-settings: "opsz" 144, "SOFT" 30, "WONK" 0; }
@media (min-width: 48rem) { .ldoc section > h2 { font-size: 2.25rem; } }
.ldoc h2 .n { flex-shrink: 0; font-family: var(--font-sans); font-size: 1rem; font-weight: 500; letter-spacing: 0; color: var(--blue-ink); font-variant-numeric: tabular-nums; }
.ldoc h3 { margin: 24px 0 8px; font-size: 1.0625rem; line-height: 1.4; font-weight: 600; }
.ldoc p, .ldoc li { font-size: 1.0625rem; line-height: 1.65; color: var(--fg-80); }
.ldoc p { margin-bottom: 14px; }
.ldoc ul { margin-bottom: 14px; padding-left: 1.2em; list-style: disc; }
.ldoc li { margin-block: 6px; }
.ldoc li::marker { color: var(--blue); }
.ldoc strong { color: var(--fg); }
.ldoc a { color: var(--blue-ink); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.ldoc .tbl { margin: 8px 0 18px; overflow-x: auto; border-radius: 12px; background: var(--neutral-white); }
.ldoc table { width: 100%; border-collapse: collapse; font-size: .9375rem; line-height: 1.5; }
.ldoc th { padding: 14px 16px; border-bottom: 1px solid var(--fg-12); background: var(--paper); text-align: left; font-weight: 600; }
.ldoc td { padding: 14px 16px; border-bottom: 1px solid var(--fg-12); vertical-align: top; color: var(--fg-80); }
.ldoc tr:last-child td { border-bottom: 0; }
.ldoc .contact-block { border-radius: 16px; background: var(--neutral-white); padding: 24px; }
.ldoc .contact-block p { margin-bottom: 4px; }
.ldoc .contact-block p:last-child { margin-bottom: 0; }
.cmp__grid { grid-auto-rows: auto; }
.cmp__card { display: grid; grid-row: span 5; grid-template-rows: subgrid; row-gap: 0; }
.cmp__card > * + * { margin-top: 24px; }
@media (min-width: 64rem) { .cmp__card > * + * { margin-top: 32px; } }
.cmp__link { align-self: end; }
[data-tone="paper-soft"] { --tone: var(--paper-soft); }
[data-tone="paper"] { --tone: var(--paper); }
[data-tone="mist"] { --tone: var(--blue-subtle); }
[data-tone] { background: var(--tone); }
[data-tone] .benefits, [data-tone] .cmp, [data-tone] .practice, [data-tone] .split, [data-tone] .steps, [data-tone] .news,
[data-tone] .stats, [data-tone] .nums { background: transparent; }
[data-tone] .news, [data-tone] .cover, [data-tone] .ask { padding-top: 80px; }
[data-tone] .bandsec { padding-block: 80px; }
@media (min-width: 48rem) { [data-tone] .news, [data-tone] .cover, [data-tone] .ask { padding-top: 120px; } [data-tone] .bandsec { padding-block: 120px; } }
.legal { padding-top: 80px; background: var(--paper); }
@media (min-width: 48rem) { .legal { padding-top: 120px; } }
.contact { padding-bottom: 96px; }
@media (min-width: 48rem) { .contact { padding-bottom: 120px; } }
.ask__card { background: var(--blue-ink); color: var(--neutral-white); }
.ask__p { color: color-mix(in oklab, var(--neutral-white) 88%, transparent); }
.ask__p a.link-strong { color: var(--neutral-white); }
.ngrid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
@media (min-width: 40rem) { .ngrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64rem) { .ngrid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.ngrid__card { position: relative; display: grid; grid-row: span 5; grid-template-rows: subgrid; row-gap: 0; align-items: start;
  border-radius: 16px; background: var(--neutral-white); padding: 8px 8px 20px; transition: box-shadow .2s var(--ease); }
@media (hover: hover) { .ngrid__card:hover { box-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); } }
.ngrid__media { position: relative; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 12px; background: var(--paper-dark); }
.ngrid__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: scale .5s var(--ease); }
@media (hover: hover) { .ngrid__card:hover .ngrid__media img { scale: 1.03; } }
.ngrid__body { display: contents; }
.ngrid__body > * { margin-inline: 12px; }
@media (min-width: 64rem) { .ngrid__body > * { margin-inline: 16px; } }
.ngrid__tag { justify-self: start; margin-top: 20px; }
.ngrid__h { margin-top: 14px; font-size: 1.375rem; line-height: 1.25; letter-spacing: -.01em; font-weight: 500; }
@media (min-width: 64rem) { .ngrid__h { font-size: 1.5rem; } }
.ngrid__link { color: inherit; }
.ngrid__link::after { content: ""; position: absolute; inset: 0; border-radius: 16px; }
.ngrid__link:focus-visible { outline: none; }
.ngrid__card:has(.ngrid__link:focus-visible) { outline: 2px solid var(--blue); outline-offset: 2px; }
.ngrid__p { margin-top: 12px; font-size: 1rem; line-height: 1.6; color: var(--fg-80); text-wrap: pretty; }
.ngrid__go { align-self: end; justify-self: start; margin-top: 20px; }
@media (hover: hover) { .ngrid__card:hover .tbtn__label { text-decoration: underline; text-underline-position: from-font; } }
@media (prefers-reduced-motion: reduce) { .ngrid__media img { transition: none; } }
.artbody__col > .art__stand { font-size: 1.375rem; line-height: 1.5; letter-spacing: -.005em; color: var(--fg); }
@media (min-width: 48rem) { .artbody__col > .art__stand { font-size: 1.5rem; } }
.artbody__col > .art__note { padding: 16px 20px; border-radius: 12px; background: var(--blue-subtle); font-size: 1rem; line-height: 1.6;
  color: var(--fg-80); }
.artbody__col > .art__strong { color: var(--fg); }
.rail--wide { padding-bottom: 0; }
.wstory { position: relative; display: flex; flex-direction: column; align-items: flex-start; }
.wstory > * { max-width: 100%; }
@media (min-width: 48rem) {
  .rail__list--wide { display: grid; grid-auto-flow: column; grid-template-rows: repeat(4, auto); grid-auto-columns: calc(50% - .5rem); column-gap: 16px; }
  .rail__list--wide > .rail__item { display: grid; grid-row: span 4; grid-template-rows: subgrid; width: auto; }
  .wstory { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; align-items: start; }
}
.wstory__media { position: relative; width: 100%; aspect-ratio: 3 / 2; overflow: hidden; border-radius: 16px; background: var(--paper-dark); }
@media (min-width: 48rem) { .wstory__media { aspect-ratio: 16 / 9; } }
.wstory__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: scale .5s var(--ease); }
.wstory__tag { justify-self: start; margin-top: 20px; }
.wstory__h { margin-top: 14px; max-width: 36rem; font-size: 1.375rem; line-height: 1.25; letter-spacing: -.01em; font-weight: 500; }
@media (min-width: 64rem) { .wstory__h { font-size: 1.625rem; line-height: 1.2; } }
.wstory__link { color: inherit; }
.wstory__link::after { content: ""; position: absolute; inset: 0; border-radius: 16px; }   
.wstory__p { margin-top: 10px; max-width: 36rem; font-size: 1rem; line-height: 1.6; color: var(--fg-80); text-wrap: pretty; }
@media (min-width: 64rem) { .wstory__p { font-size: 1.0625rem; } }
@media (min-width: 80rem) { .wstory__h { font-size: 1.75rem; } .wstory__p { font-size: 1.125rem; } }   
.wstory__link:focus-visible { outline: none; }
.wstory__media::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; }
.wstory:has(.wstory__link:focus-visible) .wstory__media::after { box-shadow: inset 0 0 0 2px var(--blue), inset 0 0 0 4px var(--neutral-white); }
.wstory:has(.wstory__link:focus-visible) .wstory__h { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
@media (hover: hover) {
  .wstory:hover .wstory__media img { scale: 1.03; }
  .wstory:hover .wstory__h { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
}
@media (prefers-reduced-motion: reduce) { .wstory__media img { transition: none; } }
