/* ============================================================
   בודפשט למטייל — מערכת עיצוב
   חתימה: לוח היציאות (split-flap departures board)
   ============================================================ */

:root{
  /* --- צבע --- */
  --night:#0A1A22;        /* לוח, פוטר, משטחים כהים */
  --night-2:#112831;      /* שכבה שנייה בתוך הכהה */
  --river:#0E5968;        /* טורקיז עוגן */
  --river-lit:#2A8B9C;    /* טורקיז בהיר — hover */
  --brass:#D99B2E;        /* פליז — סטטוס, כוכבים, מבטא בלבד */
  --paper:#F6F5F1;        /* קרקע חמה */
  --white:#fff;
  --ink:#0E2229;          /* טקסט ראשי */
  --stone:#64777D;        /* טקסט משני */
  --line:#E1E5E3;         /* קווי שיער */
  --line-dark:rgba(255,255,255,.10);
  --surface-soft:#F8FAF9; /* משטח פנימי שקט */
  --surface-board:#EEF4F3;/* מעטפת לוח בהירה */

  /* --- מרווח --- */
  --s1:8px; --s2:16px; --s3:24px; --s4:40px;
  --s5:64px; --s6:96px; --s7:128px;

  /* --- צורה ---
     r-lg למעטפות; r-md לכרטיסים פנימיים; r-sm לפרטים; r-pill לפעולות ותגיות. */
  --r-lg:28px; --r-md:18px; --r-sm:12px; --r-pill:999px;
  --shadow:0 20px 60px rgba(10,26,34,.14);
  --shadow-sm:0 4px 16px rgba(10,26,34,.08);
  --max:1200px;
  --header-h:72px;
}

@media(max-width:820px){
  :root{--r-lg:24px;--r-md:16px;--r-sm:11px}
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:Assistant,system-ui,Arial,sans-serif;
  background:var(--paper);
  color:var(--ink);
  font-size:17px;
  line-height:1.65;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
img{display:block;width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--river-lit);outline-offset:3px;border-radius:4px}

.wrap{width:min(var(--max),calc(100% - 40px));margin-inline:auto}

/* ============ טיפוגרפיה ============
   האישיות: ניגוד מרווחים.
   כותרות דחוסות (-.055em) מול נתונים מרווחים (+.14em) */

.display{
  font-weight:800;
  letter-spacing:-.055em;
  line-height:.98;
  margin:0;
}
h1.display{font-size:clamp(46px,8.5vw,104px)}
h2.display{font-size:clamp(34px,5vw,62px);line-height:1.02}
h3{font-size:clamp(21px,2.4vw,28px);font-weight:700;letter-spacing:-.03em;margin:0 0 var(--s1)}

.eyebrow{
  font-size:12.5px;
  font-weight:700;
  letter-spacing:.14em;
  color:var(--river);
  margin:0 0 var(--s2);
  display:block;
}
.eyebrow--light{color:rgba(255,255,255,.72)}

.lead{font-size:clamp(18px,2vw,21px);color:var(--stone);margin:0;max-width:62ch}
.lead--light{color:rgba(255,255,255,.82)}

/* ============ אריחי לוח מתחלף ============ */

.board-logo{
  display:inline-flex;
  gap:3px;
  direction:rtl;
  line-height:1;
  perspective:420px;
}
.flap{
  position:relative;
  display:inline-grid;
  place-items:center;
  min-width:19px;
  height:27px;
  padding:0 4px;
  border-radius:5px;
  background:linear-gradient(180deg,#1B2F3A 0%,#0E202A 49%,#071319 50%,#142934 100%);
  color:#F4F8F8;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.15),
    inset 0 -1px 0 rgba(0,0,0,.45),
    0 4px 10px rgba(0,0,0,.16);
  font-size:15px;
  font-weight:800;
  letter-spacing:0;
  transform-origin:center;
  overflow:hidden;
  will-change:transform;
}
/* קו החציה של האריח */
.flap::before{
  content:"";
  position:absolute;
  inset-inline:0;
  top:50%;
  height:1px;
  background:rgba(255,255,255,.11);
  box-shadow:0 -1px 0 rgba(0,0,0,.4);
  z-index:1;
}
.flap::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.09),transparent 40%,rgba(0,0,0,.13));
  pointer-events:none;
}
.flap--gap{min-width:6px;padding:0;border:0;background:none;box-shadow:none}
.flap--gap::before,.flap--gap::after{display:none}
.flap--brass{color:var(--brass)}

@keyframes flapTurn{
  0%  {transform:rotateX(0);filter:brightness(1)}
  42% {transform:rotateX(-82deg);filter:brightness(.7)}
  52% {transform:rotateX(82deg);filter:brightness(1.2)}
  100%{transform:rotateX(0);filter:brightness(1)}
}
/* ההיפוך הפיזי רץ במקביל לגלגול האותיות.
   36ms לאריח = 0.8 טיקים × 45ms — כך האות "נוחתת" באמצע ההיפוך. */
.is-turning .flap{
  animation:flapTurn .62s cubic-bezier(.2,.82,.2,1) both;
  animation-delay:calc(var(--i,0) * 36ms);
}

/* ============ כותרת עליונה ============ */

.header{
  position:sticky;top:0;z-index:60;
  height:var(--header-h);
  display:flex;align-items:center;
  background:rgba(246,245,241,.82);
  backdrop-filter:saturate(160%) blur(18px);
  border-bottom:1px solid transparent;
  transition:border-color .25s,background .25s;
}
.header.is-stuck{border-bottom-color:var(--line)}
.header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);width:100%}
.brand{display:flex;align-items:center;gap:10px}

.nav{display:flex;align-items:center;gap:var(--s4)}
.nav a{font-weight:600;font-size:15.5px;color:#2E4249;position:relative;padding:4px 0}
.nav a::after{
  content:"";position:absolute;inset-inline:0;bottom:0;height:2px;
  background:var(--river);transform:scaleX(0);transform-origin:right;
  transition:transform .22s ease;
}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--river)}

.btn-head{
  background:var(--night);color:var(--white);
  padding:11px 22px;border-radius:var(--r-pill);
  font-weight:700;font-size:15px;
}
.btn-head:hover{background:var(--river)}
.nav a.btn-head::after{display:none}

.menu-btn{
  display:none;border:0;background:none;padding:8px;cursor:pointer;
  width:44px;height:44px;
}
.menu-btn span{display:block;height:2px;background:var(--ink);margin:5px 0;border-radius:2px;transition:.25s}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ============ כפתורים ============ */

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:52px;padding:0 26px;
  border-radius:var(--r-pill);
  font-weight:700;font-size:16px;
  border:1.5px solid transparent;cursor:pointer;
  transition:transform .18s ease,background .18s,color .18s,border-color .18s;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--solid{background:var(--white);color:var(--night)}
.btn--solid:hover{background:var(--brass)}
.btn--ghost{border-color:rgba(255,255,255,.5);color:var(--white)}
.btn--ghost:hover{background:rgba(255,255,255,.12);border-color:var(--white)}
.btn--river{background:var(--river);color:var(--white)}
.btn--river:hover{background:var(--river-lit)}
.btn--line{border-color:var(--ink);color:var(--ink)}
.btn--line:hover{background:var(--ink);color:var(--white)}
.btn--sm{min-height:42px;padding:0 18px;font-size:14.5px}

.actions{display:flex;gap:var(--s2);flex-wrap:wrap}

/* ============ HERO ============ */

.hero{position:relative;min-height:calc(100svh - var(--header-h));display:grid;align-items:end;background:var(--night);overflow:hidden}
.hero__media{position:absolute;inset:0}
.hero__media video,.hero__media img{width:100%;height:100%;object-fit:cover}
.hero__media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,
    rgba(6,18,24,.42) 0%,
    rgba(6,18,24,.20) 30%,
    rgba(6,18,24,.72) 72%,
    rgba(10,26,34,.96) 100%);
}
.hero__body{position:relative;z-index:2;color:var(--white);padding:120px 0 190px;max-width:900px}
.hero__body h1{margin-bottom:var(--s3)}
.hero__body .lead{margin-bottom:var(--s4)}

/* כרטיס היציאה הקרובה — גולש מעל תחתית ה-hero */
.next-out{
  position:relative;z-index:3;
  margin-top:-118px;margin-bottom:var(--s6);
}
.next-out__card{
  background:var(--night);
  border:1px solid var(--line-dark);
  border-radius:var(--r-lg);
  padding:var(--s3) var(--s4);
  box-shadow:0 30px 70px rgba(6,18,24,.42);
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--s4);flex-wrap:wrap;
}
.next-out__label{color:rgba(255,255,255,.6);font-size:12.5px;font-weight:700;letter-spacing:.14em;margin-bottom:6px}
.next-out__date{color:var(--white);font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.03em}
.next-out__meta{color:rgba(255,255,255,.62);font-size:15px}

/* ============ סקשנים ============ */

.section{padding:var(--s7) 0}
.section--tight{padding:var(--s5) 0}
.section--dark .lead{color:rgba(255,255,255,.75)}

.section-head{margin-bottom:var(--s5);max-width:70ch}
.section-head--split{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s4);max-width:none}

/* ============ פס אמון ============ */

.trust{background:var(--river);color:var(--white)}
.trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s3);padding:var(--s3) 0}
.trust__item{display:flex;align-items:center;gap:12px;font-weight:600;font-size:15.5px}
.trust__item svg{width:22px;height:22px;flex:none;stroke:rgba(255,255,255,.85);fill:none;stroke-width:1.6}

/* ============ לוח היציאות — החתימה ============ */

.board{
  background:var(--night);
  border-radius:var(--r-lg);
  padding:var(--s5) var(--s4);
  color:var(--white);
  position:relative;overflow:hidden;
}
.board::before{ /* קו העיקול — רמז לדנובה */
  content:"";position:absolute;inset-inline:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--brass),transparent);
  opacity:.5;
}
.board__head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s3);margin-bottom:var(--s4);flex-wrap:wrap}
.board__rows{display:grid}
.board__row{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  align-items:center;gap:var(--s3);
  padding:var(--s3) 0;
  border-top:1px solid var(--line-dark);
  transition:background .2s;
}
.board__row:first-child{border-top:0}
.board__row:hover{background:rgba(255,255,255,.03)}
.board__day{display:flex;gap:3px}
.board__date{font-size:19px;font-weight:700;letter-spacing:-.02em}
.board__meta{color:rgba(255,255,255,.55);font-size:14.5px}
.pill{
  display:inline-block;padding:5px 13px;border-radius:var(--r-pill);
  font-size:12.5px;font-weight:700;letter-spacing:.06em;
  background:rgba(217,155,46,.16);color:var(--brass);
  border:1px solid rgba(217,155,46,.3);
}

/* לוח מלא בעמוד הלוז */
.board-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}
.date-card{
  background:var(--white);border:1px solid var(--line);
  border-radius:var(--r-md);padding:var(--s3);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s;
}
.date-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:rgba(14,89,104,.18)}
.date-card__day{display:flex;gap:3px;margin-bottom:var(--s2)}
.date-card__date{font-size:26px;font-weight:800;letter-spacing:-.04em;line-height:1.1}
.date-card__meta{color:var(--stone);font-size:14.5px;margin:2px 0 var(--s3)}

/* ============ אילן ============ */

.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--s6);align-items:center}
.about__photo{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5}
.about__photo img{height:100%;object-fit:cover}
.quote{
  max-width:30ch;
  margin:var(--s5) 0 var(--s4);
  color:var(--ink);
  font-size:clamp(24px,3vw,30px);
  line-height:1.38;
  font-weight:700;
  letter-spacing:-.03em;
}

/* ============ המלצות ============ */

.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}
.review{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s4)}
.review p{font-size:17.5px;margin:0 0 var(--s3)}

/* ============ פס סיום ============ */

.cta-band{
  background:var(--night);color:var(--white);
  border-radius:var(--r-lg);padding:var(--s6) var(--s5);
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--s4);flex-wrap:wrap;
}
.cta-band h2{max-width:18ch}

/* ============ עמוד פנימי ============ */

.page-head{padding:var(--s6) 0 var(--s5);background:var(--white);border-bottom:1px solid var(--line)}

/* ============ טופס ============ */

.form-shell{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s5);align-items:start}
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s5)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.field{display:grid;gap:7px}
.field--full{grid-column:1/-1}
.field label{font-weight:700;font-size:14.5px}
.field input,.field select,.field textarea{
  width:100%;border:1.5px solid var(--line);border-radius:var(--r-sm);
  padding:13px 15px;background:#FBFBF9;transition:border-color .2s,background .2s;
}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color:var(--river);background:var(--white);outline:none;
}
.field textarea{min-height:118px;resize:vertical}
.note{font-size:14px;color:var(--stone);margin:var(--s2) 0 0}
.success{
  display:none;background:#E9F4EE;border:1px solid #B8D9C2;
  border-radius:var(--r-md);padding:var(--s3);margin-top:var(--s3);
}
.success.is-on{display:block}

/* ============ FAQ ============ */

.faq{max-width:820px}
.faq details{border-top:1px solid var(--line);padding:var(--s3) 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{
  font-weight:700;font-size:18.5px;cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:var(--s2);
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:24px;font-weight:400;color:var(--river);flex:none}
.faq details[open] summary::after{content:"−"}
.faq p{color:var(--stone);margin:var(--s2) 0 0}

/* ============ פוטר ============ */

.footer{background:var(--night);color:var(--white);padding:var(--s6) 0 calc(var(--s6) + 20px)}
.footer__grid{display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:var(--s5)}
.footer a{color:rgba(255,255,255,.7)}
.footer a:hover{color:var(--brass)}
.footer ul{list-style:none;padding:0;margin:var(--s2) 0 0;display:grid;gap:9px}
.footer strong{font-size:13px;letter-spacing:.14em;color:rgba(255,255,255,.5);font-weight:700}
.footer__note{color:rgba(255,255,255,.45);font-size:14px;margin-top:var(--s2)}

/* ============ צף: מובייל + צ'אט ============ */

.mobile-bar{display:none}
.chat-panel.is-on{display:block}

/* ============ חשיפה בגלילה ============ */

.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.reveal.is-in{opacity:1;transform:none}

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

@media(max-width:960px){
  .about{grid-template-columns:1fr;gap:var(--s4)}
  .about__photo{max-width:420px}
  .reviews,.board-grid{grid-template-columns:1fr 1fr}
  .form-shell{grid-template-columns:1fr;gap:var(--s4)}
  .footer__grid{grid-template-columns:1fr 1fr}
}

@media(max-width:820px){
  :root{--header-h:64px;--s7:84px;--s6:64px;--s5:48px}
  body{padding-bottom:70px}
  .wrap{width:min(100% - 32px,var(--max))}

  .menu-btn{display:block}
  .nav{
    display:none;position:fixed;inset-block-start:var(--header-h);
    inset-inline:0;background:var(--paper);
    padding:var(--s3) 20px calc(var(--s4));
    flex-direction:column;align-items:stretch;gap:var(--s1);
    border-bottom:1px solid var(--line);
    box-shadow:var(--shadow);
  }
  .nav.is-open{display:flex}
  .nav a{padding:13px 0;font-size:17px}
  .nav a::after{display:none}
  .btn-head{text-align:center;margin-top:var(--s2)}

  .hero{min-height:82svh}
  .hero__body{padding:80px 0 150px}
  .next-out{margin-top:-96px;margin-bottom:var(--s5)}
  .next-out__card{padding:var(--s3);flex-direction:column;align-items:stretch;gap:var(--s3)}
  .next-out__card .btn{width:100%}

  .trust__grid{grid-template-columns:1fr 1fr;gap:var(--s2)}
  .section-head--split{display:block}
  .section-head--split .btn{margin-top:var(--s3)}
  .reviews,.board-grid{grid-template-columns:1fr}
  .board{padding:var(--s4) var(--s3)}
  .board__row{grid-template-columns:auto 1fr;row-gap:var(--s2)}
  .board__row .pill{grid-column:1/-1;justify-self:start}
  .board__row .btn{grid-column:1/-1;width:100%}
  .cta-band{padding:var(--s5) var(--s3);display:block}
  .cta-band .actions{margin-top:var(--s3)}
  .form-card{padding:var(--s3)}
  .form-grid{grid-template-columns:1fr}
  .field--full{grid-column:auto}
  .footer__grid{grid-template-columns:1fr;gap:var(--s4)}

  .mobile-bar{
    position:fixed;z-index:65;inset-inline:0;bottom:0;height:70px;
    background:var(--white);border-top:1px solid var(--line);
    display:grid;grid-template-columns:1fr 1fr;
    padding-bottom:env(safe-area-inset-bottom,0);
  }
  .mobile-bar a{display:grid;place-items:center;font-weight:700;font-size:15.5px}
  .mobile-bar a:first-child{background:var(--river);color:var(--white)}
}

@media(max-width:420px){
  .flap{min-width:15px;height:23px;font-size:12.5px;padding:0 3px}
}

@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

.header .brand{
  display:inline-flex;
  align-items:center;
  flex-shrink:0;
}
@media (max-width:600px){
}


/* ============================================================
   V6 — brand lockup, easier registration and overlap safeguards
   ============================================================ */

html{scroll-padding-top:calc(var(--header-h) + 18px)}
main{overflow:clip}
#dates,#register,#experience{scroll-margin-top:calc(var(--header-h) + 18px)}

/* Split-flap brand lockup */
.board-logo{
  display:inline-flex;
  gap:3px;
  direction:rtl;
  line-height:1;
  perspective:420px;
  --tile-w:18px;
  --tile-h:23px;
  --tile-font:14px;
  --tile-radius:5px;
}
.brand-lockup{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  max-width:100%;
}
.board-logo--row{display:inline-flex}
.flap{
  min-width:var(--tile-w);
  height:var(--tile-h);
  font-size:var(--tile-font);
  border-radius:var(--tile-radius);
  padding-inline:3px;
}
.brand{min-width:0;flex:none}
.brand .brand-lockup{--tile-w:17px;--tile-h:21px;--tile-font:13px;--tile-radius:5px}
.brand-lockup--footer{--tile-w:20px;--tile-h:27px;--tile-font:16px;gap:5px}

/* Hero focus and CTA hierarchy */
.hero__body{max-width:760px}
.hero__body .actions .btn:first-child{box-shadow:0 12px 34px rgba(0,0,0,.22)}
.hero__body .actions .btn{min-width:190px}
.next-out__card{isolation:isolate}
.next-out__card .btn{white-space:nowrap}
.register-steps{list-style:none;padding:0;margin:var(--s4) 0 0;display:grid;gap:14px}
.register-steps li{display:flex;align-items:center;gap:12px;font-weight:700}
.register-steps li span{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:var(--night);color:#fff;font-size:13px;flex:none
}
.form-card{box-shadow:var(--shadow-sm)}
.form-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:var(--s3)}
.form-topline h3{font-size:24px;margin:2px 0 0}
.form-kicker{font-size:12px;color:var(--river);font-weight:800;letter-spacing:.1em}
.form-time{font-size:12.5px;color:var(--stone);border:1px solid var(--line);border-radius:var(--r-pill);padding:5px 10px;white-space:nowrap}
.selected-date-panel{
  display:grid;gap:7px;background:#EDF6F7;border:1px solid rgba(14,89,104,.18);
  border-radius:var(--r-md);padding:16px;margin-bottom:var(--s3)
}
.selected-date-panel label{font-weight:800;font-size:14px;color:var(--river)}
.selected-date-panel select{background:#fff;font-weight:700;border-color:rgba(14,89,104,.28)}
.selected-date-panel span{font-size:12.5px;color:var(--stone)}
.form-grid--compact{margin-bottom:var(--s3)}
.party-fieldset{border:0;padding:0;margin:0 0 var(--s3)}
.party-fieldset legend{font-weight:800;font-size:15px;margin-bottom:10px}
.party-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.counter-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  background:#FBFBF9;border:1px solid var(--line);border-radius:var(--r-md);padding:14px
}
.counter-row strong,.counter-row small{display:block}
.counter-row small{font-size:12px;color:var(--stone);margin-top:2px}
.stepper{display:grid;grid-template-columns:38px 42px 38px;align-items:center;border:1px solid var(--line);border-radius:var(--r-pill);background:#fff;overflow:hidden;flex:none}
.stepper button{height:38px;border:0;background:#fff;font-size:22px;cursor:pointer;color:var(--river);line-height:1}
.stepper button:hover{background:#EDF6F7}
.stepper input{width:42px;height:38px;border:0!important;background:#fff!important;padding:0!important;text-align:center;font-weight:800;-moz-appearance:textfield}
.stepper input::-webkit-outer-spin-button,.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.conditional-children{margin-bottom:var(--s3)}
.form-more{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:0 0 var(--s3)}
.form-more summary{cursor:pointer;list-style:none;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:12px}
.form-more summary::-webkit-details-marker{display:none}
.form-more summary::after{content:"+";color:var(--river);font-size:22px;font-weight:500}
.form-more[open] summary::after{content:"−"}
.form-more__body{display:grid;gap:var(--s2);padding-top:var(--s3)}
.submit-btn{width:100%;min-height:58px;display:flex;flex-direction:column;gap:0;line-height:1.1}
.submit-btn span{font-size:12px;font-weight:600;opacity:.76;margin-top:4px}
.submit-btn:disabled{opacity:.65;cursor:wait;transform:none}
.form-privacy{text-align:center;color:var(--stone);font-size:12px;margin:10px 0 0}
.success{font-size:16px}
.success strong{font-size:19px}
.date-card.is-selected{border-color:var(--river);box-shadow:0 0 0 3px rgba(14,89,104,.12),var(--shadow-sm)}
.date-card.is-selected .btn{background:var(--night)}

/* Fixed UI must not collide */
.mobile-bar{min-height:64px;height:auto;padding-bottom:max(env(safe-area-inset-bottom),0px)}
.mobile-bar a{min-height:64px}

@media(max-width:960px){
}

@media(max-width:820px){
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
  .header__inner{gap:12px}
  .brand .brand-lockup{--tile-w:15px;--tile-h:19px;--tile-font:12px;gap:2px}
  .nav{max-height:calc(100dvh - var(--header-h) - 64px - env(safe-area-inset-bottom,0px));overflow:auto}
  .hero__body{padding:88px 0 142px}
  .hero__body .actions{display:grid;grid-template-columns:1fr;max-width:360px}
  .hero__body .actions .btn{width:100%;min-width:0}
  .next-out{margin-top:-84px}
  .next-out__card{gap:18px}
  .party-grid{grid-template-columns:1fr}
  .form-topline{align-items:center}
  .footer{padding-bottom:calc(var(--s6) + 64px + env(safe-area-inset-bottom,0px))}
}

@media(max-width:520px){
  .form-card{padding:20px}
  .form-topline h3{font-size:21px}
  .form-time{display:none}
  .selected-date-panel{padding:14px}
  .counter-row{padding:12px}
  .stepper{grid-template-columns:36px 38px 36px}
  .stepper input{width:38px}
  .next-out__meta{font-size:13.5px}
}

@media(max-width:380px){
  .brand .brand-lockup{--tile-w:14px;--tile-h:18px;--tile-font:11px}
  .header__inner{gap:8px}
  .menu-btn{width:40px;height:40px;padding:6px}
}


/* Final alignment fixes after viewport QA */
.header__inner{width:min(var(--max),calc(100% - 40px))}
@media(max-width:820px){
  .header__inner{width:min(var(--max),calc(100% - 32px))}
}
@media(max-width:820px){
  .mobile-bar{grid-template-columns:1.25fr 1fr .72fr}
  .mobile-bar a,.mobile-chat-trigger{border:0;background:var(--white);font-family:inherit;color:var(--ink)}
  .mobile-bar a:first-child{background:var(--river);color:var(--white)}
}


/* ============================================================
   V7 — modal registration, full weekday boards and tour explorer
   ============================================================ */
body.modal-open{overflow:hidden}
.board__day,.date-card__day{direction:rtl;white-space:nowrap;min-width:max-content}
.board__day .flap,.date-card__day .flap{--tile-w:17px;--tile-h:24px;--tile-font:14px}
.date-card__day{min-height:25px}
.board__row .btn{white-space:nowrap}

/* Modal registration */
.registration-dialog{
  width:min(1040px,calc(100% - 32px));max-width:none;padding:0;border:0;border-radius:var(--r-lg);
  background:transparent;color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.34);overflow:visible
}
.registration-dialog::backdrop{background:rgba(5,16,21,.68);backdrop-filter:blur(8px)}
.registration-modal{display:grid;grid-template-columns:.72fr 1.28fr;max-height:min(90dvh,820px);background:var(--white);border-radius:var(--r-lg);overflow:hidden}
.registration-modal__intro{background:var(--night);color:#fff;padding:48px 38px;display:flex;flex-direction:column;min-width:0}
.registration-modal__intro h2{font-size:clamp(44px,5vw,66px);color:#fff;margin-bottom:20px}
.registration-modal__intro>p{color:rgba(255,255,255,.72);margin:0 0 28px}
.modal-date-box{display:grid;gap:5px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);border-radius:var(--r-md);padding:17px 18px;margin-bottom:22px}
.modal-date-box span{font-size:12px;color:rgba(255,255,255,.58);font-weight:700;letter-spacing:.08em}
.modal-date-box strong{font-size:18px;line-height:1.3}
.modal-date-box--light{background:#EDF6F7;border-color:rgba(14,89,104,.18);color:var(--ink)}
.modal-date-box--light span{color:var(--stone)}
.modal-assurances{list-style:none;padding:0;margin:auto 0 0;display:grid;gap:11px;color:rgba(255,255,255,.82);font-size:14px}
.modal-assurances li{display:flex;align-items:center;gap:10px}
.modal-assurances li::before{content:'✓';width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(217,155,46,.17);color:var(--brass);font-weight:800}
.registration-modal__form{position:relative;padding:38px 40px;overflow:auto;overscroll-behavior:contain;background:var(--white)}
.dialog-close{position:absolute;top:18px;left:18px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:27px;line-height:1;cursor:pointer;color:var(--stone);z-index:3}
.dialog-close:hover{background:var(--paper);color:var(--ink)}
.registration-modal .form-topline{padding-left:48px}
.registration-modal .success{padding:56px 10px;text-align:center}
.success-actions{margin-top:22px;display:flex;justify-content:center}

/* Home tour preview */
.tour-preview-section{overflow:hidden}
.tour-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}
.tour-preview::before{content:'';position:absolute;top:31px;right:8%;left:8%;height:2px;background:linear-gradient(90deg,transparent,var(--river-lit),var(--brass),transparent);opacity:.32;z-index:0}
.tour-preview__card{position:relative;z-index:1;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 12px 20px;min-width:0}
.tour-preview__card img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-sm);margin-bottom:16px}
.tour-preview__card .tour-num{
  position:absolute;top:20px;right:20px;
  min-width:44px;height:32px;padding:0 10px;
  display:grid;place-items:center;
  direction:ltr;font-variant-numeric:tabular-nums;
  border:3px solid #fff;border-radius:8px;
  background:linear-gradient(180deg,#1B2F3A 0%,#0E202A 49%,#071319 50%,#142934 100%);
  color:#F4F8F8;
  box-shadow:0 5px 14px rgba(10,26,34,.24),inset 0 1px 0 rgba(255,255,255,.12);
  font-size:13px;font-weight:800;letter-spacing:.08em;line-height:1;
  overflow:hidden;
}
.tour-preview__card .tour-num::after{
  content:"";position:absolute;inset-inline:0;top:50%;height:1px;
  background:rgba(255,255,255,.11);box-shadow:0 -1px 0 rgba(0,0,0,.42);
  pointer-events:none;
}
.tour-preview__card h3{font-size:21px;margin-bottom:5px}
.tour-preview__card p{margin:0;color:var(--stone);font-size:15px;line-height:1.5}

/* Schedule flow */
.schedule-flow{padding-top:0}
.schedule-flow__card{background:var(--night);color:#fff;border-radius:var(--r-lg);padding:clamp(28px,5vw,58px);display:grid;grid-template-columns:1.15fr 1fr auto;gap:36px;align-items:center}
.schedule-flow__card h2{color:#fff;font-size:clamp(34px,4.4vw,56px)}
.schedule-flow__card .lead{color:rgba(255,255,255,.7);font-size:18px}
.schedule-flow__steps{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.schedule-flow__steps li{display:grid;grid-template-columns:32px 1fr;column-gap:12px;align-items:center}
.schedule-flow__steps li>span{grid-row:1/3;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(217,155,46,.16);color:var(--brass);font-weight:800}
.schedule-flow__steps strong{line-height:1.2}.schedule-flow__steps small{color:rgba(255,255,255,.55)}

/* Tour page */
.trip-hero{position:relative;min-height:72svh;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.trip-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.trip-hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,16,21,.12),rgba(5,16,21,.82))}
.trip-hero__body{position:relative;z-index:1;padding:130px 0 74px;max-width:760px}
.trip-hero__body h1{color:#fff}
.trip-strip{background:var(--night);color:#fff;padding:24px 0}
.trip-strip__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-dark)}
.trip-strip__grid>div{background:var(--night);padding:14px 22px;display:grid;gap:2px}
.trip-strip strong{font-size:18px}.trip-strip span{color:rgba(255,255,255,.55);font-size:13px}
.journey-explorer{display:grid;grid-template-columns:300px 1fr;gap:28px;align-items:stretch}
.journey-nav{position:relative;display:grid;gap:7px;padding:12px 0}
.journey-nav::before{content:'';position:absolute;right:26px;top:32px;bottom:32px;width:2px;background:linear-gradient(var(--river),var(--brass));opacity:.28}
.journey-stop{position:relative;z-index:1;display:grid;grid-template-columns:52px 1fr;column-gap:14px;text-align:right;align-items:center;border:1px solid transparent;background:transparent;padding:12px;border-radius:var(--r-md);cursor:pointer;color:var(--ink);transition:.2s}
.journey-stop>span{grid-row:1/3;width:32px;height:32px;justify-self:center;border-radius:50%;display:grid;place-items:center;background:var(--paper);border:1px solid var(--line);font-size:11px;font-weight:800;color:var(--stone)}
.journey-stop strong{font-size:17px;line-height:1.2}.journey-stop small{color:var(--stone);font-size:13px}
.journey-stop:hover{background:#fff;border-color:var(--line)}
.journey-stop.is-active{background:#fff;border-color:rgba(14,89,104,.18);box-shadow:var(--shadow-sm)}
.journey-stop.is-active>span{background:var(--river);color:#fff;border-color:var(--river)}
.journey-stage{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;min-height:540px;box-shadow:var(--shadow-sm)}
.journey-stage__media{min-height:430px;overflow:hidden;background:var(--night)}
.journey-stage__media img{height:100%;object-fit:cover;transition:opacity .18s,transform .5s}
.journey-stage__media img.is-changing{opacity:.25;transform:scale(1.02)}
.journey-stage__copy{padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;justify-content:center}
.journey-stage__time{font-size:12px;font-weight:800;color:var(--river);letter-spacing:.08em;margin-bottom:10px}
.journey-stage__copy h3{font-size:clamp(28px,3vw,42px);line-height:1.05;margin-bottom:18px}
.journey-stage__copy>p{font-size:18px;color:var(--stone);margin:0 0 22px}
.journey-stage__copy ul{margin:0 0 24px;padding:0;list-style:none;display:grid;gap:9px}
.journey-stage__copy li{display:flex;gap:10px;line-height:1.45}.journey-stage__copy li::before{content:'✓';color:var(--river);font-weight:800}
.journey-tags{display:flex;flex-wrap:wrap;gap:8px}.journey-tags span{padding:7px 11px;border-radius:var(--r-pill);background:#EDF6F7;color:var(--river);font-size:12.5px;font-weight:700}
.trip-details-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:20px}
.trip-detail-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:clamp(26px,4vw,46px)}
.trip-detail-card--dark{background:var(--night);color:#fff;border-color:transparent}
.trip-detail-card--dark h2{font-size:clamp(30px,4vw,48px);line-height:1.05}
.trip-detail-card p{margin:0;color:var(--stone)}.trip-detail-card--dark p{color:rgba(255,255,255,.7)}
.trip-detail-stack{display:grid;gap:20px}
.check-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:13px}.check-list li{display:flex;gap:11px}.check-list li::before{content:'✓';color:var(--brass);font-weight:800}

/* Direct registration */
.register-page-head{padding-bottom:30px}
.register-page-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:42px;align-items:start}
.register-page-intro{position:sticky;top:calc(var(--header-h) + 28px)}
.direct-registration-card{padding:36px}
.thanks-page{min-height:70vh;display:grid;align-items:center}.thanks-card{max-width:760px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(36px,7vw,76px);box-shadow:var(--shadow-sm)}
.success-mark{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#EAF7F0;color:#217A4A;font-size:34px;margin:0 auto 22px}
.thanks-card .lead{margin:20px auto 30px}.thanks-card .actions{justify-content:center}

@media(max-width:1020px){
  .registration-modal{grid-template-columns:1fr 1.35fr}
  .schedule-flow__card{grid-template-columns:1fr 1fr}.schedule-flow__card>.btn{grid-column:1/-1;justify-self:start}
  .journey-explorer{grid-template-columns:240px 1fr}.journey-stage{grid-template-columns:1fr;min-height:0}.journey-stage__media{min-height:360px}.journey-stage__copy{padding:30px}
}
@media(max-width:820px){
  .board__row{grid-template-columns:1fr auto}.board__day{grid-column:1/-1}.board__row .pill{grid-column:auto}.board__row .btn{grid-column:1/-1}
  .tour-preview{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-inline:-16px;padding-inline:16px}.tour-preview::before{display:none}.tour-preview__card{flex:0 0 min(78vw, 300px);scroll-snap-align:start}
  .registration-dialog{width:100%;max-height:none;margin:auto 0 0;border-radius:var(--r-lg) var(--r-lg) 0 0}
  .registration-modal{display:block;max-height:94dvh;border-radius:var(--r-lg) var(--r-lg) 0 0;overflow:auto}
  .registration-modal__intro{padding:24px 22px 18px;display:block}.registration-modal__intro h2{font-size:38px;margin-bottom:10px}.registration-modal__intro>p{display:none}.modal-date-box{margin:15px 0 0;padding:12px 14px}.modal-assurances{display:none}
  .registration-modal__form{padding:26px 20px 30px;overflow:visible}.registration-modal .form-topline{padding-left:44px}
  .schedule-flow__card{grid-template-columns:1fr;gap:26px}.schedule-flow__card>.btn{grid-column:auto;width:100%}
  .trip-hero{min-height:68svh}.trip-hero__body{padding:100px 0 54px}.trip-strip__grid{grid-template-columns:1fr 1fr}
  .journey-explorer{display:block}.journey-nav{display:flex;overflow-x:auto;gap:8px;margin:0 -16px 16px;padding:4px 16px 12px;scroll-snap-type:x mandatory}.journey-nav::before{display:none}.journey-stop{flex:0 0 148px;scroll-snap-align:start;grid-template-columns:34px 1fr;padding:10px;background:#fff;border-color:var(--line)}.journey-stop>span{width:28px;height:28px}.journey-stop strong{font-size:15px}.journey-stop small{font-size:12px}
  .journey-stage{display:block}.journey-stage__media{min-height:290px;aspect-ratio:4/3}.journey-stage__copy{padding:24px}.journey-stage__copy>p{font-size:17px}
  .trip-details-grid,.register-page-grid{grid-template-columns:1fr}.register-page-intro{position:static}.direct-registration-card{padding:22px}
}
@media(max-width:520px){
  .board__day .flap,.date-card__day .flap{--tile-w:16px;--tile-h:23px;--tile-font:13px}
  .date-card{padding:20px}.date-card__date{font-size:24px}
  .trip-strip__grid>div{padding:13px 12px}.trip-strip strong{font-size:16px}.trip-hero__body .actions{display:grid}.trip-hero__body .btn{width:100%}
  .journey-stage__media{min-height:230px}.journey-stage__copy h3{font-size:29px}
}

/* ============================================================
   V8 — UI/UX refinement
   ============================================================ */

/* More breathing room in the main hero headline */
.hero__body{max-width:820px}
.hero__body h1{
  margin-bottom:30px;
  text-wrap:balance}
.hero__body .lead{max-width:57ch;line-height:1.62;margin-bottom:42px}

/* One coherent "tour at a glance" component */
.tour-summary-section{padding-top:42px;padding-bottom:88px}
.tour-summary{
  display:grid;
  grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  gap:clamp(30px,5vw,70px);
  align-items:stretch;
  padding:clamp(28px,5vw,58px);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  background:var(--white);
  box-shadow:var(--shadow-sm);
}
.tour-summary__intro{display:flex;flex-direction:column;justify-content:center}
.tour-summary__intro h2{font-size:clamp(34px,4.6vw,54px);line-height:1.08;margin-bottom:20px}
.tour-summary__intro p{margin:0;color:var(--stone);font-size:17px;max-width:35ch}
.tour-summary__content{display:grid;gap:18px}
.tour-summary__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.summary-item{
  display:flex;align-items:flex-start;gap:14px;
  padding:20px;
  min-height:118px;
  background:var(--surface-soft);
  border:1px solid var(--line);
  border-radius:var(--r-md);
}
.summary-icon{width:38px;height:38px;flex:none;border-radius:var(--r-sm);display:grid;place-items:center;background:#EAF4F5;color:var(--river)}
.summary-icon svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.summary-item>div{display:grid;gap:2px;min-width:0}
.summary-item span:not(.summary-icon){font-size:12.5px;color:var(--stone);font-weight:700;letter-spacing:.04em}
.summary-item strong{font-size:19px;line-height:1.28;letter-spacing:-.025em}
.summary-item small{font-size:13px;color:var(--stone)}
.tour-summary__footer{display:flex;align-items:center;gap:12px;padding:15px 17px;border-radius:var(--r-md);background:var(--night);color:#fff;font-size:14.5px}
.tour-summary__footer svg{width:22px;height:22px;flex:none;stroke:var(--brass);fill:none;stroke-width:1.7}
.tour-summary__footer strong{font-weight:800}

/* Registration dialog: clear, persistent close control */
.registration-modal{position:relative;overflow:hidden}
.dialog-close{
  position:absolute;
  top:16px;
  left:16px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(14,34,41,.12);
  border-radius:50%;
  background:rgba(255,255,255,.96);
  color:var(--ink);
  font-size:30px;
  line-height:1;
  font-weight:400;
  box-shadow:0 8px 24px rgba(10,26,34,.15);
  cursor:pointer;
  z-index:20;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}
.dialog-close:hover{background:#fff;transform:scale(1.05);box-shadow:0 12px 30px rgba(10,26,34,.2)}
.registration-modal__form{padding-top:46px}
.mobile-bar{grid-template-columns:1.22fr 1fr!important}

/* Reviews — manual browsing only */
.reviews-section{overflow:hidden}
.section-head--reviews{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;max-width:none}
.reviews-rating{display:grid;grid-template-columns:auto auto;align-items:center;gap:4px 10px;padding:15px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;min-width:160px}
.reviews-rating strong{font-size:30px;line-height:1;font-weight:800}
.reviews-rating span{color:var(--brass);letter-spacing:2px;font-size:15px}
.reviews-rating small{grid-column:1/-1;color:var(--stone);font-size:12px}
.reviews-carousel{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(18px,3vw,30px);box-shadow:var(--shadow-sm)}
.reviews-carousel__topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.reviews-source{font-size:13px;color:var(--stone);font-weight:700}
.reviews-google-link{font-size:14px;font-weight:700;color:var(--river);text-decoration:underline;text-underline-offset:4px}
.reviews-viewport{
  overflow-x:auto;
  overflow-y:hidden;
  direction:rtl;
  outline:none;
  padding:2px;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:2px;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  cursor:grab;
  -webkit-overflow-scrolling:touch;
}
.reviews-viewport::-webkit-scrollbar{display:none}
.reviews-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.reviews-track{display:flex;gap:16px;direction:rtl;width:100%;transform:none!important;transition:none!important}
.review-card{
  direction:rtl;
  flex:0 0 calc((100% - 32px)/3);
  min-width:0;
  min-height:250px;
  padding:25px;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:var(--surface-soft);
  display:flex;
  flex-direction:column;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.review-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.review-card__stars{color:var(--brass);font-size:15px;letter-spacing:2px;white-space:nowrap}
.review-card__google{font-size:12px;color:var(--stone);font-weight:700}
.review-card blockquote{font-size:17px;line-height:1.65;margin:0 0 24px;flex:1}
.review-card__author{display:flex;align-items:center;gap:11px;font-weight:700}
.review-card__avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#EDF3F3;display:grid;place-items:center;color:var(--river);font-weight:800}
.review-card__author small{display:block;color:var(--stone);font-size:12px;font-weight:500}
.review-card--loading{gap:16px;animation:reviewPulse 1.2s ease-in-out infinite alternate}
.review-card--loading span{height:18px;border-radius:8px;background:#E8ECEA}.review-card--loading span:nth-child(2){height:72px}.review-card--loading span:last-child{width:45%}
@keyframes reviewPulse{to{opacity:.52}}
.reviews-controls{
  display:grid;
  grid-template-columns:44px minmax(88px,auto) 44px;
  align-items:center;
  justify-content:center;
  gap:12px 14px;
  margin-top:22px;
  min-height:44px;
  text-align:center;
}
.carousel-arrow{
  width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:var(--r-pill);
  cursor:pointer;font-size:18px;font-weight:800;
  transition:border-color .18s,color .18s,background .18s,opacity .18s;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;
}
.carousel-arrow:hover:not(:disabled){border-color:var(--river);color:var(--river);background:#F7FAFA}
.carousel-arrow:disabled{opacity:.34;cursor:default}
.carousel-count{font-size:13px;color:var(--stone);min-width:88px;text-align:center;font-variant-numeric:tabular-nums;justify-self:center}
.reviews-hint{
  grid-column:1/-1;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  margin:0;justify-self:center;
  color:var(--stone);font-size:12.5px;font-weight:700;
}
.reviews-hint>span{color:var(--river);font-size:18px;line-height:1}


/* Tour journey — clear, manual browsing between the main stops */
.journey-toolbar{
  display:grid;
  grid-template-columns:1fr;
  justify-items:center;
  gap:10px;
  margin-bottom:14px;
  padding:14px 20px;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:#fff;
  text-align:center;
}
.journey-hint{display:block;max-width:560px;text-align:center}
.journey-hint>span{display:none}
.journey-hint strong,.journey-hint small{display:block}.journey-hint strong{font-size:17px}.journey-hint small{color:var(--stone);font-size:12.5px;margin-top:2px}
.journey-controls{
  display:grid;
  grid-template-columns:44px minmax(82px,auto) 44px;
  align-items:center;
  justify-content:center;
  gap:14px;
  width:100%;
  white-space:nowrap;
}
.journey-controls button{
  width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;
  cursor:pointer;font-size:18px;font-weight:800;
  transition:border-color .18s,color .18s,background .18s,opacity .18s;
  touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;
}
.journey-controls button:hover:not(:disabled){border-color:var(--river);color:var(--river);background:#F7FAFA}
.journey-controls button:disabled{opacity:.34;cursor:default}
.journey-controls span{font-size:13px;color:var(--stone);font-weight:700;min-width:82px;text-align:center;font-variant-numeric:tabular-nums;justify-self:center}
.journey-nav{border-radius:var(--r-md)}
.journey-stop::after{content:'›';position:absolute;left:12px;opacity:0;color:var(--river);font-size:22px;transition:.2s}
.journey-stop:hover::after,.journey-stop.is-active::after{opacity:1}
.journey-stage{touch-action:pan-y;position:relative;cursor:grab;user-select:none}
.journey-stage.is-dragging{cursor:grabbing}
.journey-stage__copy,.journey-stage__copy *{user-select:text}


/* Schedule data status */
.schedule-source{margin:14px 0 0;color:var(--stone);font-size:14px}
.board-grid.is-loading,.board__rows.is-loading{min-height:180px;position:relative}
.board-grid.is-loading::after,.board__rows.is-loading::after{content:'טוענים מועדים…';position:absolute;inset:0;display:grid;place-items:center;color:var(--stone)}

@media(max-width:1020px){
  .review-card{flex-basis:calc((100% - 16px)/2)}
  .tour-summary{grid-template-columns:1fr;gap:28px}
  .tour-summary__intro p{max-width:55ch}
}

@media(max-width:820px){
  .hero__body h1{margin-bottom:24px}
  .hero__body .lead{line-height:1.58;margin-bottom:32px}
  .tour-summary-section{padding-top:22px;padding-bottom:62px}
  .tour-summary{padding:24px;border-radius:var(--r-lg)}
  .tour-summary__grid{grid-template-columns:1fr}
  .summary-item{min-height:0;padding:17px}
  .tour-summary__footer{align-items:flex-start;line-height:1.5}
  .section-head--reviews{display:block}.reviews-rating{width:max-content;margin-top:20px}
  .review-card{flex-basis:calc(100% - 30px);min-height:235px}
  .journey-hint small{max-width:36ch;margin-inline:auto}
  .journey-nav{position:relative;padding-bottom:14px;scrollbar-width:none;scroll-padding-inline:16px}
  .journey-nav::-webkit-scrollbar{display:none}
  .journey-nav::after{content:'';position:sticky;left:0;flex:0 0 28px;background:linear-gradient(90deg,var(--paper),transparent);pointer-events:none}
  .registration-modal{overflow:hidden;max-height:94dvh}
  .registration-modal__form{overflow:auto;max-height:calc(94dvh - 150px);padding-top:48px}
  .dialog-close{position:absolute;top:12px;left:12px;width:44px;height:44px}
}

@media(max-width:580px){
  .hero__body{padding-top:82px}
  .tour-summary{padding:21px}
  .tour-summary__intro h2{font-size:34px}
  .summary-item strong{font-size:18px}
  .reviews-carousel{padding:15px;border-radius:var(--r-lg)}
  .review-card{padding:21px}
  .reviews-carousel__topline{align-items:flex-start;flex-direction:column}
  .journey-toolbar{padding:15px 12px}
  .journey-controls{grid-template-columns:42px minmax(82px,auto) 42px;gap:12px}
  .reviews-controls{grid-template-columns:42px minmax(88px,auto) 42px;gap:10px 12px}
  .reviews-hint{margin-top:2px}
}

@media(prefers-reduced-motion:reduce){
  .review-card--loading{animation:none}
}
.chat-btn.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.chat-btn.is-visible:hover{transform:translateY(-2px)}

/* ============================================================
   V9 — refined navigation, lighter departures and guide teaser
   ============================================================ */

/* Registration button in the navigation: quiet, legible and premium. */
.nav a.btn-head{
  color:var(--river);
  background:rgba(14,89,104,.09);
  border:1px solid rgba(14,89,104,.22);
  padding:10px 21px;
  border-radius:var(--r-pill);
  font-weight:800;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.nav a.btn-head:hover,
.nav a.btn-head:focus-visible{
  color:var(--white);
  background:var(--river);
  border-color:var(--river);
  transform:translateY(-1px);
}

/* Home departures board: brighter shell with clearly separated rows. */
.board{
  background:var(--surface-board);
  color:var(--ink);
  border:1px solid rgba(14,89,104,.13);
  box-shadow:var(--shadow-sm);
}
.board::before{
  height:3px;
  background:linear-gradient(90deg,transparent,var(--river-lit),var(--brass),transparent);
  opacity:.62;
}
.board .eyebrow--light{color:var(--river)}
.board .display{color:var(--ink)}
.board .btn--ghost{
  color:var(--river);
  background:rgba(255,255,255,.68);
  border-color:rgba(14,89,104,.27);
}
.board .btn--ghost:hover{color:var(--white);background:var(--river);border-color:var(--river)}
.board__rows{gap:10px}
.board__row{
  padding:17px 18px;
  border:1px solid rgba(14,89,104,.10);
  border-radius:var(--r-md);
  background:rgba(255,255,255,.82);
  box-shadow:none;
  transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.board__row:first-child{border-top:1px solid rgba(14,89,104,.10)}
.board__row:hover{
  background:#fff;
  border-color:rgba(14,89,104,.20);
  transform:translateY(-1px);
  box-shadow:var(--shadow-sm);
}
.board__meta{color:var(--stone)}
.board .pill{background:rgba(217,155,46,.12);color:#94651B;border-color:rgba(217,155,46,.28)}

/* Compact guide teaser on the home page. */
.guide-teaser-section{padding-top:22px;padding-bottom:var(--s6)}
.guide-teaser{
  display:grid;
  grid-template-columns:92px minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
  padding:22px 24px;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:var(--white);
  box-shadow:var(--shadow-sm);
}
.guide-teaser img{width:92px;height:92px;border-radius:var(--r-sm);object-fit:cover;object-position:center 24%}
.guide-teaser__copy{min-width:0}
.guide-teaser__copy .eyebrow{margin-bottom:5px}
.guide-teaser__copy h2{font-size:clamp(25px,3vw,36px);line-height:1.05;letter-spacing:-.045em;margin:0 0 7px}
.guide-teaser__copy p{max-width:68ch;margin:0;color:var(--stone);font-size:16px;line-height:1.55}
.guide-teaser .btn{white-space:nowrap}

/* Registration submission feedback. */
.form-error{
  margin:14px 0 0;
  padding:11px 13px;
  border:1px solid rgba(170,49,49,.22);
  border-radius:var(--r-sm);
  background:rgba(170,49,49,.07);
  color:#8A2929;
  font-size:14px;
  font-weight:600;
}
.registration-form.is-sending{opacity:.88}
.registration-form .submit-btn:disabled{cursor:wait;transform:none;opacity:.72}

@media(max-width:820px){
  .nav a.btn-head{padding:13px 18px;margin-top:10px;text-align:center}
  .board__row{padding:17px}
  .guide-teaser{grid-template-columns:72px 1fr;gap:16px;padding:18px}
  .guide-teaser img{width:72px;height:72px}
  .guide-teaser .btn{grid-column:1/-1;width:100%}
}

@media(max-width:480px){
  .guide-teaser{grid-template-columns:58px 1fr;gap:13px}
  .guide-teaser img{width:58px;height:58px}
  .guide-teaser__copy p{font-size:14.5px}
  .board__row{padding:15px}
}

/* ============================================================
   V11 — final QA, accessibility and integration polish
   ============================================================ */
:root{--stone:#5D7177}
[hidden]{display:none!important}

.skip-link{
  position:fixed;z-index:200;top:10px;right:12px;
  padding:10px 16px;border-radius:var(--r-pill);background:var(--night);color:#fff;
  font-weight:800;transform:translateY(-150%);transition:transform .18s ease
}
.skip-link:focus{transform:none}

/* Content remains available when JavaScript or an observer fails. */
.reveal{opacity:1;transform:none}
.js .reveal{opacity:0;transform:translateY(18px)}
.js .reveal.is-in{opacity:1;transform:none}

.footer__note{color:rgba(255,255,255,.55)}
.footer a{color:rgba(255,255,255,.78)}
/* Do not change the body's vertical overflow when the mobile menu opens.
   On iOS Safari that breaks the sticky header's viewport position and moves
   both the hamburger button and its fixed menu back toward the top of the page. */
.board .schedule-empty .btn--line{color:var(--river);border-color:rgba(14,89,104,.32)}

.form-no-dates{
  margin:-8px 0 20px;padding:12px 14px;border-radius:var(--r-sm);
  background:#FFF5E4;border:1px solid rgba(217,155,46,.28);color:#73511D;font-size:14px
}
.registration-form[aria-busy="true"],.contact-form[aria-busy="true"]{opacity:.84}
.registration-form button:disabled,.contact-form button:disabled{cursor:not-allowed;opacity:.65;transform:none}
.contact-success,.registration-success{outline:none}
.field-optional{font-size:12px;color:var(--stone);font-weight:500}
.hp-field{position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}

/* Keep the fixed action bar elegant and out of the way until it is useful. */
@media(max-width:820px){
  .mobile-bar{
    opacity:0;transform:translateY(110%);pointer-events:none;
    transition:opacity .22s ease,transform .22s cubic-bezier(.2,.8,.2,1)
  }
  .mobile-bar.is-visible{opacity:1;transform:none;pointer-events:auto}
  .nav{z-index:62}
  .hero__body h1{max-width:9ch}
}

/* The registration dialog always stays above chat and fixed navigation. */
.registration-dialog{z-index:120}
.registration-dialog::backdrop{z-index:119}
.dialog-close{touch-action:manipulation}

.review-card--empty{align-items:center;justify-content:center;text-align:center;color:var(--stone)}
.reviews-carousel[aria-busy="true"] .reviews-controls{opacity:.55;pointer-events:none}

.not-found-page{min-height:calc(100svh - var(--header-h));display:grid;place-items:center}
.not-found-card{max-width:760px;padding:clamp(36px,7vw,82px);border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--shadow-sm)}
.not-found-mark{display:block;color:var(--brass);font-size:14px;font-weight:800;letter-spacing:.2em;margin-bottom:14px}
.not-found-card .lead{margin:18px 0 28px}

@media(max-width:520px){
  .schedule-empty .btn{width:100%}
  .not-found-card{padding:30px 22px;border-radius:var(--r-lg)}
}

/* V11.1 — final layout refinements */
.board__date-wrap{display:block;min-width:0}
.board__meta{display:block;margin-top:2px;line-height:1.45}
.schedule-empty__icon{
  width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  background:rgba(14,89,104,.09);color:var(--river)!important;font-size:20px;font-weight:800
}
.no-dates-note a,.form-no-dates a{text-decoration:underline;text-underline-offset:3px;font-weight:700}
.contact-success.is-on{display:block}

@media(max-width:820px){
  body.no-mobile-bar{padding-bottom:0}
  body.no-mobile-bar .footer{padding-bottom:var(--s6)}
  .board__row{align-items:center}
  .board__date-wrap{grid-column:1/-1}
  .board__meta{margin-top:4px}
}

@media(max-width:420px){
  .hero__body .lead{max-width:31ch}
}

/* ============================================================
   V11.2 — final interaction, readability and touch polish
   ============================================================ */
html,body{max-width:100%;overflow-x:clip}
button,a,summary,select{touch-action:manipulation}

.display{
  line-height:1.045;
  letter-spacing:-.045em;
  text-wrap:balance;
}
h1.display{line-height:1.025}
h2.display{line-height:1.055}
.lead{text-wrap:pretty}

.field input,.field select,.field textarea{min-height:52px}
.field textarea{min-height:122px}
.field input[dir="ltr"]{text-align:left}
.selected-date-panel select{min-height:52px;padding:12px 14px;border-radius:var(--r-sm)}
.contact-submit{width:100%}

.stepper{grid-template-columns:44px 44px 44px;min-height:44px}
.stepper button{width:44px;height:44px}
.stepper input{width:44px;height:44px}
.carousel-arrow{width:44px;height:44px}
.journey-controls button{width:44px;height:44px}
.dialog-close{min-width:44px;min-height:44px}

/* Reveal effects activate only after the application JavaScript is ready. */
.js .reveal{opacity:1;transform:none}
.js.reveal-enabled .reveal{opacity:0;transform:translateY(18px)}
.js.reveal-enabled .reveal.is-in{opacity:1;transform:none}

@media(max-width:820px){
  .nav{
    display:flex;
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    transform:translateY(-10px);
    max-height:0;
    overflow:hidden;
    transition:opacity .2s ease,transform .2s ease,max-height .25s ease,visibility 0s linear .25s;
  }
  .nav.is-open{
    visibility:visible;
    opacity:1;
    pointer-events:auto;
    transform:none;
    max-height:calc(100dvh - var(--header-h));
    overflow-y:auto;
    transition-delay:0s;
  }
  .mobile-bar{visibility:hidden}
  .mobile-bar.is-visible{visibility:visible}
  .display{letter-spacing:-.026em}
  h1.display{line-height:1.09}
  h2.display{line-height:1.09}
  .actions .btn{min-width:0}
  .registration-modal__form{overscroll-behavior:contain}
}

@media(max-width:420px){
  .display{letter-spacing:-.018em}
  .stepper{grid-template-columns:42px 42px 42px}
  .stepper button,.stepper input{width:42px;height:42px}
}

@media(prefers-reduced-motion:reduce){
  .js.reveal-enabled .reveal{opacity:1;transform:none}
  .nav,.mobile-bar{transition:none!important}
}

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

/* --- טיפוגרפיית ה-Hero ---
   מעקב אופטי: בעברית מרווח שלילי אגרסיבי פוגע בקריאות
   בגדלים קטנים, ומוסיף חדות בגדלים גדולים. לכן המרווח
   מתהדק ככל שהגודל עולה, ולא ערך אחד לכל המסכים. */
.hero__body h1{
  font-size:clamp(42px,8.2vw,96px);
  line-height:1.02;
  letter-spacing:-.022em;
  margin-bottom:var(--s3);
  text-wrap:balance;
}
@media(min-width:900px){
  .hero__body h1{line-height:.99;letter-spacing:-.038em}
}

/* --- ריתמוס אנכי ---
   כל מרווח סקשן נצמד לסולם. ערכים כמו 42/88/22/96
   שהצטברו בגרסאות קודמות שברו את הקצב. */
.section{padding-block:var(--s7)}
.section--tight{padding-block:var(--s5)}
.section-head{margin-bottom:var(--s5)}
.hero__body{padding-block:var(--s6) calc(var(--s6) + var(--s4))}

@media(max-width:820px){
  .section{padding-block:var(--s6)}
  .section--tight{padding-block:var(--s4)}
  .section-head{margin-bottom:var(--s4)}
  .hero__body{padding-block:var(--s5) var(--s6)}
}

/* --- ספרות טבלאיות ---
   תאריכים, מחירים ומונים מיושרים בעמודה אחת.
   בלי זה הספרות "רוקדות" בין שורות הלוח. */
.board__date,.board__meta,.date-card__date,.date-card__meta,
.fact strong,.price,.stepper input,.next-out__date,
time,[data-date],.summary-value{
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
}

/* --- שטח מגע: 44px מינימום בכל אלמנט לחיץ --- */
.btn{min-height:44px}
.stepper button{min-width:44px;min-height:44px}
.stepper input{height:44px}
.field input,.field select{min-height:48px}
.field textarea{min-height:122px}

/* --- טבעת פוקוס אחידה ---
   אותה טבעת בכל האתר, כולל על משטחים כהים. */
:focus-visible{
  outline:2px solid var(--river-lit);
  outline-offset:3px;
  border-radius:6px;
}
.section--dark :focus-visible,.board :focus-visible,
.footer :focus-visible,.hero :focus-visible{
  outline-color:var(--brass);
}

/* --- בחירת טקסט בצבע המותג --- */
::selection{background:var(--river);color:#fff}

/* --- איזון שורות ---
   כותרות מתאזנות, פסקאות בלי שורה יתומה. */
h1,h2,h3,.display{text-wrap:balance}
p,.lead,li{text-wrap:pretty}

/* --- שטח מגע לבקרות אייקון ---
   הנקודה/האייקון נשארים קטנים ויזואלית;
   רק אזור הלחיצה גדל ל-44px. */
.menu-btn,.dialog-close,
.journey-nav button,.reviews-nav button{
  min-width:44px;min-height:44px;
}


/* ============================================================
   V13 — registration-dialog scroll fix
   מקור אמת יחיד: חלון ההרשמה תמיד נשאר בתוך ה-viewport,
   והטופס עצמו הוא אזור גלילה עצמאי גם לאחר פתיחת שדות נוספים.
   ============================================================ */
.registration-dialog{
  max-height:calc(100dvh - 24px);
  overflow:hidden;
}
.registration-modal{
  height:min(90dvh,820px);
  max-height:calc(100dvh - 24px);
  min-height:0;
  overflow:hidden;
}
.registration-modal__form{
  min-width:0;
  min-height:0;
  height:100%;
  padding:0;
  overflow:hidden;
  display:grid;
  grid-template-rows:minmax(0,1fr);
  background:var(--white);
}
.registration-dialog .registration-form{
  min-width:0;
  min-height:0;
  height:100%;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
  scrollbar-width:thin;
  scrollbar-color:rgba(14,89,104,.45) transparent;
  scroll-padding-block:24px 96px;
  padding:46px 40px 34px;
  touch-action:pan-y;
}
.registration-dialog .registration-form::-webkit-scrollbar{width:8px}
.registration-dialog .registration-form::-webkit-scrollbar-track{background:transparent}
.registration-dialog .registration-form::-webkit-scrollbar-thumb{
  background:rgba(14,89,104,.32);
  border-radius:var(--r-pill);
  border:2px solid transparent;
  background-clip:padding-box;
}
.registration-dialog .registration-form::-webkit-scrollbar-thumb:hover{background:rgba(14,89,104,.5);background-clip:padding-box}
.registration-dialog .form-more[open]{scroll-margin-block:18px 90px}
.registration-dialog .registration-success{
  align-self:center;
  margin:40px;
  overflow-y:auto;
  max-height:calc(100% - 80px);
}

@media(max-width:820px){
  .registration-dialog{
    max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));
  }
  .registration-modal{
    display:flex;
    flex-direction:column;
    height:min(94dvh,900px);
    max-height:calc(100dvh - max(8px,env(safe-area-inset-top)));
    overflow:hidden;
  }
  .registration-modal__intro{flex:0 0 auto}
  .registration-modal__form{
    flex:1 1 auto;
    height:auto;
    min-height:0;
  }
  .registration-dialog .registration-form{
    padding:48px 20px calc(34px + env(safe-area-inset-bottom));
    scroll-padding-block:20px calc(96px + env(safe-area-inset-bottom));
  }
  .registration-dialog .registration-success{
    margin:24px 20px calc(24px + env(safe-area-inset-bottom));
    max-height:calc(100% - 48px - env(safe-area-inset-bottom));
  }
}


/* ============================================================
   V14 — mobile overlap safety
   The hero and the upcoming-departure card should never collide on phones.
   On smaller viewports the card becomes a distinct block below the hero
   instead of visually overlapping it.
   ============================================================ */
@media(max-width:820px){
  .hero{min-height:auto}
  .hero__body{padding-top:82px;padding-bottom:calc(var(--s6) + 36px)}
  .next-out{margin-top:0;padding-top:12px;margin-bottom:var(--s4)}
  .next-out__card{border-radius:var(--r-lg);box-shadow:0 22px 52px rgba(6,18,24,.28)}
}

@media(max-width:580px){
  .hero__body{padding-top:78px;padding-bottom:calc(var(--s5) + 24px)}
  .next-out{padding-top:10px}
  .next-out__card{padding:18px;gap:16px}
  .next-out__meta{line-height:1.55}
}

/* ============================================================
   V17 — כפתור השליחה נשאר גלוי בתוך חלון ההרשמה
   ------------------------------------------------------------
   הכפתור דביק רק בתוך הדיאלוג. בגרסה הקודמת פסאודו־אלמנט
   לבן עם z-index שלילי כיסה בפועל את הכפתור בחלק מהדפדפנים.
   הצללה רגילה נותנת הפרדה מהתוכן בלי שכבת ציור נוספת.
   ============================================================ */

.registration-dialog .registration-form .submit-btn{
  position:sticky;
  bottom:0;
  z-index:6;
  width:100%;
  min-height:58px;
  margin-top:var(--s3);
  box-shadow:0 -18px 24px -22px rgba(10,26,34,.28);
}
.registration-dialog .registration-form .submit-btn::after{content:none}

/* בעמוד ההרשמה המלא אין צורך בכפתור דביק. */
.direct-registration-card .submit-btn{
  position:static;
  min-height:58px;
  box-shadow:none;
}
.direct-registration-card .submit-btn::after{content:none}

/* ------------------------------------------------------------
   גובה אזור הגלילה — בלי מספרי קסם.
   calc(94dvh - 150px) הניח שהכותרת וקופסת התאריך הן 150px.
   הן משתנות לפי תוכן ומצב מקלדת. עמודת flex מודדת אותן
   בפועל ונותנת לטופס בדיוק את מה שנשאר.
   ------------------------------------------------------------ */
.registration-modal{display:flex;flex-direction:column;max-height:inherit}
.registration-modal__form{
  flex:1 1 auto;
  min-height:0;        /* קריטי: בלעדיו פריט flex לא מתכווץ מתחת לתוכנו */
  max-height:none;
  display:flex;
  flex-direction:column;
}
.registration-form{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}

/* ============================================================
   V16 — המלצות אמיתיות ומידע מעשי מדויק, בלי להעמיס
   ============================================================ */
.reviews-rating.is-facebook span{
  color:var(--river);
  letter-spacing:0;
  font-size:13px;
  font-weight:800;
}
.review-card__recommendation{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border:1px solid rgba(33,94,101,.22);
  border-radius:var(--r-pill);
  color:var(--river);
  background:#F1F7F6;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.quote cite{
  display:block;
  margin-top:12px;
  color:var(--stone);
  font-size:13px;
  font-style:normal;
  font-weight:700;
}
@media(max-width:820px){
  .quote{max-width:29ch;margin:var(--s4) 0;font-size:clamp(22px,6.1vw,25px)}
}
.trip-included-note{
  margin:26px 0 0;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.15);
  color:rgba(255,255,255,.72)!important;
  font-size:14px;
  line-height:1.55;
}


/* ============================================================
   V20 — זהות המפעיל, Hero מצולם, המלצות אותנטיות וצ׳אט RTL
   ============================================================ */

/* Hero: שלוש תמונות רלוונטיות לטיול, עם מעבר שקט וללא בקרות מיותרות. */
.hero__media{isolation:isolate}
.hero-slide{
  position:absolute;
  inset:0;
  display:block;
  opacity:0;
  transform:scale(1.015);
  transition:opacity 1.15s ease,transform 7s ease;
  z-index:0;
}
.hero-slide.is-active{opacity:1;transform:scale(1);z-index:1}
.hero-slide img{width:100%;height:100%;object-fit:cover}
.hero__media::after{z-index:2;pointer-events:none}
.hero__guide{
  display:block;
  margin-top:14px;
  color:rgba(255,255,255,.92);
  font-size:clamp(24px,3.2vw,40px);
  line-height:1.08;
  letter-spacing:-.022em;
  font-weight:700;
}

/* דמות אילן נשארת ברורה גם בכרטיס הקטן וגם בעמוד האודות. */
.guide-teaser img{object-position:center 28%}
.about__photo img{object-position:center 24%}

/* תמונות ממליצים אמיתיות: נוכחות מספקת בלי להפוך את הכרטיס לגלריה. */
.review-card__avatar{width:44px;height:44px;flex:0 0 44px}
.review-card__author>div{min-width:0}
.review-card__author small:empty{display:none}

/* Launcher ובועת פתיחה מקומיים. הווידג׳ט של Tawk נפתח רק בלחיצה. */
.site-chat{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:74;
  direction:rtl;
  font-family:Assistant,system-ui,Arial,sans-serif;
}
.site-chat[hidden]{display:none}
.site-chat__launcher{
  width:58px;
  height:58px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  display:grid;
  place-items:center;
  padding:0;
  color:#fff;
  background:var(--river);
  box-shadow:0 14px 34px rgba(10,26,34,.24);
  cursor:pointer;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease;
}
.site-chat__launcher:hover{transform:translateY(-2px);background:var(--river-lit);box-shadow:0 18px 38px rgba(10,26,34,.3)}
.site-chat__launcher svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-chat__prompt{
  position:absolute;
  right:0;
  bottom:72px;
  width:min(310px,calc(100vw - 32px));
  padding:22px 20px 18px;
  border:1px solid rgba(14,89,104,.16);
  border-radius:var(--r-md);
  background:#fff;
  color:var(--ink);
  box-shadow:0 22px 58px rgba(10,26,34,.20);
  text-align:right;
}
.site-chat__prompt[hidden]{display:none}
.site-chat__prompt::after{
  content:"";
  position:absolute;
  right:20px;
  bottom:-7px;
  width:14px;
  height:14px;
  background:#fff;
  border-right:1px solid rgba(14,89,104,.16);
  border-bottom:1px solid rgba(14,89,104,.16);
  transform:rotate(45deg);
}
.site-chat__close{
  position:absolute;
  left:10px;
  top:9px;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:transparent;
  color:var(--stone);
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.site-chat__close:hover{background:var(--surface-soft);color:var(--ink)}
.site-chat__kicker{
  display:block;
  margin:0 0 7px;
  color:var(--river);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
}
.site-chat__prompt p{margin:0 0 16px;padding-left:24px;font-size:16px;line-height:1.55;text-align:right}
.site-chat__actions{display:grid;gap:8px}
.site-chat__actions button{
  min-height:44px;
  padding:0 14px;
  border:1px solid rgba(14,89,104,.24);
  border-radius:var(--r-sm);
  background:#fff;
  color:var(--river);
  font-weight:800;
  text-align:right;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.site-chat__actions button:first-child{background:var(--river);border-color:var(--river);color:#fff}
.site-chat__actions button:hover{background:var(--night);border-color:var(--night);color:#fff}
body.mobile-bar-visible .site-chat{bottom:calc(82px + env(safe-area-inset-bottom))}

@media(max-width:820px){
  .hero__guide{margin-top:12px;font-size:clamp(23px,7vw,31px)}
  .site-chat{right:14px;bottom:14px}
  .site-chat__launcher{width:54px;height:54px}
  .site-chat__prompt{bottom:67px;padding:20px 18px 16px}
  body.mobile-bar-visible .site-chat{bottom:calc(78px + env(safe-area-inset-bottom))}
}

@media(prefers-reduced-motion:reduce){
  .hero-slide{transition:none;transform:none}
  .site-chat__launcher{transition:none}
}

/* ============================================================
   V21 — Hero קולנועי, אילן במרכז, וחלון הרשמה מרווח
   ============================================================ */

/* ---------- Hero: פריסה עריכתית במחשב, פריים קולנועי במובייל ---------- */
.hero.hero--cinematic{
  position:relative;
  display:block;
  min-height:auto;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 18% 18%,rgba(42,139,156,.20),transparent 34%),
    linear-gradient(145deg,#07151c 0%,var(--night) 48%,#102a34 100%);
}
.hero.hero--cinematic::before{
  content:"";
  position:absolute;
  inset:-30% auto auto -16%;
  width:min(760px,62vw);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(217,155,46,.10),transparent 68%);
  pointer-events:none;
}
.hero.hero--cinematic::after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.17;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 20% 30%,rgba(255,255,255,.18) 0 1px,transparent 1.3px),
    radial-gradient(circle at 72% 62%,rgba(255,255,255,.12) 0 1px,transparent 1.4px);
  background-size:19px 19px,23px 23px;
  mix-blend-mode:soft-light;
}
.hero--cinematic .hero__grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(350px,.82fr) minmax(0,1.18fr);
  align-items:center;
  gap:clamp(42px,5.8vw,86px);
  padding-block:clamp(68px,6vw,88px) clamp(132px,11vw,156px);
}
.hero--cinematic .hero__body{
  position:relative;
  z-index:3;
  max-width:560px;
  padding:0;
  color:#fff;
}
.hero--cinematic .hero__body h1{
  max-width:9.4ch;
  margin-bottom:22px;
  font-size:clamp(56px,6.4vw,88px);
  line-height:.99;
  letter-spacing:-.04em;
}
.hero--cinematic .hero__guide{
  display:block;
  margin-top:14px;
  color:rgba(255,255,255,.91);
  font-size:clamp(24px,2.8vw,38px);
  line-height:1.08;
  letter-spacing:-.025em;
  font-weight:700;
}
.hero--cinematic .hero__body .lead{
  max-width:38ch;
  margin-bottom:32px;
  color:rgba(255,255,255,.78);
  font-size:clamp(17px,1.45vw,20px);
  line-height:1.62;
}
.hero--cinematic .actions{gap:12px}
.hero--cinematic .actions .btn{min-width:178px}
.hero--cinematic .actions .btn:first-child{box-shadow:0 16px 38px rgba(0,0,0,.28)}

.guide-chip{
  width:min(100%,480px);
  margin-top:26px;
  padding:10px 13px 10px 10px;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 18px;
  align-items:center;
  gap:13px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:var(--r-md);
  background:rgba(255,255,255,.065);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(12px);
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.guide-chip:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.10);
  border-color:rgba(217,155,46,.48);
}
.guide-chip img{
  width:58px;
  height:58px;
  border-radius:var(--r-sm);
  object-fit:cover;
  border:1px solid rgba(217,155,46,.62);
}
.guide-chip__text{display:grid;min-width:0;line-height:1.25}
.guide-chip__text small{color:var(--brass);font-size:11.5px;font-weight:800;letter-spacing:.08em}
.guide-chip__text b{margin-top:2px;font-size:16.5px;font-weight:800}
.guide-chip__text em{margin-top:3px;color:rgba(255,255,255,.62);font-size:12.5px;font-style:normal;white-space:normal}
.guide-chip__arrow{width:18px;height:18px;stroke:var(--brass);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.guide-chip:hover .guide-chip__arrow{transform:translateX(-3px)}

.hero-cinema{display:grid;gap:12px;min-width:0}
.hero-cinema__main{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r-lg);
  background:#0b2029;
  box-shadow:0 34px 86px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08);
}
.hero-cinema__main::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(5,14,19,.06) 0%,rgba(5,14,19,.02) 42%,rgba(5,14,19,.78) 100%),
    linear-gradient(90deg,rgba(5,14,19,.12),transparent 32%,transparent 70%,rgba(5,14,19,.10));
}
.hero-cinema__main::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),inset 0 -80px 110px rgba(0,0,0,.14);
}
.hero-frame{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  transform:scale(1.045);
  transition:opacity 1.15s ease,transform 7s cubic-bezier(.18,.72,.2,1);
  z-index:0;
}
.hero-frame.is-active{opacity:1;transform:scale(1);z-index:2}
.hero-frame picture,.hero-frame img{display:block;width:100%;height:100%}
.hero-frame img{object-fit:cover;filter:saturate(1.03) contrast(1.035)}
.hero-frame figcaption{
  position:absolute;
  z-index:6;
  inset-inline:24px;
  bottom:22px;
  display:grid;
  gap:2px;
  color:#fff;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .55s ease .35s,transform .55s ease .35s;
}
.hero-frame.is-active figcaption{opacity:1;transform:none}
.hero-frame figcaption span{color:var(--brass);font-size:11.5px;font-weight:800;letter-spacing:.1em}
.hero-frame figcaption b{max-width:28ch;font-size:17px;line-height:1.3;font-weight:700;text-shadow:0 2px 18px rgba(0,0,0,.42)}
.hero-cinema__progress{
  position:absolute;
  z-index:8;
  top:20px;
  right:20px;
  display:flex;
  gap:6px;
  direction:ltr;
}
.hero-cinema__progress span{
  position:relative;
  width:34px;
  height:3px;
  overflow:hidden;
  border-radius:var(--r-pill);
  background:rgba(255,255,255,.30);
}
.hero-cinema__progress span::after{
  content:"";
  position:absolute;
  inset:0;
  transform:scaleX(0);
  transform-origin:left;
  background:#fff;
}
.hero-cinema__progress span.is-active::after{animation:heroCinemaProgress 6.5s linear forwards}
@keyframes heroCinemaProgress{to{transform:scaleX(1)}}

.hero-cinema__cutaways{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hero-cutaway{
  position:relative;
  margin:0;
  aspect-ratio:20/9;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-md);
  background:var(--night-2);
  box-shadow:0 18px 44px rgba(0,0,0,.26);
}
.hero-cutaway::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(5,14,19,.82) 100%);pointer-events:none}
.hero-cutaway img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.hero-cutaway:hover img{transform:scale(1.035)}
.hero-cutaway figcaption{position:absolute;z-index:2;right:16px;bottom:12px;color:#fff;font-size:13px;font-weight:800}

@media(min-width:921px){
  .hero--cinematic + .next-out{margin-top:-84px}
}

/* ---------- אילן: מקטע תוכן מרכזי ולא טיזר קטן ---------- */
.guide-feature-section{padding-top:var(--s6);padding-bottom:var(--s6)}
.guide-feature{
  display:grid;
  grid-template-columns:minmax(330px,.84fr) minmax(0,1.16fr);
  direction:ltr;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  background:#fff;
  box-shadow:var(--shadow-sm);
}
.guide-feature>*{direction:rtl}
.guide-feature__media{position:relative;min-height:540px;overflow:hidden;background:var(--night)}
.guide-feature__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(6,18,24,.82) 100%);pointer-events:none}
.guide-feature__media img{width:100%;height:100%;object-fit:cover;object-position:center 26%}
.guide-feature__identity{
  position:absolute;
  z-index:2;
  right:24px;
  left:24px;
  bottom:22px;
  display:grid;
  gap:2px;
  color:#fff;
}
.guide-feature__identity span{color:var(--brass);font-size:11.5px;font-weight:800;letter-spacing:.09em}
.guide-feature__identity strong{font-size:22px;line-height:1.2}
.guide-feature__copy{padding:clamp(38px,5vw,64px);display:flex;flex-direction:column;justify-content:center;min-width:0}
.guide-feature__copy .eyebrow{margin-bottom:12px}
.guide-feature__copy h2{margin-bottom:22px;font-size:clamp(44px,5.4vw,68px);line-height:.98}
.guide-feature__copy>.lead{max-width:48ch;color:var(--ink);font-size:18px;line-height:1.68}
.guide-feature__quote{
  margin:28px 0 0;
  padding:20px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  color:var(--river);
  font-size:20px;
  line-height:1.55;
  font-weight:700;
}
.guide-feature__quote cite{display:block;margin-top:7px;color:var(--stone);font-size:12.5px;font-style:normal;font-weight:700}
.guide-feature__facts{
  list-style:none;
  margin:24px 0 28px;
  padding:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.guide-feature__facts li{padding:17px 15px;display:grid;gap:3px;border-inline-start:1px solid var(--line)}
.guide-feature__facts li:first-child{border-inline-start:0}
.guide-feature__facts strong{font-size:14px;color:var(--ink)}
.guide-feature__facts span{font-size:12.5px;line-height:1.45;color:var(--stone)}
.guide-feature__copy .btn{align-self:flex-start}

/* ---------- חלון ההרשמה: יותר טופס, פחות כותרת ופחות גלילה ---------- */
.registration-dialog{
  width:min(1180px,calc(100vw - 40px));
  height:min(88dvh,720px);
  max-height:calc(100dvh - 20px);
  overflow:hidden;
  border-radius:var(--r-lg);
}
.registration-modal{
  display:grid;
  grid-template-columns:minmax(260px,292px) minmax(0,1fr);
  height:100%;
  max-height:none;
  min-height:0;
  overflow:hidden;
  border-radius:inherit;
  background:#fff;
}
.registration-modal__intro{
  min-width:0;
  padding:34px 28px 28px;
  display:flex;
  flex-direction:column;
  color:#fff;
  background:
    radial-gradient(circle at 20% 10%,rgba(42,139,156,.22),transparent 38%),
    var(--night);
}
.registration-modal__intro .eyebrow{margin-bottom:12px}
.registration-modal__intro h2{
  margin:0 0 13px;
  max-width:8ch;
  color:#fff;
  font-size:clamp(34px,3.4vw,46px);
  line-height:1.02;
  letter-spacing:-.035em;
}
.registration-modal__intro>p{margin:0 0 18px;color:rgba(255,255,255,.68);font-size:14.5px;line-height:1.55}
.registration-modal .modal-date-box{margin:0;padding:13px 14px;gap:3px;border-radius:var(--r-md)}
.registration-modal .modal-date-box span{font-size:11px}
.registration-modal .modal-date-box strong{font-size:16px;line-height:1.35}
.registration-modal .modal-assurances{margin:auto 0 0;gap:8px;font-size:12.5px}
.registration-modal .modal-assurances li{gap:8px}
.registration-modal .modal-assurances li::before{width:19px;height:19px;font-size:11px}
.registration-modal__form{
  position:relative;
  min-width:0;
  min-height:0;
  height:100%;
  padding:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  background:#fff;
}
.registration-dialog .registration-form{
  flex:1 1 auto;
  min-width:0;
  min-height:0;
  height:100%;
  overflow-y:auto;
  overflow-x:hidden;
  padding:24px 30px 20px;
  scroll-padding-block:18px 78px;
}
.registration-modal .form-topline{margin-bottom:14px;padding-left:52px;align-items:center}
.registration-modal .form-topline h3{margin-top:1px;font-size:20px;line-height:1.2}
.registration-modal .form-kicker{font-size:11px}
.registration-modal .form-time{font-size:11.5px;padding:4px 9px}
.registration-dialog .selected-date-panel{
  grid-template-columns:auto minmax(220px,1fr);
  align-items:center;
  gap:10px 14px;
  margin-bottom:14px;
  padding:11px 13px;
  border-radius:var(--r-md);
}
.registration-dialog .selected-date-panel label{font-size:13px;white-space:nowrap}
.registration-dialog .selected-date-panel select{min-height:44px;padding-block:8px}
.registration-dialog .selected-date-panel span{display:none}
.registration-dialog .form-grid--compact{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.registration-dialog .form-grid--compact .field--full{grid-column:auto}
.registration-dialog .field label{margin-bottom:5px;font-size:12.5px}
.registration-dialog .field input,.registration-dialog .field select{min-height:44px;padding:9px 11px}
.registration-dialog .party-fieldset{margin-bottom:14px}
.registration-dialog .party-fieldset legend{margin-bottom:7px;font-size:13.5px}
.registration-dialog .party-grid{gap:10px}
.registration-dialog .counter-row{padding:10px 11px;border-radius:var(--r-md)}
.registration-dialog .counter-row strong{font-size:14px}
.registration-dialog .counter-row small{font-size:11px}
.registration-dialog .stepper{grid-template-columns:38px 42px 38px}
.registration-dialog .stepper button,.registration-dialog .stepper input{height:40px;min-height:40px}
.registration-dialog .form-more{margin-bottom:12px;padding:11px 0}
.registration-dialog .form-more summary{font-size:14px}
.registration-dialog .form-more__body{padding-top:14px;gap:12px}
.registration-dialog .form-more textarea{min-height:92px}
.registration-dialog .registration-form .submit-btn{
  bottom:-1px;
  min-height:54px;
  margin-top:12px;
  box-shadow:0 -16px 22px -22px rgba(10,26,34,.34);
}
.registration-dialog .form-privacy{margin-top:6px;font-size:11.5px}
.registration-dialog .dialog-close{top:14px;left:14px;width:44px;height:44px;min-width:44px;min-height:44px;font-size:27px}
.registration-dialog .registration-success{margin:28px;max-height:calc(100% - 56px)}

@media(max-width:1080px) and (min-width:821px){
  .hero--cinematic .hero__grid{grid-template-columns:minmax(320px,.88fr) minmax(0,1.12fr);gap:38px}
  .hero--cinematic .hero__body h1{font-size:clamp(52px,6.8vw,74px)}
  .guide-feature{grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr)}
  .guide-feature__copy{padding:38px}
  .registration-dialog{width:calc(100vw - 24px)}
  .registration-modal{grid-template-columns:250px minmax(0,1fr)}
  .registration-dialog .registration-form{padding-inline:24px}
}

@media(max-width:920px){
  .hero.hero--cinematic{
    min-height:max(620px,calc(100svh - var(--header-h)));
    display:grid;
    align-items:end;
  }
  .hero.hero--cinematic::before{inset:-10% auto auto -45%;width:120vw}
  .hero.hero--cinematic::after{opacity:.10}
  .hero--cinematic .hero__grid{
    position:relative;
    display:block;
    width:min(100% - 32px,var(--max));
    min-height:inherit;
    padding-block:72px 70px;
  }
  .hero--cinematic .hero__body{max-width:570px;margin-inline-start:auto}
  .hero--cinematic .hero__body h1{max-width:9.5ch;font-size:clamp(46px,11.4vw,68px);line-height:1.01;letter-spacing:-.028em}
  .hero--cinematic .hero__guide{font-size:clamp(24px,6.8vw,34px)}
  .hero--cinematic .hero__body .lead{max-width:36ch;font-size:17px;line-height:1.58;margin-bottom:26px}
  .hero--cinematic .actions{display:grid;grid-template-columns:1fr 1fr;max-width:520px}
  .hero--cinematic .actions .btn{width:100%;min-width:0;padding-inline:16px}
  .guide-chip{max-width:520px;margin-top:20px;background:rgba(7,21,28,.48);border-color:rgba(255,255,255,.20)}
  .hero-cinema{
    position:absolute;
    z-index:0;
    top:0;
    bottom:0;
    left:50%;
    width:100vw;
    transform:translateX(-50%);
    display:block;
  }
  .hero-cinema__main{position:absolute;inset:0;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none}
  .hero-cinema__main::before{
    background:
      linear-gradient(180deg,rgba(4,14,19,.34) 0%,rgba(4,14,19,.26) 26%,rgba(4,14,19,.66) 66%,rgba(7,21,28,.97) 100%),
      linear-gradient(270deg,rgba(4,14,19,.12),rgba(4,14,19,.48) 82%);
  }
  .hero-cinema__main::after{box-shadow:inset 0 -160px 180px rgba(0,0,0,.16)}
  .hero-frame figcaption,.hero-cinema__progress,.hero-cinema__cutaways{display:none}
  .hero-frame img{filter:saturate(1.02) contrast(1.02)}
  .hero--cinematic + .next-out{margin-top:0;padding-top:12px}

  .guide-feature-section{padding-top:var(--s5);padding-bottom:var(--s5)}
  .guide-feature{grid-template-columns:1fr}
  .guide-feature__media{min-height:0;aspect-ratio:16/10}
  .guide-feature__copy{padding:30px 24px 32px}
  .guide-feature__copy h2{font-size:clamp(42px,9vw,58px)}
  .guide-feature__copy>.lead{font-size:17px}
  .guide-feature__quote{margin-top:22px;padding:17px 0;font-size:18px}
  .guide-feature__facts{grid-template-columns:1fr;margin:20px 0 24px}
  .guide-feature__facts li{padding:13px 0;border-inline-start:0;border-top:1px solid var(--line)}
  .guide-feature__facts li:first-child{border-top:0}
  .guide-feature__copy .btn{width:100%}
}

@media(max-width:820px){
  .registration-dialog{
    width:calc(100% - 12px);
    height:calc(100dvh - max(6px,env(safe-area-inset-top)));
    max-height:calc(100dvh - max(6px,env(safe-area-inset-top)));
    margin:auto 6px 0;
    border-radius:var(--r-lg) var(--r-lg) 0 0;
  }
  .registration-modal{
    display:flex;
    flex-direction:column;
    height:100%;
    max-height:none;
    border-radius:inherit;
  }
  .registration-modal__intro{
    flex:0 0 auto;
    display:block;
    padding:16px 62px 14px 18px;
  }
  .registration-modal__intro .eyebrow{margin-bottom:4px;font-size:10.5px}
  .registration-modal__intro h2{
    max-width:none;
    margin:0;
    font-size:clamp(25px,7vw,31px);
    line-height:1.08;
    letter-spacing:-.025em;
  }
  .registration-modal__intro>p{display:none}
  .registration-modal .modal-date-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:10px;
    padding:9px 11px;
  }
  .registration-modal .modal-date-box span{font-size:10.5px}
  .registration-modal .modal-date-box strong{font-size:14px;text-align:left}
  .registration-modal .modal-assurances{display:none}
  .registration-modal__form{flex:1 1 auto;min-height:0;height:auto}
  .registration-dialog .registration-form{
    padding:14px 16px calc(16px + env(safe-area-inset-bottom));
    scroll-padding-block:12px calc(72px + env(safe-area-inset-bottom));
  }
  .registration-modal .form-topline{display:none}
  .registration-dialog .selected-date-panel{
    display:grid;
    grid-template-columns:1fr;
    gap:5px;
    margin:0 0 10px;
    padding:9px 10px;
  }
  .registration-dialog .selected-date-panel label{font-size:12.5px}
  .registration-dialog .selected-date-panel select{min-height:42px}
  .registration-dialog .form-grid--compact{grid-template-columns:1fr;gap:8px;margin-bottom:10px}
  .registration-dialog .field label{margin-bottom:4px;font-size:12px}
  .registration-dialog .field input,.registration-dialog .field select{min-height:42px;padding:8px 10px}
  .registration-dialog .party-fieldset{margin-bottom:10px}
  .registration-dialog .party-fieldset legend{margin-bottom:6px;font-size:12.5px}
  .registration-dialog .party-grid{grid-template-columns:1fr 1fr;gap:8px}
  .registration-dialog .counter-row{display:grid;align-content:start;gap:7px;padding:9px;border-radius:var(--r-md)}
  .registration-dialog .counter-row>div:first-child{min-width:0}
  .registration-dialog .counter-row strong{font-size:13px}
  .registration-dialog .counter-row small{font-size:10.5px}
  .registration-dialog .stepper{width:100%;grid-template-columns:repeat(3,1fr);border-radius:var(--r-md)}
  .registration-dialog .stepper button,.registration-dialog .stepper input{width:100%;height:40px;min-width:0;min-height:40px}
  .registration-dialog .conditional-children{margin-bottom:10px}
  .registration-dialog .form-more{margin-bottom:9px;padding:10px 0}
  .registration-dialog .form-more summary{font-size:13.5px}
  .registration-dialog .form-more__body{padding-top:11px}
  .registration-dialog .registration-form .submit-btn{min-height:52px;margin-top:9px}
  .registration-dialog .form-privacy{margin-top:5px;font-size:10.5px;line-height:1.35}
  .registration-dialog .dialog-close{top:11px;left:11px;width:40px;height:40px;min-width:40px;min-height:40px;font-size:25px}
  .registration-dialog .registration-success{margin:20px 16px calc(20px + env(safe-area-inset-bottom));max-height:calc(100% - 40px - env(safe-area-inset-bottom))}
}

@media(max-width:520px){
  .hero--cinematic .hero__grid{padding-top:64px;padding-bottom:58px}
  .hero--cinematic .hero__body h1{font-size:clamp(43px,12.5vw,56px)}
  .hero--cinematic .hero__body .lead{font-size:16px}
  .hero--cinematic .actions{grid-template-columns:1fr;gap:10px}
  .guide-chip{grid-template-columns:52px minmax(0,1fr) 16px;padding:8px 10px 8px 8px;gap:10px}
  .guide-chip img{width:52px;height:52px}
  .guide-chip__text em{font-size:11.5px}
  .guide-feature__media{aspect-ratio:4/3}
  .guide-feature__identity{right:18px;left:18px;bottom:16px}
  .guide-feature__copy{padding:26px 20px 28px}
}

@media(prefers-reduced-motion:reduce){
  .hero-frame,.hero-frame figcaption,.hero-cutaway img,.guide-chip{transition:none!important}
  .hero-frame{transform:none!important}
  .hero-cinema__progress span.is-active::after{animation:none;transform:scaleX(1)}
}

/* ============================================================
   V23 — ביקורות ידניות, נקודות הטיול ומדיניות פרטיות
   ============================================================ */

/* ביקורות: מעבר ידני בלבד, ללא טיימר וללא בקרת הפעלה. */
.reviews-viewport:focus-visible{
  outline:2px solid var(--river);
  outline-offset:5px;
  border-radius:var(--r-md);
}
.reviews-viewport.is-dragging .review-card{pointer-events:none}
.reviews-controls--manual .carousel-arrow:disabled{box-shadow:none}
.reviews-hint{user-select:none;letter-spacing:.01em}
.review-card blockquote{white-space:normal}

/* הנקודות המרכזיות בטיול מוצגות כרצף עריכתי, לא כרכיב טכני. */
.journey-toolbar{
  background:var(--surface-soft);
  border-color:rgba(14,89,104,.14);
}
.journey-stage:focus-visible{
  outline:2px solid var(--river);
  outline-offset:5px;
}

/* קישורי פרטיות והודעות הסכמה ליד טפסים. */
.form-privacy{line-height:1.55}
.form-privacy a{
  color:var(--river);
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}
.form-privacy a:focus-visible,.footer a[data-open-privacy]:focus-visible{outline-color:currentColor}
.footer a[data-open-privacy]{
  text-decoration:underline;
  text-decoration-color:rgba(255,255,255,.28);
  text-underline-offset:4px;
}
.footer--compact{padding:22px 0}
.footer-compact__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:rgba(255,255,255,.72);
  font-size:14px;
}
.footer-compact__inner a{
  color:#fff;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:4px;
}

/* מודאל פרטיות: כותרת צד קומפקטית ושטח קריאה רחב. */
.privacy-dialog{
  width:min(1040px,calc(100% - 32px));
  max-width:none;
  max-height:calc(100dvh - 32px);
  padding:0;
  border:0;
  border-radius:var(--r-lg);
  background:transparent;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.privacy-dialog::backdrop{
  background:rgba(5,15,20,.72);
  backdrop-filter:blur(5px);
}
.privacy-modal{
  height:min(88dvh,820px);
  max-height:calc(100dvh - 32px);
  display:grid;
  grid-template-columns:252px minmax(0,1fr);
  grid-template-rows:minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:inherit;
  background:var(--white);
}
.privacy-modal__header{
  position:relative;
  grid-column:1;
  grid-row:1 / 3;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  gap:22px;
  padding:34px 28px;
  background:var(--night);
  color:#fff;
}
.privacy-modal__header .eyebrow{margin-bottom:7px}
.privacy-modal__header h2{
  max-width:6ch;
  margin:0;
  color:#fff;
  font-size:42px;
  line-height:.98;
}
.privacy-modal__header p{margin:13px 0 0;color:rgba(255,255,255,.66);font-size:12.5px;line-height:1.4}
.privacy-dialog__close{top:18px;left:18px}
.privacy-modal__body{
  grid-column:2;
  grid-row:1;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:34px clamp(28px,5vw,62px) 46px;
  scrollbar-width:thin;
  scrollbar-color:rgba(14,89,104,.42) transparent;
  scroll-padding-block:26px;
  outline:none;
}
.privacy-modal__body:focus-visible{outline:2px solid var(--river);outline-offset:-5px}
.privacy-modal__body section,.privacy-document__body section{padding:0;margin:30px 0 0}
.privacy-modal__body h3,.privacy-document__body h2{
  font-size:20px;
  line-height:1.35;
  margin:0 0 9px;
  color:var(--ink);
}
.privacy-modal__body p,.privacy-document__body p{
  margin:0 0 12px;
  color:#41555C;
  line-height:1.78;
}
.privacy-modal__body ul,.privacy-document__body ul{
  margin:10px 0 16px;
  padding:0 22px 0 0;
  color:#41555C;
}
.privacy-modal__body li,.privacy-document__body li{margin:7px 0;line-height:1.72}
.privacy-modal__body strong,.privacy-document__body strong{color:var(--ink)}
.privacy-modal__body a,.privacy-document__body a{
  color:var(--river);
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}
.privacy-intro{
  padding:20px 22px;
  border:1px solid var(--line);
  border-radius:var(--r-md);
  background:var(--surface-soft);
}
.privacy-intro>p{font-size:17px;color:var(--ink);margin-bottom:16px}
.privacy-highlights{display:flex;flex-wrap:wrap;gap:8px}
.privacy-highlights span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 11px;
  border-radius:var(--r-pill);
  background:#EAF4F5;
  color:var(--river);
  font-size:12.5px;
  font-weight:700;
}
.privacy-modal__footer{
  grid-column:2;
  grid-row:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:14px 22px;
  border-top:1px solid var(--line);
  background:#fff;
  color:var(--stone);
  font-size:13px;
}
.privacy-modal__footer a{color:var(--river);font-weight:700}
.privacy-modal__footer .btn{flex:none;min-width:112px}

/* עמוד פרטיות נפרד לגישה ישירה ולדפדפנים ללא dialog. */
.privacy-page{min-height:calc(100dvh - var(--header-h));background:var(--paper)}
.privacy-document{
  max-width:940px;
  margin-inline:auto;
  overflow:hidden;
}
.privacy-document__header{
  padding:42px 0 30px;
  border-bottom:1px solid var(--line);
}
.privacy-document__header h1{font-size:clamp(48px,8vw,88px)}
.privacy-document__header p{margin:16px 0 0;color:var(--stone)}
.privacy-document__body{padding:36px 0 64px;max-width:860px}
.privacy-document__body .privacy-intro{margin-bottom:34px}
.privacy-section{scroll-margin-top:calc(var(--header-h) + 18px)}
.nav--static{display:flex!important;position:static!important;transform:none!important;opacity:1!important;pointer-events:auto!important}

/* מצבי טעינה ושגיאה בבועת הצ׳אט המקומית. */
.site-chat__loading{
  position:absolute;
  right:0;
  bottom:72px;
  min-width:max-content;
  padding:8px 12px;
  border-radius:var(--r-pill);
  background:var(--night);
  color:#fff;
  box-shadow:var(--shadow-sm);
  font-size:12px;
  font-weight:700;
}
.site-chat__error{
  margin:10px 0 0!important;
  padding:9px 10px!important;
  border-radius:10px;
  background:#FFF1EF;
  color:#8A2F26;
  font-size:12.5px!important;
  line-height:1.45!important;
}
.site-chat.is-loading .site-chat__launcher{opacity:.72;cursor:wait}
.site-chat__actions button:disabled,.site-chat__launcher:disabled{cursor:wait;transform:none;opacity:.65}

@media(min-width:821px){
  .privacy-document{
    margin-top:34px;
    margin-bottom:52px;
    padding-inline:clamp(28px,5vw,64px);
    border:1px solid var(--line);
    border-radius:var(--r-lg);
    background:#fff;
    box-shadow:var(--shadow-sm);
  }
}

@media(max-width:820px){
  .privacy-dialog{
    width:calc(100% - 12px);
    height:calc(100dvh - max(6px,env(safe-area-inset-top)));
    max-height:calc(100dvh - max(6px,env(safe-area-inset-top)));
    margin:auto 6px 0;
    border-radius:var(--r-lg) var(--r-lg) 0 0;
  }
  .privacy-modal{
    height:100%;
    max-height:none;
    grid-template-columns:1fr;
    grid-template-rows:auto minmax(0,1fr) auto;
  }
  .privacy-modal__header{
    grid-column:1;
    grid-row:1;
    display:block;
    padding:16px 58px 15px 18px;
  }
  .privacy-modal__header .eyebrow{margin-bottom:3px}
  .privacy-modal__header h2{max-width:none;font-size:29px;line-height:1}
  .privacy-modal__header p{margin-top:6px;font-size:11px}
  .privacy-dialog__close{top:11px;left:11px;width:40px;height:40px;min-width:40px;min-height:40px;font-size:25px}
  .privacy-modal__body{grid-column:1;grid-row:2;padding:20px 18px 30px}
  .privacy-modal__body section{margin-top:25px}
  .privacy-modal__body h3{font-size:18px}
  .privacy-modal__body p,.privacy-modal__body li{font-size:15.5px;line-height:1.7}
  .privacy-modal__body ul{padding-right:19px}
  .privacy-intro{padding:17px}
  .privacy-intro>p{font-size:16px}
  .privacy-highlights{display:grid;grid-template-columns:1fr}
  .privacy-highlights span{min-height:32px}
  .privacy-modal__footer{
    grid-column:1;
    grid-row:3;
    padding:12px 14px calc(12px + env(safe-area-inset-bottom));
    font-size:11.5px;
  }
  .privacy-modal__footer>span{max-width:24ch}
  .privacy-document__header{padding-top:18px}
  .privacy-document__body{padding:26px 0 48px}
  .privacy-document__body h2{font-size:18px}
  .privacy-document__body p,.privacy-document__body li{font-size:15.5px;line-height:1.7}
  .footer-compact__inner{flex-direction:column;align-items:flex-start;gap:8px}
  .site-chat__loading{bottom:67px}
}

@media(max-width:580px){
  .reviews-hint{font-size:12px}
  .journey-hint strong{font-size:15px}
  .journey-hint small{font-size:12.5px}
}

@media(max-width:520px){
  .privacy-modal__footer>span{display:none}
  .privacy-modal__footer .btn{width:100%}
  .nav--static{gap:12px!important}
}
/* Prevent LTR contact details from breaking into visually reversed fragments in RTL text. */
.privacy-modal__body a[href^="tel:"],
.privacy-document__body a[href^="tel:"]{
  display:inline-block;
  direction:ltr;
  unicode-bidi:isolate;
  white-space:nowrap;
}
.privacy-modal__body a[href^="mailto:"],
.privacy-document__body a[href^="mailto:"]{overflow-wrap:anywhere}
