/*
Theme Name: Combo Landi Woo
Theme URI: http://combomat.co.il
Author: Bizon Limited
Author URI: http://combomat.co.il
Description: Тема для Combo Matanot: лендинг праздников + мини‑магазин WooCommerce.
Version: 5.5.9
Text Domain: combo-landi-woo
*/



:root {
  --bg-main: #FAF7F2;
  --bg-soft: #E8DFD5;
  --color-text: #1A1A1A;
  --color-gold: #D4A017;
  --color-accent: #8A1B2D;
  --radius-lg: 18px;
  --radius-md: 12px;
  --shadow-soft: 0 10px 25px rgba(0,0,0,0.08);
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: var(--bg-main);
  color: var(--color-text);
}
a { color: var(--color-accent); text-decoration: none; }
.site-header {
  padding: 12px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #ffffff;
  box-shadow: 0 2px 10px rgba(0,0,0,0.04);
  position: sticky;
  top: 0;
  z-index: 10;
}

/* ------------------------------------------------------------
   Product page: add spacing between file upload and Add to Cart
   (mobile friendly)
------------------------------------------------------------- */
.single-product form.cart .combo-product-extra {
  margin-bottom: 16px;
}

.single-product form.cart .combo-product-extra .form-row {
  margin: 0 0 12px;
}

.single-product form.cart .combo-product-extra .form-row:last-child {
  margin-bottom: 18px;
}

.single-product form.cart button.single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button {
  margin-top: 14px;
}

/* Single product: quantity + add-to-cart — в один ряд и по центру по вертикали */
.single-product form.cart .combo-qty-btn-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.single-product form.cart .combo-qty-btn-row .quantity {
  margin: 0;
}

.single-product form.cart .combo-qty-btn-row input.qty {
  margin: 0;
}

.single-product form.cart .combo-qty-btn-row button.single_add_to_cart_button,
.single-product form.cart .combo-qty-btn-row .single_add_to_cart_button {
  margin-top: 0 !important;
}
.logo { display: flex; align-items: center; justify-content: flex-end; }
.logo span { color: var(--color-accent); }
.main-nav { display: flex; gap: 10px; font-size: 13px; }
.main-nav a { padding: 4px 8px; border-radius: 999px; }
.main-nav a.active, .main-nav a:hover { background: rgba(138,27,45,0.08); }
main { padding-bottom: 40px; }
.section { padding: 18px 16px; }
.section-title { font-size: 20px; margin: 0 0 6px; }
.section-subtitle { margin: 0 0 12px; font-size: 13px; opacity: 0.8; }
.hero { padding: 26px 16px 32px; background: linear-gradient(135deg, #F2EBDF, #FAF7F2); }
.hero h1 { font-size: 24px; margin: 0 0 10px; }
.hero-text { margin: 0 0 16px; font-size: 14px; opacity: 0.9; }
.hero-tagline { text-transform: uppercase; letter-spacing: 0.12em; font-size: 11px; color: var(--color-accent); margin-bottom: 6px; }
.btn { padding: 9px 18px; border-radius: 999px; border: none; font-size: 14px; cursor: pointer; }
.btn-primary { background: var(--color-accent); color: #fff; box-shadow: 0 10px 25px rgba(0,0,0,0.15); }
.btn-outline { background: transparent; border: 1px solid var(--color-catalog-btn, var(--color-accent)); color: var(--color-catalog-btn, var(--color-accent)); }

.hero-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.hero-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: auto !important;
}
@media (max-width: 480px) {
  .hero-actions { justify-content: center; }
  .hero-actions .btn { max-width: 100%; }
}


.holidays-scroll-wrapper {
  position: relative;
  overflow: hidden;
  margin-inline: -16px;
  padding-inline: 16px;
}

.holidays-strip {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 0 4px 4px;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.holidays-strip::-webkit-scrollbar {
  display: none;
}

.holidays-strip .holiday-card:last-child {
  margin-left: 32px;
}

.scroll-fade {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 32px;
  pointer-events: none;
  z-index: 2;
  transition: opacity 0.2s ease;
  opacity: 1;
}

.scroll-fade-left {
  left: 16px;
  background: linear-gradient(to left, transparent, var(--bg-main));
}

.scroll-fade-right {
  right: 16px;
  background: linear-gradient(to right, transparent, var(--bg-main));
}

.scroll-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border-radius: 999px;
  border: none;
  background: rgba(255,255,255,0.95);
  box-shadow: 0 4px 12px rgba(0,0,0,0.18);
  display: none;
  align-items: center;
  justify-content: flex-start;
  font-size: 18px;
  cursor: pointer;
  z-index: 3;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.scroll-arrow-prev { right: 24px; }
.scroll-arrow-next { left: 24px; }

.holidays-scroll-wrapper:hover .scroll-arrow {
  opacity: 1;
}


.holiday-card { min-width: 180px; background: #ffffff; border-radius: 12px; padding: 10px 12px; box-shadow: 0 6px 16px rgba(0,0,0,0.08); border: 1px solid transparent; }

/* Fix: holiday cards are links; keep titles same (black) instead of default accent link color */
.holiday-card,
.holiday-card:visited,
.holiday-card:hover,
.holiday-card:active {
  color: var(--color-text);
  text-decoration: none;
}
.holiday-card .holiday-name,
.holiday-card .holiday-subtitle {
  color: var(--color-text);
}
.holiday-card.active { border-color: var(--color-gold); }
.holiday-emoji { font-size: 22px; margin-bottom: 4px; }
.holiday-name { font-weight: 600; margin: 0 0 2px; }
.holiday-subtitle { font-size: 12px; opacity: 0.7; margin: 0; }
.products-grid { display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)); gap: 12px; }
.product-card { background: #ffffff; border-radius: 12px; padding: 12px; box-shadow: 0 6px 16px rgba(0,0,0,0.08); }
.product-img-placeholder { height: 120px; border-radius: 10px; background: #EFE6DA; display: flex; align-items: center; justify-content: center; font-size: 13px; color: #8C7B66; margin-bottom: 8px; }
.product-title { font-size: 15px; margin: 0 0 4px; }
.product-price { margin: 0; font-weight: 600; color: var(--color-accent); }
.combo-layout { display: flex; flex-direction: column; gap: 14px; background: var(--bg-soft); border-radius: 18px; padding: 14px 14px 16px; box-shadow: 0 10px 25px rgba(0,0,0,0.12); }
.combo-steps { list-style: none; padding: 0; margin: 0 0 4px; display: flex; flex-wrap: wrap; gap: 8px; font-size: 13px; }
.combo-steps li { background: #fff; border-radius: 999px; padding: 6px 10px; display: flex; align-items: center; gap: 6px; }
.combo-steps span { width: 20px; height: 20px; border-radius: 999px; background: var(--color-accent); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 11px; }
.combo-preview { background: #fff; border-radius: 12px; padding: 10px 12px; border: 1px dashed rgba(0,0,0,0.1); }
.combo-preview h3 { margin: 0 0 6px; font-size: 15px; }
.combo-preview ul { margin: 0 0 6px; padding-left: 18px; font-size: 13px; }
.combo-summary { font-size: 13px; }
.combo-summary strong { color: var(--color-accent); }
.form-field { margin-bottom: 10px; font-size: 14px; }
.form-field label { display: block; margin-bottom: 4px; font-weight: 500; }
.form-field input[type=text], .form-field input[type=file], .form-field textarea { width: 100%; padding: 8px 10px; border-radius: 10px; border: 1px solid #D2C6B8; background: #FFF; font-size: 14px; }
.badge { display: inline-block; padding: 3px 8px; border-radius: 999px; font-size: 11px; background: rgba(212,160,23,0.1); color: var(--color-gold); }
.cart-list { list-style: none; padding: 0; margin: 0 0 12px; }
.cart-item { background: #fff; border-radius: 12px; padding: 10px 12px; margin-bottom: 8px; box-shadow: 0 6px 16px rgba(0,0,0,0.08); font-size: 13px; }
.cart-item-title { font-weight: 600; margin-bottom: 2px; }
.cart-summary { background: var(--bg-soft); border-radius: 12px; padding: 10px 12px; font-size: 14px; }
.notice { font-size: 13px; padding: 8px 10px; border-radius: 12px; background: #FFF7E0; border: 1px solid rgba(212,160,23,0.6); margin: 8px 0 0; }
.site-footer { padding: 14px 16px 24px; text-align: center; font-size: 12px; opacity: 0.8; }
.site-footer a { color: var(--color-accent); }
/* Логотип и мобильная шапка */
.logo-img {
  display: block;
  height: auto;
  max-height: 36px;
}

@media (max-width: 768px) {
  .main-nav {
    /*
      Mobile: keep cart button visually pinned to the LEFT edge.
      In RTL, inline-end == LEFT, so padding-inline-end was pushing the cart inward.
    */
    padding-inline-end: 0;
    font-size: 12px;
  }
  .logo-img {
    max-height: 22px;
  }
}

/* Активный праздник с толстой рамкой */
.holiday-card.active {
  border-color: var(--color-accent);
  border-width: 3px;
}

/* Дата текущего праздника под карточкой */
.holiday-date {
  font-size: 13px;
  font-weight: 600;
  margin: 4px 0 0;
  color: var(--color-accent);
}

.holiday-date:empty {
  display: none;
}


/* === RTL fix: always render right-to-left for Hebrew layout === */
html, body {
  direction: rtl;
  unicode-bidi: bidi-override;
  text-align: right;
}

.combo-holidays-row,
.combo-holidays-grid,
.holidays-strip,
.product-card,
.product-card *,
.holiday-card,
.holiday-card * {
  direction: rtl;
  text-align: right;
}

/* Общие стили шапки и навигации */
.main-nav {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: flex-start;
}

.main-nav a {
  text-decoration: none;
}

/* Кнопка корзины в шапке */
.main-nav .cart-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 999px;
  background: var(--color-accent, #d94b4b);
  color: #fff;
  font-weight: 600;
}

.main-nav .cart-icon {
  font-size: 18px;
}

.main-nav .cart-count {
  min-width: 18px;
  height: 18px;
  border-radius: 999px;
  padding: 0 6px;
  font-size: 11px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  background: #fff;
  color: var(--color-accent, #d94b4b);
}

/* Контент WooCommerce без правого сайдбара */
.default-main {
  max-width: 1200px;
  margin: 40px auto 80px;
  padding: 0 16px;
}

/* Дополнительно прячем стандартный сайдбар, если вдруг что-то его выводит */
.widget-area,
.sidebar,
#secondary {
  display: none !important;
}

/* Подсветка активного праздника + дата */
.holiday-card {
  border-radius: 16px;
  border: 2px solid transparent;
}

.holiday-card.active {
  border-color: var(--color-accent, #d94b4b);
}

.holiday-card .holiday-date {
  margin-top: 4px;
  font-size: 13px;
  font-weight: 600;
  color: var(--color-accent, #d94b4b);
}


/* Скрываем сортировку и счётчик результатов WooCommerce в категориях/магазине */
.woocommerce .woocommerce-ordering,
.woocommerce .woocommerce-result-count {
  display: none !important;
}

/* Блок "О нас" на главной */
.about-section {
  max-width: 900px;
  margin: 40px auto 32px;
  padding: 32px 24px;
  background: var(--bg-soft);
  border-radius: 22px;
  text-align: right;
  box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}
.about-section h1 {
  font-size: 30px;
  margin-bottom: 16px;
}
.about-section h2 {
  font-size: 24px;
  margin-top: 20px;
  margin-bottom: 10px;
}
.about-section p {
  margin: 6px 0;
  line-height: 1.7;
}
.about-section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.about-section ul li {
  margin: 4px 0;
  padding-right: 18px;
  position: relative;
}
.about-section ul li::before {
  content: "•";
  position: absolute;
  right: 0;
  top: 0;
}

/* About page new layout */
.about-combo-page {
  padding: 40px 20px;
  max-width: 900px;
  margin: 0 auto;
}
.about-combo-container {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 18px;
  padding: 24px 20px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
}
.about-title {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 4px;
}
.about-subtitle {
  text-align: center;
  font-size: 0.95rem;
  margin-bottom: 20px;
  opacity: 0.8;
}
.about-block {
  margin-bottom: 22px;
  line-height: 1.7;
  font-size: 1rem;
}
.about-block h2 {
  font-size: 1.2rem;
  margin-bottom: 8px;
}
.about-block ul {
  list-style: none;
  padding: 0;
  margin: 0 0 10px 0;
}
.about-block ul li {
  margin-bottom: 4px;
}
.about-block a {
  text-decoration: none;
}
.about-block a:hover {
  text-decoration: underline;
}
.about-thanks {
  text-align: center;
  font-weight: 600;
}

/* Footer basic layout */
.site-footer {
  margin-top: 32px;
  padding: 16px 12px 24px;
  background: transparent;
  text-align: center;
  font-size: 0.9rem;
}
.footer-inner {
  max-width: 960px;
  margin: 0 auto;
}
.footer-links {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}
.footer-links span {
  opacity: 0.6;
}


/* Disable active border in "אירועים כלליים" section */
.section-general-events .holiday-card.active {
  border-color: transparent !important;
  border-width: 1px !important;
}


/* Strong override: no active frame only in "אירועים כלליים" (general events) section */
.section-general-events .holiday-card,
.section-general-events .holiday-card.active {
  border-color: transparent !important;
  border-width: 1px !important;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08) !important;
}

/* Force-disable border and shadow in general events */
.section-general-events .holiday-card,
.section-general-events .holiday-card.active {
    border: none !important;
    box-shadow: none !important;
}


/* Дата и рамка только у еврейских праздников */
.section-russian-holidays .holiday-date,
.section-general-events .holiday-date {
  display: none !important;
}


/* Home page footer: contacts one per line */
.home .footer-links {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.home .footer-contact-line {
  margin: 2px 0;
}





/* Make Valentine holiday card clickable with same style as others */
.holiday-card--valentine {
  cursor: pointer;
}

/* === Overrides from dropdown version (hero buttons + catalog filter) === */
big catalog button under cart, hide catalog from top nav */
@media (min-width: 769px) {
  .catalog-desktop-btn.desktop-only {
    display: block;
  }
  .catalog-menu-link {
    display: none;
  }
}


/* Hero buttons: catalog + start */
.hero-buttons {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  margin-top: 16px;
}

.hero-btn {
  width: fit-content;
}

/* Desktop layout: two buttons on one line, catalog left, start right */
@media (min-width: 769px) {
  .hero-buttons {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  .hero-btn-catalog.desktop-only {
    display: inline-block;
    margin-left: auto;
    margin-right: 0;
  }
}

/* Catalog link visibility: hide in menu on desktop, show on mobile */
.catalog-menu-link {
  display: inline-block;
}

@media (min-width: 769px) {
  .catalog-menu-link {
    display: none;
  }
}


/* Hero buttons: catalog left, start right on all screens */
.hero-buttons {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

.hero-btn {
  flex: 1;
  text-align: center;
}

/* Remove catalog from main nav on all devices */
.catalog-menu-link {
  display: none !important;
}


/* Ensure catalog is left and start is right on all screens, compact layout */
.hero-buttons {
  justify-content: flex-start;
  gap: 12px;
}

.hero-btn-catalog {
  order: 1;
}

.hero-btn-start {
  order: 2;
}


/* FIX: In RTL layouts, flex row renders first item on the right.
   To show START on the right and CATALOG on the left (compact variant A),
   we set START first and CATALOG second. */
.hero-buttons {
  justify-content: flex-start;
  gap: 12px;
}

.hero-btn-start {
  order: 1 !important;
}

.hero-btn-catalog {
  order: 2 !important;
  display: inline-flex !important;
}


/* Catalog category dropdown (Shop page) */
.combo-catalog-filter{
  max-width: 1240px;
  width: 100%;
  margin: 18px auto 10px auto;
  text-align: center;
  padding: 0 10px;
}

.combo-catalog-filter__label{
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}

.combo-catalog-filter__select{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.15);
  background: #fff;
  font-size: 16px;
}

/* Catalog category cards carousel (mirrors Combo-Constructor category cards) */
.combo-catalog-filter .cm-combo-cat-filter{ overflow:hidden; }
.combo-catalog-filter .cm-combo-cat-cards{
  display:flex;
  gap:14px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  padding: 6px 0 14px;
  scroll-snap-type: x mandatory;
  scrollbar-width:none;
  direction: rtl;
}
.combo-catalog-filter .cm-combo-cat-cards::-webkit-scrollbar{ display:none; }

.combo-catalog-filter .cm-cat-card{
  flex: 0 0 160px;
  max-width:160px;
  height:165px;
  background: rgba(255,255,255,0.9);
  border: 2px solid rgba(179,0,45,0.22);
  border-radius: 18px;
  padding: 10px 10px 12px;
  text-decoration:none;
  color: inherit;
  scroll-snap-align: start;
  box-sizing:border-box;
}
.combo-catalog-filter .cm-cat-card.is-active{
  border-color: rgba(179,0,45,0.95);
  box-shadow: 0 0 0 1px rgba(179,0,45,0.15);
}
.combo-catalog-filter .cm-cat-card-img{
  display:block;
  width:100%;
  height:110px;
  border-radius: 14px;
  background: #f4f5f7;
  overflow:hidden;
  margin-bottom: 8px;
  position:relative;
}
.combo-catalog-filter .cm-cat-card-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:6px;
  background:#fff;
  display:block;
}
.combo-catalog-filter .cm-cat-card-title{
  display:block;
  text-align:center;
  font-weight:800;
  font-size:14px;
  line-height: 1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Mobile: same feel as Combo-Constructor (2 cards + swipe) */
@media (max-width: 782px){
  .combo-catalog-filter .cm-combo-cat-cards{
    gap:12px;
    padding: 4px 10px 12px;
    margin: 0 -10px;
  }
  .combo-catalog-filter .cm-cat-card{
    flex: 0 0 calc((100% - 12px) / 2);
    max-width: none;
  }
}

/* Desktop: show exactly 6 cards in the visible area */
@media (min-width: 783px){
  .combo-catalog-filter .cm-cat-card{
    flex: 0 0 calc((100% - (14px * 5)) / 6);
    max-width: calc((100% - (14px * 5)) / 6);
  }
}

/* 2x2 collage for "All categories" card */
.combo-catalog-filter .cm-cat-card-img.cm-cat-card-collage{
  display:grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 4px;
  padding: 6px;
  box-sizing: border-box;
}
.combo-catalog-filter .cm-cat-card-img.cm-cat-card-collage .cm-cat-collage-cell{
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 10px;
  background: rgba(0,0,0,0.03);
}
.combo-catalog-filter .cm-cat-card-img.cm-cat-card-collage .cm-cat-collage-cell img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}


/* Adjust dropdown position: slightly left (toward center) on desktop */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform:

catalog from top nav */
@media (min-width: 769px) {
  .catalog-desktop-btn.desktop-only {
    display: block;
  }
  .catalog-menu-link {
    display: none;
  }
}


/* Hero buttons: catalog + start */
.hero-buttons {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  margin-top: 16px;
}

.hero-btn {
  width: fit-content;
}

/* Desktop layout: two buttons on one line, catalog left, start right */
@media (min-width: 769px) {
  .hero-buttons {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  .hero-btn-catalog.desktop-only {
    display: inline-block;
    margin-left: auto;
    margin-right: 0;
  }
}

/* Catalog link visibility: hide in menu on desktop, show on mobile */
.catalog-menu-link {
  display: inline-block;
}

@media (min-width: 769px) {
  .catalog-menu-link {
    display: none;
  }
}


/* Hero buttons: catalog left, start right on all screens */
.hero-buttons {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

.hero-btn {
  flex: 1;
  text-align: center;
}

/* Remove catalog from main nav on all devices */
.catalog-menu-link {
  display: none !important;
}


/* Ensure catalog is left and start is right on all screens, compact layout */
.hero-buttons {
  justify-content: flex-start;
  gap: 12px;
}

.hero-btn-catalog {
  order: 1;
}

.hero-btn-start {
  order: 2;
}


/* FIX: In RTL layouts, flex row renders first item on the right.
   To show START on the right and CATALOG on the left (compact variant A),
   we set START first and CATALOG second. */
.hero-buttons {
  justify-content: flex-start;
  gap: 12px;
}

.hero-btn-start {
  order: 1 !important;
}

.hero-btn-catalog {
  order: 2 !important;
  display: inline-flex !important;
}


/* Catalog category dropdown (Shop page) */
.combo-catalog-filter{
  max-width: 420px;
  margin: 18px auto 10px auto;
  text-align: center;
}

.combo-catalog-filter__label{
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}

.combo-catalog-filter__select{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.15);
  background: #fff;
  font-size: 16px;
}


/* Adjust dropdown position: slightly left (toward center) on desktop */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-90px);
  }
}


/* TWEAK

alog-menu-link {
    display: none;
  }
}


/* Hero buttons: catalog + start */
.hero-buttons {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  margin-top: 16px;
}

.hero-btn {
  width: fit-content;
}

/* Desktop layout: two buttons on one line, catalog left, start right */
@media (min-width: 769px) {
  .hero-buttons {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  .hero-btn-catalog.desktop-only {
    display: inline-block;
    margin-left: auto;
    margin-right: 0;
  }
}

/* Catalog link visibility: hide in menu on desktop, show on mobile */
.catalog-menu-link {
  display: inline-block;
}

@media (min-width: 769px) {
  .catalog-menu-link {
    display: none;
  }
}


/* Hero buttons: catalog left, start right on all screens */
.hero-buttons {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

.hero-btn {
  flex: 1;
  text-align: center;
}

/* Remove catalog from main nav on all devices */
.catalog-menu-link {
  display: none !important;
}


/* Ensure catalog is left and start is right on all screens, compact layout */
.hero-buttons {
  justify-content: flex-start;
  gap: 12px;
}

.hero-btn-catalog {
  order: 1;
}

.hero-btn-start {
  order: 2;
}


/* FIX: In RTL layouts, flex row renders first item on the right.
   To show START on the right and CATALOG on the left (compact variant A),
   we set START first and CATALOG second. */
.hero-buttons {
  justify-content: flex-start;
  gap: 12px;
}

.hero-btn-start {
  order: 1 !important;
}

.hero-btn-catalog {
  order: 2 !important;
  display: inline-flex !important;
}


/* Catalog category dropdown (Shop page) */
.combo-catalog-filter{
  max-width: 420px;
  margin: 18px auto 10px auto;
  text-align: center;
}

.combo-catalog-filter__label{
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}

.combo-catalog-filter__select{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.15);
  background: #fff;
  font-size: 16px;
}


/* Adjust dropdown position: slightly left (toward center) on desktop */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-90px);
  }
}


/* TWEAK: move dropdown a bit to the right and make it ~2x shorter, with label next to select */
.combo-catalog-filter{
  max-wi

tent: center;
  gap: 12px;
}

.hero-btn-start {
  order: 1 !important;
}

.hero-btn-catalog {
  order: 2 !important;
  display: inline-flex !important;
}


/* Catalog category dropdown (Shop page) */
.combo-catalog-filter{
  max-width: 420px;
  margin: 18px auto 10px auto;
  text-align: center;
}

.combo-catalog-filter__label{
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}

.combo-catalog-filter__select{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.15);
  background: #fff;
  font-size: 16px;
}


/* Adjust dropdown position: slightly left (toward center) on desktop */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-90px);
  }
}


/* TWEAK: move dropdown a bit to the right and make it ~2x shorter, with label next to select */
.combo-catalog-filter{
  max-width: 210px;            /* was ~420px */
  margin: 18px auto 10px auto;
}

.combo-catalog-filter__label{
  display: inline-block;
  margin: 0 0 0 10px;          /* label sits to the left in RTL (space between label and select) */
  vertical-align: middle;
}

.combo-catalog-filter__select{
  width: 210px;
  display: inline-block;
  vertical-align: middle;
}

/* Desktop position: shift right (override previous left shift) */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(60px);
  }
}


/* FINAL TWEAK: move dropdown slightly LEFT, keep label inline */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-40px);
  }
}


age) */
.combo-catalog-filter{
  max-width: 420px;
  margin: 18px auto 10px auto;
  text-align: center;
}

.combo-catalog-filter__label{
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}

.combo-catalog-filter__select{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.15);
  background: #fff;
  font-size: 16px;
}


/* Adjust dropdown position: slightly left (toward center) on desktop */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-90px);
  }
}


/* TWEAK: move dropdown a bit to the right and make it ~2x shorter, with label next to select */
.combo-catalog-filter{
  max-width: 210px;            /* was ~420px */
  margin: 18px auto 10px auto;
}

.combo-catalog-filter__label{
  display: inline-block;
  margin: 0 0 0 10px;          /* label sits to the left in RTL (space between label and select) */
  vertical-align: middle;
}

.combo-catalog-filter__select{
  width: 210px;
  display: inline-block;
  vertical-align: middle;
}

/* Desktop position: shift right (override previous left shift) */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(60px);
  }
}


/* FINAL TWEAK: move dropdown slightly LEFT, keep label inline */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-40px);
  }
}


er: 2 !important;
  display: inline-flex !important;
}


/* Catalog category dropdown (Shop page) */
.combo-catalog-filter{
  max-width: 420px;
  margin: 18px auto 10px auto;
  text-align: center;
}

.combo-catalog-filter__label{
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}

.combo-catalog-filter__select{
  width: 100%;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,0.15);
  background: #fff;
  font-size: 16px;
}


/* Adjust dropdown position: slightly left (toward center) on desktop */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-90px);
  }
}


/* TWEAK: move dropdown a bit to the right and make it ~2x shorter, with label next to select */
.combo-catalog-filter{
  max-width: 210px;            /* was ~420px */
  margin: 18px auto 10px auto;
}

.combo-catalog-filter__label{
  display: inline-block;
  margin: 0 0 0 10px;          /* label sits to the left in RTL (space between label and select) */
  vertical-align: middle;
}

.combo-catalog-filter__select{
  width: 210px;
  display: inline-block;
  vertical-align: middle;
}

/* Desktop position: shift right (override previous left shift) */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(60px);
  }
}


/* FINAL TWEAK: move dropdown slightly LEFT, keep label inline */
@media (min-width: 769px) {
  .combo-catalog-filter{
    transform: translateX(-40px);
  }
}




/* === Catalog filter: CENTERED like before (label above, select centered) === */
.combo-catalog-filter{
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 18px auto 12px auto !important;
  padding: 0 !important;
  float: none !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

.combo-catalog-filter__label{
  display: block !important;
  width: auto !important;
  margin: 0 0 8px 0 !important;
  text-align: center !important;
}

.combo-catalog-filter__select{
  display: block !important;
  width: 100% !important;
  max-width: 420px !important;
  margin: 0 auto !important;
}

/* If any parent container forces right alignment, neutralize it for the filter only */
.woocommerce.archive .woocommerce-products-header,
.woocommerce-page.archive .woocommerce-products-header{
  text-align: inherit;
}


/* Holiday category pages: big button back to homepage */
.cm-holiday-home-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 24px 0 8px;
}

.cm-holiday-home-btn {
  padding: 10px 18px;
  border-radius: 999px;
  font-size: 14px;
  line-height: 1;
}


/* Center holiday home button under products */
.combo-holiday-home-btn-wrap{
  display:flex;
  justify-content:center;
  margin:16px 0 24px 0;
}



/* === COMBO Builder: step navigation (clear & clickable, no overlap) === */
.combo-builder-page{
  direction: rtl;
}

.combo-builder-page .combo-steps{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  margin-bottom: 14px;
}

.combo-builder-page .combo-step-btn.btn-outline{border: 2px solid var(--color-accent) !important; background:#fff !important; color: var(--color-accent) !important;}

.combo-builder-page .combo-step-btn{
  cursor:pointer;
  display:flex;
  flex-direction: row;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 2px solid var(--color-accent);
  background:#fff;
  color: var(--color-accent);
  min-height: 44px;
  user-select:none;
  line-height:1;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease, color .12s ease;
}

.combo-builder-page .combo-step-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
}

.combo-builder-page .combo-step-btn .combo-step-pill{
  width: 34px;
  height: 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background: var(--color-accent);
  color:#fff;
  font-size: 14px;
  font-weight: 800;
  flex: 0 0 34px;
  border: 0;
}

.combo-builder-page .combo-step-btn .combo-step-title{
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
}

.combo-builder-page .combo-step-btn.btn-primary{
  background: var(--color-accent);
  color:#fff;
}

.combo-builder-page .combo-step-btn.btn-primary .combo-step-pill{
  background:#fff;
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}

@media (max-width: 480px){
  .combo-builder-page .combo-step-btn{
    padding: 10px 12px;
    gap: 6px;
  }
  .combo-builder-page .combo-step-btn .combo-step-title{
    font-size: 12px;
    white-space: normal;
    max-width: 86px;
    text-align:center;
  }
}

.combo-step-btn .combo-step-title{ font-size: 11px; }
}



/* === UX FIX: Combo Builder step pills match homepage style (mobile-friendly) === */
.combo-builder-page .combo-steps-builder{
  display:flex;
  gap:14px;
  flex-wrap:nowrap;
  overflow-x:auto;
  -webkit-overflow-scrolling: touch;
  padding: 2px 2px 8px;
  margin-bottom: 12px;
}
.combo-builder-page .combo-steps-builder::-webkit-scrollbar{ height: 6px; }
.combo-builder-page .combo-steps-builder::-webkit-scrollbar-thumb{ background: rgba(0,0,0,0.12); border-radius: 999px; }

.combo-builder-page .combo-step-btn{
  flex: 0 0 auto;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  /* More breathing room between the number circle and the title */
  gap:18px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.10);
  background:#fff;
  color: var(--color-text);
  /* Make each pill long enough so titles don't get cramped */
  min-width: 164px;
  min-height: 38px;
  user-select:none;
  font-size: 13px;
  line-height: 1;
  box-shadow: none;
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease, color .12s ease, border-color .12s ease;
}

.combo-builder-page .combo-step-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
}

.combo-builder-page .combo-step-btn .combo-step-pill{
  width: 22px;
  height: 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background: var(--color-accent);
  color: #fff;
  font-size: 11px;
  flex: 0 0 22px;
}

.combo-builder-page .combo-step-btn .combo-step-title{
  white-space: nowrap;
  font-weight: 600;
}

/* Active step uses theme primary button class */
.combo-builder-page .combo-step-btn.btn-primary{
  background: var(--color-accent) !important;
  border-color: var(--color-accent) !important;
  color: #fff !important;
}
.combo-builder-page .combo-step-btn.btn-primary .combo-step-pill{
  background:#fff !important;
  color: var(--color-accent) !important;
  /* Keep the circle visible on white background */
  border: 1px solid var(--color-accent) !important;
}

/* Keep legacy outline style consistent if present */
.combo-builder-page .combo-step-btn.btn-outline{
  background:#fff !important;
  color: var(--color-accent) !important;
  border: 1px solid var(--color-accent) !important;
}

@media (max-width: 480px){
  .combo-builder-page .combo-steps-builder{
    gap:8px;
    padding-bottom: 10px;
  }
  .combo-builder-page .combo-step-btn{
    padding: 8px 12px;
    gap:10px;
    min-width: 152px;
    font-size: 12px;
  }
}

/* UX fine-tune: bring text closer to numbers for steps 3 and 4 */
.combo-steps-builder .combo-step-btn:nth-child(3),
.combo-steps-builder .combo-step-btn:nth-child(4) {
    gap: 8px !important;
}

/* UX fine-tune: bring text closer to numbers for steps 1 and 2 */
.combo-steps-builder .combo-step-btn:nth-child(1),
.combo-steps-builder .combo-step-btn:nth-child(2) {
    gap: 10px !important;
}

/* UX micro-adjust: slightly increase gap for steps 1 and 2 */
.combo-steps-builder .combo-step-btn:nth-child(1),
.combo-steps-builder .combo-step-btn:nth-child(2) {
    gap: 12px !important;
}

/* UX fix: widen left summary block (המארז שלך) to previous visual weight */
.combo-summary,
.combo-left,
.combo-summary-box {
    max-width: 420px;
    width: 100%;
}

@media (max-width: 768px) {
    .combo-summary,
    .combo-left,
    .combo-summary-box {
        max-width: 100%;
    }
}

/* Combo builder: back button under product list (matches shop "חזרה" button) */
.combo-builder-back-wrap { margin-bottom: 6px; }

/* Combo builder: place back button above footer/contacts */
.combo-builder-back-wrap { clear: both; }

/* Combo builder: ensure back button visible above footer */
.combo-builder-back-wrap { clear: both; display: block; }

/* Combo Builder: product description preview in cards */
.combo-product-desc{
  color: var(--color-text-muted);
  font-size: 12px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  word-break: break-word;
}

.combo-product-desc:empty{display:none;}
/* =====================
   Studio button (product page)
   Make it distinct from checkout/payment buttons
   ===================== */

/* Studio button icon (avoid blending) */
.cm-studio-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.1em;line-height:1;color:#111;margin-inline-end:2px;}

.combomatanot-studio-cta { margin-top: 14px; }

a.button.combomatanot-studio-button,
.woocommerce a.button.combomatanot-studio-button {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #6f2dbd;
    border: 0;
    color: #fff;
    border-radius: 999px;
    padding: 12px 18px;
    line-height: 1;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(0,0,0,0.14);
    text-decoration: none;
    opacity: 1;
}

a.button.combomatanot-studio-button:hover,
.woocommerce a.button.combomatanot-studio-button:hover {
    background: #5d22a3;
    color: #fff;
}

a.button.combomatanot-studio-button:focus,
.woocommerce a.button.combomatanot-studio-button:focus {
    outline: 3px solid rgba(111,45,189,0.25);
    outline-offset: 2px;
}

@media (max-width: 600px) {
  a.button.combomatanot-studio-button,
  .woocommerce a.button.combomatanot-studio-button {
    width: 100%;
    justify-content: center;
  }
}





/* Studio font buttons: auto-growing responsive grid */
#cmb_font_buttons.cmb-font-grid{
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  align-items: stretch;
}

#cmb_font_buttons.cmb-font-grid .cmb-font-btn{
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid #ddd;
  background: #fff;
  cursor: pointer;
  text-align: center;
  line-height: 1.1;
}

/* On very small screens make columns smaller so 2–3 per row can fit */
@media (max-width: 420px){
  #cmb_font_buttons.cmb-font-grid{
    grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  }
}



/* === Single product "Back" button (smart return) === */
.combo-single-back-wrap{
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 28px 0 12px;
}
.combo-single-back-wrap .combo-single-back-btn{
  background: var(--color-accent);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 10px 26px;
  font-weight: 600;
  cursor: pointer;
  line-height: 1;
}
.combo-single-back-wrap .combo-single-back-btn:active{
  transform: translateY(1px);
}



/* Studio hint line under title */
.cm-studio-hint{margin:6px 0 14px; font-size:14px; opacity:.85; text-align:center;}

/* Hide product tags line (keep categories) */
.single-product .product_meta .tagged_as{display:none !important;}


/* Combo preview modal scroll lock */
html.cm-modal-open,
body.cm-modal-open{
  overflow: hidden !important;
  overscroll-behavior: none;
}

/* Prevent background scroll chaining while modal is open */
/*
 * Do NOT disable overscroll globally.
 * It breaks pull-to-refresh and can make the page feel unresponsive.
 * We lock scrolling/overscroll only while the preview modal is open.
 */

/* ===============================
   Combo preview image modal
   =============================== */

.cm-preview-overlay{
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,.55);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 999999;
  padding: 16px;
  /* capture taps so the page behind is not clickable */
  pointer-events: auto;
  touch-action: none;
}

.cm-preview-overlay.is-open{ display:flex; }

.cm-preview-modal{
  width: min(520px, 92vw);
  max-height: 90vh;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0,0,0,.35);
  overflow: hidden;
  position: relative;
  touch-action: pan-y;
}

.cm-preview-modal .cm-preview-close{
  position: absolute;
  top: 10px;
  left: 10px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 0;
  background: rgba(255,255,255,.9);
  display: grid;
  place-items: center;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}

.cm-preview-modal .cm-preview-image{
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
  background: #f4f4f4;
}

.cm-preview-modal .cm-preview-body{
  padding: 14px 16px 16px;
}

.cm-preview-modal .cm-preview-title{
  font-size: 18px;
  font-weight: 700;
  margin: 4px 0 2px;
  text-align: center;
}

.cm-preview-modal .cm-preview-price{
  font-size: 14px;
  opacity: .9;
  margin: 0 0 12px;
  text-align: center;
}

.cm-preview-modal .cm-preview-actions{
  display: flex;
  gap: 10px;
  justify-content: center;
}

.cm-preview-modal .cm-preview-actions button,
.cm-preview-modal .cm-preview-actions a{
  min-width: 140px;
}

@media (max-width: 480px){
  .cm-preview-overlay{ padding: 10px; }
  .cm-preview-modal{ width: 94vw; border-radius: 20px; }
  .cm-preview-modal .cm-preview-image{ aspect-ratio: 4 / 3; }
}

/* Thumbnail preview trigger (prevents product selection on image tap) */
.combo-preview-btn{
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  display: block;
  line-height: 0;
}
.combo-preview-btn:focus{outline:none;}



/* === Cart Block: Back button above footer (V200) === */
.cm-cart-back-footer-wrap{
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 18px 0 10px 0;
}
.cm-cart-back-footer-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 22px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 700;
  line-height: 1;
  border: 1px solid #8A1B2D;
  background: #8A1B2D;
  color: #ffffff;
}
.cm-cart-back-footer-btn:focus,
.cm-cart-back-footer-btn:hover{
  text-decoration: none;
  opacity: 0.92;
}

/* ComboMatanot: Blocks Cart/Checkout - proceed to checkout pill button */
.wc-block-cart__submit-container .wc-block-components-button {
	border-radius: 999px !important;
	padding: 14px 34px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}
.wc-block-cart__submit-container .wc-block-components-button.wc-block-cart__submit-button {
	background: var(--color-accent, #8b1d2c) !important;
	color: #fff !important;
	border: none !important;
}
.wc-block-cart__submit-container .wc-block-components-button.wc-block-cart__submit-button:hover {
	filter: brightness(1.05);
}


/* Studio: global back button placement */

.cm-studio-back-global-wrap{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 14px 0 18px;
}

/* Hide legacy duplicate back button inside the studio layout (keep markup for safety) */
.cm-studio-back-wrap-legacy{
  display:none !important;
}

/* Studio: product carousel full-width block above back button */
.cm-studio-under-global{
  width:100%;
  max-width:none;
  margin: 14px 0 0;
  padding: 0;
}
.cm-studio-under{
  width:100%;
}

/* Studio: compact clear button (do not stretch; align to visual left like the 90° tool) */
.cmb-clear-wrap{
  display:flex;
  justify-content:flex-start;
  direction:ltr;
}
.cmb-clear-btn{
  width:44px;
  height:44px;
  padding:0;
  border:1px solid #ddd;
  border-radius:12px;
  background:#fff;
  font-weight:900;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.cmb-clear-btn:active{
  transform: translateY(1px);
}

/* Cart pill style */
.cm-wow-topbar .cart-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(255,255,255,0.85);
  box-shadow:0 2px 6px rgba(0,0,0,0.08);
  text-decoration:none;
  font-weight:500;
}
.cm-wow-topbar .cart-count{
  background:#ff4d6d;
  color:#fff;
  border-radius:999px;
  padding:2px 6px;
  font-size:12px;
}

/* Cart pill color – match old header (red gradient) */
.cm-wow-topbar .cart-link{
  background: linear-gradient(135deg, #8b0015 0%, #c8002b 100%) !important;
  color:#fff !important;
}
.cm-wow-topbar .cart-link .cart-icon{
  filter: none;
}
.cm-wow-topbar .cart-count{
  background:#fff !important;
  color:#8b0015 !important;
}


/* === V7: Mobile upcoming pills should visually "touch" the hero (no forced drop) === */
@media (max-width: 900px){
  /* Cancel any translate that creates an unwanted gap */
  body.home .cm-wow-upcoming,
  body.home .cm-wow-upcoming .cm-wow-upcoming-inner::before{
    transform: none !important;
  }
  /* Pull pills slightly вверх so they sit right under the hero */
  body.home .cm-wow-upcoming{
    margin-top: -22px !important;
  }
}


/* Physical spacer to prevent overlap between hero and upcoming pills */
.cm-wow-upcoming-spacer{
  height: 0px;
}
@media (min-width: 901px){
  .cm-wow-upcoming-spacer{ height: 0px; }
}


/* === WOW Pills background matched to design === */
:root{
  --wow-pill-bg-left: #f7e1d6;
  --wow-pill-bg-mid:  #f3d3c3;
  --wow-pill-bg-right:#f8e7dc;
}
.cm-wow-pill,
.wow-pill,
.wow-upcoming-pill{
  background: linear-gradient(
    90deg,
    var(--wow-pill-bg-left) 0%,
    var(--wow-pill-bg-mid) 50%,
    var(--wow-pill-bg-right) 100%
  );
}

/* ComboMatanot: force big pill underlay color (title page upcoming pills) */
body .cm-wow-upcoming-inner::before,
body .cm-wow-upcoming-wrap::before,
body .cm-wow-upcoming-inner,
body .cm-wow-upcoming-wrap {
  background: #F2DFD3 !important;
  background-color: #F2DFD3 !important;
}

/* === ComboMatanot: Header top corners rounded (both sides), bottom straight === */
.site-header,
.site-header.site-header--inner{
  border-radius: 28px 28px 0 0 !important;
  overflow: hidden !important;
}


/* === ComboMatanot: Holiday logo frame (toggleable) === */
.cm-holiday-logo-wrap{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  padding: 4px;
}
.cm-holiday-logo-wrap::before{
  content: "";
  position: absolute;
  inset: -4px;
  border: 2px solid var(--color-accent, #8A1B2D);
  border-radius: 14px;
  pointer-events: none;
  opacity: 0.95;
}
.cm-holiday-logo-badge{
  position: absolute;
  top: -10px;
  inset-inline-end: -10px;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 1;
  background: #fff;
  border: 2px solid var(--color-accent, #8A1B2D);
  box-shadow: 0 2px 8px rgba(0,0,0,.12);
}


/* === Raise Catalog block content higher (stronger) === */
.cm-wow-block--catalog .cm-wow-block__content{
    justify-content: flex-start;
    padding-top: 0px !important;
    position: relative;
    top: -35px !important;
}



/* === Correct position: move Catalog text slightly DOWN from top === */
.cm-wow-block--catalog .cm-wow-block-text{
    margin-top: -6px !important;   /* soft position: not stuck to top */
}



/* Home: Studio CTA highlight */
.cm-wow-studio-cta-highlight{
  background:#e53935 !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 10px 22px rgba(0,0,0,.18) !important;
}
.cm-wow-studio-cta-highlight:hover{filter:brightness(.95);}

/* === Home: Studio CTA — match HERO CTA shape/volume, but OLIVE color ===
   We keep the previous red highlight rules above (do not delete),
   but on the HOME Catalog/Studio block we override them with higher specificity.
*/
body.home .cm-wow-block--catalog a.cm-wow-studio-cta-highlight{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  padding:12px 24px !important;
  min-height:46px !important;
  border-radius:999px !important;
  background: linear-gradient(180deg, #95b04b, #6b8e23) !important; /* olive */
  color:#fff !important;
  text-decoration:none !important;
  box-shadow: 0 12px 24px rgba(0,0,0,0.18) !important;
  transition: transform .12s ease, filter .12s ease !important;
}
body.home .cm-wow-block--catalog a.cm-wow-studio-cta-highlight:hover{
  filter: brightness(1.02) !important;
  transform: translateY(-1px) !important;
}
body.home .cm-wow-block--catalog a.cm-wow-studio-cta-highlight:active{
  transform: translateY(0) !important;
}
body.home .cm-wow-block--catalog a.cm-wow-studio-cta-highlight > span{
  font-weight:900 !important;
}

/* === Studio: CLEAR / ERASE button (very visible) === */
#cmb_clear_all,
.cmb-clear-btn{
  background:#ff3b30 !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 10px 22px rgba(0,0,0,.25) !important;
  width:48px !important;
  height:48px !important;
  border-radius:16px !important;
  font-size:20px !important;
}
#cmb_clear_all:hover{filter:brightness(.95);}



/* Combo Builder: widen layout on desktop (keep mobile behavior). */
@media (min-width: 1024px) {
  .combo-builder-page {
    max-width: 1600px !important; /* override inline max-width:1100px */
    width: 100%;
  }
}


/* === COMBO Builder (Mobile): fix cart panel being "covered" on iPhone ===
   Problem: on narrow screens the 2-column grid overflows horizontally;
   the checkout/cart column becomes a thin strip and may appear under the main card.
   Fix: give the cart a real min-width, make the grid horizontally scrollable,
   and ensure the cart layer is above the main card.
   (Do NOT remove any markup/logic; CSS-only safety fix.)
*/
@media (max-width: 768px){
  .combo-builder-page .combo-builder-grid{
    /* Override inline grid-template-columns */
    grid-template-columns: 100% 320px !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
  }

  .combo-builder-page .combo-builder-left{
    position: relative;
    z-index: 1;
    scroll-snap-align: start;
  }

  .combo-builder-page .combo-builder-checkout{
    min-width: 320px;
    width: 320px;
    position: sticky;
    z-index: 20;
    background: #fff;
    scroll-snap-align: start;
  }
}


/* GLOBAL FIX social icon size (prevents huge SVG intrinsic sizing) */
.cm-inner-topbar-social{ display:flex; align-items:center; gap:10px; }
.cm-inner-topbar-social__ico,
.cm-inner-topbar-social img{
  width:38px !important;
  height:38px !important;
  max-width:38px !important;
  max-height:38px !important;
  display:block !important;
  object-fit:contain !important;
}
@media (max-width: 600px){
  .cm-inner-topbar-social__ico,
  .cm-inner-topbar-social img{
    width:32px !important;
    height:32px !important;
    max-width:32px !important;
    max-height:32px !important;
  }
}


/* ============================= */
/* PAPER REALISM ADDITION START */
/* ============================= */

.cm-wow-flipcal-grid {
    transform-style: preserve-3d;
}

.cm-wow-flipcal-grid::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 4px;
    height: 100%;
    transform: translateX(-50%);
    background: linear-gradient(to right, rgba(0,0,0,0.25), rgba(0,0,0,0.05), transparent);
    opacity: 0;
    pointer-events: none;
}

.cm-wow-flipcal-anim-out .cm-wow-flipcal-grid::before {
    opacity: 1;
    transition: opacity 0.25s ease;
}

.cm-wow-flipcal-grid::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(255,255,255,0.35) 0%, rgba(255,255,255,0.05) 40%, transparent 70%);
    opacity: 0;
    pointer-events: none;
}

.cm-wow-flipcal-anim-out .cm-wow-flipcal-grid::after {
    opacity: 1;
    transition: opacity 0.3s ease;
}

/* =========================== */
/* PAPER REALISM ADDITION END */
/* =========================== */


/* AUTO: stretch WOW background full container */
.wow {
  background-size: cover !important;
  background-position: left center !important;
  background-repeat: no-repeat !important;
}
.wow img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

/* FIX: force catalog background to fill block on desktop too */
@media (min-width: 900px){
  .cm-wow-block--catalog{
    background-size: cover !important;
    background-position: left center !important;
    background-repeat: no-repeat !important;
    background-color: transparent !important;
  }
}


/* AI photo tools (studio) */
.cm-ai-photo-tool-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:52px;
  padding:10px 12px;
  border:1px solid #ddd;
  border-radius:12px;
  background:#fff;
  cursor:pointer;
  font-weight:800;
}
.cm-ai-photo-tool-btn[disabled]{ opacity:.5; cursor:not-allowed; }
.cm-ai-photo-tool-btn__icon{ display:inline-flex; width:22px; min-width:22px; justify-content:center; align-items:center; font-size:18px; line-height:1; }
.cm-ai-photo-tool-btn__icon--eraser svg{ display:block; }
.cm-ai-photo-tool-btn__text{ display:flex; flex-direction:column; align-items:flex-start; line-height:1.05; text-align:right; }


.home .footer-legal-links {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 6px 0 2px;
  direction: rtl;
}

.home .footer-legal-links a {
  text-decoration: none;
}

.home .footer-legal-links a:hover,
.home .footer-legal-links a:focus {
  text-decoration: underline;
}

.home .footer-copyright {
  opacity: 0.8;
}
