/* ===== Base / reset ===== */
*,*::before,*::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
h1,h2,h3,h4,h5,h6,p { margin: 0; padding: 0; }
ul { margin: 0; padding: 0; list-style: none; }
a { text-decoration: none; color: inherit; }
img, svg { display: block; max-width: 100%; height: auto; }
button { font: inherit; cursor: pointer; }

html { direction: rtl; }
body {
  direction: rtl;
  font-family: var(--font-body);
  color: var(--ink);
  background: #F6F6F6;   /* global page grey — white/navy sections set their own bg (Figma) */
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;   /* clip (not hidden) → doesn't break position:sticky descendants */
}

.site-main { width: 100%; max-width: 100%; overflow-x: clip; }

/* Scaled-stage helper: build at 1920 exact px, scale to viewport width.
   Each section owns its own stage. NO page-level transform (avoids nested scale §CCC).
   --h = the section's Figma height in px (unitless). RTL: anchor to right edge. */
.scaled {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: calc(100vw * var(--h) / 1920);
}
.scaled > .stage {
  position: absolute;
  top: 0;
  right: 0;
  width: var(--canvas-w);
  height: calc(var(--h) * 1px);
  transform-origin: top right;
  transform: scale(calc(100vw / var(--canvas-w)));
}

/* Visually-hidden (a11y) */
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ===== Floating WhatsApp CTA (client-provided composed image) ===== */
.wa-float {
  position: fixed; bottom: 22px; right: 22px; z-index: 95; width: 230px;
  transition: transform .2s ease;
}
.wa-float img { width: 100%; height: auto; display: block; filter: drop-shadow(0 6px 18px rgba(0,0,0,.22)); }
.wa-float:hover { transform: translateY(-3px); }
@media (max-width: 1024px) { .wa-float { width: 168px; bottom: 70px; right: 12px; } }

/* ===== Splide slider sections (teudot / testimonials / piskei / video) =====
   Flow layout that lines up with the scaled sections' content box
   (1302px of the 1920 canvas → same proportional side margins). */
.yd-splsec { padding: 56px 0; }
.yd-flow { width: calc(100vw * 1302 / 1920); max-width: 1302px; margin: 0 auto; }
.yd-h2 { text-align: center; font-weight: 400; font-size: clamp(26px, 2.19vw, 42px); line-height: 1.15; color: #000; margin: 0 auto 34px; }
.splide__slide { height: auto; }
/* We load splide-CORE only (no theme css) → the arrows get no positioning/chrome from Splide.
   Position them ourselves and reuse the theme chevron images. */
.splide__arrow { background: transparent; border: 0; padding: 0; opacity: 1; }
.splide__arrow:hover:not(:disabled) { background: transparent; }
.splide__arrow:disabled { opacity: .3; }
.splide__arrow svg { display: none; }
.splide__arrow img { width: 100%; height: 100%; display: block; }
/* Arrows sit OUTSIDE the content column, in the page margin — so they never cover a card
   AND the cards keep the full 1302-column width (same proportions as the scaled sections).
   A gutter inside the slider would tax the card width; here it costs nothing. */
.yd-splsec .splide { position: relative; }
.yd-splsec .splide__arrows { position: static; }
.yd-splsec .splide__arrow {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 5;
  width: clamp(34px, 3.2vw, 62px); height: clamp(34px, 3.2vw, 62px);
}
/* just outside the RIGHT edge of the column = offset from its left edge by 100% + gap */
.yd-splsec .splide__arrow--prev { left: calc(100% + clamp(8px, 1.2vw, 24px)); right: auto; }
.yd-splsec .splide__arrow--next { right: calc(100% + clamp(8px, 1.2vw, 24px)); left: auto; }
@media (max-width: 1024px) {
  .yd-splsec { padding: 36px 0; }
  .yd-flow { width: auto; padding: 0 16px; }
  .yd-h2 { font-size: 26px; margin-bottom: 24px; }
  /* no page margin left to put the arrows in → reserve a gutter inside the slider */
  .yd-splsec .splide { padding: 0 46px; }
  .yd-splsec .splide__arrow--prev { right: 0; left: auto; }
  .yd-splsec .splide__arrow--next { left: 0; right: auto; }
}
