/* Generated from products/design-system/shared/public-site by Navorina/scripts/sync-ds-invoice-document.mjs. Do not edit. */
/* Public site (shared/public-site.js): the Editorial parts of navorina.ai /tools, /rates, /guides, /ru, /es.
   .nv-pub-page wraps a page (bar, main, footer) and is the container the adaptive rules query, so the DS width switch
   and a real phone give the same layout. Surfaces follow the public tools canvas (css/tools.css): page, island, well.
   Type: display 88 serif · title 56 · h2 32 · h3 17 · lead 18 · body 15 · note 12. Grid: 12 columns, 24 px gutter,
   1200 px column (1440 from 2000 px), 40 / 32 / 16 px sides. No rules or outlines; hover is a soft rounded well. */

.nv-pub-page {
  --nv-pub-page: var(--nv-tools-page, #020203);
  --nv-pub-island: var(--nv-tools-island, color-mix(in srgb, #888888 9%, #020203));
  --nv-pub-well: var(--nv-tools-well, color-mix(in srgb, #888888 15%, #020203));
  --nv-pub-well-hover: var(--nv-tools-well-hover, color-mix(in srgb, #888888 21%, #020203));
  --nv-pub-text: var(--nv-text-primary, #f5f5f7);
  --nv-pub-text-2: var(--nv-text-secondary, color-mix(in srgb, #f5f5f7 62%, transparent));
  --nv-pub-text-3: var(--nv-text-tertiary, color-mix(in srgb, #f5f5f7 40%, transparent));
  --nv-pub-rule: color-mix(in srgb, var(--nv-pub-text) 9%, transparent);
  --nv-pub-max: 1200px;
  --nv-pub-side: 40px;
  --nv-pub-gutter: 24px;
  --nv-pub-gap: 144px;
  --nv-pub-radius: 2rem;
  --nv-pub-serif: "Instrument Serif", "Navorina Display Cyrillic", "Iowan Old Style", Georgia, serif; /* Cyrillic (ru/): the 12 KB display cut in css/tools.css */
  container: nv-pub / inline-size;
  display: flex;
  min-height: 100dvh;
  flex-direction: column;
  background: var(--nv-pub-page);
  color: var(--nv-pub-text);
  font-size: 15px;
  line-height: 1.5;
}
:is(html.light, :root[data-appearance="light"]) .nv-pub-page {
  --nv-pub-page: var(--nv-tools-page, color-mix(in srgb, #5e5e5e 7%, #ffffff));
  --nv-pub-island: var(--nv-tools-island, #ffffff);
  --nv-pub-well: var(--nv-tools-well, color-mix(in srgb, #5e5e5e 8%, #ffffff));
  --nv-pub-well-hover: var(--nv-tools-well-hover, color-mix(in srgb, #5e5e5e 13%, #ffffff));
  --nv-pub-text: var(--nv-text-primary, #111113);
  --nv-pub-text-2: var(--nv-text-secondary, color-mix(in srgb, #111113 62%, transparent));
  --nv-pub-text-3: var(--nv-text-tertiary, color-mix(in srgb, #111113 42%, transparent));
}
.nv-pub-page *, .nv-pub-page *::before, .nv-pub-page *::after { box-sizing: border-box; }
:where(.nv-pub-page) :where(h1, h2, h3, p, dl, dd, ol, ul) { margin: 0; }
:where(.nv-pub-page) a { color: inherit; text-decoration: none; }
.nv-pub-page :is(a, button, summary):focus-visible { outline: 2px solid var(--nv-pub-text-3); outline-offset: 2px; border-radius: 12px; }

/* Column: bar, main and footer share one width and side padding. */
.nv-pub-bar, .nv-pub-main, .nv-pub-foot { width: 100%; max-width: calc(var(--nv-pub-max) + var(--nv-pub-side) * 2); margin-inline: auto; padding-inline: var(--nv-pub-side); }
.nv-pub-main { display: grid; flex: 1; grid-template-columns: minmax(0, 1fr); align-content: start; gap: var(--nv-pub-gap); padding-block: 72px 120px; }
.nv-pub-main--tight { --nv-pub-gap: 96px; padding-block-start: 48px; }

/* Type. */
.nv-pub-title { font-size: 56px; font-weight: 600; line-height: 1.04; letter-spacing: -.035em; text-wrap: balance; }
.nv-pub-head--display .nv-pub-title { font-family: var(--nv-pub-serif); font-size: 88px; font-weight: 400; line-height: .98; letter-spacing: -.02em; }
.nv-pub-head--page .nv-pub-title { font-family: var(--nv-pub-serif); font-size: 64px; font-weight: 400; line-height: 1; letter-spacing: -.02em; }
.nv-pub-head--page .nv-pub-head__copy { gap: 20px; }
.nv-pub-head--page:not(.nv-pub-head--aside) .nv-pub-head__copy { grid-column: 1 / -1; }
.nv-pub-head--page .nv-pub-lead { max-width: 54ch; }
.nv-pub-head--page .nv-pub-actions { margin-block-start: 8px; }
.nv-pub-h2 { font-size: 32px; font-weight: 600; line-height: 1.12; letter-spacing: -.03em; text-wrap: balance; }
.nv-pub-lead { max-width: 54ch; color: var(--nv-pub-text-2); font-size: 18px; line-height: 1.5; }
.nv-pub-muted { color: var(--nv-pub-text-2); }
.nv-pub-note, .nv-pub-meta { color: var(--nv-pub-text-3); font-size: 12px; line-height: 16px; }
.nv-pub-meta a { text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 40%, transparent); text-underline-offset: 2px; }
.nv-pub-eyebrow, .nv-pub-label { color: var(--nv-pub-text-3); font-size: 13px; font-weight: 500; line-height: 18px; }
.nv-pub-crumbs { display: flex; flex-wrap: wrap; gap: 6px; color: var(--nv-pub-text-3); font-size: 13px; font-weight: 500; line-height: 18px; }
.nv-pub-crumbs a:hover { color: var(--nv-pub-text); }

/* Actions: pill primary, quiet pill, text link with an arrow, icon button. No outlines. */
.nv-pub-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.nv-pub-btn { display: inline-flex; height: 40px; align-items: center; justify-content: center; padding: 0 18px; border: 0; border-radius: 999px; background: var(--nv-pub-well); color: var(--nv-pub-text); font: inherit; font-size: 14px; font-weight: 500; white-space: nowrap; cursor: pointer; transition: background-color .16s ease; }
.nv-pub-btn:hover { background: var(--nv-pub-well-hover); }
.nv-pub-btn--primary { background: var(--nv-pub-text); color: var(--nv-pub-page); }
.nv-pub-btn--primary:hover { background: color-mix(in srgb, var(--nv-pub-text) 86%, var(--nv-pub-page)); }
.nv-pub-link { display: inline-flex; height: 40px; align-items: center; gap: 6px; color: var(--nv-pub-text-2); font-size: 14px; font-weight: 500; white-space: nowrap; transition: color .16s ease; }
.nv-pub-link:hover { color: var(--nv-pub-text); }
.nv-pub-link svg { transition: transform .16s ease; }
.nv-pub-link:hover svg { transform: translateX(2px); }
.nv-pub-icon { display: inline-grid; width: 36px; height: 36px; place-items: center; padding: 0; border: 0; border-radius: 999px; background: none; color: var(--nv-pub-text-2); cursor: pointer; }
.nv-pub-icon:hover { background: var(--nv-pub-well); color: var(--nv-pub-text); }
.nv-pub-icon svg { width: 18px; height: 18px; }
html:not(.light) [data-tools-theme] .nv-tools-sun,
html.light [data-tools-theme] .nv-tools-moon { display: none; }

/* Bar: wordmark, sections, account; a phone keeps the wordmark, theme and menu. */
.nv-pub-bar { position: sticky; z-index: 50; top: 0; display: flex; height: 72px; align-items: center; gap: 32px; background: var(--nv-pub-page); }
.nv-pub-mark { font-family: var(--nv-pub-serif); font-size: 26px; line-height: 1; letter-spacing: -.01em; }
.nv-pub-nav { display: flex; gap: 4px; }
.nv-pub-nav a, .nv-pub-sheet a:not(.nv-pub-btn) { display: inline-flex; height: 32px; align-items: center; padding: 0 12px; border-radius: 999px; color: var(--nv-pub-text-2); font-size: 14px; font-weight: 500; transition: background-color .16s ease, color .16s ease; }
.nv-pub-nav a:hover { color: var(--nv-pub-text); }
.nv-pub-nav a[aria-current], .nv-pub-sheet a[aria-current] { background: var(--nv-pub-well); color: var(--nv-pub-text); }
.nv-pub-bar__end { display: flex; align-items: center; gap: 8px; margin-inline-start: auto; }
.nv-pub-bar__login { height: 36px; padding: 0 8px; }
.nv-pub-bar__signup { height: 36px; padding: 0 16px; }
.nv-pub-bar__menu { display: none; }
.nv-pub-sheet { position: absolute; top: 64px; right: var(--nv-pub-side); left: var(--nv-pub-side); display: grid; gap: 2px; padding: 12px; border-radius: 24px; background: var(--nv-pub-island); box-shadow: 0 24px 48px rgb(0 0 0 / .28); }
.nv-pub-sheet[hidden] { display: none; }
.nv-pub-sheet a:not(.nv-pub-btn) { height: 44px; font-size: 16px; }
.nv-pub-sheet__gap { height: 8px; }
.nv-pub-sheet .nv-pub-btn { height: 44px; }

/* Stack: a head and what it introduces (a tool's form and result), closer than two sections. */
.nv-pub-stack { display: grid; gap: 48px; min-width: 0; }

/* Head: copy on seven columns, the aside on the last four. */
.nv-pub-head { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--nv-pub-gutter); row-gap: 48px; align-items: start; }
.nv-pub-head__copy { grid-column: 1 / span 8; display: grid; min-width: 0; justify-items: start; gap: 24px; }
.nv-pub-head--aside .nv-pub-head__copy { grid-column: 1 / span 7; }
.nv-pub-head__aside { grid-column: 9 / span 4; min-width: 0; padding-block-start: 8px; }
.nv-pub-head__copy > .nv-pub-meta { margin-block-start: -8px; }

/* Ledger: rows of pair, 30-day line, rate and change; hover is the soft well. */
.nv-pub-ledger { display: grid; min-width: 0; }
.nv-pub-ledger__head { display: flex; justify-content: space-between; gap: 12px; padding-block-end: 8px; color: var(--nv-pub-text-3); font-size: 12px; font-weight: 500; }
.nv-pub-ledger__rows { display: grid; }
.nv-pub-ledger__row { display: grid; grid-template-columns: minmax(0, 1fr) 56px 84px 56px; align-items: center; gap: 12px; min-height: 52px; margin-inline: -12px; padding: 0 12px; border-radius: 16px; transition: background-color .16s ease; }
a.nv-pub-ledger__row:hover { background: var(--nv-pub-well); }
.nv-pub-ledger__pair { font-size: 15px; font-weight: 500; }
.nv-pub-ledger__pair i { margin-inline: 3px; color: var(--nv-pub-text-3); font-style: normal; }
.nv-pub-ledger__rate { font-size: 17px; font-weight: 600; font-variant-numeric: tabular-nums; text-align: right; }
.nv-pub-ledger__change { color: var(--nv-pub-text-2); font-size: 13px; font-variant-numeric: tabular-nums; text-align: right; }
.nv-pub-ledger .nv-pub-note { margin-block-start: 12px; }
.nv-pub-ledger > .nv-pub-link { justify-self: start; }
.nv-pub-page svg.nv-pub-spark { display: block; width: 100%; height: 24px; overflow: visible; fill: none; stroke: var(--nv-pub-text-2); stroke-width: 1.25; stroke-linejoin: round; }
.nv-pub-bone { display: block; height: 12px; border-radius: 999px; background: var(--nv-pub-well); animation: nv-pub-pulse 1.4s ease-in-out infinite; }
.nv-pub-bone--spark { width: 100%; height: 8px; }
.nv-pub-ledger__row.is-bone > :is(:nth-child(3), :nth-child(4)) { justify-self: end; }
@keyframes nv-pub-pulse { 50% { opacity: .55; } }

/* Section: the side column holds the title (sticky on wide screens), the body takes nine columns. */
.nv-pub-section { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--nv-pub-gutter); row-gap: 32px; align-items: start; }
.nv-pub-section__side { grid-column: 1 / span 3; position: sticky; top: 96px; display: grid; justify-items: start; gap: 8px; }
.nv-pub-section__body { grid-column: 4 / span 9; display: grid; gap: 24px; min-width: 0; }

/* Index: numbered rows, title, one line, an arrow on hover. */
.nv-pub-index { display: grid; gap: 40px; }
.nv-pub-index__group { display: grid; }
.nv-pub-index__group > .nv-pub-label { padding-block-end: 8px; }
.nv-pub-index__row { display: grid; grid-template-columns: 32px minmax(0, 15rem) minmax(0, 1fr) 16px; align-items: baseline; gap: 16px; min-height: 52px; margin-inline: -12px; padding: 15px 12px; border-radius: 16px; transition: background-color .16s ease; }
.nv-pub-index__row:hover { background: var(--nv-pub-well); }
.nv-pub-index--plain .nv-pub-index__row { grid-template-columns: minmax(0, 15rem) minmax(0, 1fr) 16px; }
.nv-pub-index__n { color: var(--nv-pub-text-3); font-size: 12px; font-weight: 500; font-variant-numeric: tabular-nums; }
.nv-pub-index__row strong { font-size: 16px; font-weight: 600; }
.nv-pub-index__sum { color: var(--nv-pub-text-2); font-size: 14px; }
.nv-pub-index__row > svg { align-self: center; color: var(--nv-pub-text-3); opacity: 0; transform: translateX(-4px); transition: opacity .16s ease, transform .16s ease; }
.nv-pub-index__row:hover > svg { opacity: 1; transform: none; }

/* Spread: the big serif number and a line figure, the story on the right. */
.nv-pub-spread { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--nv-pub-gutter); row-gap: 32px; align-items: start; }
.nv-pub-spread__figure { grid-column: 1 / span 5; display: grid; justify-items: start; gap: 24px; }
.nv-pub-big { font-family: var(--nv-pub-serif); font-size: 220px; line-height: .8; letter-spacing: -.04em; font-variant-numeric: lining-nums; }
.nv-pub-spread__copy { grid-column: 7 / span 6; display: grid; justify-items: start; gap: 20px; padding-block-start: 16px; }
.nv-pub-spread__copy > .nv-pub-facts { width: 100%; }

/* Line figure: our zero-art drawings at any size, the hairline kept by non-scaling strokes. */
.nv-pub-art { display: block; width: 288px; aspect-ratio: 3 / 2; color: color-mix(in srgb, var(--nv-pub-text) 62%, transparent); }
.nv-pub-page .nv-pub-art svg { display: block; width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1; stroke-linecap: round; stroke-linejoin: round; }
.nv-pub-art path { vector-effect: non-scaling-stroke; transition: transform .26s cubic-bezier(.5, 0, .1, 1); }
.nv-pub-art .nv-zart__lift { color: var(--nv-pub-text); }
.nv-pub-art .nv-zart__faint { stroke-dasharray: 1.5 2.5; opacity: .6; }
:is(.nv-pub-spread, .nv-pub-section):hover .nv-pub-art .nv-zart__lift:not(.nv-zart__m) { transform: translateY(-3px); }
.nv-pub-art svg { animation: nv-pub-rise .7s cubic-bezier(.2, 0, 0, 1) both; }

/* Facts: label left, value and its source right; rounded hover, no rules. */
.nv-pub-facts { display: grid; gap: 2px; margin-inline: -12px; }
.nv-pub-fact { display: grid; grid-template-columns: minmax(0, 13rem) minmax(0, 1fr); gap: 4px 24px; padding: 12px; border-radius: 16px; transition: background-color .16s ease; }
.nv-pub-fact:hover { background: var(--nv-pub-well); }
.nv-pub-fact dt { color: var(--nv-pub-text-2); }
.nv-pub-fact dd { display: grid; gap: 2px; font-weight: 500; }
.nv-pub-fact small { color: var(--nv-pub-text-3); font-size: 12px; font-weight: 400; line-height: 16px; }
.nv-pub-fact small a { text-decoration: underline; text-decoration-color: color-mix(in srgb, currentColor 40%, transparent); text-underline-offset: 2px; }

/* Questions. */
.nv-pub-faq { display: grid; gap: 2px; }
.nv-pub-faq__item { border-radius: 18px; transition: background-color .16s ease; }
.nv-pub-faq__item:hover, .nv-pub-faq__item[open] { background: var(--nv-pub-well); }
.nv-pub-faq__item summary { display: flex; min-height: 56px; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 18px; font-size: 16px; font-weight: 500; list-style: none; cursor: pointer; }
.nv-pub-faq__item summary::-webkit-details-marker { display: none; }
.nv-pub-faq__mark { position: relative; flex: none; width: 12px; height: 12px; }
.nv-pub-faq__mark::before, .nv-pub-faq__mark::after { position: absolute; top: 5.25px; left: 0; width: 12px; height: 1.5px; border-radius: 1px; background: var(--nv-pub-text-2); content: ""; transition: transform .2s ease; }
.nv-pub-faq__mark::after { transform: rotate(90deg); }
.nv-pub-faq__item[open] .nv-pub-faq__mark::after { transform: rotate(0); }
.nv-pub-faq__item p { max-width: 64ch; padding: 0 18px 18px; color: var(--nv-pub-text-2); }

/* The call. */
.nv-pub-cta { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 24px 48px; }
.nv-pub-cta__text { display: grid; gap: 12px; max-width: 34rem; }
.nv-pub-cta__text h2 { font-family: var(--nv-pub-serif); font-size: 56px; font-weight: 400; line-height: 1; letter-spacing: -.02em; text-wrap: balance; }
.nv-pub-cta__text p { color: var(--nv-pub-text-2); }

/* Waitlist: the call as a form. The serif line on five columns, the fields on the last six; fields are wells, no outlines. */
.nv-pub-waitlist { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--nv-pub-gutter); row-gap: 32px; align-items: end; }
.nv-pub-waitlist__text { grid-column: 1 / span 5; display: grid; gap: 12px; }
.nv-pub-waitlist__text h2 { font-family: var(--nv-pub-serif); font-size: 56px; font-weight: 400; line-height: 1; letter-spacing: -.02em; text-wrap: balance; }
.nv-pub-waitlist__text p { max-width: 40ch; color: var(--nv-pub-text-2); }
.nv-pub-waitlist__form, .nv-pub-waitlist__done { grid-column: 7 / span 6; min-width: 0; }
.nv-pub-waitlist__form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; align-items: end; gap: 12px; }
.nv-pub-waitlist__form[hidden], .nv-pub-waitlist__done[hidden] { display: none; }
.nv-pub-waitlist__submit { height: 48px; padding: 0 22px; }
.nv-pub-waitlist__status { grid-column: 1 / -1; min-height: 20px; color: var(--nv-pub-text-2); font-size: 13px; line-height: 20px; }
.nv-pub-waitlist__status:empty { visibility: hidden; }
.nv-pub-waitlist .nv-turnstile { grid-column: 1 / -1; }
.nv-pub-waitlist .nv-turnstile:empty { display: none; }
.nv-pub-waitlist__done { display: grid; align-content: end; gap: 4px; min-height: 100px; padding-block-end: 32px; outline: none; }
.nv-pub-waitlist__done-title { font-size: 17px; font-weight: 600; }
.nv-pub-waitlist__done p:not(.nv-pub-waitlist__done-title) { color: var(--nv-pub-text-2); }
.nv-pub-field { display: grid; min-width: 0; gap: 6px; }
.nv-pub-field__label { color: var(--nv-pub-text-3); font-size: 13px; font-weight: 500; line-height: 18px; }
.nv-pub-input { width: 100%; height: 48px; min-width: 0; padding: 0 16px; border: 0; border-radius: 14px; background: var(--nv-pub-well); color: var(--nv-pub-text); font: inherit; font-size: 15px; outline: none; transition: background-color .16s ease, box-shadow .16s ease; }
.nv-pub-input::placeholder { color: var(--nv-pub-text-3); opacity: .7; }
.nv-pub-input:hover { background: var(--nv-pub-well-hover); }
.nv-pub-input:focus-visible { box-shadow: 0 0 0 2px var(--nv-pub-text-3); }
.nv-pub-input[aria-invalid="true"] { box-shadow: inset 0 0 0 1px var(--nv-pub-text-3); }
.nv-pub-input[readonly], .nv-pub-input:disabled { opacity: .7; }
.nv-pub-select { position: relative; display: block; }
.nv-pub-select select { padding-inline-end: 40px; appearance: none; cursor: pointer; text-overflow: ellipsis; }
.nv-pub-select select:invalid { color: var(--nv-pub-text-3); }
.nv-pub-select select option { color: var(--nv-pub-text); background: var(--nv-pub-island); }
.nv-pub-select::after { position: absolute; top: 50%; right: 18px; width: 7px; height: 7px; margin-top: -5px; border-right: 1.5px solid var(--nv-pub-text-2); border-bottom: 1.5px solid var(--nv-pub-text-2); content: ""; pointer-events: none; transform: rotate(45deg); }
.nv-pub-hp { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); opacity: 0; pointer-events: none; }
.nv-pub-btn[aria-busy="true"] { gap: 10px; cursor: wait; }
.nv-pub-btn[aria-busy="true"]::after { width: 14px; height: 14px; border: 1.5px solid currentColor; border-inline-end-color: transparent; border-radius: 999px; content: ""; animation: nv-pub-spin .7s linear infinite; }
@keyframes nv-pub-spin { to { transform: rotate(360deg); } }

/* Chips: sibling pages of a group. */
.nv-pub-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.nv-pub-chip { display: inline-flex; height: 32px; align-items: center; padding: 0 14px; border-radius: 999px; background: var(--nv-pub-island); color: var(--nv-pub-text-2); font-size: 13px; font-weight: 500; white-space: nowrap; transition: background-color .16s ease, color .16s ease; }
.nv-pub-chip:hover { background: var(--nv-pub-well); color: var(--nv-pub-text); }
.nv-pub-chip[aria-current="page"] { background: var(--nv-pub-text); color: var(--nv-pub-page); }

/* Footer. */
.nv-pub-foot { display: grid; grid-template-columns: minmax(0, 4fr) repeat(4, minmax(0, 2fr)); gap: 32px var(--nv-pub-gutter); padding-block: 56px 40px; }
.nv-pub-foot__brand { display: grid; align-content: start; justify-items: start; gap: 12px; }
.nv-pub-foot__brand p { max-width: 30ch; color: var(--nv-pub-text-3); font-size: 13px; }
.nv-pub-foot__col { display: grid; align-content: start; justify-items: start; gap: 8px; }
.nv-pub-foot__col h2 { margin: 0 0 4px; color: var(--nv-pub-text-3); font-size: 12px; font-weight: 500; }
.nv-pub-foot__col a { color: var(--nv-pub-text-2); font-size: 14px; }
.nv-pub-foot__col a:hover { color: var(--nv-pub-text); }
.nv-pub-foot__small { grid-column: 1 / -1; color: var(--nv-pub-text-3); font-size: 12px; }

@keyframes nv-pub-rise { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .nv-pub-page *, .nv-pub-page *::before, .nv-pub-page *::after { animation: none !important; transition: none !important; }
}

/* ── Widths ───────────────────────────────────────────────────────────── */
@container nv-pub (min-width: 2000px) {
  .nv-pub-bar, .nv-pub-main, .nv-pub-foot { --nv-pub-max: 1440px; }
  .nv-pub-head--display .nv-pub-title { font-size: 112px; }
}
@container nv-pub (max-width: 1100px) {
  .nv-pub-bar, .nv-pub-main, .nv-pub-foot { --nv-pub-side: 32px; }
  .nv-pub-head--display .nv-pub-title { font-size: 68px; }
  .nv-pub-head--page .nv-pub-title { font-size: 56px; }
  .nv-pub-title { font-size: 48px; }
  .nv-pub-head__copy, .nv-pub-head--aside .nv-pub-head__copy, .nv-pub-head__aside { grid-column: 1 / -1; }
  .nv-pub-section__side { grid-column: 1 / -1; position: static; }
  .nv-pub-section__body { grid-column: 1 / -1; }
  .nv-pub-spread__figure { grid-column: 1 / span 4; }
  .nv-pub-spread__copy { grid-column: 5 / -1; }
  .nv-pub-big { font-size: 160px; }
  .nv-pub-art { width: 216px; }
  .nv-pub-foot { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .nv-pub-foot__brand { grid-column: 1 / -1; }
  .nv-pub-waitlist__text, .nv-pub-waitlist__form, .nv-pub-waitlist__done { grid-column: 1 / -1; }
  .nv-pub-waitlist__done { min-height: 0; padding: 0; }
}
@container nv-pub (max-width: 640px) {
  .nv-pub-bar, .nv-pub-main, .nv-pub-foot { --nv-pub-side: 16px; --nv-pub-gutter: 16px; }
  .nv-pub-main { --nv-pub-gap: 88px; padding-block: 40px 80px; }
  .nv-pub-main--tight { --nv-pub-gap: 64px; padding-block-start: 24px; }
  .nv-pub-bar { height: 60px; gap: 16px; }
  .nv-pub-nav, .nv-pub-bar__login, .nv-pub-bar__signup { display: none; }
  .nv-pub-bar__menu { display: inline-grid; }
  .nv-pub-sheet { top: 56px; }
  .nv-pub-head--display .nv-pub-title { font-size: 48px; line-height: 1; }
  .nv-pub-head--page .nv-pub-title { font-size: 44px; }
  /* A page head keeps one shape across sibling pages: the lead always takes two lines on a phone. */
  .nv-pub-head--page:not(.nv-pub-head--aside) .nv-pub-lead { min-height: 3em; }
  .nv-pub-head--page .nv-pub-actions { justify-self: stretch; min-width: 0; flex-wrap: nowrap; margin-inline: calc(var(--nv-pub-side) * -1); padding-inline: var(--nv-pub-side); overflow-x: auto; scrollbar-width: none; }
  .nv-pub-chips, .nv-pub-head--page .nv-tools-chips { flex-wrap: nowrap; }
  .nv-pub-title { font-size: 36px; }
  .nv-pub-h2 { font-size: 26px; }
  .nv-pub-lead { font-size: 16px; }
  .nv-pub-head { row-gap: 40px; }
  .nv-pub-ledger__row { grid-template-columns: minmax(0, 1fr) 48px 80px 52px; gap: 8px; }
  .nv-pub-index__row { grid-template-columns: 28px minmax(0, 1fr); row-gap: 2px; padding-block: 12px; }
  .nv-pub-index__sum { grid-column: 2; }
  .nv-pub-index--plain .nv-pub-index__row { grid-template-columns: minmax(0, 1fr); }
  .nv-pub-index--plain .nv-pub-index__sum { grid-column: 1; }
  .nv-pub-index__row > svg { display: none; }
  .nv-pub-spread__figure, .nv-pub-spread__copy { grid-column: 1 / -1; }
  .nv-pub-spread__figure { grid-template-columns: auto auto; align-items: end; justify-content: space-between; width: 100%; }
  .nv-pub-spread__copy { padding: 0; }
  .nv-pub-big { font-size: 120px; }
  .nv-pub-art { width: 144px; }
  .nv-pub-fact { grid-template-columns: minmax(0, 1fr); }
  .nv-pub-cta__text h2, .nv-pub-waitlist__text h2 { font-size: 40px; }
  .nv-pub-waitlist__form { grid-template-columns: minmax(0, 1fr); }
  .nv-pub-waitlist__submit { width: 100%; }
  .nv-pub-foot { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: 40px 32px; }
}
