/* === BLOCK 1: Design System === */

/* ══════════════════════════════════════════════
   DESIGN SYSTEM — KIDSSTAR 2026
   צבעי מותג: כחול חשמלי + ציאן + נייבי כהה
   ללא זהב | ללא צהוב
══════════════════════════════════════════════ */
:root{
  --blue:#0099FF;
  --blue2:#0070CC;
  --blue3:#00B8FF;
  --blue4:#E0F4FF;
  --cyan:#00E5FF;
  --dark:#0D1B3E;
  --dark2:#060F1A;
  --g:#fff;
  --off:#F0F8FF;
  --g1:#E8F4FF;
  --g2:#D0E8F5;
  --g3:#B0D0E8;
  --g5:#5580A0;
  --g6:#3A6080;
  --g8:#1A2C40;
  --green:#22C55E;
  --red:#EF4444;
  --sh1:0 2px 8px rgba(0,153,255,.12);
  --sh2:0 8px 30px rgba(0,153,255,.20);
  --sh3:0 24px 64px rgba(0,153,255,.28);
  --sh-cyan:0 8px 30px rgba(0,229,255,.4);
  --r:14px;--r2:22px;--r3:32px;
  --tr:.3s cubic-bezier(.4,0,.2,1);
  --hero-h:100svh;
}

*,*::before,*::after{
  box-sizing:border-box;margin:0;padding:0;
}
a,button,label,[role="button"]{
  cursor:pointer;
}

html{scroll-behavior:smooth;font-size:16px;-webkit-tap-highlight-color:transparent}
body{font-family:'Heebo',Arial,sans-serif;background:var(--g);color:var(--g8);line-height:1.65;overflow-x:hidden}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img{max-width:100%;display:block;height:auto}
input,select,textarea,button{font-family:'Heebo',sans-serif}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:6px}

/* ── Skip Link ── */
.skip{position:absolute;top:-100px;left:50%;transform:translateX(-50%);background:var(--blue);color:#fff;padding:10px 20px;border-radius:0 0 12px 12px;font-weight:700;z-index:9999;transition:.2s}
.skip:focus{top:0}

/* ── Progress Bar ── */
#progress{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--cyan));transform-origin:right;transform:scaleX(0);z-index:10000;transition:transform .1s linear}

/* ── Container ── */
.c{max-width:1240px;margin:0 auto;padding:0 24px}
.sp{padding:100px 0}
.sp-sm{padding:64px 0}
.tc{text-align:center}

/* ── Typography ── */
.badge{display:inline-flex;align-items:center;gap:8px;background:rgba(0,153,255,.1);border:1px solid rgba(0,153,255,.3);color:var(--blue2);font-size:.8rem;font-weight:700;padding:6px 16px;border-radius:50px;letter-spacing:.5px;margin-bottom:16px}
.badge i{color:var(--blue)}
.h2{font-size:clamp(2rem,3.8vw,3.2rem);font-weight:900;color:var(--dark);line-height:1.15;margin-bottom:16px}
.h2 span{color:var(--blue)}
.sub{font-size:1.08rem;color:var(--g6);max-width:580px;margin:0 auto 52px;line-height:1.7}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 32px;border-radius:50px;font-size:1rem;font-weight:700;border:none;transition:var(--tr);white-space:nowrap;position:relative;overflow:hidden}
.acts-cta-wrap{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}
@media(min-width:768px){.acts-cta-wrap{gap:15px;flex-wrap:nowrap}}
.btn::before{content:'';position:absolute;inset:0;background:rgba(255,255,255,.15);opacity:0;transition:opacity .2s}
.btn:hover::before{opacity:1}
.btn-primary{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;box-shadow:var(--sh2)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:var(--sh3)}
.btn-out{background:transparent;border:2px solid rgba(255,255,255,.85);color:#fff}
.btn-out:hover{background:#fff;color:var(--blue);border-color:#fff}
.btn-blue{background:var(--blue);color:#fff}
.btn-blue:hover{background:var(--blue2);transform:translateY(-2px)}
.btn-glass{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);color:#fff}
.btn-glass:hover{background:rgba(255,255,255,.2)}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#128C7E;transform:translateY(-2px)}
.btn-sm{padding:10px 22px;font-size:.88rem}
.btn-cyan{background:linear-gradient(135deg,var(--cyan),var(--blue3));color:var(--dark);font-weight:800}
.btn-cyan:hover{transform:translateY(-3px);box-shadow:var(--sh-cyan)}

/* ── Reveal Animations ── */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .7s ease}
.reveal.v{opacity:1;transform:none}
.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity .7s ease,transform .7s ease}
.reveal-left.v{opacity:1;transform:none}
.reveal-right{opacity:0;transform:translateX(40px);transition:opacity .7s ease,transform .7s ease}
.reveal-right.v{opacity:1;transform:none}
.reveal-scale{opacity:0;transform:scale(.92);transition:opacity .6s ease,transform .6s ease}
.reveal-scale.v{opacity:1;transform:scale(1)}

/* ══════════════════════════════════════════════
   NAVBAR
══════════════════════════════════════════════ */
.nav{position:fixed;top:36px;width:100%;z-index:990;background:rgba(6,15,26,.97);backdrop-filter:blur(20px);box-shadow:0 2px 20px rgba(0,0,0,.4);transition:box-shadow .3s}
.nav.solid{box-shadow:0 4px 28px rgba(0,0,0,.5)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo-wrap{display:flex;align-items:center;gap:10px;transition:var(--tr)}
.logo-wrap:hover{opacity:.9}
.logo-img{height:54px;width:auto;filter:drop-shadow(0 0 8px rgba(0,229,255,.4))}
.logo-text{display:flex;flex-direction:column;line-height:1.1}
.logo-text strong{color:#fff;font-size:1.15rem;font-weight:900}
.logo-text span{color:var(--cyan);font-size:.7rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}
.nav-links{display:flex;gap:4px;align-items:center}
.nav-links a{color:rgba(255,255,255,.85);font-size:.9rem;font-weight:600;padding:8px 14px;border-radius:50px;transition:var(--tr)}
.nav-links a:hover{background:rgba(0,153,255,.2);color:#fff}
.nav-cta{display:flex;gap:10px;align-items:center}
.hbg{display:none;background:none;border:none;color:#fff;font-size:1.5rem;padding:8px}
@media(max-width:960px){.nav-links{display:none}.hbg{display:block}}

/* ── Mobile Nav ── */
.mob-nav{position:fixed;top:72px;right:0;left:0;background:rgba(6,15,26,.98);backdrop-filter:blur(20px);padding:16px;display:none;flex-direction:column;gap:4px;z-index:989;border-top:1px solid rgba(0,153,255,.2)}
.mob-nav.open{display:flex}
.mob-nav a{color:rgba(255,255,255,.9);font-size:1rem;font-weight:600;padding:12px 20px;border-radius:12px;transition:var(--tr);display:flex;align-items:center;gap:10px}
.mob-nav a:hover{background:rgba(0,153,255,.2);color:var(--cyan)}
.mob-nav a i{width:20px;color:var(--blue)}

/* ══════════════════════════════════════════════
   HERO
══════════════════════════════════════════════ */
.hero{min-height:var(--hero-h);background:var(--dark2);position:relative;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 20% 50%,rgba(0,153,255,.25) 0%,transparent 70%)}
.hero-bg::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 80% 60%,rgba(0,229,255,.12) 0%,transparent 70%)}

/* Floating stars */
.hero-stars{position:absolute;inset:0;pointer-events:none;z-index:1}
.hstar{position:absolute;color:var(--cyan);animation:float-star linear infinite;opacity:.6}
@keyframes float-star{0%{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(-20px) rotate(180deg) scale(1.1)}100%{transform:translateY(0) rotate(360deg) scale(1)}}

.hero-in{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:120px 0 80px}
.hero-content{}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(0,229,255,.15);border:1px solid rgba(0,229,255,.4);color:var(--cyan);font-size:.8rem;font-weight:700;padding:6px 16px;border-radius:50px;margin-bottom:24px;letter-spacing:.5px}
.hero-badge i{animation:pulse-star 1.5s ease-in-out infinite}
@keyframes pulse-star{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}
.hero-title{font-size:clamp(2.4rem,5vw,4rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:20px}
.hero-title .hl{color:var(--cyan);display:block}
.hero-desc{font-size:1.1rem;color:rgba(255,255,255,.8);line-height:1.7;margin-bottom:36px;max-width:520px}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap}

/* Hero Stats */
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:40px}
.hstat{background:rgba(255,255,255,.06);border:1px solid rgba(0,153,255,.2);border-radius:16px;padding:16px;text-align:center;backdrop-filter:blur(10px)}
.hstat-num{font-size:1.8rem;font-weight:900;color:var(--cyan)}
.hstat-lbl{font-size:.75rem;color:rgba(255,255,255,.6);margin-top:2px}

/* Hero Visual */
.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}
.hero-logo-wrap{position:relative;display:flex;justify-content:center;align-items:center}
.hero-logo-glow{position:absolute;width:380px;height:380px;background:radial-gradient(circle,rgba(0,153,255,.3) 0%,rgba(0,229,255,.1) 50%,transparent 70%);border-radius:50%;animation:pulse-glow 3s ease-in-out infinite}
@keyframes pulse-glow{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}
.hero-logo-main{height:320px;width:auto;position:relative;z-index:2;animation:float-logo 4s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(0,153,255,.5))}
@keyframes float-logo{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}

/* Floating cards around logo */
.hero-cards{position:absolute;inset:0;pointer-events:none}
.hcard{position:absolute;background:rgba(255,255,255,.08);backdrop-filter:blur(12px);border:1px solid rgba(0,229,255,.25);border-radius:16px;padding:12px 16px;color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:8px;animation:float-card 5s ease-in-out infinite}
.hcard i{color:var(--cyan);font-size:1rem}
@keyframes float-card{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.hcard-1{top:10%;right:-20px;animation-delay:.5s}
.hcard-2{top:40%;left:-10px;animation-delay:1s}
.hcard-3{bottom:20%;right:-30px;animation-delay:1.5s}
.hcard-4{bottom:5%;left:10px;animation-delay:2s}

@media(max-width:900px){
  .hero-in{grid-template-columns:1fr;text-align:center;padding:100px 0 60px}
  .hero-btns{justify-content:center}
  .hero-stats{grid-template-columns:repeat(3,1fr)}
  .hero-visual{margin-top:30px}
  .hero-logo-main{height:220px}
  .hero-logo-glow{width:260px;height:260px}
  .hero-cards{display:none}
}

/* ══════════════════════════════════════════════
   TICKER
══════════════════════════════════════════════ */
.ticker-wrap{background:linear-gradient(135deg,var(--blue),var(--cyan));padding:14px 0;overflow:hidden}
.ticker-track{display:flex;gap:0;animation:ticker-move 50s linear infinite;white-space:nowrap}
.ticker-track:hover{animation-play-state:paused}
.ticker-item{display:inline-flex;align-items:center;gap:10px;color:var(--dark);font-weight:700;font-size:.9rem;padding:0 32px;white-space:nowrap}
.ticker-item i{font-size:.8rem;opacity:.7}
@keyframes ticker-move{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ══════════════════════════════════════════════
   COUNTERS
══════════════════════════════════════════════ */
.counters{background:var(--dark);padding:70px 0}
.counters-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:24px}
.counter-item{text-align:center;padding:28px 16px;border-radius:20px;background:rgba(0,153,255,.08);border:1px solid rgba(0,153,255,.15);transition:var(--tr)}
.counter-item:hover{background:rgba(0,153,255,.15);border-color:rgba(0,229,255,.4);transform:translateY(-4px)}
.counter-icon{font-size:2rem;color:var(--cyan);margin-bottom:10px}
.c-num{font-size:2.4rem;font-weight:900;color:#fff;line-height:1}
.c-suf{font-size:1.8rem;color:var(--cyan)}
.c-lbl{font-size:.8rem;color:rgba(255,255,255,.6);margin-top:6px;font-weight:500}

/* ══════════════════════════════════════════════
   SERVICES / CATEGORIES (8 TABS)
══════════════════════════════════════════════ */
.services{background:var(--off);padding:100px 0}
.srv-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:48px}
.srv-tab{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:50px;border:2px solid var(--g2);background:#fff;color:var(--g6);font-size:.88rem;font-weight:700;transition:var(--tr)}
.srv-tab:hover{border-color:var(--blue);color:var(--blue);background:var(--blue4)}
.srv-tab.active{background:linear-gradient(135deg,var(--blue),var(--blue3));color:#fff;border-color:transparent;box-shadow:var(--sh2)}
.srv-tab i{font-size:1rem}

/* Service Panels */
.srv-panels{}
.srv-panel{display:none}
.srv-panel.active{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;animation:fade-in .4s ease}
@keyframes fade-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

.srv-info{}
.srv-icon-big{width:80px;height:80px;background:linear-gradient(135deg,var(--blue),var(--cyan));border-radius:24px;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;margin-bottom:24px;box-shadow:var(--sh2)}
.srv-title{font-size:2rem;font-weight:900;color:var(--dark);margin-bottom:12px}
.srv-desc{font-size:1rem;color:var(--g6);line-height:1.8;margin-bottom:24px}
.srv-features{display:grid;gap:12px;margin-bottom:28px}
.srv-feat{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#fff;border-radius:12px;border:1px solid var(--g2);transition:var(--tr)}
.srv-feat:hover{border-color:var(--blue);box-shadow:var(--sh1)}
.srv-feat-icon{width:36px;height:36px;background:var(--blue4);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:.9rem;flex-shrink:0}
.srv-feat-text strong{display:block;font-size:.9rem;color:var(--dark);font-weight:700}
.srv-feat-text span{font-size:.82rem;color:var(--g5)}
.srv-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.srv-badge{background:var(--blue4);color:var(--blue2);font-size:.78rem;font-weight:700;padding:5px 14px;border-radius:50px}

.srv-card{background:#fff;border-radius:28px;box-shadow:var(--sh2);overflow:hidden}
.srv-card-header{background:linear-gradient(135deg,var(--dark),var(--blue2));padding:32px;color:#fff}
.srv-card-header h3{font-size:1.4rem;font-weight:900;margin-bottom:8px}
.srv-card-header p{opacity:.8;font-size:.9rem}
.srv-price-tag{display:inline-block;background:rgba(0,229,255,.2);border:1px solid rgba(0,229,255,.4);color:var(--cyan);font-size:1.6rem;font-weight:900;padding:8px 20px;border-radius:12px;margin-top:16px}
.srv-price-tag small{font-size:.8rem;font-weight:400;opacity:.8}
.srv-card-body{padding:28px}
.srv-price-list{display:grid;gap:10px;margin-bottom:20px}
.srv-price-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--g2)}
.srv-price-row:last-child{border-bottom:none}
.srv-price-row span{font-size:.88rem;color:var(--g6)}
.srv-price-row strong{font-size:.95rem;color:var(--blue);font-weight:800}
.srv-includes{font-size:.82rem;color:var(--g5);display:flex;flex-direction:column;gap:6px;margin-bottom:20px}
.srv-includes li{display:flex;align-items:center;gap:8px}
.srv-includes li::before{content:"✓";color:var(--green);font-weight:900;font-size:.9rem}

@media(max-width:820px){
  .srv-panel.active{grid-template-columns:1fr}
  .srv-card{margin-top:0}
}

/* ══════════════════════════════════════════════
   ACTIVITIES GRID
══════════════════════════════════════════════ */
.activities{background:var(--g);padding:100px 0}
.filt-wrap{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:40px}
.filt-btn{padding:8px 20px;border-radius:50px;border:2px solid var(--g2);background:#fff;color:var(--g6);font-size:.85rem;font-weight:700;transition:var(--tr);display:inline-flex;align-items:center;gap:6px}
.filt-btn i{color:var(--blue);font-size:.9rem;transition:color .2s}
.filt-btn:hover,.filt-btn.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:var(--sh1)}
.filt-btn:hover i,.filt-btn.active i{color:#fff}
#actGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
@media(max-width:1024px){#actGrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){#actGrid{grid-template-columns:repeat(2,1fr);gap:14px}}
/* === Skeleton Loader === */
@keyframes ks-skeleton-shimmer {
  0%   { background-position: -600px 0; }
  100% { background-position: 600px 0; }
}
.act-card.ks-skeleton .act-img,
.act-card.ks-skeleton .act-name,
.act-card.ks-skeleton .act-desc,
.act-card.ks-skeleton .act-pills,
.act-card.ks-skeleton .act-cta {
  background: linear-gradient(90deg, #e8edf5 25%, #f4f7fb 50%, #e8edf5 75%);
  background-size: 600px 100%;
  animation: ks-skeleton-shimmer 1.4s ease-in-out infinite;
  border-radius: 8px;
  color: transparent !important;
  pointer-events: none;
}
.act-card.ks-skeleton .act-img { height: 200px; border-radius: 0; }
.act-card.ks-skeleton .act-name { height: 18px; width: 70%; margin: 12px 16px 6px; }
.act-card.ks-skeleton .act-desc { height: 12px; width: 90%; margin: 0 16px 10px; }
.act-card.ks-skeleton .act-pills { height: 22px; width: 60%; margin: 0 16px 10px; }
.act-card.ks-skeleton .act-cta  { height: 36px; margin: 0 16px 12px; border-radius: 50px; }
.act-card.ks-skeleton .act-img-photo,
.act-card.ks-skeleton .act-gal-badge,
.act-card.ks-skeleton .act-vid-badge,
.act-card.ks-skeleton .act-em,
.act-card.ks-skeleton .cat-b,
.act-card.ks-skeleton .ov { display: none; }
/* === End Skeleton === */

.act-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--sh1);transition:var(--tr);border:1px solid var(--g2);cursor:pointer;position:relative;display:flex;flex-direction:column}
.act-card:hover{transform:translateY(-6px);box-shadow:var(--sh3);border-color:rgba(0,153,255,.5)}
.act-card:hover .act-details-cta{background:var(--blue);color:#fff;border-color:var(--blue);margin-top:auto}
.act-card:active{transform:translateY(-2px)}
.act-details-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;
  margin-top:auto;margin-bottom:0;padding:12px 14px;border-radius:50px;border:2px solid rgba(0,153,255,.4);
  background:rgba(0,153,255,.08);color:var(--blue);font-weight:800;font-size:.92rem;
  cursor:pointer;transition:all .2s;font-family:inherit;text-decoration:none}
/* Clear space between the two card CTAs */
.act-details-cta + .act-cta,.act-details-cta ~ .act-cta{margin-top:12px}
.act-details-cta i{transition:transform .2s}
.act-card:hover .act-details-cta i{transform:translateX(-4px)}
.act-img{height:170px;background:linear-gradient(135deg,var(--dark),var(--blue2));position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.act-img-2{background:linear-gradient(135deg,var(--blue2),var(--blue3))}
.act-img-3{background:linear-gradient(135deg,#0050D0,var(--blue))}
.act-img-4{background:linear-gradient(135deg,#005580,var(--cyan))}
.act-img-8{background:linear-gradient(135deg,#154360,var(--cyan))}
.act-img-5{background:linear-gradient(135deg,var(--dark),#003880)}
.act-img-6{background:linear-gradient(135deg,#003055,var(--blue2))}
.act-img-7{background:linear-gradient(135deg,var(--blue),#00AACC)}
.act-em{font-size:4rem;z-index:1;position:relative}
.cat-b{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.4);backdrop-filter:blur(8px);color:#fff;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:50px}
.ov{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,rgba(0,0,0,.3))}
.act-body{padding:18px;flex:1;display:flex;flex-direction:column;flex:1;display:flex;flex-direction:column}
.act-name{font-size:1.05rem;font-weight:800;color:var(--dark);margin-bottom:6px}
.act-desc{font-size:.83rem;color:var(--g5);line-height:1.5;margin-bottom:12px;flex:1}
.act-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
/* ── New act-pills (from Excel data) ── */
.act-pills{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:12px}
.ap{font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:50px;white-space:nowrap;line-height:1.4}
.ap-age{background:rgba(0,153,255,.1);color:var(--blue2);border:1px solid rgba(0,153,255,.2)}
.ap-gender{background:rgba(126,87,194,.1);color:#7E57C2;border:1px solid rgba(126,87,194,.2)}
.ap-size{background:rgba(38,166,154,.1);color:#1a7a72;border:1px solid rgba(38,166,154,.25)}
.ap-loc{background:rgba(38,166,154,.1);color:#26A69A;border:1px solid rgba(38,166,154,.2)}
.ap-guides{background:rgba(255,152,0,.1);color:#EF6C00;border:1px solid rgba(255,152,0,.2)}
.ap-special{background:rgba(76,175,80,.1);color:#2E7D32;border:1px solid rgba(76,175,80,.2)}
.ap-mod{background:rgba(120,120,120,.1);color:var(--g5);border:1px solid rgba(120,120,120,.15)}
html.dark-mode .ap-age{background:rgba(0,153,255,.18);color:#60C0FF}
html.dark-mode .ap-gender{background:rgba(126,87,194,.18);color:#CE93D8}
html.dark-mode .ap-size{background:rgba(38,166,154,.18);color:#80CBC4}
html.dark-mode .ap-loc{background:rgba(38,166,154,.18);color:#80CBC4}
html.dark-mode .ap-guides{background:rgba(255,152,0,.18);color:#FFCC80}
html.dark-mode .ap-special{background:rgba(76,175,80,.18);color:#A5D6A7}
html.dark-mode .ap-mod{background:rgba(200,200,200,.1);color:#aaa}
.act-age,.act-mod{font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:50px}
.act-age{background:var(--blue4);color:var(--blue2)}
.act-mod{background:rgba(0,229,255,.12);color:#007799}
.act-cta{display:block;text-align:center;background:linear-gradient(135deg,var(--blue),var(--blue3));color:#fff;font-size:.85rem;font-weight:700;padding:9px;border-radius:10px;transition:var(--tr)}
.act-cta:hover{background:linear-gradient(135deg,var(--blue2),var(--blue));transform:translateY(-2px)}

/* ══════════════════════════════════════════════
   GALLERY
══════════════════════════════════════════════ */
.gallery{background:var(--dark);padding:100px 0}
.gallery .h2{color:#fff}
.gallery .sub{color:rgba(255,255,255,.6)}
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,200px);gap:12px}
.gal-item{border-radius:16px;overflow:hidden;position:relative;transition:var(--tr);border:1px solid rgba(0,153,255,.2)}
.gal-item:hover{transform:scale(1.03);z-index:2;border-color:rgba(0,229,255,.5);box-shadow:0 0 20px rgba(0,229,255,.3)}
.gal-item.big{grid-column:span 2;grid-row:span 2}
.gal-item.wide{grid-column:span 2}
.gal-bg{width:100%;height:100%;object-fit:cover;display:flex;align-items:center;justify-content:center;font-size:3rem}
.gal-bg-1{background:linear-gradient(135deg,#003399,var(--blue))}
.gal-bg-2{background:linear-gradient(135deg,var(--blue),var(--cyan))}
.gal-bg-3{background:linear-gradient(135deg,#005599,#00AACC)}
.gal-bg-4{background:linear-gradient(135deg,#002266,#0066CC)}
.gal-bg-5{background:linear-gradient(135deg,#001133,#004499)}
.gal-bg-6{background:linear-gradient(135deg,#003366,var(--blue3))}
.gal-bg-7{background:linear-gradient(135deg,var(--blue2),var(--cyan))}
.gal-bg-8{background:linear-gradient(135deg,#002255,#0077CC)}
.gal-bg-9{background:linear-gradient(135deg,#001a44,var(--blue))}
.gal-bg-10{background:linear-gradient(135deg,var(--dark),var(--blue2))}
.gal-bg-11{background:linear-gradient(135deg,#003377,#00BBEE)}
.gal-bg-12{background:linear-gradient(135deg,#001855,#0088DD)}
.gal-ov{position:absolute;inset:0;background:rgba(0,0,0,.3);opacity:0;transition:var(--tr);display:flex;align-items:center;justify-content:center}
.gal-item:hover .gal-ov{opacity:1}
.gal-ov i{color:#fff;font-size:1.8rem}
.gal-lbl{position:absolute;bottom:12px;right:12px;background:rgba(0,0,0,.5);backdrop-filter:blur(6px);color:#fff;font-size:.78rem;font-weight:700;padding:4px 10px;border-radius:8px}

/* Lightbox */
.lightbox{display:none;position:fixed;inset:0;background:rgba(6,15,26,.95);z-index:9000;align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lb-close{position:absolute;top:20px;left:20px;color:#fff;font-size:1.8rem;background:rgba(255,255,255,.1);border:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:var(--tr)}
.lb-close:hover{background:rgba(255,255,255,.2)}
.lb-content{width:80vw;max-width:900px;max-height:85vh;border-radius:24px;overflow:hidden;background:var(--dark);display:flex;align-items:center;justify-content:center;font-size:8rem}
.lb-inner{width:100%;height:100%;min-height:400px;display:flex;align-items:center;justify-content:center}

@media(max-width:768px){
  .gal-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}
  .gal-item.big,.gal-item.wide{grid-column:span 1;grid-row:span 1}
  .gal-grid{grid-template-rows:repeat(6,160px)}
}

/* ══════════════════════════════════════════════
   COUNTDOWN
══════════════════════════════════════════════ */
.countdown-sec{background:linear-gradient(135deg,var(--blue),var(--blue2));padding:64px 0;text-align:center}
.countdown-sec h2{color:#fff;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:900;margin-bottom:8px}
.countdown-sec p{color:rgba(255,255,255,.8);margin-bottom:32px}
#countdown{display:flex;gap:20px;justify-content:center}
.cd-unit{background:rgba(0,0,0,.25);border-radius:16px;padding:16px 24px;min-width:90px;text-align:center}
.cd-num{font-size:2.8rem;font-weight:900;color:#fff;display:block;line-height:1}
.cd-lbl{font-size:.75rem;color:rgba(255,255,255,.7);margin-top:4px;display:block}

/* ══════════════════════════════════════════════
   PRICING
══════════════════════════════════════════════ */
.pricing{background:var(--off);padding:100px 0}
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.price-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--sh1);border:2px solid var(--g2);transition:var(--tr);position:relative}
.price-card:hover{transform:translateY(-6px);box-shadow:var(--sh3);border-color:rgba(0,153,255,.4)}
.price-card.featured{border-color:var(--blue);box-shadow:var(--sh2)}
/* Pricing tabs */
.pt-wrap{margin-top:48px}
.pt-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.pt-tab{padding:8px 20px;border-radius:50px;border:1.5px solid var(--g2);font-size:.84rem;font-weight:700;cursor:pointer;background:#fff;color:var(--dark);transition:all .2s;font-family:Heebo,sans-serif}
.pt-tab:hover{border-color:var(--blue);color:var(--blue)}
.pt-tab.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.pt-panel{display:none;animation:fade-in .3s ease}
.pt-panel.active{display:block}
.pt-hint{display:flex;align-items:center;justify-content:center;gap:10px;padding:30px 20px;margin-bottom:6px;border:2px dashed var(--g2);border-radius:16px;background:linear-gradient(135deg,#f8fbff,#eef6ff);color:var(--blue);font-size:.95rem;font-weight:700;text-align:center}
.pt-hint i{font-size:1.3rem;animation:pt-hint-bounce 1.4s ease-in-out infinite}
@keyframes pt-hint-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
html.dark-mode .pt-hint{background:linear-gradient(135deg,#0d1f3e,#102a52);border-color:#2a4070;color:#7cc4ff}
.pt-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;box-shadow:var(--sh1);border:1.5px solid var(--g2)}
.pt-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}
.pt-table{width:100%;border-collapse:collapse;font-size:.86rem;direction:rtl}
.pt-table th{background:var(--dark);color:#fff;padding:11px 16px;text-align:center;font-weight:700;font-size:.82rem;white-space:nowrap}
.pt-table th:first-child{text-align:right;min-width:160px}
.pt-table td{padding:10px 16px;border-bottom:1px solid var(--g2);vertical-align:middle;text-align:center;white-space:nowrap}
.pt-table td:first-child{text-align:right;white-space:normal}
.pt-table tr:last-child td{border-bottom:none}
.pt-table tr:nth-child(even) td{background:var(--blue4)}
.pt-table tr:hover td{background:rgba(0,153,255,.07);transition:background .15s}
.pt-price{color:var(--blue);font-weight:800;white-space:nowrap}
.pt-note{color:var(--g5);font-size:.8rem}
.pt-num-col{width:48px;min-width:42px;text-align:center!important;color:var(--g5);font-size:.8rem;font-weight:600}
.pt-mode{display:inline-block;padding:2px 10px;border-radius:50px;font-size:.75rem;font-weight:700;background:rgba(0,153,255,.1);color:var(--blue2);white-space:nowrap}
html.dark-mode .pt-tab{background:#0d1f3e;border-color:#2a4070;color:#e8f4ff}
html.dark-mode .pt-tab.active{background:var(--blue);color:#fff}
html.dark-mode .pt-scroll{border-color:#2a4070}
html.dark-mode .pt-table th{background:#060F1A}
html.dark-mode .pt-table td{border-bottom-color:#1a2d52}
html.dark-mode .pt-table tr:nth-child(even) td{background:rgba(0,153,255,.08)}
/* Pricing table — grouped rows (rowspan products) */
.pt-name-cell{font-weight:700;vertical-align:middle;border-right:3px solid var(--blue);background:rgba(0,153,255,.04)!important}
.pt-group-start td{border-top:2px solid var(--g2)}
.pt-group-end td{border-bottom:2px solid var(--g2)}
.pc-badge{position:absolute;top:16px;left:16px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-size:.72rem;font-weight:800;padding:4px 12px;border-radius:50px;letter-spacing:.5px}
.pc-header{background:linear-gradient(135deg,var(--dark),var(--blue2));padding:28px 24px;color:#fff}
.price-card.featured .pc-header{background:linear-gradient(135deg,var(--blue),var(--cyan))}
.pc-icon{font-size:2.2rem;margin-bottom:12px}
.pc-name{font-size:1.25rem;font-weight:900;margin-bottom:4px}
.pc-sub{font-size:.82rem;opacity:.75}
.pc-price{font-size:2.8rem;font-weight:900;color:#fff;margin:16px 0 4px}
.pc-price small{font-size:1rem;font-weight:400}
.pc-from{font-size:.78rem;opacity:.7}
.pc-body{padding:24px}
.pc-list{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.pc-list li{display:flex;align-items:flex-start;gap:10px;font-size:.88rem;color:var(--g6)}
.pc-list li i{color:var(--green);font-size:.85rem;margin-top:3px;flex-shrink:0}
.pc-list li.no i{color:var(--g3)}
.pc-list li.no{color:var(--g3)}

/* ══════════════════════════════════════════════
   WHY US
══════════════════════════════════════════════ */
.why-us{background:var(--g);padding:100px 0}
.why-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.why-card{background:var(--off);border-radius:16px;padding:20px 14px;border:1px solid var(--g2);transition:var(--tr);text-align:center}
.why-card:hover{background:#fff;box-shadow:var(--sh2);border-color:rgba(0,153,255,.3);transform:translateY(-4px)}
.why-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--blue),var(--blue3));border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem;margin-bottom:16px}
.why-title{font-size:1.1rem;font-weight:800;color:var(--dark);margin-bottom:8px}
.why-desc{font-size:.88rem;color:var(--g5);line-height:1.65}

/* ══════════════════════════════════════════════
   ABOUT
══════════════════════════════════════════════ */
.about{background:var(--off);padding:100px 0}
.about-in{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.about-visual{position:relative}
.about-logo-wrap{background:linear-gradient(135deg,var(--dark),var(--blue2));border-radius:32px;padding:48px;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh3)}
.about-logo-img{height:200px;width:auto;filter:drop-shadow(0 0 20px rgba(0,229,255,.4))}
.about-stat{position:absolute;background:#fff;border-radius:16px;padding:12px 16px;box-shadow:var(--sh2);border:1px solid var(--g2)}
.about-stat strong{display:block;font-size:1.4rem;font-weight:900;color:var(--blue)}
.about-stat span{font-size:.78rem;color:var(--g5)}
.about-stat-1{bottom:-16px;left:-16px}
.about-stat-2{top:-16px;right:-16px}
.about-content{}
.about-content .badge{margin-bottom:16px}
.about-content .h2{text-align:right}
.about-content .sub{text-align:right;margin-right:0;max-width:100%}
.about-details{display:grid;gap:16px;margin-bottom:32px}
.about-row{display:flex;align-items:flex-start;gap:14px;padding:14px;background:#fff;border-radius:14px;border:1px solid var(--g2)}
.about-row i{color:var(--blue);font-size:1.1rem;margin-top:2px;flex-shrink:0}
.about-row div strong{display:block;font-size:.9rem;font-weight:800;color:var(--dark)}
.about-row div span{font-size:.83rem;color:var(--g5)}

/* Team */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}
.team-card{background:#fff;border-radius:20px;padding:24px;text-align:center;box-shadow:var(--sh1);border:1px solid var(--g2);transition:var(--tr)}
.team-card:hover{box-shadow:var(--sh2);transform:translateY(-4px)}
.team-av{width:70px;height:70px;background:linear-gradient(135deg,var(--blue),var(--cyan));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:1.8rem;color:#fff;font-weight:900}
.team-name{font-size:1rem;font-weight:800;color:var(--dark)}
.team-role{font-size:.8rem;color:var(--g5);margin:4px 0 12px}
.team-phone a{font-size:.85rem;color:var(--blue);font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px}
.team-phone a:hover{color:var(--blue2)}

@media(max-width:900px){
  .about-in{grid-template-columns:1fr}
  .about-content .h2,.about-content .sub{text-align:center}
  .team-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
}

/* ══════════════════════════════════════════════
   TESTIMONIALS
══════════════════════════════════════════════ */
.testi{background:var(--dark);padding:100px 0}
.testi .h2{color:#fff}
.testi .sub{color:rgba(255,255,255,.6)}
.testi-wrap{position:relative;overflow:hidden}
#testiCarousel{overflow:hidden}
.testi-track{display:flex;gap:20px;transition:transform .5s cubic-bezier(.4,0,.2,1);direction:ltr}
.testi-slide{flex-shrink:0;width:calc(33.333% - 14px);background:rgba(255,255,255,.06);border:1px solid rgba(0,153,255,.2);border-radius:20px;padding:24px}
@media(max-width:1023px){.testi-slide{width:calc(50% - 10px)}}
@media(max-width:767px){.testi-slide{width:100%}}
.testi-stars{color:var(--cyan);font-size:.9rem;margin-bottom:12px;letter-spacing:2px}
.testi-text{color:rgba(255,255,255,.85);font-size:.9rem;line-height:1.7;margin-bottom:16px;font-style:italic}
.testi-author{display:flex;align-items:center;gap:12px}
.testi-av{width:42px;height:42px;background:linear-gradient(135deg,var(--blue),var(--cyan));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#fff;font-weight:700;flex-shrink:0}
.testi-name{font-weight:700;color:#fff;font-size:.9rem}
.testi-loc{font-size:.78rem;color:rgba(255,255,255,.5)}
.testi-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:28px}
.testi-btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:var(--tr)}
.testi-btn:hover{background:rgba(0,153,255,.3);border-color:var(--blue)}
#cnDots{display:flex;gap:8px}
.cn-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);border:none;transition:var(--tr)}
.cn-dot.a{background:var(--cyan);width:24px;border-radius:4px}

/* ══════════════════════════════════════════════
   INSTAGRAM
══════════════════════════════════════════════ */
.instagram{background:var(--off);padding:80px 0}
.insta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:40px}
.insta-item{aspect-ratio:1;border-radius:12px;overflow:hidden;position:relative;background:linear-gradient(135deg,var(--dark),var(--blue2));transition:var(--tr);border:1px solid var(--g2);display:flex;align-items:center;justify-content:center;font-size:2.8rem}
.insta-item:hover{transform:scale(1.04);box-shadow:var(--sh2)}
.insta-ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,153,255,.7),rgba(0,229,255,.5));opacity:0;transition:var(--tr);display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-weight:700;font-size:.85rem}
.insta-item:hover .insta-ov{opacity:1}
@media(max-width:640px){.insta-grid{grid-template-columns:repeat(3,1fr)}}

/* ══════════════════════════════════════════════
   FAQ
══════════════════════════════════════════════ */
.faq{background:var(--g);padding:100px 0}
.faq-wrap{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.faq-item{background:#fff;border-radius:16px;border:2px solid #8ec8ff;border-right:5px solid #0099ff;overflow:hidden;transition:var(--tr);box-shadow:0 2px 16px rgba(0,153,255,.14)}
.faq-item.open{border-color:#0099ff;border-right-color:#0099ff;box-shadow:0 4px 24px rgba(0,153,255,.18);background:#f5faff}
.faq-q{width:100%;background:none;border:none;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:right;font-size:1rem;font-weight:700;color:#111;transition:var(--tr)}
.faq-q:hover{color:var(--blue)}
.faq-q i{color:#0099ff;font-size:1rem;transition:transform .3s;flex-shrink:0}
.faq-item.open .faq-q i{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s}
.faq-item.open .faq-a{max-height:300px;padding:0 24px 20px}
.faq-a p{font-size:.9rem;color:var(--g6);line-height:1.7}

/* ══════════════════════════════════════════════
   CTA BAND
══════════════════════════════════════════════ */
.cta-band{background:linear-gradient(135deg,var(--dark),var(--blue2));padding:80px 0;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.05);top:-60px;right:-60px}
.cta-band::after{content:'';position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(255,255,255,.05);bottom:-50px;left:-30px}
.cta-band h2{color:#fff;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:900;margin-bottom:12px}
.cta-band p{color:rgba(255,255,255,.8);font-size:1.05rem;margin-bottom:32px;max-width:520px;margin-left:auto;margin-right:auto}
.cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ══════════════════════════════════════════════
   BOOKING FORM
══════════════════════════════════════════════ */
.booking{background:var(--off);padding:100px 0}
.book-wrap{display:grid;grid-template-columns:1fr 1.4fr;gap:48px;align-items:start}
.book-info{}
.book-info .h2{text-align:right}
.book-info .sub{text-align:right;margin-right:0;max-width:100%}
.book-why{display:flex;flex-direction:column;gap:14px;margin-top:32px}
.book-why-item{display:flex;align-items:center;gap:14px;background:#fff;border-radius:14px;padding:14px;border:1px solid var(--g2)}
.book-why-item i{color:var(--blue);font-size:1.2rem;flex-shrink:0}
.book-why-item span{font-size:.88rem;color:var(--g6);line-height:1.5}
.book-why-item strong{color:var(--dark)}
.book-form{background:#fff;border-radius:28px;box-shadow:var(--sh2);padding:36px;border:1px solid var(--g2)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.f-group{margin-bottom:18px}
.f-group label{display:block;font-size:.83rem;font-weight:700;color:var(--dark);margin-bottom:6px}
.f-group input,.f-group select,.f-group textarea{width:100%;padding:12px 16px;border-radius:12px;border:2px solid var(--g2);font-size:.9rem;color:var(--g8);background:#fff;transition:var(--tr)}
.f-group input:focus,.f-group select:focus,.f-group textarea:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px rgba(0,153,255,.12)}
.f-group textarea{resize:vertical;min-height:90px}
.form-terms{display:flex;align-items:flex-start;gap:10px;font-size:.82rem;color:var(--g5);margin-bottom:20px}
.form-terms input{margin-top:3px;flex-shrink:0;accent-color:var(--blue)}
.btn-book{padding:14px 20px;font-size:.95rem;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:800;border:none;transition:var(--tr);flex:1}
.btn-book-agent{padding:14px 20px;font-size:.95rem;border-radius:14px;background:linear-gradient(135deg,#25D366,#128C7E);color:#fff;font-weight:800;border:none;transition:var(--tr);flex:1}
.btn-book:hover,.btn-book-agent:hover{transform:translateY(-2px);box-shadow:var(--sh3)}
.wz-nav{display:flex;gap:10px;flex-wrap:wrap}
.bdate-ok{color:#16A34A;font-weight:600}.bdate-busy{color:#D97706;font-weight:600}
.wz1-item{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;border-bottom:1px solid rgba(0,153,255,.12);cursor:pointer;transition:background .15s;direction:rtl;font-size:.86rem}
.wz1-item:last-child{border-bottom:none}
.wz1-item:hover{background:rgba(0,153,255,.08)}
.wz1-item.selected{background:rgba(0,153,255,.15);border-right:3px solid var(--blue)}
.wz1-item-name{color:#0A192F;flex:1;text-align:right;line-height:1.4}
.wz1-item-price{color:var(--blue);font-weight:700;margin-right:14px;white-space:nowrap;font-size:.82rem}
html.dark-mode .wz1-item{border-bottom-color:rgba(0,153,255,.18)}
html.dark-mode .wz1-item-name{color:#e8f4ff}
html.dark-mode .wz1-item:hover{background:rgba(0,153,255,.15)}
html.dark-mode .wz1-item.selected{background:rgba(0,153,255,.25)}
.btime-info-ok{color:#16A34A}.btime-info-warn{color:#D97706}.bconflict-ok{color:#16A34A;font-weight:600}.bconflict-busy{color:#EF4444;font-weight:600}.bconflict-suggest{color:#D97706;font-weight:600}

@media(max-width:820px){
  .book-wrap{grid-template-columns:1fr}
  .book-info .h2,.book-info .sub{text-align:center}
  .form-row{grid-template-columns:1fr}
}

/* ══════════════════════════════════════════════
   CONTACT
══════════════════════════════════════════════ */
.contact{background:var(--dark);padding:100px 0}
.contact .h2{color:#fff}
.contact .sub{color:rgba(255,255,255,.6)}
.contact-in{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact-details{display:flex;flex-direction:column;gap:16px}
.cd-item{display:flex;align-items:flex-start;gap:16px;background:rgba(255,255,255,.06);border:1px solid rgba(0,153,255,.2);border-radius:16px;padding:20px}
.cd-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--blue),var(--blue3));border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;flex-shrink:0}
.cd-label{font-size:.78rem;color:rgba(255,255,255,.5);margin-bottom:4px}
.cd-value{color:#fff;font-size:.95rem;font-weight:600}
.cd-value a{color:var(--cyan);transition:var(--tr)}
.cd-value a:hover{color:#fff}
.contact-form{background:rgba(255,255,255,.05);border:1px solid rgba(0,153,255,.2);border-radius:24px;padding:32px}
.contact-form .f-group input,.contact-form .f-group select,.contact-form .f-group textarea{background:rgba(255,255,255,.08);border-color:rgba(0,153,255,.25);color:#fff}
.contact-form .f-group input::placeholder,.contact-form .f-group textarea::placeholder{color:rgba(255,255,255,.35)}
.contact-form .f-group label{color:rgba(255,255,255,.75)}
.contact-form .f-group input:focus,.contact-form .f-group textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,229,255,.12)}
.social-links{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.soc-btn{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;border:1px solid rgba(255,255,255,.15);color:#fff;transition:var(--tr)}
.soc-fb{background:#1877F2}.soc-ig{background:linear-gradient(135deg,#F58529,#DD2A7B,#8134AF,#515BD4)}.soc-yt{background:#FF0000}.soc-tk{background:#000}.soc-wa{background:#25D366}
.soc-btn:hover{transform:translateY(-4px) scale(1.1);box-shadow:0 8px 20px rgba(0,0,0,.4)}

@media(max-width:820px){.contact-in{grid-template-columns:1fr}}
#pricing-calc select{-webkit-appearance:none;appearance:none;cursor:pointer}
#pricing-calc select option{background:#1a2d52;color:#fff}
@media(max-width:860px){#pricing-calc .c>div[style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr !important;gap:36px !important}}

/* ══════════════════════════════════════════════
   FOOTER
══════════════════════════════════════════════ */
footer{background:var(--dark2);padding:60px 0 0;border-top:1px solid rgba(0,153,255,.15)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}
.footer-brand .logo-img{height:70px;margin-bottom:16px;filter:drop-shadow(0 0 8px rgba(0,229,255,.3))}
.footer-brand p{font-size:.85rem;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:16px}
.footer-col h4{color:#fff;font-size:.9rem;font-weight:800;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid rgba(0,153,255,.3)}
.footer-col ul li{margin-bottom:9px}
.footer-col ul li a{font-size:.84rem;color:rgba(255,255,255,.5);transition:var(--tr);display:flex;align-items:center;gap:6px}
.footer-col ul li a:hover{color:var(--cyan)}
.footer-col ul li a i{font-size:.75rem;color:var(--blue)}
.footer-contact-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}
.footer-contact-item i{color:var(--blue);font-size:.85rem;margin-top:3px;flex-shrink:0}
.footer-contact-item a,.footer-contact-item span{font-size:.83rem;color:rgba(255,255,255,.55);transition:var(--tr)}
.footer-contact-item a:hover{color:var(--cyan)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.06);padding:20px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:.78rem;color:rgba(255,255,255,.3)}
.footer-bottom a{color:rgba(0,229,255,.6)}
.footer-bottom a:hover{color:var(--cyan)}
.footer-logos{display:flex;gap:8px;flex-wrap:wrap}
.pay-ico{background:rgba(255,255,255,.08);border-radius:6px;padding:4px 8px;font-size:.7rem;color:rgba(255,255,255,.5);font-weight:700}

@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .footer-brand{grid-column:span 2}
}
@media(max-width:540px){.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:1}}

/* ══════════════════════════════════════════════
   FLOATING ELEMENTS
══════════════════════════════════════════════ */
/* WhatsApp */
.wa-float{position:fixed;bottom:100px;right:24px;z-index:900}
.wa-btn{width:58px;height:58px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.6rem;color:#fff;box-shadow:0 4px 20px rgba(37,211,102,.4);transition:var(--tr);animation:wa-pulse 3s ease-in-out infinite}
.wa-btn:hover{transform:scale(1.1);box-shadow:0 8px 30px rgba(37,211,102,.6);animation:none}
@keyframes wa-pulse{0%,100%{box-shadow:0 4px 20px rgba(37,211,102,.4)}50%{box-shadow:0 4px 30px rgba(37,211,102,.7)}}
.wa-tooltip{position:absolute;left:66px;top:50%;transform:translateY(-50%);background:rgba(6,15,26,.95);color:#fff;font-size:.78rem;font-weight:700;padding:6px 12px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:var(--tr)}
.wa-float:hover .wa-tooltip{opacity:1}

/* Back to top */
#backTop{position:fixed;bottom:28px;right:24px;width:46px;height:46px;background:linear-gradient(135deg,var(--blue),var(--blue3));color:#fff;border:none;border-radius:50%;font-size:1rem;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s ease,transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;z-index:899;box-shadow:var(--sh1)}
#backTop.show{opacity:1;pointer-events:all}
#backTop:hover{transform:translateY(-4px) scale(1.1);box-shadow:var(--sh2)}

/* ══════════════════════════════════════════════
   ACCESSIBILITY WIDGET
══════════════════════════════════════════════ */
#ks-a11y-btn{display:flex;align-items:center;gap:6px;background:rgba(0,153,255,.15);
  border:1.5px solid rgba(0,153,255,.4);border-radius:50px;color:#fff;
  font-size:.8rem;font-weight:700;padding:6px 13px;cursor:pointer;transition:var(--tr);
  white-space:nowrap}
#ks-a11y-btn:hover{background:rgba(0,153,255,.3);border-color:var(--cyan)}
#ks-a11y-btn i{font-size:.95rem;color:var(--cyan)}
/* Panel */
#ks-a11y-panel{position:fixed;top:110px;left:14px;width:280px;
  background:linear-gradient(160deg,#0a1830,#0d2040);
  border:1.5px solid rgba(0,229,255,.25);border-radius:18px;
  padding:18px 16px;z-index:9100;box-shadow:0 8px 32px rgba(0,0,0,.55);
  direction:rtl;display:none}
#ks-a11y-panel.open{display:block;animation:a11y-drop .22s ease}
@keyframes a11y-drop{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.a11y-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;
  padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.1)}
.a11y-header-title{color:#fff;font-weight:800;font-size:.95rem;display:flex;align-items:center;gap:7px}
.a11y-header-title i{color:var(--cyan)}
#ks-a11y-close{background:none;border:none;color:rgba(255,255,255,.5);font-size:1.1rem;
  cursor:pointer;padding:2px 6px;border-radius:6px;transition:color .2s}
#ks-a11y-close:hover{color:#fff}
.a11y-row{display:flex;align-items:center;justify-content:space-between;
  padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.a11y-row:last-child{border-bottom:none}
.a11y-label{color:rgba(255,255,255,.85);font-size:.84rem;display:flex;align-items:center;gap:7px}
.a11y-label i{color:var(--cyan);width:16px;text-align:center}
.a11y-toggle{position:relative;width:44px;height:24px;flex-shrink:0}
.a11y-toggle input{opacity:0;width:0;height:0;position:absolute}
.a11y-slider{position:absolute;inset:0;background:rgba(255,255,255,.15);border-radius:24px;
  cursor:pointer;transition:.25s}
.a11y-slider::before{content:'';position:absolute;width:18px;height:18px;
  left:3px;top:3px;background:#fff;border-radius:50%;transition:.25s}
.a11y-toggle input:checked + .a11y-slider{background:var(--blue)}
.a11y-toggle input:checked + .a11y-slider::before{left:23px}
/* Font-size controls */
.a11y-font-ctrl{display:flex;align-items:center;gap:6px}
.a11y-font-ctrl button{width:28px;height:28px;border-radius:8px;border:1.5px solid rgba(0,153,255,.4);
  background:rgba(0,153,255,.1);color:#fff;font-weight:800;font-size:.9rem;cursor:pointer;transition:.2s}
.a11y-font-ctrl button:hover{background:rgba(0,153,255,.35)}
.a11y-font-size-val{color:var(--cyan);font-size:.82rem;font-weight:700;min-width:28px;text-align:center}
/* Reset button */
#ks-a11y-reset{width:100%;margin-top:12px;padding:9px;border-radius:10px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);
  color:rgba(255,255,255,.7);font-size:.82rem;font-weight:700;cursor:pointer;transition:.2s}
#ks-a11y-reset:hover{background:rgba(255,255,255,.15);color:#fff}
/* Global accessibility states */
html.a11y-high-contrast{filter:contrast(1.5) saturate(0)!important}
html.a11y-readable-font *{font-family:Arial,Helvetica,sans-serif!important}
html.a11y-highlight-links a{text-decoration:underline!important;outline:2px solid #FFD700!important;outline-offset:2px!important}
html.a11y-stop-anim *{animation:none!important;transition:none!important}
html.a11y-large-cursor,html.a11y-large-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath d='M8 4l0 20 5-5 5 9 3-2-5-9h6z' fill='%23000' stroke='%23fff' stroke-width='1.5'/%3E%3C/svg%3E") 0 0,auto!important}
html.a11y-text-spacing p,html.a11y-text-spacing li,html.a11y-text-spacing span,html.a11y-text-spacing div{word-spacing:.16em!important;letter-spacing:.12em!important;line-height:1.8!important}
/* Hide text label on narrow screens to save space */
@media(max-width:600px){.a11y-btn-lbl{display:none}}
/* ── Music Controls ── */
#ks-music-panel{position:fixed;bottom:60px;left:14px;z-index:900;display:flex;flex-direction:column;align-items:center;gap:6px}
.ks-mc-btn{width:44px;height:44px;background:linear-gradient(135deg,var(--blue2),var(--blue));color:#fff;border:none;border-radius:50%;font-size:.9rem;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--sh2);transition:var(--tr);opacity:.82}
.ks-mc-btn:hover{opacity:1;transform:scale(1.1)}
#ks-music-btn.playing{background:linear-gradient(135deg,#007acc,var(--cyan));opacity:1}
#ks-music-btn.playing i{animation:ks-music-pulse 1.4s ease-in-out infinite}
@keyframes ks-music-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}

#ks-music-btn .ks-mt{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--dark);color:#fff;font-size:.7rem;white-space:nowrap;padding:4px 8px;border-radius:6px;pointer-events:none;opacity:0;transition:opacity .2s}
#ks-music-btn:hover .ks-mt{opacity:1}

/* ── Voice Nav Button ── */
#ks-voice-btn{position:fixed;bottom:115px;left:14px;width:44px;height:44px;background:linear-gradient(135deg,#1a5276,var(--blue));color:#fff;border:none;border-radius:50%;font-size:1rem;display:none;align-items:center;justify-content:center;cursor:pointer;z-index:900;box-shadow:var(--sh2);transition:var(--tr);opacity:.82}
#ks-voice-btn:hover{opacity:1;transform:scale(1.1)}
/* active = continuous mode ON */
#ks-voice-btn.ks-voice-on{background:linear-gradient(135deg,#117a65,#1abc9c);opacity:1;box-shadow:0 0 0 3px rgba(26,188,156,.4),var(--sh2)}
/* listening = actually capturing right now */
#ks-voice-btn.listening{background:linear-gradient(135deg,#c0392b,#e74c3c);opacity:1;animation:pulse-glow 1s ease-in-out infinite}
#ks-voice-status{position:fixed;bottom:115px;left:68px;background:rgba(0,10,30,.92);backdrop-filter:blur(12px);color:#fff;font-size:.78rem;padding:8px 14px;border-radius:10px;z-index:901;opacity:0;pointer-events:none;transition:opacity .25s;max-width:220px;border:1px solid rgba(0,153,255,.3);line-height:1.4}
#ks-voice-status.show{opacity:1}
#ks-voice-btn .ks-vt{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--dark);color:#fff;font-size:.7rem;white-space:nowrap;padding:4px 8px;border-radius:6px;pointer-events:none;opacity:0;transition:opacity .2s}
#ks-voice-btn:hover .ks-vt{opacity:1}


/* ── Floating Accessibility Button ── */
#ks-a11y-float{position:fixed;bottom:170px;left:14px;width:44px;height:44px;
  background:linear-gradient(135deg,var(--blue2),var(--blue));
  color:#fff;border:none;border-radius:50%;font-size:1rem;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:900;box-shadow:var(--sh2);
  transition:var(--tr);opacity:.82}
#ks-a11y-float:hover{opacity:1;transform:scale(1.1)}
#ks-a11y-float .ks-vt{position:absolute;bottom:calc(100% + 8px);left:50%;
  transform:translateX(-50%);background:var(--dark);color:#fff;font-size:.7rem;
  white-space:nowrap;padding:4px 8px;border-radius:6px;
  pointer-events:none;opacity:0;transition:opacity .2s}
#ks-a11y-float:hover .ks-vt{opacity:1}


/* ── Card number badge ── */
.act-num{position:absolute;top:8px;left:8px;
  background:rgba(0,0,0,.6);backdrop-filter:blur(8px);
  color:#fff;font-size:.7rem;font-weight:800;
  min-width:22px;height:22px;padding:0 6px;border-radius:50px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 6px rgba(0,0,0,.3);z-index:3;line-height:1}
/* ── Hide emoji icon on all cards ── */
.act-em{display:none!important}

/* ── Skeleton shimmer on card images ── */
@keyframes ks-shimmer{0%{background-position:200% center}100%{background-position:-200% center}}
.act-img-photo:not(.ks-loaded){background:linear-gradient(90deg,var(--g2) 25%,var(--g3) 50%,var(--g2) 75%);background-size:200% auto;animation:ks-shimmer 1.5s linear infinite}
.act-img-photo.ks-loaded{animation:none;background:none}

/* ── Chatbot ── */
.chat-toggle{position:fixed;bottom:170px;right:24px;z-index:901;width:58px;height:58px;background:linear-gradient(135deg,var(--blue),var(--cyan));border:none;border-radius:50%;color:var(--dark);font-size:1.5rem;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--sh2);transition:var(--tr)}
.chat-toggle:hover{transform:scale(1.1);box-shadow:var(--sh3)}
.chat-toggle.open .ct-icon{display:none}
.chat-toggle.open .ct-close{display:flex!important}
.ct-close{display:none;align-items:center;justify-content:center;font-size:1.2rem}
.chat-bubble{position:fixed;bottom:260px;right:20px;width:340px;background:#fff;border-radius:24px;box-shadow:var(--sh3);border:1px solid var(--g2);overflow:hidden;display:none;flex-direction:column;z-index:900;max-height:min(500px,calc(100vh - 270px))}
.chat-bubble.open{display:flex}
.ch-head{background:linear-gradient(135deg,var(--dark),var(--blue2));padding:16px 18px;display:flex;align-items:center;gap:12px}
.ch-av{width:38px;height:38px;background:linear-gradient(135deg,var(--blue),var(--cyan));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.ch-head-info strong{display:block;color:#fff;font-size:.9rem;font-weight:800}
.ch-head-info span{color:rgba(255,255,255,.6);font-size:.72rem}
.ch-status{display:inline-block;width:8px;height:8px;background:var(--green);border-radius:50%;margin-right:4px;animation:blink .9s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
#chBody{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;min-height:100px;max-height:260px;scrollbar-width:thin;scrollbar-color:var(--g3) transparent}
.msg{max-width:82%;padding:10px 14px;border-radius:16px;font-size:.84rem;line-height:1.5;animation:msg-pop .2s ease}
@keyframes msg-pop{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}
.msg.bot{background:var(--blue4);color:var(--dark);border-bottom-right-radius:4px;align-self:flex-start}
.msg.user{background:linear-gradient(135deg,var(--blue),var(--blue3));color:#fff;border-bottom-left-radius:4px;align-self:flex-end}
.typing{display:flex;gap:4px;padding:10px 14px;background:var(--blue4);border-radius:16px;border-bottom-right-radius:4px;width:fit-content}
.typing span{width:6px;height:6px;background:var(--blue3);border-radius:50%;animation:dots .8s ease-in-out infinite}
.typing span:nth-child(2){animation-delay:.15s}
.typing span:nth-child(3){animation-delay:.3s}
@keyframes dots{0%,80%,100%{transform:translateY(0)}40%{transform:translateY(-8px)}}
#chQuick{padding:10px 14px;display:flex;flex-wrap:wrap;gap:6px}
.qk-btn{background:var(--blue4);color:var(--blue2);border:1px solid rgba(0,153,255,.2);border-radius:50px;font-size:.75rem;font-weight:700;padding:5px 12px;transition:var(--tr)}
.qk-btn:hover{background:var(--blue);color:#fff}
.ch-inp-row{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--g2)}
#chIn{flex:1;border:2px solid var(--g2);border-radius:12px;padding:8px 12px;font-size:.85rem;transition:var(--tr)}
#chIn:focus{border-color:var(--blue);outline:none}
.ch-send{background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--dark);border:none;border-radius:10px;padding:8px 14px;font-size:.9rem;font-weight:700;transition:var(--tr)}
.ch-send:hover{transform:scale(1.05)}

/* ── Social Proof ── */
#spNotif{position:fixed;bottom:28px;left:24px;background:#fff;border-radius:16px;padding:12px 16px;box-shadow:var(--sh2);border:1px solid var(--g2);display:flex;align-items:center;gap:12px;z-index:899;transform:translateX(-110%);transition:transform .5s cubic-bezier(.34,1.56,.64,1)}
#spNotif.show{transform:translateX(0)}
.sp-av{width:36px;height:36px;background:#fff;border:2px solid rgba(0,153,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;padding:2px}
.sp-text{display:flex;flex-direction:column}
#spName{font-size:.83rem;font-weight:800;color:var(--dark)}
#spMsg{font-size:.75rem;color:var(--g5)}
.sp-dot{width:8px;height:8px;background:var(--green);border-radius:50%;flex-shrink:0}

/* ── Cookie Bar ── */
#cookieBar{position:fixed;bottom:0;left:0;right:0;background:rgba(6,15,26,.97);backdrop-filter:blur(16px);border-top:1px solid rgba(0,153,255,.2);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:9000;transform:translateY(100%);transition:transform .4s ease;flex-wrap:wrap}
#cookieBar.show{transform:translateY(0)}
#cookieBar p{font-size:.82rem;color:rgba(255,255,255,.7);flex:1;min-width:200px}
#cookieBar p a{color:var(--cyan);text-decoration:underline}
.cookie-btns{display:flex;gap:10px}
.cookie-accept{background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--dark);border:none;border-radius:8px;padding:8px 18px;font-size:.82rem;font-weight:700;transition:var(--tr)}
.cookie-accept:hover{transform:scale(1.05)}
.cookie-decline{background:transparent;color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 18px;font-size:.82rem;transition:var(--tr)}
.cookie-decline:hover{background:rgba(255,255,255,.1)}

/* ===== AMBIENT SPARKLES ===== */
/* ===== AMBIENT SPARKLES ===== */
#sparkle-canvas{
  position:fixed;top:0;left:0;
  width:100%;height:100%;
  pointer-events:none;
  z-index:1;
  opacity:.55;
}
/* ===== LOGO CURSOR ELEMENT ===== */
#ks-star {
  position: fixed;
  width: 35px;
  height: 35px;
  pointer-events: none;
  z-index: 2147483647; /* always above every modal/overlay so the cursor is visible */
  transform: translate(-50%, -50%);
  transition: opacity .15s;
  will-change: left, top;
}
#ks-star img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
  filter: drop-shadow(0 0 6px rgba(0,229,255,.6));
}

/* ===== TOP INFO BAR ===== */
#top-info-bar {
  background: #061020;
  border-bottom: 1px solid rgba(0,153,255,0.3);
  padding: 7px 24px;
  text-align: center;
  font-size: .82rem;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: .04em;
  direction: rtl;
  line-height: 1.6;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1200;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* כפתור מרקטפלייס */
#mp-btn {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: #00E5FF;
  font-size: .78rem;
  font-weight: 800;
  padding: 3px 12px;
  border-radius: 50px;
  cursor: pointer;
  letter-spacing: .05em;
  transition: background .2s, color .2s;
  white-space: nowrap;
  font-family: inherit;
}
#mp-btn:hover { background: rgba(0,229,255,.15); }
/* מודל סיסמה מרקטפלייס */
#mp-modal-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.65);
  z-index: 9999;
  align-items: center;
  justify-content: center;
}
#mp-modal-overlay.open { display: flex; }
#mp-modal {
  background: #061020;
  border: 1px solid rgba(0,229,255,.4);
  border-radius: 16px;
  padding: 32px 28px;
  width: 320px;
  text-align: center;
  direction: rtl;
  box-shadow: 0 8px 40px rgba(0,153,255,.25);
}
#mp-modal h3 { color: #00E5FF; font-size: 1.1rem; margin-bottom: 6px; }
#mp-modal p  { color: rgba(255,255,255,.7); font-size: .85rem; margin-bottom: 18px; }
#mp-modal input {
  width: 100%;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(0,229,255,.35);
  border-radius: 8px;
  padding: 10px 14px;
  color: #fff;
  font-size: 1rem;
  text-align: center;
  letter-spacing: .15em;
  margin-bottom: 14px;
  box-sizing: border-box;
  font-family: inherit;
}
#mp-modal input:focus { outline: none; border-color: #00E5FF; }
#mp-modal .mp-btn-row { display: flex; gap: 10px; }
#mp-modal .mp-ok {
  flex: 1;
  background: #00E5FF;
  color: #061020;
  border: none;
  border-radius: 8px;
  padding: 10px;
  font-weight: 800;
  cursor: pointer;
  font-size: .95rem;
  font-family: inherit;
}
#mp-modal .mp-cancel {
  flex: 1;
  background: transparent;
  color: rgba(255,255,255,.6);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 8px;
  padding: 10px;
  font-weight: 700;
  cursor: pointer;
  font-size: .95rem;
  font-family: inherit;
}
#mp-modal .mp-err { color: #64B5F6; font-size: .82rem; margin-top: 8px; display: none; }
#top-info-bar a {
  color: #ffffff;
  text-decoration: none;
  transition: color .2s;
}
#top-info-bar a:hover { color: #00E5FF; }
#top-info-bar .sep {
  color: rgba(0,153,255,0.5);
  margin: 0 8px;
  font-weight: 400;
}
@media(max-width:600px){
  #top-info-bar { font-size:.72rem; padding:6px 10px; }
  #top-info-bar .sep { margin: 0 5px; }
}


/* ===== TOP BAR + NAV OFFSET FIX ===== */
/* top-info-bar ~36px + nav ~70px = ~106px total fixed header height */
.hero, section:first-of-type {
  padding-top: 110px !important;
}
@media(max-width:600px){
  #top-info-bar { font-size:.72rem; padding:6px 10px; }
}


/* ct-logo-img — גודל דסקטופ: 40px בתוך עיגול 58px */
.ct-logo-img { width:40px !important; height:40px !important; object-fit:contain; display:block; }

/* ג”€ג”€ Why-us single row responsive ג”€ג”€ */
.why-card .why-icon { font-size: 1.6rem; margin-bottom: 10px; }
.why-card h3 { font-size: .88rem; margin-bottom: 6px; }
.why-card p  { font-size: .76rem; line-height: 1.5; }
@media(max-width:1100px){
  .why-grid { grid-template-columns: repeat(3,1fr); }
}
@media(max-width:640px){
  .why-grid { grid-template-columns: repeat(2,1fr); }
}


/* counters 7-col */
.counters-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:14px}
.counter-item{text-align:center;padding:18px 8px}
.c-num{font-size:1.6rem;font-weight:900;color:var(--cyan)}
.c-lbl{font-size:.75rem;margin-top:4px;opacity:.85}
@media(max-width:900px){.counters-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:520px){.counters-grid{grid-template-columns:repeat(2,1fr)}}


/* ===== BRAND COLOR EMOJI FILTER ===== */
.srv-card-header h3,
.pc-icon {
  filter: grayscale(1) sepia(1) saturate(8) hue-rotate(185deg) brightness(1.15);
}


/* ===== UPGRADE FEATURES CSS ===== */

/* Sort bar */
.sort-bar{display:flex;align-items:center;gap:10px;margin:12px 0 20px;flex-wrap:wrap;direction:rtl}
.sort-bar label{font-size:.82rem;font-weight:700;color:var(--g6)}
.sort-select{background:var(--off);border:1.5px solid rgba(0,153,255,.25);color:var(--g7);
  border-radius:10px;padding:7px 14px;font-size:.82rem;font-family:inherit;cursor:pointer;
  transition:border-color .2s}
.sort-select:hover,.sort-select:focus{border-color:var(--blue);outline:none}

/* Activity badges */
.act-badge-hot{position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#FF4757,#FF6B81);
  color:#fff;font-size:.65rem;font-weight:800;padding:3px 9px;border-radius:20px;
  letter-spacing:.4px;z-index:2;box-shadow:0 2px 8px rgba(255,71,87,.4)}
.act-badge-new{position:absolute;top:10px;right:10px;background:linear-gradient(135deg,var(--blue),var(--cyan));
  color:#fff;font-size:.65rem;font-weight:800;padding:3px 9px;border-radius:20px;
  letter-spacing:.4px;z-index:2}
.act-demand{display:flex;gap:3px;margin-top:6px}
.act-demand span{width:8px;height:8px;border-radius:50%;background:rgba(0,153,255,.2)}
.act-demand span.on{background:var(--cyan)}
.act-price-tag{font-size:.72rem;color:var(--cyan);font-weight:700;margin-top:4px}

/* Modal */
#actModal{position:fixed;inset:0;background:rgba(0,10,30,.75);backdrop-filter:blur(6px);
  z-index:9000;display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .3s}
#actModal.open{opacity:1;pointer-events:all}
/* Outer wrapper — provides positioning context for the X button, does NOT scroll */
.act-modal-wrap{position:relative;max-width:680px;width:92%;
  transform:translateY(30px);transition:transform .3s}
#actModal.open .act-modal-wrap{transform:translateY(0)}
/* Scrollable box — all rich content lives here */
.act-modal-box{background:linear-gradient(160deg,var(--dark),var(--blue2));
  border:1px solid rgba(0,229,255,.2);border-radius:24px;padding:36px 32px;
  color:#fff;max-height:90vh;overflow-y:auto;scrollbar-width:thin}
/* X button — centered at top of modal image, always visible */
.act-modal-close{position:absolute;top:-14px;left:50%;transform:translateX(-50%);z-index:20;
  background:rgba(0,0,0,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  border:none;border-radius:50%;
  width:36px;height:36px;color:#fff;font-size:.9rem;
  cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;
  box-shadow:0 2px 10px rgba(0,0,0,.35);opacity:.9}
.act-modal-close:hover{background:rgba(0,0,0,.78);opacity:1;transform:translateX(-50%) scale(1.08)}
/* Modal pricing table */
.mprice-row{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:8px;font-size:.82rem}
.mprice-row:nth-child(odd){background:rgba(255,255,255,.06)}
.mprice-row.best{background:rgba(0,229,255,.15);border:1px solid rgba(0,229,255,.3)}
.mprice-lbl{color:rgba(255,255,255,.7);font-weight:600}
.mprice-val{color:#fff;font-weight:800;font-size:.9rem}
.mprice-val .per{font-size:.72rem;color:rgba(255,255,255,.55);font-weight:400;margin-right:3px}
/* #actModal.open already defined above — removed duplicate */
.act-modal-emoji{font-size:3rem;margin-bottom:12px;
  filter:grayscale(1) sepia(1) saturate(8) hue-rotate(185deg) brightness(1.15)}
.act-modal-title{font-size:1.5rem;font-weight:900;margin-bottom:4px}
.act-modal-cat{color:var(--cyan);font-size:.82rem;font-weight:700;margin-bottom:16px}
.act-modal-desc{color:rgba(255,255,255,.85);line-height:1.7;margin-bottom:16px;white-space:pre-line}
.act-modal-meta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.act-modal-meta span{background:rgba(255,255,255,.08);border-radius:8px;
  padding:6px 12px;font-size:.8rem}
.act-modal-meta i{color:var(--cyan);margin-left:6px}
.modal-pills-row{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 14px}
.modal-pills-row .ap{font-size:.82rem;padding:5px 12px}
.act-modal-btns{display:flex;gap:12px}
.act-modal-btns a{flex:1;text-align:center;padding:12px;border-radius:12px;
  font-weight:800;font-size:.9rem;text-decoration:none;transition:transform .2s}
.act-modal-btns a:hover{transform:translateY(-2px)}
.btn-wa-modal{background:#25D366;color:#fff}
.btn-wa-modal:hover{background:#1da851}
.btn-book-modal{background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--dark)}
.btn-share-modal{background:rgba(0,153,255,.12);border:2px solid rgba(0,153,255,.3);color:var(--blue);border-radius:12px;padding:12px 16px;font-size:1rem;transition:var(--tr);flex:0 0 auto}
.btn-share-modal:hover{background:rgba(0,153,255,.22);transform:translateY(-2px)}

/* ───── Product image on activity card ───── */
.act-img{position:relative}
.act-img-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;
  transition:transform .55s cubic-bezier(.2,.8,.3,1)}
.act-card:hover .act-img-photo{transform:scale(1.06)}
/* שולחנות משחק / קשתות ודנסרים / מכונות מזון / בובות אדם — show full product image on white background */
[data-cat="tables"] .act-img,[data-cat="entrance"] .act-img,[data-cat="food"] .act-img,[data-cat="dolls"] .act-img{background:#fff}
[data-cat="tables"] .act-img-photo,[data-cat="entrance"] .act-img-photo,[data-cat="food"] .act-img-photo,[data-cat="dolls"] .act-img-photo{object-fit:contain}
[data-cat="tables"] .act-card:hover .act-img-photo,[data-cat="entrance"] .act-card:hover .act-img-photo,[data-cat="food"] .act-card:hover .act-img-photo,[data-cat="dolls"] .act-card:hover .act-img-photo{transform:none}
/* tbl11 / doll_bal / doll_bir — הגדלת תמונה קטנה, מרכוז */
[data-id="tbl11"] .act-img-photo{transform:scale(1.35)!important;object-position:center center!important}
[data-id="doll_bal"] .act-img-photo{transform:scale(1.35)!important;object-position:center center!important}
[data-id="doll_bir"] .act-img-photo{transform:scale(1.35)!important;object-position:center center!important}
/* סדנאות + ימי הולדת + הפעלות — cover מלא, ללא רקע, object-position מיטבי */
[data-id="ws01"] .act-img,[data-id="ws02"] .act-img,[data-id="ws04"] .act-img,
[data-id="bd02"] .act-img,[data-id="bd04"] .act-img,[data-id="bd10"] .act-img,[data-id="bd12"] .act-img,
[data-id="act01"] .act-img,[data-id="act06"] .act-img,[data-id="act07"] .act-img,[data-id="act11"] .act-img,[data-id="act12"] .act-img,
[data-id="act15"] .act-img,[data-id="act16"] .act-img,[data-id="act18"] .act-img,[data-id="act19"] .act-img,[data-id="act20"] .act-img,
[data-id="act23"] .act-img,[data-id="act25"] .act-img,[data-id="act26"] .act-img,[data-id="act36"] .act-img,[data-id="act38"] .act-img{background:none!important;padding:0!important}
[data-id="ws01"] .act-img-photo,[data-id="ws02"] .act-img-photo,[data-id="ws04"] .act-img-photo,
[data-id="bd02"] .act-img-photo,[data-id="bd04"] .act-img-photo,[data-id="bd10"] .act-img-photo,[data-id="bd12"] .act-img-photo,
[data-id="act01"] .act-img-photo,[data-id="act06"] .act-img-photo,[data-id="act07"] .act-img-photo,[data-id="act11"] .act-img-photo,[data-id="act12"] .act-img-photo,
[data-id="act15"] .act-img-photo,[data-id="act16"] .act-img-photo,[data-id="act18"] .act-img-photo,[data-id="act19"] .act-img-photo,[data-id="act20"] .act-img-photo,
[data-id="act23"] .act-img-photo,[data-id="act25"] .act-img-photo,[data-id="act26"] .act-img-photo,[data-id="act36"] .act-img-photo,[data-id="act38"] .act-img-photo{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 35%!important;padding:0!important;transform:none!important}
[data-id="ws01"] .act-card:hover .act-img-photo,[data-id="ws02"] .act-card:hover .act-img-photo,[data-id="ws04"] .act-card:hover .act-img-photo,
[data-id="bd02"] .act-card:hover .act-img-photo,[data-id="bd04"] .act-card:hover .act-img-photo,[data-id="bd10"] .act-card:hover .act-img-photo,[data-id="bd12"] .act-card:hover .act-img-photo,
[data-id="act01"] .act-card:hover .act-img-photo,[data-id="act06"] .act-card:hover .act-img-photo,[data-id="act07"] .act-card:hover .act-img-photo,[data-id="act11"] .act-card:hover .act-img-photo,[data-id="act12"] .act-card:hover .act-img-photo,
[data-id="act15"] .act-card:hover .act-img-photo,[data-id="act16"] .act-card:hover .act-img-photo,[data-id="act18"] .act-card:hover .act-img-photo,[data-id="act19"] .act-card:hover .act-img-photo,[data-id="act20"] .act-card:hover .act-img-photo,
[data-id="act23"] .act-card:hover .act-img-photo,[data-id="act25"] .act-card:hover .act-img-photo,[data-id="act26"] .act-card:hover .act-img-photo,[data-id="act36"] .act-card:hover .act-img-photo,[data-id="act38"] .act-card:hover .act-img-photo{transform:scale(1.04)!important}
/* act14 (פיזיקאים צעירים) — תמונת מוצר על רקע לבן */
[data-id="act14"] .act-img{background:#fff!important}
[data-id="act14"] .act-img-photo{object-fit:contain!important;transform:none!important}
[data-id="act14"] .act-card:hover .act-img-photo{transform:scale(1.04)!important}
/* דוכני מזון (food13–food20) — תמונה מכסה 100% ללא רווחים */
[data-id="food13"] .act-img,[data-id="food14"] .act-img,[data-id="food15"] .act-img,[data-id="food16"] .act-img,[data-id="food17"] .act-img,[data-id="food18"] .act-img,[data-id="food19"] .act-img,[data-id="food20"] .act-img{background:none!important;padding:0!important}
[data-id="food13"] .act-img-photo,[data-id="food14"] .act-img-photo,[data-id="food15"] .act-img-photo,[data-id="food16"] .act-img-photo,[data-id="food17"] .act-img-photo,[data-id="food18"] .act-img-photo,[data-id="food19"] .act-img-photo,[data-id="food20"] .act-img-photo{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;padding:0!important;transform:none!important}
[data-id="food13"] .act-card:hover .act-img-photo,[data-id="food14"] .act-card:hover .act-img-photo,[data-id="food15"] .act-card:hover .act-img-photo,[data-id="food16"] .act-card:hover .act-img-photo,[data-id="food17"] .act-card:hover .act-img-photo,[data-id="food18"] .act-card:hover .act-img-photo,[data-id="food19"] .act-card:hover .act-img-photo,[data-id="food20"] .act-card:hover .act-img-photo{transform:scale(1.06)!important}
/* משחקי רצפה — תמונה מלאה ללא חיתוך, רקע אלון בהיר */
[data-cat="floorGames"] .act-img{
  background:#F0F4F9;
  height:200px;
}
[data-cat="floorGames"] .act-img-photo{
  object-fit:contain;
  padding:8px;
}
[data-cat="floorGames"] .act-card:hover .act-img-photo{transform:none}
[data-id="fg02"] .act-img,[data-id="fg41"] .act-img,[data-id="fg42"] .act-img,[data-id="fg43"] .act-img,[data-id="fg44"] .act-img,[data-id="nitz01"] .act-img,[data-id="nitz02"] .act-img,[data-id="nitz03"] .act-img{background:#ffffff!important}
[data-id="nitz01"] .act-img-photo,[data-id="nitz02"] .act-img-photo,[data-id="nitz03"] .act-img-photo{object-fit:cover!important;object-position:center center!important;width:100%!important;height:100%!important}
[data-id="fg02"] .act-img-photo,[data-id="fg41"] .act-img-photo,[data-id="fg42"] .act-img-photo,[data-id="fg43"] .act-img-photo,[data-id="fg44"] .act-img-photo{object-fit:contain!important;object-position:center center!important;padding:10px!important}
[data-id="fg41"] .act-img-photo{object-position:50% 40%!important}
[data-id="fg02"] .act-img-photo{transform:scale(1.25)!important;transform-origin:center center!important;padding:0!important}
/* ── מתנפחים 21-28: תמונות PNG ללא חיתוך ── */
[data-id="inf19"] .act-img,[data-id="inf20"] .act-img,
[data-id="inf21"] .act-img,[data-id="inf22"] .act-img,[data-id="inf23"] .act-img,[data-id="inf24"] .act-img,
[data-id="inf25"] .act-img,[data-id="inf26"] .act-img,[data-id="inf27"] .act-img,[data-id="inf28"] .act-img{
  background:#ffffff!important;
  height:200px;
}
[data-id="inf19"] .act-img-photo,[data-id="inf20"] .act-img-photo,
[data-id="inf21"] .act-img-photo,[data-id="inf22"] .act-img-photo,[data-id="inf23"] .act-img-photo,[data-id="inf24"] .act-img-photo,
[data-id="inf25"] .act-img-photo,[data-id="inf26"] .act-img-photo,[data-id="inf27"] .act-img-photo,[data-id="inf28"] .act-img-photo{
  object-fit:contain!important;
  object-position:center center!important;
  padding:10px!important;
}
[data-id="inf19"] .act-card:hover .act-img-photo,[data-id="inf20"] .act-card:hover .act-img-photo,
[data-id="inf21"] .act-card:hover .act-img-photo,[data-id="inf22"] .act-card:hover .act-img-photo,
[data-id="inf23"] .act-card:hover .act-img-photo,[data-id="inf24"] .act-card:hover .act-img-photo,
[data-id="inf25"] .act-card:hover .act-img-photo,[data-id="inf26"] .act-card:hover .act-img-photo,
[data-id="inf27"] .act-card:hover .act-img-photo,[data-id="inf28"] .act-card:hover .act-img-photo{transform:none!important}
/* ── שעות סיפור: תמונות ספרים ללא חיתוך ── */
[data-cat="stories"] .act-img{
  background:#ffffff!important;
  height:220px;
  display:flex;align-items:center;justify-content:center;
}
[data-cat="stories"] .act-img-photo{
  object-fit:contain!important;
  object-position:center center!important;
  padding:12px!important;
  width:100%!important;
  height:100%!important;
}
[data-cat="stories"] .act-card:hover .act-img-photo{transform:none!important}
@media(max-width:768px){[data-cat="stories"] .act-img{height:180px}}
@media(max-width:480px){[data-cat="stories"] .act-img{height:150px}}
@media(max-width:768px){
  [data-cat="floorGames"] .act-img{height:160px}
}
@media(max-width:480px){
  [data-cat="floorGames"] .act-img{height:130px}
}
.act-img.has-photo .act-em{position:absolute;top:12px;left:12px;font-size:1.4rem;
  background:rgba(0,0,0,.55);backdrop-filter:blur(8px);width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;z-index:2}
.act-img.has-photo .ov{background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.55))}
.act-vid-badge{position:absolute;bottom:10px;left:12px;background:rgba(0,0,0,.6);
  backdrop-filter:blur(8px);color:#fff;font-size:.7rem;font-weight:700;padding:5px 9px;
  border-radius:50px;z-index:3;display:inline-flex;align-items:center;gap:5px;pointer-events:none}
.act-vid-badge i{color:#00D4FF;font-size:.8rem}
/* ─── אזל המלאי ─── */
.act-card.sold-out{opacity:.75;pointer-events:auto}
.act-card.sold-out .act-img::after{content:"אזל המלאי";position:absolute;inset:0;background:rgba(30,40,60,.72);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:900;color:#fff;letter-spacing:.04em;z-index:10;backdrop-filter:blur(2px)}
.act-card.sold-out .act-cta,.act-card.sold-out .btn-book{background:#94A3B8!important;border-color:#94A3B8!important;color:#fff!important;cursor:not-allowed!important;pointer-events:none!important}
.act-card.sold-out:hover{transform:none!important;box-shadow:var(--sh1)!important}
.act-gal-badge{position:absolute;bottom:10px;right:12px;background:rgba(0,0,0,.6);
  backdrop-filter:blur(8px);color:#fff;font-size:.7rem;font-weight:700;padding:5px 9px;
  border-radius:50px;z-index:3;display:inline-flex;align-items:center;gap:5px;pointer-events:none}

/* ───── Modal media gallery ───── */
@media(min-width:768px){.act-modal-wrap{max-width:780px}.act-modal-box{padding:28px 28px 32px}}
.modal-media{margin:-12px -12px 18px;border-radius:18px;overflow:hidden;background:#000;
  position:relative}
.modal-media-stage{position:relative;width:100%;aspect-ratio:16/9;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden;max-height:55vh}
.modal-media-stage img{max-width:100%;max-height:100%;width:100%;height:100%;
  object-fit:cover;object-position:center;display:block;background:#000}
.modal-media-stage video{width:100%;height:100%;object-fit:contain;background:#000}
.modal-media-arrow{position:absolute;top:50%;transform:translateY(-50%);
  width:40px;height:40px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;
  border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:1rem;z-index:4;transition:background .2s,transform .2s;backdrop-filter:blur(8px)}
.modal-media-arrow:hover{background:rgba(0,0,0,.85);transform:translateY(-50%) scale(1.06)}
.modal-media-arrow.prev{right:12px}
.modal-media-arrow.next{left:12px}
.modal-media-counter{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.55);
  backdrop-filter:blur(8px);color:#fff;font-size:.75rem;font-weight:700;padding:5px 11px;
  border-radius:50px;z-index:4}
.modal-video-toggle{position:absolute;top:12px;left:12px;background:rgba(0,153,255,.88);
  backdrop-filter:blur(6px);color:#fff;font-size:.75rem;font-weight:800;padding:7px 13px;
  border-radius:50px;border:none;cursor:pointer;z-index:4;display:inline-flex;align-items:center;gap:6px;
  transition:background .2s,transform .2s;font-family:inherit}
.modal-video-toggle:hover{background:#007ACC;transform:scale(1.04)}
.modal-video-toggle.is-image-mode i{margin-left:0}
.modal-thumbs{display:flex;gap:6px;padding:8px;overflow-x:auto;background:rgba(0,0,0,.4);
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}
.modal-thumbs::-webkit-scrollbar{height:6px}
.modal-thumbs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:6px}
.modal-thumb{flex:0 0 64px;width:64px;height:64px;border-radius:8px;overflow:hidden;
  border:2px solid transparent;cursor:pointer;background:#222;position:relative;transition:border-color .15s}
.modal-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.modal-thumb.active{border-color:var(--cyan)}
.modal-thumb.video-thumb{background:linear-gradient(135deg,#0099FF,#0052CC);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;flex-direction:column;gap:2px}
.modal-thumb.video-thumb i{filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}
.modal-thumb.video-thumb .vt-num{font-size:.6rem;font-weight:700;line-height:1;opacity:.9}

/* fallback when there's no real photo (keeps emoji big) */
.act-modal-emoji-fallback{font-size:4rem;text-align:center;padding:40px 0;
  filter:grayscale(1) sepia(1) saturate(8) hue-rotate(185deg) brightness(1.15)}

/* ─────────── Enhanced product modal sections ─────────── */
.act-modal-subtitle{font-size:.95rem;color:var(--cyan);font-weight:600;text-align:center;
  margin:0 16px 6px;letter-spacing:.3px;font-style:italic}
.act-modal-tagline{margin:8px 16px 0;padding:10px 14px;border-radius:12px;
  background:linear-gradient(135deg,rgba(0,255,255,.08),rgba(0,153,255,.06));
  border:1px solid rgba(0,255,255,.2);font-size:.88rem;color:rgba(255,255,255,.92);
  text-align:center;line-height:1.55;font-weight:600}
.modal-section{margin:18px 16px 0;padding:14px 16px;border-radius:14px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.modal-section-h{font-size:.92rem;color:var(--cyan);font-weight:800;margin-bottom:10px;
  letter-spacing:.3px;display:flex;align-items:center;gap:6px;
  border-right:3px solid var(--cyan);padding-right:8px}
.modal-section-body{font-size:.9rem;color:rgba(255,255,255,.88);line-height:1.7}
.modal-section-body p{margin:0 0 8px}
.modal-section-body p:last-child{margin-bottom:0}
.modal-bullets{margin:0;padding-right:18px;font-size:.9rem;color:rgba(255,255,255,.9);line-height:1.7;list-style:none}
.modal-bullets li{position:relative;padding-right:22px;margin-bottom:6px}
.modal-bullets li::before{content:"✓";position:absolute;right:0;top:0;color:var(--cyan);font-weight:900}
.wow-grid{display:grid;gap:8px}
.wow-item{padding:10px 12px;border-radius:10px;
  background:linear-gradient(135deg,rgba(0,229,255,.08),rgba(0,153,255,.05));
  border:1px solid rgba(0,229,255,.18);font-size:.88rem;color:rgba(255,255,255,.92);line-height:1.55;
  display:flex;gap:8px;align-items:flex-start}
.wow-item .wow-num{flex:0 0 26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),#0099ff);
  color:#071429;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:.85rem}
.facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fact-card{padding:10px 12px;border-radius:10px;background:rgba(0,153,255,.08);
  border:1px solid rgba(0,153,255,.2);min-height:64px;display:flex;flex-direction:column;justify-content:center}
.fact-label{font-size:.7rem;color:var(--cyan);font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.fact-value{font-size:.86rem;color:#fff;font-weight:600;line-height:1.4}
.schedule-list{display:grid;gap:6px}
.schedule-row{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:8px 10px;border-radius:8px;
  background:rgba(255,255,255,.04);border-right:3px solid var(--cyan);font-size:.85rem}
.schedule-time{font-weight:900;color:var(--cyan);font-size:.78rem;text-align:center;align-self:center}
.schedule-stage{color:#fff;font-weight:700;margin-bottom:2px;font-size:.88rem}
.schedule-desc{color:rgba(255,255,255,.7);font-size:.78rem;line-height:1.4}
.audience-grid{display:grid;gap:8px}
.audience-card{padding:10px 12px;border-radius:10px;background:rgba(0,153,255,.06);
  border-right:3px solid var(--cyan);font-size:.86rem}
.audience-age{color:var(--cyan);font-weight:800;margin-bottom:3px;font-size:.82rem}
.audience-desc{color:rgba(255,255,255,.85);line-height:1.55}
.upsells-list{display:grid;gap:8px}
.upsell-card{padding:10px 12px;border-radius:10px;
  background:rgba(0,153,255,.07);
  border:1px solid rgba(0,229,255,.18);font-size:.86rem}
.upsell-name{color:var(--cyan);font-weight:800;margin-bottom:3px;font-size:.88rem}
.upsell-desc{color:rgba(255,255,255,.85);line-height:1.55;font-size:.82rem}
.faq-list{display:grid;gap:6px}
.faq-item{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);font-size:.88rem}
.chat-faq-q{color:var(--cyan);font-weight:800;margin-bottom:4px;font-size:.88rem;display:flex;gap:6px}
.chat-faq-q::before{content:"❓"}
.faq-a{color:rgba(255,255,255,.88);line-height:1.55;display:flex;gap:6px}
.chat-faq-a::before{content:"✅";flex-shrink:0}
.modal-slogan{margin:18px 16px 0;padding:14px 16px;border-radius:14px;
  background:linear-gradient(135deg,rgba(0,255,255,.15),rgba(155,89,255,.1));
  border:2px dashed rgba(0,255,255,.4);text-align:center;font-size:1rem;font-weight:800;
  color:#fff;font-style:italic;line-height:1.5;letter-spacing:.3px}
.modal-slogan::before{content:"— ";font-style:normal}
@media (max-width:540px){
  .facts-grid{grid-template-columns:1fr}
  .schedule-row{grid-template-columns:56px 1fr}
}
/* Modal step cards */
.modal-steps-grid{display:grid;gap:10px;margin-top:10px}
.modal-step-card{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;
  background:rgba(0,153,255,.07);border:1px solid rgba(0,229,255,.15)}
.modal-step-num{flex:0 0 28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),#0099ff);
  color:#071429;font-weight:900;font-size:.85rem;display:flex;align-items:center;justify-content:center;margin-top:1px}
.modal-step-body{flex:1}
.modal-step-title{color:var(--cyan);font-weight:800;font-size:.88rem;margin-bottom:4px;line-height:1.4}
.modal-step-desc{color:rgba(255,255,255,.82);font-size:.82rem;line-height:1.6}
/* Modal FAQ accordion */
.modal-faq-list{display:grid;gap:6px}
.modal-faq-item{border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);overflow:hidden}
.modal-faq-q{width:100%;background:none;border:none;padding:12px 14px;text-align:right;
  font-size:.88rem;font-weight:700;color:rgba(255,255,255,.92);cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;gap:8px;line-height:1.4}
.modal-faq-q:hover{color:var(--cyan)}
.modal-faq-q::after{content:"+";font-size:1rem;color:var(--cyan);flex-shrink:0;transition:transform .3s;font-weight:900}
.modal-faq-item.open .modal-faq-q{color:var(--cyan)}
.modal-faq-item.open .modal-faq-q::after{transform:rotate(45deg)}
.modal-faq-ans{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .25s ease;
  font-size:.84rem;color:rgba(255,255,255,.78);line-height:1.6;padding:0 14px}
.modal-faq-item.open .modal-faq-ans{max-height:600px;padding:0 14px 12px}
@media(max-width:540px){.modal-step-card{padding:10px 10px}}

/* Sticky mobile CTA */
#sticky-cta{position:fixed;bottom:0;left:0;width:100%;background:rgba(6,16,32,.97);
  backdrop-filter:blur(10px);border-top:1px solid rgba(0,153,255,.25);
  display:none;z-index:800;padding:10px 16px;box-sizing:border-box}
#sticky-cta .sc-inner{display:flex;gap:10px}
#sticky-cta a{flex:1;text-align:center;padding:11px 6px;border-radius:12px;
  font-weight:800;font-size:.82rem;text-decoration:none;transition:transform .2s}
#sticky-cta a:active{transform:scale(.96)}
.sc-call{background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--dark)}
.sc-wa{background:#25D366;color:#fff}
.sc-book{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.3);color:#fff}
@media(max-width:768px){#sticky-cta{display:block}}

/* Areas section */
.areas-sec{background:var(--g);padding:80px 0}
.areas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:36px}
.area-card{background:var(--off);border:1.5px solid rgba(0,153,255,.15);border-radius:16px;
  padding:22px 16px;text-align:center;transition:var(--tr)}
.area-card:hover{background:#fff;border-color:rgba(0,153,255,.4);box-shadow:var(--sh2);transform:translateY(-3px)}
.area-card i{font-size:1.6rem;color:var(--cyan);margin-bottom:10px;display:block}
.area-card h3{font-size:.95rem;font-weight:800;margin-bottom:4px}
.area-card p{font-size:.76rem;color:var(--g5)}

/* Cancellation policy */
.cancel-sec{background:linear-gradient(135deg,var(--dark),var(--blue2));padding:64px 0}
.cancel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:32px}
.cancel-card{background:rgba(255,255,255,.06);border:1px solid rgba(0,229,255,.15);
  border-radius:16px;padding:22px 20px;color:#fff}
.cancel-card i{font-size:1.4rem;color:var(--cyan);margin-bottom:10px;display:block}
.cancel-card h3{font-size:.95rem;font-weight:800;margin-bottom:8px}
.cancel-card p{font-size:.8rem;color:rgba(255,255,255,.75);line-height:1.6}

/* Share button */
.share-btn{background:none;border:1.5px solid rgba(0,153,255,.3);border-radius:10px;
  padding:7px 14px;color:var(--cyan);font-size:.8rem;font-weight:700;cursor:pointer;
  transition:all .2s;display:inline-flex;align-items:center;gap:6px}
.share-btn:hover{background:rgba(0,153,255,.1);border-color:var(--cyan)}

/* Improved scroll reveal */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1)}
.reveal.left{transform:translateX(-32px)}
.reveal.right{transform:translateX(32px)}
.reveal.visible{opacity:1;transform:none}


/* Exit Intent Popup */
#exit-popup{position:fixed;inset:0;background:rgba(0,10,30,.8);backdrop-filter:blur(8px);
  z-index:9500;display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .35s}
#exit-popup.show{opacity:1;pointer-events:all}
.exit-box{background:linear-gradient(160deg,var(--dark),#0a2040);border:1.5px solid rgba(0,229,255,.25);
  border-radius:24px;padding:40px 36px;max-width:420px;width:92%;text-align:center;position:relative;
  transform:scale(.92);transition:transform .35s}
#exit-popup.show .exit-box{transform:scale(1)}
.exit-close{position:absolute;top:12px;left:14px;background:none;border:none;
  color:rgba(255,255,255,.5);font-size:1.3rem;cursor:none;line-height:1}
.exit-emoji{font-size:3rem;margin-bottom:12px}
.exit-title{font-size:1.4rem;font-weight:900;color:#fff;margin-bottom:8px}
.exit-sub{color:rgba(255,255,255,.7);font-size:.9rem;margin-bottom:24px;line-height:1.6}
.exit-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.exit-btns a{padding:12px 22px;border-radius:12px;font-weight:800;font-size:.9rem;
  text-decoration:none;transition:transform .2s}
.exit-btns a:hover{transform:translateY(-2px)}
.exit-wa{background:#25D366;color:#fff}
.exit-call{background:linear-gradient(135deg,var(--blue),var(--cyan));color:var(--dark)}
.exit-dismiss{background:none;border:none;color:rgba(255,255,255,.4);
  font-size:.78rem;margin-top:14px;cursor:none;display:block;width:100%}


@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* ── כפתור אזור לקוחות — מוסתר בדסקטופ, מוצג במובייל בלבד ── */
.nav-portal-mob{display:none}
.nav-cart-mob{display:none}

/* ── hero badge מובייל — מוסתר בדסקטופ ── */
.hero-badge-mob{display:none}

/* ══════════════════════════════════════════════
   MOBILE — max-width:767px
   שיפור ניראות מובייל בלבד | Desktop unchanged
══════════════════════════════════════════════ */
@media(max-width:767px){

  /* ── מניעת Horizontal Scroll — בסיס ── */
  html,body{overflow-x:hidden !important}

  /* כל האלמנטים לא יחרגו מרוחב המסך */
  *{max-width:100%;box-sizing:border-box}

  /* תמונות, וידאו וגרפיקה */
  img,video,svg,canvas,iframe{max-width:100% !important;height:auto}

  /* כל ה-Sections הראשיים — מוגנים מגלישה (.activities בנפרד — יש בו scroll) */
  .nav,.hero,.ticker-wrap,.counters,.services,
  .gallery,.pricing,.why-us,.about,.testi,.instagram,
  .faq,.cta-band,.booking,.contact,footer,
  .areas-sec,.cancel-sec{overflow-x:hidden;max-width:100vw}
  /* .activities עצמו לא חסום — אבל ה-c בתוכו כן */
  .activities{max-width:100vw;overflow-x:clip}

  /* Container */
  .c{padding:0 14px}

  /* ── Header mobile layout fix ── */
  .nav-in{
    justify-content:flex-start !important;
    gap:8px !important;
  }
  /* הלוגו מתפרס ומדחוף את הכפתורים שמאלה */
  .nav-in .logo-wrap{
    flex:1 1 auto !important;
    min-width:0;
  }
  /* nav-cta ו-hbg ישבו טבעית בצד שמאל (ליד ההמבורגר) */
  .nav-in .nav-cta{
    flex-shrink:0 !important;
    gap:6px !important;
  }

  /* ── Section spacing globals ── */
  .sp{padding:36px 0}
  .sp-sm{padding:24px 0}

  /* ── צמצום padding של כל הסקשנים במובייל ── */
  /* סקשנים עם padding:100px 0 בדסקטופ → 36px */
  .services,.gallery,.pricing,
  .why-us,.about,.testi,
  .faq,.booking,.contact{
    padding-top:36px !important;
    padding-bottom:36px !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
  }
  /* סקשנים עם padding קטן יותר בדסקטופ → 28px */
  .instagram,.areas-sec,
  .countdown-sec,.cancel-sec{
    padding:28px 0 !important;
    margin:0 !important;
  }
  /* counters */
  .counters{padding:24px 0 !important;margin:0 !important}
  /* #pricing-calc — inline style, צריך !important */
  #pricing-calc{padding:36px 0 !important;margin:0 !important}
  /* footer */
  footer{padding:36px 0 0 !important}
  /* activities padding (תוכן ספציפי עוקף) */
  .activities{
    padding-top:20px !important;
    padding-bottom:28px !important;
    margin:0 !important;
  }

  /* Typography */
  .h2{font-size:1.75rem;margin-bottom:12px}
  .sub{font-size:.92rem;margin-bottom:28px}

  /* ── Mobile nav — Top Bar עכשיו שורה אחת ≈ 22px, nav 68px ── */
  .nav{top:22px !important}
  .mob-nav{top:90px}
  /* offset hero: 22px (top-bar) + 68px (nav) = 90px */
  .hero,section:first-of-type{padding-top:90px !important}

  /* ── כפתור "הזמינו עכשיו" ב-Nav — מוסתר במובייל ── */
  .nav .btn-primary{display:none !important}

  /* ── כפתור אזור לקוחות — מובייל בלבד ── */
  .nav-portal-mob{
    display:inline-flex !important;
    align-items:center;
    gap:3px;
    padding:4px 7px;
    border-radius:50px;
    border:1.5px solid rgba(0,153,255,.5);
    background:rgba(0,153,255,.12);
    color:#fff;
    font-size:.6rem;
    font-weight:700;
    white-space:nowrap;
    text-decoration:none;
    transition:.2s;
    flex-shrink:0;
    height:26px;
  }
  .nav-portal-mob i{font-size:.72rem}

  /* כפתור עגלה — מובייל */
  .nav-cart-mob{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    position:relative;
    width:26px;height:26px;
    border-radius:50%;
    border:1.5px solid rgba(0,153,255,.5);
    background:rgba(0,153,255,.12);
    color:#fff;
    font-size:.72rem;
    cursor:pointer;
    flex-shrink:0;
    transition:.2s;
  }
  .nav-cart-mob:active{background:rgba(0,153,255,.3)}
  .nav-cart-mob-count{
    position:absolute;
    top:-4px;left:-4px;
    background:#f43f5e;
    color:#fff;
    font-size:.5rem;
    font-weight:700;
    min-width:13px;height:13px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    padding:0 2px;
    pointer-events:none;
  }

  /* בפלאפונים קטנים מאוד — אייקון בלבד */
  @media(max-width:380px){
    .nav-portal-mob-lbl{display:none}
    .nav-portal-mob{padding:4px 6px}
  }

  /* ── Hero ── */
  .hero{padding-bottom:0 !important}
  .hero-in{padding:72px 0 16px;gap:10px}
  .hero-title{font-size:1.9rem;line-height:1.15}
  .hero-desc{font-size:.92rem;margin-bottom:22px}
  .hero-btns{gap:10px;margin-bottom:20px}
  .hero-btns .btn{padding:12px 20px;font-size:.88rem}
  /* ── Hero logo + badge — סדר מובייל: badge → לוגו → טקסט ── */
  .hero-in{display:flex !important;flex-direction:column !important;align-items:center !important}
  /* badge המובייל — מוצג ראשון */
  .hero-badge-mob{
    display:inline-flex !important;
    order:-2;
    margin-bottom:10px;
    text-align:center;
  }
  /* הסתרת badge המקורי בתוך hero-content במובייל */
  .hero-content .hero-badge:not(.hero-badge-mob){display:none !important}
  /* הלוגו — שני */
  .hero-visual{
    display:flex !important;
    justify-content:center;
    align-items:center;
    order:-1;
    margin-bottom:12px;
  }
  /* hero-content — שלישי (ברירת מחדל order:0) */
  .hero-content{width:100%;text-align:center}
  .hero-logo-main{height:150px !important;width:auto}
  .hero-logo-glow{width:180px !important;height:180px !important}
  /* ── Hero Stats — kept as-is ── */
  .hero-stats{gap:6px;margin-top:20px}

  /* ── Counters Grid — 2×2 on mobile ── */
  .counters-grid{
    grid-template-columns:repeat(2,1fr) !important;
    gap:15px !important;
  }
  .counter-item{
    aspect-ratio:1/1;
    padding:14px 10px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }
  .counter-icon{font-size:1.4rem;margin-bottom:6px}
  .c-num{font-size:1.5rem}
  .c-lbl{font-size:.72rem;margin-top:4px}

  /* ── Services — horizontal scroll tabs ── */
  .srv-tabs{overflow-x:auto !important;flex-wrap:nowrap !important;justify-content:flex-start;
    padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;
    max-width:none !important}
  .srv-tabs::-webkit-scrollbar{display:none}
  .srv-tab{flex-shrink:0 !important;padding:8px 14px;font-size:.8rem;max-width:none !important;white-space:nowrap}
  .srv-panel.active{grid-template-columns:1fr;gap:24px}
  .srv-title{font-size:1.4rem}
  .srv-icon-big{width:60px;height:60px;font-size:1.5rem;margin-bottom:16px}

  /* ── Activity filter — horizontal scroll slider ── */
  .filt-wrap{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    justify-content:flex-start;
    gap:10px;
    padding:0 14px 8px 48px; /* ימין=14px (מיושר עם חיפוש) | שמאל=peek 48px */
    margin-right:-14px;      /* גולש מעבר ל-.c */
    margin-left:-14px;
    max-width:none !important; /* מבטל את *{max-width:100%} */
    width:calc(100vw - 0px) !important;
    box-sizing:border-box;
  }
  .filt-wrap::-webkit-scrollbar{display:none}
  .filt-btn{flex-shrink:0 !important;white-space:nowrap;font-size:.8rem;padding:7px 14px;max-width:none !important}
  .sort-bar{gap:6px;margin-bottom:12px}

  /* ── תגים על תמונת הכרטיסייה — קטנים ב-25% במובייל ── */
  /* קטגוריה (פינה ימין-עליון) */
  .cat-b{
    font-size:.6rem !important;
    padding:3px 7px !important;
    top:6px !important;
    right:6px !important;
    background:rgba(0,0,0,.55) !important;
  }
  /* מספר מזהה (פינה שמאל-עליון) */
  .act-num{
    font-size:.58rem !important;
    padding:3px 6px !important;
    top:6px !important;
    left:6px !important;
    background:rgba(0,0,0,.55) !important;
  }
  /* תג סרטון (פינה שמאל-תחתון) */
  .act-vid-badge{
    font-size:.58rem !important;
    padding:3px 7px !important;
    gap:3px !important;
    bottom:6px !important;
    left:6px !important;
    background:rgba(0,0,0,.55) !important;
  }
  .act-vid-badge i{font-size:.65rem !important}
  /* תג גלריה (פינה ימין-תחתון) */
  .act-gal-badge{
    font-size:.58rem !important;
    padding:3px 7px !important;
    gap:3px !important;
    bottom:6px !important;
    right:6px !important;
    background:rgba(0,0,0,.55) !important;
  }
  .act-gal-badge i{font-size:.65rem !important}

  /* ── Activity cards ── */
  .act-body{padding:10px 9px}
  .act-name{font-size:.88rem;margin-bottom:4px}
  .act-desc{font-size:.77rem;margin-bottom:6px}
  .act-pills{gap:3px;margin-bottom:7px}
  .ap{font-size:.66rem;padding:2px 7px}
  .act-details-cta{font-size:.79rem;padding:7px 6px;gap:5px;margin-bottom:0 !important}
  /* צמצום מרווח בין "פרטים נוספים" ל"הזמינו עכשיו" */
  .act-details-cta + .act-cta,
  .act-details-cta ~ .act-cta{margin-top:8px !important}
  .act-cta{padding:8px !important;font-size:.8rem !important}
  .act-img{height:130px}

  /* ── Activity modal ── */
  .act-modal-wrap{width:96%;margin-left:auto !important;margin-right:auto !important}
  /* כפתור סגירה (X) — קטן וחצי-שקוף במובייל */
  .act-modal-close{
    width:34px !important;
    height:34px !important;
    font-size:.8rem !important;
    top:-12px !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    opacity:.88;
  }
  .act-modal-close:active{opacity:1;transform:translateX(-50%) scale(1.05) !important}
  .act-modal-box{padding:18px 14px 22px}
  /* מובייל — גלריה ישרה בתוך הקונטיינר, ללא negative margins */
  .modal-media{
    margin:0 0 14px !important;
    border-radius:14px !important;
    overflow:hidden !important;
    width:100%;
    box-sizing:border-box;
  }
  .modal-media-stage{aspect-ratio:4/3;max-height:42vh;width:100% !important}
  /* thumbnails — גוללות משמאל לימין, מתחילות מהקצה */
  .modal-thumbs{
    justify-content:flex-start;
    width:100%;
    box-sizing:border-box;
    padding:6px 8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  /* כותרות + תיאור — למרכז במובייל */
  .act-modal-title{font-size:1.2rem;text-align:center !important}
  .act-modal-subtitle{text-align:center !important;margin:0 0 6px !important}
  .act-modal-cat{text-align:center !important}
  .act-modal-desc{text-align:center !important}
  .act-modal-tagline{text-align:center !important;margin:8px 0 !important}
  .act-modal-btns{flex-wrap:wrap;gap:8px}
  .act-modal-btns a,.btn-share-modal{min-width:100%;justify-content:center}
  .facts-grid{grid-template-columns:1fr}

  /* ── FAQ ── */
  .faq-q{font-size:.92rem;padding:16px 16px}
  .faq-item.open .faq-a{padding:0 16px 16px}

  /* ── Countdown ── */
  #countdown{gap:10px}
  .cd-unit{padding:10px;min-width:62px}
  .cd-num{font-size:2rem}
  .cd-lbl{font-size:.68rem}

  /* ── CTA band — 3 כפתורים בשורה אחת ── */
  .cta-band{padding:36px 0}
  .cta-btns{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center;
    gap:6px;
    width:100%;
  }
  .cta-btns .btn{
    flex:1 1 0 !important;
    min-width:0 !important;
    padding:10px 4px !important;
    font-size:.72rem !important;
    gap:4px !important;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
  }
  .cta-btns .btn i{font-size:.72rem !important}

  /* ── About — לוגו קטן וממורכז במובייל ── */
  .about-visual{
    display:block !important;
  }
  .about-logo-wrap{
    max-width:130px !important;
    margin:0 auto 16px !important;
    padding:18px !important;
    border-radius:20px !important;
    flex-direction:column;
    gap:0 !important;
  }
  .about-logo-img{height:80px !important}
  /* הסתרת טקסט ופרטים מיותרים בלוגו */
  .about-logo-wrap > div{display:none !important}
  /* הסתרת בועות סטטיסטיקה (positioned absolute) */
  .about-stat{display:none !important}
  .about-in{gap:16px}
  /* badge "הסיפור שלנו" — ממורכז */
  .about-content .badge{
    display:flex !important;
    width:fit-content !important;
    margin:0 auto 12px !important;
  }
  .about-content .h2,.about-content .sub{text-align:center !important}
  .about-content .sub{text-align:center !important}
  /* כפתור "צרו קשר" — ממורכז במובייל */
  .about-content .btn{
    display:block !important;
    width:fit-content !important;
    margin:0 auto !important;
  }

  /* ── כפתורי CTA בסקשן פעילויות ומחירון — עמודה אנכית ── */
  .activities .tc[style],
  #pricing [style*="margin-top:20px"]{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:6px !important;
    margin-top:16px !important;
    width:100%;
    font-size:0; /* מבטל &nbsp; / text-nodes שהופכים ל-flex items */
  }
  .activities .tc[style] .btn,
  #pricing [style*="margin-top:20px"] .btn{
    width:85% !important;
    min-width:unset !important;
    max-width:280px !important;
    height:48px !important;
    padding:0 20px !important;
    font-size:.84rem !important;
    text-align:center !important;
    justify-content:center !important;
    align-items:center !important;
    margin:0 !important;
    box-sizing:border-box !important;
    display:flex !important;
    gap:7px !important;
    white-space:nowrap !important;
    line-height:1 !important;
  }
  /* הסתרת ה-spacer בין הכפתורים */
  .activities .tc[style] span[style]{display:none !important}

  /* ── טבלת מחירון — Responsive Table במובייל ── */
  .pt-scroll{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    border-radius:10px;
    max-width:100%;
  }
  .pt-scroll::-webkit-scrollbar{height:4px}
  .pt-scroll::-webkit-scrollbar-thumb{background:rgba(0,153,255,.4);border-radius:4px}
  .pt-table{font-size:.78rem !important}
  /* עמודת מספר — צרה וקבועה */
  .pt-num-col{width:44px !important;min-width:44px !important;padding:7px 6px !important;font-size:.72rem !important}
  /* עמודת שם השירות — רוחב מינימלי קריא */
  .pt-table th:first-child{min-width:160px !important;padding:8px 10px !important}
  .pt-table td:first-child{min-width:160px !important;white-space:normal !important;padding:7px 10px !important}
  /* כל שאר ה-cells */
  .pt-table th{padding:8px 10px !important;font-size:.75rem !important}
  .pt-table td{padding:7px 10px !important;font-size:.78rem !important}
  /* Tabs */
  .pt-tabs{gap:6px}
  .pt-tab{padding:6px 14px;font-size:.76rem}

  /* ── חבילות מחיר — גריד 2×2 במובייל ── */
  .price-grid{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .price-card{border-radius:16px !important}
  /* כותרת הכרטיס — padding מצומצם */
  .pc-header{padding:16px 12px !important}
  .pc-icon{font-size:1.5rem !important;margin-bottom:8px !important}
  .pc-name{font-size:.9rem !important;margin-bottom:2px !important}
  .pc-sub{font-size:.72rem !important}
  /* מחיר — קטן יותר כדי שלא ישבר */
  .pc-price{font-size:1.6rem !important;margin:10px 0 2px !important}
  .pc-price small{font-size:.8rem !important}
  .pc-from{font-size:.68rem !important}
  /* גוף הכרטיס */
  .pc-body{padding:12px 10px !important}
  .pc-list{gap:6px !important;margin-bottom:12px !important}
  .pc-list li{font-size:.74rem !important;gap:6px !important}
  .pc-list li i{font-size:.72rem !important}
  .pc-badge{font-size:.62rem !important;padding:3px 8px !important;top:8px !important;left:8px !important}
  /* כפתור בתוך הכרטיס */
  .price-card .btn{font-size:.76rem !important;padding:10px 10px !important;border-radius:10px !important}

  /* ── Booking ── */
  .book-form{padding:20px 14px}
  /* badge "הזמינו אצלנו" — ממורכז במובייל */
  .book-info .badge{
    display:flex !important;
    width:fit-content !important;
    margin:0 auto 12px !important;
  }
  .book-info .h2,.book-info .sub{text-align:center !important}

  /* ── Contact ── */
  .cd-item{padding:14px 12px}
  .cd-icon{width:40px;height:40px;font-size:1rem}
  .contact-form{padding:18px 14px}

  /* ── Chatbot — 100% width (לא 100vw) מעל sticky CTA ── */
  .chat-bubble{width:calc(100% - 20px);right:10px;bottom:200px;
    max-height:min(400px,calc(100vh - 250px))}

  /* ── Sticky CTA — תקין ברוחב המסך ── */
  #sticky-cta{width:100% !important;left:0 !important;right:0 !important;
    box-sizing:border-box !important}
  #sticky-cta .sc-inner{gap:8px}

  /* ══ Floating buttons — 4 כפתורים מסונכרנים ══
     שמאל עליון = נגישות (#ks-a11y-float)   | ימין עליון = בוט (.chat-toggle)
     שמאל תחתון = קולי (#ks-voice-btn)       | ימין תחתון = ווצאפ (.wa-float)
     גודל אחיד 50×50px | קצה 14px | תחתון: 70px / עליון: 130px
  ══ */

  /* ── ימין תחתון: ווצאפ ── */
  .wa-float{bottom:70px;right:14px}
  .wa-btn{width:42px;height:42px;font-size:1.15rem}

  /* ── ימין עליון: בוט/כוכב ── */
  .chat-toggle{bottom:120px;right:14px;width:42px;height:42px;font-size:1.1rem}
  /* לוגו בתוך הבוט במובייל — 26px בתוך עיגול 42px (משקל ויזואלי כמו אייקון ווצאפ) */
  .chat-toggle .ct-logo-img{
    width:26px !important;
    height:26px !important;
    max-width:26px !important;
    max-height:26px !important;
  }

  /* ── שמאל תחתון: קולי ── */
  #ks-voice-btn{bottom:70px;left:14px;width:42px;height:42px;font-size:.9rem}

  /* ── שמאל עליון: נגישות ── */
  #ks-a11y-float{bottom:120px;left:14px;width:42px;height:42px;font-size:.9rem}

  /* ── כפתור חזרה למעלה ופאנל מוזיקה ── */
  #backTop{display:none !important;pointer-events:none !important}
  #ks-music-panel{display:none !important}

  /* ── Social proof toast — hides under sticky CTA ── */
  #spNotif{display:none!important}

  /* ── Exit popup ── */
  .exit-box{padding:26px 18px;max-width:calc(100% - 24px)}
  .exit-title{font-size:1.15rem}
  .exit-btns a{padding:11px 16px;font-size:.85rem}

  /* ── Top info bar — שורה אחת במובייל ── */
  #top-info-bar{
    padding:4px 10px;
    font-size:.69rem;
    line-height:1.2;
    white-space:nowrap;
    overflow:hidden;
    display:flex;
    flex-wrap:nowrap;
    justify-content:center;
    align-items:center;
    gap:0;
  }
  #top-info-bar .sep{margin:0 4px}
  /* הסתרת האימייל ו-kidsstar.net במובייל — נשאר: שם + ח.פ. + טלפון */
  #top-info-bar a[href^="mailto"]{display:none !important}
  #top-info-bar a[href^="https://kidsstar"]{display:none !important}
  /* הסתרת ה-separators האחרונים שנשארים לבד */
  #top-info-bar .sep:has(+ a[href^="mailto"]),
  #top-info-bar .sep:has(+ a[href^="https://kidsstar"]){display:none !important}
}

/* ── Extra-small phones (≤420px) ── */
@media(max-width:420px){
  .c{padding:0 12px}
  .hero-title{font-size:1.6rem}
  .hero-badge{font-size:.7rem;padding:5px 12px}
  .counters-grid{gap:10px !important}
  .c-num{font-size:1.2rem}
  .c-lbl{font-size:.67rem}
  .h2{font-size:1.5rem}
  .hero-btns .btn{padding:10px 16px;font-size:.83rem}
  .srv-tab{padding:7px 12px;font-size:.76rem}
  .filt-btn{padding:6px 12px;font-size:.76rem}
  #countdown{gap:8px}
  .cd-unit{padding:8px 6px;min-width:56px}
  .cd-num{font-size:1.7rem}
  .act-img{height:110px}
  .act-name{font-size:.84rem}
}

/* === GROUP B: Fixed overlays (no layout impact) === */
#ks-progress-line{position:fixed;top:0;left:0;width:0%;height:3px;
  background:linear-gradient(90deg,var(--blue,#0099ff),var(--cyan,#00e5ff));
  z-index:99999;pointer-events:none;transition:width .1s linear}
.ks-toast{position:fixed;bottom:90px;left:50%;
  transform:translateX(-50%) translateY(20px);
  background:linear-gradient(135deg,#0055bb,#0099ff);color:#fff;
  padding:13px 26px;border-radius:50px;font-weight:800;font-size:.88rem;
  font-family:inherit;box-shadow:0 8px 32px rgba(0,100,255,.4);
  z-index:88888;opacity:0;pointer-events:none;
  transition:opacity .35s ease,transform .35s ease;
  display:flex;align-items:center;gap:9px;white-space:nowrap;direction:rtl}
.ks-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.ks-ptcl{position:fixed;pointer-events:none;border-radius:50%;
  animation:ks-ptcl-fly .65s ease-out forwards;z-index:77777}
@keyframes ks-ptcl-fly{
  0%{transform:translate(0,0) scale(1);opacity:1}
  100%{transform:translate(var(--tx),var(--ty)) scale(0);opacity:0}}
.ks-magnetic{transition:transform .18s cubic-bezier(.22,1,.36,1)}
.ks-reveal{opacity:0;transform:translateY(28px);
  transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1)}
.ks-reveal.ks-in{opacity:1;transform:none}


/* Chatbot typing indicator */
.typing-bubble{display:flex;gap:5px;align-items:center;padding:10px 14px}
.typing-dot{width:7px;height:7px;border-radius:50%;background:var(--cyan,#00e5ff);opacity:.4;
  animation:tdot .9s ease-in-out infinite}
.typing-dot:nth-child(2){animation-delay:.2s}
.typing-dot:nth-child(3){animation-delay:.4s}
@keyframes tdot{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-5px);opacity:1}}


/* Portal nav link ג€” same style as other nav links, subtle accent */
.nav-portal-link{
  
  border-radius:20px !important;
  padding:4px 12px !important;
  transition:background .2s, border-color .2s !important;
}
.nav-portal-link:hover{
  background:rgba(0,229,255,.1) !important;
  
}

/* ══ SERVICE ITEM ROWS ══ */
.srv-item-row{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;border-radius:12px;border:1px solid var(--g2);background:#fff;margin-bottom:8px;transition:var(--tr)}
.srv-item-row:hover{border-color:var(--blue);background:var(--blue4);transform:translateX(-2px)}
.srv-item-em{font-size:1.4rem;flex-shrink:0;width:30px;text-align:center;line-height:1.3}
.srv-item-info{flex:1;min-width:0}
.srv-item-info strong{display:block;font-size:.86rem;font-weight:700;color:var(--dark);margin-bottom:3px;line-height:1.4}
.srv-item-info span{font-size:.77rem;color:var(--g6);line-height:1.3}
.srv-items-scroll{max-height:440px;overflow-y:auto;padding-left:2px}
.srv-items-scroll::-webkit-scrollbar{width:4px}
.srv-items-scroll::-webkit-scrollbar-track{background:var(--g1)}
.srv-items-scroll::-webkit-scrollbar-thumb{background:var(--blue);border-radius:4px}

/* ══════════════════════════════════════════════
   DARK MODE
══════════════════════════════════════════════ */
html.dark-mode{
  --g:#0D1B3E;--off:#060F1A;--g1:#1a2d52;--g2:#2a4070;--g3:#3a5080;
  --g5:#8ab4d8;--g6:#a0c4e0;--dark:#e8f4ff;--dark2:#f0f8ff;
}
html.dark-mode body{background:#060F1A;color:#e8f4ff}
html.dark-mode .activities,.dark-mode .why-us,.dark-mode .about{background:#0a1528}
html.dark-mode .act-card,.dark-mode .why-card,.dark-mode .team-card,.dark-mode .faq-item,.dark-mode .about-row,.dark-mode .booking-form-wrap,.dark-mode .f-group input,.dark-mode .f-group select,.dark-mode .f-group textarea{background:#0d1f3e;border-color:#2a4070;color:#e8f4ff}
html.dark-mode .act-name,.dark-mode .act-desc,.dark-mode .why-title,.dark-mode .team-name,.dark-mode .faq-q,.dark-mode .h2,.dark-mode .why-desc,.dark-mode .f-group label{color:#e8f4ff}
html.dark-mode .f-group input,.dark-mode .f-group select,.dark-mode .f-group textarea{background:#1a2d52;border-color:#2a4070;color:#e8f4ff}
html.dark-mode .f-group input::placeholder,.dark-mode .f-group textarea::placeholder{color:rgba(255,255,255,.4)}
html.dark-mode .faq-a p,.dark-mode .act-desc,.dark-mode .why-desc,.dark-mode .sub{color:#8ab4d8}
html.dark-mode .price-card,.dark-mode .booking-section{background:#0a1528}
html.dark-mode .act-cta{background:var(--blue);color:#fff}
.dark-toggle{background:none;border:1.5px solid rgba(0,153,255,.3);border-radius:20px;padding:5px 10px;color:var(--cyan);font-size:.85rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:5px}
.dark-toggle:hover{background:rgba(0,229,255,.1);border-color:var(--cyan)}

/* ══════════════════════════════════════════════
   ACTIVITY SEARCH BAR
══════════════════════════════════════════════ */
.act-search-wrap{display:flex;align-items:center;gap:10px;max-width:420px;margin:0 auto 28px;background:#fff;border:2px solid var(--g2);border-radius:50px;padding:6px 16px;transition:border-color .2s}
.act-search-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,153,255,.12)}
.act-search-wrap i{color:var(--blue);font-size:.9rem}
#actSearch{border:none;outline:none;background:none;font-size:.9rem;width:100%;font-family:Heebo,sans-serif;direction:rtl;color:var(--dark)}
#actSearch::placeholder{color:var(--g3)}
.act-no-results{text-align:center;padding:48px 20px;color:var(--g5);font-size:.95rem;display:none}
html.dark-mode .act-search-wrap{background:#0d1f3e;border-color:#2a4070}
html.dark-mode #actSearch{color:#e8f4ff}

/* ══════════════════════════════════════════════
   CONFETTI
══════════════════════════════════════════════ */
@keyframes confetti-fall{0%{transform:translateY(-10px) rotate(0deg);opacity:1}100%{transform:translateY(100vh) rotate(720deg);opacity:0}}

/* ══════════════════════════════════════════════
   MULTI-STEP BOOKING WIZARD
══════════════════════════════════════════════ */
.wizard-steps{display:flex;justify-content:center;gap:0;margin-bottom:32px;position:relative}
.wizard-steps::before{content:'';position:absolute;top:20px;right:12.5%;left:12.5%;height:2px;background:var(--g2);z-index:0}
.wz-step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;position:relative;z-index:1}
.wz-dot{width:40px;height:40px;border-radius:50%;background:var(--g1);border:2px solid var(--g2);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.85rem;color:var(--g5);transition:all .3s}
.wz-step.active .wz-dot{background:var(--cyan);border-color:var(--cyan);color:#fff;box-shadow:0 4px 16px rgba(0,229,255,.4)}
.wz-step.done .wz-dot{background:var(--cyan);border-color:var(--cyan);color:#fff}
.wz-label{font-size:.72rem;font-weight:700;color:var(--g5);text-align:center}
.wz-step.active .wz-label{color:var(--cyan)}
.wz-step.done .wz-label{color:var(--cyan)}
.wz-panel{display:none}.wz-panel.active{display:block;animation:fade-in .35s ease}
.wz-nav{display:flex;gap:12px;margin-top:24px;justify-content:space-between}
.wz-btn{padding:11px 24px;border-radius:12px;font-size:.9rem;font-weight:700;border:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}
.wz-btn-back{background:var(--g1);color:var(--g6)}.wz-btn-back:hover{background:var(--g2)}
.wz-btn-next{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff}.wz-btn-next:hover{transform:translateY(-2px);box-shadow:var(--sh2)}
.wz-btn-next:disabled{opacity:.5;transform:none;cursor:not-allowed}
/* Event type cards in step 1 */
.wz-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:8px;justify-items:stretch}
/* שורה אחרונה (3 פריטים מתוך 4 עמודות) — מרכוז על ידי הזזת הפריט ה-9 */
.wz-type-grid .wz-type-card:nth-child(9):not(.wz-hidden){grid-column-start:1}
.wz-type-card{border:2px solid var(--g2);border-radius:14px;padding:14px 8px;text-align:center;cursor:pointer;transition:all .2s;background:#fff;user-select:none}
.wz-type-card:hover{border-color:var(--cyan);background:var(--blue4);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,229,255,.18)}
.wz-type-card:active{transform:scale(.95);box-shadow:0 0 0 3px rgba(0,229,255,.28)}
.wz-type-card.selected{border-color:var(--cyan);background:var(--blue4);box-shadow:0 0 0 3px rgba(0,229,255,.25);transform:translateY(-1px)}
.wz-type-card.wz-hidden{display:none}
.wz-type-card .wz-em{font-size:1.8rem;display:block;margin-bottom:6px;color:var(--cyan)}
.wz-type-card .wz-lbl{font-size:.76rem;font-weight:700;color:var(--dark);line-height:1.3}
html.dark-mode .wz-type-card{background:#0d1f3e;border-color:#2a4070}
html.dark-mode .wz-type-card.selected{background:#1a3560}
html.dark-mode .wz-type-card .wz-lbl{color:#e8f4ff}
/* ── שורת חיפוש בתוך טופס ההזמנה ── */
.wz-search{position:relative;margin-bottom:14px}
.wz-search input{width:100%;padding:9px 38px 9px 14px;border-radius:50px;border:1.5px solid var(--g2);background:#f8faff;font-size:.85rem;font-family:Heebo,sans-serif;color:var(--dark);outline:none;transition:.2s;direction:rtl}
.wz-search input:focus{border-color:var(--cyan);background:#fff;box-shadow:0 0 0 3px rgba(0,229,255,.15)}
.wz-search i{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--g4);font-size:.85rem;pointer-events:none}
.wz-no-results{text-align:center;font-size:.84rem;color:var(--g4);padding:16px 0;display:none}
html.dark-mode .wz-search input{background:#0d1f3e;border-color:#2a4070;color:#e8f4ff}
@media(max-width:600px){
  .wizard-steps::before{display:none}
  .wz-label{display:none}
  .wz-type-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .wz-type-card{padding:11px 6px;border-radius:12px}
  .wz-type-card .wz-em{font-size:1.55rem;margin-bottom:4px;color:var(--cyan)}
  .wz-type-card .wz-lbl{font-size:.68rem}
}

/* ═══════════════ CART BUTTON ═══════════════ */
.nav-cart-btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  flex-shrink:0;
  width:36px;height:36px;
  border-radius:50%;
  background:rgba(255,255,255,.12);
  border:1.5px solid rgba(255,255,255,.3);
  color:#fff;
  font-size:1rem;
  cursor:pointer;
  transition:background .2s,transform .15s;
}
.nav-cart-btn:hover{background:rgba(255,255,255,.24);transform:scale(1.08)}
.nav-cart-count{
  position:absolute;
  top:-5px;left:-5px;
  background:#f43f5e;
  color:#fff;
  font-size:.6rem;
  font-weight:700;
  min-width:17px;height:17px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  padding:0 3px;
  pointer-events:none;
}
.nav-cart-tip{
  position:absolute;
  top:calc(100% + 8px);
  left:50%;
  transform:translateX(-50%);
  background:rgba(10,20,40,.88);
  color:#fff;
  font-size:.72rem;
  white-space:nowrap;
  padding:4px 9px;
  border-radius:6px;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s;
  z-index:200;
}
.nav-cart-tip::before{
  content:'';
  position:absolute;
  bottom:100%;left:50%;
  transform:translateX(-50%);
  border:5px solid transparent;
  border-bottom-color:rgba(10,20,40,.88);
}
.nav-cart-btn:hover .nav-cart-tip{opacity:1}
@media(max-width:960px){.nav-cart-btn{display:none!important}}

/* ═══════════════ CART SIDEBAR ═══════════════ */
#cartSidebar{
  position:fixed;
  top:0;left:0;
  width:340px;max-width:92vw;
  height:100vh;
  background:#fff;
  box-shadow:-4px 0 24px rgba(0,0,0,.18);
  z-index:9999;
  display:flex;flex-direction:column;
  transform:translateX(-100%);
  transition:transform .32s cubic-bezier(.4,0,.2,1);
  overflow:hidden;
}
#cartSidebar.open{transform:translateX(0)}
#cartOverlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.45);
  z-index:9998;
  display:none;
}
#cartOverlay.open{display:block}
.cart-sidebar-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 20px;
  background:linear-gradient(135deg,#0d1b3e,#1a3a6b);
  color:#fff;
}
.cart-sidebar-header h3{margin:0;font-size:1.1rem}
.cart-close-btn{
  background:rgba(255,255,255,.15);border:none;
  color:#fff;width:30px;height:30px;border-radius:50%;
  cursor:pointer;font-size:.9rem;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s;
}
.cart-close-btn:hover{background:rgba(255,255,255,.28)}
.cart-sidebar-body{
  flex:1;overflow-y:auto;
  padding:20px;
  display:flex;flex-direction:column;align-items:center;
  gap:16px;
}
.cart-empty-msg{
  text-align:center;color:#666;margin-top:40px;
}
.cart-empty-msg i{font-size:3rem;color:#ccd;margin-bottom:12px;display:block}
.cart-empty-msg p{font-size:.95rem;line-height:1.6}
.cart-sidebar-footer{
  padding:16px 20px;
  border-top:1px solid #eee;
  display:flex;flex-direction:column;gap:10px;
}
.cart-sidebar-footer .btn{width:100%;text-align:center;justify-content:center}
#cartItemsList{width:100%;display:flex;flex-direction:column;gap:10px}
.cart-item-row{
  display:flex;align-items:center;gap:10px;
  background:#f8f9fb;border-radius:10px;padding:10px;
  direction:rtl;
}
.cart-item-row img{width:48px;height:48px;border-radius:8px;object-fit:cover;flex-shrink:0}
.cart-item-info{flex:1}
.cart-item-info strong{font-size:.85rem;display:block}
.cart-item-info span{font-size:.75rem;color:#777}
.cart-item-remove{background:none;border:none;color:#aaa;cursor:pointer;font-size:.9rem;padding:4px}
.cart-item-remove:hover{color:#f43f5e}
.cart-item-price{font-size:.8rem;color:var(--blue);font-weight:700;display:block;margin-top:2px}
.cart-item-free-badge{font-size:.72rem;background:rgba(76,175,80,.15);color:#2E7D32;border:1px solid rgba(76,175,80,.3);border-radius:20px;padding:2px 8px;font-weight:700;display:inline-block;margin-top:3px}
#cartTotalArea{border-top:1.5px solid #e2e8f4;padding:12px 0 0;margin-top:6px;direction:rtl}
.cart-subtotal{font-size:.82rem;color:#777;margin-bottom:4px}
.cart-discount-line{font-size:.82rem;color:#2E7D32;font-weight:700;background:rgba(76,175,80,.1);padding:5px 8px;border-radius:8px;margin-bottom:5px}
.cart-total-line{font-size:1rem;font-weight:800;color:#1a3a6b}
/* כפתור "הוסף לסל" למשחקי רצפה */
.act-cta-cart-fg{display:block;width:100%;text-align:center;background:transparent;color:var(--blue);border:1.5px solid var(--blue);font-size:.82rem;font-weight:700;padding:7px;border-radius:10px;cursor:pointer;transition:var(--tr);margin-top:6px}
.act-cta-cart-fg:hover{background:var(--blue4);transform:translateY(-1px)}


/* ===================== BOOKING ENHANCEMENTS ===================== */
.school-chips{display:flex;flex-wrap:nowrap;gap:6px;margin-bottom:4px;overflow-x:auto}
.school-chip{padding:6px 10px;border-radius:50px;border:1.5px solid var(--g2);background:#fff;color:var(--g7);font-size:.78rem;font-weight:700;cursor:pointer;transition:var(--tr);white-space:nowrap;font-family:Heebo,sans-serif;flex-shrink:0}
.school-chip.active{background:var(--blue);border-color:var(--blue);color:#fff}
html.dark-mode .school-chip{background:#1a2d52;border-color:#2a4070;color:#e8f4ff}
html.dark-mode .school-chip.active{background:var(--blue);color:#fff}
.special-ed-row{background:rgba(76,175,80,.07);border:1.5px solid rgba(76,175,80,.25);border-radius:12px;padding:10px 14px;display:flex;align-items:center;gap:10px;cursor:pointer}
.special-ed-row label{cursor:pointer;font-size:.88rem;font-weight:700;color:#2E7D32;margin:0;flex:1}
html.dark-mode .special-ed-row{background:rgba(76,175,80,.12);border-color:rgba(76,175,80,.35)}
html.dark-mode .special-ed-row label{color:#A5D6A7}
.special-ed-note{font-size:.78rem;color:#2E7D32;margin-top:5px;display:none}
.kids-hint{font-size:.76rem;color:var(--g5);margin-top:4px;min-height:14px}
.surcharge-note{font-size:.78rem;color:#D97706;font-weight:700;margin-top:4px;display:none}
.rounds-section{margin-top:14px;display:none}
.rounds-label{font-size:.84rem;font-weight:700;color:var(--dark);margin-bottom:8px}
.rounds-btns{display:flex;gap:6px;margin-bottom:12px}
.rounds-btn{width:36px;height:36px;border-radius:8px;border:1.5px solid var(--g2);background:#fff;font-weight:800;font-size:.9rem;cursor:pointer;transition:var(--tr);font-family:Heebo,sans-serif;color:var(--g7)}
.rounds-btn.active{background:var(--blue);border-color:var(--blue);color:#fff}
html.dark-mode .rounds-btn{background:#1a2d52;border-color:#2a4070;color:#e8f4ff}
html.dark-mode .rounds-btn.active{background:var(--blue);color:#fff}
.round-grade-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:.85rem}
.round-grade-row label{min-width:52px;font-weight:700;color:var(--g7)}
.round-grade-row select{flex:1;padding:8px 12px;border-radius:10px;border:1.5px solid var(--g2);background:#fff;color:var(--g8);font-family:Heebo,sans-serif;font-size:.85rem;outline:none}
html.dark-mode .round-grade-row select{background:#1a2d52;border-color:#2a4070;color:#e8f4ff}
/* ============================================================== */

/* =========================================================
   MODAL v200 - Modern Organic Luxury Redesign
   ========================================================= */
.act-modal-box { background: #0D1B3E !important; }
.modal-section {
  background: #FFFFFF !important;
  border: 1px solid rgba(0,153,255,.18) !important;
  border-radius: 16px !important;
  box-shadow: 0 2px 18px rgba(0,0,0,.1) !important;
  margin: 14px 0 0 !important;
  padding: 16px 18px 14px !important;
}
.modal-section-h { color: #0D1B3E !important; font-size: .95rem !important; border-right-color: #0099FF !important; margin-bottom: 12px !important; }
.modal-section-body, .modal-section-body p { color: #374151 !important; }
.modal-bullets, .modal-bullets li { color: #374151 !important; }
.modal-bullets li::before { color: #0099FF !important; }
.wow-item { background: #EFF6FF !important; border: 1px solid rgba(0,153,255,.18) !important; color: #374151 !important; }
.wow-item > div:last-child { color: #374151 !important; }
.fact-card  { background: #EFF6FF !important; border: 1px solid rgba(0,153,255,.22) !important; }
.fact-label { color: #6B7280 !important; }
.fact-value { color: #0D1B3E !important; }
.fact-icon  { display:block; width:20px; height:20px; margin-bottom:4px; }
.schedule-row { background: #F0F7FF !important; border-right-color: #0099FF !important; }
.schedule-stage { color: #0D1B3E !important; }
.schedule-desc  { color: #6B7280  !important; }
.schedule-time  { color: #0099FF  !important; }
.mprice-row:nth-child(odd) { background: rgba(0,153,255,.06) !important; }
.mprice-row.best { background: rgba(0,153,255,.13) !important; border:1px solid rgba(0,153,255,.35) !important; }
.mprice-lbl { color: #374151 !important; }
.mprice-val { color: #0D1B3E !important; }
.mprice-val .per { color: #6B7280 !important; }
#mPriceNote { color: #6B7280 !important; border-top-color: rgba(0,0,0,.1) !important; }
.upsell-card { background: #F0F7FF !important; border: 1px solid rgba(0,153,255,.15) !important; }
.upsell-name { color: #0099FF !important; }
.upsell-desc { color: #374151 !important; }
.modal-faq-item { background: #F8FAFF !important; border: 1px solid rgba(0,0,0,.08) !important; }
.modal-faq-q    { color: #0D1B3E !important; }
.modal-faq-item.open .modal-faq-q { color: #0099FF !important; }
.modal-faq-ans  { color: #374151 !important; padding: 4px 14px 12px; font-size:.87rem; line-height:1.6; }
.modal-step-card  { background: #F0F7FF !important; border: 1px solid rgba(0,153,255,.15) !important; }
.modal-step-title { color: #0099FF !important; }
.modal-step-desc  { color: #374151 !important; }
.act-modal-tagline { background: rgba(0,153,255,.07) !important; border-color: rgba(0,153,255,.25) !important; color: #0D1B3E !important; }
.modal-slogan { background: linear-gradient(135deg,rgba(0,153,255,.08),rgba(0,229,255,.06)) !important; color: #0D1B3E !important; border-color: rgba(0,153,255,.25) !important; }
.audience-card { background: #F0F7FF !important; border-right-color: #0099FF !important; }
.audience-age  { color: #0099FF !important; }
.audience-desc { color: #374151 !important; }
.tech-req-grid { display:grid; gap:0; }
.tech-req-row { display:flex; align-items:flex-start; gap:10px; padding:9px 0; border-bottom:1px solid rgba(0,0,0,.06); font-size:.87rem; }
.tech-req-row:last-child { border-bottom:none; padding-bottom:0; }
.tech-req-icon  { flex-shrink:0; font-size:1.1rem; margin-top:1px; }
.tech-req-label { font-weight:700; color:#0D1B3E; margin-bottom:2px; font-size:.87rem; }
.tech-req-val   { color:#374151; line-height:1.55; font-size:.84rem; }
.cancel-grid { display:grid; gap:0; }
.cancel-row { display:flex; align-items:flex-start; gap:10px; padding:9px 0; border-bottom:1px solid rgba(0,0,0,.06); font-size:.85rem; color:#374151; }
.cancel-row:last-child { border-bottom:none; padding-bottom:0; }
.cancel-row .cr-icon { flex-shrink:0; font-size:1rem; margin-top:2px; }
.cancel-row .cr-text { line-height:1.6; }
.cancel-row strong { color:#0D1B3E; }
.modal-sticky-cta {
  position: sticky; bottom: 0;
  background: rgba(4,14,40,.95);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-top: 1px solid rgba(0,153,255,.3);
  padding: 11px 20px;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  margin: 18px -32px -36px;
  border-radius: 0 0 24px 24px;
  z-index: 5; box-shadow: 0 -4px 20px rgba(0,0,0,.25);
}
.msc-price { flex:1; min-width:0; }
.msc-from  { font-size:.7rem; color:rgba(255,255,255,.5); display:block; margin-bottom:1px; }
.msc-price-val { font-size:1.1rem; font-weight:900; color:#FFFFFF; display:block; white-space:nowrap; }
.msc-actions { display:flex; gap:8px; flex-shrink:0; }
.msc-phone { display:flex; align-items:center; gap:5px; padding:9px 13px; border-radius:10px; background:rgba(255,255,255,.1); color:#fff; text-decoration:none; font-size:.82rem; font-weight:700; transition:background .2s; white-space:nowrap; }
.msc-phone:hover { background:rgba(255,255,255,.2); color:#fff; }
.msc-book { display:flex; align-items:center; gap:6px; padding:9px 18px; border-radius:10px; background:#0099FF; color:#fff; text-decoration:none; font-size:.88rem; font-weight:900; transition:background .2s, transform .15s; white-space:nowrap; }
.msc-book:hover { background:#007FCC; transform:translateY(-1px); }
@media(max-width:560px){ .modal-sticky-cta { margin: 16px -28px -32px; padding:10px 14px; } .msc-price-val { font-size:1rem; } .msc-book { padding:9px 14px; font-size:.84rem; } }
/* ========================================================= */

/* === BLOCK 2: Cart / Wishlist / FOMO === */

/* Filter count badge */
.filt-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;background:rgba(0,153,255,.15);color:var(--blue);font-size:.7rem;font-weight:800;border-radius:10px;margin-right:2px;transition:var(--tr)}
.filt-btn.active .filt-count{background:rgba(255,255,255,.25);color:#fff}
html.dark-mode .filt-count{background:rgba(0,153,255,.25)}

/* Nav active section indicator */
.nav a.nav-active-section{color:var(--blue)!important;font-weight:800}

/* Scroll hint arrow in hero */
.ks-scroll-hint{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.7);font-size:1.4rem;animation:ks-bounce 2s ease-in-out infinite;pointer-events:none;transition:opacity .6s;z-index:5}
@keyframes ks-bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}

/* ── Pagination ── */
#pagination-bar{display:none;justify-content:center;align-items:center;
  gap:6px;padding:32px 16px 16px;flex-wrap:wrap}
.pg-btn{padding:8px 20px;border-radius:10px;
  border:1.5px solid rgba(0,153,255,.4);background:#111d3a;
  color:#fff;font-size:.9rem;font-family:Heebo,sans-serif;cursor:pointer;
  transition:.2s;font-weight:700}
.pg-btn:hover:not(:disabled){background:#1E56A0}
.pg-btn:disabled{opacity:.35;cursor:default}
.pg-num{width:36px;height:36px;border-radius:8px;
  border:1.5px solid rgba(0,153,255,.4);background:#111d3a;
  color:#fff;font-family:Heebo,sans-serif;font-size:.85rem;cursor:pointer;
  transition:.2s;display:inline-flex;align-items:center;justify-content:center}
.pg-num:hover{background:linear-gradient(135deg,var(--blue),var(--blue3))}
.pg-num.active{background:linear-gradient(135deg,var(--blue),var(--blue3));font-weight:800;border-color:var(--blue3)}
.pg-dots{color:rgba(255,255,255,.4);padding:0 4px;line-height:36px}
@media(max-width:767px){
  #pagination-bar{padding:20px 12px 12px;gap:5px}
  .pg-btn{padding:7px 14px;font-size:.8rem;border-radius:8px}
  .pg-num{width:32px;height:32px;font-size:.78rem;border-radius:7px}
}

/* ── Nitzanim lesson plans fullscreen iframe modal ── */
#nitz-plans-modal {
  display:none; position:fixed; inset:0; z-index:99999;
  background:rgba(4,12,28,.97);
  flex-direction:column;
}
#nitz-plans-modal.open { display:flex; }
#nitz-plans-modal-bar {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 18px; background:#0a1c34;
  border-bottom:1.5px solid rgba(0,153,255,.35); flex-shrink:0;
}
#nitz-plans-modal-bar .npm-title {
  font-size:15px; font-weight:900; color:#fff; display:flex; align-items:center; gap:10px;
}
#nitz-plans-modal iframe {
  flex:1; border:none; width:100%; background:#040c1c;
}
#npm-close {
  background:rgba(0,153,255,.15); border:1.5px solid rgba(0,153,255,.4);
  color:#00e5ff; font-size:13px; font-weight:700; padding:8px 18px;
  border-radius:20px; cursor:pointer; transition:background .2s;
}
#npm-close:hover { background:rgba(0,153,255,.3); }


/* hide social proof notif */
#spNotif{display:none!important;visibility:hidden!important;}

/* inf sub-filter active */
.inf-sub-btn.active{background:#0099ff!important;color:#fff!important;border-color:#0099ff!important;}

/* ===== MODAL LAYOUT FIXES ===== */
/* Make wrap flex so sticky CTA stays at bottom */
.act-modal-wrap {
  display: flex !important;
  flex-direction: column !important;
  max-height: 90vh !important;
  overflow: hidden !important;
  border-radius: 24px !important;
}
/* Scrollable content area */
.act-modal-box {
  flex: 1 1 auto !important;
  overflow-y: auto !important;
  max-height: none !important;
  border-radius: 24px 24px 0 0 !important;
}
/* Sticky CTA — now a flex child, always at bottom */
.modal-sticky-cta {
  position: static !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
  border-radius: 0 0 24px 24px !important;
}
/* Button row spacing */
.act-modal-btns {
  margin-top: 20px !important;
  margin-bottom: 4px !important;
}
/* FAQ — show all answers */
.modal-faq-a {
  display: block !important;
  padding: 0 14px 12px !important;
  font-size: .85rem !important;
  color: rgba(255,255,255,.82) !important;
  line-height: 1.6 !important;
}
/* Hide FAQ toggle icon (no need for expand/collapse) */
.modal-faq-q::after {
  display: none !important;
}
/* ================================ */



/* inf rental mode */
.inf-mode-btn.active{background:#0099FF!important;color:#fff!important;border-color:#0099FF!important;}
.act-rent-badge{display:inline-flex;align-items:center;gap:4px;background:rgba(0,153,255,.1);color:#0066CC;border:1px solid rgba(0,153,255,.3);border-radius:50px;padding:3px 9px;font-size:.65rem;font-weight:700;}
.act-cta-rent{background:linear-gradient(135deg,#0052CC,#0099FF)!important;}

/* ===== WISHLIST ===== */
.nav-wishlist-btn{background:none;border:none;cursor:pointer;color:rgba(255,255,255,.85);position:relative;padding:4px 6px;border-radius:8px;transition:color .2s;}
.nav-wishlist-btn:hover{color:#ff6b8a;}
.nav-wishlist-btn svg{display:block;}
.nav-wishlist-count{position:absolute;top:-4px;right:-4px;background:#ff4d6d;color:#fff;border-radius:50%;width:16px;height:16px;font-size:.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;}
/* .act-wish-btn — image-overlay heart removed; use .act-wish-card-btn in the button grid instead */
.act-wish-btn{display:none!important;}
.wl-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;}
.wl-modal.open{opacity:1;pointer-events:all;}
.wl-box{background:#fff;border-radius:20px;padding:28px;max-width:520px;width:90%;max-height:80vh;overflow-y:auto;direction:rtl;}
.wl-box h2{color:#0D1B3E;font-size:1.2rem;margin-bottom:16px;}
.wl-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #f0f0f0;}
.wl-item-name{flex:1;color:#1E3A5F;font-weight:600;}
.wl-item-remove{background:none;border:none;color:#ff4d6d;cursor:pointer;font-size:1.1rem;}
/* =================== */

/* ================================================================
   CARD ACTION BUTTONS — Wishlist heart + Add-to-cart
   ================================================================ */

/* Heart button overlay removed — hidden via display:none above */

/* CTA row — wraps the main CTA + cart button */
.act-cta-row {
  display: flex;
  gap: 6px;
  margin-top: auto;
}
/* act-cta inside .act-cta-row fills remaining width */
.act-cta-row .act-cta {
  flex: 1;
  margin-top: 0 !important;
}
/* Add-to-cart icon button */
.act-add-cart-btn {
  width: 38px;
  flex-shrink: 0;
  background: #0D1B3E;
  color: #fff;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .95rem;
  transition: background .18s, transform .15s;
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
}
.act-add-cart-btn:hover { background: #0052CC; transform: scale(1.06); }
.act-add-cart-btn.added { background: #0099FF; }

/* ================================================================
   SCHEDULE BUILDER MODAL
   ================================================================ */
#scheduleBuilderModal {
  position: fixed; inset: 0;
  background: rgba(4,14,40,.6);
  backdrop-filter: blur(4px);
  z-index: 12000;
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none;
  transition: opacity .25s;
}
#scheduleBuilderModal.open { opacity: 1; pointer-events: all; }

.sb-box {
  background: #fff;
  border-radius: 20px;
  padding: 28px 28px 20px;
  max-width: 680px;
  width: 94vw;
  max-height: 88vh;
  overflow-y: auto;
  direction: rtl;
  box-shadow: 0 16px 60px rgba(0,0,0,.28);
}
.sb-title {
  font-size: 1.15rem; font-weight: 900;
  color: #0D1B3E; margin: 0 0 18px;
  display: flex; align-items: center; gap: 8px;
}
.sb-start-row {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 18px; flex-wrap: wrap;
}
.sb-start-row label { font-weight: 700; color: #374151; font-size: .9rem; }
.sb-start-row input[type=time] {
  border: 1px solid #d1d5db; border-radius: 8px;
  padding: 6px 10px; font-size: .95rem; color: #0D1B3E;
}

/* Row entries */
.sb-entries { display: flex; flex-direction: column; gap: 10px; margin-bottom: 16px; }
.sb-entry {
  border: 1px solid #e5e7eb; border-radius: 12px;
  padding: 12px 14px; background: #f9fafb; position: relative;
}
.sb-intro {
  font-size: .82rem; color: #475569; line-height: 1.55;
  background: #f1f7ff; border: 1px solid #d6e8ff; border-radius: 10px;
  padding: 9px 12px; margin: 0 0 12px;
}
.sb-tl-total {
  display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px;
  margin-top: 8px; padding-top: 8px; border-top: 1px dashed #cbd5e1;
  font-size: .82rem; color: #334155;
}
.sb-tl-total strong { color: #0F2A52; }
.sb-entry.sb-break { background: #fef9ee; border-color: #fde68a; }
.sb-entry-header {
  font-size: .78rem; font-weight: 800; color: #6b7280;
  text-transform: uppercase; letter-spacing: .5px; margin-bottom: 8px;
}
.sb-entry.sb-break .sb-entry-header { color: #d97706; }
.sb-entry-fields { display: flex; gap: 10px; flex-wrap: wrap; align-items: flex-end; }
.sb-entry-fields input, .sb-entry-fields select {
  border: 1px solid #d1d5db; border-radius: 8px;
  padding: 5px 8px; font-size: .85rem; color: #1E3A5F;
  background: #fff;
}
.sb-entry-fields input[type=text] { min-width: 130px; }
.sb-entry-fields input[type=number] { width: 70px; }
/* labelled field wrapper inside a schedule row */
.sb-field { display: flex; flex-direction: column; gap: 3px; }
.sb-field.sb-field-grow { flex: 1; min-width: 130px; }
.sb-field-cap {
  font-size: .68rem; font-weight: 700; color: #475569;
  display: flex; align-items: center; gap: 3px; white-space: nowrap;
}
.sb-field-cap i { color: #0099FF; font-size: .66rem; }
.sb-entry.sb-break .sb-field-cap { color: #b45309; }
.sb-entry.sb-break .sb-field-cap i { color: #d97706; }
.sb-remove-btn {
  position: absolute; top: 8px; left: 10px;
  background: none; border: none; color: #ef4444;
  cursor: pointer; font-size: 1rem; padding: 2px;
}
.sb-remove-btn:hover { color: #b91c1c; }

/* Add buttons */
.sb-add-row { display: flex; gap: 8px; margin-bottom: 18px; flex-wrap: wrap; }
.sb-add-btn {
  border: 1.5px dashed #0099FF; background: #f0f9ff;
  color: #0052CC; border-radius: 10px;
  padding: 6px 14px; font-size: .83rem; font-weight: 700;
  cursor: pointer; transition: background .15s;
}
.sb-add-btn:hover { background: #dbeafe; }
.sb-add-btn.sb-add-break { border-color: #f59e0b; background: #fffbeb; color: #b45309; }
.sb-add-btn.sb-add-break:hover { background: #fef3c7; }

/* Timeline preview */
.sb-timeline { border-top: 1px solid #e5e7eb; padding-top: 14px; margin-bottom: 18px; }
.sb-timeline-title { font-size: .82rem; font-weight: 800; color: #6b7280; margin-bottom: 10px; }
.sb-tl-row {
  display: flex; gap: 10px; align-items: baseline;
  font-size: .84rem; padding: 4px 0; border-bottom: 1px solid #f3f4f6;
}
.sb-tl-time { color: #0052CC; font-weight: 700; min-width: 105px; flex-shrink: 0; }
.sb-tl-label { color: #1E3A5F; }
.sb-tl-row.sb-tl-break .sb-tl-label { color: #d97706; font-style: italic; }

/* Break budget bar */
.sb-budget-bar {
  margin: 10px 0 14px;
  background: #fffbeb;
  border: 1.5px solid #fde68a;
  border-radius: 10px;
  padding: 8px 14px;
}
.sb-budget-label {
  display: flex; justify-content: space-between; align-items: center;
  font-size: .82rem; color: #78350f; margin-bottom: 6px; gap: 8px; flex-wrap: wrap;
}
.sb-budget-note { font-size: .76rem; color: #b45309; font-weight: 600; }
.sb-budget-track {
  height: 8px; background: #fef3c7; border-radius: 99px; overflow: hidden;
}
.sb-budget-fill {
  height: 100%; width: 0; border-radius: 99px;
  background: #10b981; transition: width .4s, background .3s;
}

/* Footer buttons */
.sb-footer { display: flex; justify-content: flex-start; gap: 10px; flex-wrap: wrap; }
.sb-confirm-btn {
  background: #0052CC; color: #fff; border: none;
  border-radius: 10px; padding: 9px 22px;
  font-size: .9rem; font-weight: 700; cursor: pointer;
  transition: background .18s;
}
.sb-confirm-btn:hover { background: #0041a8; }
.sb-pdf-btn {
  background: #f0fdf4; color: #166534; border: 1.5px solid #86efac;
  border-radius: 10px; padding: 9px 18px;
  font-size: .87rem; font-weight: 700; cursor: pointer;
  transition: background .18s;
}
.sb-pdf-btn:hover { background: #dcfce7; }
.sb-cancel-btn {
  background: #f3f4f6; color: #374151; border: none;
  border-radius: 10px; padding: 9px 18px;
  font-size: .9rem; font-weight: 600; cursor: pointer;
}
.sb-cancel-btn:hover { background: #e5e7eb; }

/* "Open Schedule Builder" trigger button in booking form */
.sb-trigger-btn {
  display: flex; align-items: center; gap: 8px;
  border: 1.5px dashed #0099FF; background: #f0f9ff;
  color: #0052CC; border-radius: 12px;
  padding: 10px 18px; font-size: .88rem; font-weight: 700;
  cursor: pointer; transition: background .18s; width: 100%;
  margin-top: 14px; justify-content: center;
}
.sb-trigger-btn:hover { background: #dbeafe; }
.sb-saved-preview {
  font-size: .8rem; color: #059669; font-weight: 600;
  margin-top: 6px; display: none;
}
/* ================================================================ */

/* ================================================================
   PRE-BOOKING BUTTON
   ================================================================ */
.btn-prebook {
  display: inline-flex; align-items: center; gap: 7px;
  background: linear-gradient(135deg, #0052CC, #0099FF);
  color: #fff; border: none; border-radius: 12px;
  padding: 11px 20px; font-size: .88rem; font-weight: 700;
  cursor: pointer; transition: all .2s;
  box-shadow: 0 3px 12px rgba(0,102,204,.3);
  font-family: inherit;
}
.btn-prebook:hover { background: linear-gradient(135deg,#0052CC,#0099FF); transform: translateY(-1px); }

/* ================================================================
   PRE-BOOK CONTRACT MODAL
   ================================================================ */
#preBookModal {
  position: fixed; inset: 0;
  background: rgba(4,14,40,.65);
  backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
  z-index: 13000;
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none; transition: opacity .25s;
}
#preBookModal.open { opacity: 1; pointer-events: all; }

.pb-box {
  background: #fff; border-radius: 20px;
  padding: 28px 28px 22px;
  max-width: 600px; width: 94vw;
  max-height: 90vh; overflow-y: auto;
  direction: rtl; box-shadow: 0 16px 60px rgba(0,0,0,.3);
}
.pb-title {
  font-size: 1.1rem; font-weight: 900; color: #0D1B3E;
  display: flex; align-items: center; gap: 8px; margin: 0 0 16px;
}
.pb-summary {
  background: #f0fdf4; border: 1px solid #bbf7d0;
  border-radius: 12px; padding: 12px 16px;
  font-size: .84rem; color: #065f46; line-height: 1.7;
  margin-bottom: 16px;
}
.pb-contract-box {
  border: 1px solid #e5e7eb; border-radius: 12px;
  padding: 14px 16px; max-height: 220px; overflow-y: auto;
  font-size: .8rem; color: #374151; line-height: 1.75;
  margin-bottom: 16px; background: #f9fafb;
}
.pb-contract-box h4 { font-size: .85rem; color: #0D1B3E; margin: 0 0 8px; }
.pb-contract-box ol { padding-right: 18px; margin: 0; }
.pb-contract-box li { margin-bottom: 5px; }
.pb-sign-row {
  display: flex; flex-direction: column; gap: 10px;
  margin-bottom: 16px;
}
.pb-sign-row label { font-size: .85rem; font-weight: 700; color: #374151; }
.pb-sign-row input[type=text] {
  border: 1.5px solid #d1d5db; border-radius: 10px;
  padding: 9px 14px; font-size: .9rem; color: #0D1B3E;
  font-family: inherit; outline: none;
  transition: border-color .2s;
}
.pb-sign-row input[type=text]:focus { border-color: #0099ff; }
.pb-agree-row {
  display: flex; align-items: flex-start; gap: 10px;
  margin-bottom: 18px; font-size: .84rem; color: #374151;
}
.pb-agree-row input[type=checkbox] {
  width: 18px; height: 18px; margin-top: 1px;
  accent-color: #0099FF; flex-shrink: 0; cursor: pointer;
}
.pb-footer { display: flex; gap: 10px; flex-wrap: wrap; }
.pb-confirm-btn {
  background: linear-gradient(135deg,#0052CC,#0099FF);
  color: #fff; border: none; border-radius: 11px;
  padding: 10px 24px; font-size: .9rem; font-weight: 700;
  cursor: pointer; transition: background .2s; font-family: inherit;
}
.pb-confirm-btn:hover { background: linear-gradient(135deg,#0052CC,#0099FF); }
.pb-cancel-btn {
  background: #f3f4f6; color: #374151; border: none;
  border-radius: 11px; padding: 10px 18px; font-size: .9rem;
  cursor: pointer; font-family: inherit;
}
.pb-cancel-btn:hover { background: #e5e7eb; }

/* ================================================================
   SMART INSTRUCTOR MATCHING CARD
   ================================================================ */
#instructorMatch {
  background: linear-gradient(135deg,#f0f9ff,#e0f2fe);
  border: 1px solid rgba(0,153,255,.25);
  border-radius: 14px; padding: 14px 18px;
  margin-bottom: 14px; display: none;
}
.im-label {
  font-size: .75rem; font-weight: 800; color: #0052CC;
  text-transform: uppercase; letter-spacing: .5px; margin-bottom: 10px;
}
.im-card {
  display: flex; align-items: center; gap: 14px;
}
.im-avatar {
  width: 48px; height: 48px; border-radius: 50%;
  background: linear-gradient(135deg,#0099ff,#0052cc);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; flex-shrink: 0; color: #fff;
}
.im-info { flex: 1; }
.im-name {
  font-size: .95rem; font-weight: 800; color: #0D1B3E; margin-bottom: 3px;
}
.im-specs {
  font-size: .78rem; color: #374151; margin-bottom: 4px;
}
.im-avail {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: .76rem; font-weight: 700; color: #0369a1;
  background: #e0f7ff; border-radius: 20px; padding: 3px 12px;
}
.im-avail i { color: #00B4D8; }
.im-label i { margin-inline-end: 4px; }
.im-avatar i { font-size: 1.35rem; }
/* ================================================================ */

/* ================================================================
   MODAL CONTRAST FIX — comprehensive
   White-bg sections: dark text | Dark-bg header: white text
   ================================================================ */

/* ── Dark header area: title + pills must stay WHITE ── */
.act-modal-title,
.act-modal-title *,
.act-modal-sub,
.act-modal-cat,
.act-modal-pills .act-pill {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.35) !important;
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
}

/* ── White-background sections: ALL text must be dark ── */
.modal-section,
.modal-section * {
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
  background-clip: unset !important;
  -webkit-background-clip: unset !important;
}

/* Section heading: darker navy */
.modal-section-h,
.modal-section-h *,
.modal-section h1, .modal-section h2,
.modal-section h3, .modal-section h4 {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
}

/* Section body text */
.modal-section-body,
.modal-section-body p,
.modal-section-body span,
.modal-section-body li,
.modal-section-body strong {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
}

/* Blue accent for links / highlight in sections */
.modal-section a,
.modal-section .modal-tag,
.modal-section .modal-link {
  color: #0052CC !important;
  -webkit-text-fill-color: #0052CC !important;
}

/* Schedule rows inside sections */
.modal-section .schedule-row,
.modal-section .sch-label,
.modal-section .sch-val {
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
}

/* Cancel/terms rows */
.cancel-row, .cancel-row *, .cancel-row strong {
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
}

/* Sticky CTA bar stays dark background + white text */
.modal-sticky-cta,
.modal-sticky-cta *,
.msc-price, .msc-from, .msc-price-val,
.msc-actions a, .msc-actions button {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* Preserve button backgrounds inside sections */
.modal-section .act-cta,
.modal-section .btn,
.modal-section button.wz-btn {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* FAQ: questions white (dark bg), answers light grey */
.modal-faq-q {
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
}
.modal-faq-a {
  display: block !important;
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
  padding: 0 14px 12px !important;
  font-size: .85rem !important;
  line-height: 1.65 !important;
}
.modal-faq-q::after { display: none !important; }

/* ================================================================ */

/* ================================================================
   FAQ + STICKY PRICE DEFINITIVE FIX
   ================================================================ */

/* FAQ items have light bg — force dark text on questions AND answers */
.modal-faq-item .modal-faq-q,
.modal-faq-item .modal-faq-q * {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  background: none !important;
}
.modal-faq-item .modal-faq-q:hover {
  color: #0099FF !important;
  -webkit-text-fill-color: #0099FF !important;
}
.modal-faq-item .modal-faq-ans,
.modal-faq-item .modal-faq-ans *,
.modal-faq-item .modal-faq-a,
.modal-faq-item .modal-faq-a * {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  display: block !important;
  max-height: none !important;
  padding-bottom: 12px !important;
}

/* Sticky CTA — always dark bg + white text */
#mStickyCta,
#mStickyCta *,
.modal-sticky-cta,
.modal-sticky-cta * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
.msc-from {
  color: rgba(255,255,255,.65) !important;
  -webkit-text-fill-color: rgba(255,255,255,.65) !important;
  font-size: .72rem !important;
}
.msc-price-val {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: 1.05rem !important;
  font-weight: 900 !important;
}

/* ================================================================ */

/* ================================================================
   FAQ SECTION — COMPLETE OVERHAUL
   Clear hierarchy, proper contrast, no text clipping
   ================================================================ */

/* Container */
.modal-faq-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

/* Each FAQ item box */
.modal-faq-item {
  background: #FFFFFF !important;
  border: 1.5px solid #CBD5E1 !important;
  border-radius: 12px !important;
  overflow: visible !important;
  height: auto !important;
}

/* Question row */
.modal-faq-item .modal-faq-q,
.modal-faq-item button.modal-faq-q {
  width: 100% !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  text-align: right !important;
  padding: 14px 16px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-size: .9rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  word-break: break-word !important;
  height: auto !important;
  min-height: 0 !important;
}
.modal-faq-item .modal-faq-q:hover {
  color: #0052CC !important;
  -webkit-text-fill-color: #0052CC !important;
}
/* Hide the +/x toggle icon — all answers shown */
.modal-faq-item .modal-faq-q::after {
  display: none !important;
}

/* Answer — always visible, proper spacing, no clipping */
.modal-faq-item .modal-faq-ans,
.modal-faq-item .modal-faq-a {
  display: block !important;
  max-height: none !important;
  overflow: visible !important;
  height: auto !important;
  padding: 0 16px 14px 16px !important;
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  font-size: .85rem !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  white-space: normal !important;
  word-break: break-word !important;
  border-top: 1px solid #E2E8F0 !important;
  margin-top: 0 !important;
}

/* Separator between Q and A */
.modal-faq-item .modal-faq-q + .modal-faq-ans,
.modal-faq-item .modal-faq-q + .modal-faq-a {
  padding-top: 10px !important;
}

/* ================================================================ */

/* ================================================================
   MODAL INTRO SECTION — Glassmorphism + white text
   ================================================================ */
#mIntro,
#mWow,
#mValue {
  background: rgba(255,255,255,0.07) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: 0 2px 16px rgba(0,0,0,.12) !important;
}
#mIntro *,
#mWow *,
#mValue * {
  color: rgba(255,255,255,0.93) !important;
  -webkit-text-fill-color: rgba(255,255,255,0.93) !important;
}
#mIntro .modal-section-h,
#mWow .modal-section-h,
#mValue .modal-section-h {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-weight: 800 !important;
}
/* ================================================================ */

/* ================================================================
   HEADER — 4 FIXES: cart icon, gap, portal border, button height
   ================================================================ */

/* 1. Cart icon: remove background/border/shadow — match wishlist style */
.nav-cart-btn {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 8px !important;
  width: auto !important;
  height: auto !important;
  padding: 4px 6px !important;
  color: rgba(255,255,255,.85) !important;
}
.nav-cart-btn:hover {
  background: rgba(0,153,255,.2) !important;
  color: #fff !important;
}

/* 2. Reduce gap between wishlist and cart icons */
.nav-wishlist-btn + .nav-cart-btn {
  margin-right: -8px !important;
}

/* 3. אזור לקוחות: white border */
.nav-portal-link {
  
}

/* 4. Match heights: הזמינו עכשיו = אזור לקוחות */
.nav-portal-link,
.nav-cta .btn.btn-sm,
.nav-cta a.btn {
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding-block: 0 !important;
  box-sizing: border-box !important;
}
/* ================================================================ */

/* ================================================================
   ACTIVITY CARD TAGS — Unified brand style + clean minimal
   ================================================================ */

/* Base tag: -10% size from original .72rem/3px 9px */
.ap {
  font-size: .65rem !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 50px !important;
  white-space: nowrap !important;
  line-height: 1.4 !important;
  letter-spacing: .2px !important;
}

/* Unified brand colors for ALL variants — remove all colorful variants */
.ap-age,
.ap-gender,
.ap-size,
.ap-loc,
.ap-guides,
.ap-special,
.ap-mod {
  background: rgba(0, 153, 255, 0.08) !important;
  color: #0066CC !important;
  border: 1px solid rgba(0, 153, 255, 0.22) !important;
}

/* Hover: subtle lift */
.ap:hover {
  background: rgba(0, 153, 255, 0.15) !important;
  border-color: rgba(0, 153, 255, 0.4) !important;
}

/* Responsive overrides — keep consistent */
@media (max-width: 600px) {
  .ap {
    font-size: .6rem !important;
    padding: 2px 7px !important;
  }
}
/* ================================================================ */

/* ================================================================
   CARD BUTTONS — 2×2 Grid Layout
   ================================================================ */
.act-btns-grid {
  display: grid;
  grid-template-columns: 38px 1fr;
  grid-template-rows: auto auto;
  gap: 6px;
  margin-top: auto;
  padding-top: 2px;
}
/* Top-left: wishlist icon button */
.act-btns-grid .act-wish-card-btn {
  grid-column: 1;
  grid-row: 1;
}
/* Top-right: details button */
.act-btns-grid .act-details-cta {
  grid-column: 2;
  grid-row: 1;
  margin: 0 !important;
  width: 100%;
}
/* Bottom-left: cart icon button */
.act-btns-grid .act-add-cart-btn {
  grid-column: 1;
  grid-row: 2;
}
/* Bottom-right: הזמינו עכשיו */
.act-btns-grid .act-cta {
  grid-column: 2;
  grid-row: 2;
  margin: 0 !important;
  width: 100%;
}
/* Icon buttons — identical size/style */
.act-icon-btn {
  width: 38px !important;
  height: 38px !important;
  flex-shrink: 0;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-size: .95rem;
  transition: background .18s, transform .15s;
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
}
/* Wishlist icon: navy outline style */
.act-wish-card-btn {
  background: rgba(13,27,62,0.9) !important;
  color: rgba(255,255,255,.85) !important;
}
.act-wish-card-btn svg { stroke: rgba(255,255,255,.8); transition: stroke .18s, fill .18s; }
.act-wish-card-btn:hover { background: rgba(0,82,204,0.95) !important; transform: scale(1.06); }
.act-wish-card-btn:hover svg { stroke: #fff; }
.act-wish-card-btn.wished svg { stroke: #0099FF !important; fill: #0099FF !important; }
/* ================================================================ */

/* ################################################################
   MODAL MASTER OVERRIDES — FINAL AUTHORITY
   Applied last; wins all conflicts.
   ################################################################ */

/* ── All white-bg sections ── */
.modal-section {
  background: #FFFFFF !important;
  border: 1.5px solid rgba(0, 153, 255, 0.15) !important;
  border-radius: 16px !important;
  padding: 18px 20px !important;
  margin: 14px 0 0 !important;
  box-shadow: 0 2px 14px rgba(0,0,0,.07) !important;
  overflow: visible !important;
}

/* Section heading — bold navy with left accent bar */
.modal-section .modal-section-h {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
  margin-bottom: 14px !important;
  padding-right: 10px !important;
  border-right: 3px solid #0099FF !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* Section body text */
.modal-section .modal-section-body,
.modal-section .modal-section-body p,
.modal-section .modal-section-body span,
.modal-section .modal-section-body li,
.modal-section .modal-section-body strong,
.modal-section .modal-section-body em,
.modal-section .modal-section-body div {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  background-clip: unset !important;
  -webkit-background-clip: unset !important;
  background-image: none !important;
  font-size: .9rem !important;
  line-height: 1.75 !important;
}

.modal-section .modal-section-body strong {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-weight: 700 !important;
}

/* Links inside sections */
.modal-section a {
  color: #0052CC !important;
  -webkit-text-fill-color: #0052CC !important;
}

/* ── Exception: glassmorphism dark sections ── */
#mIntro, #mWow, #mValue {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 2px 16px rgba(0,0,0,.12) !important;
}
#mIntro .modal-section-h,
#mWow  .modal-section-h,
#mValue .modal-section-h,
#mIntro .modal-section-body,
#mWow  .modal-section-body,
#mValue .modal-section-body,
#mIntro .modal-section-body *,
#mWow  .modal-section-body *,
#mValue .modal-section-body * {
  color: rgba(255,255,255,.93) !important;
  -webkit-text-fill-color: rgba(255,255,255,.93) !important;
}
#mIntro .modal-section-h,
#mWow  .modal-section-h,
#mValue .modal-section-h {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border-right-color: rgba(0,229,255,.7) !important;
}

/* ── Buttons inside sections stay white text ── */
.modal-section .act-cta,
.modal-section .btn,
.modal-section button:not(.modal-faq-q) {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* ################################################################
   FAQ SECTION — COMPLETE OVERHAUL
   Clean hierarchy, strong contrast, no clipping
   ################################################################ */

#mFaq.modal-section {
  background: #FFFFFF !important;
  padding: 18px 20px !important;
}

.modal-faq-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

/* Each FAQ box */
.modal-faq-item {
  background: #F7F9FC !important;
  border: 1.5px solid #CBD5E1 !important;
  border-radius: 12px !important;
  overflow: visible !important;
  height: auto !important;
  min-height: 0 !important;
}

/* Question row */
.modal-faq-item .modal-faq-q,
.modal-faq-item button.modal-faq-q {
  width: 100% !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  text-align: right !important;
  padding: 14px 16px !important;
  background: none !important;
  border: none !important;
  border-bottom: 1px solid #E2E8F0 !important;
  cursor: pointer !important;
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-size: .9rem !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  white-space: normal !important;
  word-break: break-word !important;
  height: auto !important;
  min-height: 0 !important;
}

.modal-faq-item .modal-faq-q:hover {
  color: #0052CC !important;
  -webkit-text-fill-color: #0052CC !important;
}

/* Hide +/x toggle — all answers shown */
.modal-faq-item .modal-faq-q::after,
.modal-faq-q::after {
  display: none !important;
}

/* Answer — always visible */
.modal-faq-item .modal-faq-ans,
.modal-faq-item .modal-faq-a {
  display: block !important;
  max-height: none !important;
  overflow: visible !important;
  height: auto !important;
  padding: 12px 16px 14px 16px !important;
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  font-size: .87rem !important;
  font-weight: 400 !important;
  line-height: 1.75 !important;
  white-space: normal !important;
  word-break: break-word !important;
}

/* ################################################################
   MODAL HEADER AREA
   ################################################################ */

.act-modal-header,
.modal-product-header {
  background: linear-gradient(135deg, #0D1B3E 0%, #0052CC 100%) !important;
}

/* Title: white on dark header bg */
.act-modal-title,
.act-modal-name,
#mTitle,
.modal-product-title {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-weight: 900 !important;
  font-size: 1.3rem !important;
  background: none !important;
  background-image: none !important;
  background-clip: unset !important;
  -webkit-background-clip: unset !important;
}

/* Subtitle in header */
.act-modal-subtitle {
  color: rgba(255,255,255,.85) !important;
  -webkit-text-fill-color: rgba(255,255,255,.85) !important;
}

/* ################################################################ */

/* ################################################################
   MODAL POPUP — ABSOLUTE FINAL OVERRIDE
   Rule: ALL sections = WHITE background + DARK text. No exceptions.
   ################################################################ */

/* ── Every modal section → white bg ── */
#actModal .modal-section,
#mIntro, #mWow, #mValue,
#mFacts, #mFaq, #mSchedule, #mPriceSection,
#mTechReqs, #mSyllabus, #mGallerySection {
  background: #FFFFFF !important;
  border: 1.5px solid #E2E8F0 !important;
  border-radius: 16px !important;
  padding: 18px 20px !important;
  margin: 14px 0 0 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* ── Section headings: bold navy ── */
#actModal .modal-section .modal-section-h,
#actModal .modal-section-h,
#mIntro .modal-section-h,
#mWow .modal-section-h,
#mValue .modal-section-h {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  border-right: 3px solid #0099FF !important;
  padding-right: 10px !important;
  margin-bottom: 14px !important;
  background: none !important;
  background-image: none !important;
}

/* ── Section body: dark gray ── */
#actModal .modal-section .modal-section-body,
#actModal .modal-section .modal-section-body *,
#mIntro .modal-section-body, #mIntro .modal-section-body *,
#mWow  .modal-section-body, #mWow  .modal-section-body *,
#mValue .modal-section-body, #mValue .modal-section-body * {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  background-clip: unset !important;
  -webkit-background-clip: unset !important;
  background-image: none !important;
}

/* ── WOW items ── */
#actModal .wow-item {
  background: #F0F7FF !important;
  border: 1px solid #BFDBFE !important;
  color: #1E3A5F !important;
}
#actModal .wow-item,
#actModal .wow-item * {
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
}
#actModal .wow-item .wow-num {
  background: linear-gradient(135deg, #0052CC, #0099FF) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* ── Value bullets ── */
#actModal .modal-bullets,
#actModal .modal-bullets li,
#actModal .modal-bullets li * {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
}
#actModal .modal-bullets li::before {
  color: #0099FF !important;
  -webkit-text-fill-color: #0099FF !important;
}

/* ── Quick Facts (מבט מהיר) ── */
#actModal .fact-card {
  background: #F8FAFF !important;
  border: 1px solid #BFDBFE !important;
  border-radius: 10px !important;
}
#actModal .fact-label {
  color: #6B7280 !important;
  -webkit-text-fill-color: #6B7280 !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .4px !important;
}
#actModal .fact-value {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-size: .9rem !important;
  font-weight: 700 !important;
}

/* ── FAQ: always white bg, dark readable text ── */
#actModal .modal-faq-item {
  background: #F8FAFF !important;
  border: 1.5px solid #CBD5E1 !important;
  border-radius: 12px !important;
  overflow: visible !important;
  height: auto !important;
}
#actModal .modal-faq-q,
#actModal .modal-faq-item button.modal-faq-q {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-weight: 700 !important;
  font-size: .9rem !important;
  white-space: normal !important;
  word-break: break-word !important;
  height: auto !important;
  padding: 14px 16px !important;
  border-bottom: 1px solid #E2E8F0 !important;
}
#actModal .modal-faq-q::after { display: none !important; }
#actModal .modal-faq-ans,
#actModal .modal-faq-a {
  display: block !important;
  max-height: none !important;
  overflow: visible !important;
  height: auto !important;
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  padding: 12px 16px 14px !important;
  font-size: .87rem !important;
  font-weight: 400 !important;
  line-height: 1.75 !important;
  white-space: normal !important;
  word-break: break-word !important;
}

/* ── Schedule rows ── */
#actModal .schedule-row,
#actModal .sch-label,
#actModal .sch-val,
#actModal .schedule-list *  {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
}
#actModal .sch-label {
  color: #0D1B3E !important;
  -webkit-text-fill-color: #0D1B3E !important;
  font-weight: 700 !important;
}

/* ── Pricing table ── */
#actModal .price-row,
#actModal .price-tier,
#actModal .price-table *:not(.btn):not(.act-cta):not(button) {
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
}

/* ── Keep action buttons (CTAs) white text ── */
#actModal .act-cta,
#actModal .btn-wa-modal,
#actModal .modal-sticky-cta .btn,
#actModal button.btn,
#actModal a.btn {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* ################################################################ */

/* ################################################################
   FIX 1: TOP TAGLINE BOX — white bg, dark text
   FIX 2: QUICK FACTS GRID — control-panel layout
   ################################################################ */

/* ── 1. act-modal-tagline: Liquid Glass light ── */
.act-modal-tagline,
#mTagline {
  background: #FFFFFF !important;
  border: 1.5px solid rgba(0,153,255,.2) !important;
  border-radius: 14px !important;
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
  font-size: .9rem !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  padding: 12px 16px !important;
  margin: 10px 16px 0 !important;
  box-shadow: 0 2px 10px rgba(0,153,255,.08) !important;
  font-style: normal !important;
  text-align: right !important;
}

/* ── 2. Facts grid: rebuilt as dashboard ── */
#mFacts.modal-section {
  padding: 18px 20px 14px !important;
}
.facts-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}

/* Each fact card — visible box */
#actModal .fact-card,
.fact-card {
  background: #FFFFFF !important;
  border: 1.5px solid #BFDBFE !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  min-height: 0 !important;
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  box-shadow: 0 1px 6px rgba(0,100,200,.07) !important;
}

/* Label row: teal accent, soft teal background — like price table labels */
#actModal .fact-label,
.fact-label {
  color: #0077AA !important;
  -webkit-text-fill-color: #0077AA !important;
  font-size: .7rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .5px !important;
  margin-bottom: 6px !important;
  padding: 4px 8px !important;
  background: rgba(0,180,255,.13) !important;
  border-radius: 5px !important;
  border-bottom: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}

/* Alternating fact-card backgrounds — like price rows */
#actModal .fact-card:nth-child(odd),
.facts-grid .fact-card:nth-child(odd) {
  background: rgba(0,229,255,.07) !important;
  border-color: rgba(0,153,255,.35) !important;
}
#actModal .fact-card:nth-child(even),
.facts-grid .fact-card:nth-child(even) {
  background: #FFFFFF !important;
  border-color: #BFDBFE !important;
}

/* Value: neutral dark */
#actModal .fact-value,
.fact-value {
  color: #1E3A5F !important;
  -webkit-text-fill-color: #1E3A5F !important;
  font-size: .88rem !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  word-break: break-word !important;
}

/* Fact icon */
#actModal .fact-icon,
.fact-icon {
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0 !important;
  stroke: #0099FF !important;
}

/* ################################################################ */

/* ################################################################
   CARD ICON BUTTONS — clean floating icons, teal, no bg
   ################################################################ */

/* Column 1 wrapper: stack icons tightly */
.act-btns-grid {
  grid-template-columns: 34px 1fr !important;
  gap: 5px !important;
}

/* Both icon buttons: transparent, floating */
.act-icon-btn,
.act-wish-card-btn,
.act-add-cart-btn {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 8px !important;
  width: 34px !important;
  height: 34px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  color: #0099FF !important;
  font-size: 1.05rem !important;
  cursor: pointer !important;
  transition: color .18s, transform .15s !important;
}

/* Hover: slightly darker teal */
.act-icon-btn:hover,
.act-wish-card-btn:hover,
.act-add-cart-btn:hover {
  background: rgba(0,153,255,.1) !important;
  color: #0066CC !important;
  transform: scale(1.1) !important;
}

/* Cart icon color */
.act-add-cart-btn i,
.act-add-cart-btn .fa-shopping-cart {
  color: #0099FF !important;
  font-size: 1rem !important;
}
.act-add-cart-btn:hover i { color: #0066CC !important; }

/* Cart "added" state: keep green */
.act-add-cart-btn.added,
.act-add-cart-btn.added i { color: #0099FF !important; }

/* Wishlist heart SVG: teal */
.act-wish-card-btn svg {
  stroke: #0099FF !important;
  width: 18px !important;
  height: 18px !important;
  transition: stroke .18s, fill .18s !important;
}
.act-wish-card-btn:hover svg { stroke: #0066CC !important; }
.act-wish-card-btn.wished svg {
  stroke: #0099FF !important;
  fill: #0099FF !important;
}

/* Reduce gap between the two icon cells vertically */
.act-btns-grid .act-wish-card-btn {
  margin-bottom: -2px !important;
}
.act-btns-grid .act-add-cart-btn {
  margin-top: -2px !important;
}

/* ################################################################ */

/* ################################################################
   CARD POLISH — spacing, equal buttons, icon alignment
   ################################################################ */

/* ── 1. Reduce card body padding & internal spacing ── */
.act-body {
  padding: 12px 14px 12px !important;
  gap: 0 !important;
}
.act-name {
  margin-bottom: 4px !important;
  font-size: 1rem !important;
}
.act-desc {
  margin-bottom: 8px !important;
  font-size: .82rem !important;
  line-height: 1.45 !important;
}
.act-pills {
  margin-bottom: 7px !important;
  gap: 4px !important;
}
.act-price-tag {
  margin-top: 2px !important;
  margin-bottom: 8px !important;
}

/* ── 2. Equal-height main buttons via explicit height ── */
.act-btns-grid {
  display: grid !important;
  grid-template-columns: 36px 1fr !important;
  grid-template-rows: 36px 36px !important;
  gap: 5px !important;
  row-gap: 5px !important;
  column-gap: 6px !important;
  margin-top: 0 !important;
  align-items: stretch !important;
}

/* Details button — same height as הזמינו עכשיו */
.act-btns-grid .act-details-cta {
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 12px !important;
  font-size: .84rem !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin: 0 !important;
}

/* הזמינו עכשיו — same height */
.act-btns-grid .act-cta {
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 12px !important;
  font-size: .84rem !important;
  margin: 0 !important;
  text-align: center !important;
}

/* ── 3. Icon buttons: larger, zero gap, perfect alignment ── */
.act-btns-grid .act-icon-btn,
.act-btns-grid .act-wish-card-btn,
.act-btns-grid .act-add-cart-btn {
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 1.1rem !important;
}

/* Heart SVG: bigger */
.act-btns-grid .act-wish-card-btn svg {
  width: 20px !important;
  height: 20px !important;
  stroke-width: 2 !important;
}

/* Cart icon: bigger */
.act-btns-grid .act-add-cart-btn i {
  font-size: 1.05rem !important;
}

/* Grid row positions — icon aligned with its button */
.act-btns-grid .act-wish-card-btn { grid-column: 1; grid-row: 1; }
.act-btns-grid .act-details-cta   { grid-column: 2; grid-row: 1; }
.act-btns-grid .act-add-cart-btn  { grid-column: 1; grid-row: 2; }
.act-btns-grid .act-cta           { grid-column: 2; grid-row: 2; }

/* ################################################################ */

/* ── Icon size +18% ── */
.act-btns-grid .act-wish-card-btn svg {
  width: 24px !important;
  height: 24px !important;
}
.act-btns-grid .act-add-cart-btn i {
  font-size: 1.24rem !important;
}

/* ================================================================
   AUTH MODAL + NAV AUTH BUTTON — KidsStar Firebase Auth UI
   ================================================================ */
.ks-nav-auth-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 5px 14px; border-radius: 50px;
  border: 1.5px solid rgba(255,255,255,.5);
  background: transparent; color: #fff;
  font-size: .82rem; font-weight: 700;
  cursor: pointer; transition: all .2s;
  white-space: nowrap;
}
.ks-nav-auth-btn:hover { background: rgba(0,153,255,.25); border-color: #fff; }
.ks-nav-auth-avatar {
  width: 26px; height: 26px; border-radius: 50%;
  object-fit: cover; display: none;
  border: 2px solid #0099FF;
}

/* Auth Modal */
.ks-auth-modal {
  position: fixed; inset: 0; z-index: 20000;
  background: rgba(4,14,40,.6); backdrop-filter: blur(6px);
  display: none; align-items: center; justify-content: center;
  direction: rtl;
}
.ks-auth-modal.open { display: flex; }
.ks-auth-box {
  background: #fff; border-radius: 20px;
  padding: 32px 28px; width: 340px; max-width: 95vw;
  box-shadow: 0 8px 40px rgba(0,0,0,.22);
  position: relative; text-align: center;
}
.ks-auth-close {
  position: absolute; top: 12px; left: 14px;
  background: none; border: none; font-size: 1.2rem;
  cursor: pointer; color: #6B7280;
}
.ks-auth-title { font-size: 1.4rem; font-weight: 900; color: #0D1B3E; margin: 8px 0 4px; }
.ks-auth-sub   { font-size: .85rem; color: #6B7280; margin-bottom: 18px; }
.ks-auth-tabs  { display: flex; gap: 4px; margin-bottom: 16px; background: #F1F5F9; border-radius: 10px; padding: 4px; }
.ks-auth-tab   { flex: 1; padding: 7px; border: none; border-radius: 8px; background: transparent; font-weight: 700; font-size: .85rem; color: #6B7280; cursor: pointer; }
.ks-auth-tab.active { background: #fff; color: #0D1B3E; box-shadow: 0 1px 6px rgba(0,0,0,.1); }
.ks-auth-box form { display: flex; flex-direction: column; gap: 10px; }
.ks-auth-box input {
  padding: 10px 14px; border: 1.5px solid #CBD5E1; border-radius: 10px;
  font-size: .9rem; text-align: right; outline: none;
  transition: border-color .2s;
}
.ks-auth-box input:focus { border-color: #0099FF; }
.ks-auth-submit {
  padding: 12px; border: none; border-radius: 12px;
  background: linear-gradient(135deg, #0052CC, #0099FF);
  color: #fff; font-size: 1rem; font-weight: 800; cursor: pointer;
  transition: opacity .2s;
}
.ks-auth-submit:hover { opacity: .9; }
.ks-auth-divider { display: flex; align-items: center; gap: 10px; margin: 14px 0; color: #9CA3AF; font-size: .8rem; }
.ks-auth-divider::before, .ks-auth-divider::after { content:''; flex: 1; height: 1px; background: #E2E8F0; }
.ks-auth-google {
  width: 100%; padding: 10px; border: 1.5px solid #CBD5E1; border-radius: 12px;
  background: #fff; font-size: .88rem; font-weight: 700; color: #374151;
  cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px;
  transition: background .2s;
}
.ks-auth-google:hover { background: #F8FAFF; }
.ks-auth-err { background: #FEE2E2; color: #B91C1C; border-radius: 8px; padding: 8px 12px; font-size: .85rem; margin-bottom: 6px; }

/* ================================================================
   CART UPGRADE — Grouped, sortable, save-for-later
   ================================================================ */
.ks-cart-panel {
  position: fixed; top: 0; left: 0; width: 420px; max-width: 100vw;
  height: 100vh; background: #fff; z-index: 15000;
  box-shadow: 4px 0 32px rgba(0,0,0,.18); display: flex; flex-direction: column;
  transform: translateX(-110%); transition: transform .3s ease;
  direction: rtl;
}
.ks-cart-panel.open { transform: translateX(0); }
.ks-cart-overlay {
  position: fixed; inset: 0; background: rgba(4,14,40,.4);
  backdrop-filter: blur(3px); z-index: 14999; display: none;
}
.ks-cart-overlay.open { display: block; }

/* Header */
.ks-cart-header {
  padding: 18px 20px 14px; background: linear-gradient(135deg,#0D1B3E,#0052CC);
  color: #fff; display: flex; align-items: center; justify-content: space-between; flex-shrink: 0;
}
.ks-cart-title { font-size: 1.1rem; font-weight: 900; display: flex; align-items: center; gap: 8px; }
.ks-cart-close { background: none; border: none; color: rgba(255,255,255,.7); font-size: 1.3rem; cursor: pointer; }

/* Toolbar */
.ks-cart-toolbar {
  padding: 10px 16px; background: #F8FAFF; border-bottom: 1px solid #E2E8F0;
  display: flex; align-items: center; gap: 8px; flex-shrink: 0;
}
.ks-cart-sort {
  flex: 1; padding: 6px 10px; border: 1.5px solid #CBD5E1; border-radius: 8px;
  font-size: .82rem; background: #fff; color: #374151; outline: none;
}
.ks-cart-sort:focus { border-color: #0099FF; }
.ks-cart-count-badge {
  background: #0099FF; color: #fff; border-radius: 50px;
  padding: 3px 10px; font-size: .78rem; font-weight: 800;
}

/* Items list */
.ks-cart-body { flex: 1; overflow-y: auto; padding: 12px 14px; }
.ks-cart-group-label {
  font-size: .72rem; font-weight: 800; color: #6B7280; text-transform: uppercase;
  letter-spacing: .5px; margin: 10px 0 6px; padding-bottom: 4px;
  border-bottom: 1px solid #E2E8F0;
}
.ks-cart-item {
  display: flex; gap: 12px; align-items: flex-start;
  padding: 12px 14px; background: #fff; border: 1.5px solid #E2E8F0;
  border-radius: 12px; margin-bottom: 10px; transition: border-color .2s, box-shadow .2s;
}
.ks-cart-item:hover { border-color: #BFDBFE; box-shadow: 0 4px 14px rgba(0,153,255,.08); }
.ks-cart-item.saved-later { opacity: .6; background: #F8FAFF; border-style: dashed; }
.ks-cart-item-img { width: 58px; height: 58px; border-radius: 10px; object-fit: cover; flex-shrink: 0; background: #E2E8F0; }
.ks-cart-item-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 9px; }
/* Header: name (right) + price (left) */
.ks-cart-item-head {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 10px;
}
.ks-cart-item-titlewrap { flex: 1; min-width: 0; }
.ks-cart-item-name { font-size: .92rem; font-weight: 800; color: #0D1B3E; line-height: 1.3; word-break: break-word; }
.ks-cart-item-cat  { font-size: .72rem; color: #6B7280; margin-top: 3px; }
.ks-cart-item-pricewrap {
  display: flex; flex-direction: column; align-items: flex-start; flex-shrink: 0;
  text-align: left; gap: 2px; max-width: 48%;
}
.ks-cart-item-price{ font-size: 1.05rem; font-weight: 900; color: #0099FF; white-space: nowrap; line-height: 1.15; }
.ks-cart-price-breakdown { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; }
.ks-cart-price-breakdown > * { white-space: normal; }
/* Qty row */
.ks-cart-qty-row {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.ks-cart-qty-label { font-size: .72rem; color: #6B7280; font-weight: 600; }
.ks-cart-qty-ctrl {
  display: flex; align-items: center; gap: 0; border: 1.5px solid #CBD5E1; border-radius: 8px; overflow: hidden;
}
.ks-cart-qty-btn {
  width: 26px; height: 26px; border: none; background: #F1F5F9; font-size: 1rem; font-weight: 900;
  color: #0052CC; cursor: pointer; line-height: 1; transition: background .15s;
}
.ks-cart-qty-btn:hover { background: #BFDBFE; }
.ks-cart-qty-num {
  min-width: 26px; text-align: center; font-size: .85rem; font-weight: 800; color: #0D1B3E;
  padding: 0 4px; background: #fff;
}
.ks-cart-unit-price { font-size: .72rem; color: #6B7280; font-weight: 400; margin-right: 4px; }
/* Notes row */
.ks-cart-notes-row { margin-top: 6px; }
.ks-cart-notes-input {
  width: 100%; padding: 5px 9px; border: 1.5px solid #E2E8F0; border-radius: 8px;
  font-size: .75rem; color: #374151; background: #F8FAFF; outline: none;
  font-family: inherit; transition: border-color .2s; box-sizing: border-box;
  direction: rtl;
}
.ks-cart-notes-input:focus { border-color: #0099FF; background: #fff; }
.ks-cart-notes-input::placeholder { color: #9CA3AF; }
/* Base kids input in cart */
.ks-cart-kids-base-input {
  width: 58px; padding: 3px 6px; border: 1.5px solid #CBD5E1; border-radius: 6px;
  font-size: .75rem; font-weight: 700; color: #0D1B3E; background: #F8FAFF;
  outline: none; font-family: inherit; text-align: center; direction: rtl;
}
.ks-cart-kids-base-input:focus { border-color: #0099FF; background: #fff; }
.ks-cart-kids-base-input::placeholder { color: #9CA3AF; font-weight: 400; font-size: .68rem; }
/* Kids cost note */
.ks-cart-kids-cost { font-size: .68rem; color: #059669; font-weight: 700; white-space: nowrap; }
/* Per-round participant rows */
.ks-cart-perround-wrap {
  margin-top: 6px; padding: 6px 8px; background: #F0F9FF;
  border-radius: 8px; border: 1px solid #BAE6FD; font-size: .72rem;
}
.ks-cart-perround-wrap .ks-cart-qty-row { margin-bottom: 2px; }
.ks-cart-perround-wrap .ks-cart-kids-base-input { width: 52px; border-color: #7DD3FC; }
.ks-cart-perround-wrap .ks-cart-qty-label { min-width: 44px; }
.ks-cart-item-actions { display: flex; gap: 4px; margin-top: 6px; }
.ks-cart-item-btn {
  padding: 4px 9px; border-radius: 6px; border: 1px solid #CBD5E1;
  background: #F8FAFF; font-size: .72rem; font-weight: 700; color: #374151;
  cursor: pointer; transition: background .15s;
}
.ks-cart-item-btn:hover { background: #E0F2FE; border-color: #0099FF; color: #0052CC; }
.ks-cart-item-btn.remove { border-color: #FCA5A5; color: #DC2626; }
.ks-cart-item-btn.remove:hover { background: #FEE2E2; }

/* Saved for later section */
.ks-cart-saved-header {
  font-size: .82rem; font-weight: 700; color: #6B7280; margin: 14px 0 8px;
  display: flex; align-items: center; gap: 8px;
}

/* Footer */
.ks-cart-footer {
  padding: 16px 18px; background: #fff; border-top: 2px solid #E2E8F0; flex-shrink: 0;
}
.ks-cart-total-row {
  display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;
}
.ks-cart-total-label { font-size: .9rem; color: #6B7280; font-weight: 600; }
.ks-cart-total-amount { font-size: 1.2rem; font-weight: 900; color: #0D1B3E; }
.ks-cart-footer-btns {
  display: flex; gap: 10px;
}
.ks-cart-checkout-btn {
  flex: 1; padding: 13px 8px; border: none; border-radius: 14px;
  background: linear-gradient(135deg, #0052CC, #0099FF);
  color: #fff; font-size: .92rem; font-weight: 800; cursor: pointer;
  transition: opacity .2s;
}
.ks-cart-checkout-btn:hover { opacity: .9; }
.ks-cart-continue-btn {
  flex: 1; padding: 13px 8px; border: 2px solid #CBD5E1; border-radius: 14px;
  background: #fff; color: #374151; font-size: .92rem; font-weight: 700; cursor: pointer;
  transition: background .2s, border-color .2s;
}
.ks-cart-continue-btn:hover { background: #F1F5F9; border-color: #0099FF; color: #0052CC; }
.ks-cart-empty {
  text-align: center; padding: 40px 20px; color: #9CA3AF;
}

/* ══ Cart Summary Banner (booking step 2) ══ */
.ksb-banner {
  background: linear-gradient(135deg,#EFF6FF,#E0F2FE);
  border: 1.5px solid #BFDBFE; border-radius: 16px;
  padding: 0; margin-bottom: 20px; direction: rtl;
  overflow: hidden; font-size: .82rem;
}
.ksb-header {
  display: flex; justify-content: space-between; align-items: center;
  padding: 12px 16px; background: rgba(0,82,204,.07);
  border-bottom: 1px solid #BFDBFE; font-weight: 800; color: #0052CC; font-size: .88rem;
}
.ksb-count { font-weight: 600; color: #0099FF; }
.ksb-close-btn {
  background: none; border: none; cursor: pointer; color: #6B7280;
  font-size: 1.2rem; line-height: 1; padding: 0 4px;
}
.ksb-row {
  display: flex; align-items: flex-start; gap: 12px;
  padding: 12px 16px; border-bottom: 1px solid rgba(191,219,254,.5);
  background: #fff;
}
.ksb-row:last-child { border-bottom: none; }
.ksb-img {
  width: 56px; height: 56px; border-radius: 10px; object-fit: cover;
  flex-shrink: 0; border: 1.5px solid #DBEAFE;
}
.ksb-info { flex: 1; }
.ksb-name { font-size: .88rem; font-weight: 800; color: #0D1B3E; margin-bottom: 2px; }
.ksb-cat  { font-size: .72rem; color: #6B7280; margin-bottom: 8px; }
.ksb-controls { display: flex; flex-wrap: wrap; gap: 8px; }
.ksb-ctrl-group {
  display: flex; align-items: center; gap: 6px;
  background: #F0F7FF; border: 1px solid #BFDBFE;
  border-radius: 8px; padding: 4px 8px;
}
.ksb-ctrl-label { font-size: .7rem; font-weight: 700; color: #374151; white-space: nowrap; }
.ksb-ctrl-label i { color: #0099FF; margin-left: 4px; }
.ksb-stepper {
  display: flex; align-items: center; gap: 0;
  border: 1px solid #CBD5E1; border-radius: 6px; overflow: hidden;
}
.ksb-step-btn {
  width: 22px; height: 22px; border: none; background: #E0F2FE;
  font-size: .9rem; font-weight: 900; color: #0052CC;
  cursor: pointer; line-height: 1; transition: background .15s; padding: 0;
}
.ksb-step-btn:hover { background: #BFDBFE; }
.ksb-step-num {
  min-width: 22px; text-align: center; font-size: .82rem; font-weight: 800;
  color: #0D1B3E; background: #fff; padding: 0 2px;
}
.ksb-note-input {
  width: 110px; padding: 3px 7px; border: none; border-radius: 5px;
  font-size: .7rem; color: #374151; background: #fff; outline: none;
  font-family: inherit; direction: rtl;
}
.ksb-note-input::placeholder { color: #9CA3AF; }
/* Base kids input */
.ksb-kids-input {
  width: 72px; padding: 3px 7px; border: none; border-radius: 5px;
  font-size: .75rem; font-weight: 700; color: #0D1B3E; background: #fff; outline: none;
  font-family: inherit; direction: rtl; text-align: center;
  border: 1px solid #CBD5E1;
}
.ksb-kids-input:focus { border-color: #0099FF; }
.ksb-kids-input::placeholder { color: #9CA3AF; font-weight: 400; }
/* Extra-kids rate label */
.ksb-ctrl-rate {
  font-size: .65rem; color: #059669; font-weight: 700; white-space: nowrap;
  background: #D1FAE5; border-radius: 4px; padding: 1px 4px;
}
/* Price column */
.ksb-price-col {
  display: flex; flex-direction: column; align-items: flex-end;
  min-width: 88px; text-align: left; flex-shrink: 0;
}
.ksb-item-total {
  font-size: 1.05rem; font-weight: 900; color: #0052CC;
}
.ksb-unit-label { font-size: .65rem; color: #6B7280; margin-top: 3px; }
.ksb-kid-note   { font-size: .68rem; color: #059669; font-weight: 700; margin-top: 3px; }
/* Footer */
.ksb-footer {
  padding: 12px 16px; background: rgba(0,82,204,.06);
  border-top: 1.5px solid #BFDBFE;
  display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px;
}
.ksb-kids-note { font-size: .72rem; color: #6B7280; }
.ksb-kids-note i { color: #0099FF; margin-left: 4px; }
.ksb-total-row {
  display: flex; align-items: center; gap: 10px;
  font-size: .9rem; font-weight: 700; color: #374151;
}
.ksb-total-row strong { font-size: 1.05rem; color: #0052CC; font-weight: 900; }
.ks-cart-empty i { font-size: 3rem; margin-bottom: 12px; color: #CBD5E1; }
/* ================================================================
   WISHLIST UPGRADE — Folders, add-all, WhatsApp export
   ================================================================ */
.ks-wish-panel {
  position: fixed; top: 0; right: 0; width: 440px; max-width: 100vw;
  height: 100vh; background: #fff; z-index: 15000;
  box-shadow: -4px 0 32px rgba(0,0,0,.18); display: flex; flex-direction: column;
  transform: translateX(110%); transition: transform .3s ease; direction: rtl;
}
.ks-wish-panel.open { transform: translateX(0); }
.ks-wish-header {
  padding: 18px 20px 14px; background: linear-gradient(135deg,#0D1B3E,#0052CC);
  color: #fff; display: flex; align-items: center; justify-content: space-between; flex-shrink: 0;
}
.ks-wish-title { font-size: 1.1rem; font-weight: 900; display: flex; align-items: center; gap: 8px; }
.ks-wish-close { background: none; border: none; color: rgba(255,255,255,.7); font-size: 1.3rem; cursor: pointer; }
.ks-wish-folders {
  display: flex; gap: 6px; padding: 10px 14px; background: #F8FAFF;
  border-bottom: 1px solid #E2E8F0; overflow-x: auto; flex-shrink: 0;
}
.ks-wish-folder-tab {
  padding: 5px 12px; border-radius: 50px; border: 1.5px solid #CBD5E1;
  background: #fff; font-size: .78rem; font-weight: 700; color: #374151;
  cursor: pointer; white-space: nowrap; transition: all .18s; flex-shrink: 0;
}
.ks-wish-folder-tab.active { background: #0099FF; border-color: #0099FF; color: #fff; }
.ks-wish-new-folder-btn {
  padding: 5px 10px; border-radius: 50px; border: 1.5px dashed #CBD5E1;
  background: transparent; font-size: .78rem; color: #6B7280; cursor: pointer; white-space: nowrap; flex-shrink: 0;
}
.ks-wish-toolbar {
  padding: 8px 14px; display: flex; gap: 8px; flex-shrink: 0; border-bottom: 1px solid #E2E8F0; flex-wrap: wrap;
}
.ks-wish-action-btn {
  padding: 5px 12px; border-radius: 8px; border: 1.5px solid #CBD5E1;
  background: #F8FAFF; font-size: .78rem; font-weight: 700; color: #374151; cursor: pointer;
  display: flex; align-items: center; gap: 5px; transition: all .15s;
}
.ks-wish-action-btn:hover { background: #E0F2FE; border-color: #0099FF; color: #0052CC; }
.ks-wish-action-btn.wa-btn { border-color: #25D366; color: #25D366; }
.ks-wish-action-btn.wa-btn:hover { background: #F0FDF4; }
.ks-wish-body { flex: 1; overflow-y: auto; padding: 12px 14px; }
.ks-wish-item {
  display: flex; gap: 10px; align-items: center;
  padding: 10px 12px; background: #fff; border: 1.5px solid #E2E8F0;
  border-radius: 12px; margin-bottom: 8px; transition: border-color .2s;
}
.ks-wish-item:hover { border-color: #BFDBFE; }
.ks-wish-item-img { width: 48px; height: 48px; border-radius: 8px; object-fit: cover; flex-shrink: 0; background: #E2E8F0; }
.ks-wish-item-info { flex: 1; }
.ks-wish-item-name  { font-size: .88rem; font-weight: 700; color: #0D1B3E; }
.ks-wish-item-cat   { font-size: .72rem; color: #6B7280; margin-top: 1px; }
.ks-wish-item-price { font-size: .85rem; font-weight: 800; color: #0099FF; margin-top: 3px; }
.ks-wish-item-btns  { display: flex; gap: 4px; }
.ks-wish-item-btn {
  padding: 4px 8px; border-radius: 6px; border: 1px solid #CBD5E1;
  background: #F8FAFF; font-size: .7rem; font-weight: 700; color: #374151; cursor: pointer;
}
.ks-wish-item-btn.add { border-color: #0099FF; color: #0052CC; }
.ks-wish-item-btn.add:hover { background: #E0F2FE; }
.ks-wish-item-btn.rem { border-color: #FCA5A5; color: #DC2626; }
.ks-wish-item-btn.rem:hover { background: #FEE2E2; }
.ks-wish-empty { text-align: center; padding: 40px 20px; color: #9CA3AF; }
/* ================================================================
   UPSELL / FOMO / VIRTUAL SCROLL
   ================================================================ */

/* FOMO badge on cards */
.ks-fomo-badge {
  position: absolute; top: 8px; left: 8px; z-index: 4;
  padding: 3px 8px; border-radius: 6px; font-size: .65rem; font-weight: 800;
  animation: ks-fomo-pulse 2s ease-in-out infinite;
  pointer-events: none;
}
.ks-fomo-badge.fomo-hot  { background: var(--cyan,#00B4D8); color: #0a1628; }
.ks-fomo-badge.fomo-sale { background: var(--navy,#1a3a6b); color: #fff; }
.ks-fomo-badge.fomo-last { background: var(--blue,#1a56db); color: #fff; }
@keyframes ks-fomo-pulse {
  0%,100% { transform: scale(1); }
  50%      { transform: scale(1.06); }
}

/* Upsell strip inside cart panel */
.ks-upsell-strip {
  padding: 9px 12px 10px; border-top: 1px solid #E2E8F0; background: #F8FAFF; flex-shrink: 0;
}
.ks-upsell-label {
  font-size: .68rem; font-weight: 800; color: #6B7280; text-transform: uppercase;
  letter-spacing: .4px; margin-bottom: 7px;
}
.ks-upsell-items {
  display: flex; gap: 7px; overflow-x: auto; padding-bottom: 3px;
}
.ks-upsell-item {
  flex-shrink: 0; width: 80px; background: #fff; border: 1.5px solid #E2E8F0;
  border-radius: 8px; overflow: hidden; cursor: pointer; transition: border-color .2s;
}
.ks-upsell-item:hover { border-color: #0099FF; }
.ks-upsell-item img { width: 100%; height: 48px; object-fit: cover; }
.ks-upsell-item-name { font-size: .62rem; font-weight: 700; color: #0D1B3E; padding: 4px 5px 2px; line-height: 1.25; }
.ks-upsell-item-price{ font-size: .6rem; color: #0099FF; font-weight: 800; padding: 0 5px 4px; }
.ks-upsell-add {
  display: flex; align-items: center; justify-content: center; gap: 3px;
  padding: 3px 5px; margin: 0 5px 5px; background: #EFF6FF; border: 1px solid #BFDBFE;
  border-radius: 5px; font-size: .58rem; font-weight: 700; color: #0052CC; cursor: pointer;
}
.ks-upsell-add:hover { background: #0099FF; color: #fff; border-color: #0099FF; }

/* Virtual scroll container */
.ks-vscroll-outer { overflow-y: auto; }
.ks-vscroll-spacer-top, .ks-vscroll-spacer-bot { width: 100%; }

/* ================================================================
   MODAL — "על הסדנה" intro sub-headings & lead sentences
   ================================================================ */

/* Sub-heading line detected by JS */
.intro-subheading {
  font-size: .85rem !important;
  font-weight: 800 !important;
  color: #0A2540 !important;
  -webkit-text-fill-color: #0A2540 !important;
  border-right: 3px solid #0099CC !important;
  padding: 6px 10px 6px 4px !important;
  margin: 16px 0 6px !important;
  background: rgba(0,153,255,.05) !important;
  border-radius: 0 8px 8px 0 !important;
  line-height: 1.4 !important;
  display: block !important;
}

/* Bold lead text (first clause of each paragraph) */
.intro-lead {
  font-weight: 700 !important;
  color: #0A2540 !important;
  -webkit-text-fill-color: #0A2540 !important;
}

/* Paragraph spacing inside intro */
#mIntroBody .modal-section-body p {
  margin-bottom: 11px !important;
  line-height: 1.75 !important;
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
}

/* Facts-grid icon stroke color (teal) */
#actModal svg.fact-icon { stroke: #0099CC !important; }

/* ═══════════════════════════════════════════════════════════
   Assistant Facilitator Modal  (.ks-assistant-overlay)
   ═══════════════════════════════════════════════════════════ */
.ks-assistant-overlay {
  position: fixed; inset: 0; z-index: 99999;
  background: rgba(10,37,64,.55); backdrop-filter: blur(3px);
  display: flex; align-items: center; justify-content: center;
  padding: 16px; direction: rtl;
}
.ks-assistant-box {
  background: #fff; border-radius: 16px; max-width: 420px; width: 100%;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  overflow: hidden; animation: ks-assist-pop .2s cubic-bezier(.34,1.56,.64,1);
}
@keyframes ks-assist-pop {
  from { transform: scale(.88); opacity: 0; }
  to   { transform: scale(1);   opacity: 1; }
}
.ks-assistant-header {
  background: linear-gradient(135deg,#FF6B2C,#FF9500);
  color: #fff; font-size: 1.05rem; font-weight: 800;
  padding: 16px 20px; display: flex; align-items: center; gap: 10px;
}
.ks-assistant-body { padding: 18px 20px; }
.ks-assistant-subtitle {
  font-size: .85rem; font-weight: 700; color: #0D1B3E;
  margin: 0 0 8px; background: #F0F4FF; border-radius: 8px; padding: 6px 10px;
}
.ks-assistant-explain {
  font-size: .82rem; color: #374151; margin: 0 0 14px; line-height: 1.55;
}
.ks-assistant-rate-box {
  background: #FFF8F0; border: 1.5px solid #FED7AA; border-radius: 10px; padding: 12px 14px;
}
.ks-assistant-rate-row {
  display: flex; justify-content: space-between; align-items: center;
  font-size: .8rem; color: #374151; padding: 4px 0;
  border-bottom: 1px solid #FEE5CC;
}
.ks-assistant-rate-row:last-child { border-bottom: none; }
.ks-assistant-rate-row.total { font-size: .88rem; padding-top: 8px; }
.ks-assistant-rate-row.total span:last-child { color: #DC2626; font-size: 1rem; }
.ks-assistant-footer {
  padding: 14px 20px 18px; display: flex; flex-direction: column; gap: 8px;
}
.ks-assistant-btn {
  width: 100%; padding: 11px 16px; border-radius: 10px; border: none;
  font-size: .88rem; font-weight: 700; cursor: pointer; font-family: inherit;
  transition: filter .15s, transform .1s;
}
.ks-assistant-btn:hover { filter: brightness(1.07); }
.ks-assistant-btn:active { transform: scale(.97); }
.ks-assistant-btn.confirm {
  background: linear-gradient(135deg,#059669,#10B981); color: #fff;
}
.ks-assistant-btn.cancel {
  background: #F1F5F9; color: #64748B; border: 1px solid #CBD5E1;
}
/* Assistant badge in cart item & banner */
.ks-cart-assistant-badge {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: .68rem; font-weight: 700; color: #FF6B2C;
  background: #FFF8F0; border: 1px solid #FED7AA; border-radius: 5px;
  padding: 1px 6px; white-space: nowrap; margin-right: 4px;
}
.ksb-assistant-note {
  font-size: .72rem; font-weight: 700; color: #FF6B2C;
  margin-top: 3px; display: flex; align-items: center; gap: 4px;
}

/* ═══════════════════════════════════════════════════════════
   Booking AI Assistant Widget  (#ksAiWidget)
   ═══════════════════════════════════════════════════════════ */
#ksAiWidget {
  direction: rtl; margin: 14px 0 10px;
  border-radius: 14px; border: 1.5px solid #99D6EA;
  background: linear-gradient(135deg, #F0FBFF 0%, #E8F4FF 100%);
  box-shadow: 0 4px 18px rgba(0,153,255,.1);
  overflow: hidden; font-family: inherit;
}
.ksai-header {
  display: flex; align-items: center; gap: 12px;
  padding: 11px 16px; background: linear-gradient(135deg,#0099CC,#0066AA);
  color: #fff;
}
.ksai-header i { font-size: 1.2rem; flex-shrink: 0; }
.ksai-header-text { display: flex; flex-direction: column; gap: 1px; }
.ksai-header-text strong { font-size: .9rem; font-weight: 800; }
.ksai-header-text span   { font-size: .72rem; opacity: .85; }
.ksai-messages {
  max-height: 200px; overflow-y: auto; padding: 10px 12px;
  display: flex; flex-direction: column; gap: 7px;
}
.ksai-msg {
  display: inline-block; max-width: 88%; padding: 7px 12px;
  border-radius: 12px; font-size: .82rem; line-height: 1.45;
  word-break: break-word;
}
.ksai-msg-user {
  align-self: flex-end; background: #0099CC; color: #fff;
  border-bottom-left-radius: 4px;
}
.ksai-msg-ai {
  align-self: flex-start; background: #fff; color: #1E3A5F;
  border: 1px solid #BFDFEF; border-bottom-right-radius: 4px;
}
.ksai-welcome { background: #EFF9FF !important; border-color: #BAE6FD !important; font-size: .78rem; }
.ksai-welcome em { color: #0066AA; font-style: normal; font-weight: 700; }
/* Typing indicator */
.ksai-typing {
  align-self: flex-start; background: #fff; border: 1px solid #BFDFEF;
  padding: 9px 14px; display: flex !important; gap: 5px; align-items: center;
}
.ksai-typing span {
  width: 7px; height: 7px; border-radius: 50%; background: #0099CC;
  animation: ksai-bounce .9s ease-in-out infinite;
}
.ksai-typing span:nth-child(2) { animation-delay: .2s; }
.ksai-typing span:nth-child(3) { animation-delay: .4s; }
@keyframes ksai-bounce {
  0%,80%,100% { transform: translateY(0); opacity:.5; }
  40%         { transform: translateY(-6px); opacity:1; }
}
/* Input row */
.ksai-input-row {
  display: flex; align-items: center; gap: 0;
  border-top: 1px solid #BAE6FD; background: #fff;
}
#ksAiInput {
  flex: 1; border: none; outline: none; padding: 11px 14px;
  font-size: .84rem; font-family: inherit; background: transparent;
  color: #0D1B3E; direction: rtl;
}
#ksAiInput::placeholder { color: #93C5D6; font-size: .78rem; }
#ksAiSend {
  padding: 10px 18px; border: none; background: #0099CC; color: #fff;
  font-size: .82rem; font-weight: 800; cursor: pointer; transition: background .15s;
  flex-shrink: 0; display: flex; align-items: center; gap: 6px;
  font-family: Heebo, sans-serif; white-space: nowrap;
}
#ksAiSend i { font-size: .72rem; }
#ksAiSend:hover  { background: #0077AA; }
#ksAiSend:active { background: #005580; }

/* ============================================================
   MULTI-EVENT DAY PLANNER
   ============================================================ */
.mep-wrap {
  background: #f0f9ff;
  border: 1.5px solid rgba(0,153,255,.3);
  border-radius: 14px;
  padding: 14px 18px 10px;
  margin: 10px 0 14px;
  direction: rtl;
}
.mep-header {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 6px;
  font-size: .88rem; font-weight: 800; color: #0052CC;
  margin-bottom: 10px;
}
.mep-header i { margin-left: 6px; }
.mep-hint { font-size: .75rem; color: #64748b; font-weight: 400; }
.mep-same-row { margin-bottom: 10px; }
.mep-same-label {
  display: flex; align-items: center; gap: 7px;
  font-size: .83rem; color: #374151; cursor: pointer;
}
.mep-row {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 8px;
  background: #fff; border: 1.5px solid #e0f0ff;
  border-radius: 10px; padding: 9px 14px;
  margin-bottom: 7px;
}
.mep-row-name {
  display: flex; align-items: center; gap: 10px;
  flex: 1; min-width: 160px;
}
.mep-row-img {
  width: 38px; height: 38px; border-radius: 8px;
  object-fit: cover; flex-shrink: 0;
}
.mep-row-title { font-size: .84rem; font-weight: 700; color: #0D1B3E; }
.mep-row-meta  { font-size: .73rem; color: #64748b; margin-top: 2px; }
.mep-row-dates { display: flex; gap: 7px; flex-wrap: wrap; align-items: center; }
.mep-date, .mep-time {
  padding: 7px 10px; border-radius: 8px;
  border: 1.5px solid #c7d8f0; background: #f8faff;
  font-size: .82rem; color: #0D1B3E; font-family: Heebo, sans-serif;
  outline: none; cursor: pointer;
  transition: border-color .18s;
}
.mep-date { min-width: 140px; }
.mep-time { min-width: 100px; }
.mep-date:focus, .mep-time:focus { border-color: #0099FF; }
.mep-date:disabled, .mep-time:disabled { opacity: .45; cursor: default; }
.mep-summary { margin-top: 12px; }
.mep-summary-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; flex-wrap: wrap; margin-bottom: 10px;
  padding-bottom: 8px; border-bottom: 2px solid #e0ecff;
}
.mep-summary-title {
  font-size: .95rem; font-weight: 900; color: #0D1B3E;
}
.mep-summary-count {
  font-size: .76rem; font-weight: 800; color: #0052CC;
  background: #e0f2ff; border: 1px solid rgba(0,153,255,.3);
  border-radius: 20px; padding: 3px 12px; white-space: nowrap;
}
.mep-sum-group {
  margin-bottom: 12px;
}
.mep-sum-date {
  font-size: .84rem; font-weight: 900; color: #0052CC;
  margin-bottom: 8px; padding-bottom: 5px;
  border-bottom: 2px solid #d6e8ff;
}
.mep-sum-list {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: 1fr; gap: 9px;
}
@media (min-width: 560px) {
  .mep-sum-list { grid-template-columns: 1fr 1fr; }
}
.mep-sum-item {
  display: flex; align-items: center; gap: 11px;
  background: #fff;
  border: 1px solid #cfe3fb;
  border-inline-start: 4px solid #0099FF;   /* accent stripe (start = right in RTL) */
  border-radius: 12px; padding: 11px 13px;
  box-shadow: 0 2px 7px rgba(0,60,150,.07);
  transition: box-shadow .15s, transform .15s;
}
.mep-sum-item:hover {
  box-shadow: 0 5px 16px rgba(0,80,200,.15);
  transform: translateY(-1px);
}
.mep-sum-num {
  flex-shrink: 0; width: 27px; height: 27px; border-radius: 50%;
  background: linear-gradient(135deg, #0099FF, #00E5FF);
  color: #fff; font-size: .8rem; font-weight: 900;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 2px 6px rgba(0,153,255,.4);
}
.mep-sum-name {
  font-size: .88rem; font-weight: 900; color: #0D1B3E;
  flex: 1; line-height: 1.35;
}
.mep-sum-meta {
  font-size: .72rem; font-weight: 800; color: #0369a1;
  background: #e0f2ff; border: 1px solid rgba(0,153,255,.28);
  border-radius: 20px; padding: 4px 11px; white-space: nowrap;
}

/* ???? AVAILABILITY ALTERNATIVES MODAL ???? */
.wz-alt-overlay{position:fixed;inset:0;background:rgba(10,25,47,.72);backdrop-filter:blur(4px);
  z-index:2147483200;display:flex;align-items:center;justify-content:center;padding:20px;direction:rtl}
.wz-alt-card{background:#fff;border-radius:20px;max-width:480px;width:100%;
  box-shadow:0 24px 70px rgba(0,40,120,.35);overflow:hidden;animation:wzAltIn .25s ease}
@keyframes wzAltIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.wz-alt-head{background:linear-gradient(135deg,#0D1B3E,#0052CC 60%,#0099FF);color:#fff;
  padding:18px 22px;font-size:1.1rem;font-weight:900;display:flex;align-items:center;gap:10px}
.wz-alt-body{padding:18px 22px}
.wz-alt-warn{font-size:.9rem;line-height:1.7;color:#0D1B3E;background:#fff7ed;
  border:1px solid #fed7aa;border-radius:12px;padding:12px 14px;margin-bottom:14px}
.wz-alt-warn .fa-circle-xmark{color:#ef4444}
.wz-alt-warn .fa-triangle-exclamation{color:#d97706}
.wz-alt-opts{display:flex;flex-direction:column;gap:9px}
.wz-alt-opt{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1.5px solid #0099FF;
  background:#f6faff;border-radius:12px;padding:11px 14px;cursor:pointer;font-family:inherit;
  text-align:right;transition:.15s}
.wz-alt-opt:hover{background:#e0f2ff;box-shadow:0 0 0 3px rgba(0,153,255,.15)}
.wz-alt-opt-d{font-weight:800;color:#0D1B3E;font-size:.9rem;flex:1}
.wz-alt-opt-t{font-weight:800;color:#0052CC;font-size:.86rem}
.wz-alt-opt-tag{font-size:.7rem;font-weight:800;color:#059669;background:#ecfdf5;
  border:1px solid #a7f3d0;border-radius:20px;padding:2px 10px;width:100%}
.wz-alt-none{font-size:.86rem;color:#64748b;text-align:center;padding:10px}
.wz-alt-actions{display:flex;flex-direction:column;gap:8px;padding:0 22px 20px}
.wz-alt-proceed{padding:12px;border:none;border-radius:12px;font-family:inherit;font-weight:900;
  font-size:.92rem;cursor:pointer;background:linear-gradient(135deg,#0099FF,#00E5FF);color:#0D1B3E}
.wz-alt-cancel{padding:11px;border:1.5px solid #e3ecfa;border-radius:12px;background:#fff;
  color:#64748b;font-weight:700;font-family:inherit;cursor:pointer}

/* ============================================================
   SMART UPSELL PANEL (step 3)
   ============================================================ */
.ks-smart-upsell {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2ff 100%);
  border: 1.5px solid rgba(0,153,255,.3);
  border-radius: 14px;
  padding: 14px 18px 16px;
  margin-bottom: 14px;
  direction: rtl;
}
.ks-su-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 8px;
}
.ks-su-title {
  font-size: .92rem; font-weight: 800; color: #0052CC;
}
.ks-su-title i { margin-left: 6px; color: #0099FF; }
.ks-su-close {
  background: none; border: none; font-size: 1.1rem;
  color: #9ca3af; cursor: pointer; padding: 0 4px; line-height: 1;
}
.ks-su-reasons {
  display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px;
}
.ks-su-reason {
  font-size: .73rem; background: #e0f7ff; color: #0052CC;
  border: 1px solid rgba(0,153,255,.25);
  border-radius: 99px; padding: 4px 11px; font-weight: 700;
}
.ks-su-items {
  display: flex; gap: 12px; overflow-x: auto; padding-bottom: 6px;
}
.ks-su-item {
  flex-shrink: 0; width: 132px; background: #fff;
  border: 1.5px solid #e0f0ff; border-radius: 12px;
  overflow: hidden; cursor: pointer; transition: border-color .2s, transform .15s, box-shadow .2s;
  text-align: center;
}
.ks-su-item:hover { border-color: #0099FF; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,153,255,.18); }
.ks-su-item img {
  width: 100%; height: 140px; object-fit: contain;
  background: #f6faff; padding: 6px; box-sizing: border-box;
}
.ks-su-name {
  font-size: .78rem; font-weight: 800; color: #0D1B3E;
  padding: 8px 8px 3px; line-height: 1.3;
}
.ks-su-price {
  font-size: .74rem; color: #0099FF; font-weight: 900; padding: 0 8px 7px;
}
.ks-su-add-btn {
  display: block; width: calc(100% - 16px); margin: 0 8px 9px;
  background: linear-gradient(135deg, #0099FF, #00d4ff); color: #fff; border: none;
  border-radius: 8px; font-size: .72rem; font-weight: 800;
  padding: 7px 0; cursor: pointer; font-family: Heebo, sans-serif;
  transition: opacity .15s, transform .15s;
}
.ks-su-add-btn:hover { opacity: .9; transform: scale(1.02); }

/* ── Per-item schedule builder button (inside Multi-Event Planner) ── */
.mep-sb-btn {
  padding: 6px 10px; border-radius: 8px; font-size: .75rem; font-weight: 700;
  border: 1.5px dashed #0099FF; background: #f0f9ff; color: #0052CC;
  cursor: pointer; white-space: nowrap; flex-shrink: 0;
  transition: background .18s, border-color .18s, color .18s;
  font-family: Heebo, sans-serif;
}
.mep-sb-btn:hover { background: #dbeafe; border-color: #0066cc; }
.mep-sb-btn.mep-sb-saved {
  border-style: solid; border-color: #10b981;
  background: #f0fdf4; color: #059669;
}
.mep-sb-btn.mep-sb-saved:hover { background: #dcfce7; }

/* ============================================================
   FORM UPSELL PANEL (step 4 � last-chance upsell)
   ============================================================ */
.kfu-panel {
  background: linear-gradient(135deg, #f0f9ff 0%, #e0f2ff 100%);
  border: 2px solid rgba(0,153,255,.4);
  border-radius: 16px;
  padding: 16px 20px 20px;
  margin-bottom: 18px;
  direction: rtl;
  box-shadow: 0 4px 18px rgba(0,153,255,.18);
}
.kfu-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 10px;
}
.kfu-title {
  font-size: .95rem; font-weight: 900; color: #0052CC;
  display: flex; align-items: center; gap: 7px;
}
.kfu-title i { color: #0099FF; font-size: .9rem; }
.kfu-close {
  background: none; border: none; font-size: 1.25rem;
  color: #9ca3af; cursor: pointer; padding: 0 4px; line-height: 1;
  transition: color .15s;
}
.kfu-close:hover { color: #374151; }
.kfu-reasons {
  display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 12px;
}
.kfu-reason {
  font-size: .75rem; background: #e0f7ff; color: #0052CC;
  border: 1px solid rgba(0,153,255,.25); border-radius: 99px;
  padding: 4px 12px; font-weight: 700; line-height: 1.4;
}
.kfu-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(132px, 1fr));
  gap: 12px;
}
.kfu-card {
  background: #fff; border: 1.5px solid #e5e7eb;
  border-radius: 12px; overflow: hidden;
  display: flex; flex-direction: column; align-items: stretch;
  transition: border-color .2s, box-shadow .2s, transform .15s;
}
.kfu-card:hover { border-color: #0099FF; box-shadow: 0 4px 14px rgba(0,153,255,.18); transform: translateY(-2px); }
.kfu-card-img-wrap {
  width: 100%; aspect-ratio: 1 / 1; overflow: hidden;
  background: #f6faff; display: flex; align-items: center; justify-content: center;
  padding: 6px;
}
.kfu-card-img { width: 100%; height: 100%; object-fit: contain; }
.kfu-card-body { padding: 8px 9px 4px; flex: 1; }
.kfu-card-name { font-size: .75rem; font-weight: 800; color: #0D1B3E; line-height: 1.3; margin-bottom: 3px; }
.kfu-card-cat { font-size: .63rem; color: #6b7280; margin-bottom: 3px; }
.kfu-card-price { font-size: .7rem; font-weight: 900; color: #0099FF; }
.kfu-add-btn {
  display: block; width: calc(100% - 16px); margin: 4px 8px 10px;
  background: linear-gradient(135deg, #0099FF, #00d4ff);
  color: #fff; border: none; border-radius: 9px;
  font-size: .72rem; font-weight: 800; padding: 7px 4px;
  cursor: pointer; font-family: Heebo, sans-serif;
  transition: opacity .15s, transform .12s;
  display: flex; align-items: center; justify-content: center; gap: 5px;
}
.kfu-add-btn:hover { opacity: .87; transform: scale(1.02); }
.kfu-add-btn i { font-size: .68rem; }

/* ============================================================
   STEP-4 TERMS BOX � prominent legal acceptance
   ============================================================ */
/* ?? Logistics & access section (step 4) ?? */
.wz-logistics-box {
  background: linear-gradient(135deg,#f8fbff,#eef6ff);
  border: 2px solid rgba(0,153,255,.30);
  border-radius: 16px;
  padding: 16px 18px 14px;
  margin-bottom: 16px;
  direction: rtl;
}
.wz-logistics-title {
  font-size: .92rem; font-weight: 900; color: #0052CC;
  display: flex; align-items: center; gap: 8px; margin-bottom: 6px;
}
.wz-logistics-title i { color: #0099FF; }
.wz-logistics-sub {
  font-size: .78rem; color: var(--g6); line-height: 1.55; margin-bottom: 14px;
}
html.dark-mode .wz-logistics-box {
  background: linear-gradient(135deg,#0d1f3e,#102a52);
  border-color: #2a4070;
}
html.dark-mode .wz-logistics-title { color: #7cc4ff; }

.wz4-terms-box {
  background: #f0f7ff;
  border: 2px solid rgba(0,153,255,.4);
  border-radius: 16px;
  padding: 16px 18px 14px;
  margin-bottom: 16px;
  direction: rtl;
}
.wz4-terms-title {
  font-size: .88rem; font-weight: 900; color: #0052CC;
  margin-bottom: 12px;
  display: flex; align-items: center; gap: 8px;
}
.wz4-terms-title i { color: #0099FF; }
.wz4-terms-bullets { display: flex; flex-direction: column; gap: 7px; margin-bottom: 14px; }
.wz4-tb-row {
  display: flex; align-items: flex-start; gap: 9px;
  font-size: .78rem; color: #374151; line-height: 1.45;
}
.wz4-tb-icon { margin-top: 2px; font-size: .8rem; flex-shrink: 0; }
.wz4-tb-cancel { color: #dc2626; }
.wz4-tb-pay    { color: #2563eb; }
.wz4-tb-safe   { color: #059669; }
.wz4-tb-dmg    { color: #0077CC; }
.wz4-terms-check {
  display: flex; align-items: flex-start; gap: 10px;
  padding-top: 12px; border-top: 1px dashed rgba(0,153,255,.3);
}
.wz4-terms-check input[type=checkbox] {
  width: 20px; height: 20px; flex-shrink: 0; margin-top: 2px;
  accent-color: #0099FF; cursor: pointer;
}
.wz4-terms-check label {
  font-size: .82rem; line-height: 1.55; color: #374151;
  cursor: pointer; font-weight: 600;
}

/* Loyalty badge hidden � not shown in navbar */
#ks-loyalty-badge { display: none !important; }

/* ?? wz-summary detail rows ?? */
.wz-sum-row { display: flex; align-items: baseline; gap: 5px; }
.wz-sum-lbl { color: #64748b; font-size: .78rem; white-space: nowrap; }

/* ?? Terms box: section headers & highlighted rows ?? */
.wz4-tb-section {
  font-size: .7rem; font-weight: 900; color: #0052CC;
  text-transform: uppercase; letter-spacing: .06em;
  padding: 8px 0 3px;
  border-bottom: 1px solid rgba(0,153,255,.2);
  margin-top: 4px;
}
.wz4-tb-section:first-child { margin-top: 0; }
.wz4-tb-row.wz4-tb-highlight {
  background: rgba(220,38,38,.07);
  border-right: 3px solid #dc2626;
  border-radius: 7px;
  padding: 5px 8px;
}
.wz4-tb-warn { color: #d97706; }

/* ???? DYNAMIC CATEGORY INFO BANNER ???? */
.kci-card{
  background:linear-gradient(135deg,#0D1B3E 0%,#0052CC 55%,#0099FF 100%);
  border-radius:20px;padding:26px 30px;color:#fff;position:relative;overflow:hidden;
  box-shadow:0 14px 38px rgba(0,82,204,.25);
  animation:kciFade .45s ease;
}
.kci-card::after{
  content:'';position:absolute;top:-40px;left:-40px;width:200px;height:200px;
  background:radial-gradient(circle,rgba(0,184,255,.35),transparent 70%);pointer-events:none;
}
@keyframes kciFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.kci-head{display:flex;align-items:center;gap:16px;margin-bottom:14px;position:relative;z-index:1;}
.kci-icon{
  flex-shrink:0;width:56px;height:56px;border-radius:16px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);
  display:flex;align-items:center;justify-content:center;font-size:1.55rem;color:#fff;
}
.kci-title{font-size:1.4rem;font-weight:900;margin:0;line-height:1.25;}
.kci-tagline{font-size:.9rem;font-weight:700;color:#9FE3FF;margin-top:4px;}
.kci-desc{
  font-size:.95rem;line-height:1.8;color:rgba(255,255,255,.92);
  margin:0 0 18px;position:relative;z-index:1;max-width:880px;
}
.kci-chips{display:flex;flex-wrap:wrap;gap:10px;position:relative;z-index:1;}
.kci-chip{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);
  border-radius:50px;padding:8px 16px;font-size:.85rem;font-weight:700;color:#fff;
}
.kci-chip i{color:#5FD0FF;font-size:.95rem;}
@media(max-width:600px){
  .kci-card{padding:20px 18px;}
  .kci-title{font-size:1.15rem;}
  .kci-desc{font-size:.88rem;}
  .kci-icon{width:46px;height:46px;font-size:1.25rem;}
}
