/* v41 — 2026-09-23 — HEBREW / RTL LAYER. Decisions 23 Sep: hero block on the right, brand gradient as in English, Heebo. Loaded ONLY by /he/ pages, after every other sheet.
   Nothing in the English build is edited; every rule here is an override keyed on html[dir="rtl"].
   Sections follow the adaptation analysis: fonts → type resets → logical layout → mirrored motion
   → chrome (nav, switcher, skip link) → forms & figures → tables. */

/* ---------- 1. Fonts: Heebo variable, Hebrew + Latin subsets. DM Mono kept for digits. ---------- */
@font-face{font-family:"Heebo Variable";font-style:normal;font-display:swap;font-weight:100 900;
  src:url(/assets/fonts/heebo-hebrew-wght-normal.woff2) format("woff2-variations");
  unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Heebo Variable";font-style:normal;font-display:swap;font-weight:100 900;
  src:url(/assets/fonts/heebo-latin-wght-normal.woff2) format("woff2-variations");
  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}

html[dir="rtl"]{
  --font-display:"Heebo Variable","Heebo","Assistant","Noto Sans Hebrew",system-ui,sans-serif;
  --font-body:"Heebo Variable","Heebo","Assistant","Noto Sans Hebrew",system-ui,sans-serif;
  /* Labels: Latin acronyms (S&OP, EBITDA) stay in DM Mono; Hebrew falls through to Heebo. */
  --font-mono:"DM Mono","Heebo Variable","Heebo",ui-monospace,monospace;
  /* Brand gradient stays as in English (a brand constant, like the logo). See pilot variant C below. */
}
html[dir="rtl"] body{line-height:1.7;word-spacing:.03em}

/* ---------- 2. Type resets: no tracking on Hebrew, no case transforms except the logo ---------- */
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4,
html[dir="rtl"] .title,html[dir="rtl"] .row__symptom{letter-spacing:normal;line-height:1.18}
html[dir="rtl"] .mono-label,html[dir="rtl"] .reveal__k,html[dir="rtl"] .uppercase,
html[dir="rtl"] main .case-grid[data-cases] .case__body summary,html[dir="rtl"] .lang__btn,
html[dir="rtl"] .row__stat-src,html[dir="rtl"] main .person__flag,html[dir="rtl"] .insight-v36 .ins-meta .mono-label,
html[dir="rtl"] .insight-v36 .ins-category,html[dir="rtl"] main .person__initials{letter-spacing:normal;text-transform:none}
html[dir="rtl"] .mono-label,html[dir="rtl"] .reveal__k{font-family:var(--font-body);font-weight:500;font-size:.92rem}
/* Logo is Latin and keeps its identity everywhere. */
html[dir="rtl"] .logo{font-family:"Outfit Variable","Outfit",system-ui,sans-serif;letter-spacing:-.02em;text-transform:uppercase;direction:ltr;unicode-bidi:isolate}

/* ---------- 3. Logical layout: every physical rule found in v40, mirrored ---------- */
html[dir="rtl"] .nav__links,html[dir="rtl"] .nav__toggle,html[dir="rtl"] .consent__actions{margin-left:0;margin-inline-start:auto}
html[dir="rtl"] .aurora__pause{margin-left:0;margin-inline-start:.35rem}
html[dir="rtl"] .cap-detail__more-arrow{margin-left:0;margin-inline-start:.3rem}
html[dir="rtl"] .impact__item{padding-left:0;border-left:0;padding-inline-start:1.1rem;border-inline-start:2px solid;border-image:linear-gradient(180deg,#0891b2,#06b6d4) 1}
html[dir="rtl"] .track__lab{border-left:0;padding-left:0;border-inline-start:2px solid var(--brand-indigo);padding-inline-start:.9rem}
html[dir="rtl"] .quote{border-left:0;padding-left:0;border-inline-start:2px solid var(--brand-indigo);padding-inline-start:1.25rem}
html[dir="rtl"] .row__proof{padding-left:0;border-left:0;padding-inline-start:.85rem;border-inline-start:2px solid #0891b2}
html[dir="rtl"] .ins-caveat{border-left:0;padding-left:0;border-inline-start:2px solid var(--light);padding-inline-start:1rem}
html[dir="rtl"] .insight-v36 .ins-body blockquote{border-left:0;padding-left:0;border-inline-start:3px solid var(--action);padding-inline-start:1.25rem}
html[dir="rtl"] main .team-grid .person>:not(.person__portrait){margin-left:1.5rem;margin-right:1.5rem}
html[dir="rtl"] main .wwd .wwd-head{align-items:flex-start;text-align:start}
html[dir="rtl"] main .wwd .wwd-head__title,html[dir="rtl"] main .wwd .wwd-head__lead{text-align:start;margin-inline-start:0}
html[dir="rtl"] .insight-v36 caption,html[dir="rtl"] .insight-v36 th,html[dir="rtl"] .insight-v36 td{text-align:start}
html[dir="rtl"] .insight-v36 tbody td:not(:first-child){text-align:end}
html[dir="rtl"] main .case-grid[data-cases] .case__route{text-align:end}
/* Absolute chrome that was pinned to a physical side */
/* In an RTL document, overflow to the LEFT is scrollable, so nothing may be parked at left:-9999px. Park off the top instead. */
html[dir="rtl"] .skip-link{left:auto;inset-inline-start:0;top:-200px;border-radius:0 0 0 var(--radius-sm)}
html[dir="rtl"] .skip-link:focus{top:0}
html[dir="rtl"] .hp,html[dir="rtl"] .sub40 .hp40{left:auto;inset-inline-start:0;top:-9999px}
html[dir="rtl"] .lang__menu,html[dir="rtl"] [data-lang-menu]{right:auto;inset-inline-end:0}
html[dir="rtl"] .phase-list::before{left:auto;inset-inline-start:1.05rem}
html[dir="rtl"] .phase::before{left:auto;inset-inline-start:.72rem}

/* ---------- 4. Motion mirrored: hairlines draw right-to-left, arrows nudge toward reading direction ---------- */
html[dir="rtl"] .row__rule,html[dir="rtl"] .cap-detail-grid .cap-detail__rule{clip-path:inset(0 0 0 100%)}
html[dir="rtl"] .row[data-row].is-visible .row__rule,html[dir="rtl"] .cap-detail-grid.is-visible .cap-detail__rule{clip-path:inset(0)}
html[dir="rtl"] .row__link:hover .row__arrow,html[dir="rtl"] .cap-detail__row:hover .cap-detail__name,
html[dir="rtl"] .vouch__card:hover .vouch__more,html[dir="rtl"] .cap-detail__more:hover .cap-detail__more-arrow{transform:translate(-4px)}
html[dir="rtl"] .row__link:active .row__arrow,html[dir="rtl"] .cap-detail__row:active .cap-detail__name{transform:translate(-2px)}
html[dir="rtl"] .cap-detail__chev{transform:translate(6px)}
html[dir="rtl"] .cap-detail__row:hover .cap-detail__chev{transform:translate(0)}
html[dir="rtl"] .links a:after,html[dir="rtl"] .underhair{transform-origin:right}
html[dir="rtl"] .send__sheen{background:linear-gradient(250deg,transparent 30%,rgba(255,255,255,.22) 50%,transparent 70%);transform:translate(120%)}
@keyframes sheen-rtl{to{transform:translate(-120%)}}
html[dir="rtl"] .send.is-armed .send__sheen{animation:sheen-rtl 1.1s cubic-bezier(.77,0,.175,1) 1}
html[dir="rtl"] .send.is-busy .send__sheen{animation:sheen-rtl 1.1s linear infinite}
/* Hero scrim keeps the dark side under the text, which now sits on the right. */
html[dir="rtl"] .aurora__scrim{background:linear-gradient(270deg,#080818ed,#080818e0 32%,#080818ad,#08081847 78%,#0808181a)}
@media (max-width:767px){html[dir="rtl"] .aurora__scrim{background:linear-gradient(180deg,#080818e0,#080818cc 38%,#080818c2 62%,#080818d1 82%,#080818eb)}}

/* ---------- 5. Icons: only SVG reading-direction arrows flip; text arrows are swapped as glyphs (→ ↔ ←).
   Logos, close, play, globe never flip. ---------- */
html[dir="rtl"] .row__arrow svg,html[dir="rtl"] .send__lab svg,html[dir="rtl"] .icon-directional{transform:scaleX(-1)}

/* ---------- 6. Forms and figures ---------- */
html[dir="rtl"] input:not([type=radio]):not([type=checkbox]),html[dir="rtl"] textarea{text-align:start}
html[dir="rtl"] input[type=email],html[dir="rtl"] input[type=tel],html[dir="rtl"] input[type=url]{direction:ltr;text-align:end}
html[dir="rtl"] .impact__num,html[dir="rtl"] .num,html[dir="rtl"] [data-count]{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
/* A figure that carries a Hebrew unit ("15 מיליון ₪") reads as Hebrew: number first from the right, unit, then ₪. */
html[dir="rtl"] .impact__num.num--he{direction:rtl}
/* Stat values that mix digits and Hebrew words ("2 מתוך 3") set in the body face, not the mono face. */
html[dir="rtl"] .row__stat-value{font-family:var(--font-body);font-weight:500}
html[dir="rtl"] .impact__num .u{font-family:var(--font-body);font-weight:600;font-size:.62em;margin-inline-start:.28em;letter-spacing:normal}
html[dir="rtl"] a[href^="tel:"],html[dir="rtl"] a[href^="mailto:"],html[dir="rtl"] .ltr,html[dir="rtl"] code,html[dir="rtl"] kbd{direction:ltr;unicode-bidi:isolate}

/* ---------- 7. Language switcher (hidden in v40, visible from v41 on both locales) ---------- */
html[dir="rtl"] .lang__code{font-family:var(--font-body);font-weight:600}

/* ---------- 8. Reduced motion: inherit the site's own rules; nothing here adds motion ---------- */

/* ---------- 9. v42 (FE1 #1): home metric grid at phone widths. "15 מיליון ₪" is wider than "₪15M", and with
   1fr 1fr the first column grew to fit it and pushed the grid 12px off-screen at 320px. Equal columns that may
   shrink, and a figure size that scales with the viewport until the default size fits again (~470px). ---------- */
@media (max-width:979.98px){html[dir="rtl"] .impact__grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[dir="rtl"] .impact__item{min-width:0}}
@media (max-width:479.98px){html[dir="rtl"] .impact__num{font-size:clamp(1.05rem,8.6vw - 10px,1.9rem)}}

/* v42.1 — LTR runs inside Hebrew blocks sit on the Hebrew (right) side: impact numbers, phone row, e-mail row */
html[dir="rtl"] .impact__num{text-align:right}
html[dir="rtl"] .impact__num.num--he{word-spacing:-.3em}
html[dir="rtl"] a.tel{justify-content:flex-end}
html[dir="rtl"] a.callrow__mail{direction:rtl}
