/* ============================================================
   falling2balance — גיליון סגנון ראשי
   ------------------------------------------------------------
   1.  טוקנים (צבעים, טיפוגרפיה, מרווחים)
   2.  איפוס ובסיס
   3.  עזרים כלליים
   4.  כותרת עליונה וניווט
   5.  Hero
   6.  בלוקים של תוכן
   7.  כרטיסים, ציר זמן, גלריה
   8.  טפסים
   9.  אקורדיון (שאלות נפוצות)
   10. חנות
   11. פוטר
   12. אנימציות ונגישות
   ============================================================ */

/* ---------- 1. טוקנים ---------- */
:root {
  /* צבעים — פלטת מדבר חמה */
  --sand-50:  #FBF7F1;
  --sand-100: #F4ECE1;
  --sand-200: #E8DBC9;
  --sand-300: #D6C3AA;

  --ink-900: #1E1B17;
  --ink-800: #2C2721;
  --ink-700: #46403A;
  --ink-500: #6E655B;
  --ink-400: #8C8377;

  --clay:      #A6874F;   /* אקסנט ראשי — זהב-חאקי, כמו באתר הקודם */
  --clay-dark: #7D6636;
  --clay-soft: #EFE7D3;

  --moss:      #5C6B52;   /* אקסנט משני — צמחייה */
  --moss-soft: #DDE2D5;

  /* תפקידים */
  --bg:        var(--sand-50);
  --bg-alt:    var(--sand-100);
  --bg-deep:   var(--ink-900);
  --text:      var(--ink-800);
  --text-soft: var(--ink-500);
  --line:      rgba(30, 27, 23, 0.12);
  --accent:    var(--clay);

  /* טיפוגרפיה */
  --font-display: 'Frank Ruhl Libre', 'Times New Roman', Georgia, serif;
  --font-body: 'Assistant', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;

  --step--1: clamp(0.82rem, 0.79rem + 0.15vw, 0.92rem);
  --step-0:  clamp(1rem, 0.96rem + 0.2vw, 1.12rem);
  --step-1:  clamp(1.2rem, 1.12rem + 0.4vw, 1.45rem);
  --step-2:  clamp(1.45rem, 1.3rem + 0.75vw, 2rem);
  --step-3:  clamp(1.8rem, 1.5rem + 1.4vw, 2.8rem);
  --step-4:  clamp(2.2rem, 1.6rem + 2.8vw, 4.2rem);
  --step-5:  clamp(2.8rem, 1.8rem + 4.6vw, 6rem);

  /* מרווחים ומידות */
  --gap: clamp(1rem, 0.8rem + 1vw, 1.6rem);
  --section-y: clamp(4rem, 3rem + 5vw, 8.5rem);
  --wrap: 1180px;
  --wrap-narrow: 760px;
  --radius: 4px;
  --radius-lg: 10px;

  --shadow-sm: 0 1px 2px rgba(30, 27, 23, 0.05), 0 4px 14px rgba(30, 27, 23, 0.05);
  --shadow-md: 0 2px 6px rgba(30, 27, 23, 0.06), 0 18px 40px rgba(30, 27, 23, 0.09);

  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* ---------- 2. איפוס ובסיס ---------- */
*, *::before, *::after { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: 6rem;
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-body);
  font-size: var(--step-0);
  line-height: 1.75;
  font-weight: 400;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 0.5em;
  letter-spacing: -0.01em;
  text-wrap: balance;
}

h1 { font-size: var(--step-4); }
h2 { font-size: var(--step-3); }
h3 { font-size: var(--step-1); }

p { margin: 0 0 1.1em; text-wrap: pretty; }
p:last-child { margin-bottom: 0; }

a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.25em; }

img, video { max-width: 100%; height: auto; display: block; }

ul, ol { margin: 0 0 1.1em; padding-inline-start: 1.2em; }
li { margin-bottom: 0.4em; }

hr { border: 0; border-top: 1px solid var(--line); margin: var(--gap) 0; }

/* [hidden] חייב לנצח כללי display של רכיבים (למשל .countdown שהוא flex) */
[hidden] { display: none !important; }

::selection { background: var(--clay-soft); color: var(--ink-900); }

:focus-visible {
  outline: 2px solid var(--clay);
  outline-offset: 3px;
  border-radius: 2px;
}

/* ---------- 3. עזרים ---------- */
.wrap {
  width: min(100% - 2.5rem, var(--wrap));
  margin-inline: auto;
}
.wrap--narrow { width: min(100% - 2.5rem, var(--wrap-narrow)); }

.section { padding-block: var(--section-y); }
.section--tight { padding-block: clamp(2.5rem, 2rem + 3vw, 5rem); }
.section--alt { background: var(--bg-alt); }
.section--deep {
  background: var(--bg-deep);
  color: var(--sand-100);
}
.section--deep h1, .section--deep h2, .section--deep h3 { color: var(--sand-50); }
.section--deep .eyebrow { color: var(--clay-soft); }
.section--deep .lead, .section--deep p { color: rgba(244, 236, 225, 0.82); }

.eyebrow {
  display: block;
  font-size: var(--step--1);
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--clay);
  margin-bottom: 1rem;
}
:root[dir="rtl"] .eyebrow { letter-spacing: 0.08em; }

.lead {
  font-size: var(--step-1);
  line-height: 1.65;
  color: var(--text-soft);
}

.section-head { max-width: 62ch; margin-bottom: clamp(2rem, 1.5rem + 2vw, 3.5rem); }
.section-head--center { margin-inline: auto; text-align: center; }

.center { text-align: center; }
.muted { color: var(--text-soft); }
.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;
}

.skip-link {
  position: absolute; inset-inline-start: 1rem; top: -100px;
  background: var(--ink-900); color: #fff; padding: 0.7rem 1.2rem;
  z-index: 200; border-radius: var(--radius); transition: top 0.2s;
}
.skip-link:focus { top: 1rem; }

/* כפתורים */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55em;
  padding: 0.95em 2.2em;
  font-family: var(--font-body);
  font-size: var(--step-0);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  border: 1px solid transparent;
  border-radius: 2px;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.25s var(--ease), background-color 0.25s var(--ease),
              color 0.25s var(--ease), border-color 0.25s var(--ease), box-shadow 0.25s var(--ease);
}
.btn:hover { transform: translateY(-2px); }
.btn:active { transform: translateY(0); }

.btn--primary {
  background: var(--clay);
  color: #fff;
  box-shadow: 0 6px 20px rgba(166, 135, 79, 0.28);
}
.btn--primary:hover { background: var(--clay-dark); box-shadow: 0 10px 28px rgba(166, 135, 79, 0.34); }

.btn--ghost {
  background: transparent;
  color: var(--text);
  border-color: var(--line);
}
.btn--ghost:hover { border-color: var(--ink-700); background: rgba(30, 27, 23, 0.04); }

.btn--light {
  background: rgba(251, 247, 241, 0.1);
  color: var(--sand-50);
  border-color: rgba(251, 247, 241, 0.4);
  backdrop-filter: blur(6px);
}
.btn--light:hover { background: var(--sand-50); color: var(--ink-900); }

.btn--whatsapp { background: #1f8f5f; color: #fff; }
.btn--whatsapp:hover { background: #18784f; }

.btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  align-items: center;
}
.btn-row--center { justify-content: center; }

/* קישור עם חץ */
.arrow-link {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  font-weight: 600;
  color: var(--clay);
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 2px;
  transition: gap 0.25s var(--ease);
}
.arrow-link::after { content: '←'; transition: transform 0.25s var(--ease); }
:root[dir="ltr"] .arrow-link::after { content: '→'; }
.arrow-link:hover { gap: 0.85em; }

/* ---------- 4. כותרת עליונה ---------- */
.site-header {
  position: fixed;
  inset-inline: 0;
  top: 0;
  z-index: 100;
  transition: background-color 0.35s var(--ease), box-shadow 0.35s var(--ease),
              padding 0.35s var(--ease);
  padding-block: 1.1rem;
}
.site-header.is-stuck {
  background: rgba(251, 247, 241, 0.92);
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 var(--line);
  padding-block: 0.7rem;
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap);
}

/* השם באנגלית בתוך עמוד RTL — בלי בידוד הכיווניות
   הדפדפן הופך את הסדר ומציג "balance 2 falling" */
.brand {
  direction: ltr;
  unicode-bidi: isolate;
  display: inline-block;
  font-family: var(--font-display);
  font-size: var(--step-1);
  font-weight: 500;
  letter-spacing: -0.02em;
  text-decoration: none;
  color: var(--text);
  white-space: nowrap;
}
.brand span { color: var(--clay); }

/* על גבי hero כהה — טקסט לבן עד לגלילה */
.header-over-hero:not(.is-stuck) .brand,
.header-over-hero:not(.is-stuck) .nav a,
.header-over-hero:not(.is-stuck) .lang-toggle,
.header-over-hero:not(.is-stuck) .nav-toggle {
  color: var(--sand-50);
}
.header-over-hero:not(.is-stuck) .brand span { color: var(--clay-soft); }
.header-over-hero:not(.is-stuck) .lang-toggle { border-color: rgba(251, 247, 241, 0.45); }
.header-over-hero:not(.is-stuck) .nav-toggle span { background: var(--sand-50); }

.nav {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 0.5rem + 1.2vw, 2rem);
}
.nav a {
  font-size: var(--step--1);
  font-weight: 600;
  letter-spacing: 0.03em;
  text-decoration: none;
  color: var(--text);
  position: relative;
  padding-block: 0.35rem;
  white-space: nowrap;
  transition: color 0.2s;
}
.nav a::after {
  content: '';
  position: absolute;
  inset-inline-start: 0;
  bottom: 0;
  width: 0;
  height: 1.5px;
  background: var(--clay);
  transition: width 0.3s var(--ease);
}
.nav a:hover::after, .nav a[aria-current="page"]::after { width: 100%; }
.nav a[aria-current="page"] { color: var(--clay); }

.header-actions { display: flex; align-items: center; gap: 0.75rem; }

.lang-toggle {
  background: transparent;
  border: 1px solid var(--line);
  border-radius: 100px;
  padding: 0.35rem 0.9rem;
  font-family: var(--font-body);
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--text);
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}
.lang-toggle:hover { background: var(--clay); color: #fff; border-color: var(--clay); }

/* המבורגר */
.nav-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 44px; height: 44px;
  background: none; border: 0; cursor: pointer; padding: 0;
}
.nav-toggle span {
  display: block; height: 1.5px; width: 24px;
  background: var(--text); margin-inline: auto;
  transition: transform 0.3s var(--ease), opacity 0.2s;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

@media (max-width: 1100px) {
  .nav-toggle { display: flex; }
  .nav {
    position: fixed;
    inset: 0;
    flex-direction: column;
    justify-content: center;
    gap: 1.75rem;
    background: var(--sand-50);
    transform: translateX(100%);
    transition: transform 0.4s var(--ease);
    z-index: 90;
  }
  :root[dir="ltr"] .nav { transform: translateX(-100%); }
  .nav.is-open { transform: translateX(0); }
  .nav a { font-family: var(--font-display); font-size: var(--step-2); font-weight: 500; color: var(--text) !important; }

  /* הלוגו וכפתור הסגירה הם אחים של .nav באותו הורה, ולכן צריכים
     z-index משלהם כדי להישאר מעל התפריט המלא-מסך */
  .brand,
  .header-actions { position: relative; z-index: 95; }

  /* כשהתפריט פתוח הרקע בהיר — הלוגו והכפתורים חייבים להיות כהים,
     גם אם הכותרת יושבת מעל hero כהה */
  .site-header.nav-open .brand,
  .site-header.nav-open .lang-toggle { color: var(--text); }
  .site-header.nav-open .brand span { color: var(--clay); }
  .site-header.nav-open .lang-toggle { border-color: var(--line); }
  .site-header.nav-open .nav-toggle span { background: var(--text); }
}

@media (max-width: 640px) {
  /* מרווח לכפתורים כדי שלא יתנגשו בכפתור הוואטסאפ הצף */
  .hero__content { padding-bottom: 5.5rem; }
  .scroll-hint { display: none; }
}

/* ---------- 5. Hero ---------- */
.hero {
  position: relative;
  min-height: min(100svh, 900px);
  display: grid;
  align-items: end;
  color: var(--sand-50);
  overflow: hidden;
  isolation: isolate;
}
.hero--short { min-height: min(68svh, 620px); }

.hero__media {
  position: absolute;
  inset: 0;
  z-index: -2;
  /* אם התמונה חסרה — הגרדיאנט מתחת נשאר וזה עדיין נראה טוב */
  background-color: var(--ink-800);
  background-image: linear-gradient(150deg, #3A2F26 0%, #6B5A3D 45%, #A6874F 100%);
  background-size: cover;
  background-position: center;
  animation: kenburns 26s var(--ease) infinite alternate;
}
.hero__media > img,
.hero__media > video {
  width: 100%; height: 100%; object-fit: cover;
}
@keyframes kenburns {
  from { transform: scale(1) translate3d(0, 0, 0); }
  to   { transform: scale(1.09) translate3d(0, -1.5%, 0); }
}

.hero__scrim {
  position: absolute; inset: 0; z-index: -1;
  background:
    linear-gradient(to top, rgba(20, 17, 14, 0.88) 0%, rgba(20, 17, 14, 0.45) 45%, rgba(20, 17, 14, 0.3) 100%);
}

.hero__content {
  padding-block: clamp(4rem, 3rem + 6vw, 8rem);
  max-width: 44ch;
}
.hero__title {
  font-size: var(--step-5);
  margin-bottom: 0.35em;
  color: #fff;
  text-shadow: 0 2px 30px rgba(0, 0, 0, 0.35);
}
.hero__sub {
  font-size: var(--step-1);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 2rem;
  max-width: 40ch;
}
.hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 1.4rem;
  margin-bottom: 2rem;
  font-size: var(--step--1);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--clay-soft);
}
.hero__meta span { display: inline-flex; align-items: center; gap: 0.5em; }

.scroll-hint {
  position: absolute;
  inset-inline-start: 50%;
  bottom: 1.5rem;
  translate: -50% 0;
  width: 1px; height: 46px;
  background: linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.75));
  animation: hint 2.4s ease-in-out infinite;
}
@keyframes hint { 0%, 100% { opacity: 0.25; height: 30px; } 50% { opacity: 1; height: 52px; } }

/* ספירה לאחור */
.countdown {
  display: flex;
  gap: 1.4rem;
  margin-bottom: 2rem;
}
.countdown div { text-align: center; min-width: 3.4rem; }
.countdown b {
  display: block;
  font-family: var(--font-display);
  font-size: var(--step-2);
  font-weight: 500;
  line-height: 1;
  color: #fff;
}
.countdown small {
  font-size: 0.7rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.65);
}

/* ---------- 6. בלוקים ---------- */
.split {
  display: grid;
  gap: clamp(2rem, 1rem + 4vw, 5rem);
  align-items: center;
  grid-template-columns: 1fr;
}
@media (min-width: 860px) {
  .split { grid-template-columns: 1fr 1fr; }
  .split--wide-text { grid-template-columns: 1.15fr 0.85fr; }
  .split--reverse > *:first-child { order: 2; }
}

.figure {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--sand-200) linear-gradient(140deg, var(--sand-200), var(--clay-soft));
  aspect-ratio: 4 / 5;
  box-shadow: var(--shadow-md);
}
.figure--wide { aspect-ratio: 16 / 10; }
.figure img, .figure video { width: 100%; height: 100%; object-fit: cover; }
.figure figcaption {
  position: absolute;
  inset-inline: 0; bottom: 0;
  padding: 1.5rem 1.25rem 1rem;
  background: linear-gradient(to top, rgba(20, 17, 14, 0.8), transparent);
  color: #fff;
  font-size: var(--step--1);
}

/* ציטוט */
.quote {
  font-family: var(--font-display);
  font-size: var(--step-2);
  line-height: 1.45;
  text-align: center;
  max-width: 24ch;
  margin-inline: auto;
  position: relative;
}
.quote cite {
  display: block;
  margin-top: 1.5rem;
  font-family: var(--font-body);
  font-size: var(--step--1);
  font-style: normal;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--clay);
}

/* פס נתונים */
.facts {
  display: grid;
  gap: 1px;
  background: var(--line);
  border-block: 1px solid var(--line);
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.facts > div {
  background: var(--bg);
  padding: clamp(1.5rem, 1rem + 2vw, 2.5rem) 1.25rem;
  text-align: center;
}
.section--alt .facts > div { background: var(--bg-alt); }
.facts dt {
  font-size: var(--step--1);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--text-soft);
  margin-bottom: 0.5rem;
}
.facts dd {
  margin: 0;
  font-family: var(--font-display);
  font-size: var(--step-1);
  color: var(--ink-900);
}

/* ---------- 7. כרטיסים, ציר זמן, גלריה ---------- */
.grid {
  display: grid;
  gap: clamp(1.25rem, 1rem + 1.5vw, 2.25rem);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
}
.grid--2 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); }

.card {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: clamp(1.5rem, 1.2rem + 1vw, 2.25rem);
  transition: transform 0.35s var(--ease), box-shadow 0.35s var(--ease), border-color 0.35s;
}
.section--alt .card { background: var(--sand-50); }
.card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: transparent; }
.card h3 { margin-bottom: 0.5rem; }
.card p { color: var(--text-soft); font-size: var(--step-0); margin-bottom: 0; }

.card__icon {
  display: grid;
  place-items: center;
  width: 46px; height: 46px;
  border-radius: 50%;
  background: var(--clay-soft);
  color: var(--clay-dark);
  margin-bottom: 1.1rem;
  font-size: 1.1rem;
}
.section--deep .card {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.12);
}
.section--deep .card p { color: rgba(244, 236, 225, 0.75); }
.section--deep .card__icon { background: rgba(235, 213, 198, 0.15); color: var(--clay-soft); }

/* קישור-כרטיס לעמוד אחר */
.card--link { display: block; text-decoration: none; color: inherit; }
.card--link .arrow-link { margin-top: 1rem; pointer-events: none; }

/* תמונת צוות עגולה, עם פוינטר-fallback רך כשאין תמונה עדיין */
.team-photo {
  width: 132px;
  height: 132px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 1.25rem;
  background: linear-gradient(150deg, var(--sand-200), var(--clay-soft));
  box-shadow: var(--shadow-sm);
  border: 3px solid var(--bg);
}
.section--alt .team-photo,
.section--deep .team-photo { border-color: var(--bg-alt); }
.section--deep .team-photo { border-color: rgba(255, 255, 255, 0.1); }
.team-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.card--centered { text-align: center; }

/* אייקון הפרדה דקורטיבי בין סקשנים — עדין, לא מוגזם */
.section-divider {
  display: flex;
  justify-content: center;
  padding-block: clamp(1.5rem, 1rem + 2vw, 2.75rem);
  color: var(--clay);
  opacity: 0.75;
}
.section--deep .section-divider,
.section--deep + .section-divider { color: var(--clay-soft); }
.section-divider svg { width: 44px; height: 44px; }

/* ענף עיטורי — בהשראת האתר הקודם, ליד מחיר/הרשמה */
.section:has(.sprig) { position: relative; overflow: hidden; }
.sprig {
  position: absolute;
  width: 90px;
  height: auto;
  color: var(--clay);
  opacity: 0.55;
  pointer-events: none;
}
.sprig--corner {
  top: clamp(1rem, 1rem + 2vw, 3rem);
  inset-inline-end: clamp(1rem, 1rem + 4vw, 6rem);
  transform: scaleX(-1);
}
:root[dir="ltr"] .sprig--corner { transform: none; }
@media (max-width: 640px) { .sprig { width: 60px; } }

/* ציר זמן */
.timeline { position: relative; padding-inline-start: 2.25rem; }
.timeline::before {
  content: '';
  position: absolute;
  inset-inline-start: 5px;
  top: 0.6em; bottom: 0.6em;
  width: 1px;
  background: linear-gradient(to bottom, var(--clay-soft), var(--sand-300), transparent);
}
.timeline > li {
  position: relative;
  list-style: none;
  margin-bottom: 2.25rem;
}
.timeline > li::before {
  content: '';
  position: absolute;
  inset-inline-start: -2.25rem;
  top: 0.55em;
  width: 11px; height: 11px;
  border-radius: 50%;
  background: var(--bg);
  border: 2px solid var(--clay);
  transform: translateX(0);
}
:root[dir="rtl"] .timeline > li::before { inset-inline-start: -2.22rem; }
.timeline time {
  display: block;
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--clay);
  margin-bottom: 0.2rem;
}
.timeline h3 { font-size: var(--step-1); margin-bottom: 0.25rem; }
.timeline p { color: var(--text-soft); margin-bottom: 0; }

/* גלריה — תמונות גדולות, גלישה מלאה, כמעט בלי רווח, בלי פינות עגולות
   (בהשראת האתר הקודם: תמונות דרמטיות, לא כרטיסים) */
.gallery {
  display: grid;
  gap: 3px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}
.gallery figure {
  margin: 0;
  overflow: hidden;
  aspect-ratio: 3 / 4;
  background: linear-gradient(150deg, var(--sand-200), var(--clay-soft));
}
.gallery figure:nth-child(3n) { aspect-ratio: 3 / 4; }
.gallery img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 0.7s var(--ease), filter 0.5s;
}
.gallery figure:hover img { transform: scale(1.06); }

/* תמונות גלריה שאפשר ללחוץ עליהן ולהגדיל (ר' js/gallery.js) */
.gallery button.gallery__item {
  all: unset;
  display: block;
  width: 100%; height: 100%;
  cursor: zoom-in;
}
.gallery button.gallery__item:focus-visible {
  outline: 2px solid var(--clay);
  outline-offset: -3px;
}

/* תיבת האור (lightbox) */
.lightbox {
  position: fixed;
  inset: 0;
  z-index: 300;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 3rem);
  background: rgba(15, 13, 10, 0.94);
  backdrop-filter: blur(4px);
  animation: lightbox-in 0.25s var(--ease);
}
@keyframes lightbox-in { from { opacity: 0; } to { opacity: 1; } }

.lightbox img {
  max-width: 100%;
  max-height: 100%;
  border-radius: 2px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}
.lightbox__figure { display: flex; flex-direction: column; align-items: center; gap: 0.75rem; max-width: 100%; max-height: 100%; }
.lightbox__caption { color: rgba(251, 247, 241, 0.75); font-size: var(--step--1); text-align: center; }

.lightbox__close,
.lightbox__nav {
  position: fixed;
  background: rgba(251, 247, 241, 0.1);
  border: 1px solid rgba(251, 247, 241, 0.25);
  color: #fff;
  border-radius: 50%;
  width: 46px; height: 46px;
  display: grid;
  place-items: center;
  cursor: pointer;
  font-size: 1.3rem;
  line-height: 1;
  transition: background-color 0.2s, transform 0.2s;
}
.lightbox__close:hover,
.lightbox__nav:hover { background: rgba(251, 247, 241, 0.22); }
.lightbox__close { top: 1.25rem; inset-inline-end: 1.25rem; }
.lightbox__nav--prev { inset-inline-start: 1.25rem; top: 50%; translate: 0 -50%; }
.lightbox__nav--next { inset-inline-end: 1.25rem; top: 50%; translate: 0 -50%; }
.lightbox__nav--prev:active { transform: translateX(-3px) translateY(-50%); }
:root[dir="rtl"] .lightbox__nav--prev:active { transform: translateX(3px) translateY(-50%); }
@media (max-width: 640px) {
  /* בנייד החיצים יורדים לתחתית המסך, גדולים ובולטים */
  .lightbox__nav { width: 52px; height: 52px; font-size: 1.3rem; top: auto; bottom: 1.5rem; translate: none;
    background: rgba(251, 247, 241, 0.2); border-color: rgba(251, 247, 241, 0.6); }
  .lightbox__nav--prev { inset-inline-start: calc(50% - 64px); }
  .lightbox__nav--next { inset-inline-end: calc(50% - 64px); }
  .lightbox__nav--prev:active, :root[dir="rtl"] .lightbox__nav--prev:active { transform: none; }
  .lightbox__close { top: 0.5rem; inset-inline-end: 0.5rem; }
}

/* וידאו מוטבע */
.video-embed {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: var(--ink-900);
  box-shadow: var(--shadow-md);
}
.video-embed video,
.video-embed iframe {
  width: 100%; height: 100%;
  display: block;
  object-fit: cover;
  background: var(--ink-900);
  border: 0;
}

/* רצועת גלילה אופקית */
.strip {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  padding-bottom: 1rem;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
}
.strip > * { flex: 0 0 min(78vw, 340px); scroll-snap-align: start; }

/* ---------- 8. טפסים ---------- */
/* עיצוב מינימלי בהשראת הוויקס: שדות בקו תחתון בלבד, בלי תיבות. */
.form-panel {
  padding: clamp(1.25rem, 1rem + 1.5vw, 2.25rem) 0 0;
}
.section--alt .form-panel,
.section--deep .form-panel {
  padding-top: clamp(1.25rem, 1rem + 1.5vw, 2.25rem);
}

.field-grid {
  display: grid;
  gap: 1.6rem 2.2rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  margin-bottom: 1.6rem;
}
.field { display: flex; flex-direction: column; gap: 0.5rem; }
.field--full { grid-column: 1 / -1; }

.field label {
  font-size: var(--step--1);
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--text-soft);
}
.section--deep .field label { color: rgba(244, 236, 225, 0.75); }

.field input,
.field select,
.field textarea {
  font-family: var(--font-body);
  font-size: var(--step-0);
  color: var(--text);
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  padding: 0.5em 0.1em;
  width: 100%;
  transition: border-color 0.25s var(--ease), box-shadow 0.25s var(--ease);
}
.section--deep .field input,
.section--deep .field select,
.section--deep .field textarea {
  color: var(--sand-50);
  border-bottom-color: rgba(255, 255, 255, 0.3);
}
.field input:focus,
.field select:focus,
.field textarea:focus {
  outline: none;
  border-bottom-color: var(--clay);
  box-shadow: 0 1px 0 0 var(--clay);
}
.section--deep .field input:focus,
.section--deep .field select:focus,
.section--deep .field textarea:focus {
  border-bottom-color: var(--clay-soft);
  box-shadow: 0 1px 0 0 var(--clay-soft);
}
.field textarea { resize: vertical; min-height: 90px; border: 1px solid var(--line); border-radius: var(--radius); padding: 0.7em 0.9em; }
.field textarea:focus { box-shadow: 0 0 0 3px rgba(166, 135, 79, 0.16); border-color: var(--clay); }
.section--deep .field textarea { border-color: rgba(255, 255, 255, 0.3); }

.field-note { font-size: var(--step--1); color: var(--text-soft); }
.section--deep .field-note { color: rgba(244, 236, 225, 0.65); }

.checkbox {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  font-size: var(--step--1);
  line-height: 1.5;
  cursor: pointer;
}
.checkbox input { width: auto; margin-top: 0.25em; accent-color: var(--clay); flex-shrink: 0; }

/* מלכודת ספאם — מוסתרת מבני אדם ומקוראי מסך, נראית לבוטים.
   מוסתרת בגודל אפס ולא בהזזה החוצה: הזזה של 9999px יוצרת גלילה
   אופקית בעמוד, בעיקר ב-RTL. */
.honeypot {
  position: absolute !important;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.form-status {
  margin-top: 1rem;
  padding: 0.85rem 1.1rem;
  border-radius: var(--radius);
  font-size: var(--step--1);
  font-weight: 600;
  display: none;
}
.form-status.is-visible { display: block; }
.form-status.is-ok { background: var(--moss-soft); color: #33452c; }
.form-status.is-error { background: #F6DAD2; color: #8E2F16; }

/* ---------- 9. אקורדיון ---------- */
.faq { border-top: 1px solid var(--line); }
.faq details {
  border-bottom: 1px solid var(--line);
}
.faq summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 0;
  font-family: var(--font-display);
  font-size: var(--step-1);
  cursor: pointer;
  list-style: none;
  transition: color 0.2s;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary:hover { color: var(--clay); }
.faq summary::after {
  content: '+';
  flex-shrink: 0;
  font-family: var(--font-body);
  font-size: 1.4rem;
  color: var(--clay);
  transition: transform 0.3s var(--ease);
}
.faq details[open] summary::after { transform: rotate(45deg); }
.faq details > div {
  padding-bottom: 1.5rem;
  color: var(--text-soft);
  max-width: 68ch;
}

/* ---------- 10. חנות ---------- */
.product {
  display: flex;
  flex-direction: column;
  background: var(--sand-50);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: transform 0.35s var(--ease), box-shadow 0.35s var(--ease);
}
.product:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.product__img {
  aspect-ratio: 1;
  background: linear-gradient(150deg, #EEDFCB, #D9B99C);
  overflow: hidden;
}
.product__img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s var(--ease); }
.product:hover .product__img img { transform: scale(1.05); }
.product__body {
  padding: 1.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  flex: 1;
}
.product__body h3 { margin-bottom: 0; }
.product__desc { color: var(--text-soft); font-size: var(--step--1); flex: 1; margin-bottom: 0.5rem; }
.product__price {
  font-family: var(--font-display);
  font-size: var(--step-1);
  color: var(--clay-dark);
}
.product__tag {
  display: inline-block;
  align-self: flex-start;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--moss);
  background: var(--moss-soft);
  border-radius: 100px;
  padding: 0.25em 0.8em;
}

/* ---------- לוח אירועים ---------- */
.event-row {
  display: grid;
  gap: 0.5rem 2rem;
  grid-template-columns: 1fr;
  padding-block: clamp(1.5rem, 1.2rem + 1vw, 2.25rem);
  border-bottom: 1px solid var(--line);
  align-items: baseline;
}
@media (min-width: 760px) {
  .event-row { grid-template-columns: 10rem 1fr auto; }
}
.event-row:first-child { border-top: 1px solid var(--line); }
.event-row__date {
  font-family: var(--font-display);
  font-size: var(--step-1);
  color: var(--clay);
  line-height: 1.2;
}
.event-row__date small {
  display: block;
  font-family: var(--font-body);
  font-size: var(--step--1);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-soft);
}
.event-row h3 { margin-bottom: 0.25rem; }
.event-row p { color: var(--text-soft); font-size: var(--step--1); margin-bottom: 0; }
.event-row__status {
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.08em;
  white-space: nowrap;
}
.is-open   { color: var(--moss); }
.is-soon   { color: var(--clay); }
.is-closed { color: var(--ink-400); }
.is-bundle { color: var(--text-soft); }
.is-past   { color: var(--ink-400); }
.event-row--past { opacity: 0.55; }

/* ---- כרטיסי הצעות ומדרגות מחיר (תכנית השנה) ---- */
.offer-grid {
  display: grid;
  gap: var(--gap);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  align-items: stretch;
}
.offer-card {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: clamp(1.5rem, 1.2rem + 1vw, 2rem);
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  transition: opacity 0.3s var(--ease);
}
.section--alt .offer-card { background: var(--sand-50); }
.offer-card--highlight { border-color: var(--clay); box-shadow: var(--shadow-md); }
.offer-card.is-expired { opacity: 0.6; }
.offer-card__badge {
  display: inline-flex;
  align-self: flex-start;
  padding: 0.3em 0.85em;
  border-radius: 100px;
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.03em;
  background: var(--clay-soft);
  color: var(--clay-dark);
}
.offer-card__badge--moss { background: var(--moss-soft); color: var(--moss); }
.offer-card h3 { margin-bottom: 0; }
.offer-card__meta { color: var(--text-soft); font-size: var(--step--1); margin: 0; }
.offer-price { font-family: var(--font-display); font-size: var(--step-2); color: var(--ink-900); margin: 0; }
.offer-card__note { font-size: var(--step--1); color: var(--text-soft); margin: 0; }
.offer-card__addon {
  font-size: var(--step--1);
  color: var(--text-soft);
  background: var(--bg-alt);
  border-radius: var(--radius);
  padding: 0.6em 0.8em;
  margin: 0;
}
.section--alt .offer-card__addon { background: var(--sand-200); }
.offer-card .btn { margin-top: auto; align-self: flex-start; }

.tier-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.tier-list li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 1rem;
  padding: 0.6em 0;
  border-bottom: 1px solid var(--line);
  font-size: var(--step--1);
  transition: background-color 0.3s var(--ease);
}
.tier-list li strong { font-family: var(--font-display); font-weight: 500; font-size: var(--step-0); color: var(--ink-900); white-space: nowrap; }
.tier-list li span { color: var(--text-soft); text-align: end; }
.tier-list li.is-past { opacity: 0.5; }
.tier-list li.is-past strong { text-decoration: line-through; }
.tier-list li.is-current {
  background: var(--clay-soft);
  margin-inline: -0.6rem;
  padding-inline: 0.6rem;
  border-radius: var(--radius);
  border-bottom-color: transparent;
}
.tier-list li.is-current strong { color: var(--clay-dark); }
.tier-flag { color: var(--clay-dark); font-weight: 700; }

/* ---------- 11. פוטר ---------- */
.site-footer {
  background: var(--bg-deep);
  color: rgba(244, 236, 225, 0.72);
  padding-block: clamp(3rem, 2.5rem + 3vw, 5rem) 2rem;
  font-size: var(--step--1);
}
.footer-grid {
  display: grid;
  gap: 2.5rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  padding-bottom: 2.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.site-footer h4 {
  font-family: var(--font-body);
  font-size: var(--step--1);
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--clay-soft);
  margin-bottom: 1rem;
}
.site-footer .brand { color: var(--sand-50); font-size: var(--step-2); }
.site-footer ul { list-style: none; padding: 0; margin: 0; }
.site-footer li { margin-bottom: 0.6rem; }
.site-footer a { text-decoration: none; transition: color 0.2s; }
.site-footer a:hover { color: var(--sand-50); text-decoration: underline; }
.footer-bottom {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.5rem;
  justify-content: space-between;
  align-items: center;
  padding-top: 1.75rem;
  color: rgba(244, 236, 225, 0.45);
}
.social { display: flex; gap: 1rem; }
.social a { font-size: 1.15rem; }

/* וואטסאפ צף */
.wa-float {
  position: fixed;
  inset-inline-end: 1.1rem;
  bottom: 1.1rem;
  z-index: 80;
  width: 54px; height: 54px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: #1f8f5f;
  color: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
  text-decoration: none;
  transition: transform 0.25s var(--ease);
}
.wa-float:hover { transform: scale(1.08); }
.wa-float svg { width: 27px; height: 27px; fill: currentColor; }

/* ---------- 12. אנימציות ונגישות ---------- */
[data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
  transition-delay: var(--reveal-delay, 0s);
}
[data-reveal].is-visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  [data-reveal] { opacity: 1; transform: none; }
  .hero__media { animation: none; }
}

@media print {
  .site-header, .wa-float, .scroll-hint, .site-footer { display: none; }
  body { background: #fff; color: #000; }
}

/* ============================================================
   13. שפה חזותית לעמודי האירועים
   ------------------------------------------------------------
   בהשראת האתר הקודם בוויקס: hero ממורכז עם וידאו, טקסט שירי
   במרכז, תמונות ענק בגלישה מלאה שזזות לאט בגלילה (parallax),
   פס תמונות רץ על רקע חול, צוות בעיגולים, מחיר עם ענפים,
   וטופס על רקע חאקי ליד תמונה.
   ============================================================ */
:root {
  --tan: #C2B189;        /* רקע טופס/פס — נדגם מהאתר הקודם */
  --tan-light: #EDE1D3;
  --tan-ink: #3E3524;
}

/* ---- hero ממורכז ---- */
.hero--center { align-items: center; text-align: center; }
.hero--center .hero__content {
  margin-inline: auto;
  max-width: 46rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-block: clamp(6rem, 5rem + 6vw, 10rem) clamp(4rem, 3rem + 4vw, 7rem);
}
.hero--center .hero__title {
  font-size: clamp(3rem, 2rem + 6vw, 7rem);
  letter-spacing: -0.02em;
  margin-bottom: 0.15em;
}
.hero__tagline {
  font-size: var(--step-2);
  font-weight: 400;
  color: rgba(255, 255, 255, 0.92);
  margin-bottom: 1.4rem;
}
.hero--center .hero__meta { justify-content: center; }
.hero--center .countdown { justify-content: center; }
.hero--center .btn-row { justify-content: center; }
.hero--center .hero__scrim {
  background:
    radial-gradient(ellipse at center, rgba(20, 17, 14, 0.25) 0%, rgba(20, 17, 14, 0.55) 70%),
    linear-gradient(to top, rgba(20, 17, 14, 0.6) 0%, rgba(20, 17, 14, 0) 40%);
}

/* ---- קישוט אינסוף ---- */
.ornament {
  display: block;
  width: 108px;
  height: auto;
  margin: 0 auto 1.6rem;
  color: var(--clay);
  opacity: 0.85;
}
.section--deep .ornament { color: var(--clay-soft); }

/* ---- טקסט שירי במרכז ---- */
.poem {
  max-width: 34rem;
  margin-inline: auto;
  text-align: center;
  font-size: var(--step-1);
  line-height: 1.9;
  color: var(--ink-700);
}
.poem p { margin-bottom: 0.2em; }
.poem .btn { margin-top: 2rem; }

/* ---- פס תמונה בגלישה מלאה עם parallax ---- */
.band {
  position: relative;
  height: clamp(340px, 72vh, 820px);
  overflow: hidden;
  background: var(--sand-200);
}
.band img {
  position: absolute;
  inset-inline: 0;
  top: -20%;
  width: 100%;
  height: 140%;
  object-fit: cover;
  will-change: transform;
}
.band--short { height: clamp(260px, 50vh, 560px); }
/* בנייד: פס בפרופורציה של התמונה, בלי הגדלה ובלי parallax */
@media (max-width: 759px) {
  .band, .band--short { height: auto; aspect-ratio: 3 / 2; }
  .band img { top: 0; height: 100%; }
  /* וידאו רוחבי על מסך אנכי מוגדל פי 3 ויוצא מטושטש — בנייד מציגים את התמונה.
     כשיהיה סרטון מדבר אנכי, אפשר להחזיר. */
  .hero__yt { display: none; }
}
.band__caption {
  position: absolute;
  inset-inline: 0;
  bottom: clamp(1.5rem, 1rem + 3vw, 3.5rem);
  text-align: center;
  color: #fff;
  font-family: var(--font-display);
  font-size: var(--step-3);
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.45);
  padding-inline: 1.25rem;
}

/* ---- שני טורים סימטריים ---- */
.duo {
  display: grid;
  gap: clamp(2.5rem, 2rem + 3vw, 5rem);
  grid-template-columns: 1fr;
  text-align: center;
}
@media (min-width: 820px) {
  .duo { grid-template-columns: 1fr 1fr; }
}
.duo h3 { font-size: var(--step-2); margin-bottom: 1rem; }
.duo p, .duo li { color: var(--ink-700); }
.duo ul { list-style: none; padding: 0; }
.duo li { margin-bottom: 0.55em; }
.solo { max-width: 36rem; margin: clamp(3rem, 2rem + 3vw, 5rem) auto 0; text-align: center; }
.solo h3 { font-size: var(--step-2); margin-bottom: 1rem; }
.solo p { color: var(--ink-700); }

.cta-center { text-align: center; margin-top: clamp(2.5rem, 2rem + 2vw, 4rem); }
.cta-note {
  display: block;
  margin-bottom: 1.25rem;
  color: var(--clay-dark);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

/* ---- פס תמונות רץ ---- */
.filmstrip {
  background: var(--tan-light);
  padding-block: clamp(1.25rem, 1rem + 1vw, 2rem) clamp(2rem, 1.5rem + 2vw, 3rem);
  position: relative;
}
/* פס תמונות שגוללים בחיצים או באצבע; לחיצה על תמונה פותחת אותה בגדול */
.filmstrip__track {
  display: flex;
  gap: 0.9rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  padding-inline: clamp(1rem, 4vw, 3.5rem);
}
.filmstrip__track::-webkit-scrollbar { display: none; }
.filmstrip__track img {
  flex: 0 0 auto;
  /* גובה קבוע ורוחב לפי התמונה — רואים את כל התמונה, בלי חיתוך */
  height: clamp(260px, 32vw, 440px);
  width: auto;
  max-width: 85vw;
  object-fit: cover;
  display: block;
  scroll-snap-align: center;
  cursor: zoom-in;
}
.filmstrip__arrow {
  position: absolute;
  top: calc(clamp(1.25rem, 1rem + 1vw, 2rem) + clamp(260px, 32vw, 440px) / 2);
  translate: 0 -50%;
  z-index: 2;
  width: 46px; height: 46px;
  display: grid; place-items: center;
  border: 0; border-radius: 50%;
  background: rgba(251, 247, 241, 0.92);
  color: var(--clay-dark);
  font-size: 1.2rem;
  cursor: pointer;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
}
.filmstrip__arrow:hover { background: #fff; }
.filmstrip__arrow--prev { inset-inline-start: clamp(0.5rem, 2vw, 1.5rem); }
.filmstrip__arrow--next { inset-inline-end: clamp(0.5rem, 2vw, 1.5rem); }
.filmstrip .cta-center { margin-top: clamp(1.5rem, 1rem + 1.5vw, 2.5rem); }

/* ---- אנשים בעיגולים ---- */
.people {
  display: grid;
  gap: clamp(2.5rem, 2rem + 3vw, 4.5rem);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  text-align: center;
}
.people .team-photo { width: clamp(150px, 14vw, 200px); height: clamp(150px, 14vw, 200px); border: 0; box-shadow: none; }
.people h3 { color: var(--clay-dark); font-size: var(--step-2); margin-bottom: 0.75rem; }
.people p { color: var(--ink-700); max-width: 30ch; margin-inline: auto; }

/* ---- מחיר עם ענפים ---- */
.pricing {
  position: relative;
  max-width: 40rem;
  margin-inline: auto;
  text-align: center;
}
.pricing h2 { color: var(--clay-dark); }
.pricing .tier-list { text-align: start; margin-block: 1.5rem; }
.pricing .sprig { width: 70px; top: 0; }
.pricing .sprig--a { inset-inline-start: -7rem; transform: rotate(-25deg); }
.pricing .sprig--b { inset-inline-end: -7rem; top: auto; bottom: 1rem; transform: scaleX(-1) rotate(-25deg); }
@media (max-width: 1000px) { .pricing .sprig { display: none; } }
.pricing__aid { color: var(--text-soft); margin-top: 1.5rem; }
.section:has(.pricing) { position: relative; }

/* ---- טופס ליד תמונה, על חאקי ---- */
.contact-split {
  display: grid;
  grid-template-columns: 1fr;
  background: var(--tan);
}
@media (min-width: 900px) { .contact-split { grid-template-columns: 1fr 1fr; } }
.contact-split__media { position: relative; min-height: 320px; }
.contact-split__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 70%; }
.contact-split__body {
  padding: clamp(2.5rem, 2rem + 3vw, 5rem) clamp(1.5rem, 1rem + 4vw, 5rem);
  color: var(--tan-ink);
}
.contact-split__body h2 { color: var(--tan-ink); }
.contact-split__body .lead { color: rgba(62, 53, 36, 0.8); }
.contact-split .field label { color: rgba(62, 53, 36, 0.85); }
.contact-split .field input,
.contact-split .field select,
.contact-split .field textarea {
  color: var(--tan-ink);
  border-bottom-color: rgba(62, 53, 36, 0.55);
}
.contact-split .field textarea { border-color: rgba(62, 53, 36, 0.4); background: rgba(255, 255, 255, 0.18); }
.contact-split .field input:focus,
.contact-split .field select:focus { border-bottom-color: var(--tan-ink); box-shadow: 0 1px 0 0 var(--tan-ink); }
.contact-split .btn--primary { background: var(--tan-ink); box-shadow: none; }
.contact-split .btn--primary:hover { background: #221c12; }
.contact-split .btn--ghost { border-color: rgba(62, 53, 36, 0.45); color: var(--tan-ink); }
.contact-split .checkbox { color: var(--tan-ink); }
.contact-split .form-panel { padding-top: 1.25rem; }

/* ---- טופס יצירת קשר בסוף הדף, על חאקי ---- */
.contact-form { background: var(--tan); color: var(--tan-ink); }
.contact-form h2 { color: var(--tan-ink); }
.contact-form .field label { color: rgba(62, 53, 36, 0.85); }
.contact-form .field input,
.contact-form .field select,
.contact-form .field textarea {
  color: var(--tan-ink);
  border-bottom-color: rgba(62, 53, 36, 0.55);
}
.contact-form .field textarea { border-color: rgba(62, 53, 36, 0.4); background: rgba(255, 255, 255, 0.18); }
.contact-form .field input:focus,
.contact-form .field select:focus { border-bottom-color: var(--tan-ink); box-shadow: 0 1px 0 0 var(--tan-ink); }
.contact-form .btn--primary { background: var(--tan-ink); box-shadow: none; }
.contact-form .btn--primary:hover { background: #221c12; }
.contact-form .btn--ghost { border-color: rgba(62, 53, 36, 0.45); color: var(--tan-ink); }
.contact-form .checkbox { color: var(--tan-ink); }
.contact-form .form-panel { padding-top: 1.25rem; }

.btn--lg { padding: 1.1rem 2.6rem; font-size: var(--step-1); }

/* ---- "רוצים להישאר מעודכנים" מעל הפוטר ---- */
.stay {
  background: var(--tan-light);
  text-align: center;
  padding-block: clamp(3rem, 2.5rem + 3vw, 5rem);
}
.stay h2 { font-size: var(--step-3); color: var(--ink-800); margin-bottom: 1.5rem; }
.stay__row { display: flex; align-items: center; justify-content: center; gap: clamp(1rem, 0.5rem + 3vw, 3rem); }
.stay__row .ornament { margin: 0; width: clamp(60px, 8vw, 110px); }
@media (max-width: 560px) { .stay__row .ornament { display: none; } }

/* ---- ציר עונות (המסע השנתי) ---- */
.seasons {
  display: grid;
  gap: 3px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
}
.season {
  position: relative;
  min-height: clamp(360px, 46vh, 520px);
  color: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(1.25rem, 1rem + 1vw, 2rem);
  text-decoration: none;
}
.season img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform 1.2s var(--ease); }
.season::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(to top, rgba(20, 17, 14, 0.82), rgba(20, 17, 14, 0.05) 65%); }
.season { isolation: isolate; }
.season:hover img { transform: scale(1.05); }
.season__tag { font-size: var(--step--1); font-weight: 700; letter-spacing: 0.1em; color: var(--clay-soft); margin-bottom: 0.3rem; }
.season h3 { color: #fff; font-size: var(--step-3); margin-bottom: 0.2rem; }
.season p { color: rgba(255, 255, 255, 0.85); margin: 0; font-size: var(--step--1); }

@media (prefers-reduced-motion: reduce) {
  .filmstrip__track { scroll-behavior: auto; }
  .band img { top: 0; height: 100%; transform: none !important; }
}

/* וידאו יוטיוב כרקע ל-hero: מכסה את כל השטח (כמו object-fit: cover)
   ולא מקבל לחיצות. היחס 16:9 — רוחב/גובה מינימליים לפי המסך. */
.hero__yt {
  position: absolute;
  top: 50%;
  left: 50%;
  width: max(100%, calc(100svh * 16 / 9));
  height: max(100%, calc(100vw * 9 / 16));
  transform: translate(-50%, -50%);
  border: 0;
  pointer-events: none;
}
.hero__media:has(.hero__yt) { animation: none; }
@media (prefers-reduced-motion: reduce) { .hero__yt { display: none; } }

/* ענף זית מצויר (מחליף את העיגולים על קו) */
.sprig .st { fill: none; stroke: currentColor; stroke-width: 1.2; stroke-linecap: round; }
.sprig .tw { fill: none; stroke: currentColor; stroke-width: 0.8; }
.sprig .lf { fill: currentColor; fill-opacity: 0.14; stroke: currentColor; stroke-width: 0.9; }
.sprig .rib { fill: none; stroke: currentColor; stroke-width: 0.55; opacity: 0.7; }
.sprig .ol { fill: currentColor; fill-opacity: 0.5; stroke: currentColor; stroke-width: 0.7; }
.sprig { opacity: 0.8; }
.pricing .sprig { width: 84px; }

/* ---- משתתפים מספרים: תמונה לצד הטקסט ---- */
.voices { display: grid; gap: clamp(3rem, 2rem + 4vw, 6rem); }
.voice {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.5rem, 1rem + 3vw, 4.5rem);
  align-items: center;
}
@media (min-width: 820px) {
  .voice { grid-template-columns: 5fr 6fr; }
  .voice:nth-child(even) > figure { order: 2; }
}
.voice figure { margin: 0; aspect-ratio: 3 / 2; overflow: hidden; background: var(--sand-200); }
.voice figure img { width: 100%; height: 100%; object-fit: cover; }
.voice blockquote { margin: 0; }
.voice blockquote p {
  font-family: var(--font-display);
  font-size: var(--step-2);
  line-height: 1.55;
  color: var(--ink-800);
}
.voice blockquote p::before { content: '״'; color: var(--clay); margin-inline-end: 0.1em; }
.voice cite {
  display: block;
  margin-top: 1.25rem;
  font-style: normal;
  font-size: var(--step--1);
  letter-spacing: 0.08em;
  color: var(--clay-dark);
}

/* ---- קרוסלת עדויות: עדות אחת בכל פעם + חיצי מעבר ---- */
/* כל העדויות יושבות באותו תא, כך שגובה האזור קבוע (לפי העדות הארוכה)
   ולא קופץ במעבר. התמונה נמתחת לגובה הזה, והטקסט ממורכז בו. */
.voices--carousel { display: grid; position: relative; }
.voices--carousel .voice {
  grid-area: 1 / 1;
  visibility: hidden;
  opacity: 0;
  align-items: stretch;
}
.voices--carousel .voice.is-active { visibility: visible; opacity: 1; animation: voice-in 0.6s ease both; }
.voices--carousel .voice blockquote { align-self: center; }
@media (min-width: 820px) {
  .voices--carousel .voice figure { aspect-ratio: auto; height: 100%; min-height: 340px; }
}
.voices--carousel .voice > figure { order: 0 !important; }
@keyframes voice-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.voices__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  margin-top: clamp(2rem, 1.5rem + 2vw, 3rem);
}
.voices__nav[hidden] { display: none; }
.voices__arrow {
  width: 44px; height: 44px;
  display: inline-grid; place-items: center;
  border: 1px solid var(--clay);
  border-radius: 50%;
  background: transparent;
  color: var(--clay-dark);
  font-size: 1.1rem;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.voices__arrow:hover, .voices__arrow:focus-visible { background: var(--clay); color: #fff; }
.voices__dots { display: flex; gap: 0.5rem; }
.voices__dot {
  width: 8px; height: 8px; padding: 0;
  border: 0; border-radius: 50%;
  background: var(--tan);
  cursor: pointer;
}
.voices__dot[aria-current="true"] { background: var(--clay-dark); }
@media (prefers-reduced-motion: reduce) { .voices--carousel .voice.is-active { animation: none; } }

/* ---- קצב אחיד: אותו רווח בין כותרת לטקסט ובין פסקאות ---- */
:root { --flow-head: 1rem; --flow-text: 0.8em; }
h2 { margin-bottom: var(--flow-head); }
h3, .duo h3, .solo h3, .people h3 { margin-bottom: calc(var(--flow-head) * 0.75); }
.section-head > :last-child { margin-bottom: 0; }
.section-head .eyebrow { margin-bottom: calc(var(--flow-head) * 0.75); }
.duo p, .solo p, .people p, .duo li, .pricing p, .lead { margin-bottom: var(--flow-text); }
.duo p:last-child, .solo p:last-child, .people p:last-child, .duo li:last-child { margin-bottom: 0; }
.duo ul { margin-bottom: 0; }
.people .arrow-link, .people .btn-row { margin-top: var(--flow-head); }
.ornament + h2 { margin-top: calc(var(--flow-head) * 0.5); }

/* ---- כותרת ראשית: גופן עדין עם ניקוד, הכול ממורכז ---- */
.hero--center .hero__title--fine {
  font-family: 'Amatic SC', var(--font-display);
  font-weight: 400;
  font-size: clamp(4rem, 2.6rem + 8vw, 9.5rem);
  letter-spacing: 0.01em;
  line-height: 1.2;
}
.hero--center .hero__tagline { line-height: 1.45; }
.hero__meta--stack { flex-direction: column; align-items: center; gap: 0.35rem; }
/* הפתיחה אחרי הווידאו — קרובה יותר, בלי רווח מיותר */
#intro { padding-top: clamp(2.5rem, 2rem + 3vw, 4.5rem); }
.section:has(> .sprig) { position: relative; overflow: hidden; }
.tier-list li.is-full { opacity: 0.75; }

/* תמונה ברוחב מלא מעל הטופס, והטופס ממורכז מתחתיה */
.contact-split--stacked { grid-template-columns: 1fr !important; }
.contact-split--stacked .contact-split__media {
  width: 100%;
  min-height: 0;
  height: clamp(240px, 42vw, 600px);
}
.contact-split--stacked .contact-split__media img { object-position: center 45%; }
.contact-split--stacked .contact-split__body {
  width: min(100%, 44rem);
  margin-inline: auto;
  padding-inline: clamp(1.25rem, 1rem + 2vw, 2.5rem);
}
.contact-split--stacked .contact-split__body > h2,
.contact-split--stacked .contact-split__body > .lead { text-align: center; }
.contact-split--stacked .contact-split__body > .lead { margin-inline: auto; max-width: 36rem; }
.contact-split--stacked .contact-split__body .btn-row { justify-content: center; }
.voice--long blockquote p { font-size: clamp(0.98rem, 0.9rem + 0.45vw, 1.2rem); line-height: 1.7; }

/* שתי תמונות זו לצד זו, ברוחב מלא */
.photo-pair { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 3px; }
.photo-pair img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
@media (max-width: 600px) { .photo-pair { grid-template-columns: 1fr; } }

/* ---- גלריה: לשוניות תמונות/סרטונים + סרטונים שנטענים בלחיצה ---- */
.gallery-tabs { display: flex; justify-content: center; gap: 0.75rem; padding: 1.5rem 1rem 0; }
.gallery-tabs a {
  padding: 0.6rem 1.6rem; border: 1px solid var(--clay); border-radius: 2px;
  color: var(--clay-dark); text-decoration: none; font-weight: 600; letter-spacing: 0.04em;
}
.gallery-tabs a:hover { background: var(--clay); color: #fff; }
.video-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 1.25rem; }
.yt-facade, .yt-frame {
  position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; padding: 0;
  background: #1d1915 center / cover no-repeat; cursor: pointer;
}
.yt-facade::after {
  content: ''; position: absolute; inset: 50% auto auto 50%; translate: -50% -50%;
  width: 68px; height: 68px; border-radius: 50%;
  background: rgba(251, 247, 241, 0.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z' fill='%237D6636'/%3E%3C/svg%3E") center / 30px no-repeat;
  box-shadow: 0 4px 18px rgba(0,0,0,.3); transition: transform .2s;
}
.yt-facade:hover::after { transform: scale(1.08); }
.yt-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
/* פחות רווח בין העדויות לכפתור התשלום */
#voices { padding-bottom: clamp(2rem, 1.5rem + 2vw, 3rem); }
#register { padding-top: 0; }
#voices .voices__nav { margin-top: 1.5rem; }

.team-trio { margin: 0 0 clamp(2.5rem, 2rem + 2vw, 4rem); }
.team-trio img { width: 100%; aspect-ratio: 21 / 9; object-fit: cover; object-position: center 40%; display: block; }
@media (max-width: 700px) { .team-trio img { aspect-ratio: 3 / 2; } }

/* ---- הביוגרפיה של נדב בדף השיעורים ---- */
.bio__role {
  font-family: var(--font-display);
  font-size: var(--step-1);
  color: var(--clay-dark);
  letter-spacing: 0.04em;
  margin-top: -0.4em;
}
.bio {
  display: grid;
  gap: clamp(1.75rem, 1.25rem + 2vw, 2.75rem) clamp(2rem, 1.5rem + 3vw, 4.5rem);
  grid-template-columns: 1fr;
  max-width: 62rem;
  margin: clamp(2.5rem, 2rem + 2vw, 4rem) auto 0;
}
@media (min-width: 820px) { .bio { grid-template-columns: 1fr 1fr; } }
.bio h3 { color: var(--clay-dark); margin-bottom: 0.5rem; }
.bio p { color: var(--ink-700); margin-bottom: 0; }

/* חום כהה לכותרות — אותו גוון כמו כותרת המחיר, כהה יותר */
:root { --clay-deep: #5C4A27; }
h2[data-i18n="facil.title"],
.duo h3,
.solo h3 { color: var(--clay-deep); }
