/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 2.0.0
*/

/* ── GOOGLE FONT ─────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700;800;900&display=swap');

/* ── CSS VARIABLES ───────────────────────────── */
:root {
  --orange:      #E88A12;
  --orange-dark: #c7780f;
  --blue:        #2D6DB5;
  --dark:        #1A1A1A;
  --gray-text:   #666666;
  --gray-meta:   #999999;
  --border:      #EBEBEB;
  --bg-light:    #F5F5F5;
  --white:       #FFFFFF;
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --shadow-card: 0 1px 4px rgba(0,0,0,.08);
  --shadow-hover:0 4px 16px rgba(0,0,0,.12);
}

/* ── GLOBAL RESET ────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  font-family: 'Heebo', Arial, sans-serif;
  background: var(--white);
  color: var(--dark);
  direction: rtl;
  -webkit-font-smoothing: antialiased;
  margin: 0; padding: 0;
}

h1,h2,h3,h4,h5,h6 {
  font-family: 'Heebo', Arial, sans-serif;
  font-weight: 700;
  color: var(--dark);
  margin-top: 0;
}

a { color: var(--blue); text-decoration: none; }
a:hover { text-decoration: underline; }

img { max-width: 100%; height: auto; }

/* ── SITE WRAPPER ────────────────────────────── */
.site-header { background: var(--white); border-bottom: 1px solid var(--border); }
.site-main { background: var(--white); }

/* ── BUTTONS ─────────────────────────────────── */
.pizza-btn,
.pizza-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: var(--orange);
  color: var(--white);
  border: none;
  border-radius: var(--radius-sm);
  padding: 10px 20px;
  font-family: 'Heebo', sans-serif;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s;
  text-decoration: none;
}
.pizza-btn:hover,
.pizza-btn-primary:hover { background: var(--orange-dark); color: var(--white); text-decoration: none; }

.pizza-btn-secondary {
  background: transparent;
  border: 1.5px solid var(--border);
  color: var(--dark);
  border-radius: var(--radius-sm);
  padding: 9px 18px;
  font-family: 'Heebo', sans-serif;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: border-color .15s, color .15s;
}
.pizza-btn-secondary:hover { border-color: var(--orange); color: var(--orange); }

/* ── WOOCOMMERCE SHOP PAGE ───────────────────── */
.woocommerce,
.woocommerce-page { direction: rtl; }

/* Remove WC result count / ordering bar visual weight */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
  font-family: 'Heebo', sans-serif;
  font-size: 14px;
  color: var(--gray-text);
}

/* ── CATEGORY TABS ───────────────────────────── */
.woocommerce .widget_product_categories,
.pizza-category-tabs {
  display: flex;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
  border-bottom: 1px solid var(--border);
  background: var(--white);
  padding: 0 16px;
  margin-bottom: 24px;
  position: sticky;
  top: 0;
  z-index: 100;
}
.pizza-category-tabs::-webkit-scrollbar { display: none; }

.pizza-cat-tab {
  display: inline-block;
  padding: 14px 20px;
  font-size: 15px;
  font-weight: 500;
  color: var(--gray-text);
  white-space: nowrap;
  cursor: pointer;
  border-bottom: 3px solid transparent;
  transition: color .15s, border-color .15s;
  text-decoration: none;
}
.pizza-cat-tab:hover { color: var(--dark); text-decoration: none; }
.pizza-cat-tab.active,
.pizza-cat-tab:focus {
  color: var(--orange);
  border-bottom-color: var(--orange);
  font-weight: 700;
}

/* ── PRODUCT GRID → HORIZONTAL CARDS ─────────── */
.woocommerce ul.products {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}

/* Two-column on wide screens */
@media (min-width: 900px) {
  .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
  }
}

.woocommerce ul.products li.product {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 16px !important;
  border-bottom: 1px solid var(--border) !important;
  background: var(--white) !important;
  cursor: pointer;
  transition: background .12s;
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product:hover { background: #FAFAFA !important; }

/* Text block (right side in RTL = the main content) */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  font-family: 'Heebo', sans-serif !important;
  line-height: 1.3 !important;
}

.woocommerce ul.products li.product .product-description,
.woocommerce ul.products li.product p:not(.price):not(.button) {
  font-size: 13px !important;
  color: var(--gray-text) !important;
  margin: 0 0 8px !important;
  line-height: 1.45 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.woocommerce ul.products li.product .price {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  font-family: 'Heebo', sans-serif !important;
}
.woocommerce ul.products li.product .price ins { text-decoration: none !important; }
.woocommerce ul.products li.product .price del { color: var(--gray-meta) !important; font-size: 13px !important; }

/* Product image — fixed size, rounded, left side (visually) */
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail,
.woocommerce ul.products li.product img {
  width: 96px !important;
  height: 96px !important;
  min-width: 96px !important;
  object-fit: cover !important;
  border-radius: var(--radius-md) !important;
  margin: 0 !important;
  order: -1;
}

/* Text content flex-grows */
.woocommerce ul.products li.product .pizza-product-text {
  flex: 1;
  min-width: 0;
}

/* Add to cart button — small orange circle */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  background: var(--orange) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
  font-size: 22px !important;
  line-height: 30px !important;
  text-align: center !important;
  min-width: unset !important;
  margin: 0 !important;
  flex-shrink: 0;
  font-family: 'Heebo', sans-serif !important;
  transition: background .15s, transform .1s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.woocommerce ul.products li.product .button:hover {
  background: var(--orange-dark) !important;
  transform: scale(1.08) !important;
}

/* ── SINGLE PRODUCT PAGE ─────────────────────── */
.woocommerce div.product {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  padding: 32px;
  max-width: 1100px;
  margin: 0 auto;
  direction: rtl;
}
@media (max-width: 768px) {
  .woocommerce div.product { grid-template-columns: 1fr; padding: 16px; gap: 24px; }
}

.woocommerce div.product .woocommerce-product-gallery {
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.woocommerce div.product .entry-summary h1.product_title {
  font-size: 26px;
  font-weight: 800;
  margin-bottom: 12px;
}

.woocommerce div.product p.price {
  font-size: 24px;
  font-weight: 700;
  color: var(--orange);
  margin-bottom: 20px;
}

.woocommerce div.product .single_add_to_cart_button {
  background: var(--orange) !important;
  color: var(--white) !important;
  border-radius: var(--radius-sm) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  padding: 14px 32px !important;
  width: 100% !important;
  transition: background .15s !important;
}
.woocommerce div.product .single_add_to_cart_button:hover { background: var(--orange-dark) !important; }

/* ── CHECKOUT & CART ─────────────────────────── */
.woocommerce .cart-collaterals,
.woocommerce-cart .woocommerce {
  direction: rtl;
  font-family: 'Heebo', sans-serif;
}

.woocommerce table.shop_table {
  border: none !important;
  border-collapse: collapse !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  border: none !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 14px 8px !important;
  font-family: 'Heebo', sans-serif !important;
}
.woocommerce table.shop_table th { font-weight: 700; font-size: 14px; color: var(--gray-text); }

.woocommerce button[name="apply_coupon"],
.woocommerce button[name="update_cart"],
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: var(--orange) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
  font-family: 'Heebo', sans-serif !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  padding: 13px 24px !important;
}

/* ── CHECKOUT FORM ───────────────────────────── */
.woocommerce-checkout {
  direction: rtl;
  font-family: 'Heebo', sans-serif;
  max-width: 1100px;
  margin: 0 auto;
  padding: 32px 20px;
}

.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  border: 1.5px solid var(--border) !important;
  border-radius: var(--radius-sm) !important;
  font-family: 'Heebo', sans-serif !important;
  font-size: 15px !important;
  padding: 10px 14px !important;
  transition: border-color .2s !important;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus { border-color: var(--orange) !important; outline: none !important; box-shadow: none !important; }

.woocommerce-checkout #place_order {
  background: var(--orange) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  padding: 15px 32px !important;
  width: 100% !important;
  font-family: 'Heebo', sans-serif !important;
}

/* ── NOTICES / ALERTS ────────────────────────── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  font-family: 'Heebo', sans-serif !important;
  border-radius: var(--radius-md) !important;
  direction: rtl !important;
}
.woocommerce-message { border-top-color: var(--orange) !important; }

/* ── FRANCHISE FORM ──────────────────────────── */
.pizza-franchise-form { max-width: 680px; margin: 32px auto; font-family: 'Heebo', sans-serif; }
.pizza-franchise-form .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.pizza-franchise-form .form-group { display: flex; flex-direction: column; gap: 6px; }
.pizza-franchise-form .form-group.full-width { grid-column: 1/-1; }
.pizza-franchise-form label { font-weight: 600; font-size: 14px; color: var(--dark); }
.pizza-franchise-form input,
.pizza-franchise-form select,
.pizza-franchise-form textarea {
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  padding: 10px 14px;
  font-family: 'Heebo', sans-serif;
  font-size: 15px;
  width: 100%;
  transition: border-color .2s;
}
.pizza-franchise-form input:focus,
.pizza-franchise-form select:focus,
.pizza-franchise-form textarea:focus { border-color: var(--orange); outline: none; }
.pizza-franchise-form button[type=submit] {
  background: var(--orange);
  color: var(--white);
  border: none;
  border-radius: var(--radius-sm);
  padding: 13px 32px;
  font-size: 16px;
  font-weight: 700;
  font-family: 'Heebo', sans-serif;
  cursor: pointer;
  width: 100%;
  transition: background .15s;
}
.pizza-franchise-form button[type=submit]:hover { background: var(--orange-dark); }
.pizza-form-success { background: #F0FDF4; border: 1px solid #22C55E; border-radius: var(--radius-md); padding: 16px; color: #166534; font-weight: 600; text-align: center; }
@media (max-width: 600px) { .pizza-franchise-form .form-row { grid-template-columns: 1fr; } }

/* ── BRANCH SINGLE PAGE ──────────────────────── */
.branch-single-page { direction: rtl; font-family: 'Heebo', sans-serif; max-width: 1000px; margin: 0 auto; padding: 0 20px 60px; }
.branch-hero { background: var(--dark); color: var(--white); border-radius: 0 0 var(--radius-lg) var(--radius-lg); padding: 40px 32px 36px; margin-bottom: 32px; }
.branch-hero h1 { font-size: clamp(26px,5vw,46px); font-weight: 900; margin: 0 0 12px; color: var(--white); }
.branch-status-badge { display: inline-block; padding: 5px 16px; border-radius: 30px; font-size: 14px; font-weight: 700; margin-bottom: 18px; }
.branch-status-badge.open { background: #22C55E; color: var(--white); }
.branch-status-badge.closed { background: #EF4444; color: var(--white); }
.branch-grid { display: grid; grid-template-columns: 1fr 360px; gap: 24px; align-items: start; }
@media (max-width: 760px) { .branch-grid { grid-template-columns: 1fr; } }
.branch-card-section { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-md); padding: 20px 24px; margin-bottom: 20px; }
.branch-card-section h2 { font-size: 18px; font-weight: 700; color: var(--dark); margin: 0 0 16px; padding-bottom: 10px; border-bottom: 1px solid var(--border); }
.info-item { display: flex; align-items: flex-start; gap: 10px; padding: 9px 0; border-bottom: 1px solid #f3f4f6; font-size: 15px; }
.info-item:last-child { border-bottom: none; }
.info-item .icon { font-size: 18px; line-height: 1.4; flex-shrink: 0; }
.info-item .value a { color: var(--blue); font-weight: 600; }
.btn-action { text-align: center; padding: 10px 14px; border-radius: var(--radius-sm); font-weight: 700; font-size: 14px; font-family: 'Heebo', sans-serif; text-decoration: none; transition: opacity .15s; }
.btn-waze { background: #33CCFF; color: var(--dark); }
.btn-phone { background: var(--blue); color: var(--white); }
.order-cta-box { background: var(--orange); border-radius: var(--radius-md); padding: 24px; text-align: center; color: var(--white); margin-bottom: 20px; }
.order-cta-box h3 { font-size: 20px; font-weight: 900; margin: 0 0 8px; }
.btn-order-now { display: block; background: var(--white); color: var(--orange); font-weight: 900; font-size: 17px; padding: 13px; border-radius: var(--radius-sm); text-decoration: none; font-family: 'Heebo', sans-serif; }
.phone-only-box { background: #FFF7ED; border: 1px solid var(--orange); border-radius: var(--radius-md); padding: 16px; text-align: center; margin-bottom: 20px; }
.branch-breadcrumb { font-size: 14px; color: var(--gray-text); padding: 14px 0; direction: rtl; }
.branch-breadcrumb a { color: var(--blue); }
.hours-table { width: 100%; border-collapse: collapse; }
.hours-table tr { border-bottom: 1px solid var(--border); }
.hours-table tr.today td { font-weight: 700; color: var(--orange); }
.hours-table td { padding: 8px 4px; font-size: 14px; }
.hours-table .hours-time { color: var(--blue); text-align: left; direction: ltr; }
.hours-table .closed-day { color: #EF4444; }
.features-list { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.features-list li { background: var(--bg-light); border-radius: 30px; padding: 5px 14px; font-size: 13px; color: var(--dark); font-weight: 500; }

/* ── CHECKOUT BRANCH NOTICE ──────────────────── */
.pizza-selected-branch-notice { background: #FFF7ED; border: 1px solid var(--orange); border-radius: var(--radius-md); padding: 12px 16px; margin-bottom: 20px; font-size: 15px; direction: rtl; }
.pizza-no-branch { background: #FEF3C7; }

/* ── FACTORY STORE ───────────────────────────── */
.factory-price-hidden { color: var(--gray-meta); font-style: italic; font-size: 14px; }
.factory-price-hidden a { color: var(--blue); }

/* ── RESPONSIVE UTILITIES ────────────────────── */
@media (max-width: 600px) {
  .woocommerce ul.products li.product { padding: 12px !important; gap: 12px !important; }
  .woocommerce ul.products li.product img { width: 80px !important; height: 80px !important; min-width: 80px !important; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 15px !important; }
}

/* ── PRODUCT CARD SPECIFICS ──────────────────── */
.pizza-product-card {
  position: relative;
}
.pizza-card-link {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  text-decoration: none !important;
  color: inherit !important;
}
.pizza-product-text {
  flex: 1;
  min-width: 0;
}
.pizza-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 8px;
}
.pizza-product-price .amount {
  font-size: 15px;
  font-weight: 700;
  color: var(--dark);
}
.pizza-no-image {
  width: 96px;
  height: 96px;
  min-width: 96px;
  background: var(--bg-light);
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
}

/* ── SHOP WRAP ───────────────────────────────── */
.pizza-shop-wrap {
  max-width: 1100px;
  margin: 0 auto;
  font-family: 'Heebo', sans-serif;
}
.pizza-products-area {
  padding: 0 16px 40px;
}
