/* ===== עוז מתקני כביסה — עיצוב v2 (mobile-first) ===== */
:root {
  --ink: #0a2130;
  --ink-soft: #4a6377;
  --ink-faint: #8ba3b4;
  --bg: #f4f9fb;
  --surface: #ffffff;
  --line: #dce9f0;
  --primary: #0e6e97;
  --primary-dark: #0a4d6b;
  --primary-soft: #e3f1f8;
  --accent: #14b3a2;
  --accent-soft: #ddf5f1;
  --laser: #ff5a2e;
  --gold: #f5a623;
  --grad: linear-gradient(135deg, #0e6e97, #14b3a2);
  --grad-soft: linear-gradient(135deg, #e3f1f8, #ddf5f1);
  --shadow-sm: 0 1px 3px rgba(10, 33, 48, .05), 0 4px 14px rgba(10, 33, 48, .05);
  --shadow-md: 0 6px 24px rgba(10, 33, 48, .09);
  --shadow-lg: 0 18px 55px rgba(10, 33, 48, .16);
  --shadow-primary: 0 8px 24px rgba(14, 110, 151, .32);
  --radius-lg: 24px;
  --radius: 18px;
  --radius-sm: 13px;
  --ease: cubic-bezier(.22, .61, .36, 1);
  --spring: cubic-bezier(.34, 1.4, .44, 1);
}

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

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  font-family: 'Heebo', sans-serif;
  color: var(--ink);
  background: var(--bg);
  line-height: 1.7;
  overflow-x: hidden;
}

.container { max-width: 1180px; margin: 0 auto; padding: 0 20px; }

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
h1, h2, h3 { line-height: 1.22; font-weight: 800; letter-spacing: -.02em; }
::selection { background: var(--accent); color: #fff; }

/* ===== אנימציות גלילה ===== */
/* בלי will-change - הוא יוצר containing-block קבוע ושובר position:fixed של צאצאים */
.reveal {
  opacity: 0;
  transform: translateY(30px) scale(.985);
  transition: opacity .85s var(--ease), transform .85s var(--ease);
}
.reveal.visible { opacity: 1; transform: none; }
.d-1 { transition-delay: .08s; }
.d-2 { transition-delay: .18s; }
.d-3 { transition-delay: .3s; }
.d-4 { transition-delay: .42s; }
.d-5 { transition-delay: .55s; }

.stagger > .reveal:nth-child(1) { transition-delay: .04s; }
.stagger > .reveal:nth-child(2) { transition-delay: .12s; }
.stagger > .reveal:nth-child(3) { transition-delay: .2s; }
.stagger > .reveal:nth-child(4) { transition-delay: .28s; }
.stagger > .reveal:nth-child(5) { transition-delay: .36s; }
.stagger > .reveal:nth-child(6) { transition-delay: .44s; }
.stagger > .reveal:nth-child(7) { transition-delay: .52s; }
.stagger > .reveal:nth-child(8) { transition-delay: .6s; }
.stagger > .reveal:nth-child(9) { transition-delay: .68s; }
.stagger > .reveal:nth-child(n+10) { transition-delay: .74s; }

@keyframes floatSlow { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-13px); } }
@keyframes floatMed  { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }
@keyframes floatFast { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
.float-slow { animation: floatSlow 6.5s ease-in-out infinite; }
.float-med  { animation: floatMed 4.8s ease-in-out infinite; }
.float-fast { animation: floatFast 3.6s ease-in-out infinite; }

@keyframes blobMove {
  0%,100% { transform: translate(0,0) scale(1); }
  33% { transform: translate(36px,-28px) scale(1.08); }
  66% { transform: translate(-26px,22px) scale(.94); }
}

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
  .float-slow, .float-med, .float-fast { animation: none !important; }
  html { scroll-behavior: auto; }
}

/* ===== פס מבצע ===== */
.promo-bar {
  background: var(--ink);
  background-image: linear-gradient(90deg, rgba(14,110,151,.55), rgba(20,179,162,.45)), radial-gradient(600px 60px at 20% 0%, rgba(255,255,255,.14), transparent);
  color: #eafcf9;
  text-align: center;
  padding: 9px 14px;
  font-weight: 600;
  font-size: .88rem;
  letter-spacing: .1px;
}
.promo-bar .container { padding: 0; }
.promo-spark { color: #6fe3d5; margin: 0 8px; }

/* ===== כותרת עליונה ===== */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255, 255, 255, .92);
  border-bottom: 1px solid transparent;
  transition: box-shadow .3s, border-color .3s, background .3s;
}
/* אפקט זכוכית רק בדסקטופ — backdrop-filter יוצר containing-block ושובר את מגירת המובייל */
@media (min-width: 901px) {
  .site-header {
    background: rgba(255, 255, 255, .78);
    backdrop-filter: blur(16px) saturate(1.4);
    -webkit-backdrop-filter: blur(16px) saturate(1.4);
  }
}
.site-header.scrolled {
  box-shadow: var(--shadow-sm);
  border-color: var(--line);
  background: rgba(255, 255, 255, .97);
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  height: 76px;
}

.logo { display: flex; align-items: center; gap: 11px; min-width: 0; }
.logo-mark { width: 52px; height: 52px; display: grid; place-items: center; flex-shrink: 0; }
.logo-mark.sm { width: 36px; height: 36px; }
.logo-text { display: flex; flex-direction: column; line-height: 1.22; min-width: 0; }
.logo-text b { font-size: 1.18rem; font-weight: 900; color: var(--ink); letter-spacing: -.02em; white-space: nowrap; }
.logo-text small { font-size: .76rem; color: var(--ink-soft); font-weight: 500; white-space: nowrap; }

/* ===== לוגו מונפש ===== */
.oz-logo { width: 100%; height: 100%; display: block; filter: drop-shadow(0 2px 6px rgba(10, 74, 107, .25)); }
.oz-shine { transform-origin: 60px 60px; animation: ozShine 6s linear infinite; }
@keyframes ozShine { to { transform: rotate(360deg); } }
.oz-dot { transform-origin: 60px 59px; animation: ozPulse 2.4s ease-in-out infinite; }
@keyframes ozPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.25); } }
.oz-dot-halo { transform-origin: 60px 59px; animation: ozHalo 2.4s ease-out infinite; }
@keyframes ozHalo {
  0% { transform: scale(1); opacity: .9; }
  70%, 100% { transform: scale(2.4); opacity: 0; }
}
.oz-laser {
  stroke-dasharray: 38;
  stroke-dashoffset: 38;
  animation: ozLaser 4.8s ease-in-out infinite;
}
@keyframes ozLaser {
  0%, 12% { stroke-dashoffset: 38; opacity: 0; }
  22% { opacity: 1; }
  35%, 75% { stroke-dashoffset: 0; opacity: 1; }
  90%, 100% { stroke-dashoffset: 0; opacity: 0; }
}
.oz-waves path { animation: ozWave 4s ease-in-out infinite; }
.oz-waves path:nth-child(2) { animation-delay: -2s; }
@keyframes ozWave {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-4px); }
}
.logo:hover .oz-pin { animation: ozTilt .7s var(--spring); transform-origin: 60px 60px; }
@keyframes ozTilt {
  0%, 100% { transform: rotate(0); }
  30% { transform: rotate(-7deg); }
  65% { transform: rotate(4deg); }
}
@media (prefers-reduced-motion: reduce) {
  .oz-shine, .oz-dot, .oz-dot-halo, .oz-laser, .oz-waves path { animation: none !important; }
  .oz-laser { stroke-dashoffset: 0; }
}

/* ===== ניווט דסקטופ ===== */
.main-nav { display: flex; gap: 4px; align-items: center; }
.main-nav > a {
  position: relative;
  padding: 9px 17px;
  border-radius: 99px;
  font-weight: 600;
  font-size: .97rem;
  color: var(--ink-soft);
  transition: color .2s, background .2s;
}
.main-nav > a:hover { color: var(--primary); background: var(--primary-soft); }
.main-nav > a.active { color: #fff; background: var(--grad); box-shadow: var(--shadow-primary); }

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

/* המבורגר */
.nav-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 46px; height: 46px;
  align-items: center;
  background: var(--primary-soft);
  border: 0;
  border-radius: 14px;
  cursor: pointer;
}
.nav-toggle span {
  width: 20px; height: 2.4px;
  background: var(--primary-dark);
  border-radius: 2px;
  transition: transform .35s var(--spring), opacity .25s;
}
.nav-toggle.open span:nth-child(1) { transform: translateY(7.4px) rotate(45deg); }
.nav-toggle.open span:nth-child(2) { opacity: 0; }
.nav-toggle.open span:nth-child(3) { transform: translateY(-7.4px) rotate(-45deg); }

/* ===== כפתורים ===== */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 13px 27px;
  border-radius: 99px;
  font-weight: 700;
  font-size: 1rem;
  font-family: inherit;
  border: 2px solid transparent;
  cursor: pointer;
  transition: transform .3s var(--spring), box-shadow .25s, background .2s, color .2s, border-color .2s;
  -webkit-tap-highlight-color: transparent;
}
.btn:hover { transform: translateY(-2px); }
.btn:active { transform: translateY(1px) scale(.98); }
.btn svg { width: 18px; height: 18px; flex-shrink: 0; }
.btn-lg { padding: 16px 34px; font-size: 1.05rem; }
.btn-block { width: 100%; }

.btn-primary { background: var(--grad); color: #fff; box-shadow: var(--shadow-primary); }
.btn-primary:hover { box-shadow: 0 12px 32px rgba(14, 110, 151, .45); }
.btn-ghost { background: var(--surface); color: var(--ink); border-color: var(--line); box-shadow: var(--shadow-sm); }
.btn-ghost:hover { border-color: var(--primary); color: var(--primary); }
.btn-outline { background: transparent; color: var(--primary); border-color: currentColor; }
.btn-outline:hover { background: var(--primary); color: #fff; border-color: var(--primary); }
.btn-light { background: #fff; color: var(--primary-dark); }
.btn-whatsapp { background: #22c15e; color: #fff; box-shadow: 0 8px 22px rgba(34, 193, 94, .35); }
.btn-whatsapp svg { width: 20px; height: 20px; }

.btn-phone {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 11px 19px;
  border-radius: 99px;
  background: var(--ink);
  color: #fff;
  font-weight: 700;
  font-size: .93rem;
  transition: transform .3s var(--spring), background .2s, box-shadow .25s;
}
.btn-phone:hover { background: var(--primary); transform: translateY(-2px); box-shadow: var(--shadow-primary); }
.btn-phone svg { width: 15px; height: 15px; }

/* ===== Hero ===== */
.hero {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 64px 0 84px;
  min-height: min(88vh, 780px);
}
.hero-bg { position: absolute; inset: 0; pointer-events: none; }
.blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(70px);
  opacity: .55;
  animation: blobMove 17s ease-in-out infinite;
}
.blob-1 { width: 460px; height: 460px; background: #bfe0f2; top: -140px; left: -90px; }
.blob-2 { width: 400px; height: 400px; background: #b8efe7; bottom: -130px; right: -80px; animation-delay: -6s; }
.blob-3 { width: 280px; height: 280px; background: #ffe3c9; top: 42%; left: 44%; opacity: .32; animation-delay: -11s; }

.hero-grid-lines {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(10, 33, 48, .04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10, 33, 48, .04) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 38%, #000 25%, transparent 72%);
  -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 38%, #000 25%, transparent 72%);
}

.hero-inner {
  position: relative;
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  gap: 48px;
  align-items: center;
}

.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--surface);
  border: 1px solid var(--line);
  padding: 8px 18px;
  border-radius: 99px;
  font-size: .88rem;
  font-weight: 700;
  color: var(--primary);
  box-shadow: var(--shadow-sm);
  margin-bottom: 22px;
}

.hero-title {
  font-size: clamp(2.5rem, 6vw, 4.3rem);
  font-weight: 900;
  letter-spacing: -.03em;
  margin-bottom: 20px;
}
.hero-title span { display: block; }
.grad-text {
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  padding-bottom: .08em;
}

.hero-sub {
  font-size: clamp(1.02rem, 1.6vw, 1.16rem);
  color: var(--ink-soft);
  max-width: 540px;
  margin-bottom: 30px;
}

.hero-actions { display: flex; gap: 13px; flex-wrap: wrap; margin-bottom: 38px; }

.hero-trust { display: flex; align-items: center; gap: 22px; }
.trust-item { display: flex; flex-direction: column; }
.trust-item b { font-size: 1.55rem; font-weight: 900; color: var(--primary); line-height: 1.15; letter-spacing: -.02em; }
.trust-item span { font-size: .82rem; color: var(--ink-soft); }
.trust-divider { width: 1px; height: 38px; background: var(--line); }

/* ויזואל hero */
.hero-visual { position: relative; min-height: 460px; }
.hero-card-main {
  position: absolute;
  inset: 18px 0 auto;
  background: var(--surface);
  border: 1px solid #fff;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  padding: 12px;
  overflow: hidden;
}
.hero-card-main img {
  width: 100%;
  max-height: 415px;
  object-fit: cover;
  border-radius: calc(var(--radius-lg) - 10px);
}

.hero-chip {
  position: absolute;
  z-index: 2;
  background: rgba(255, 255, 255, .9);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, .9);
  border-radius: 99px;
  padding: 10px 17px;
  font-weight: 700;
  font-size: .87rem;
  box-shadow: var(--shadow-md);
  white-space: nowrap;
}
.chip-1 { top: -2px; right: 4%; }
.chip-2 { bottom: 30px; left: -8px; }
.chip-3 { bottom: 30px; right: 14%; } /* אותו גובה כמו תגית 2 */

/* חץ גלילה */
.scroll-hint {
  position: absolute;
  bottom: 22px; left: 50%;
  transform: translateX(-50%);
  width: 25px; height: 41px;
  border: 2px solid rgba(10, 33, 48, .22);
  border-radius: 99px;
  display: flex;
  justify-content: center;
  padding-top: 8px;
}
.scroll-hint span {
  width: 4px; height: 8px;
  background: var(--primary);
  border-radius: 2px;
  animation: scrollDot 1.8s ease-in-out infinite;
}
@keyframes scrollDot {
  0% { transform: translateY(0); opacity: 1; }
  70% { transform: translateY(13px); opacity: 0; }
  100% { transform: translateY(0); opacity: 0; }
}

/* ===== מקטעים ===== */
.section { padding: 92px 0; }
.section-alt { background: var(--surface); }
.section-dark {
  background:
    radial-gradient(900px 460px at 82% -10%, rgba(14, 110, 151, .5), transparent),
    radial-gradient(700px 400px at 8% 110%, rgba(20, 179, 162, .25), transparent),
    var(--ink);
  color: #fff;
}
.section-dark h2 { color: #fff; }

.section-head { text-align: center; max-width: 660px; margin: 0 auto 52px; }
.section-eyebrow {
  display: inline-block;
  color: #0d8d80;
  background: var(--accent-soft);
  font-weight: 700;
  font-size: .82rem;
  padding: 6px 16px;
  border-radius: 99px;
  margin-bottom: 14px;
  letter-spacing: .4px;
}
.section-eyebrow.light { background: rgba(255,255,255,.13); color: #7ceadd; }
.section-head h2 { font-size: clamp(1.65rem, 4vw, 2.5rem); margin-bottom: 12px; }
.section-head p { color: var(--ink-soft); font-size: 1.05rem; }
.section-dark .section-head p { color: #b6c8d6; }
.section-cta { text-align: center; margin-top: 44px; }

/* ===== קטגוריות ===== */
.category-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.category-card {
  position: relative;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 26px 22px;
  transition: transform .4s var(--spring), box-shadow .35s, border-color .3s;
  overflow: hidden;
}
.category-card::after {
  content: '';
  position: absolute;
  inset: auto 0 0 0;
  height: 3px;
  background: var(--grad);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .45s var(--ease);
}
.category-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: transparent; }
.category-card:hover::after { transform: scaleX(1); }

.category-icon {
  width: 52px; height: 52px;
  border-radius: 16px;
  background: var(--primary-soft);
  color: var(--primary);
  display: grid;
  place-items: center;
  margin-bottom: 15px;
  transition: background .3s, color .3s, transform .35s var(--spring);
}
.category-card:hover .category-icon { background: var(--grad); color: #fff; transform: scale(1.08) rotate(-5deg); }
.category-icon svg { width: 26px; height: 26px; }

.category-card h3 { font-size: 1.05rem; margin-bottom: 6px; }
.category-card p {
  font-size: .87rem;
  color: var(--ink-soft);
  line-height: 1.55;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.category-arrow {
  position: absolute;
  top: 24px; left: 20px;
  color: var(--primary);
  font-weight: 800;
  opacity: 0;
  transform: translateX(8px);
  transition: opacity .3s, transform .3s;
}
.category-card:hover .category-arrow { opacity: 1; transform: translateX(0); }

/* ===== כרטיסי מוצר ===== */
.product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.product-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .4s var(--spring), box-shadow .35s, border-color .3s;
}
.product-card:hover { transform: translateY(-7px); box-shadow: var(--shadow-lg); border-color: transparent; }

.product-media {
  position: relative;
  aspect-ratio: 4 / 3;
  background: linear-gradient(145deg, #e9f3f9, #e2f6f2);
  overflow: hidden;
}
.product-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .65s var(--ease);
}
.product-card:hover .product-media img { transform: scale(1.06); }

.product-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #a3c2d6;
}
.product-placeholder svg { width: 88px; height: 88px; }
.product-placeholder.xl { position: relative; aspect-ratio: 1; }
.product-placeholder.xl svg { width: 150px; height: 150px; }

.product-badge {
  position: absolute;
  top: 13px; right: 13px;
  z-index: 2;
  background: rgba(10, 33, 48, .88);
  backdrop-filter: blur(6px);
  color: #fff;
  font-size: .76rem;
  font-weight: 700;
  padding: 5px 13px;
  border-radius: 99px;
  box-shadow: var(--shadow-sm);
}
.product-badge.lg { font-size: .88rem; padding: 7px 16px; }

.product-body { padding: 20px; display: flex; flex-direction: column; flex: 1; }
.product-body h3 { font-size: 1.08rem; margin-bottom: 6px; }
.product-body p {
  color: var(--ink-soft);
  font-size: .9rem;
  line-height: 1.6;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.product-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 15px;
  padding-top: 14px;
  border-top: 1px dashed var(--line);
}

.price { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.old-price { color: var(--ink-faint); text-decoration: line-through; font-size: .9rem; }
.current-price { font-size: 1.28rem; font-weight: 800; color: var(--primary); }
.price-lg .current-price { font-size: 2rem; }
.price-lg { margin: 20px 0; }
.save-tag {
  background: var(--accent-soft);
  color: #0d8d80;
  font-size: .84rem;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 99px;
}
.price-call { color: var(--primary); font-weight: 700; font-size: .88rem; }
.price-call-box {
  background: var(--grad-soft);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 16px 20px;
  margin: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.price-call-box b { font-size: 1.1rem; color: var(--primary-dark); }
.price-call-box span { color: var(--ink-soft); font-size: .9rem; }

.card-cta { color: var(--primary); font-weight: 700; font-size: .9rem; white-space: nowrap; transition: transform .3s; }
.product-card:hover .card-cta { transform: translateX(-4px); }

/* ===== למה אנחנו ===== */
.why-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 56px;
  align-items: center;
}
.why-content h2 { font-size: clamp(1.6rem, 3.4vw, 2.3rem); margin: 10px 0 16px; }
.why-lead { color: var(--ink-soft); font-size: 1.04rem; margin-bottom: 22px; }

.check-list { list-style: none; margin-bottom: 28px; }
.check-list li {
  position: relative;
  padding: 8px 36px 8px 0;
  color: var(--ink-soft);
  font-size: .97rem;
}
.check-list li::before {
  content: '✓';
  position: absolute;
  right: 0;
  top: 10px;
  width: 25px; height: 25px;
  border-radius: 9px;
  background: var(--accent-soft);
  color: #0d8d80;
  font-weight: 800;
  display: grid;
  place-items: center;
  font-size: .85rem;
}
.check-list b { color: var(--ink); }

.stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.stat-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px 20px;
  text-align: center;
  transition: transform .35s var(--spring), box-shadow .3s;
}
.stat-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.stat-card b {
  display: block;
  font-size: 2.5rem;
  font-weight: 900;
  letter-spacing: -.03em;
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  line-height: 1.15;
}
.stat-card span { color: var(--ink-soft); font-size: .9rem; }

/* ===== שלבים ===== */
.steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.step-card {
  position: relative;
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: var(--radius);
  padding: 32px 26px;
  transition: transform .35s var(--spring), background .3s, border-color .3s;
  overflow: hidden;
}
.step-card:hover { transform: translateY(-6px); background: rgba(255, 255, 255, .1); border-color: rgba(124, 234, 221, .35); }
.step-num {
  display: inline-block;
  font-size: 2.5rem;
  font-weight: 900;
  letter-spacing: -.03em;
  background: linear-gradient(120deg, #62c1e8, #4de3cd);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  margin-bottom: 8px;
}
.step-card h3 { font-size: 1.22rem; margin-bottom: 9px; }
.step-card p { color: #b6c8d6; font-size: .95rem; }

/* ===== המלצות ===== */
.testimonial-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.testimonial-card {
  position: relative;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px;
  transition: transform .35s var(--spring), box-shadow .3s;
}
.testimonial-card::before {
  content: '”';
  position: absolute;
  top: 6px; left: 18px;
  font-size: 4.6rem;
  line-height: 1;
  font-weight: 900;
  color: var(--primary-soft);
  pointer-events: none;
}
.testimonial-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.stars { color: var(--gold); letter-spacing: 3px; margin-bottom: 13px; font-size: .95rem; }
.testimonial-card > p { color: var(--ink-soft); margin-bottom: 18px; font-size: .95rem; position: relative; }
.testimonial-author { display: flex; flex-direction: column; }
.testimonial-author b { font-size: .96rem; }
.testimonial-author span { color: var(--ink-faint); font-size: .84rem; }

/* ===== CTA ===== */
.cta-strip {
  background: var(--grad);
  color: #fff;
  padding: 58px 0;
  position: relative;
  overflow: hidden;
}
.cta-strip::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(500px 220px at 85% 20%, rgba(255,255,255,.18), transparent);
}
.cta-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: wrap;
}
.cta-inner h2 { font-size: clamp(1.45rem, 3vw, 2.05rem); margin-bottom: 8px; }
.cta-inner p { opacity: .92; font-size: .98rem; }
.cta-actions { display: flex; gap: 13px; flex-wrap: wrap; }

/* ===== פוטר ===== */
.site-footer { background: var(--ink); color: #b6c8d6; padding: 60px 0 0; }
.footer-grid {
  display: grid;
  grid-template-columns: 1.3fr .8fr 1fr 1.3fr;
  gap: 38px;
  padding-bottom: 42px;
}
.footer-col h4 { color: #fff; margin-bottom: 15px; font-size: 1.02rem; }
.footer-col a { display: block; padding: 4px 0; color: #b6c8d6; font-size: .94rem; transition: color .2s, transform .2s; }
.footer-col a:hover { color: #fff; transform: translateX(-3px); }
.footer-about p { font-size: .93rem; margin-top: 13px; }
.footer-logo { margin-bottom: 4px; }
.footer-logo .logo-text b { color: #fff; }
.footer-logo .logo-text small { color: #89a1b3; }
.footer-social { display: flex; gap: 9px; margin-top: 17px; }
.footer-social a {
  width: 38px; height: 38px;
  border-radius: 12px;
  background: rgba(255, 255, 255, .08);
  display: grid;
  place-items: center;
  padding: 0;
  transition: background .25s, transform .3s var(--spring);
}
.footer-social a:hover { background: var(--grad); transform: translateY(-3px); }
.footer-social svg { width: 16px; height: 16px; }
.footer-contact-line { padding: 3px 0; font-size: .92rem; }
.footer-contact-line a { display: inline; padding: 0; }
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  padding: 19px 20px;
  border-top: 1px solid rgba(255, 255, 255, .09);
  font-size: .83rem;
  color: #89a1b3;
}

/* וואטסאפ צף */
.float-whatsapp {
  position: fixed;
  bottom: 22px;
  left: 22px;
  z-index: 80;
  width: 56px; height: 56px;
  border-radius: 50%;
  background: #22c15e;
  color: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 26px rgba(34, 193, 94, .45);
  transition: transform .3s var(--spring);
}
.float-whatsapp:hover { transform: scale(1.1); }
.float-whatsapp svg { width: 29px; height: 29px; }

/* סרגל פעולות תחתון במובייל */
.mobile-bar {
  display: none;
  position: fixed;
  bottom: 0; right: 0; left: 0;
  z-index: 80;
  background: rgba(255, 255, 255, .96);
  border-top: 1px solid var(--line);
  box-shadow: 0 -6px 24px rgba(10, 33, 48, .1);
  padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
}
.mobile-bar-inner { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.mb-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  padding: 7px 4px;
  border-radius: 13px;
  font-size: .72rem;
  font-weight: 700;
  color: var(--ink-soft);
  transition: background .2s, color .2s, transform .2s;
  -webkit-tap-highlight-color: transparent;
}
.mb-item:active { transform: scale(.95); }
.mb-item svg { width: 21px; height: 21px; }
.mb-call { background: var(--grad); color: #fff; box-shadow: var(--shadow-primary); }
.mb-wa { color: #17a24b; }
.mb-quote { color: var(--primary); }

/* ===== עמודים פנימיים ===== */
.page-hero {
  position: relative;
  background:
    radial-gradient(800px 380px at 78% -20%, rgba(14, 110, 151, .55), transparent),
    radial-gradient(600px 320px at 10% 120%, rgba(20, 179, 162, .3), transparent),
    var(--ink);
  color: #fff;
  padding: 72px 0;
  text-align: center;
  overflow: hidden;
}
.page-hero h1 { font-size: clamp(1.9rem, 5vw, 3rem); margin-bottom: 12px; }
.page-hero p { color: #b6c8d6; font-size: 1.06rem; max-width: 580px; margin: 0 auto; }

/* קטלוג */
.catalog-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 36px;
}
.filter-chips { display: flex; gap: 9px; flex-wrap: wrap; }
.chip {
  padding: 9px 18px;
  border-radius: 99px;
  background: var(--surface);
  border: 1px solid var(--line);
  font-weight: 600;
  font-size: .88rem;
  color: var(--ink-soft);
  transition: all .25s;
  white-space: nowrap;
  -webkit-tap-highlight-color: transparent;
}
.chip:hover { border-color: var(--primary); color: var(--primary); }
.chip.active { background: var(--grad); color: #fff; border-color: transparent; box-shadow: var(--shadow-primary); }

.search-form {
  display: flex;
  background: var(--surface);
  border: 1.5px solid var(--line);
  border-radius: 99px;
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.search-form:focus-within { border-color: var(--primary); box-shadow: 0 0 0 4px rgba(14, 110, 151, .12); }
.search-form input {
  border: 0;
  outline: 0;
  padding: 11px 20px;
  font-family: inherit;
  font-size: .95rem;
  width: 200px;
  background: transparent;
  color: var(--ink);
}
.search-form button {
  border: 0;
  background: transparent;
  padding: 0 16px;
  cursor: pointer;
  color: var(--ink-soft);
}
.search-form button svg { width: 18px; height: 18px; }

.empty-state { text-align: center; padding: 64px 18px; }
.empty-state span { font-size: 3.8rem; display: block; margin-bottom: 16px; }
.empty-state h1, .empty-state h3 { margin-bottom: 10px; }
.empty-state p { color: var(--ink-soft); margin-bottom: 24px; }

/* דף מוצר */
.breadcrumbs { display: flex; gap: 8px; flex-wrap: wrap; color: var(--ink-soft); font-size: .88rem; margin-bottom: 30px; }
.breadcrumbs a:hover { color: var(--primary); }
.breadcrumbs b { color: var(--ink); }

.product-layout {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 48px;
  align-items: start;
}
.product-gallery {
  position: sticky;
  top: 96px;
  background: linear-gradient(145deg, #e9f3f9, #e2f6f2);
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--line);
}
.product-gallery img { width: 100%; aspect-ratio: 1; object-fit: cover; }

.product-info h1 { font-size: clamp(1.6rem, 3.6vw, 2.35rem); margin: 8px 0 12px; }
.product-short { color: var(--ink-soft); font-size: 1.07rem; }
.product-actions { display: flex; gap: 13px; flex-wrap: wrap; margin-bottom: 24px; }
.product-perks { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 28px; }
.perk {
  background: var(--surface);
  border: 1px solid var(--line);
  padding: 8px 15px;
  border-radius: 99px;
  font-size: .85rem;
  font-weight: 600;
}
.product-desc {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 26px;
}
.product-desc h3 { margin-bottom: 10px; }
.product-desc p { color: var(--ink-soft); white-space: pre-line; font-size: .96rem; }

.related-section { margin-top: 72px; }
.related-section h2 { margin-bottom: 28px; font-size: 1.55rem; }

/* אודות */
.about-grid { display: grid; grid-template-columns: 1.4fr .8fr; gap: 46px; align-items: start; }
.about-text h2 { font-size: 1.55rem; margin: 26px 0 12px; }
.about-text p { color: var(--ink-soft); margin-bottom: 14px; font-size: .98rem; }
.about-text b { color: var(--ink); }

.about-intro {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 24px;
  margin-bottom: 24px;
}
.about-photo {
  width: 92px;
  height: 92px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--accent-soft);
  box-shadow: var(--shadow-sm);
  flex-shrink: 0;
}
.about-intro h2 { margin: 0 0 8px !important; }
.about-intro p { margin: 0 !important; }

.about-side { display: flex; flex-direction: column; gap: 16px; position: sticky; top: 96px; }
.info-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px;
}
.info-card h3 { font-size: 1.02rem; margin-bottom: 9px; }
.info-card p { color: var(--ink-soft); font-size: .93rem; padding: 2px 0; }
.info-card a:hover { color: var(--primary); }
.info-card small { color: var(--ink-faint); }
.info-card.accent { background: var(--grad-soft); border-color: transparent; }

/* 10 סיבות */
.reasons-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 16px;
}
.reason-card {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px;
  transition: transform .35s var(--spring), box-shadow .3s, border-color .3s;
}
.reason-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: var(--accent); }
.reason-card b { display: block; margin-bottom: 6px; color: var(--primary-dark); font-size: 1rem; }
.reason-card p { color: var(--ink-soft); font-size: .9rem; }

/* צור קשר */
.contact-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 36px; align-items: start; }
.contact-form-wrap {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 36px;
}
.contact-form-wrap h2 { margin-bottom: 22px; font-size: 1.4rem; }

.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.form-field { display: flex; flex-direction: column; gap: 7px; margin-bottom: 17px; }
.form-field label { font-weight: 600; font-size: .9rem; }
.form-field input,
.form-field textarea,
.form-field select {
  font-family: inherit;
  font-size: 1rem;
  padding: 13px 16px;
  border: 1.5px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--bg);
  color: var(--ink);
  transition: border-color .2s, box-shadow .2s, background .2s;
  resize: vertical;
  width: 100%;
}
.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus {
  outline: 0;
  border-color: var(--primary);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(14, 110, 151, .12);
}

.contact-side { display: flex; flex-direction: column; gap: 15px; position: sticky; top: 96px; }

.success-box { text-align: center; padding: 28px 8px; }
.success-box span { font-size: 3.2rem; display: block; margin-bottom: 13px; }
.success-box h2 { margin-bottom: 10px; }
.success-box p { color: var(--ink-soft); margin-bottom: 24px; }

/* שאלות ותשובות */
.faq-container { max-width: 780px; }
.faq-list { display: flex; flex-direction: column; gap: 11px; }
.faq-item {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  overflow: hidden;
  transition: box-shadow .25s, border-color .25s;
}
.faq-item[open] { border-color: var(--accent); box-shadow: var(--shadow-sm); }
.faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  list-style: none;
  cursor: pointer;
  padding: 16px 19px;
  font-weight: 700;
  font-size: .97rem;
  color: var(--ink);
  -webkit-tap-highlight-color: transparent;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-icon {
  width: 26px; height: 26px;
  border-radius: 9px;
  background: var(--accent-soft);
  color: var(--primary-dark);
  display: grid;
  place-items: center;
  font-weight: 800;
  flex-shrink: 0;
  transition: transform .35s var(--spring), background .3s, color .3s;
}
.faq-item[open] .faq-icon { transform: rotate(45deg); background: var(--grad); color: #fff; }
.faq-item > p { padding: 0 19px 17px; color: var(--ink-soft); font-size: .95rem; }

/* ===== מגירת מובייל ===== */
.mobile-nav-head, .mobile-nav-cats, .mobile-nav-foot { display: none; }
.nav-overlay { display: none; }

@media (max-width: 900px) {
  .nav-toggle { display: flex; }

  .nav-overlay {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(8, 26, 38, .5);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .35s;
    z-index: 95;
  }
  .nav-overlay.open { opacity: 1; pointer-events: auto; }
  body.nav-locked { overflow: hidden; }

  .main-nav {
    position: fixed;
    top: 0; right: 0; bottom: 0;
    width: min(86vw, 360px);
    background: var(--surface);
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    padding: 16px 16px calc(20px + env(safe-area-inset-bottom));
    border-radius: 0 0 0 28px;
    box-shadow: -20px 0 60px rgba(10, 33, 48, .25);
    transform: translateX(105%);
    transition: transform .45s var(--spring);
    z-index: 100;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .main-nav.open { transform: translateX(0); }

  .main-nav > a {
    font-size: 1.05rem;
    font-weight: 700;
    padding: 14px 18px;
    border-radius: 15px;
    color: var(--ink);
    opacity: 0;
    transform: translateX(18px);
    transition: opacity .4s var(--ease), transform .4s var(--ease), background .2s, color .2s;
  }
  .main-nav.open > a { opacity: 1; transform: translateX(0); }
  .main-nav.open > a:nth-of-type(1) { transition-delay: .1s; }
  .main-nav.open > a:nth-of-type(2) { transition-delay: .16s; }
  .main-nav.open > a:nth-of-type(3) { transition-delay: .22s; }
  .main-nav.open > a:nth-of-type(4) { transition-delay: .28s; }
  .main-nav > a.active { color: #fff; background: var(--grad); }

  .mobile-nav-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 6px 16px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 12px;
  }
  .mobile-nav-head b { font-size: 1.02rem; flex: 1; }
  .nav-close {
    width: 40px; height: 40px;
    border: 0;
    border-radius: 13px;
    background: var(--bg);
    color: var(--ink-soft);
    font-size: 1.05rem;
    font-weight: 700;
    cursor: pointer;
    display: grid;
    place-items: center;
    transition: background .2s, color .2s;
    -webkit-tap-highlight-color: transparent;
  }
  .nav-close:active { background: var(--primary-soft); color: var(--primary); }

  .mobile-nav-cats {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--line);
  }
  .mobile-nav-label {
    font-size: .74rem;
    font-weight: 800;
    color: var(--accent);
    letter-spacing: .8px;
    padding: 4px 18px 8px;
    text-transform: uppercase;
  }
  .mobile-cat-link {
    display: flex;
    align-items: center;
    font-size: .94rem;
    padding: 10px 18px;
    color: var(--ink-soft);
    border-radius: 13px;
    transition: background .2s, color .2s;
  }
  .mobile-cat-link::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--accent);
    margin-left: 10px;
    opacity: .55;
  }
  .mobile-cat-link:active { background: var(--primary-soft); color: var(--primary); }

  .mobile-nav-foot {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid var(--line);
  }
}

/* ===== רספונסיבי ===== */
@media (max-width: 1024px) {
  .hero { min-height: auto; padding: 46px 0 64px; }
  .hero-inner { grid-template-columns: 1fr; gap: 34px; }
  .hero-visual { min-height: 0; margin-top: 6px; }
  .hero-card-main { position: relative; inset: auto; }
  .hero-card-main img { max-height: 340px; }
  .chip-1 { top: -14px; right: 4%; }
  .chip-2 { bottom: auto; top: 46%; left: -6px; }
  .chip-3 { bottom: -14px; right: 12%; }
  .scroll-hint { display: none; }

  .category-grid { grid-template-columns: repeat(2, 1fr); }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .steps-grid, .testimonial-grid { grid-template-columns: 1fr; max-width: 560px; margin: 0 auto; }
  .why-grid, .about-grid, .contact-grid, .product-layout { grid-template-columns: 1fr; }
  .about-side, .contact-side, .product-gallery { position: static; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .container { padding: 0 16px; }
  .section { padding: 56px 0; }
  .section-head { margin-bottom: 34px; }
  .header-inner { height: 66px; gap: 10px; }
  .logo-mark { width: 42px; height: 42px; }
  .logo-text b { font-size: .99rem; }
  .logo-text small { font-size: .67rem; }
  .btn-phone { display: none; }
  .promo-bar { font-size: .78rem; padding: 8px 12px; }
  .promo-spark { display: none; }

  .hero { padding: 36px 0 56px; }
  .hero-eyebrow { font-size: .78rem; padding: 7px 14px; margin-bottom: 18px; }
  .hero-title { margin-bottom: 16px; }
  .hero-sub { margin-bottom: 24px; }
  .hero-actions { margin-bottom: 30px; }
  .hero-actions .btn { flex: 1; min-width: 0; padding: 14px 18px; font-size: .97rem; }
  .hero-trust { gap: 0; justify-content: space-between; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 14px 18px; box-shadow: var(--shadow-sm); }
  .trust-divider { height: 34px; }
  .trust-item b { font-size: 1.3rem; }
  .trust-item span { font-size: .72rem; }
  .hero-card-main { padding: 9px; }
  .hero-card-main img { max-height: 250px; }
  .hero-chip { font-size: .76rem; padding: 0 13px; height: 36px; }

  /* קרוסלות גלילה אופקית בדף הבית */
  .scroll-x {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: min(76%, 300px);
    grid-template-columns: none !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 16px;
    padding: 4px 16px 18px;
    margin: 0 -16px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .scroll-x::-webkit-scrollbar { display: none; }
  .scroll-x > * { scroll-snap-align: center; }
  .scroll-x .product-body p { -webkit-line-clamp: 2; }

  .category-grid:not(.scroll-x), .product-grid:not(.scroll-x) { grid-template-columns: 1fr; }
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .stat-card { padding: 20px 14px; }
  .stat-card b { font-size: 1.9rem; }
  .stat-card span { font-size: .8rem; }

  .catalog-toolbar { flex-direction: column; align-items: stretch; gap: 14px; }
  .filter-chips {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding: 2px 16px 10px;
    margin: 0 -16px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .filter-chips::-webkit-scrollbar { display: none; }
  .search-form input { width: 100%; flex: 1; }

  .form-row { grid-template-columns: 1fr; gap: 0; }
  .contact-form-wrap { padding: 22px 18px; }
  .about-intro { flex-direction: column; align-items: center; text-align: center; }
  .product-actions .btn { flex: 1; min-width: 0; padding: 14px 14px; font-size: .93rem; }
  .cta-inner { flex-direction: column; text-align: center; }
  .cta-actions { width: 100%; }
  .cta-actions .btn { flex: 1; }
  .footer-grid { grid-template-columns: 1fr; gap: 26px; }
  .footer-bottom { flex-direction: column; text-align: center; gap: 6px; }

  /* סרגל תחתון במקום כפתור צף */
  .mobile-bar { display: block; }
  .float-whatsapp { display: none; }
  body { padding-bottom: 76px; }
  .site-footer { padding-bottom: 8px; }
}

/* ===== תת-תפריט קטגוריות בניווט ===== */
.nav-item { position: relative; }
.nav-sub-trigger { display: flex; align-items: center; }
.sub-toggle {
  display: inline-grid;
  place-items: center;
  width: 28px; height: 28px;
  margin-right: -6px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--ink-soft);
  cursor: pointer;
  transition: transform .35s var(--spring), color .2s, background .2s;
  -webkit-tap-highlight-color: transparent;
}
.sub-toggle svg { width: 15px; height: 15px; }
.nav-item.sub-open > .nav-sub-trigger .sub-toggle,
.nav-item:hover > .nav-sub-trigger .sub-toggle { color: var(--primary); }

.nav-sub {
  position: absolute;
  top: calc(100% + 12px);
  right: -14px;
  width: 520px;
  max-width: calc(100vw - 40px);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 20px;
  box-shadow: var(--shadow-lg);
  opacity: 0;
  visibility: hidden;
  transform: translateY(14px) scale(.98);
  transform-origin: top right;
  transition: opacity .3s var(--ease), transform .35s var(--spring), visibility .3s;
  z-index: 70;
}
/* גשר ריחוף - שלא ייסגר במעבר העכבר */
.nav-sub::before {
  content: '';
  position: absolute;
  top: -14px; right: 0; left: 0;
  height: 16px;
}
.nav-item:hover > .nav-sub,
.nav-item.sub-open > .nav-sub,
.nav-item:focus-within > .nav-sub {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}
.nav-item:hover > .nav-sub-trigger .sub-toggle svg,
.nav-item.sub-open > .nav-sub-trigger .sub-toggle { transform: rotate(180deg); }

.nav-sub-inner { padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.nav-sub-all {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 13px 16px;
  border-radius: 15px;
  background: var(--grad-soft);
  border: 1px solid var(--line);
  transition: border-color .2s, transform .25s var(--spring);
}
.nav-sub-all:hover { border-color: var(--accent); transform: translateY(-2px); }
.nav-sub-all-icon { font-size: 1.5rem; }
.nav-sub-all b { display: block; font-size: .98rem; color: var(--primary-dark); }
.nav-sub-all small { color: var(--ink-soft); font-size: .8rem; }
.nav-sub-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
}
.nav-sub-link {
  display: flex;
  align-items: center;
  padding: 10px 13px;
  border-radius: 12px;
  font-size: .92rem;
  font-weight: 600;
  color: var(--ink-soft);
  transition: background .2s, color .2s;
}
.nav-sub-link::before {
  content: '';
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--accent);
  margin-left: 10px;
  opacity: .55;
  flex-shrink: 0;
}
.nav-sub-link:hover { background: var(--primary-soft); color: var(--primary); }

/* ===== בורר קטגוריה בעמוד המוצרים ===== */
.cat-select { position: relative; min-width: 280px; }
.cat-select-btn {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 9px 16px;
  background: var(--surface);
  border: 1.5px solid var(--line);
  border-radius: 16px;
  cursor: pointer;
  font-family: inherit;
  text-align: right;
  transition: border-color .2s, box-shadow .2s;
  -webkit-tap-highlight-color: transparent;
}
.cat-select-btn:hover { border-color: var(--primary); }
.cat-select.open .cat-select-btn { border-color: var(--primary); box-shadow: 0 0 0 4px rgba(14, 110, 151, .12); }
.cat-select-icon { width: 20px; height: 20px; color: var(--primary); flex-shrink: 0; }
.cat-select-text { display: flex; flex-direction: column; flex: 1; line-height: 1.35; }
.cat-select-text small { font-size: .7rem; color: var(--ink-faint); font-weight: 600; }
.cat-select-text b { font-size: .96rem; color: var(--ink); }
.cat-select-chevron { width: 16px; height: 16px; color: var(--ink-soft); flex-shrink: 0; transition: transform .35s var(--spring); }
.cat-select.open .cat-select-chevron { transform: rotate(180deg); }

.cat-select-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0; left: 0;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: var(--shadow-lg);
  padding: 7px;
  max-height: 330px;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .25s var(--ease), transform .3s var(--spring), visibility .25s;
  z-index: 40;
}
.cat-select.open .cat-select-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.cat-select-menu a {
  display: flex;
  align-items: center;
  padding: 10px 14px;
  border-radius: 11px;
  font-size: .93rem;
  font-weight: 600;
  color: var(--ink-soft);
  transition: background .18s, color .18s;
}
.cat-select-menu a:hover { background: var(--primary-soft); color: var(--primary); }
.cat-select-menu a.active { background: var(--grad); color: #fff; }
.cat-select-menu a.active::after { content: '✓'; margin-right: auto; font-weight: 800; }

/* תת-תפריט במגירת המובייל */
@media (max-width: 900px) {
  .nav-item { position: static; }
  .nav-sub-trigger { display: flex; align-items: stretch; gap: 6px; }
  .nav-sub-trigger > a { flex: 1; }
  .sub-toggle {
    width: 48px; height: auto;
    margin: 0;
    border-radius: 15px;
    background: var(--bg);
    color: var(--ink-soft);
    opacity: 0;
    transform: translateX(18px);
    transition: opacity .4s var(--ease), transform .4s var(--ease), background .2s;
  }
  .main-nav.open .sub-toggle { opacity: 1; transform: translateX(0); transition-delay: .16s; }
  .sub-toggle svg { width: 17px; height: 17px; transition: transform .35s var(--spring); }
  .nav-item.sub-open .sub-toggle { background: var(--primary-soft); color: var(--primary); }
  .nav-item.sub-open .sub-toggle svg { transform: rotate(180deg); }
  .nav-item:hover > .nav-sub { opacity: 1; visibility: visible; }

  .nav-sub {
    position: static;
    width: auto;
    max-width: none;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    background: transparent;
    opacity: 1;
    visibility: visible;
    transform: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height .45s var(--ease);
  }
  .nav-sub::before { display: none; }
  .nav-item.sub-open > .nav-sub { max-height: 640px; }
  .nav-sub-inner { padding: 6px 4px 10px; gap: 8px; }
  .nav-sub-grid { grid-template-columns: 1fr; gap: 2px; }
  .nav-sub-link { padding: 10px 16px; font-size: .95rem; }

  .cat-select { min-width: 0; width: 100%; }
}

/* ===== תיקוני UX לבורר הקטגוריות ולתפריט המובייל ===== */
/* הבורר מעל כרטיסי המוצרים (stacking context של אנימציות ה-reveal) */
.catalog-toolbar { position: relative; z-index: 30; }

@media (max-width: 900px) {
  /* במובייל: אקורדיון - לחיצה על כל שורת "המוצרים שלנו" פותחת/סוגרת.
     כפתור החץ הקטן מוסתר; חץ אינדיקציה מצויר על השורה עצמה */
  .sub-toggle { display: none !important; }
  .nav-sub-trigger > a { display: flex; align-items: center; }
  .nav-sub-trigger > a::after {
    content: '';
    width: 9px; height: 9px;
    border-left: 2.4px solid currentColor;
    border-bottom: 2.4px solid currentColor;
    transform: rotate(-45deg);
    margin-inline-start: auto;
    margin-left: 4px;
    opacity: .65;
    transition: transform .35s var(--spring);
  }
  .nav-item.sub-open .nav-sub-trigger > a::after { transform: rotate(135deg); }

  .nav-sub-inner { padding: 2px 4px 8px; }
  .nav-sub-all { padding: 11px 14px; }
  .nav-sub-all-icon { font-size: 1.2rem; }
}

@media (max-width: 640px) {
  /* בורר קטגוריה כגיליון תחתון (bottom sheet) */
  .cat-select.open::before {
    content: '';
    position: fixed;
    inset: 0;
    background: rgba(8, 26, 38, .48);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    z-index: 94;
    animation: sheetFade .25s var(--ease);
  }
  .cat-select-menu {
    position: fixed;
    right: 10px; left: 10px;
    top: auto;
    bottom: calc(12px + env(safe-area-inset-bottom));
    max-height: 62vh;
    padding: 10px;
    border-radius: 22px;
    z-index: 96;
    transform: translateY(24px);
  }
  .cat-select.open .cat-select-menu { transform: translateY(0); }
  .cat-select-menu::before {
    content: 'בחרו קטגוריה';
    display: block;
    text-align: center;
    font-weight: 800;
    font-size: .92rem;
    color: var(--ink);
    padding: 6px 0 10px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 8px;
  }
  .cat-select-menu a { padding: 12px 16px; font-size: .98rem; }
}
@keyframes sheetFade { from { opacity: 0; } to { opacity: 1; } }

/* ===== חנות: כפתורי כותרת ===== */
.user-btn, .cart-btn {
  position: relative;
  width: 44px; height: 44px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: var(--surface);
  color: var(--ink-soft);
  display: grid;
  place-items: center;
  cursor: pointer;
  transition: color .2s, border-color .2s, transform .25s var(--spring);
  -webkit-tap-highlight-color: transparent;
  flex-shrink: 0;
}
.user-btn:hover, .cart-btn:hover { color: var(--primary); border-color: var(--primary); transform: translateY(-2px); }
.user-btn svg, .cart-btn svg { width: 21px; height: 21px; }
.user-dot {
  position: absolute;
  top: 9px; left: 10px;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--accent);
  border: 2px solid #fff;
}
.cart-count {
  position: absolute;
  top: -7px; left: -7px;
  min-width: 21px; height: 21px;
  padding: 0 5px;
  border-radius: 99px;
  background: var(--laser);
  color: #fff;
  font-size: .72rem;
  font-weight: 800;
  display: grid;
  place-items: center;
  box-shadow: 0 2px 8px rgba(241, 78, 28, .45);
}
.cart-count.bump { animation: countBump .4s var(--spring); }
@keyframes countBump { 0% { transform: scale(1); } 40% { transform: scale(1.45); } 100% { transform: scale(1); } }

/* ===== כפתור הוספה לסל בכרטיס ===== */
.add-cart-btn {
  width: 42px; height: 42px;
  border-radius: 13px;
  border: 0;
  background: var(--grad);
  color: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: var(--shadow-primary);
  transition: transform .25s var(--spring), box-shadow .25s;
  flex-shrink: 0;
  -webkit-tap-highlight-color: transparent;
}
.add-cart-btn:hover { transform: translateY(-2px) scale(1.05); }
.add-cart-btn:active { transform: scale(.94); }
.add-cart-btn svg { width: 20px; height: 20px; }
.add-cart-btn.added { animation: addedPop .5s var(--spring); }
@keyframes addedPop { 0% { transform: scale(1); } 40% { transform: scale(1.25) rotate(-8deg); } 100% { transform: scale(1); } }

/* ===== מגירת סל ===== */
.cart-overlay {
  position: fixed;
  inset: 0;
  background: rgba(8, 26, 38, .5);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .35s;
  z-index: 110;
}
.cart-overlay.open { opacity: 1; pointer-events: auto; }

.cart-drawer {
  position: fixed;
  top: 0; left: 0; bottom: 0;
  width: min(92vw, 410px);
  background: var(--surface);
  display: flex;
  flex-direction: column;
  box-shadow: 20px 0 60px rgba(10, 33, 48, .25);
  border-radius: 0 28px 28px 0;
  transform: translateX(-105%);
  transition: transform .45s var(--spring);
  z-index: 115;
}
.cart-drawer.open { transform: translateX(0); }
.cart-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  border-bottom: 1px solid var(--line);
}
.cart-drawer-head h3 { font-size: 1.15rem; }

.cart-items { flex: 1; overflow-y: auto; padding: 14px 16px; }
.cart-empty { text-align: center; padding: 60px 16px; color: var(--ink-soft); }
.cart-empty span { font-size: 3.2rem; display: block; margin-bottom: 12px; }
.cart-empty p { margin-bottom: 20px; font-weight: 600; }

.cart-item {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px dashed var(--line);
}
.cart-item:last-child { border-bottom: 0; }
.cart-item-img {
  width: 64px; height: 64px;
  border-radius: 13px;
  object-fit: cover;
  background: var(--grad-soft);
  border: 1px solid var(--line);
  flex-shrink: 0;
  display: grid;
  place-items: center;
  font-size: 1.4rem;
}
.cart-item-info { flex: 1; min-width: 0; }
.cart-item-info b {
  display: block;
  font-size: .9rem;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.cart-item-price { color: var(--primary); font-weight: 800; font-size: .92rem; }
.cart-item-side { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.cart-remove {
  border: 0;
  background: none;
  color: var(--ink-faint);
  font-size: .78rem;
  cursor: pointer;
  text-decoration: underline;
  padding: 2px;
}
.cart-remove:hover { color: var(--laser); }

/* בורר כמות */
.qty-stepper {
  display: inline-flex;
  align-items: center;
  border: 1.5px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: var(--surface);
}
.qty-btn {
  width: 34px; height: 34px;
  border: 0;
  background: var(--bg);
  color: var(--ink);
  font-size: 1.15rem;
  font-weight: 700;
  cursor: pointer;
  transition: background .2s, color .2s;
  -webkit-tap-highlight-color: transparent;
}
.qty-btn:hover { background: var(--primary-soft); color: var(--primary); }
.qty-input {
  width: 42px;
  border: 0;
  text-align: center;
  font-family: inherit;
  font-weight: 700;
  font-size: .95rem;
  color: var(--ink);
  background: transparent;
  -moz-appearance: textfield;
}
.qty-input::-webkit-inner-spin-button, .qty-input::-webkit-outer-spin-button { -webkit-appearance: none; }
.cart-item .qty-btn { width: 30px; height: 30px; font-size: 1rem; }
.cart-item .qty-input { width: 34px; font-size: .88rem; }

.cart-drawer-foot {
  padding: 16px 20px calc(18px + env(safe-area-inset-bottom));
  border-top: 1px solid var(--line);
  background: var(--bg);
  border-radius: 0 28px 0 0;
}
.cart-subtotal {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-size: 1.05rem;
  margin-bottom: 4px;
}
.cart-subtotal b { font-size: 1.35rem; color: var(--primary); }
.cart-ship-note { display: block; color: var(--ink-soft); margin-bottom: 12px; }
.cart-continue {
  display: block;
  width: 100%;
  margin-top: 10px;
  border: 0;
  background: none;
  color: var(--ink-soft);
  font-family: inherit;
  font-weight: 600;
  font-size: .9rem;
  cursor: pointer;
  text-decoration: underline;
}
.cart-continue:hover { color: var(--primary); }

/* ===== טוסט ===== */
.toast {
  position: fixed;
  bottom: 90px;
  right: 50%;
  transform: translate(50%, 20px);
  background: var(--ink);
  color: #fff;
  padding: 12px 22px;
  border-radius: 99px;
  font-weight: 700;
  font-size: .92rem;
  box-shadow: var(--shadow-lg);
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s, transform .35s var(--spring);
  z-index: 120;
}
.toast.show { opacity: 1; transform: translate(50%, 0); }

/* ===== דפי הרשמה/התחברות ===== */
.auth-container { display: flex; justify-content: center; }
.auth-card {
  width: min(100%, 440px);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 38px 34px;
  box-shadow: var(--shadow-md);
}
.auth-head { text-align: center; margin-bottom: 24px; }
.auth-icon { font-size: 2.6rem; display: block; margin-bottom: 8px; }
.auth-head h1 { font-size: 1.55rem; margin-bottom: 4px; }
.auth-head p { color: var(--ink-soft); font-size: .95rem; }
.auth-switch { text-align: center; margin-top: 18px; color: var(--ink-soft); font-size: .93rem; }
.auth-switch a { color: var(--primary); font-weight: 700; }
.auth-switch a:hover { text-decoration: underline; }
.form-error {
  background: #fdecec;
  color: #c0392b;
  border-radius: 12px;
  padding: 11px 16px;
  font-size: .92rem;
  font-weight: 600;
  margin-bottom: 16px;
}

/* ===== צ'קאאוט ===== */
.checkout-steps {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 36px;
}
.checkout-steps .step {
  padding: 8px 18px;
  border-radius: 99px;
  background: var(--surface);
  border: 1px solid var(--line);
  color: var(--ink-faint);
  font-weight: 700;
  font-size: .85rem;
}
.checkout-steps .step.done { color: #0d8d80; background: var(--accent-soft); border-color: transparent; }
.checkout-steps .step.active { color: #fff; background: var(--grad); border-color: transparent; box-shadow: var(--shadow-primary); }

.checkout-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 34px;
  align-items: start;
}
.checkout-form-wrap {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 34px;
}
.checkout-form-wrap h1 { font-size: 1.6rem; margin-bottom: 16px; }
.checkout-login-hint {
  background: var(--grad-soft);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 11px 16px;
  font-size: .92rem;
  margin-bottom: 18px;
}
.checkout-login-hint a { color: var(--primary); }
.form-section-title {
  font-size: 1.05rem;
  margin: 22px 0 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--line);
}
.demo-payment-note {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #9a3412;
  border-radius: 12px;
  padding: 11px 16px;
  font-size: .9rem;
  margin-bottom: 16px;
}
.cc-small-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 0; }
.cc-small-row .form-field { margin-bottom: 0; }
.checkout-secure { text-align: center; color: var(--ink-soft); font-size: .87rem; margin-top: 12px; }

.checkout-summary {
  position: sticky;
  top: 96px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 26px;
}
.checkout-summary h3 { margin-bottom: 16px; }
.summary-items { list-style: none; }
.summary-items li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px dashed var(--line);
}
.summary-items img, .summary-thumb-empty {
  width: 52px; height: 52px;
  border-radius: 11px;
  object-fit: cover;
  background: var(--grad-soft);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.summary-item-info { flex: 1; min-width: 0; }
.summary-item-info b { font-size: .88rem; display: block; line-height: 1.3; }
.summary-item-info small { color: var(--ink-soft); }
.summary-line { font-weight: 800; color: var(--ink); font-size: .92rem; }
.summary-row {
  display: flex;
  justify-content: space-between;
  padding: 12px 0 0;
  color: var(--ink-soft);
  font-size: .95rem;
}
.summary-row.total { font-size: 1.1rem; color: var(--ink); }
.summary-row.total b { color: var(--primary); font-size: 1.4rem; }
.free-ship { color: #0d8d80; }
.summary-note { display: block; color: var(--ink-faint); margin-top: 12px; font-size: .8rem; }

/* ===== אישור הזמנה ===== */
.order-success-wrap { max-width: 620px; margin: 0 auto; text-align: center; }
.success-burst { font-size: 4rem; animation: burstIn .8s var(--spring); }
@keyframes burstIn { 0% { transform: scale(0) rotate(-30deg); } 100% { transform: scale(1) rotate(0); } }
.order-success-wrap h1 { font-size: clamp(1.5rem, 4vw, 2.2rem); margin: 12px 0 8px; }
.order-number { color: var(--ink-soft); font-size: 1.05rem; }
.order-number b { color: var(--primary); }
.order-note { color: var(--ink-soft); margin: 6px 0 26px; }
.success-summary { text-align: right; }
.success-actions { display: flex; gap: 13px; justify-content: center; flex-wrap: wrap; margin-top: 26px; }

/* ===== כרטיסי הזמנה (אזור אישי) ===== */
.account-container { max-width: 760px; }
.panel-row { display: flex; justify-content: space-between; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 24px; }
.panel-row h2 { font-size: 1.5rem; }
.orders-list { display: flex; flex-direction: column; gap: 16px; }
.order-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px;
}
.order-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
.order-head b { font-size: 1.02rem; }
.order-head small { display: block; color: var(--ink-faint); }
.tag-pill {
  padding: 5px 14px;
  border-radius: 99px;
  font-size: .8rem;
  font-weight: 700;
}
.pill-new { background: var(--accent-soft); color: #0d8d80; }
.pill-done { background: var(--primary-soft); color: var(--primary-dark); }
.order-items { list-style: none; }
.order-items li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 0;
  border-bottom: 1px dashed var(--line);
  font-size: .93rem;
  color: var(--ink-soft);
}
.order-items li b { color: var(--ink); }
.order-total {
  display: flex;
  justify-content: space-between;
  padding-top: 12px;
  font-weight: 800;
}
.order-total b { color: var(--primary); font-size: 1.15rem; }
.order-ship { margin-top: 12px; color: var(--ink-soft); font-size: .9rem; }

/* דף מוצר - שורת רכישה */
.product-buy-row {
  display: flex;
  gap: 13px;
  align-items: stretch;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.product-buy-row .qty-stepper { border-radius: 99px; padding: 2px; }
.product-buy-row .qty-btn { border-radius: 99px; width: 40px; height: 40px; }
.btn-buy { flex: 1; min-width: 200px; }

/* רספונסיבי לחנות */
@media (max-width: 1024px) {
  .checkout-grid { grid-template-columns: 1fr; }
  .checkout-summary { position: static; }
}
@media (max-width: 640px) {
  .checkout-form-wrap { padding: 22px 18px; }
  .auth-card { padding: 28px 20px; }
  .cc-small-row { grid-template-columns: 1fr 1fr; }
  .cart-drawer { width: min(94vw, 400px); border-radius: 0 22px 22px 0; }
  .toast { bottom: 96px; width: max-content; max-width: 90vw; }
  .header-actions { gap: 8px; }
  .user-btn, .cart-btn { width: 42px; height: 42px; border-radius: 13px; }
}

/* כפתור סגירה - זמין גם מחוץ למדיה של המובייל (משמש את מגירת הסל) */
.nav-close {
  width: 40px; height: 40px;
  border: 0;
  border-radius: 13px;
  background: var(--bg);
  color: var(--ink-soft);
  font-size: 1.05rem;
  font-weight: 700;
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: background .2s, color .2s;
  -webkit-tap-highlight-color: transparent;
}
.nav-close:hover { background: var(--primary-soft); color: var(--primary); }

/* ===== טקסט עשיר (תוכן נערך) ===== */
.rich-text { color: var(--ink-soft); font-size: .98rem; line-height: 1.75; }
.rich-text h2 { color: var(--ink); font-size: 1.45rem; margin: 24px 0 10px; }
.rich-text h3 { color: var(--ink); font-size: 1.15rem; margin: 18px 0 8px; }
.rich-text p { margin-bottom: 12px; }
.rich-text b, .rich-text strong { color: var(--ink); }
.rich-text ul, .rich-text ol { padding-right: 24px; margin-bottom: 12px; }
.rich-text li { margin-bottom: 4px; }
.rich-text a { color: var(--primary); text-decoration: underline; }
.rich-text a:hover { color: var(--primary-dark); }
.rich-text blockquote {
  border-right: 3px solid var(--accent);
  background: var(--surface);
  border-radius: var(--radius-sm);
  padding: 12px 18px;
  margin: 14px 0;
}
.rich-text img { border-radius: var(--radius-sm); margin: 10px 0; }
.custom-page-container { max-width: 820px; }
.about-intro .rich-text p { margin: 0; }

/* ===== לוגו מתמונה + כיבוי הנפשה (נשלט מפאנל הניהול) ===== */
.logo-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 14px;
}
.oz-logo.no-anim .oz-shine,
.oz-logo.no-anim .oz-dot,
.oz-logo.no-anim .oz-dot-halo,
.oz-logo.no-anim .oz-laser,
.oz-logo.no-anim .oz-waves path { animation: none !important; }
.oz-logo.no-anim .oz-laser { stroke-dashoffset: 0; opacity: 1; }
.oz-logo.no-anim .oz-dot-halo { opacity: 0; }

/* ===== הטמעת וידאו (יוטיוב) ===== */
.video-embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--line);
  background: #000;
  margin-bottom: 22px;
}
.video-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.rich-text .video-embed { margin: 16px 0; }

/* תמונת קטגוריה בכרטיס */
.category-img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: 13px;
  overflow: hidden;
  margin-bottom: 14px;
  background: var(--grad-soft);
}
.category-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s var(--ease);
}
.category-card:hover .category-img img { transform: scale(1.06); }

/* תג ביקורות גוגל */
.google-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: max-content;
  margin: -28px auto 30px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 99px;
  padding: 9px 20px;
  font-weight: 700;
  box-shadow: var(--shadow-sm);
}
.google-badge b {
  background: linear-gradient(90deg, #4285f4, #ea4335, #fbbc05, #34a853);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* ===== בחירת אמצעי תשלום ===== */
.pay-methods {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.pay-method { cursor: pointer; }
.pay-method input { display: none; }
.pay-method-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 2px;
  padding: 14px 10px;
  border: 2px solid var(--line);
  border-radius: var(--radius-sm);
  background: var(--bg);
  transition: border-color .2s, box-shadow .2s, background .2s;
  height: 100%;
}
.pay-method:hover .pay-method-body { border-color: var(--primary); }
.pay-method.selected .pay-method-body,
.pay-method input:checked + .pay-method-body {
  border-color: var(--accent);
  background: var(--surface);
  box-shadow: 0 0 0 3px rgba(20, 179, 162, .15);
}
.pay-icon { font-size: 1.5rem; }
.pay-method-body b { font-size: .92rem; }
.pay-method-body small { color: var(--ink-soft); font-size: .74rem; }

.pay-panel {
  background: var(--grad-soft);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  padding: 14px 18px;
  margin-bottom: 18px;
  font-size: .93rem;
  color: var(--ink-soft);
}
.pay-panel b { color: var(--ink); }
.bank-details {
  background: var(--surface);
  border: 1px dashed var(--line);
  border-radius: 10px;
  padding: 10px 14px;
  font-weight: 600;
  color: var(--ink) !important;
  margin: 8px 0;
}

/* תמונת מוצר בדף מוצר: תצוגה מלאה ללא חיתוך/זום */
.product-gallery img {
  object-fit: contain;
  background: #fff;
  padding: 14px;
}

/* ===== באנר קבלנים / מגזר עסקי ===== */
.contractors-section { padding: 0 0 92px; }
.contractors-banner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  background:
    radial-gradient(600px 300px at 85% 20%, rgba(20, 179, 162, .35), transparent),
    var(--ink);
  background-size: cover;
  background-position: center;
  color: #fff;
  border-radius: var(--radius-lg);
  padding: 44px 48px;
  overflow: hidden;
}
.contractors-content { max-width: 620px; }
.contractors-banner h2 { font-size: clamp(1.4rem, 3vw, 2rem); margin-bottom: 10px; }
.contractors-banner p { color: #c9d8e4; margin-bottom: 22px; font-size: .98rem; }
.contractors-icon { font-size: 4.5rem; opacity: .85; flex-shrink: 0; }
@media (max-width: 640px) {
  .contractors-section { padding: 0 0 56px; }
  .contractors-banner { flex-direction: column; text-align: center; padding: 30px 22px; }
  .contractors-icon { font-size: 3rem; }
}

/* ===== תג צף (מבצעים והודעות) ===== */
.fwidget {
  position: fixed;
  top: var(--fw-top, 42%);
  right: 0;
  z-index: 105;
}
.fwidget-tab {
  position: absolute;
  top: 0;
  right: 0;
  transform: rotate(-90deg) translateY(-100%);
  transform-origin: top right;
  background: var(--laser);
  color: #fff;
  border: 0;
  border-radius: 12px 12px 0 0;
  padding: 9px 20px;
  font-family: inherit;
  font-weight: 800;
  font-size: .9rem;
  cursor: pointer;
  box-shadow: 0 -4px 18px rgba(241, 78, 28, .4);
  white-space: nowrap;
  transition: padding .2s;
}
.fwidget-tab:hover { padding-bottom: 14px; }
.fwidget-panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(86vw, 320px);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 18px 0 0 18px;
  box-shadow: var(--shadow-lg);
  padding: 20px;
  transform: translateX(105%);
  transition: transform .45s var(--spring);
  pointer-events: none;
}
.fwidget.open .fwidget-panel { transform: translateX(0); pointer-events: auto; }
.fwidget.open .fwidget-tab { opacity: 0; pointer-events: none; }
.fwidget-close { position: absolute; top: 10px; left: 10px; width: 32px; height: 32px; }
.fwidget-panel h3 { margin-bottom: 8px; padding-left: 34px; }
.fwidget-panel p { color: var(--ink-soft); font-size: .93rem; margin-bottom: 14px; }

/* ===== מובייל: מבנה אזור הפתיחה המקורי (תוכן ואז תמונה) ===== */
@media (max-width: 640px) {
  .hero-card-main { padding: 8px; }
  .fwidget { top: var(--fw-top-m, 34%); }
}

/* ===== תיקון דף מוצר: תמונה בגודל טבעי מלא + ריווח כפתורים ===== */
/* הגלריה מתאימה את עצמה לתמונה - בלי ריבוע כפוי ובלי שטח לבן מבוזבז */
.product-gallery {
  display: grid;
  place-items: center;
  background: #fff;
}
.product-gallery img {
  aspect-ratio: auto;
  width: 100%;
  height: auto;
  max-height: 560px;
  object-fit: contain;
  padding: 10px;
}

/* ריווח נדיב בין כפתורי הפעולה */
.product-actions { gap: 14px; }
.product-actions .btn { white-space: nowrap; }
.product-buy-row { gap: 14px; }
.product-perks { gap: 12px; }

@media (max-width: 640px) {
  /* במובייל: כפתורים אחד מתחת לשני ברוחב מלא - לא דחוסים */
  .product-actions { flex-direction: column; align-items: stretch; }
  .product-actions .btn { width: 100%; flex: none; white-space: normal; }
  .product-buy-row .btn-buy { min-width: 0; }
  .product-gallery img { max-height: 380px; }
}

/* מובייל: שורת רכישה מרווחת - כמות למעלה, כפתור קנייה ברוחב מלא */
@media (max-width: 640px) {
  .product-buy-row { flex-direction: column; align-items: stretch; gap: 12px; }
  .product-buy-row .qty-stepper { align-self: center; }
  .btn-buy { width: 100%; }
  .product-perks { gap: 8px; }
  .perk { font-size: .8rem; padding: 7px 12px; }
}

/* ===== דף מוצר: תיקוני תמונות (תגית, זום, גדלים אחידים) ===== */
/* התגית נעוצה בתמונה - לא בראש הדף (הגלריה חייבת להיות positioned גם במובייל) */
@media (max-width: 1024px) {
  .product-gallery { position: relative; }
}
/* "צפו גם" - ללא זום וללא חיתוך, כמו התמונה הראשית */
.related-section .product-media { background: #fff; }
.related-section .product-media img { object-fit: contain; padding: 8px; }
.related-section .product-card:hover .product-media img { transform: none; }

@media (max-width: 640px) {
  /* מובייל: תמונה ראשית ותמונות "צפו גם" באותו פורמט (4:3, ללא זום), פינות מעוגלות */
  .product-gallery {
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    max-height: none;
  }
  .product-gallery img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    max-height: none;
    object-fit: contain;
    padding: 8px;
  }
  .related-section .product-media img { padding: 6px; }
}

/* ===== תג צף: צבע מותאם + הסתרה לפי מכשיר ===== */
.fwidget-tab { background: var(--fw-color, #f14e1c); box-shadow: 0 -4px 18px rgba(0, 0, 0, .18); }
.fwidget-panel .btn-primary { background: var(--fw-color, var(--primary)); box-shadow: none; }
@media (max-width: 900px) { .fwidget.fw-hide-mobile { display: none; } }
@media (min-width: 901px) { .fwidget.fw-hide-desktop { display: none; } }

/* ===== תוסף נגישות ===== */
.a11y { position: fixed; bottom: 92px; right: 18px; z-index: 106; }
.a11y-btn {
  width: 52px; height: 52px;
  border-radius: 50%;
  border: 0;
  background: #1d4ed8;
  color: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: 0 10px 26px rgba(29, 78, 216, .4);
  transition: transform .3s var(--spring);
}
.a11y-btn:hover { transform: scale(1.08); }
.a11y-btn svg { width: 30px; height: 30px; }
.a11y-panel {
  position: absolute;
  bottom: 62px;
  right: 0;
  width: min(86vw, 300px);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: var(--shadow-lg);
  padding: 14px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .25s, transform .3s var(--spring), visibility .25s;
}
.a11y.open .a11y-panel { opacity: 1; visibility: visible; transform: translateY(0); }
.a11y-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.a11y-close { width: 32px; height: 32px; }
.a11y-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.a11y-grid button {
  font-family: inherit;
  font-size: .85rem;
  font-weight: 600;
  padding: 10px 8px;
  border: 1.5px solid var(--line);
  border-radius: 11px;
  background: var(--bg);
  color: var(--ink);
  cursor: pointer;
  transition: border-color .15s, background .15s;
}
.a11y-grid button:hover { border-color: var(--primary); }
.a11y-grid button.on { background: var(--primary); color: #fff; border-color: var(--primary); }
.a11y-grid .a11y-reset { grid-column: span 2; color: var(--laser); }
@media (max-width: 640px) { .a11y { bottom: 84px; right: 12px; } .a11y-btn { width: 46px; height: 46px; } }

/* מצבי נגישות (מוחלים על html) */
html.a11y-fs-1 { font-size: 112%; }
html.a11y-fs-2 { font-size: 125%; }
html.a11y-fs-m1 { font-size: 90%; }
html.a11y-contrast body { filter: contrast(1.3); }
html.a11y-gray body { filter: grayscale(1); }
html.a11y-contrast.a11y-gray body { filter: contrast(1.3) grayscale(1); }
html.a11y-links a { text-decoration: underline !important; background: #fff3a8; color: #000 !important; }
html.a11y-font body, html.a11y-font * { font-family: Arial, Helvetica, sans-serif !important; }
html.a11y-motion *, html.a11y-motion *::before, html.a11y-motion *::after { animation: none !important; transition: none !important; }
html.a11y-motion .reveal { opacity: 1 !important; transform: none !important; }

/* ===== פס לוגואי חברות הבנייה ===== */
.logos-strip { margin-bottom: 26px; text-align: center; }
.logos-title { color: var(--ink-soft); font-weight: 700; margin-bottom: 16px; }
.logos-marquee {
  overflow: hidden;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 16px 0;
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.logos-track {
  display: flex;
  align-items: center;
  gap: 48px;
  width: max-content;
  animation: logosScroll 40s linear infinite;
}
.logos-marquee:hover .logos-track { animation-play-state: paused; }
.logos-track img {
  height: 54px;
  width: auto;
  max-width: 180px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: .75;
  transition: filter .3s, opacity .3s;
}
.logos-track img:hover { filter: none; opacity: 1; }
@keyframes logosScroll { from { transform: translateX(0); } to { transform: translateX(50%); } }
@media (max-width: 640px) { .logos-track { gap: 30px; } .logos-track img { height: 40px; max-width: 130px; } }
@media (prefers-reduced-motion: reduce) { .logos-track { animation: none; } }

/* ===== ביטול זום בכרטיסי מוצר וקטגוריות (כמו בדף מוצר) ===== */
.product-media { background: #fff; }
.product-media img { object-fit: contain; padding: 8px; }
.product-card:hover .product-media img { transform: none; }
.category-img img { object-fit: contain; background: #fff; }
.category-card:hover .category-img img { transform: none; }

/* ===== זימון תור ===== */
.booking-container { max-width: 820px; }
.booking-form {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 30px;
}
.booking-form .form-field input,
.booking-form .form-field select,
.booking-form .form-field textarea { background: var(--surface); }
.booking-success { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg); }
.booking-success h3 { margin-top: 6px; }
@media (max-width: 640px) { .booking-form { padding: 20px 16px; } }

/* ===== שיתופי פעולה ===== */
.partners-container { max-width: 900px; }
.partners-body {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  padding: 30px 34px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 34px;
}
.partners-body h3 { grid-column: auto; margin: 6px 0 4px !important; color: var(--primary-dark); }
.partners-body p { margin-bottom: 14px; }
@media (max-width: 800px) { .partners-body { grid-template-columns: 1fr; padding: 22px 18px; } }

/* ===== נגישות: הסתרה לפי מכשיר ===== */
@media (max-width: 900px) { .a11y.a11y-hide-mobile { display: none; } }
@media (min-width: 901px) { .a11y.a11y-hide-desktop { display: none; } }

/* ===== לוגו מתמונה מונפש ===== */
.logo-img.anim { animation: logoFloat 4.5s ease-in-out infinite; }
@keyframes logoFloat {
  0%, 100% { transform: translateY(0); filter: drop-shadow(0 2px 4px rgba(14,110,151,.15)); }
  50% { transform: translateY(-3px); filter: drop-shadow(0 8px 14px rgba(14,110,151,.28)); }
}
.logo:hover .logo-img.anim { animation: logoFloat 1.2s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { .logo-img.anim { animation: none; } }

/* הערת חנות בדף אישור */
.customer-note-box { background: var(--grad-soft); border-radius: 10px; padding: 12px 14px; margin-top: 10px; color: var(--ink); }

/* לוגואי קבלנים בצבע מלא (מתג בתוכן) */
.logos-marquee.logos-color .logos-track img { filter: none; opacity: 1; }
.logos-marquee.logos-color .logos-track img:hover { transform: scale(1.06); }


/* ===== קופון בסיכום ההזמנה + מחיר חדש ===== */
.coupon-box { margin: 8px 0 10px; padding: 10px 12px; background: var(--bg); border: 1px dashed var(--line); border-radius: 10px; }
.coupon-row { display: flex; gap: 8px; }
.coupon-row input { flex: 1; min-width: 0; padding: 9px 12px; border: 1px solid var(--line); border-radius: 9px; font: inherit; text-transform: uppercase; }
.coupon-btn { padding: 9px 14px; border: 0; border-radius: 9px; background: var(--primary); color: #fff; font: inherit; font-weight: 600; cursor: pointer; white-space: nowrap; }
.coupon-btn:hover { background: var(--primary-dark); }
.coupon-applied { display: flex; align-items: center; gap: 6px; font-size: .92rem; }
.coupon-remove { margin-inline-start: auto; border: 0; background: transparent; cursor: pointer; color: var(--ink-soft); font-size: .95rem; }
.coupon-remove:hover { color: #c0392b; }
.coupon-msg { display: block; margin-top: 6px; font-size: .82rem; }
.coupon-msg.err { color: #c0392b; }
.coupon-msg.ok { color: #1a9e6b; }
.summary-row.discount b { color: #1a9e6b; }
.current-price.sale { color: #c0392b; }


/* ===== אזור פתיחה: תגיות בגובה אחיד, הצגה לפי מכשיר, תמונה בין הכותרת לפסקה בסלולר ===== */
.hero-chip { display: inline-flex; align-items: center; gap: 6px; height: 42px; line-height: 1; padding-top: 0; padding-bottom: 0; }
@media (max-width: 900px) { .hero-chip.chip-hide-mobile { display: none; } }
@media (min-width: 901px) { .hero-chip.chip-hide-desktop { display: none; } }

@media (max-width: 1024px) {
  /* הופכים את תוכן הפתיח לרשימה שטוחה כדי שהתמונה תיכנס בין הכותרת לפסקת המשנה */
  .hero-inner { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .hero-content { display: contents; }
  .hero-eyebrow { order: 1; align-self: flex-start; }
  .hero-title { order: 2; }
  .hero-visual { order: 3; margin: 4px 0 26px; }
  .hero-sub { order: 4; }
  .hero-actions { order: 5; }
  .hero-trust { order: 6; }
  .chip-1 { top: -12px; right: 4%; }
  .chip-2 { bottom: auto; top: 44%; left: -4px; }
  .chip-3 { bottom: -12px; right: 10%; }
}
@media (max-width: 640px) {
  .hero-visual { margin: 2px 0 22px; }
  .hero-sub { margin-bottom: 22px; }
}


/* ===== תג צף בצד שמאל ===== */
.fwidget.fw-left { right: auto; left: 0; }
.fwidget.fw-left .fwidget-tab { right: auto; left: 0; transform: rotate(90deg) translateY(-100%); transform-origin: top left; }
.fwidget.fw-left .fwidget-panel { right: auto; left: 0; border-radius: 0 18px 18px 0; transform: translateX(-105%); }
.fwidget.fw-left.open .fwidget-panel { transform: translateX(0); }
.fwidget.fw-left .fwidget-close { left: auto; right: 10px; }
.fwidget.fw-left .fwidget-panel h3 { padding-left: 0; padding-right: 34px; }


/* ===== תמונת כיסוי לסרטון ===== */
.video-facade { position: relative; cursor: pointer; background: #000; }
.video-facade img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.video-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 74px; height: 74px; border: 0; border-radius: 50%; background: rgba(255,255,255,.92); color: var(--primary); box-shadow: 0 10px 30px rgba(0,0,0,.35); cursor: pointer; display: grid; place-items: center; transition: transform .2s, background .2s; }
.video-play svg { width: 34px; height: 34px; margin-inline-start: 4px; }
.video-facade:hover .video-play { transform: translate(-50%, -50%) scale(1.08); background: #fff; }


/* מלכודת בוטים - שדה מוסתר */
.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
/* תמונת כיסוי לסרטון: התמונה השלמה (contain) */
.video-facade img { object-fit: contain; background: #000; }
/* תמונות בתוכן עשיר: תמיכה בגודל ויישור שנקבעו בעורך */
.rich-text img { max-width: 100%; height: auto; }
.rich-text::after { content: ''; display: block; clear: both; }

/* ===== מניעת גלילה/הזזה אופקית בנייד (הדף "זז" ימינה ושמאלה) ===== */
html, body { overflow-x: hidden; overflow-x: clip; max-width: 100%; }
main { overflow-x: clip; }
/* שדה מלכודת הבוטים: מוסתר בלי להזיז אותו מחוץ למסך (מיקום שלילי יוצר גלילה אופקית ב-RTL) */
.hp-field { position: absolute !important; left: 0 !important; top: 0 !important; width: 1px !important; height: 1px !important; opacity: 0; overflow: hidden; clip-path: inset(50%); pointer-events: none; }


/* ===== תמונת מוצר בגודל אחיד בכל מקום שהכרטיס מופיע (מובילים, כל המוצרים, צפו גם) ===== */
.product-media { aspect-ratio: auto; height: 230px; }
.product-media img { width: 100%; height: 100%; object-fit: contain; padding: 10px; }
@media (max-width: 1024px) { .product-media { height: 210px; } }
@media (max-width: 640px) {
  .product-media { height: 200px; }
  .scroll-x .product-media { height: 200px; }
}
/* מידות המוצר */
.product-dims { margin-top: 10px; padding: 10px 14px; background: var(--bg); border: 1px solid var(--line); border-radius: 12px; font-weight: 600; color: var(--ink-soft); font-size: .95rem; text-align: center; }
.card-dims { display: block; margin-top: 4px; color: var(--ink-soft); font-size: .8rem; }


/* ===== נגישות ומשפטי ===== */
.skip-link { position: absolute; top: -60px; right: 16px; z-index: 2000; background: var(--primary); color: #fff; padding: 10px 16px; border-radius: 0 0 10px 10px; font-weight: 700; transition: top .2s; }
.skip-link:focus { top: 0; outline: 3px solid var(--accent); }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .reveal { opacity: 1 !important; transform: none !important; }
}
.footer-legal { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 14px 20px 0; font-size: .82rem; color: var(--ink-faint); justify-content: center; }
.footer-legal a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.footer-legal a:hover { color: #fff; }
.a11y-statement { display: block; text-align: center; margin-top: 8px; font-size: .85rem; color: var(--primary); text-decoration: underline; }
.cookie-bar { position: fixed; bottom: 0; left: 0; right: 0; z-index: 120; display: flex; align-items: center; justify-content: center; gap: 16px; flex-wrap: wrap; padding: 12px 18px; background: var(--ink); color: #fff; font-size: .88rem; box-shadow: 0 -6px 24px rgba(0,0,0,.25); }
.cookie-bar a { color: #9fe3d9; text-decoration: underline; }
.cookie-bar .btn { padding: 8px 18px; }
@media (max-width: 900px) { .cookie-bar { bottom: 64px; border-radius: 12px 12px 0 0; } }
.consent-box { margin: 14px 0 12px; display: flex; flex-direction: column; gap: 8px; }
.consent-row { display: flex; gap: 10px; align-items: flex-start; font-size: .9rem; cursor: pointer; }
.consent-row input { width: 18px; height: 18px; margin-top: 3px; flex-shrink: 0; accent-color: var(--primary); }
.consent-row a { color: var(--primary); text-decoration: underline; }
.privacy-note { font-size: .82rem; color: var(--ink-soft); margin: 0 0 12px; }
.privacy-note a { color: var(--primary); text-decoration: underline; }

.cookie-bar[hidden] { display: none !important; }


/* ===== קרוסלות בנייד: מאפשרות גלילה אנכית של הדף גם כשהאצבע עליהן ===== */
.scroll-x { touch-action: pan-x pan-y pinch-zoom; overscroll-behavior-x: contain; scroll-snap-type: x proximity; }
/* צבע "מחיר חדש" מהתוכן */
.current-price.sale { color: var(--sale-color, #c0392b); }
/* מידות בכרטיס - מעל התיאור */
.card-dims { margin: 0 0 6px; flex-shrink: 0; }


/* ===== עיגול פינות אחיד לכל תמונות האתר (תוכן ← עיצוב תמונות) ===== */
.product-media img, .product-gallery img, .rich-text img, .category-img img, .about-photo, .video-facade img,
.hero-card-main img, .partners-body img, .custom-page-container img, .media-card img { border-radius: var(--img-radius, 12px); }

/* ===== דף מוצר: עמודת תמונה + מידות (המידות מחוץ לתיבה - לא נחתכות) ===== */
.product-gallery-col { position: sticky; top: 96px; }
.product-gallery { position: relative; top: auto; }
.product-gallery-col .product-dims { margin-top: 12px; }
@media (max-width: 1024px) { .product-gallery-col { position: static; } }
@media (max-width: 640px) {
  .product-layout { gap: 18px; }
  .product-gallery { display: block; aspect-ratio: auto; overflow: hidden; border-radius: 16px; }
  .product-gallery img { width: 100%; height: auto; max-height: 380px; object-fit: contain; padding: 8px; display: block; }
  .product-gallery-col .product-dims { margin: 10px 0 0; }
  .product-info h1 { margin-top: 0; }
}

/* ===== תג צף בנייד: לשונית קטנה ועדינה יותר ===== */
@media (max-width: 640px) {
  .fwidget-tab { font-size: .72rem; padding: 6px 12px; border-radius: 9px 9px 0 0; opacity: .88; box-shadow: 0 -2px 10px rgba(0,0,0,.15); }
  .fwidget-tab:hover { padding-bottom: 8px; }
}

/* ===== עיגול פינות אמיתי בכרטיסי מוצר/קטגוריה: התמונה מוצגת בגודלה (בלי "שוליים שקופים" של contain), כך שהפינות המעוגלות הן של התמונה עצמה ===== */
.product-media { display: flex; align-items: center; justify-content: center; padding: 10px; box-sizing: border-box; }
.product-media img { width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; padding: 0; border-radius: var(--img-radius, 12px); }
.related-section .product-media img, .scroll-x .product-media img { padding: 0; }
.product-card:hover .product-media img { transform: none; }
.category-img { display: flex; align-items: center; justify-content: center; padding: 8px; box-sizing: border-box; }
.category-img img { width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; border-radius: var(--img-radius, 12px); }
.product-gallery img { border-radius: var(--img-radius, 12px); }


/* ===== לוגואי קבלנים: גדולים יותר, גובה הבאנר נשאר (86px דסקטופ / 72px נייד) ===== */
.logos-marquee { padding: 7px 0; }
.logos-track img { height: 72px; max-width: 240px; }
@media (max-width: 640px) { .logos-marquee { padding: 6px 0; } .logos-track img { height: 60px; max-width: 190px; } }
/* צרו קשר בדף הבית */
.home-contact.no-side { grid-template-columns: 1fr; max-width: 720px; margin: 0 auto; }
.home-contact .contact-form { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 26px; }
@media (max-width: 640px) { .home-contact .contact-form { padding: 18px 14px; } }


/* תגית 2 בסלולר: באותו גובה של תגית 3 (תחתית התמונה) */
@media (max-width: 640px) { .chip-2 { top: auto; bottom: -12px; left: -4px; } }
/* סטטוס חיפוש */
.search-status { margin: -6px 0 18px; color: var(--ink-soft); font-size: .92rem; }
.search-status a { color: var(--primary); text-decoration: underline; }

/* ===== תגיות צפות 2 ו-3 בטאבלט ובסלולר: שתיהן מתחת לתמונה, אחת בכל קצה, בלי חפיפה ===== */
@media (max-width: 1024px) {
  .chip-2, .chip-3 { display: block; height: 36px; line-height: 36px; padding: 0 12px; top: auto; bottom: -12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; box-sizing: border-box; }
  .chip-2 { left: 4%; right: auto; max-width: 44%; }
  .chip-3 { right: 4%; left: auto; max-width: 44%; }
}
@media (max-width: 640px) {
  .chip-2, .chip-3 { font-size: .7rem; height: 32px; line-height: 32px; padding: 0 9px; }
  .chip-2 { left: 0; max-width: 47%; }
  .chip-3 { right: 0; max-width: 47%; }
}

/* באנר עליון: בלי כוכביות בצדי הטקסט */
.promo-spark { display: none; }


/* ===== תיקוני ביקורת: שכבות, safe-area, תפריט ===== */
.cookie-bar { z-index: 60; }
body.nav-locked .fwidget, body.nav-locked .a11y, body.nav-locked .cookie-bar { display: none !important; }
@media (max-width: 900px) {
  .cookie-bar { bottom: calc(64px + env(safe-area-inset-bottom, 0px)); }
  .a11y { bottom: calc(92px + env(safe-area-inset-bottom, 0px)); }
  body { padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px)); } /* מקום לסרגל הטלפון/וואטסאפ - הפוטר לא מוסתר */
}
@media (max-width: 640px) { .chip-1 { height: 32px; line-height: 32px; padding: 0 9px; font-size: .7rem; } }
/* הקישור "המוצרים" (בתוך תפריט המשנה) מעוצב כמו שאר פריטי התפריט */
.main-nav .nav-sub-trigger > a {
  position: relative;
  padding: 9px 17px;
  border-radius: 99px;
  font-weight: 600;
  font-size: .97rem;
  color: var(--ink-soft);
  transition: color .2s, background .2s;
}
.main-nav .nav-sub-trigger > a:hover { color: var(--primary); background: var(--primary-soft); }
.main-nav .nav-sub-trigger > a.active { color: #fff; background: var(--grad); box-shadow: var(--shadow-primary); }

/* דסקטופ: תגית 2 בקצה שמאל ותגית 3 בקצה ימין של התמונה - מרווח מקסימלי */
@media (min-width: 1025px) { .chip-3 { right: -8px; } .chip-2 { left: -8px; } }

/* ===== סרטוני יוטיוב בדפים (ניהול דפים) ===== */
.page-videos { display: flex; flex-wrap: wrap; gap: 22px 24px; justify-content: center; align-items: flex-start; margin: 26px 0; }
.page-video { width: 100%; margin: 0; }
.page-video.size-sm { max-width: 420px; }
.page-video.size-md { max-width: 720px; }
.page-video.size-lg { max-width: 960px; }
.page-video.size-full { max-width: 100%; }
.page-video .video-embed { margin-bottom: 8px; }
.page-video figcaption { text-align: center; font-weight: 600; color: var(--text); margin-top: 6px; }
.page-video .video-facade img { object-fit: contain; }

.vat-note { font-size: .78rem; color: var(--muted, #6b7a88); font-weight: 500; }

/* טאבלט: תמונת המוצר הראשית בפרופורציה דומה לדסקטופ ולנייד (לא ריבוע ענק חתוך) */
@media (max-width: 1024px) {
  .product-gallery { display: block; aspect-ratio: auto; overflow: hidden; border-radius: 16px; }
  .product-gallery img { width: 100%; height: auto; max-height: 420px; object-fit: contain; padding: 8px; display: block; }
}

/* נייד: חסימת גלילה אופקית של העמוד כולו במגע (הקרוסלות גוללות לרוחב בעצמן) + חיתוך גלישה בכותרת ובפוטר */
@media (max-width: 900px) {
  html { touch-action: pan-y pinch-zoom; }
  .site-header, .site-footer, .mobile-bar { overflow-x: clip; max-width: 100vw; }
  .footer-bottom, .footer-contact, .footer-col { min-width: 0; overflow-wrap: anywhere; }
}

/* סרטונים: רקע השוליים (שחור/לבן לפי ההגדרה בעיצוב) + 4 גדלי נגן בדף מוצר */
.video-embed, .video-facade, .video-facade img { background: var(--video-bg, #000); }
.video-embed.video-size-sm { max-width: 420px; }
.video-embed.video-size-md { max-width: 720px; }
.video-embed.video-size-lg { max-width: 960px; }
.product-info .video-embed[class*="video-size-"] { margin-inline: auto; }

/* ===== כרטיסי מוצר (קטגוריות, "צפו גם", דף הבית): התמונה ממלאת את כל שטח התמונה בכרטיס (יחס 4:3, חיתוך עדין בשוליים), התווית על התמונה ===== */
.product-card .product-media { aspect-ratio: 4 / 3; height: auto; padding: 0; display: block; overflow: hidden; border-radius: var(--img-radius, 12px) var(--img-radius, 12px) 0 0; }
.product-card .product-media img { width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; object-position: center; padding: 0; border-radius: 0; display: block; }
.scroll-x .product-media, .related-section .product-media { height: auto; }
@media (max-width: 1024px) { .product-card .product-media { height: auto; } }
@media (max-width: 640px) { .product-card .product-media, .scroll-x .product-media { height: auto; } }

/* נגן וידאו בנייד: 4 גדלים גם במסך צר (אחוז מרוחב התוכן), ממורכז */
@media (max-width: 640px) {
  .video-embed.video-size-sm { max-width: 55%; }
  .video-embed.video-size-md { max-width: 72%; }
  .video-embed.video-size-lg { max-width: 88%; }
  .product-info .video-embed[class*="video-size-"] { margin-inline: auto; }
}

/* נגן וידאו בדף מוצר: ארבעת הגדלים הם אחוז מרוחב עמודת המידע (זהה בכל המכשירים), ממורכז, יחס 16:9 */
.product-info .video-embed { width: 100%; max-width: 100%; margin-inline: auto; }
.product-info .video-embed.video-size-sm { width: 50%; max-width: 50%; }
.product-info .video-embed.video-size-md { width: 70%; max-width: 70%; }
.product-info .video-embed.video-size-lg { width: 85%; max-width: 85%; }
.product-info .video-embed.video-size-full { width: 100%; max-width: 100%; }
/* בנייד הנגן תמיד ברוחב מלא, כמו תמונת המוצר שמעליו וכרטיסי המוצרים שמתחתיו (הגודל שנבחר משפיע רק על טאבלט ודסקטופ) */
@media (max-width: 640px) {
  .product-info .video-embed, .product-info .video-embed.video-size-sm, .product-info .video-embed.video-size-md, .product-info .video-embed.video-size-lg { width: 100%; max-width: 100%; }
}

/* ===== נגן בדף מוצר (v55): תמונת הכיסוי מוצגת בפרופורציה שלה, ברוחב הנגן, בלי פסים שחורים — כך היא באותו גודל כמו תמונת המוצר. אחרי לחיצה הנגן עובר ל-16:9 ===== */
.product-info .video-embed.video-facade { aspect-ratio: auto; height: auto; }
.product-info .video-embed.video-facade img { position: static; display: block; width: 100%; height: auto; max-height: 78vh; object-fit: contain; }
/* נייד: ארבעת הגדלים נראים גם בטלפון; "רוחב מלא" = מקצה לקצה של המסך */
@media (max-width: 640px) {
  .product-info .video-embed.video-size-sm { width: 72%; max-width: 72%; margin-inline: auto; }
  .product-info .video-embed.video-size-md { width: 86%; max-width: 86%; margin-inline: auto; }
  .product-info .video-embed.video-size-lg { width: 100%; max-width: 100%; margin-inline: 0; }
  .product-info .video-embed.video-size-full { width: calc(100% + 32px); max-width: none; margin-inline: -16px; border-radius: 0; border-left: 0; border-right: 0; }
}

/* ===== צורת הנגן בדף מוצר (v56): יחס קבוע שנבחר בטופס המוצר — קובע את הגובה בכל המכשירים; גם אחרי לחיצה על נגן ===== */
.product-info .video-embed.video-ratio-16-9, .product-info .video-embed.video-facade.video-ratio-16-9 { aspect-ratio: 16 / 9; height: auto; }
.product-info .video-embed.video-ratio-4-3, .product-info .video-embed.video-facade.video-ratio-4-3 { aspect-ratio: 4 / 3; height: auto; }
.product-info .video-embed.video-ratio-1-1, .product-info .video-embed.video-facade.video-ratio-1-1 { aspect-ratio: 1 / 1; height: auto; }
.product-info .video-embed.video-ratio-3-4, .product-info .video-embed.video-facade.video-ratio-3-4 { aspect-ratio: 3 / 4; height: auto; }
.product-info .video-embed.video-facade[class*="video-ratio-"] img { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: contain; }

/* ===== טאבלט בלבד (v57): מסגרת תמונת המוצר נצמדת לתמונה — בלי פסים לבנים בצדדים, התווית על התמונה, פינות מעוגלות לתמונה עצמה ===== */
@media (min-width: 641px) and (max-width: 1024px) {
  .product-gallery { width: fit-content; max-width: 100%; margin-inline: auto; padding: 0; background: transparent; }
  .product-gallery img { width: auto; height: auto; max-width: 100%; max-height: 420px; padding: 0; object-fit: contain; }
}
