/*
Theme Name: ELSHARKAWY GROUP
Theme URI: https://example.com/
Author: OpenAI
Description: Premium automotive WordPress theme for ELSHARKAWY GROUP - Renault spare parts and service centers.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: elsharkawy-group
*/
:root{--orange:#f26a21;--black:#090909;--dark:#1b1e21;--gray:#f3f4f6;--white:#fff;--muted:#6b7280;--radius:20px;--shadow:0 18px 50px rgba(0,0,0,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Cairo",Arial,sans-serif;color:var(--dark);background:#fff;line-height:1.75}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}.container{width:min(1180px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:999;background:rgba(9,9,9,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0}.brand{font-weight:900;font-size:1.25rem;letter-spacing:.7px}.brand span{color:var(--orange)}.custom-logo{max-height:48px;width:auto}.main-nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.main-nav a{color:#fff;font-weight:700;font-size:.95rem}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border:0;border-radius:999px;font-weight:800;cursor:pointer;transition:.25s}.btn-orange{background:var(--orange);color:#fff}.btn-orange:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(242,106,33,.34)}.btn-dark{background:#0a0a0a;color:#fff}.btn-outline{border:1px solid rgba(255,255,255,.3);color:#fff}
.hero{min-height:74vh;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(5,5,5,.96),rgba(5,5,5,.72),rgba(5,5,5,.2)),radial-gradient(circle at 80% 40%,rgba(242,106,33,.4),transparent 30%),#111}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:42px;align-items:center;padding:70px 0}.eyebrow{color:var(--orange);font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero h1{font-size:clamp(2.5rem,6vw,5.7rem);line-height:1.02;margin:.35em 0 .22em}.hero h1 span{color:var(--orange)}.hero p{color:#d5d7da;font-size:1.1rem;max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.hero-card{background:linear-gradient(180deg,#24282c,#111315);border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:28px;box-shadow:var(--shadow)}
.search-box,.booking-form{display:grid;gap:12px}.search-box input,.search-box select,.booking-form input,.booking-form select,.booking-form textarea{width:100%;padding:14px 16px;border:1px solid #dde1e5;border-radius:12px;background:#fff;font:inherit}
.section{padding:76px 0}.section.alt{background:var(--gray)}.section.dark{background:var(--dark);color:#fff}.section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-title h2{font-size:clamp(2rem,4vw,3.15rem);margin:0}.section-title p{max-width:650px;color:var(--muted);margin:0}.dark .section-title p{color:#c9cdd1}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid #eceef1;border-radius:var(--radius);padding:24px;box-shadow:0 12px 35px rgba(0,0,0,.06)}.icon{width:54px;height:54px;border-radius:14px;background:rgba(242,106,33,.12);color:var(--orange);display:grid;place-items:center;font-size:1.5rem;margin-bottom:14px}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;border:1px solid #eceef1;border-radius:18px;overflow:hidden}.product-card .thumb{aspect-ratio:1/1;display:grid;place-items:center;background:linear-gradient(135deg,#fafafa,#e9ecef);font-size:3rem;color:#aaa}.product-card .content{padding:16px}
.centers{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.center-card{background:#fff;color:var(--dark);border-radius:22px;padding:28px;box-shadow:var(--shadow)}.center-meta{display:grid;gap:8px;color:#565d64;margin:14px 0 20px}
.booking-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:start}.booking-note{background:#111;color:#fff;border-radius:24px;padding:30px}.booking-form{background:#fff;border-radius:24px;padding:28px;box-shadow:var(--shadow);grid-template-columns:1fr 1fr}.booking-form .full{grid-column:1/-1}
.footer{background:#080808;color:#fff;padding:48px 0 22px}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:28px}.footer h4{color:var(--orange)}.footer small{color:#adb2b7}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{background:#fff;border:1px solid #eceef1;border-radius:18px;padding:14px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--orange)!important;color:#fff!important;border-radius:999px!important}
@media(max-width:900px){.main-nav{display:none}.hero-grid,.booking-wrap,.footer-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.cards,.centers,.product-grid,.booking-form{grid-template-columns:1fr}.booking-form .full{grid-column:auto}.hero{min-height:auto}.hero-grid{padding:54px 0}}

.hero-media-box{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  min-height:390px;
  background:linear-gradient(145deg,#25292d,#111315);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:var(--shadow);
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-media-box video,.hero-media-box img{
  width:100%;height:100%;min-height:390px;object-fit:cover;display:block;
}
.hero-media-placeholder{
  text-align:center;color:#fff;padding:36px;
}
.hero-media-placeholder .plus{
  width:72px;height:72px;border-radius:50%;display:grid;place-items:center;
  margin:0 auto 16px;background:rgba(242,106,33,.14);color:var(--orange);
  font-size:2.2rem;border:1px solid rgba(242,106,33,.35)
}
.contact-hero{
  padding:85px 0 55px;
  background:linear-gradient(135deg,#17191c,#080808);
  color:#fff;
}
.contact-actions{
  display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:28px;
}
.contact-action{
  min-height:220px;border-radius:24px;padding:30px;
  display:flex;flex-direction:column;justify-content:space-between;
  background:#fff;border:1px solid #eceef1;box-shadow:var(--shadow)
}
.contact-action h3{font-size:1.6rem;margin:0 0 8px}
.contact-action p{color:#666;margin:0 0 20px}
.contact-action.whatsapp{border-top:5px solid #25D366}
.contact-action.facebook{border-top:5px solid #1877F2}
.contact-icon{
  width:62px;height:62px;border-radius:18px;display:grid;place-items:center;
  font-size:1.8rem;background:#f4f5f6;margin-bottom:18px
}
.contact-btns{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:700px){.contact-actions{grid-template-columns:1fr}.hero-media-box,.hero-media-box video,.hero-media-box img{min-height:250px}}


/* ===============================
   PREMIUM WOOCOMMERCE STORE V5
   =============================== */
.eg-shop-page{background:#fff}
.eg-shop-hero{
  background:
    radial-gradient(circle at 15% 40%,rgba(242,106,33,.18),transparent 26%),
    linear-gradient(135deg,#080808,#1a1d20);
  color:#fff;padding:72px 0 58px;
}
.eg-shop-hero-grid{
  display:grid;grid-template-columns:1.15fr .85fr;gap:38px;align-items:center;
}
.eg-shop-hero h1{
  font-size:clamp(2.7rem,5vw,4.8rem);line-height:1.05;margin:.18em 0 .18em;
}
.eg-shop-hero p{color:#d2d5d8;max-width:650px;font-size:1.05rem}
.eg-shop-search form{display:flex;gap:10px}
.eg-shop-search input[type="search"]{
  flex:1;padding:16px 18px;border-radius:14px;border:1px solid rgba(255,255,255,.12);font:inherit;
}
.eg-shop-search button{
  border:0;border-radius:14px;padding:0 22px;background:var(--orange);color:#fff;font-weight:900;cursor:pointer;
}
.eg-category-strip{background:#111315;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}
.eg-cat-scroll{display:flex;gap:10px;overflow:auto;padding:16px 0;scrollbar-width:none}
.eg-cat-scroll::-webkit-scrollbar{display:none}
.eg-cat-chip{
  white-space:nowrap;padding:10px 17px;border-radius:999px;background:#25292d;color:#fff;font-weight:700;font-size:.92rem;
  border:1px solid #32363a;transition:.2s;
}
.eg-cat-chip:hover,.eg-cat-chip.active{background:var(--orange);border-color:var(--orange);color:#fff}
.eg-shop-content{padding-top:54px}
.eg-shop-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}
.eg-shop-toolbar h2{margin:.15em 0 0;font-size:2.1rem}
.eg-toolbar-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.eg-toolbar-actions .woocommerce-result-count{margin:0;color:#6d7379}
.eg-toolbar-actions .woocommerce-ordering{margin:0}
.eg-toolbar-actions select{
  border:1px solid #dfe2e5;border-radius:12px;padding:11px 38px 11px 14px;background:#fff;font:inherit;
}

/* Reset Woo product grid */
.woocommerce ul.products,
.woocommerce-page ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px!important;
  margin:0!important;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  float:none!important;width:auto!important;margin:0!important;
}
.woocommerce ul.products li.product.eg-product-card{
  position:relative;background:#fff;border:1px solid #e8ebee;border-radius:22px!important;padding:0!important;
  overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.05);transition:.28s;
}
.woocommerce ul.products li.product.eg-product-card:hover{
  transform:translateY(-5px);box-shadow:0 18px 45px rgba(0,0,0,.10);border-color:#d9dde1;
}
.eg-product-image-wrap{
  position:relative;background:linear-gradient(145deg,#f8f9fa,#eef0f2);aspect-ratio:1/1;overflow:hidden;
}
.eg-product-image-wrap img{
  width:100%!important;height:100%!important;object-fit:contain!important;margin:0!important;padding:18px;transition:.35s;
}
.eg-product-card:hover .eg-product-image-wrap img{transform:scale(1.035)}
.eg-product-badges{position:absolute;top:14px;right:14px;z-index:5;display:flex;gap:6px;flex-wrap:wrap}
.eg-badge{padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:900;color:#fff}
.eg-badge.sale{background:var(--orange)}.eg-badge.out{background:#666}
.eg-product-body{padding:18px}
.eg-product-category{font-size:.78rem;color:var(--orange);font-weight:900;margin-bottom:5px}
.eg-product-title-link{display:block}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:1.02rem!important;line-height:1.55!important;padding:0!important;margin:0 0 8px!important;color:#17191b;font-weight:800!important;
}
.eg-product-meta{display:flex;flex-direction:column;gap:3px;font-size:.78rem;color:#7b8187;min-height:20px}
.eg-product-meta .eg-cat{display:none}
.eg-product-bottom{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:16px}
.eg-price .price,.woocommerce ul.products li.product .price{
  color:var(--orange)!important;font-size:1.12rem!important;font-weight:900!important;margin:0!important;
}
.eg-cart-action .button,
.woocommerce ul.products li.product .button{
  margin:0!important;background:#111!important;color:#fff!important;border-radius:12px!important;padding:11px 13px!important;
  font-size:.82rem!important;font-weight:800!important;white-space:nowrap;
}
.eg-cart-action .button:hover{background:var(--orange)!important}

/* Pagination */
.woocommerce nav.woocommerce-pagination{margin-top:36px}
.woocommerce nav.woocommerce-pagination ul{border:0!important;display:flex;gap:8px;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0!important}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;border:1px solid #e1e4e7!important;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--orange)!important;color:#fff!important;border-color:var(--orange)!important}

/* Single product */
.eg-product-breadcrumb-bar{background:#111315;color:#c5c8cb;padding:14px 0}
.eg-product-breadcrumb-bar .woocommerce-breadcrumb{margin:0;color:#c5c8cb}
.eg-product-breadcrumb-bar a{color:#fff}
.woocommerce div.product{
  background:#fff;border-radius:26px;padding:30px;box-shadow:var(--shadow);
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
  background:#f5f6f7;border-radius:20px;overflow:hidden;
}
.woocommerce div.product div.summary{padding:14px 10px}
.woocommerce div.product .product_title{font-size:clamp(2rem,4vw,3.2rem);line-height:1.2;margin-bottom:14px}
.woocommerce div.product p.price,.woocommerce div.product span.price{
  color:var(--orange)!important;font-weight:900!important;font-size:1.7rem!important;
}
.woocommerce div.product form.cart{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.woocommerce .quantity .qty{
  min-height:48px;border:1px solid #dfe2e5;border-radius:12px;
}
.woocommerce div.product form.cart .button{
  min-height:48px;background:var(--orange)!important;color:#fff!important;border-radius:12px!important;padding:0 24px!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  border-radius:12px 12px 0 0!important;border-color:#e2e5e8!important;background:#f3f4f5!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff!important;border-top:3px solid var(--orange)!important}
.woocommerce-message,.woocommerce-info{
  border-top-color:var(--orange)!important;background:#fff!important;border-radius:14px!important;
}
.woocommerce-message::before,.woocommerce-info::before{color:var(--orange)!important}

/* Remove default sidebar spacing */
.woocommerce .content-area,.woocommerce-page .content-area{width:100%!important;float:none!important}
.woocommerce .widget-area,.woocommerce-page .widget-area{display:none!important}

@media(max-width:1000px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .eg-shop-hero-grid{grid-template-columns:1fr}
  .eg-shop-toolbar{align-items:flex-start;flex-direction:column}
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:1fr}
  .eg-shop-search form{flex-direction:column}
}


/* External action buttons fix */
.eg-working-actions{
  position:relative;
  z-index:20;
}
.eg-working-actions .eg-external-btn{
  position:relative;
  z-index:21;
  pointer-events:auto !important;
  cursor:pointer !important;
}
.center-card{
  position:relative;
  overflow:visible;
}


/* =========================================
   MOBILE-FIRST PRO EXPERIENCE - V8
   Phones are the primary experience
   ========================================= */

.mobile-menu-toggle,
.mobile-menu-panel,
.mobile-bottom-nav{display:none}

/* Improve touch targets globally */
.btn,
button,
input,
select,
textarea{
  min-height:44px;
}

/* Better small-screen reading */
body{
  -webkit-text-size-adjust:100%;
  overflow-x:hidden;
}

/* MOBILE */
@media (max-width: 900px){

  body{
    padding-bottom:78px;
  }

  .container{
    width:min(100% - 28px, 680px);
  }

  .site-header{
    position:sticky;
    top:0;
    z-index:9999;
  }

  .nav-wrap{
    min-height:68px;
    padding:10px 0;
  }

  .brand{
    font-size:1rem;
    max-width:70%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .custom-logo{
    max-height:38px;
    max-width:190px;
  }

  .main-nav,
  .desktop-book-btn{
    display:none!important;
  }

  .mobile-menu-toggle{
    display:flex;
    width:46px;
    height:46px;
    padding:0;
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    background:#17191c;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    cursor:pointer;
  }

  .mobile-menu-toggle span{
    width:21px;
    height:2px;
    background:#fff;
    border-radius:99px;
    transition:.22s;
  }

  .mobile-menu-toggle.is-open span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }
  .mobile-menu-toggle.is-open span:nth-child(2){
    opacity:0;
  }
  .mobile-menu-toggle.is-open span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  .mobile-menu-panel{
    display:grid;
    position:fixed;
    top:68px;
    left:14px;
    right:14px;
    padding:10px;
    background:#101214;
    border:1px solid #292d31;
    border-radius:18px;
    box-shadow:0 18px 55px rgba(0,0,0,.28);
    transform:translateY(-12px);
    opacity:0;
    pointer-events:none;
    transition:.22s;
    z-index:9998;
  }

  .mobile-menu-panel.is-open{
    transform:none;
    opacity:1;
    pointer-events:auto;
  }

  .mobile-menu-panel a{
    color:#fff;
    padding:14px 16px;
    border-radius:12px;
    font-weight:800;
    border-bottom:1px solid rgba(255,255,255,.06);
  }

  .mobile-menu-panel a:last-child{
    border-bottom:0;
  }

  .mobile-menu-panel a:active{
    background:#202327;
  }

  .mobile-bottom-nav{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    z-index:9999;
    background:rgba(9,9,9,.98);
    border-top:1px solid rgba(255,255,255,.08);
    padding:7px 6px calc(7px + env(safe-area-inset-bottom));
    box-shadow:0 -10px 30px rgba(0,0,0,.18);
  }

  .mobile-bottom-nav a{
    min-height:56px;
    color:#c7cacf;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    font-size:.71rem;
    font-weight:800;
    border-radius:12px;
  }

  .mobile-bottom-nav a:active{
    background:#1c1f22;
  }

  .mobile-bottom-nav .mbn-primary{
    color:#fff;
    background:var(--orange);
    transform:translateY(-10px);
    box-shadow:0 8px 22px rgba(242,106,33,.35);
  }

  .mbn-icon{
    font-size:1.28rem;
    line-height:1;
  }

  /* Homepage hero */
  .hero{
    min-height:auto!important;
  }

  .hero-grid{
    grid-template-columns:1fr!important;
    padding:34px 0 28px!important;
    gap:24px!important;
  }

  .hero h1{
    font-size:clamp(2.25rem,12vw,3.9rem)!important;
    line-height:1.02;
    margin-top:.22em;
  }

  .hero p{
    font-size:1rem!important;
    line-height:1.8;
  }

  .hero-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    width:100%;
  }

  .hero-actions .btn{
    width:100%;
    padding:14px 12px;
  }

  .hero-media-box{
    min-height:220px!important;
    border-radius:20px!important;
  }

  .hero-media-box video,
  .hero-media-box img{
    min-height:220px!important;
    max-height:320px;
  }

  /* Sections */
  .section{
    padding:48px 0!important;
  }

  .section-title{
    display:block!important;
    margin-bottom:22px!important;
  }

  .section-title h2{
    font-size:2rem!important;
    margin-top:4px!important;
  }

  .section-title p{
    margin-top:10px!important;
  }

  .cards,
  .centers,
  .footer-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .card,
  .center-card{
    border-radius:18px!important;
    padding:20px!important;
  }

  .center-meta{
    font-size:.95rem;
    gap:10px!important;
  }

  .center-card .hero-actions{
    grid-template-columns:1fr!important;
  }

  /* Booking */
  .booking-wrap{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .booking-note{
    padding:22px!important;
  }

  .booking-form{
    grid-template-columns:1fr!important;
    padding:20px!important;
    gap:12px!important;
  }

  .booking-form .full{
    grid-column:auto!important;
  }

  .booking-form input,
  .booking-form select,
  .booking-form textarea{
    font-size:16px!important; /* prevents iOS zoom */
    min-height:50px;
  }

  /* Store */
  .eg-shop-hero{
    padding:38px 0 28px!important;
  }

  .eg-shop-hero-grid{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }

  .eg-shop-hero h1{
    font-size:2.5rem!important;
  }

  .eg-shop-search form{
    flex-direction:column!important;
  }

  .eg-shop-search input[type="search"]{
    min-height:52px;
    font-size:16px;
  }

  .eg-shop-search button{
    min-height:50px;
    width:100%;
  }

  .eg-category-strip{
    position:sticky;
    top:68px;
    z-index:100;
  }

  .eg-cat-scroll{
    padding:11px 0!important;
  }

  .eg-cat-chip{
    padding:9px 14px!important;
    font-size:.84rem!important;
  }

  .eg-shop-toolbar{
    display:block!important;
  }

  .eg-toolbar-actions{
    display:grid!important;
    grid-template-columns:1fr;
    width:100%;
    margin-top:14px;
  }

  .eg-toolbar-actions select{
    width:100%;
    min-height:48px;
  }

  .woocommerce ul.products,
  .woocommerce-page ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  .woocommerce ul.products li.product.eg-product-card{
    border-radius:16px!important;
  }

  .eg-product-body{
    padding:12px!important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:.9rem!important;
    line-height:1.45!important;
  }

  .eg-product-category{
    font-size:.7rem!important;
  }

  .eg-product-bottom{
    align-items:stretch!important;
    flex-direction:column!important;
    gap:8px!important;
  }

  .eg-cart-action .button{
    width:100%!important;
    text-align:center!important;
    min-height:44px!important;
  }

  /* Single product */
  .woocommerce div.product{
    padding:16px!important;
    border-radius:18px!important;
  }

  .woocommerce div.product .product_title{
    font-size:1.8rem!important;
  }

  .woocommerce div.product div.summary{
    padding:8px 0!important;
  }

  .woocommerce div.product form.cart{
    display:grid!important;
    grid-template-columns:90px 1fr;
    width:100%;
  }

  .woocommerce div.product form.cart .button{
    width:100%;
  }

  /* Contact */
  .contact-hero{
    padding:48px 0 34px!important;
  }

  .contact-actions{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  .contact-action{
    min-height:auto!important;
    padding:22px!important;
  }

  /* Footer */
  .footer{
    padding:38px 0 96px!important;
  }
}

/* Small phones */
@media (max-width: 420px){
  .container{
    width:min(100% - 20px, 680px);
  }

  .hero-actions{
    grid-template-columns:1fr!important;
  }

  .woocommerce ul.products,
  .woocommerce-page ul.products{
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }

  .eg-product-image-wrap{
    aspect-ratio:1/1;
  }

  .eg-product-image-wrap img{
    padding:10px!important;
  }

  .mobile-bottom-nav a{
    font-size:.66rem;
  }
}


/* V9 bundled animated hero image */
.hero-media-box{
  aspect-ratio:16/9;
  min-height:0!important;
  background:#111;
}
.hero-media-box img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  object-fit:cover!important;
  object-position:center center!important;
}
@media(max-width:900px){
  .hero-media-box{
    aspect-ratio:16/9;
    min-height:0!important;
  }
  .hero-media-box img{
    min-height:0!important;
    max-height:none!important;
  }
}


/* =========================================
   V10 DESKTOP STRIP / MOBILE NAV LEAK FIX
   ========================================= */

/* Mobile-only UI must never occupy space on desktop */
@media (min-width:901px){
  .mobile-menu-toggle,
  .mobile-menu-panel,
  .mobile-bottom-nav{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    position:absolute!important;
    width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }
}

/* The homepage must begin directly with the hero */
body.home main{
  margin-top:0!important;
  padding-top:0!important;
}
body.home .hero{
  margin-top:0!important;
}

/* Hide accidental breadcrumb/plugin navigation strips on the homepage only */
body.home .woocommerce-breadcrumb,
body.home .breadcrumb,
body.home .breadcrumbs,
body.home .yoast-breadcrumb,
body.home .rank-math-breadcrumb{
  display:none!important;
}

/* Keep the bundled animation clean and flush */
body.home .hero-media-box{
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
body.home .hero-media-box img{
  display:block!important;
  margin:0!important;
  padding:0!important;
}


/* =========================================
   V11 COMPLETE MOBILE REDESIGN
   ========================================= */

.home-main{overflow:hidden}
.desktop-header-actions{display:flex;gap:10px;align-items:center}
.hero-v11{
  min-height:auto;
  background:
    radial-gradient(circle at 80% 20%, rgba(242,106,33,.22), transparent 24%),
    linear-gradient(120deg, rgba(5,5,5,.96), rgba(8,8,8,.90)),
    #0c0d0e;
}
.hero-grid-v11{
  align-items:center;
  padding:56px 0 58px;
}
.hero-copy{max-width:700px}
.hero-mini-points{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.hero-mini-points span{
  background:rgba(255,255,255,.08);
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  padding:9px 14px;
  border-radius:999px;
  font-size:.9rem;
  font-weight:800;
}
.hero-media-box-v11{
  min-height:0!important;
  aspect-ratio:16/10;
  border-radius:30px!important;
}
.quick-links-v11{padding-top:32px}
.quick-grid-v11{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.quick-card-v11{
  background:#fff;
  border:1px solid #eceef1;
  border-radius:24px;
  box-shadow:0 16px 35px rgba(0,0,0,.06);
  padding:24px;
  display:block;
}
.quick-card-v11 h3{margin:12px 0 8px;font-size:1.35rem}
.quick-card-v11 p{margin:0;color:#6b7280}
.quick-icon-v11{
  width:56px;height:56px;border-radius:18px;
  display:grid;place-items:center;
  font-size:1.4rem;font-weight:900;
  color:var(--orange);
  background:rgba(242,106,33,.13);
}
.home-cats-grid-v11{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.home-cat-v11{
  background:#fff;
  border:1px solid #eceef1;
  border-radius:20px;
  min-height:112px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:800;
  box-shadow:0 8px 20px rgba(0,0,0,.04);
}
.hc-icon{
  width:46px;height:46px;border-radius:14px;
  background:#111;color:#fff;display:grid;place-items:center;
}
.branch-grid-v11{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}
.branch-card-v11{
  background:#fff;
  border:1px solid #eceef1;
  border-radius:24px;
  box-shadow:0 16px 35px rgba(0,0,0,.06);
  padding:24px;
}
.branch-card-v11 h3{
  margin:8px 0 16px;
  font-size:1.25rem;
  line-height:1.7;
}
.branch-card-v11 ul{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.branch-card-v11 li{color:#3f464e}
.branch-label-v11{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(242,106,33,.12);
  color:var(--orange);
  font-weight:900;
}
.branch-actions-v11{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
}
.branch-actions-v11 .btn{flex:1}

/* Clean mobile header */
@media (max-width: 900px){
  body.mobile-menu-open{overflow:hidden}

  .site-header{
    background:#090909!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
  }

  .nav-wrap{
    display:grid!important;
    grid-template-columns:auto 1fr;
    gap:14px;
    align-items:center;
    padding:14px 0 12px!important;
  }

  .brand{
    order:2;
    max-width:none!important;
    font-size:1.42rem!important;
    line-height:1.1!important;
    text-align:right;
  }

  .brand .custom-logo-link, .brand img{
    max-height:34px!important;
  }

  .desktop-header-actions,
  .main-nav{
    display:none!important;
  }

  .mobile-menu-toggle{
    order:1;
    display:flex!important;
    width:48px!important;
    height:48px!important;
    background:#17191c!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }

  .mobile-menu-toggle span{
    width:20px!important;
    height:2px!important;
    background:#fff!important;
  }

  .mobile-menu-panel{
    display:block!important;
    position:fixed!important;
    top:74px!important;
    left:14px!important;
    right:14px!important;
    z-index:99999!important;
    background:#101214!important;
    border:1px solid #2d3136!important;
    border-radius:22px!important;
    padding:10px!important;
    opacity:0!important;
    transform:translateY(-12px)!important;
    pointer-events:none!important;
    transition:.2s!important;
  }

  .mobile-menu-panel.is-open{
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }

  .mobile-menu-panel-inner{
    display:grid;
    gap:4px;
  }

  .mobile-menu-panel a{
    color:#fff!important;
    padding:14px 16px!important;
    font-weight:800!important;
    border-radius:14px!important;
    border-bottom:0!important;
  }

  .mobile-menu-panel a:active{
    background:#1b1e22!important;
  }

  .mobile-quickbar{
    display:grid!important;
    grid-template-columns:repeat(4,1fr);
    gap:8px;
    padding:0 14px 12px;
    background:#090909;
  }

  .mobile-quickbar a{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size:.82rem;
    font-weight:800;
    color:#fff;
    background:#151618;
    border:1px solid rgba(255,255,255,.06);
    border-radius:14px;
    padding:0 8px;
  }

  .mobile-bottom-nav{
    display:grid!important;
    grid-template-columns:repeat(5,1fr)!important;
    background:#0a0a0a!important;
  }

  .mobile-bottom-nav a{
    color:#d2d5d8!important;
    text-decoration:none!important;
  }

  /* prevent accidental raw nav text from appearing */
  .site-header + * .mobile-bottom-nav,
  .site-header .main-nav,
  .site-header .desktop-book-btn{
    display:none!important;
  }

  .hero-grid-v11{
    grid-template-columns:1fr!important;
    gap:18px!important;
    padding:28px 0 34px!important;
  }

  .hero-copy{
    text-align:right;
  }

  .hero-v11 h1{
    font-size:2.7rem!important;
    margin:.28em 0 .18em!important;
  }

  .hero-v11 p{
    font-size:1rem!important;
    margin-bottom:0;
  }

  .hero-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }

  .hero-media-box-v11{
    order:3;
    aspect-ratio:16/9!important;
    border-radius:22px!important;
  }

  .hero-mini-points{
    gap:8px!important;
  }
  .hero-mini-points span{
    font-size:.8rem;
    padding:8px 12px;
  }

  .quick-grid-v11,
  .branch-grid-v11{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .home-cats-grid-v11{
    grid-template-columns:repeat(2,1fr)!important;
    gap:12px!important;
  }

  .home-cat-v11{
    min-height:96px!important;
    border-radius:18px!important;
  }

  .branch-card-v11{
    padding:18px!important;
    border-radius:20px!important;
  }

  .branch-card-v11 h3{
    font-size:1.08rem!important;
  }

  .branch-actions-v11{
    display:grid!important;
    grid-template-columns:1fr 1fr;
  }

  /* remove old homepage section clutter if cache mixes styles */
  .home-main .product-grid .product-card .thumb{
    display:none!important;
  }

  .home-main .product-grid{
    display:none!important;
  }

  .footer{
    padding-bottom:96px!important;
  }
}

@media (max-width: 480px){
  .container{
    width:min(100% - 18px, 680px)!important;
  }

  .brand{
    font-size:1.26rem!important;
  }

  .mobile-quickbar{
    grid-template-columns:repeat(2,1fr)!important;
  }

  .hero-v11 h1{
    font-size:2.3rem!important;
  }

  .hero-actions{
    grid-template-columns:1fr!important;
  }

  .quick-card-v11{
    padding:18px!important;
    border-radius:20px!important;
  }

  .quick-card-v11 h3{
    font-size:1.18rem!important;
  }

  .home-cats-grid-v11{
    grid-template-columns:1fr 1fr!important;
  }

  .branch-actions-v11{
    grid-template-columns:1fr!important;
  }
}


/* =========================================
   V12 ROBUST SHOP
   ========================================= */
.eg-shop-count{
  margin:6px 0 0;
  color:#777;
  font-size:.9rem;
}
.eg-order-form{margin:0}
.eg-order-form select{
  border:1px solid #dfe2e5;
  border-radius:14px;
  padding:12px 42px 12px 14px;
  background:#fff;
  min-height:48px;
  font:inherit;
}
.eg-products-grid{
  list-style:none!important;
  padding:0!important;
}
.eg-card-sale{
  position:absolute;
  top:12px;
  right:12px;
  z-index:5;
  background:var(--orange);
  color:#fff;
  font-weight:900;
  font-size:.75rem;
  border-radius:999px;
  padding:6px 10px;
}
.eg-product-sku{
  font-size:.78rem;
  color:#7a8087;
  margin-top:4px;
}
.eg-product-stock{
  display:inline-flex;
  margin-top:8px;
  border-radius:999px;
  padding:5px 9px;
  font-size:.72rem;
  font-weight:900;
}
.eg-product-stock.in{
  color:#146c43;
  background:#e9f7ef;
}
.eg-product-stock.out{
  color:#a33;
  background:#fdeeee;
}
.eg-view-product{
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
}
.eg-shop-pagination{
  display:flex;
  gap:8px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:34px;
}
.eg-shop-pagination .page-numbers{
  min-width:44px;
  height:44px;
  display:grid;
  place-items:center;
  padding:0 12px;
  border-radius:12px;
  border:1px solid #dfe2e5;
  background:#fff;
  font-weight:800;
}
.eg-shop-pagination .page-numbers.current{
  background:var(--orange);
  color:#fff;
  border-color:var(--orange);
}
.eg-empty-shop{
  background:#fff;
  border:1px solid #e8ebee;
  border-radius:24px;
  padding:42px 24px;
  text-align:center;
  box-shadow:0 10px 28px rgba(0,0,0,.05);
}
.eg-empty-icon{
  width:66px;height:66px;
  margin:0 auto 14px;
  border-radius:20px;
  display:grid;
  place-items:center;
  background:rgba(242,106,33,.12);
  color:var(--orange);
  font-size:1.7rem;
}
.eg-empty-shop h3{margin:0 0 8px}
.eg-empty-shop p{color:#666;margin:0 0 18px}

@media(max-width:900px){
  .eg-shop-toolbar{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
  }
  .eg-order-form select{
    width:100%!important;
  }
  .woocommerce ul.products.eg-products-grid,
  .woocommerce-page ul.products.eg-products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:420px){
  .woocommerce ul.products.eg-products-grid,
  .woocommerce-page ul.products.eg-products-grid{
    grid-template-columns:1fr!important;
  }
  .eg-product-card{
    display:grid!important;
    grid-template-columns:42% 58%!important;
  }
  .eg-product-image-wrap{
    aspect-ratio:auto!important;
    min-height:190px;
  }
  .eg-product-body{
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .eg-product-bottom{
    margin-top:12px!important;
  }
}


/* =========================================
   V13 FINAL UX FIXES
   ========================================= */
.home-cats-grid-v11{grid-template-columns:repeat(3,minmax(0,1fr));}
.home-cat-v13{background:#fff;border:1px solid #e8ebee;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:110px 1fr;min-height:110px;box-shadow:0 10px 26px rgba(0,0,0,.05);transition:.22s}
.home-cat-v13:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(0,0,0,.08)}
.home-cat-image-v13{background:#f2f4f6;display:grid;place-items:center;min-height:110px}.home-cat-image-v13 img{width:100%;height:100%;object-fit:cover}.home-cat-image-v13 span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#111;color:#fff}
.home-cat-copy-v13{display:flex;flex-direction:column;justify-content:center;padding:16px}.home-cat-copy-v13 strong{font-size:1.05rem}.home-cat-copy-v13 small{color:#777;margin-top:4px}.eg-booking-success{border-right:5px solid #28a745;margin-bottom:20px}.contact-actions{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.mobile-quickbar{display:none!important}.site-header{min-height:72px}.nav-wrap{grid-template-columns:48px 1fr!important}.mobile-bottom-nav{display:grid!important}.home-cats-grid-v11{grid-template-columns:1fr!important;gap:12px!important}.home-cat-v13{grid-template-columns:96px 1fr;min-height:96px;border-radius:18px}.home-cat-image-v13{min-height:96px}.contact-actions{grid-template-columns:1fr!important}}
@media(max-width:420px){.home-cat-v13{grid-template-columns:82px 1fr}.home-cat-image-v13{min-height:88px}}


/* V15 contact + offers cleanup */
body.page-template-page-offers .section-title p:empty,
body.page-template-page-offers .card p:empty{
  display:none!important;
}


/* =========================================
   V16 SHOP CATEGORY CARDS
   ========================================= */
.eg-shop-categories-panel{
  background:#fff;
  padding-top:54px;
  padding-bottom:28px;
}

.eg-shop-category-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}

.eg-shop-category-card{
  background:#fff;
  border:1px solid #e8ebee;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(0,0,0,.05);
  transition:.22s;
}

.eg-shop-category-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(0,0,0,.09);
}

.eg-shop-category-media{
  aspect-ratio:16/10;
  background:linear-gradient(145deg,#f6f7f8,#eceff1);
  display:grid;
  place-items:center;
  overflow:hidden;
}

.eg-shop-category-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.eg-shop-category-placeholder{
  width:58px;
  height:58px;
  border-radius:18px;
  background:#111;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.5rem;
}

.eg-shop-category-copy{
  padding:16px;
}

.eg-shop-category-copy h3{
  margin:0 0 4px;
  font-size:1.05rem;
}

.eg-shop-category-copy span{
  color:#7a8087;
  font-size:.82rem;
}

@media(max-width:900px){
  .eg-shop-category-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }

  .eg-shop-categories-panel{
    padding-top:34px;
  }
}

@media(max-width:480px){
  .eg-shop-category-grid{
    grid-template-columns:1fr 1fr;
  }

  .eg-shop-category-copy{
    padding:12px;
  }

  .eg-shop-category-copy h3{
    font-size:.92rem;
  }

  .eg-shop-category-copy span{
    font-size:.75rem;
  }
}


/* =========================================
   V17 ALL HOMEPAGE CATEGORIES
   ========================================= */
.home-cats-grid-v11{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;
  gap:16px!important;
}

@media(max-width:900px){
  .home-cats-grid-v11{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
}

@media(max-width:480px){
  .home-cats-grid-v11{
    grid-template-columns:1fr 1fr!important;
  }
}


/* V18 clean category heading */
.home-cats-v11 .section-title > p:empty{
  display:none!important;
}


/* =========================================
   V19 PRODUCT DETAILS + HEADER CART
   ========================================= */
.eg-header-cart{
  position:relative;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.15);
  color:#fff;
  font-weight:800;
}
.eg-cart-count{
  min-width:22px;
  height:22px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--orange);
  color:#fff;
  font-size:.72rem;
  font-weight:900;
}
.eg-cart-icon{font-size:1rem}

.eg-single-product-card{
  background:#fff;
  border-radius:26px;
  padding:28px;
  box-shadow:var(--shadow);
}
.eg-single-product-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
  align-items:start;
}
.eg-single-product-gallery{
  background:#f4f5f6;
  border-radius:22px;
  overflow:hidden;
}
.eg-main-product-image,
.eg-single-product-gallery img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}
.eg-single-product-summary h1{
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.25;
  margin:.2em 0 .35em;
}
.eg-single-sku{
  color:#777;
  font-size:.9rem;
  margin-bottom:10px;
}
.eg-single-price{
  color:var(--orange);
  font-weight:900;
  font-size:1.8rem;
  margin:12px 0;
}
.eg-single-short{
  color:#50565c;
  margin-bottom:14px;
}
.eg-single-stock{
  display:inline-flex;
  padding:7px 12px;
  border-radius:999px;
  font-size:.82rem;
  font-weight:900;
  margin-bottom:16px;
}
.eg-single-stock.in{background:#e9f7ef;color:#146c43}
.eg-single-stock.out{background:#fdeeee;color:#a33}
.eg-single-cart{
  display:flex;
  gap:10px;
  align-items:center;
  margin:8px 0 18px;
}
.eg-single-cart .qty{
  min-height:50px;
  width:85px;
  border:1px solid #dfe2e5;
  border-radius:12px;
}
.eg-single-cart .single_add_to_cart_button{
  min-height:50px;
  border:0;
  border-radius:12px;
  background:var(--orange)!important;
  color:#fff!important;
  padding:0 24px!important;
  font-weight:900!important;
}
.eg-single-meta{
  border-top:1px solid #eceef0;
  padding-top:16px;
  color:#555;
}
.eg-single-description{
  margin-top:30px;
  padding-top:24px;
  border-top:1px solid #eceef0;
}
.eg-single-description h2{
  margin-top:0;
}
.eg-mobile-cart{
  position:relative;
}
.eg-mobile-cart .eg-cart-count{
  position:absolute;
  top:2px;
  right:10px;
  min-width:18px;
  height:18px;
  font-size:.62rem;
}

@media(max-width:900px){
  .eg-single-product-card{
    padding:16px;
    border-radius:20px;
  }
  .eg-single-product-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .eg-single-product-summary h1{
    font-size:1.8rem;
  }
  .eg-single-cart{
    display:grid;
    grid-template-columns:90px 1fr;
  }
  .eg-single-cart .single_add_to_cart_button{
    width:100%;
  }
}


/* =========================================
   V22 QUICK CARD IMAGES
   ========================================= */
.quick-card-v11.quick-card-image-v22{
  padding:0!important;
  overflow:hidden;
  background:#fff;
  transition:transform .22s ease, box-shadow .22s ease;
}
.quick-card-v11.quick-card-image-v22:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 42px rgba(0,0,0,.10);
}
.quick-image-v22{
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#f4f5f6;
}
.quick-image-v22 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .3s ease;
}
.quick-card-v11.quick-card-image-v22:hover .quick-image-v22 img{
  transform:scale(1.025);
}
.quick-card-copy-v22{
  padding:20px 22px 22px;
}
.quick-card-copy-v22 h3{
  margin:0 0 7px!important;
}
.quick-card-copy-v22 p{
  margin:0!important;
}

@media(max-width:900px){
  .quick-card-copy-v22{
    padding:16px 17px 18px;
  }
  .quick-image-v22{
    aspect-ratio:16/10;
  }
}
