/* B-DESIGN-R2 (founder review 11.10): the chrome (header, side-sheet menu, cart cell, footer) and the buttons, all in the drafted-line language. Tokens only (SP-14.09), no inline CSS,
   logical properties (he = rtl, en = ltr). Loaded after kit.css and draft.css on every page. */

/* ── buttons: a hairline ink rectangle with construction-line corners that overshoot; no fill, no offset shadow. The primary (a [data-cta]) adds a clay dimension line under the label;
   on hover a clay pen-fill draws in from the start side (instant under reduced motion: site.css kills every transition there). ── */
[data-cta], :is(.ghost, [data-add], .addc), .btn {
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: var(--vit-space-2);
  padding: var(--vit-space-3) var(--vit-space-5); background-color: transparent; color: var(--vit-ink);
  font-family: var(--vit-f-heb); font-weight: 500; font-size: 15px; line-height: 1.3; text-decoration: none;
  border: 1px solid var(--vit-ink); border-radius: 0; box-shadow: none; cursor: pointer; isolation: isolate;
  background-image: linear-gradient(var(--vit-clay), var(--vit-clay)); background-repeat: no-repeat; background-size: 0% 100%; background-position: 100% 0;
  transition: background-size .32s ease, color .2s ease;
}
html[dir="ltr"] [data-cta], html[dir="ltr"] :is(.ghost, [data-add], .addc), html[dir="ltr"] .btn { background-position: 0 0; }
[data-cta]::before, :is(.ghost, [data-add], .addc)::before, .btn::before {
  content: ""; position: absolute; inset: -6px; z-index: -1; pointer-events: none;
  background:
    linear-gradient(var(--vit-ink), var(--vit-ink)) 0 6px / 11px 1px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 6px 0 / 1px 11px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 100% 6px / 11px 1px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) calc(100% - 6px) 0 / 1px 11px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 0 calc(100% - 6px) / 11px 1px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 6px 100% / 1px 11px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 100% calc(100% - 6px) / 11px 1px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) calc(100% - 6px) 100% / 1px 11px no-repeat;
}
[data-cta] { padding-block: var(--vit-space-3) calc(var(--vit-space-3) + 8px); font-weight: 700; }
[data-cta]::after {
  content: ""; position: absolute; inset-inline: var(--vit-space-3); inset-block-end: 6px; height: 7px; pointer-events: none;
  background:
    linear-gradient(var(--vit-clay-ink), var(--vit-clay-ink)) 0 50% / 100% 1px no-repeat,
    linear-gradient(var(--vit-clay-ink), var(--vit-clay-ink)) 0 0 / 1px 100% no-repeat,
    linear-gradient(var(--vit-clay-ink), var(--vit-clay-ink)) 100% 0 / 1px 100% no-repeat;
}
[data-cta]:hover, [data-cta]:focus-visible, :is(.ghost, [data-add], .addc):hover, :is(.ghost, [data-add], .addc):focus-visible, .btn:hover { background-size: 100% 100%; color: var(--vit-on-clay); }
:is(.ghost, [data-add], .addc) { background-image: linear-gradient(var(--vit-ink), var(--vit-ink)); }
:is(.ghost, [data-add], .addc):hover, :is(.ghost, [data-add], .addc):focus-visible { color: var(--vit-paper); }
[data-cta]:focus-visible, :is(.ghost, [data-add], .addc):focus-visible, .btn:focus-visible { outline: 2px solid var(--vit-clay-ink); outline-offset: 8px; }
[data-cta]:active, :is(.ghost, [data-add], .addc):active { transform: translateY(1px); }
[data-cta][disabled], [data-cta][aria-disabled="true"] { color: var(--vit-ink-3); border-style: dashed; cursor: not-allowed; background-size: 0% 100%; }
[data-cta].cta-primary, .cta.big { font-size: 18px; padding-inline: var(--vit-space-6); }
.cta-note { margin: var(--vit-space-2) 0 0; font-size: 14px; color: var(--vit-ink-2); }
/* on a clay band the lines are ink and the fill is ink */
.band [data-cta], .band :is(.ghost, [data-add], .addc) { background-image: linear-gradient(var(--vit-ink), var(--vit-ink)); }
.band [data-cta]:hover, .band [data-cta]:focus-visible, .band :is(.ghost, [data-add], .addc):hover { color: var(--vit-paper); }
.band [data-cta]::after { background:
    linear-gradient(var(--vit-ink), var(--vit-ink)) 0 50% / 100% 1px no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 0 0 / 1px 100% no-repeat,
    linear-gradient(var(--vit-ink), var(--vit-ink)) 100% 0 / 1px 100% no-repeat; }

/* ── header: the big logo at the start, the cart cell and the hamburger at the end ── */
.site-header[data-kit] { position: sticky; top: 0; z-index: 30; display: block; padding: 0; background: var(--vit-paper); border-bottom: 1px solid var(--vit-ink); }
.site-header[data-kit]::after { content: none; }
.hdr-row { display: flex; align-items: center; justify-content: space-between; gap: var(--vit-space-4); padding: var(--vit-space-3) clamp(16px, 4vw, 48px); max-width: 1440px; margin-inline: auto; }
.wordmark { display: inline-flex; align-items: center; line-height: 0; }
.wordmark img { display: block; height: 44px; width: auto; max-width: 100%; }
.hdr-end { display: flex; align-items: center; gap: var(--vit-space-3); }
.menu-toggle { display: none; align-items: center; gap: var(--vit-space-3); padding: var(--vit-space-2) var(--vit-space-3); background: transparent; color: var(--vit-ink); border: 1px solid var(--vit-ink); border-radius: 0; font: inherit; font-weight: 500; font-size: 15px; cursor: pointer; }
.menu-toggle[aria-expanded="true"] { background: var(--vit-ink); color: var(--vit-paper); }
.menu-toggle[aria-expanded="true"] .burger { background: linear-gradient(var(--vit-paper), var(--vit-paper)) 0 50% / 100% 2px no-repeat; }
.burger { display: block; width: 22px; height: 16px; background: linear-gradient(var(--vit-ink), var(--vit-ink)) 0 0 / 100% 2px no-repeat, linear-gradient(var(--vit-ink), var(--vit-ink)) 0 50% / 70% 2px no-repeat, linear-gradient(var(--vit-ink), var(--vit-ink)) 0 100% / 100% 2px no-repeat; }
.menu-toggle:focus-visible, .cartbtn:focus-visible { outline: 2px solid var(--vit-clay-ink); outline-offset: 3px; }
html.js .menu-toggle { display: inline-flex; }
/* the cart: a small drafted cell with a mono count; shown only when the cart holds something */
.cartbtn { position: relative; display: inline-flex; align-items: center; gap: var(--vit-space-2); height: 40px; padding: 0 var(--vit-space-3); border: 1px solid var(--vit-ink); border-radius: 0; background: var(--vit-paper-2); color: var(--vit-ink); cursor: pointer; }
.cartbtn[hidden] { display: none; }
.cartbtn svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.cartbtn .cc { position: static; min-width: 0; height: auto; padding: 0; border: 0; border-inline-start: 1px solid var(--vit-ink); padding-inline-start: var(--vit-space-2); background: transparent; color: var(--vit-ink); font: 500 13px/1 var(--vit-f-mono); }
.cartbtn.has { background: var(--vit-clay); color: var(--vit-on-clay); }
.cartbtn.has .cc { color: var(--vit-on-clay); }

/* ── the menu: a side sheet. No JS: just open in the page flow. ── */
.hdr-menu { padding: var(--vit-space-3) clamp(16px, 4vw, 48px) var(--vit-space-4); border-top: 1px solid var(--vit-line-default); background: var(--vit-paper); }
.menu-head { display: flex; align-items: center; justify-content: space-between; padding-block: var(--vit-space-3); border-bottom: 1px solid var(--vit-ink); }
.menu-close { display: none; width: 36px; height: 36px; border: 1px solid var(--vit-ink); border-radius: 0; background: transparent; color: var(--vit-ink); font: 500 24px/1 var(--vit-f-heb); cursor: pointer; }
.menu-close:not([hidden]) { display: inline-flex; align-items: center; justify-content: center; }
.menu-list { list-style: none; margin: 0; padding: 0; }
.menu-item { max-width: none; border-bottom: 1px solid var(--vit-line-default); }
.menu-item > a, .menu-item > nav > a, .features-btn { display: flex; align-items: center; gap: var(--vit-space-3); width: 100%; padding: var(--vit-space-4) 0; font: inherit; font-size: 22px; font-weight: 500; line-height: 1.2; text-align: start; text-decoration: none; color: var(--vit-ink); background: transparent; border: 0; cursor: pointer; }
.menu-item > a:hover, .menu-item > nav > a:hover, .features-btn:hover { color: var(--vit-ink); text-decoration: underline; text-decoration-color: var(--vit-clay); text-underline-offset: 6px; text-decoration-thickness: 2px; }
.mi-n { flex: none; width: 2.4em; font-size: 11px; }
.features-btn::after { content: "+"; margin-inline-start: auto; font: 400 22px/1 var(--vit-f-mono); color: var(--vit-ink-3); }
.features-btn[aria-expanded="true"]::after { content: "–"; }
.features-panel { display: grid; gap: var(--vit-space-4); padding: 0 0 var(--vit-space-4) 0; padding-inline-start: 2.4em; }
.fgroup ul { list-style: none; margin: var(--vit-space-1) 0 0; padding: 0; }
.fgroup li { max-width: none; }
.fgroup-name { display: block; font-family: var(--vit-f-heb); text-transform: none; letter-spacing: 0; font-size: 13px; color: var(--vit-ink-3); }
.fgroup a, .fpending { display: flex; align-items: center; gap: var(--vit-space-3); padding: var(--vit-space-2) 0; text-decoration: none; font-size: 17px; color: var(--vit-ink); }
.fgroup a:hover { color: var(--vit-clay-text); }
.fpending { color: var(--vit-ink-3); }
.fgroup .soon { margin-inline-start: auto; font-style: normal; font-size: 12px; color: var(--vit-ink-2); border: 1px solid var(--vit-line-strong); padding: 0 var(--vit-space-2); }
.fplugin { font-size: 15px; font-weight: 500; color: var(--vit-ink); text-decoration: underline; text-decoration-color: var(--vit-clay); text-underline-offset: 4px; }
.guides-panel nav { display: grid; gap: var(--vit-space-1); }
.guides-panel nav a { padding: var(--vit-space-2) 0; font-size: 17px; text-decoration: none; color: var(--vit-ink); }
.guides-panel nav a:hover { color: var(--vit-clay-text); }
.ficon { flex: none; width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.menu-item > nav { display: block; }
.menu-item img[data-icon] { width: 24px; height: 24px; }
/* the title-block foot of the sheet */
.menu-foot { display: grid; grid-template-columns: auto 1fr; margin-top: var(--vit-space-5); border: 1px solid var(--vit-ink); }
.menu-foot > * { padding: var(--vit-space-3) var(--vit-space-4); text-decoration: none; color: var(--vit-ink); }
.menu-foot > :first-child { border-inline-end: 1px solid var(--vit-ink); font-weight: 700; }
.menu-foot > :last-child { align-self: center; overflow-wrap: break-word; }

html.js .hdr-menu { position: fixed; inset-block: 0; inset-inline-end: 0; z-index: 41; display: flex; flex-direction: column; width: min(440px, 100vw); overflow-y: auto; border-top: 0; border-inline-start: 1px solid var(--vit-ink); visibility: hidden; transform: translateX(100%); transition: transform .28s ease, visibility 0s linear .28s; }
html.js[dir="rtl"] .hdr-menu { transform: translateX(-100%); }
html.js .hdr-menu.open { visibility: visible; transform: none; transition: transform .28s ease, visibility 0s; }
html.js .menu-foot { margin-top: auto; }
html.js .features-panel { display: none; }
html.js .features-panel.open { display: grid; }
.menu-scrim { position: fixed; inset: 0; z-index: 40; background: var(--vit-ink); opacity: 0; transition: opacity .28s ease; }
.menu-scrim.open { opacity: .4; }
.menu-scrim[hidden] { display: none; }
html.menu-open { overflow: hidden; }
@media (max-width: 640px) { .wordmark img { height: 36px; } html.js .hdr-menu { width: 100vw; border-inline-start: 0; } .menu-item > a, .menu-item > nav > a, .features-btn { font-size: 20px; } }

/* ── footer: five columns, one bar ── */
.site-footer[data-kit] { margin-top: auto; padding-inline: clamp(16px, 4vw, 48px); background: var(--vit-paper); border-top: 1px solid var(--vit-ink); }
.foot-cols, .foot-bar, .site-footer .partners, .site-footer .trademarks { max-width: 1280px; margin-inline: auto; }
.foot-cols { display: grid; grid-template-columns: 1.3fr repeat(4, 1fr); gap: var(--vit-space-6); padding-block: var(--vit-space-7) var(--vit-space-6); }
.fbrand p { margin: var(--vit-space-2) 0 0; font-size: 14px; color: var(--vit-ink-2); }
.fbrand .flogo { height: 36px; margin: 0; }
.fcol summary { font-weight: 700; font-size: 14px; margin-bottom: var(--vit-space-3); list-style: none; cursor: default; pointer-events: none; }
.fcol summary::-webkit-details-marker { display: none; }
.fcol ul { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--vit-space-2); }
.fcol li { max-width: none; font-size: 14px; }
.fcol a, .foot-bar a { color: var(--vit-ink); text-decoration: none; }
.fcol a:hover, .foot-bar a:hover { color: var(--vit-clay-text); }
.foot-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--vit-space-3); padding-block: var(--vit-space-3); border-top: 1px solid var(--vit-line-default); font-size: 13px; }
.site-footer .partners, .site-footer .trademarks { margin-block: var(--vit-space-3) 0; font-size: 13px; color: var(--vit-ink-2); }
.site-footer .trademarks span { display: block; }
.site-footer .trademarks { margin-bottom: var(--vit-space-5); }
@media (max-width: 960px) { .foot-cols { grid-template-columns: repeat(2, 1fr); } .fbrand { grid-column: 1 / -1; } }
@media (max-width: 640px) {
  .foot-cols { grid-template-columns: 1fr; gap: 0; padding-block: var(--vit-space-5); }
  .fbrand { padding-bottom: var(--vit-space-4); }
  .fcol:not(.fbrand) { border-top: 1px solid var(--vit-line-default); padding-block: var(--vit-space-3); }
  .fcol summary { cursor: pointer; pointer-events: auto; margin: 0; display: flex; justify-content: space-between; }
  .fcol summary::after { content: "+"; font: 400 18px/1 var(--vit-f-mono); }
  .fcol[open] summary::after { content: "–"; }
  .fcol[open] summary { margin-bottom: var(--vit-space-3); }
}
@media print { .site-header, .site-footer .foot-cols { display: none; } }

/* R2 QA 229: no half-width section pairs (every sheet section is full width, the home-06 pattern); the title block keeps SHEET + TITLE only. */
.sheet-row { display: block; }
.sheet-row > .sheetsec { max-width: none; }
.sheetsec-half { max-width: none; }
@media (max-width: 640px) { .titleblock { grid-template-columns: 1fr; } .titleblock .tb-title { grid-column: auto; } }
/* the empty named slot for a session-0105/0104 motion piece: a clean ruled frame, fixed aspect ratio */
.hero-slot { align-self: stretch; aspect-ratio: 4 / 3; background:
  linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 0 0 / 22px 1px no-repeat, linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 0 0 / 1px 22px no-repeat,
  linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 100% 0 / 22px 1px no-repeat, linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 100% 0 / 1px 22px no-repeat,
  linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 0 100% / 22px 1px no-repeat, linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 0 100% / 1px 22px no-repeat,
  linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 100% 100% / 22px 1px no-repeat, linear-gradient(var(--vit-line-strong), var(--vit-line-strong)) 100% 100% / 1px 22px no-repeat; }
.hero-sheet:has(> .hero-slot) { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); }
@media (max-width: 640px) { .hero-sheet:has(> .hero-slot) { grid-template-columns: 1fr; } .hero-sheet > .hero-slot { order: -1; aspect-ratio: 16 / 9; } }
main[data-page="vitruvius"] .sheetsec-narrow { max-width: none; }
.menu-foot > :last-child { overflow-wrap: normal; text-transform: none; letter-spacing: 0; font-size: 12.5px; direction: ltr; text-align: start; }
main[data-page] h1 [data-revit], main[data-page] h2 [data-revit] { white-space: nowrap; }
.menu-foot > :first-child { white-space: nowrap; }
.code .heb { font-family: var(--vit-f-heb); letter-spacing: 0; text-transform: none; }

/* Founder review 12.10: the hero h1 breaks only where it is written (brand line, then two phrases) and the header is menu-at-the-start / logo-at-the-end (he: menu right, logo left; en mirrors). */
.h1-brand { display: block; }
.h1-line { display: block; }
.h1-ph { display: inline-block; white-space: nowrap; }
.hdr-row { flex-direction: row-reverse; }
.menu-foot a[data-lang-switch], .hdr-menu a, .hdr-menu button { overflow-wrap: normal; word-break: normal; }
.menu-foot a[data-lang-switch] { white-space: nowrap; }
.nb { white-space: nowrap; }
[data-revit] { unicode-bidi: isolate; direction: ltr; white-space: nowrap; }
.hero-fig { display: block; width: 100%; height: 100%; padding: var(--vit-space-3); }
.hero-fig .hf-sq, .hero-fig .hf-fig * , .hero-fig .hf-fig { stroke: var(--vit-ink); stroke-width: 1.6; }
.hero-fig .hf-fig circle { fill: var(--vit-paper); }
.hero-fig .hf-ci { stroke: var(--vit-clay-ink); stroke-width: 1.4; }
.hero-fig .hf-sq { stroke-width: 1.2; }
.hero-fig .hf-dim { stroke: var(--vit-clay-ink); stroke-width: 1; }
/* R2 quality round (manager 426 review items 11, 31, 32, 46) */
.menu-item img[data-icon] { flex: none; min-width: 24px; }
.fbrand .flogo { width: auto; max-width: 180px; height: auto; max-height: 36px; }
html[lang="he"] .ly-lab { font-family: var(--vit-f-heb); letter-spacing: 0; font-size: 12px; font-weight: 600; }
.site-footer .partners .pt { display: inline; }
@media (max-width: 640px) { .site-footer .partners .pt { display: block; } .site-footer .partners .sep { display: none; } }
/* R2 quality round (review 16, 30, 48): one button height and a centred label; the primary is solid clay (hover: ink); the corner overshoot (6px) gets its own margin so a pair never touches and nothing leaves the gutter */
[data-cta], :is(.ghost, [data-add], .addc), .btn { margin: 6px; min-height: 48px; padding-block: var(--vit-space-3); }
[data-cta] { padding-block: var(--vit-space-3); background-size: 100% 100%; color: var(--vit-on-clay); }
[data-cta]::after { inset-block-end: 3px; height: 5px; background:
    linear-gradient(var(--vit-on-clay), var(--vit-on-clay)) 0 50% / 100% 1px no-repeat,
    linear-gradient(var(--vit-on-clay), var(--vit-on-clay)) 0 0 / 1px 100% no-repeat,
    linear-gradient(var(--vit-on-clay), var(--vit-on-clay)) 100% 0 / 1px 100% no-repeat; }
[data-cta]:hover, [data-cta]:focus-visible { background-image: linear-gradient(var(--vit-ink), var(--vit-ink)); color: var(--vit-paper); }
[data-cta][disabled], [data-cta][aria-disabled="true"] { background-size: 0% 100%; color: var(--vit-ink-3); }
.band [data-cta] { color: var(--vit-paper); }
.band [data-cta]::after { background:
    linear-gradient(var(--vit-paper), var(--vit-paper)) 0 50% / 100% 1px no-repeat,
    linear-gradient(var(--vit-paper), var(--vit-paper)) 0 0 / 1px 100% no-repeat,
    linear-gradient(var(--vit-paper), var(--vit-paper)) 100% 0 / 1px 100% no-repeat; }
#hero .zone-ctas, .zone-ctas, .buystrip { gap: var(--vit-space-4); }
.hdr-end .btn, .menu-list [data-cta] { margin: 0; }
/* balanced headings (no one-word last line), pretty paragraphs (review 14, 40) */
h1, h2, h3, h4, h5 { text-wrap: balance; }
p, li, dd, td { text-wrap: pretty; }
.hero-slot { position: relative; align-self: center; justify-self: stretch; min-width: 0; width: 100%; }
.hero-slot > .hero-fig { position: absolute; inset: 0; width: 100%; height: 100%; }
/* one section rhythm (review 34): 32px under the header, 48px between the hero sheet and every following section */
#hero { padding-block: var(--vit-space-5) 0; }
#hero > .sheetframe { margin-block: 0; }
html[lang="he"] .gplate .code, html[lang="he"] .gplate .gs { font-family: var(--vit-f-heb); letter-spacing: 0; }
.ss-code { min-width: 9ch; }   /* review 49: every section rule starts at the same distance */
a { text-decoration-skip-ink: none; }   /* review 41: one unbroken underline across a Hebrew/Latin switch */
.cur { font-style: normal; font-size: .6em; font-weight: 400; vertical-align: baseline; margin-inline-start: .05em; }   /* review 42: the shekel sign at 60%, on the baseline */
@media (max-width: 360px) { .h1-ph { white-space: normal; } #hero h1 { font-size: 30px; } }   /* at 360 and below a phrase may wrap rather than push the page wider */
.more-products { margin: var(--vit-space-4) 0 0; font-size: 15px; }
/* review 21: FAQ and docs lists as rows with a 44px tap height and a drawn marker, not browser bullets */
#faq ul, #docs ul { list-style: none; margin: 0; padding: 0; }
#faq li a, #docs li a, #docs li span { display: block; padding-block: 10px; min-height: 44px; border-bottom: 1px solid var(--vit-line-default); text-decoration: none; }
#faq li a::before, #docs li a::before { content: ""; display: inline-block; vertical-align: middle; width: 10px; height: 1px; margin-inline-end: var(--vit-space-3); background: var(--vit-clay-ink); }   /* inline marker, so inline Latin (bdi) stays in the text flow */
#faq li a:hover, #docs li a:hover { color: var(--vit-clay-ink); }
.fg-badges { display: flex; flex-wrap: wrap; gap: var(--vit-space-2); align-items: center; }   /* review 10: both pills on one row */
.fg-badges:empty { display: none; }
.fg-group[data-group="plugin"] .fg-cards { grid-template-columns: repeat(auto-fit, minmax(min(210px, 100%), 1fr)); }
@media (max-width: 480px) { .pc-body { padding: var(--vit-space-4); } .plan-card .pc-actions { flex-direction: column; align-items: stretch; } .plan-card .pc-actions > * { width: auto; } }   /* review 27, 24: a phone gives the card its width back; stacked buttons share one width */
.plan-extra [data-extra-seat] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--vit-space-3); border-top: 1px solid var(--vit-ink-2); }   /* review 23: the seat text and its button on one strip */
.sr-tag { border-radius: var(--vit-r-pill); background: var(--vit-paper-2); line-height: 1.5; align-self: center; }   /* review 35: the same pill as the cards, on the heading's centre line */
.ly-ai, html[dir="ltr"] .ly-ai { transform: none; }   /* review 13: the AI boxes sit on the column grid (the offset made them poke 6px out) */
@media (max-width: 760px) { .ly-head + .ly-row, .layers .ly-row:first-of-type { border-top: 0; } }   /* review 50: no grey divider right under the black H2 rule */
.cta-note bdi[dir="ltr"] { white-space: normal; }   /* the platform/version line may wrap between its parts at 320 */
.gp-card h2 [data-badge] { display: inline; box-decoration-break: clone; -webkit-box-decoration-break: clone; }   /* inline so the no-break space ties the pill to the word before it */
.hero-text { container-type: inline-size; }
@media (min-width: 641px) { #hero .hero-text h1 { font-size: min(72px, 6.3cqi); } }   /* founder note 1: line 2 ("פחות תפעול, יותר אדריכלות.") always fits the column, so the h1 is two lines at 1440 / 1024 / 768 */
@media (max-width: 360px) { #hero .hero-text h1 { font-size: 28px; } }
@media (max-width: 340px) { #hero .hero-text h1 { font-size: 25px; } }   /* the bound last phrase ("More architecture.") has to fit a 320 phone */
.menu-item img[data-icon] { order: 9; margin-inline-start: auto; }   /* review 31: the glyph sits at the far end of the row, so every label shares one start edge next to its number */
.pc-strip .heb { font-family: var(--vit-f-heb); letter-spacing: 0; font-size: 13px; font-weight: 600; }   /* Hebrew on a plan strip is Heebo; only the digits and codes stay mono */
/* review 7: the seat strip and the "details" link run the full width under both cards (no empty column under the solo card) */
@media (min-width: 900px) { .plan-extra { grid-column: 1 / -1; } }
.plan-more { grid-column: 1 / -1; margin: 0; }
.plan-extra [data-extra-seat] { border: 1px solid var(--vit-ink-2); }
.ly-head .soon-pill { font-size: 12px; font-weight: 500; color: var(--vit-ink-2); border: 1px solid var(--vit-line-strong); border-radius: var(--vit-r-pill); padding: 0 var(--vit-space-2); background: var(--vit-paper-2); }   /* review 37: one "soon" on the AI column header, none inside the cells */
@media (min-width: 900px) { .plan-cards > .plan-extra { grid-column: 1 / -1; } }
.plan-cards > .plan-more { grid-column: 1 / -1; }
.plan-cards > .plan-extra { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--vit-space-3); padding: var(--vit-space-3) var(--vit-space-4); border: 1px solid var(--vit-ink-2); }   /* review 7: the seat sentence and its button on one strip */
.plan-cards > .plan-extra > [data-extra-seat] { margin: 0; padding: 0; border: 0; }
