:root{
  --purple:#7B4FA6; --purple-dark:#5a3478; --purple-light:#a87fd4;
  --teal:#4BBFC9; --teal-dark:#2e9aa5; --teal-light:#85d8e0;
  --lilac:#d4b8f0; --cream:#fdfcff; --sand:#f5f1fa;
  --text-dark:#231e2e; --text-mid:#544c63;
  --serif:'Cormorant Garamond',serif; --sans:'Jost',sans-serif;
  --hero-font:'Marcellus',serif;
  --wa:#25D366;
}
html[lang="he"]{ --serif:'Frank Ruhl Libre',serif; --sans:'Heebo',sans-serif; --hero-font:'Assistant',sans-serif; }
html[lang="he"] .intro-body p,html[lang="he"] .promise-card p,html[lang="he"] .included-item p,html[lang="he"] .team-bio,html[lang="he"] .testimonial-text,html[lang="he"] .faq-a p,html[lang="he"] .testimonials-intro,html[lang="he"] .included-intro,html[lang="he"] .lead-intro,html[lang="he"] .cta-sub{font-weight:400;}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}

/* ───── Accessibility ───── */
:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:3px;}
.hero :focus-visible,.trust-bar:focus-visible,.float-wa:focus-visible{outline-color:#fff;}
.skip-link{position:absolute;top:-100px;inset-inline-start:16px;z-index:200;background:var(--purple-dark);color:#fff;font-family:var(--sans);font-weight:600;padding:12px 22px;border-radius:0 0 10px 10px;text-decoration:none;transition:top .2s;}
.skip-link:focus{top:0;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
  .reveal{opacity:1 !important;transform:none !important;}
}
body{font-family:var(--sans);background:var(--cream);color:var(--text-dark);overflow-x:hidden;}
img{display:block;max-width:100%;}

/* ───── Language bar ───── */
.lang-bar{position:fixed;top:18px;inset-inline-end:18px;z-index:100;display:flex;gap:4px;background:rgba(255,255,255,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:5px;transition:background .3s,border-color .3s,box-shadow .3s;}
.lang-bar.scrolled{background:rgba(255,255,255,.92);border-color:rgba(123,79,166,.18);box-shadow:0 4px 24px rgba(90,52,120,.14);}
.lang-btn{border:0;background:transparent;color:#fff;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.06em;padding:7px 14px;border-radius:999px;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;line-height:1;}
/* Soft "view in your language" nudge (never an auto-redirect) */
.lang-bar.scrolled .lang-btn{color:var(--purple-dark);}
.lang-btn.active{background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff !important;box-shadow:0 2px 10px rgba(75,191,201,.45);}
.lang-btn:not(.active):hover{background:rgba(255,255,255,.22);}
.lang-bar.scrolled .lang-btn:not(.active):hover{background:var(--sand);}

/* ───── Floating WhatsApp ───── */
.float-wa{position:fixed;bottom:26px;inset-inline-start:26px;z-index:100;width:58px;height:58px;border-radius:50%;background:var(--wa);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 28px rgba(37,211,102,.45);transition:transform .25s;}
.float-wa:hover{transform:scale(1.08);}
.float-wa svg{width:30px;height:30px;fill:#fff;}

/* ───── Scroll to top ───── */
.scroll-top{position:fixed;bottom:26px;inset-inline-end:26px;z-index:100;width:50px;height:50px;border:0;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(90,52,120,.4);opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .3s,transform .3s,visibility .3s;}
.scroll-top.visible{opacity:1;visibility:visible;transform:translateY(0);}
.scroll-top:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(90,52,120,.5);}
.scroll-top svg{width:24px;height:24px;}

/* ───── Hero ───── */
.hero{position:relative;height:100vh;min-height:680px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;text-align:center;padding:0 24px;}
.hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#1a3a45 0%,#5a3478 50%,#2e9aa5 100%);}
@keyframes slowZoom{from{transform:scale(1.05);}to{transform:scale(1.13);}}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;animation:slowZoom 18s ease-in-out infinite alternate;}
.hero-video-stack{position:absolute;inset:0;}
.hero-video{animation:none;background:#1a3a45;opacity:0;transition:opacity 1.4s ease;}
.hero-video.is-active{opacity:1;}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse 62% 46% at 50% 40%,rgba(12,8,24,.34) 0%,rgba(12,8,24,0) 72%),linear-gradient(180deg,rgba(20,5,35,.5) 0%,rgba(10,15,25,.22) 40%,rgba(10,15,25,.55) 100%);}
.hero-content{position:relative;max-width:780px;animation:fadeUp 1.1s ease both;}
@keyframes fadeUp{from{opacity:0;transform:translateY(32px);}to{opacity:1;transform:translateY(0);}}
.hero-logo{width:360px;max-width:82vw;height:auto;display:block;padding:26px 34px;background:radial-gradient(ellipse 68% 64% at 50% 54%,rgba(255,255,255,.3) 0%,rgba(255,255,255,.16) 50%,rgba(255,255,255,0) 78%);filter:drop-shadow(0 1px 2px rgba(255,255,255,.9)) drop-shadow(0 0 12px rgba(255,255,255,.55)) drop-shadow(0 0 34px rgba(255,255,255,.3));margin:0 auto 18px;animation:fadeUp 1s ease .15s both;}
.footer-logo{width:210px;height:auto;display:block;margin:0 auto 18px;filter:drop-shadow(0 1px 1px rgba(255,255,255,.8)) drop-shadow(0 0 10px rgba(255,255,255,.4)) drop-shadow(0 0 24px rgba(255,255,255,.22));}
.hero-tagline{font-family:var(--hero-font);font-size:clamp(2rem,4.6vw,3.5rem);font-weight:400;letter-spacing:.02em;color:#fff;line-height:1.22;text-shadow:0 2px 6px rgba(0,0,0,.85),0 4px 30px rgba(0,0,0,.6);margin-bottom:14px;animation:fadeUp 1s ease .35s both;}
.hero-tagline em{font-style:italic;text-shadow:0 2px 4px rgba(0,0,0,.9),0 0 30px rgba(75,191,201,.85);}
html[lang="he"] .hero-tagline{font-weight:300;letter-spacing:0;}
html[lang="he"] .hero-tagline em{font-style:normal;font-weight:600;}
.hero-sub{font-size:clamp(.85rem,1.8vw,1.02rem);color:#fff;letter-spacing:.2em;text-transform:uppercase;margin-bottom:42px;text-shadow:0 2px 12px rgba(0,0,0,.85);animation:fadeUp 1s ease .55s both;}
html[lang="he"] .hero-sub{letter-spacing:.08em;}
.hero-cta{display:inline-flex;align-items:center;gap:12px;background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;font-weight:600;font-size:.97rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:18px 42px;border-radius:3px;box-shadow:0 8px 32px rgba(75,191,201,.4);transition:all .25s;animation:fadeUp 1s ease .75s both;}
html[lang="he"] .hero-cta{letter-spacing:.03em;font-size:1.05rem;}
.hero-cta:hover{transform:translateY(-2px);box-shadow:0 16px 44px rgba(75,191,201,.55);}
.hero-scroll{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.6);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;animation:fadeUp 1s ease 1.1s both;}
.scroll-line{width:1px;height:46px;background:linear-gradient(rgba(75,191,201,.75),transparent);animation:scrollPulse 2s ease-in-out infinite;}
@keyframes scrollPulse{0%,100%{opacity:.4;}50%{opacity:1;}}

/* ───── Trust bar (under hero) ───── */
.trust-bar{display:flex;align-items:center;justify-content:center;gap:10px 20px;flex-wrap:wrap;background:linear-gradient(120deg,var(--purple-dark),var(--teal-dark));color:#fff;text-decoration:none;padding:16px 24px;text-align:center;transition:filter .2s;}
.trust-bar:hover{filter:brightness(1.08);}
.trust-bar-stars{color:#ffd166;letter-spacing:.16em;font-size:.92rem;}
.trust-bar-text{font-size:.94rem;font-weight:500;letter-spacing:.02em;}
.trust-bar-link{font-size:.85rem;font-weight:600;color:var(--teal-light);letter-spacing:.04em;white-space:nowrap;}

/* ───── Shared section bits ───── */
section{padding:100px 24px;}
.container{max-width:1120px;margin:0 auto;}
.container-narrow{max-width:840px;}
.section-label{font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;color:var(--teal-dark);margin-bottom:16px;font-weight:600;}
html[lang="he"] .section-label{letter-spacing:.12em;}
.section-title{font-family:var(--hero-font);font-size:clamp(2.1rem,4.5vw,3.2rem);font-weight:400;line-height:1.18;color:var(--purple-dark);margin-bottom:22px;}
.section-title em{font-style:italic;color:var(--teal-dark);}
html[lang="he"] .section-title em{font-style:normal;font-weight:700;}
.centered{text-align:center;}
.divider{width:64px;height:2px;background:linear-gradient(90deg,var(--teal),var(--purple-light));margin-bottom:30px;border-radius:2px;}
.center-divider{margin-inline:auto;}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}

/* ───── Intro ───── */
.intro{background:var(--cream);}
.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;}
.intro-body p{color:var(--text-mid);font-size:1.06rem;font-weight:300;line-height:1.85;margin-bottom:18px;}
.intro-body em{color:var(--purple);font-style:italic;font-weight:500;}
.intro-signature{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--purple-dark);margin-top:28px;line-height:1.45;}
.intro-sign-place{font-size:1.02rem;color:var(--text-mid);}
.cr-clock{margin-top:14px;font-size:.95rem;color:var(--text-mid);}
.cr-clock strong{color:var(--teal-dark);font-weight:600;letter-spacing:.06em;font-variant-numeric:tabular-nums;}
.intro-guide{display:inline-block;margin-top:22px;font-size:.95rem;font-weight:600;color:var(--purple);text-decoration:none;border:1.5px solid var(--lilac);border-radius:999px;padding:10px 22px;transition:all .2s;}
.intro-guide:hover{background:var(--sand);border-color:var(--purple-light);transform:translateY(-1px);}
html[lang="he"] .intro-body em{font-style:normal;}
.intro-images{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.intro-img{width:100%;height:230px;object-fit:cover;border-radius:6px;box-shadow:0 12px 34px rgba(90,52,120,.16);}
.intro-img.tall{grid-column:1/-1;height:300px;}

/* ───── Photo breaks ───── */
.photo-break{position:relative;height:560px;overflow:hidden;}
.photo-break img,.photo-break video{width:100%;height:100%;object-fit:cover;}
/* framed variant — small original photo shown crisp at native size over a blurred backdrop */
.photo-break-framed{display:flex;align-items:center;justify-content:center;background:#1d1430;}
.photo-break-framed .pbf-bg{position:absolute;inset:0;transform:scale(1.06);}
.photo-break-framed .pbf-photo{position:relative;z-index:1;width:auto;height:74%;max-width:86%;object-fit:contain;border-radius:10px;box-shadow:0 22px 60px rgba(0,0,0,.5);transform:translateY(-16px);}
/* Roomy variants — for the two photos of Shishi with travellers. Group shots can't
   take the standard 560px crop: it cuts through heads, and the caption lands on faces.
   Taller box = gentler crop, and it pushes the caption down onto torsos/railing.
   Faces in the sunset photo sit between 11% and 57% of frame height; the caption
   must stay below that. Framed variant shrinks the photo instead, so the caption
   clears it completely rather than overlaying the table. */
.photo-break.pb-roomy{height:760px;}
.photo-break-framed.pb-roomy{height:760px;}
.photo-break-framed.pb-roomy .pbf-photo{height:54%;}
.photo-break::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(20,8,35,.62) 100%);}
.photo-break-caption{position:absolute;bottom:48px;inset-inline-start:0;width:100%;text-align:center;z-index:2;padding:0 24px;}
.photo-break-caption span{display:block;color:var(--teal-light);font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;margin-bottom:12px;font-weight:600;}
html[lang="he"] .photo-break-caption span{letter-spacing:.12em;}
.photo-break-caption h3{font-family:var(--hero-font);font-size:clamp(1.6rem,3.4vw,2.5rem);font-weight:400;color:#fff;line-height:1.3;text-shadow:0 2px 14px rgba(0,0,0,.7);}

/* ───── Mosaics ───── */
.mosaic{display:grid;gap:10px;padding:10px;}
.mosaic img{width:100%;height:320px;object-fit:cover;border-radius:4px;}
.mosaic-3col{grid-template-columns:repeat(3,1fr);}
.mosaic-4col{grid-template-columns:repeat(4,1fr);}
.mosaic-4col img{height:260px;}

/* ───── Why / promise ───── */
.promise{background:var(--sand);}
.promise-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:18px;}
.promise-card{background:#fff;border-radius:8px;padding:38px 34px;box-shadow:0 8px 30px rgba(90,52,120,.08);border-top:3px solid transparent;border-image:linear-gradient(90deg,var(--teal),var(--purple-light)) 1;transition:transform .25s,box-shadow .25s;}
.promise-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(90,52,120,.14);}
.promise-icon{font-size:2rem;margin-bottom:16px;}
.promise-card h3{font-family:var(--hero-font);font-size:1.45rem;font-weight:600;color:var(--purple-dark);margin-bottom:12px;}
.promise-card p{color:var(--text-mid);font-weight:300;line-height:1.75;font-size:.98rem;}

/* ───── A-to-Z ───── */
.included{background:var(--cream);}
.included-intro{max-width:720px;margin:0 auto 44px;text-align:center;color:var(--text-mid);font-size:1.08rem;font-weight:300;line-height:1.8;}
.included-intro strong{color:var(--purple);font-weight:600;}
.az-banner{background:linear-gradient(120deg,var(--purple-dark),var(--teal-dark));border-radius:10px;padding:46px 36px;text-align:center;margin-bottom:46px;box-shadow:0 16px 44px rgba(90,52,120,.25);}
.az-label{color:var(--teal-light);font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;margin-bottom:14px;font-weight:600;}
html[lang="he"] .az-label{letter-spacing:.12em;}
.az-banner h3{font-family:var(--hero-font);font-size:clamp(1.4rem,3vw,2.1rem);font-weight:400;color:#fff;line-height:1.4;}
.az-banner em{font-style:italic;color:var(--teal-light);}
html[lang="he"] .az-banner em{font-style:normal;font-weight:700;}
.included-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.included-item{background:#fff;border:1px solid #ece5f5;border-radius:8px;padding:28px 22px;transition:transform .25s,box-shadow .25s,border-color .25s;}
.included-item:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(90,52,120,.12);border-color:var(--lilac);}
.included-icon{font-size:1.7rem;display:block;margin-bottom:14px;}
.included-item h4{font-size:1.02rem;font-weight:600;color:var(--purple-dark);margin-bottom:8px;}
.included-item p{color:var(--text-mid);font-weight:300;font-size:.88rem;line-height:1.65;}

/* ───── Pricing ───── */
.pricing{background:var(--sand);}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:8px 0 40px;}
.price-card{position:relative;background:#fff;border-radius:10px;padding:40px 34px;box-shadow:0 8px 30px rgba(90,52,120,.08);border-top:3px solid transparent;border-image:linear-gradient(90deg,var(--teal),var(--purple-light)) 1;transition:transform .25s,box-shadow .25s;}
.price-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(90,52,120,.14);}
.price-step{display:inline-block;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--teal-dark);margin-bottom:14px;}
html[lang="he"] .price-step{letter-spacing:.1em;}
.price-card h3{font-family:var(--hero-font);font-size:clamp(1.4rem,2.4vw,1.85rem);font-weight:600;color:var(--purple-dark);margin-bottom:14px;line-height:1.3;}
.price-card p{color:var(--text-mid);font-weight:300;line-height:1.78;font-size:.98rem;}
.price-promise{background:linear-gradient(120deg,var(--purple-dark),var(--teal-dark));border-radius:10px;padding:44px 36px;text-align:center;box-shadow:0 16px 44px rgba(90,52,120,.25);}
.price-promise h3{font-family:var(--hero-font);font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:400;color:#fff;line-height:1.5;}
.price-promise em{font-style:italic;color:var(--teal-light);}
html[lang="he"] .price-promise em{font-style:normal;font-weight:700;}
.price-expedia{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.78);font-weight:300;font-size:.92rem;line-height:1.7;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;}
.taap-logo{height:20px;width:auto;}

/* ───── Team ───── */
.team{background:var(--sand);}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:14px;}
.team-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 12px 36px rgba(90,52,120,.10);}
.team-card-inner{display:flex;flex-direction:column;}
.team-photo{width:100%;height:380px;object-fit:cover;object-position:center 20%;}
.team-info{padding:30px 30px 34px;}
.team-name{font-family:var(--hero-font);font-size:1.7rem;font-weight:600;color:var(--purple-dark);}
.team-role{color:var(--teal-dark);font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin:6px 0 12px;}
html[lang="he"] .team-role{letter-spacing:.03em;}
.team-years{display:inline-block;background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;font-size:.76rem;font-weight:600;letter-spacing:.06em;padding:5px 14px;border-radius:999px;margin-bottom:16px;}
.team-bio{color:var(--text-mid);font-weight:300;line-height:1.8;font-size:.97rem;}

/* ───── Testimonials ───── */
.testimonials{background:var(--cream);}
.testimonials-intro{max-width:760px;color:var(--text-mid);font-size:1.05rem;font-weight:300;line-height:1.85;margin-bottom:40px;}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;background:linear-gradient(120deg,var(--purple-dark),var(--teal-dark));border-radius:10px;padding:30px 24px;margin-bottom:48px;box-shadow:0 14px 40px rgba(90,52,120,.22);}
.trust-strip-item{text-align:center;color:#fff;}
.trust-strip-item strong{display:block;font-family:var(--serif);font-size:2rem;font-weight:600;color:var(--teal-light);margin-bottom:4px;}
.trust-strip-item span{font-size:.82rem;font-weight:400;letter-spacing:.05em;opacity:.92;}
.testimonials-grid{columns:2;column-gap:26px;}
.testimonials-shots{columns:2;column-gap:20px;margin-top:8px;}
.testimonials-shots .shot{display:block;break-inside:avoid;margin-bottom:20px;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(90,52,120,.14);border:1px solid #efe8f8;background:#fff;transition:transform .25s,box-shadow .25s;}
.testimonials-shots .shot:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(90,52,120,.22);}
.testimonials-shots .shot img{width:100%;display:block;}
@media(max-width:760px){ .testimonials-shots{columns:1;} }
.testimonial{position:relative;background:#fff;border-radius:10px;padding:36px 32px 30px;box-shadow:0 10px 32px rgba(90,52,120,.09);border:1px solid #f0eaf8;break-inside:avoid;margin-bottom:26px;}
.testimonial-quote{position:absolute;top:14px;inset-inline-end:24px;font-family:var(--serif);font-size:4.4rem;line-height:1;color:var(--lilac);opacity:.55;pointer-events:none;}
.testimonial-stars{color:#f0b429;font-size:.95rem;letter-spacing:.18em;margin-bottom:14px;}
.testimonial-text{color:var(--text-mid);font-weight:300;line-height:1.8;font-size:.97rem;margin-bottom:22px;}
.testimonial-author{display:flex;align-items:center;gap:14px;}
.testimonial-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;flex-shrink:0;}
.testimonial-name{font-weight:600;color:var(--purple-dark);font-size:.98rem;}
.testimonial-meta{color:var(--teal-dark);font-size:.8rem;font-weight:500;}

/* ───── Pull quote ─────
   One featured review between pricing (sand) and journal (cream). Shorter padding than
   a real section so it reads as a beat in the page, not another chapter. Kept off the
   purple/teal gradient on purpose: .price-promise ends the block directly above it, and
   two gradients back to back is too loud. */
.pullquote{background:var(--cream);padding-top:74px;padding-bottom:74px;}
.pullquote-card{position:relative;margin:0;background:#fff;border:1px solid #f0eaf8;border-radius:10px;box-shadow:0 14px 40px rgba(90,52,120,.10);padding:54px 56px 40px;text-align:center;}
.pullquote-mark{position:absolute;top:8px;inset-inline-start:30px;font-family:var(--serif);font-size:5.2rem;line-height:1;color:var(--lilac);opacity:.5;pointer-events:none;}
.pullquote-card blockquote{margin:0 0 26px;font-family:var(--serif);font-style:italic;font-size:clamp(1.22rem,2.4vw,1.58rem);font-weight:300;line-height:1.65;color:var(--purple-dark);}
html[lang="he"] .pullquote-card blockquote{font-style:normal;font-weight:400;}
.pullquote-name{display:block;font-weight:600;color:var(--purple-dark);font-size:1rem;}
.pullquote-meta{display:block;margin-top:4px;color:var(--teal-dark);font-size:.82rem;font-weight:500;letter-spacing:.04em;}
@media(max-width:760px){
  .pullquote{padding-top:54px;padding-bottom:54px;}
  .pullquote-card{padding:34px 26px 32px;}
  /* The card is narrow here and the text is centred, so a corner-anchored mark lands on
     top of the first line. Let it flow above the quote instead of floating over it. */
  .pullquote-mark{position:static;display:block;font-size:3.4rem;margin-bottom:-14px;}
}

/* ───── FAQ ───── */
.faq{background:var(--sand);}
.faq-list{margin-top:14px;}
.faq-item{background:#fff;border:1px solid #ece5f5;border-radius:10px;margin-bottom:14px;overflow:hidden;transition:box-shadow .25s;}
.faq-item.open{box-shadow:0 12px 32px rgba(90,52,120,.12);}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;background:transparent;border:0;cursor:pointer;text-align:start;padding:22px 26px;font-family:var(--sans);font-size:1.05rem;font-weight:600;color:var(--purple-dark);}
.faq-q .faq-arrow{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:var(--sand);color:var(--purple);display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:transform .3s,background .3s,color .3s;}
.faq-item.open .faq-arrow{transform:rotate(180deg);background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease;}
.faq-a p{padding:0 26px 24px;color:var(--text-mid);font-weight:300;line-height:1.85;font-size:.99rem;}

/* ───── Lead form ───── */
.lead{background:var(--cream);}
.lead-intro{text-align:center;color:var(--text-mid);font-weight:300;font-size:1.05rem;line-height:1.8;max-width:620px;margin:0 auto 42px;}
.lead-form{background:#fff;border-radius:14px;padding:44px 40px;box-shadow:0 18px 50px rgba(90,52,120,.12);border:1px solid #efe8f8;}
/* Honeypot — kept in the DOM for bots, removed from view and from the tab order for people. */
.hp-field{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.form-field{margin-bottom:20px;display:flex;flex-direction:column;}
.form-field label{font-size:.86rem;font-weight:600;color:var(--purple-dark);margin-bottom:7px;letter-spacing:.02em;}
.form-field input,.form-field select,.form-field textarea{font-family:var(--sans);font-size:1rem;font-weight:400;color:var(--text-dark);background:var(--cream);border:1.5px solid #e4dbf0;border-radius:8px;padding:13px 16px;transition:border-color .2s,box-shadow .2s;width:100%;}
html[dir="rtl"] .form-field input[dir="ltr"]{text-align:end;}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(75,191,201,.16);}
.form-field textarea{resize:vertical;min-height:110px;}
.form-error{color:#c0392b;font-size:.92rem;font-weight:500;margin-bottom:16px;}
.form-consent{font-size:.8rem;color:#8a7ea0;margin:12px 0 0;text-align:center;}
.form-consent a{color:var(--purple);text-decoration:underline;}
.footer-privacy{margin-top:10px;}
.footer-privacy a{color:inherit;opacity:.85;text-decoration:underline;font-size:.85rem;}
/* Consent bar */
.consent-bar{position:fixed;bottom:0;left:0;right:0;z-index:120;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;background:rgba(38,22,54,.97);color:#fff;padding:14px 20px;box-shadow:0 -4px 24px rgba(0,0,0,.2);}
.consent-text{font-family:var(--sans);font-size:.9rem;max-width:60ch;line-height:1.5;}
.consent-btns{display:flex;gap:10px;flex-shrink:0;}
.consent-accept,.consent-decline{font-family:var(--sans);font-size:.86rem;font-weight:600;border-radius:999px;padding:9px 20px;cursor:pointer;border:0;}
.consent-accept{background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;}
.consent-decline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);}
.lead-submit{width:100%;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;font-family:var(--sans);font-weight:600;font-size:1.08rem;letter-spacing:.04em;padding:17px 30px;border-radius:8px;box-shadow:0 10px 30px rgba(75,191,201,.35);transition:all .25s;}
.lead-submit:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(75,191,201,.5);}
.lead-submit:disabled{opacity:.6;cursor:wait;transform:none;}
.lead-success{text-align:center;background:#fff;border-radius:14px;padding:60px 40px;box-shadow:0 18px 50px rgba(90,52,120,.12);border:1px solid #efe8f8;}
.lead-success h3{font-family:var(--hero-font);font-size:2rem;color:var(--purple-dark);margin-bottom:14px;}
.lead-success p{color:var(--text-mid);font-weight:300;font-size:1.05rem;margin-bottom:28px;}

/* ───── Final CTA ───── */
.final-cta{background:linear-gradient(160deg,#2a1840 0%,var(--purple-dark) 45%,var(--teal-dark) 130%);text-align:center;padding:120px 24px;}
.final-cta .section-label{color:var(--teal-light);}
.final-cta .section-title{color:#fff;}
.final-cta .section-title em{color:var(--teal-light);}
.cta-divider{margin-inline:auto;}
.cta-sub{color:rgba(255,255,255,.85);font-weight:300;font-size:1.1rem;line-height:1.85;max-width:640px;margin:0 auto 40px;}
.wa-button{display:inline-flex;align-items:center;gap:14px;background:var(--wa);color:#fff;font-weight:600;font-size:1.05rem;letter-spacing:.04em;text-decoration:none;padding:18px 44px;border-radius:999px;box-shadow:0 12px 38px rgba(37,211,102,.4);transition:all .25s;}
.wa-button:hover{transform:translateY(-2px);box-shadow:0 18px 48px rgba(37,211,102,.55);}

/* ───── WhatsApp alternative under the lead form ───── */
.lead-alt{margin-top:28px;padding-top:26px;border-top:1px solid rgba(123,79,166,.16);text-align:center;}
.lead-alt-text{display:block;font-size:.97rem;color:var(--text-mid);margin-bottom:14px;}
.lead-alt .wa-button{font-size:.97rem;padding:14px 34px;}
.lead-alt .wa-icon{width:20px;height:20px;}
.wa-icon{width:24px;height:24px;fill:#fff;flex-shrink:0;}
.wa-note{color:rgba(255,255,255,.65);font-size:.86rem;margin-top:22px;letter-spacing:.04em;}

/* ───── Footer ───── */
footer{background:#1c1226;text-align:center;padding:54px 24px;}
footer img{width:170px;margin:0 auto 18px;opacity:.92;}
footer p{color:rgba(255,255,255,.55);font-size:.85rem;letter-spacing:.04em;}
.footer-guide{margin-bottom:14px;}
.footer-guide a{color:var(--teal-light);font-size:.9rem;text-decoration:none;border-bottom:1px solid rgba(133,216,224,.4);padding-bottom:2px;transition:color .2s,border-color .2s;}
.footer-guide a:hover{color:#fff;border-color:#fff;}
.footer-legal{margin-top:8px;font-size:.78rem;color:rgba(255,255,255,.42);}
.form-trust{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:.84rem;color:var(--teal-dark);}
.form-trust svg{flex-shrink:0;}

/* ───── Responsive ───── */
@media(max-width:900px){
  .intro-grid{grid-template-columns:1fr;gap:44px;}
  .promise-grid{grid-template-columns:1fr;}
  .price-grid{grid-template-columns:1fr;}
  .included-grid{grid-template-columns:repeat(2,1fr);}
  .team-grid{grid-template-columns:1fr;}
  .mosaic-3col{grid-template-columns:1fr 1fr;}
  .mosaic-4col{grid-template-columns:1fr 1fr;}
  .testimonials-grid{columns:1;}
  .trust-strip{grid-template-columns:repeat(2,1fr);gap:22px;}
}
@media(max-width:600px){
  section{padding:72px 20px;}
  .hero{min-height:100svh;}
  .form-row{grid-template-columns:1fr;gap:0;}
  .included-grid{grid-template-columns:1fr;}
  .photo-break{height:440px;}
  /* pb-roomy needs explicit mobile values — it outranks the rule above.
     The wide shot stays short here: a taller box on a narrow screen crops
     it horizontally instead, which cuts people out of the sides. */
  .photo-break.pb-roomy{height:440px;}
  .photo-break-framed.pb-roomy{height:560px;}
  .photo-break-framed.pb-roomy .pbf-photo{height:52%;}
  .lead-form{padding:32px 22px;}
  .lang-bar{top:12px;inset-inline-end:12px;}
  .lang-btn{padding:6px 11px;font-size:.72rem;}
  .float-wa{width:52px;height:52px;bottom:20px;inset-inline-start:20px;}
  .mosaic img{height:220px;}
}

/* ───── Journal card (blog teaser on home) ───── */
.journal{background:var(--cream);}
.journal-card{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:0;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 12px 40px rgba(90,52,120,.12);text-decoration:none;transition:transform .25s,box-shadow .25s;margin-top:8px;}
.journal-card:hover{transform:translateY(-4px);box-shadow:0 22px 54px rgba(90,52,120,.2);}
.journal-card-media{position:relative;min-height:220px;overflow:hidden;}
.journal-card-media img{width:100%;height:100%;object-fit:cover;}
.journal-card-body{padding:34px 36px;display:flex;flex-direction:column;justify-content:center;}
.journal-card-kicker{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--teal-dark);margin-bottom:12px;}
.journal-card h3{font-family:var(--hero-font);font-size:clamp(1.4rem,2.6vw,1.95rem);font-weight:600;color:var(--purple-dark);line-height:1.3;margin-bottom:12px;}
.journal-card-body p{color:var(--text-mid);font-weight:300;line-height:1.7;font-size:1rem;margin-bottom:18px;}
.journal-card-cta{font-weight:600;color:var(--teal-dark);font-size:.95rem;}
.journal-card:hover .journal-card-cta{color:var(--purple);}
@media(max-width:640px){
  .journal-card{grid-template-columns:1fr;}
  .journal-card-media{min-height:200px;}
}
/* Row of journal cards on the homepage, and the "all guides" link under them. */
.journal-list{display:grid;gap:24px;}
.journal-all{display:block;text-align:center;margin-top:30px;font-weight:600;color:var(--teal-dark);text-decoration:none;font-size:.98rem;}
.journal-all:hover{color:var(--purple);}

/* ───── Blog index ─────
   Reuses .journal-card wholesale so a guide looks identical on the homepage and here. */
.blog-index{max-width:1000px;margin:0 auto;padding:64px 24px 40px;}
.blog-index-head{text-align:center;margin-bottom:46px;}
.blog-index-head h1{font-family:var(--hero-font);font-size:clamp(2rem,4.4vw,3rem);font-weight:400;color:var(--purple-dark);line-height:1.2;margin-bottom:16px;}
.blog-index-head p{color:var(--text-mid);font-weight:300;font-size:1.05rem;line-height:1.8;max-width:620px;margin:0 auto;}
.blog-index .journal-list{gap:26px;}
.blog-index .journal-card{margin-top:0;}

/* ───── Article / Blog ───── */
.article-topbar{position:sticky;top:0;z-index:90;background:rgba(253,252,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #ece5f5;}
.article-topbar .container{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;}
.article-topbar img{width:120px;height:auto;}
.article-topbar a.back{font-size:.86rem;font-weight:600;color:var(--purple);text-decoration:none;}
.article-topbar a.back:hover{color:var(--teal-dark);}
.article-hero{position:relative;height:46vh;min-height:300px;display:flex;align-items:flex-end;overflow:hidden;}
.article-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.article-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,5,35,.15) 0%,rgba(10,15,25,.72) 100%);}
.article-hero-inner{position:relative;z-index:2;width:100%;max-width:820px;margin:0 auto;padding:0 24px 40px;}
.article-kicker{color:var(--teal-light);font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;margin-bottom:14px;}
.article-hero h1{font-family:var(--hero-font);font-size:clamp(1.9rem,4.4vw,3.1rem);font-weight:700;color:#fff;line-height:1.2;text-shadow:0 2px 14px rgba(0,0,0,.6);}
.article-meta{color:rgba(255,255,255,.82);font-size:.86rem;margin-top:14px;}
/* Photo credit for hero images a traveller lent us. Sits over the bottom of the hero,
   quiet enough not to compete with the headline but readable enough to be a real credit. */
.article-hero-credit{position:absolute;bottom:10px;inset-inline-end:18px;z-index:3;margin:0;font-size:.72rem;font-weight:400;letter-spacing:.04em;color:rgba(255,255,255,.82);text-shadow:0 1px 6px rgba(0,0,0,.7);}
@media(max-width:640px){ .article-hero-credit{font-size:.66rem;bottom:6px;inset-inline-end:12px;} }
.article-body{max-width:720px;margin:0 auto;padding:56px 24px 20px;}
.article-body p{color:var(--text-mid);font-size:1.06rem;line-height:1.9;margin-bottom:22px;}
.article-body h2{font-family:var(--hero-font);font-size:clamp(1.5rem,3vw,2rem);color:var(--purple-dark);font-weight:700;margin:44px 0 16px;line-height:1.3;}
.article-body h3{font-size:1.18rem;color:var(--purple);font-weight:600;margin:28px 0 10px;}
.article-body strong{color:var(--purple-dark);font-weight:600;}
.article-body ul{margin:0 22px 24px;padding-inline-start:22px;}
.article-body li{color:var(--text-mid);font-size:1.04rem;line-height:1.8;margin-bottom:10px;}
.article-body blockquote{margin:28px 0;padding:18px 26px;border-inline-start:3px solid var(--teal);background:var(--sand);border-radius:8px;color:var(--purple-dark);font-size:1.08rem;line-height:1.7;}
.article-tldr{background:var(--sand);border:1px solid #ece5f5;border-radius:12px;padding:26px 28px;margin-bottom:36px;}
.article-tldr h2{margin:0 0 12px;font-size:1.2rem;}
.article-tldr p{margin:0;font-size:1rem;}
.article-cta{max-width:720px;margin:30px auto 70px;padding:40px 34px;text-align:center;background:linear-gradient(120deg,var(--purple-dark),var(--teal-dark));border-radius:14px;box-shadow:0 16px 44px rgba(90,52,120,.25);}
.article-cta h2{font-family:var(--hero-font);color:#fff;font-size:clamp(1.4rem,3vw,2rem);font-weight:700;margin-bottom:12px;}
.article-cta p{color:rgba(255,255,255,.9);margin-bottom:24px;line-height:1.7;}
.article-cta .wa-button{display:inline-flex;align-items:center;gap:12px;background:var(--wa);color:#fff;font-weight:600;font-size:1rem;text-decoration:none;padding:16px 34px;border-radius:999px;box-shadow:0 10px 30px rgba(37,211,102,.4);transition:transform .2s,box-shadow .2s;}
.article-cta .wa-button:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(37,211,102,.55);}
@media(max-width:600px){
  .article-body{padding:40px 22px 16px;}
  .article-hero{height:40vh;}
}

/* ───── Two tracks (home) ───── */
.tracks{background:var(--cream);}
.tracks-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:14px;}
.track-card{background:#fff;border-radius:12px;padding:40px 34px;text-align:center;box-shadow:0 8px 30px rgba(90,52,120,.08);border:1px solid #efe8f8;display:flex;flex-direction:column;align-items:center;transition:transform .25s,box-shadow .25s;}
.track-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(90,52,120,.14);}
.track-card-store{background:linear-gradient(150deg,#2a1840 0%,var(--purple-dark) 55%,var(--teal-dark) 130%);border:0;}
.track-icon{font-size:2.4rem;margin-bottom:14px;}
.track-card h3{font-family:var(--hero-font);font-size:1.6rem;font-weight:600;color:var(--purple-dark);margin-bottom:12px;}
.track-card p{color:var(--text-mid);font-weight:300;line-height:1.75;font-size:1rem;margin-bottom:24px;flex-grow:1;}
.track-card-store h3{color:#fff;}
.track-card-store p{color:rgba(255,255,255,.85);}
.track-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1.5px solid var(--purple-light);color:var(--purple-dark);font-family:var(--sans);font-weight:600;font-size:.98rem;letter-spacing:.03em;text-decoration:none;padding:13px 30px;border-radius:999px;transition:all .25s;}
.track-btn:hover{background:var(--purple);color:#fff;border-color:var(--purple);}
.track-btn-store{background:linear-gradient(135deg,var(--teal),var(--purple-light));border:0;color:#fff;box-shadow:0 8px 24px rgba(75,191,201,.4);}
.track-btn-store:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(75,191,201,.55);background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;}
@media(max-width:760px){ .tracks-grid{grid-template-columns:1fr;} }

/* ───── Store: topbar ───── */
.store-topbar{position:sticky;top:0;z-index:90;background:rgba(253,252,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #ece5f5;}
.store-topbar .container{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;}
.store-logo{width:130px;height:auto;}
.store-back{font-size:.9rem;font-weight:600;color:var(--purple);text-decoration:none;}
.store-back:hover{color:var(--teal-dark);}

/* ───── Store: hero ───── */
.store-hero{background:var(--sand);padding:72px 24px 60px;text-align:center;}
.store-hero .section-title{margin-bottom:18px;}
.store-hero-sub{max-width:640px;margin:0 auto;color:var(--text-mid);font-weight:300;font-size:1.08rem;line-height:1.8;}

/* ───── Store: catalog ───── */
.store-catalog{background:var(--cream);padding-top:50px;}
.store-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:44px;}
.filter-btn{border:1.5px solid #e4dbf0;background:#fff;color:var(--purple-dark);font-family:var(--sans);font-size:.92rem;font-weight:600;letter-spacing:.02em;padding:10px 22px;border-radius:999px;cursor:pointer;transition:all .2s;}
.filter-btn:hover{border-color:var(--purple-light);}
.filter-btn.active{background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;border-color:transparent;box-shadow:0 4px 16px rgba(75,191,201,.4);}
.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.store-empty{grid-column:1/-1;text-align:center;color:var(--text-mid);font-weight:300;padding:40px 0;}
.product-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 30px rgba(90,52,120,.09);border:1px solid #f0eaf8;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;}
.product-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(90,52,120,.16);}
.product-media{position:relative;height:200px;overflow:hidden;}
.product-media img{width:100%;height:100%;object-fit:cover;}
.product-badge{position:absolute;top:12px;inset-inline-start:12px;background:rgba(255,255,255,.92);color:var(--purple-dark);font-size:.72rem;font-weight:600;letter-spacing:.04em;padding:5px 12px;border-radius:999px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.product-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex-grow:1;}
.product-area{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--teal-dark);margin-bottom:8px;}
html[lang="he"] .product-area{letter-spacing:.06em;}
.product-name{font-family:var(--hero-font);font-size:1.3rem;font-weight:600;color:var(--purple-dark);line-height:1.3;margin-bottom:10px;}
.product-desc{color:var(--text-mid);font-weight:300;font-size:.95rem;line-height:1.7;margin-bottom:20px;flex-grow:1;}
.product-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.product-price{font-size:.92rem;font-weight:600;color:var(--purple-dark);}
.product-btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:.9rem;font-weight:600;letter-spacing:.02em;text-decoration:none;padding:11px 20px;border-radius:999px;transition:all .25s;white-space:nowrap;}
.product-btn.affiliate{background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;box-shadow:0 6px 18px rgba(75,191,201,.35);}
.product-btn.affiliate:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(75,191,201,.5);}
.product-btn.local{background:var(--wa);color:#fff;box-shadow:0 6px 18px rgba(37,211,102,.35);}
.product-btn.local:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(37,211,102,.5);}
@media(max-width:900px){ .store-grid{grid-template-columns:repeat(2,1fr);} }
@media(max-width:600px){ .store-grid{grid-template-columns:1fr;} }

/* ───── Store: how it works ───── */
.store-how{background:var(--sand);}
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:14px;}
.how-step{background:#fff;border-radius:10px;padding:34px 28px;text-align:center;border:1px solid #ece5f5;}
.how-num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--purple-light));color:#fff;font-family:var(--serif);font-size:1.3rem;font-weight:600;margin-bottom:16px;}
.how-step h3{font-family:var(--hero-font);font-size:1.3rem;font-weight:600;color:var(--purple-dark);margin-bottom:10px;}
.how-step p{color:var(--text-mid);font-weight:300;font-size:.95rem;line-height:1.7;}
@media(max-width:760px){ .how-grid{grid-template-columns:1fr;} }

/* ───── Store: CTA ───── */
.store-cta{background:linear-gradient(160deg,#2a1840 0%,var(--purple-dark) 45%,var(--teal-dark) 130%);text-align:center;padding:84px 24px;}
.store-cta h2{font-family:var(--hero-font);font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:400;color:#fff;line-height:1.3;margin-bottom:16px;}
.store-cta h2 em{font-style:italic;color:var(--teal-light);}
html[lang="he"] .store-cta h2 em{font-style:normal;font-weight:700;}
.store-cta p{color:rgba(255,255,255,.85);font-weight:300;font-size:1.05rem;line-height:1.8;max-width:560px;margin:0 auto 32px;}
