/* ===========================================================
   ATMOSPHERE — מערכת העיצוב
   פלטת שנהב, בלי רקעים מתחלפים. ההפרדה בין סקשנים היא אוויר
   וקו זהב דק, ורק שלושה "עוגנים" כהים לאורך העמוד.
   =========================================================== */

:root {
  /* --- צבע --- */
  --ivory:      #FBF9F5;   /* רקע העמוד */
  --surface:    #FFFFFF;   /* כרטיסים */
  --ink:        #1A1815;   /* טקסט ראשי */
  --ink-soft:   #3D3833;   /* טקסט משני */
  --ink-faint:  #6E665D;   /* טקסט עזר */
  --gold:       #B08D4F;   /* אקצנט דקורטיבי בלבד: קווים, אייקונים, מסגרות */
  --gold-ink:   #6F5324;   /* זהב לטקסט — 6.8:1 על שנהב */
  --gold-lite:  #CFA970;   /* זהב על רקע כהה בלבד */
  --line:       #E6E0D6;
  --line-soft:  #F0EBE2;
  /* ירוק וואטסאפ מוכהה במכוון: על #25D366 המקורי טקסט לבן נותן 1.98:1 ונכשל בתקן.
     הגוון הזה עדיין נקרא מיד כ"וואטסאפ" (במיוחד עם הסמל) ועובר 4.6:1. */
  --wa:         #12873C;
  --wa-dark:    #0E6D30;

  /* --- טיפוגרפיה --- */
  --f-en:   'Cinzel', 'Frank Ruhl Libre', serif;
  --f-head: 'Frank Ruhl Libre', serif;
  --f-body: 'IBM Plex Sans Hebrew', system-ui, sans-serif;

  /* --- מבנה --- */
  --radius: 14px;
  --radius-sm: 10px;
  --shadow: 0 10px 30px rgba(40, 32, 24, .10);
  --shadow-soft: 0 4px 16px rgba(40, 32, 24, .07);
  --header-h: 62px;
  --pad-sec: clamp(30px, 5.5vw, 80px);
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-h) + 16px);
  -webkit-text-size-adjust: 100%;
  overflow-x: clip;
}

body {
  font-family: var(--f-body);
  font-size: 1.0625rem;
  line-height: 1.68;
  color: var(--ink);
  background: var(--ivory);
  -webkit-font-smoothing: antialiased;
  /* clip ולא hidden: חוסם גלישה אופקית בלי להפוך את body למיכל גלילה,
     כך שהפס העליון הקבוע ממשיך לעבוד */
  overflow-x: clip;
  /* הפס העליון קבוע, אז הדף מתחיל מתחתיו */
  padding-top: var(--header-h);
}

/* בעמוד הבית ההירו הכהה עולה עד קצה המסך והפס העליון שקוף מעליו */
body.header-clear { padding-top: 0; }

h1, h2, h3, h4 { font-family: var(--f-head); font-weight: 700; line-height: 1.28; }
a { color: inherit; }
img, svg { display: block; max-width: 100%; }
ul, ol { list-style: none; }
button { font: inherit; color: inherit; background: none; border: none; cursor: pointer; }

/* השם באנגלית תמיד ב-Cinzel, כמו האותיות שבלוגו */
.en {
  font-family: var(--f-en);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-weight: 600;
}

.container { width: 100%; max-width: 1140px; margin-inline: auto; padding-inline: 20px; }
.container.narrow { max-width: 840px; }

section { padding-block: var(--pad-sec); }

/* קו הפרדה דק בין סקשנים בהירים — במקום החלפת רקעים */
.hairline { border-top: 1px solid var(--line-soft); }

.sep-dot { color: var(--gold-ink); margin-inline: 7px; }
/* על רקע כהה הזהב-דיו כהה מדי, צריך את הגוון הבהיר */
.site-footer .sep-dot, .anchor-dark .sep-dot, .drawer .sep-dot { color: var(--gold-lite); }

/* ---------- דילוג לתוכן ---------- */
.skip-link {
  position: fixed; top: -70px; right: 16px; z-index: 400;
  background: var(--ink); color: var(--ivory);
  padding: 11px 22px; border-radius: var(--radius-sm);
  font-weight: 600; text-decoration: none;
  transition: top .2s ease;
}
.skip-link:focus { top: 12px; }

/* ---------- מיקוד מקלדת גלוי בכל האתר ---------- */
:focus-visible {
  outline: 3px solid var(--gold);
  outline-offset: 2px;
  border-radius: 4px;
}

/* ---------- כותרת סקשן ---------- */
.section-title {
  font-size: clamp(1.6rem, 4.4vw, 2.3rem);
  font-weight: 900;
  text-align: center;
  position: relative;
  padding-bottom: 17px;
  margin-bottom: clamp(24px, 4vw, 40px);
}
.section-title::after {
  content: "";
  position: absolute; bottom: 0; right: 50%;
  width: 58px; height: 2px; background: var(--gold);
  transform: translateX(50%) scaleX(0);
  transform-origin: center;
  transition: transform .8s ease .15s;
}
.section-title.in::after { transform: translateX(50%) scaleX(1); }
.section-lead {
  text-align: center; max-width: 60ch; margin: -12px auto clamp(26px, 4vw, 38px);
  color: var(--ink-soft);
}

/* ---------- כפתורים ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  padding: 13px 26px; border-radius: 999px;
  font-weight: 700; font-size: 1.02rem; text-decoration: none;
  border: 1px solid transparent;
  transition: background-color .22s ease, color .22s ease, border-color .22s ease, transform .22s ease;
}
.btn svg { width: 21px; height: 21px; flex-shrink: 0; }
.btn:hover { transform: translateY(-2px); }

.btn-wa { background: var(--wa); color: #fff; box-shadow: 0 6px 18px rgba(37,211,102,.30); }
.btn-wa:hover { background: var(--wa-dark); }

.btn-mail { background: var(--ink); color: var(--ivory); }
.btn-mail:hover { background: #322C26; }

.btn-gold { background: var(--gold); color: #241C10; }
.btn-gold:hover { background: #C29C5C; }

.btn-ghost { border-color: var(--gold); color: var(--gold-ink); }
.btn-ghost:hover { background: rgba(176,141,79,.10); }

.btn-lg { padding: 16px 32px; font-size: 1.1rem; }

/* קישור־כפתור קטן בתוך כרטיס */
.btn-more {
  align-self: flex-start; margin-top: 14px;
  border: 1px solid var(--gold); color: var(--gold-ink);
  border-radius: 999px; padding: 8px 18px;
  font-weight: 700; font-size: .92rem; text-decoration: none;
  transition: background-color .22s ease, color .22s ease;
}
.btn-more:hover { background: var(--gold); color: #fff; }

/* ===========================================================
   פס עליון — פס אחד שיורד עם הגלילה, וההמבורגר יושב בתוכו
   =========================================================== */
.site-header {
  /* fixed ולא sticky: הפס זמין תמיד, בכל גלילה, בלי תלות במיכלי overflow */
  position: fixed; top: 0; right: 0; left: 0; z-index: 200;
  background: rgba(251, 249, 245, .92);
  -webkit-backdrop-filter: saturate(1.4) blur(10px);
  backdrop-filter: saturate(1.4) blur(10px);
  border-bottom: 1px solid var(--line);
  transition: background-color .3s ease, border-color .3s ease;
}

/* מעל ההירו הכהה, לפני גלילה: שקוף עם הצללה עדינה, טקסט בהיר */
body.header-clear .site-header:not(.scrolled) {
  background: linear-gradient(180deg, rgba(16, 13, 10, .62), rgba(16, 13, 10, 0));
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-bottom-color: transparent;
}
body.header-clear .site-header:not(.scrolled) .header-brand .name { color: var(--gold-lite); }
body.header-clear .site-header:not(.scrolled) .header-nav > a { color: #F1EAE0; }
body.header-clear .site-header:not(.scrolled) .header-nav > a:hover { color: var(--gold-lite); border-bottom-color: var(--gold-lite); }
body.header-clear .site-header:not(.scrolled) .burger {
  background: rgba(255, 255, 255, .10);
  border-color: rgba(255, 255, 255, .30);
}
body.header-clear .site-header:not(.scrolled) .burger span { background: #F5EFE5; }
.header-inner {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  min-height: var(--header-h);
  padding-block: 8px;
  transition: min-height .28s ease, padding .28s ease;
}
.site-header.scrolled .header-inner { min-height: 52px; padding-block: 4px; }

.header-brand { display: flex; align-items: center; gap: 11px; text-decoration: none; }
.header-brand img { width: 42px; height: 42px; transition: width .28s ease, height .28s ease; }
.site-header.scrolled .header-brand img { width: 36px; height: 36px; }
.header-brand .name {
  font-family: var(--f-en); font-weight: 600; text-transform: uppercase;
  letter-spacing: .15em; font-size: .96rem; color: var(--gold-ink);
  white-space: nowrap;
}

.header-nav { display: flex; align-items: center; gap: 22px; }
.header-nav > a {
  text-decoration: none; font-weight: 600; font-size: .97rem;
  color: var(--ink-soft); padding-block: 5px;
  border-bottom: 1.5px solid transparent;
  transition: color .2s ease, border-color .2s ease;
}
.header-nav > a:hover { color: var(--gold-ink); border-bottom-color: var(--gold); }
.header-cta { padding: 9px 20px !important; font-size: .95rem !important; }

.header-tools { display: flex; align-items: center; gap: 10px; }

/* המבורגר — נשאר גלוי גם בדסקטופ, כי הוא שער לכל שאר העמודים */
.burger {
  width: 44px; height: 44px; border-radius: 10px;
  border: 1px solid var(--line);
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px;
  background: var(--surface);
  transition: border-color .2s ease;
}
.burger:hover { border-color: var(--gold); }
.burger span {
  display: block; width: 20px; height: 2px; border-radius: 2px;
  background: var(--ink); transition: transform .3s ease, opacity .25s ease;
}
body.drawer-open .burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
body.drawer-open .burger span:nth-child(2) { opacity: 0; }
body.drawer-open .burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ---------- מגירת הניווט ---------- */
.drawer-scrim {
  position: fixed; inset: 0; z-index: 240;
  background: rgba(26, 24, 21, .55);
  opacity: 0; visibility: hidden;
  transition: opacity .3s ease, visibility .3s ease;
}
body.drawer-open .drawer-scrim { opacity: 1; visibility: visible; }

/* המגירה יושבת בימין, כמקובל באתרים בעברית: נכנסת ויוצאת מקצה ימין.
   בגלל שהאתר RTL, פס הגלילה של הדפדפן בשמאל, ולכן צד ימין יציב
   גם כשהגלילה ננעלת בפתיחה — בלי קפיצות בסגירה. */
.drawer {
  position: fixed; top: 0; right: 0; z-index: 250;
  width: min(340px, 88vw); height: 100dvh;
  background: var(--ink); color: var(--ivory);
  padding: 26px 26px 32px;
  overflow-y: auto;
  transform: translateX(100%);
  box-shadow: -16px 0 44px rgba(0, 0, 0, .3);
  /* visibility ולא רק transform: מוציא את המגירה הסגורה מסדר ה-Tab
     ומונע ממנה ליצור גלישה אופקית בעמוד */
  visibility: hidden;
  transition: transform .34s cubic-bezier(.4, 0, .2, 1), visibility 0s linear .34s;
  display: flex; flex-direction: column; gap: 22px;
}
body.drawer-open .drawer {
  transform: translateX(0);
  visibility: visible;
  transition: transform .34s cubic-bezier(.4, 0, .2, 1), visibility 0s;
}

.drawer-head { display: flex; align-items: center; justify-content: space-between; }
.drawer-head img { width: 48px; height: 48px; }
.drawer-close { width: 40px; height: 40px; border-radius: 9px; border: 1px solid rgba(207,169,112,.4); color: var(--gold-lite); font-size: 1.5rem; line-height: 1; display: grid; place-items: center; }
.drawer-close:hover { background: rgba(207,169,112,.12); }

.drawer-group { display: flex; flex-direction: column; gap: 3px; }
.drawer-group h2 {
  font-family: var(--f-body); font-size: .78rem; font-weight: 700;
  letter-spacing: .09em; color: var(--gold-lite);
  text-transform: none; margin-bottom: 8px;
}
.drawer-group a {
  text-decoration: none; padding: 9px 0; font-size: 1.04rem; font-weight: 500;
  color: #EDE6DA; border-bottom: 1px solid rgba(255,255,255,.06);
  transition: color .2s ease, padding-inline-start .2s ease;
}
.drawer-group a:hover { color: var(--gold-lite); padding-inline-start: 5px; }

.drawer-foot { margin-top: auto; display: flex; flex-direction: column; gap: 11px; padding-top: 16px; border-top: 1px solid rgba(207,169,112,.28); }
.drawer-foot .btn { width: 100%; }
.drawer-phone { text-align: center; font-size: .95rem; color: #C4B8A6; text-decoration: none; }
.drawer-phone strong { color: var(--gold-lite); }

@media (max-width: 940px) {
  .header-nav { display: none; }
}
/* במסכים צרים אין מקום לשם לצד המדליון, והמדליון לבדו מזוהה מיד */
@media (max-width: 520px) {
  .header-brand .name { display: none; }
  .header-brand img { width: 40px; height: 40px; }
  .header-cta { padding: 8px 15px !important; font-size: .9rem !important; }
}

/* ===========================================================
   HERO — קולנועי: תמונה על כל המסך, שכבת פחם, והמדליון במרכז
   =========================================================== */
.hero {
  position: relative; padding: 0;
  min-height: 100svh;
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(165deg, #262019, #14110D);
  overflow: hidden;
  text-align: center;
}
.hero::before {
  content: ""; position: absolute; inset: 0;
  background: url("../img/hero.jpg") center 42% / cover no-repeat;
  animation: kenburns 20s ease-in-out infinite alternate;
  will-change: transform;
}
.hero::after {
  content: ""; position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at center 38%, rgba(207,169,112,.10), transparent 58%),
    linear-gradient(180deg, rgba(18,15,12,.80) 0%, rgba(18,15,12,.58) 42%, rgba(18,15,12,.88) 100%);
}
@keyframes kenburns { from { transform: scale(1); } to { transform: scale(1.08); } }
@media (prefers-reduced-motion: reduce) { .hero::before { animation: none; } }
html.a11y-noanim .hero::before { animation: none !important; }

.hero-inner {
  position: relative; z-index: 1;
  display: flex; flex-direction: column; align-items: center; gap: 16px;
  padding: calc(var(--header-h) + clamp(20px, 4vh, 44px)) 20px clamp(46px, 7vh, 72px);
  width: 100%; max-width: 860px; margin-inline: auto;
}

.hero-badge {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid rgba(207,169,112,.65); color: var(--gold-lite);
  border-radius: 999px; padding: 6px 17px;
  font-size: .87rem; font-weight: 600;
  background: rgba(18,15,12,.35);
}
.hero-badge::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--gold-lite); }

/* המדליון הוא הכוכב: גדול, עם הילת זהב עדינה */
.hero-logo {
  width: clamp(180px, 30vw, 296px); height: auto;
  filter: drop-shadow(0 0 30px rgba(207,169,112,.34)) drop-shadow(0 10px 28px rgba(0,0,0,.5));
}

.hero h1 {
  font-size: clamp(1.6rem, 4.6vw, 2.5rem);
  font-weight: 900; line-height: 1.24;
  color: #FFFFFF; max-width: 24ch;
  text-wrap: balance;
}
.hero h1 .en {
  display: block; color: var(--gold-lite);
  font-size: .5em; margin-bottom: 10px; letter-spacing: .34em;
  font-weight: 600;
}

.hero-sub { font-size: clamp(1.04rem, 2.4vw, 1.22rem); color: #EFE7D8; max-width: 52ch; }

.hero-meta { font-size: .95rem; color: #D8CDBA; }
.hero-meta a { color: var(--gold-lite); font-weight: 600; text-decoration: none; white-space: nowrap; }
.hero-meta a:hover { text-decoration: underline; }

.hero-ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 11px; margin-top: 8px; }
.hero .btn-ghost { border-color: rgba(207,169,112,.7); color: var(--gold-lite); }
.hero .btn-ghost:hover { background: rgba(207,169,112,.14); }

/* במסכים נמוכים (לפטופים) מכווצים מעט את המדליון כדי שההירו ייכנס במסך */
@media (min-width: 620px) and (max-height: 820px) {
  .hero-logo { width: clamp(170px, 27vh, 240px); }
  .hero-inner { gap: 12px; }
}

/* רמז גלילה עדין בתחתית ההירו */
.hero-scroll {
  position: absolute; bottom: 14px; right: 50%; transform: translateX(50%);
  z-index: 1; color: rgba(237,230,218,.75);
  display: grid; place-items: center; width: 44px; height: 44px;
  animation: heroNudge 2.6s ease-in-out infinite;
}
.hero-scroll svg { width: 26px; height: 26px; }
.hero-scroll:hover { color: var(--gold-lite); }
@keyframes heroNudge { 0%, 100% { transform: translateX(50%) translateY(0); } 50% { transform: translateX(50%) translateY(7px); } }
@media (prefers-reduced-motion: reduce) { .hero-scroll { animation: none; } }

/* ---------- מרקי ---------- */
.marquee {
  position: relative; overflow: hidden;
  background: var(--ink); color: var(--gold-lite);
  padding-block: 11px;
  border-block: 1px solid rgba(207,169,112,.3);
}
.marquee-track { display: flex; width: max-content; animation: marquee 42s linear infinite; }
.marquee-track span {
  white-space: nowrap; font-family: var(--f-head);
  font-size: .98rem; letter-spacing: .05em; padding-inline-end: 0;
}
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(50%); } }
body.marquee-paused .marquee-track { animation-play-state: paused; }

/* כפתור השהיה — חובה לפי WCAG 2.2.2 לתוכן שזז יותר מ-5 שניות */
.marquee-pause {
  position: absolute; inset-block: 0; inset-inline-end: 8px;
  width: 32px; display: grid; place-items: center;
  color: var(--gold-lite); background: linear-gradient(to left, var(--ink) 62%, transparent);
  padding-inline-start: 14px;
}
.marquee-pause svg { width: 15px; height: 15px; }
.marquee-pause .ico-play { display: none; }
body.marquee-paused .marquee-pause .ico-play { display: block; }
body.marquee-paused .marquee-pause .ico-pause { display: none; }

/* ===========================================================
   עוגן כהה — הסקשנים שנושאים את הקצב
   =========================================================== */
.anchor-dark {
  background: var(--ink); color: #EDE6DA;
  border-block: 1px solid rgba(207,169,112,.28);
}
.anchor-dark h2, .anchor-dark h3 { color: #FBF9F5; }
.anchor-dark .section-title::after { background: var(--gold-lite); }
.anchor-dark p { color: #D9D0C3; }

/* ---------- הפרדה מלאה ---------- */
.separation-grid { display: grid; gap: 30px; align-items: center; }
.separation h2 { font-size: clamp(1.55rem, 4.4vw, 2.15rem); font-weight: 900; color: var(--gold-lite); margin-bottom: 15px; }
.separation p { max-width: 56ch; }
.sep-points { margin-top: 22px; display: grid; gap: 14px; }
.sep-points li { display: flex; align-items: center; gap: 14px; font-weight: 600; font-size: 1.05rem; color: #EDE6DA; }
.sep-points li .icon-medal { width: 56px; height: 56px; border-color: rgba(207,169,112,.55); }

/* ---------- אייקוני המותג: מחקרי התנועה שהכין הלקוח ----------
   תמיד קטנים ותמיד עגולים, כהד לצורת המדליון. לא תמונות. */
.icon-medal {
  border-radius: 50%;
  border: 1px solid rgba(176,141,79,.5);
  background: #F6F2E9;
  object-fit: cover;
  box-shadow: 0 3px 12px rgba(40,32,24,.12);
  flex-shrink: 0;
}

.separation-art {
  border-radius: var(--radius); overflow: hidden;
  border: 1px solid rgba(207,169,112,.35);
  box-shadow: 0 14px 36px rgba(0,0,0,.34);
  background: #F3F0E9;
  /* מסגרת קבועה: כל תמונה שתיכנס תשב בה נקי, בלי תחושת חיתוך אקראי */
  aspect-ratio: 4 / 3;
}
.separation-art img { width: 100%; height: 100%; object-fit: cover; }

/* ===========================================================
   הסיפור של רון
   =========================================================== */
.story-grid { display: grid; gap: 28px; align-items: center; }
.story-photo {
  border-radius: var(--radius); overflow: hidden;
  border: 1px solid var(--line); box-shadow: var(--shadow);
  max-width: 380px; margin-inline: auto; width: 100%;
}
.story-photo img { width: 100%; height: auto; }
.story-body h2 { font-size: clamp(1.5rem, 4.2vw, 2.1rem); font-weight: 900; margin-bottom: 6px; }
.story-kicker {
  font-family: var(--f-body); font-size: .82rem; font-weight: 700;
  letter-spacing: .1em; color: var(--gold-ink); margin-bottom: 10px;
}
.story-body p { color: var(--ink-soft); margin-bottom: 13px; max-width: 56ch; }
.story-quote {
  font-family: var(--f-head); font-size: clamp(1.12rem, 3vw, 1.35rem); font-weight: 700;
  color: var(--gold-ink); border-inline-start: 3px solid var(--gold);
  padding-inline-start: 16px; margin-block: 18px;
}
.story-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }

/* ===========================================================
   כרטיסים
   =========================================================== */
.card {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius); box-shadow: var(--shadow-soft);
  overflow: hidden; display: flex; flex-direction: column;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.card:hover { transform: translateY(-4px); box-shadow: var(--shadow); border-color: rgba(176,141,79,.45); }

.card-media { position: relative; aspect-ratio: 16/9; background: linear-gradient(150deg, #2C2620, var(--ink)); }
.card-media img {
  width: 100%; height: 100%; object-fit: cover; position: relative;
  user-select: none; -webkit-user-drag: none;
}
.card-media .fallback { position: absolute; inset: 0; margin: auto; width: 54px; height: 54px; color: var(--gold); }

.card-body { padding: 20px 20px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.card-body h3 { font-size: 1.14rem; }
.card-body p { font-size: .96rem; color: var(--ink-soft); }

.gold-list { display: grid; gap: 7px; margin-top: auto; padding-top: 12px; border-top: 1px solid var(--line-soft); }
.gold-list li { position: relative; padding-inline-start: 21px; font-size: .93rem; font-weight: 600; }
.gold-list li::before {
  content: ""; position: absolute; inset-inline-start: 3px; top: .58em;
  width: 7px; height: 7px; border: 1.5px solid var(--gold); transform: rotate(45deg);
}

.halls-grid { display: grid; gap: 20px; }

/* ---------- הצוות ---------- */
.team-grid { display: grid; gap: 16px; }
.team-card {
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 26px 22px; text-align: center; box-shadow: var(--shadow-soft);
  transition: transform .28s ease, box-shadow .28s ease;
}
.team-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.team-icon { width: 78px; height: 78px; margin-inline: auto; margin-bottom: 13px; }
.team-card h3 { font-size: 1.1rem; margin-bottom: 8px; }
.team-card p { font-size: .94rem; color: var(--ink-soft); }
.team-summary {
  text-align: center; margin-top: 26px;
  font-family: var(--f-head); font-weight: 700;
  font-size: clamp(1.05rem, 2.8vw, 1.22rem); color: var(--gold-ink);
}

/* ---------- ציוד ומתקנים ---------- */
.equip-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 26px; }
.equip-card {
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 20px 16px; text-align: center; box-shadow: var(--shadow-soft);
}
.equip-icon { width: 68px; height: 68px; margin-inline: auto; margin-bottom: 11px; }
.equip-card h3 { font-size: 1.04rem; margin-bottom: 6px; }
.equip-card p { font-size: .9rem; color: var(--ink-soft); }

/* טולטיפ מילון הציוד */
.tip { border-bottom: 1px dotted var(--gold); cursor: help; position: relative; outline: none; }
.tip::after {
  content: attr(data-tip);
  position: absolute; bottom: calc(100% + 9px); right: 50%;
  transform: translateX(50%) translateY(5px);
  width: max-content; max-width: 230px;
  background: var(--ink); color: var(--ivory);
  font-size: .84rem; font-weight: 400; line-height: 1.5;
  padding: 10px 13px; border-radius: var(--radius-sm);
  border: 1px solid var(--gold);
  box-shadow: var(--shadow);
  opacity: 0; pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
  z-index: 30;
}
.tip:hover::after, .tip:focus-visible::after { opacity: 1; transform: translateX(50%) translateY(0); }

/* ---------- סוגי אימונים ---------- */
.chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; max-width: 720px; margin-inline: auto; }
.chips li {
  border: 1px solid var(--gold); background: var(--surface);
  border-radius: 999px; padding: 9px 19px;
  font-weight: 600; font-size: .96rem;
}

/* ---------- מונים + למה ---------- */
.counters {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
  max-width: 700px; margin: 0 auto clamp(26px, 4vw, 40px); text-align: center;
}
.counter-num {
  display: block; font-family: var(--f-head); font-weight: 900;
  font-size: clamp(1.9rem, 6vw, 3rem); color: var(--gold-ink);
  line-height: 1.1; font-variant-numeric: tabular-nums;
}
.counter-label { display: block; font-size: clamp(.82rem, 2.3vw, .98rem); font-weight: 600; color: var(--ink-soft); }

.why-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.why-grid li {
  display: flex; align-items: flex-start; gap: 11px;
  background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius-sm); padding: 14px 14px;
  font-size: .92rem; font-weight: 600; box-shadow: var(--shadow-soft);
}
.why-grid .num {
  flex-shrink: 0; width: 28px; height: 28px;
  display: grid; place-items: center;
  border: 1px solid var(--gold); border-radius: 50%;
  color: var(--gold-ink); font-family: var(--f-head); font-weight: 700; font-size: .92rem;
}

/* ---------- שעות ---------- */
.hours-table {
  width: 100%; border-collapse: collapse; background: var(--surface);
  border: 1px solid var(--line); border-radius: var(--radius);
  overflow: hidden; box-shadow: var(--shadow-soft);
}
.hours-table th, .hours-table td { text-align: right; padding: 14px 18px; font-size: .97rem; }
.hours-table thead th {
  background: var(--ink); color: var(--gold-lite);
  font-family: var(--f-head); font-size: 1.02rem;
}
.hours-table tbody tr + tr td { border-top: 1px solid var(--line-soft); }
.hours-table td:first-child { font-weight: 700; white-space: nowrap; }

/* ---------- הרשמה מוקדמת (עוגן כהה) ---------- */
.signup { text-align: center; }
.signup h2 { font-size: clamp(1.5rem, 4.2vw, 2.1rem); font-weight: 900; margin-bottom: 13px; }
.signup h2 .en { color: var(--gold-lite); }
.signup > .container > p { max-width: 52ch; margin-inline: auto; }
.plans { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-block: 26px; max-width: 560px; margin-inline: auto; }
.plan {
  border: 1px solid rgba(207,169,112,.5); border-radius: var(--radius);
  padding: 18px 14px; background: rgba(255,255,255,.04);
}
.plan h3 { font-size: 1.06rem; color: var(--gold-lite); margin-bottom: 4px; }
.plan p { font-size: .92rem; }
.signup-ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 11px; }

/* ---------- FAQ ---------- */
.faq-list { display: grid; gap: 10px; }
.faq-list details {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius); box-shadow: var(--shadow-soft); overflow: hidden;
}
.faq-list summary {
  list-style: none; cursor: pointer; padding: 16px 20px;
  font-family: var(--f-head); font-weight: 700; font-size: 1.04rem;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after {
  content: "+"; flex-shrink: 0; font-size: 1.45rem; line-height: 1;
  color: var(--gold); transition: transform .25s ease;
}
.faq-list details[open] summary { color: var(--gold-ink); }
.faq-list details[open] summary::after { transform: rotate(45deg); }
.faq-list details p {
  padding: 0 20px 18px; margin-top: 12px;
  border-top: 1px solid var(--line-soft); padding-top: 13px;
  color: var(--ink-soft); font-size: .97rem;
}

/* ---------- רצועת ציוד למכירה ---------- */
.forsale-strip {
  display: grid; gap: 0;
  border: 1px solid var(--gold); border-radius: var(--radius);
  overflow: hidden; background: var(--surface); box-shadow: var(--shadow-soft);
}
.forsale-strip img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 16/9; }
.forsale-text { padding: 24px 22px 26px; display: flex; flex-direction: column; gap: 9px; align-items: flex-start; }
.forsale-text h2 { font-size: 1.24rem; }
.forsale-text p { font-size: .96rem; color: var(--ink-soft); }

/* ---------- יצירת קשר ---------- */
.contact-grid { display: grid; gap: 28px; align-items: start; }
.contact-info .section-title { text-align: right; }
.contact-info .section-title::after { right: 0; transform: scaleX(0); transform-origin: right; }
.contact-info .section-title.in::after { transform: scaleX(1); }

.contact-line { display: flex; align-items: center; gap: 11px; font-size: 1.06rem; font-weight: 600; margin-bottom: 13px; }
.contact-line svg { width: 22px; height: 22px; color: var(--gold); flex-shrink: 0; }
.contact-line a { color: var(--ink); text-decoration-color: var(--gold); text-underline-offset: 3px; }
.contact-mail-note { font-size: .88rem; color: var(--ink-faint); margin-top: -4px; margin-bottom: 16px; }

/* ---------- העתקת כתובת מייל: גיבוי אמין לכפתור mailto ----------
   לא כל מחשב מוגדר עם אפליקציית מייל, אז ליד כל כפתור מייל יש
   כפתור העתקה שעובד תמיד ומאשר בטוסט. */
.btn-copy {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px dashed var(--gold); color: var(--gold-ink);
  background: transparent;
  border-radius: 999px; padding: 10px 18px;
  font-weight: 600; font-size: .93rem;
  transition: background-color .2s ease, border-color .2s ease;
}
.btn-copy:hover { background: rgba(176,141,79,.10); border-style: solid; }
.btn-copy svg { width: 17px; height: 17px; flex-shrink: 0; }
.anchor-dark .btn-copy, .drawer .btn-copy { color: var(--gold-lite); border-color: rgba(207,169,112,.6); }

.copy-toast {
  position: fixed; bottom: 92px; right: 50%;
  transform: translateX(50%) translateY(10px);
  background: var(--ink); color: var(--ivory);
  border: 1px solid var(--gold);
  padding: 12px 22px; border-radius: 999px;
  font-weight: 600; font-size: .96rem;
  box-shadow: var(--shadow); z-index: 500;
  opacity: 0; pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
}
.copy-toast.show { opacity: 1; transform: translateX(50%) translateY(0); }

.contact-ctas { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 26px; }

.contact-sub { font-size: 1.12rem; margin-bottom: 12px; }
.nav-buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.btn-nav {
  display: inline-flex; align-items: center; gap: 9px;
  background: var(--surface); color: var(--ink);
  border: 1px solid var(--line); border-radius: 999px;
  padding: 10px 20px; font-weight: 700; font-size: .96rem; text-decoration: none;
  transition: border-color .22s ease, transform .22s ease, box-shadow .22s ease;
}
.btn-nav:hover { border-color: var(--gold); transform: translateY(-2px); box-shadow: var(--shadow-soft); }
.btn-nav svg, .btn-nav img { width: 21px; height: 21px; flex-shrink: 0; }
.btn-nav .pin { color: var(--gold); }

/* המפה פתוחה תמיד, בלי שלב לחיצה */
.map-shell {
  position: relative; border: 1px solid var(--line); border-radius: var(--radius);
  overflow: hidden; box-shadow: var(--shadow-soft); background: #EDE9E1;
  aspect-ratio: 4/3;
}
.map-shell iframe { width: 100%; height: 100%; border: 0; display: block; }

/* שמות מותגים לועזיים בתוך טקסט עברי */
.en-name { direction: ltr; unicode-bidi: isolate; letter-spacing: .02em; }

/* ===========================================================
   פוטר
   =========================================================== */
.site-footer {
  background: var(--ink); color: #C9C0B4;
  padding-block: 42px 104px; text-align: center;
}
.footer-inner { display: flex; flex-direction: column; align-items: center; gap: 15px; }
.footer-inner img { width: 76px; height: 76px; }
.footer-name { font-family: var(--f-en); font-weight: 600; letter-spacing: .18em; color: var(--gold-lite); font-size: 1.05rem; }
.footer-sum { max-width: 62ch; font-size: .95rem; }
.footer-meta { font-size: .92rem; }
.footer-meta a { color: var(--gold-lite); text-decoration: none; font-weight: 600; }
.footer-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 14px; font-size: .9rem; }
.footer-links a { color: #C9C0B4; text-decoration: none; }
.footer-links a:hover { color: var(--gold-lite); text-decoration: underline; }
.footer-legal { font-size: .82rem; color: #8C8478; }

/* ===========================================================
   כפתורים צפים — וואטסאפ שמאל, נגישות ימין
   =========================================================== */
/* מיקום פיזי בכוונה: האתר כולו RTL, ו-inset-inline מתהפך ומחליף בין השניים.
   וואטסאפ תמיד שמאל, נגישות תמיד ימין. */
.float-wa {
  position: fixed; bottom: 18px; left: 18px; z-index: 150;
  width: 56px; height: 56px; border-radius: 50%;
  background: var(--wa); color: #fff;
  display: grid; place-items: center;
  box-shadow: 0 8px 22px rgba(37,211,102,.42);
  transition: transform .2s ease, background-color .2s ease;
}
.float-wa svg { width: 30px; height: 30px; }
.float-wa:hover { background: var(--wa-dark); transform: scale(1.07); }

.a11y { position: fixed; bottom: 18px; right: 18px; z-index: 160; }
.a11y-btn {
  width: 52px; height: 52px; border-radius: 50%;
  background: var(--surface); border: 2px solid var(--ink);
  display: grid; place-items: center;
  box-shadow: 0 8px 22px rgba(40,32,24,.28);
  transition: transform .2s ease;
}
.a11y-btn:hover { transform: scale(1.07); }
.a11y-btn svg { width: 28px; height: 28px; color: var(--ink); }

.a11y-panel {
  position: absolute; bottom: 62px; right: 0;
  width: 264px; background: var(--surface);
  border: 1px solid var(--line); border-radius: var(--radius);
  box-shadow: 0 16px 40px rgba(40,32,24,.24);
  padding: 16px;
}
.a11y-panel[hidden] { display: none; }
.a11y-panel h2 { font-size: 1.02rem; margin-bottom: 11px; }
.a11y-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.a11y-actions button {
  border: 1px solid var(--line); border-radius: var(--radius-sm);
  padding: 9px 6px; font-size: .84rem; font-weight: 600;
  background: var(--ivory);
  transition: border-color .18s ease, background-color .18s ease;
}
.a11y-actions button:hover { border-color: var(--gold); }
.a11y-actions button[aria-pressed="true"] { background: var(--gold); color: #fff; border-color: var(--gold); }
.a11y-reset { grid-column: 1 / -1; margin-top: 3px; }
.a11y-statement { display: block; margin-top: 11px; font-size: .84rem; color: var(--gold-ink); text-align: center; }

/* ===========================================================
   מצבי רכיב הנגישות
   =========================================================== */
html.a11y-fs1 body { font-size: 1.18rem; }
html.a11y-fs2 body { font-size: 1.34rem; }

html.a11y-contrast { --ivory: #FFFFFF; --surface: #FFFFFF; --ink: #000000; --ink-soft: #000000; --ink-faint: #1A1A1A; --gold-ink: #4A3510; --line: #000000; --line-soft: #555555; }
html.a11y-contrast body { background: #fff; color: #000; }
html.a11y-contrast .card, html.a11y-contrast .team-card, html.a11y-contrast .equip-card,
html.a11y-contrast .why-grid li, html.a11y-contrast .faq-list details { border-width: 2px; box-shadow: none; }
html.a11y-contrast .anchor-dark, html.a11y-contrast .site-footer, html.a11y-contrast .drawer,
html.a11y-contrast .marquee { background: #000; color: #fff; }
html.a11y-contrast .anchor-dark p, html.a11y-contrast .site-footer, html.a11y-contrast .sep-points li { color: #fff; }
/* בניגודיות מוגברת ההירו הופך לשחור מלא, בלי תמונה ובלי שקיפויות */
html.a11y-contrast .hero { background: #000; }
html.a11y-contrast .hero::before, html.a11y-contrast .hero::after { display: none; }
html.a11y-contrast .hero-sub, html.a11y-contrast .hero-meta { color: #fff; }
html.a11y-contrast .site-header { background: #fff; border-bottom: 2px solid #000; }
html.a11y-contrast body.header-clear .site-header:not(.scrolled) { background: #fff; }
html.a11y-contrast body.header-clear .site-header:not(.scrolled) .header-nav > a { color: #000; }
html.a11y-contrast body.header-clear .site-header:not(.scrolled) .burger { background: #fff; border-color: #000; }
html.a11y-contrast body.header-clear .site-header:not(.scrolled) .burger span { background: #000; }

html.a11y-gray { filter: grayscale(1); }

html.a11y-links a:not(.btn):not(.btn-nav):not(.btn-more) {
  text-decoration: underline !important;
  text-underline-offset: 3px;
  font-weight: 700;
}
html.a11y-links .btn, html.a11y-links .btn-nav, html.a11y-links .btn-more { outline: 2px solid var(--gold); outline-offset: 2px; }

html.a11y-readable, html.a11y-readable body,
html.a11y-readable h1, html.a11y-readable h2, html.a11y-readable h3, html.a11y-readable h4,
html.a11y-readable .en, html.a11y-readable .counter-num, html.a11y-readable .section-title {
  font-family: Arial, "Segoe UI", sans-serif !important;
  letter-spacing: normal !important;
}

html.a11y-noanim *, html.a11y-noanim *::before, html.a11y-noanim *::after {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}
html.a11y-noanim .reveal { opacity: 1 !important; transform: none !important; }
html.a11y-noanim .section-title::after { transform: translateX(50%) scaleX(1) !important; }

/* ===========================================================
   אנימציות חשיפה
   =========================================================== */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
  .marquee-track { animation: none; }
  .section-title::after { transform: translateX(50%) scaleX(1); transition: none; }
  .contact-info .section-title::after { transform: scaleX(1); }
  * { transition: none !important; }
}

/* ===========================================================
   עמודים פנימיים: משפטי, סיפור, ערכים, ציוד, שגיאה
   =========================================================== */
.page-head { padding-block: clamp(32px, 5vw, 54px) clamp(20px, 3vw, 30px); text-align: center; }
.page-head h1 { font-size: clamp(1.75rem, 5vw, 2.5rem); font-weight: 900; }
.page-head .kicker {
  font-family: var(--f-body); font-size: .82rem; font-weight: 700;
  letter-spacing: .1em; color: var(--gold-ink); margin-bottom: 8px;
}
.page-head .rule { width: 58px; height: 2px; background: var(--gold); margin: 14px auto 0; }

.prose { padding-bottom: clamp(40px, 6vw, 72px); }
.prose h2 {
  font-size: clamp(1.2rem, 3.2vw, 1.5rem); font-weight: 700;
  margin-top: 30px; margin-bottom: 10px; color: var(--ink);
}
.prose h3 { font-size: 1.1rem; margin-top: 22px; margin-bottom: 7px; }
.prose p { margin-bottom: 13px; color: var(--ink-soft); }
.prose ul { margin: 0 0 15px; display: grid; gap: 7px; }
.prose ul li { position: relative; padding-inline-start: 21px; color: var(--ink-soft); }
.prose ul li::before {
  content: ""; position: absolute; inset-inline-start: 3px; top: .62em;
  width: 7px; height: 7px; border: 1.5px solid var(--gold); transform: rotate(45deg);
}
/* לא לצבוע כפתורים: הם מביאים צבע טקסט משלהם ו-.prose a גובר עליו בסלקטיביות */
.prose a:not(.btn):not(.back-home) { color: var(--gold-ink); text-underline-offset: 3px; }
.prose .updated { font-size: .9rem; color: var(--ink-faint); margin-bottom: 20px; }
.prose .figure {
  border-radius: var(--radius); overflow: hidden; border: 1px solid var(--line);
  box-shadow: var(--shadow-soft); margin-block: 22px;
}
.prose .figure img { width: 100%; height: auto; }
/* דיוקן לא צריך למלא את כל רוחב העמוד */
.prose .figure-portrait { max-width: 420px; margin-inline: auto; }
.back-home { display: inline-block; margin-top: 26px; font-weight: 700; color: var(--gold-ink); text-decoration: none; }
.back-home:hover { text-decoration: underline; }

/* עמוד "בקרוב" ו-404 */
.mini-page {
  min-height: calc(100dvh - var(--header-h) - 260px);
  display: flex; align-items: center; text-align: center;
  padding-block: clamp(44px, 7vw, 84px);
}
.mini-inner { display: flex; flex-direction: column; align-items: center; gap: 18px; }
.mini-inner > img { width: clamp(120px, 24vw, 168px); height: auto; }
.mini-icons { display: flex; gap: clamp(18px, 5vw, 36px); margin-block: 4px; }
.mini-icons svg { width: clamp(38px, 7vw, 50px); height: clamp(38px, 7vw, 50px); color: var(--gold); animation: float 3.6s ease-in-out infinite; }
.mini-icons svg:nth-child(2) { animation-delay: .55s; }
.mini-icons svg:nth-child(3) { animation-delay: 1.1s; }
@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@media (prefers-reduced-motion: reduce) { .mini-icons svg { animation: none; } }
.mini-inner h1 { font-size: clamp(1.6rem, 5vw, 2.4rem); font-weight: 900; }
.mini-inner p { max-width: 46ch; color: var(--ink-soft); }
.mini-ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 11px; margin-top: 6px; }

/* ===========================================================
   רספונסיביות
   =========================================================== */

/* --- נייד: מקצרים את העמוד בלי לוותר על תוכן --- */
@media (max-width: 619px) {
  /* שלושת האולמות: קרוסלה יציבה עם הצצה לכרטיס הבא, נקודות וחצים.
     touch-action מפורש: החלקה אנכית שייכת לעמוד, אופקית לקרוסלה —
     הגלילה של הדף לעולם לא נתקעת מעל הכרטיסים. */
  .halls-scroller {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 84%;
    gap: 13px;
    overflow-x: auto;
    touch-action: pan-x pan-y;
    scroll-snap-type: x mandatory;
    margin-inline: -20px;
    padding: 2px 20px 6px;
    scroll-padding-inline-start: 20px;
    scrollbar-width: none;
  }
  .halls-scroller::-webkit-scrollbar { display: none; }
  .halls-scroller > .card { scroll-snap-align: start; }

  /* כרטיסי הצוות נהיים שורות אופקיות קומפקטיות */
  .team-card { display: flex; align-items: flex-start; gap: 13px; text-align: right; padding: 16px 16px 18px; }
  .team-icon { margin: 2px 0 0; width: 54px; height: 54px; flex-shrink: 0; }
  .team-card h3 { margin-bottom: 5px; font-size: 1.04rem; }
  .equip-icon { width: 56px; height: 56px; }
  .sep-points li .icon-medal { width: 48px; height: 48px; }

  .story-photo { max-width: 244px; }
  .map-shell { aspect-ratio: 16/9; }
  .card-body { padding: 17px 17px 20px; }
  .separation-art { max-width: 262px; margin-inline: auto; }
  .why-grid { gap: 9px; }
  .why-grid li { padding: 12px 12px; font-size: .88rem; gap: 9px; }
  .why-grid .num { width: 25px; height: 25px; font-size: .85rem; }
  .site-footer { padding-block: 34px 96px; }
  .section-title { margin-bottom: 20px; padding-bottom: 14px; }
  .faq-list summary { padding: 14px 17px; }
}

/* ---------- ניווט הקרוסלה: חצים ונקודות, מובייל בלבד ---------- */
.halls-nav {
  display: flex; align-items: center; justify-content: center; gap: 16px;
  margin-top: 12px;
}
.halls-arrow {
  width: 42px; height: 42px; border-radius: 50%;
  border: 1px solid var(--gold); color: var(--gold-ink);
  background: var(--surface);
  display: grid; place-items: center;
  box-shadow: var(--shadow-soft);
  transition: opacity .2s ease, background-color .2s ease;
}
.halls-arrow svg { width: 19px; height: 19px; }
.halls-arrow:disabled { opacity: .32; }
.halls-arrow:not(:disabled):active { background: rgba(176,141,79,.14); }
.halls-dots { display: flex; align-items: center; gap: 8px; }
.halls-dots button {
  width: 9px; height: 9px; border-radius: 999px; padding: 0;
  border: 1.5px solid var(--gold); background: transparent;
  transition: width .25s ease, background-color .25s ease;
}
.halls-dots button[aria-current="true"] { width: 24px; background: var(--gold); }
@media (min-width: 620px) { .halls-nav { display: none; } }

@media (min-width: 620px) {
  .halls-grid, .halls-scroller { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; overflow: visible; margin-inline: 0; padding: 0; }
  .team-grid { grid-template-columns: repeat(3, 1fr); }
  .equip-grid { grid-template-columns: repeat(4, 1fr); }
  .forsale-strip { grid-template-columns: 1fr 1.15fr; }
  .forsale-strip img { aspect-ratio: auto; }
  .story-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
  .story-photo { max-width: none; }
}

@media (min-width: 940px) {
  .halls-grid, .halls-scroller { grid-template-columns: repeat(3, 1fr); }
  .separation-grid { grid-template-columns: 1fr .85fr; gap: 44px; }
  /* 6 סיבות → שתי שורות של 3, בלי שורה קטועה */
  .why-grid { grid-template-columns: repeat(3, 1fr); }
  .contact-grid { grid-template-columns: 1fr 1.15fr; }
}
