/*
Theme Name: Leader Hellas Hero Slider Child
Theme URI:
Description: Child theme για τη Leader Hellas. Προσθέτει διαχειρίσιμο full Hero Slider χωρίς να τροποποιεί το parent theme ή τα υπάρχοντα δεδομένα του site.
Author: Leader Hellas
Template: leader-hellas-professional-v32
Version: 26.0.0
Text Domain: leader-hellas-child
*/

/*
 * Το parent stylesheet φορτώνεται από το functions.php.
 * Εδώ υπάρχουν μόνο οι νέες ρυθμίσεις του Hero Slider.
 */

.hero-full-slider{
    position:relative;
    min-height:575px;
}
.hero-full-slides{
    position:relative;
    min-height:575px;
}
.hero-full-slide{
    position:absolute;
    inset:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateX(18px);
    transition:opacity .55s ease, transform .55s ease, visibility .55s ease;
}
.hero-full-slide.is-active{
    position:relative;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateX(0);
    z-index:2;
}
.hero-full-slide .hero-product-photo{
    width:560px;
    max-width:100%;
    max-height:420px;
    object-fit:contain;
    margin:0 auto;
}
.hero-full-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:8;
    width:44px;
    height:44px;
    border-radius:50%;
    border:1px solid rgba(8,113,201,.20);
    background:rgba(255,255,255,.88);
    color:var(--navy);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    box-shadow:0 8px 22px rgba(17,43,78,.10);
    backdrop-filter:blur(8px);
}
.hero-full-arrow:hover{
    background:#fff;
    color:var(--blue);
}
.hero-full-arrow svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.hero-full-prev{left:18px}
.hero-full-next{right:18px}
.hero-full-dots{
    position:absolute;
    left:50%;
    bottom:22px;
    transform:translateX(-50%);
    z-index:9;
    display:flex;
    gap:8px;
}
.hero-full-dot{
    width:9px;
    height:9px;
    padding:0;
    border:0;
    border-radius:50%;
    background:rgba(8,113,201,.28);
    cursor:pointer;
}
.hero-full-dot.is-active{
    width:26px;
    border-radius:10px;
    background:var(--blue);
}
@media(max-width:850px){
    .hero-full-slider,
    .hero-full-slides{min-height:930px}
    .hero-full-arrow{top:60%}
}
@media(max-width:600px){
    .hero-full-slider,
    .hero-full-slides{min-height:760px}
    .hero-full-arrow{width:38px;height:38px}
    .hero-full-prev{left:8px}
    .hero-full-next{right:8px}
    .hero-full-slide .hero-product-photo{max-height:300px}
}


/* Child v2 — image-only full hero slides
   Αν μια διαφάνεια έχει μόνο εικόνα και κανένα κείμενο/κουμπί,
   η εικόνα καταλαμβάνει ολόκληρο το Hero slider. */
.hero-full-slide.is-image-only{
    overflow:hidden;
}
.hero-image-only-wrap{
    width:100%;
    height:575px;
    min-height:575px;
    display:block;
    position:relative;
    background:#eef6fd;
}
.hero-image-only{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    object-position:center center;
}
.hero-full-slide.is-image-only .hero-inner,
.hero-full-slide.is-image-only .hero-copy,
.hero-full-slide.is-image-only .hero-products{
    display:none!important;
}
@media(max-width:850px){
    .hero-full-slider,
    .hero-full-slides,
    .hero-image-only-wrap{
        min-height:575px!important;
        height:575px!important;
    }
}
@media(max-width:600px){
    .hero-full-slider,
    .hero-full-slides,
    .hero-image-only-wrap{
        min-height:420px!important;
        height:420px!important;
    }
}


/* Child v3 — Image-only slide fits inside the same Hero bounds as slide 1 */
.hero-full-slide.is-image-only{
    background:linear-gradient(118deg,#fbfdff 0%,#eef6fd 55%,#f8fbff 100%);
}
.hero-image-only-container{
    min-height:575px;
    height:575px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    z-index:2;
}
.hero-image-only-wrap{
    width:100%;
    height:100%;
    min-height:0!important;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    overflow:hidden;
    background:transparent;
}
.hero-image-only{
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    display:block;
    object-fit:contain!important;
    object-position:center center!important;
}
.hero-full-slide.is-image-only .hero-inner,
.hero-full-slide.is-image-only .hero-copy,
.hero-full-slide.is-image-only .hero-products{
    display:none!important;
}

/* Keep arrows inside the visible Hero area */
.hero-full-prev{left:max(18px,calc((100vw - 1240px)/2 - 56px));}
.hero-full-next{right:max(18px,calc((100vw - 1240px)/2 - 56px));}

/* Tablet */
@media(max-width:850px){
    .hero-full-slider,
    .hero-full-slides{
        min-height:650px!important;
    }
    .hero-image-only-container{
        min-height:650px!important;
        height:650px!important;
    }
    .hero-image-only{
        object-fit:contain!important;
    }
    .hero-full-arrow{
        top:50%!important;
    }
}

/* Mobile */
@media(max-width:600px){
    .hero-full-slider,
    .hero-full-slides{
        min-height:460px!important;
    }
    .hero-image-only-container{
        min-height:460px!important;
        height:460px!important;
        width:94%;
    }
    .hero-image-only{
        object-fit:contain!important;
    }
}


/* === V15 — strict responsive system: phones / Galaxy Ultra / tablets === */
@media (max-width: 850px){
  .hero-full-slider,.hero-full-slides{min-height:0!important;height:auto!important;overflow:hidden!important}
  .hero-full-slide.is-active{position:relative!important;inset:auto!important}
  .hero-full-slide:not(.is-active){position:absolute!important}
  .hero-full-slide .container.hero-inner{width:100%!important;max-width:100%!important;min-height:0!important;padding:0 clamp(20px,5vw,34px)!important;display:flex!important;flex-direction:column!important;gap:0!important}
  .hero-full-slide .hero-copy{width:100%!important;padding:clamp(34px,8vw,58px) 0 22px!important}
  .hero-full-slide .hero-copy h1{font-size:clamp(38px,10.5vw,58px)!important;line-height:.98!important;letter-spacing:-1.5px!important;margin:0 0 22px!important;max-width:100%!important}
  .hero-full-slide .hero-copy p{font-size:clamp(16px,4.25vw,19px)!important;line-height:1.55!important;max-width:100%!important;margin:0!important}
  .hero-full-slide .buttons{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;margin-top:26px!important}
  .hero-full-slide .buttons .btn{width:100%!important;min-width:0!important;min-height:52px!important;padding:10px 12px!important;text-align:center!important;white-space:normal!important;line-height:1.2!important}
  .hero-full-slide .hero-products{width:100%!important;height:auto!important;min-height:0!important;transform:none!important;margin:0!important;padding:0 0 30px!important}
  .hero-full-slide .hero-product-photo{width:min(100%,560px)!important;height:auto!important;max-height:340px!important;object-fit:contain!important}
  .hero-full-arrow{top:43%!important}
  .hero-full-dots{bottom:10px!important}
  .category-strip{margin-top:0!important;padding-top:16px!important}
  .category-strip>.container{padding-left:clamp(16px,4vw,24px)!important;padding-right:clamp(16px,4vw,24px)!important}
  .category-grid{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
  .category-card{width:100%!important;min-height:132px!important;padding:22px!important;gap:18px!important;margin:0!important}
  .category-card h3{font-size:clamp(20px,5.4vw,26px)!important}
}
@media (max-width: 560px){
  .hero-full-slide .container.hero-inner{padding-left:28px!important;padding-right:28px!important}
  .hero-full-slide .hero-copy{padding-top:32px!important}
  .hero-full-slide .buttons{grid-template-columns:1fr!important;gap:10px!important;margin-top:24px!important}
  .hero-full-slide .buttons .btn{min-height:54px!important;font-size:13px!important}
  .hero-full-slide .hero-products{padding-bottom:26px!important}
  .hero-full-slide .hero-product-photo{max-height:290px!important}
  .hero-full-prev{left:10px!important}.hero-full-next{right:10px!important}
  .category-strip{padding-top:18px!important}
}
@media (max-width: 380px){
  .hero-full-slide .container.hero-inner{padding-left:22px!important;padding-right:22px!important}
  .hero-full-slide .hero-copy h1{font-size:clamp(34px,10.5vw,42px)!important}
  .hero-full-slide .hero-copy p{font-size:15.5px!important}
  .category-card{padding:18px!important;gap:14px!important}
}

/* === V16 — mobile spacing / CTA alignment / Galaxy Ultra === */
@media (max-width:850px){
  .hero-full-slide .container.hero-inner{padding-bottom:56px!important;box-sizing:border-box!important}
  .hero-full-slide .hero-copy{padding-bottom:0!important}
  .hero-full-slide .buttons{margin:24px 0 0!important;align-items:stretch!important}
  .hero-full-slide .buttons .btn{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;height:56px!important;min-height:56px!important;max-height:56px!important;margin:0!important;padding:0 14px!important;border-radius:10px!important}
  .hero-full-dots{bottom:18px!important}
  .category-strip{position:relative!important;z-index:1!important;transform:none!important;margin:0!important;padding:24px 0 0!important}
  .category-strip>.container{margin-top:0!important}
  .category-grid{margin-top:0!important}
}
@media (min-width:480px) and (max-width:850px){
  .hero-full-slide .buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:479px){
  .hero-full-slide .buttons{grid-template-columns:1fr!important;gap:12px!important}
  .hero-full-slide .container.hero-inner{padding-bottom:62px!important}
  .category-strip{padding-top:28px!important}
}


/* === V18 — final mobile spacing, CTA order and centered featured heading === */
.hero-mobile-buttons{display:none!important}
@media (max-width:850px){
  /* Safe gutters: no text glued to either screen edge */
  .hero-full-slide .container.hero-inner{padding-left:clamp(18px,5vw,30px)!important;padding-right:clamp(18px,5vw,30px)!important;padding-bottom:58px!important}
  .hero-full-slide .hero-copy{padding-top:30px!important;padding-left:0!important;padding-right:0!important}
  .hero-full-slide .hero-copy>.buttons{display:none!important}
  .hero-full-slide .hero-products{order:2!important;padding:18px 0 8px!important;display:flex!important;justify-content:center!important;align-items:center!important}
  .hero-full-slide .hero-product-photo{display:block!important;margin:0 auto!important;max-width:100%!important;max-height:330px!important;object-fit:contain!important}
  .hero-full-slide .hero-mobile-buttons{order:3!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;margin:12px 0 0!important}
  .hero-full-slide .hero-mobile-buttons .btn{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;padding:0 10px!important;font-size:12.5px!important;line-height:1.15!important;border-radius:9px!important;white-space:normal!important}
  .hero-full-arrow{top:42%!important}

  /* Homepage featured products heading */
  .section-soft .section-head{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;padding-left:18px!important;padding-right:18px!important}
  .section-soft .section-head>div{width:100%!important;text-align:center!important}
  .section-soft .section-head .section-title{width:100%!important;text-align:center!important;margin-left:auto!important;margin-right:auto!important}
  .section-soft .section-head .section-desc{width:100%!important;max-width:560px!important;text-align:center!important;margin-left:auto!important;margin-right:auto!important}

  /* Single product: consistent mobile gutters */
  body.single-product div.product{box-sizing:border-box!important;padding-left:18px!important;padding-right:18px!important}
  body.single-product .summary{box-sizing:border-box!important;padding-left:0!important;padding-right:0!important}
  body.single-product .summary .product_title,body.single-product .summary .product_meta,body.single-product .summary .stock{max-width:100%!important}
  body.single-product form.cart{display:grid!important;grid-template-columns:76px minmax(0,1fr)!important;gap:10px!important;align-items:end!important;width:100%!important;max-width:100%!important}
  body.single-product form.cart .quantity{width:76px!important;height:44px!important;min-height:44px!important}
  body.single-product form.cart .quantity input.qty{height:44px!important;min-height:44px!important}
  body.single-product form.cart .single_add_to_cart_button{width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:0 12px!important;font-size:12px!important;line-height:1!important;white-space:nowrap!important}
  body.single-product .woocommerce-tabs{box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}
}
@media (max-width:479px){
  .hero-full-slide .hero-mobile-buttons{grid-template-columns:1fr!important;gap:9px!important}
  .hero-full-slide .hero-mobile-buttons .btn{height:46px!important;min-height:46px!important;max-height:46px!important}
  .hero-full-slide .hero-products{padding-top:14px!important}
  body.single-product div.product{padding-left:14px!important;padding-right:14px!important}
  body.single-product form.cart{grid-template-columns:72px minmax(0,1fr)!important;gap:9px!important}
  body.single-product form.cart .quantity{width:72px!important}
}
@media (max-width:350px){
  body.single-product div.product{padding-left:12px!important;padding-right:12px!important}
  body.single-product form.cart{grid-template-columns:68px minmax(0,1fr)!important;gap:8px!important}
  body.single-product form.cart .quantity{width:68px!important}
  body.single-product form.cart .single_add_to_cart_button{font-size:11px!important;padding:0 8px!important}
}


/* === V19 — desktop hero CTA/layout hardening ===
   Desktop has one CTA group only: the group inside .hero-copy.
   The duplicate .hero-mobile-buttons exists only for responsive ordering <=850px. */
@media (min-width:851px){
  .hero-full-slide .hero-mobile-buttons{
    display:none!important;
  }
  .hero-full-slide .container.hero-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(360px,1fr)!important;
    align-items:center!important;
    column-gap:clamp(36px,5vw,84px)!important;
    min-height:575px!important;
  }
  .hero-full-slide .hero-copy{
    min-width:0!important;
    align-self:center!important;
  }
  .hero-full-slide .hero-copy>.buttons{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    width:auto!important;
    margin-top:28px!important;
  }
  .hero-full-slide .hero-copy>.buttons .btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    white-space:nowrap!important;
  }
  .hero-full-slide .hero-products{
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:stretch!important;
  }
  .hero-full-slide .hero-product-photo{
    display:block!important;
    width:min(100%,560px)!important;
    height:auto!important;
    max-height:420px!important;
    object-fit:contain!important;
    margin:auto!important;
  }
}

/* === V20 — mobile hero CTA containment / visibility fix === */
@media (max-width:850px){
  .hero-full-slide .container.hero-inner{
    overflow:visible!important;
  }
  .hero-full-slide .hero-mobile-buttons{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    float:none!important;
    clear:both!important;
    box-sizing:border-box!important;
    max-width:100%!important;
    min-width:0!important;
    margin:16px 0 0!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:visible!important;
    z-index:5!important;
  }
  .hero-full-slide .hero-mobile-buttons .btn{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    float:none!important;
    box-sizing:border-box!important;
    max-width:100%!important;
    min-width:0!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
}
@media (max-width:479px){
  .hero-full-slide .hero-mobile-buttons{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:10px!important;
    width:100%!important;
  }
  .hero-full-slide .hero-mobile-buttons .btn{
    flex:0 0 auto!important;
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 14px!important;
    font-size:12px!important;
    line-height:1.15!important;
  }
}
@media (min-width:480px) and (max-width:850px){
  .hero-full-slide .hero-mobile-buttons{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
  }
}

/* === V23 — strict mobile product gutter/cart alignment + mobile navigation === */
@media (max-width:850px){
  /* Real visual gutter on the single-product summary. Using margin on the summary
     avoids parent-theme full-bleed/negative-margin rules swallowing the spacing. */
  body.single-product .woocommerce div.product .summary,
  body.single-product div.product .summary{
    box-sizing:border-box!important;
    width:calc(100% - 36px)!important;
    max-width:calc(100% - 36px)!important;
    margin-left:18px!important;
    margin-right:18px!important;
    padding-left:0!important;
    padding-right:0!important;
    float:none!important;
  }
  body.single-product .summary > *{box-sizing:border-box;max-width:100%}

  /* Quantity + add-to-cart: one stable row, identical control height/baseline. */
  body.single-product .summary form.cart{
    display:grid!important;
    grid-template-columns:62px minmax(0,1fr)!important;
    column-gap:9px!important;
    row-gap:0!important;
    align-items:end!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.single-product .summary form.cart .quantity{
    box-sizing:border-box!important;
    width:62px!important;
    min-width:62px!important;
    max-width:62px!important;
    margin:0!important;
    align-self:end!important;
  }
  body.single-product .summary form.cart .quantity input.qty{
    box-sizing:border-box!important;
    display:block!important;
    width:62px!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:0 6px!important;
  }
  body.single-product .summary form.cart .single_add_to_cart_button{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:end!important;
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:0 10px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* Mobile navigation: keep the trigger visible and the opened panel above content. */
  .menu-toggle,.mobile-menu-toggle,.nav-toggle,.navbar-toggler,.hamburger,
  button[aria-controls*="menu"],button[aria-controls*="nav"]{
    position:relative!important;
    z-index:10002!important;
  }
  body.lh-mobile-menu-open{overflow:hidden!important}
  body.lh-mobile-menu-open .site-header,
  body.lh-mobile-menu-open header{z-index:10000!important}
  .lh-mobile-menu-panel{
    box-sizing:border-box!important;
    z-index:10001!important;
    max-width:100vw!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .lh-mobile-menu-panel a{max-width:100%;overflow-wrap:anywhere}
}
@media (max-width:479px){
  body.single-product .woocommerce div.product .summary,
  body.single-product div.product .summary{
    width:calc(100% - 32px)!important;
    max-width:calc(100% - 32px)!important;
    margin-left:16px!important;
    margin-right:16px!important;
  }
  body.single-product .summary form.cart{grid-template-columns:60px minmax(0,1fr)!important;gap:8px!important}
  body.single-product .summary form.cart .quantity,
  body.single-product .summary form.cart .quantity input.qty{width:60px!important;min-width:60px!important;max-width:60px!important}
  body.single-product .summary form.cart .single_add_to_cart_button{font-size:11px!important;padding-left:7px!important;padding-right:7px!important}
}

/* === V24 — definitive small-screen vertical navigation + product gutter === */
@media (max-width:850px){
  /* Single product: use inner padding instead of calculated/negative margins so the
     text gutter survives parent-theme full-width rules on every mobile width. */
  body.single-product .woocommerce div.product .summary,
  body.single-product div.product .summary,
  body.single-product div.product > .summary{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.single-product .summary form.cart{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:10px!important;
    align-items:end!important;
    width:100%!important;
    margin:18px 0 0!important;
  }
  body.single-product .summary form.cart .quantity,
  body.single-product .summary form.cart .quantity input.qty{
    box-sizing:border-box!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
  }
  body.single-product .summary form.cart .single_add_to_cart_button{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    align-self:end!important;
  }

  /* The menu is never allowed to remain as the desktop horizontal row on mobile. */
  .lh-mobile-menu-panel{box-sizing:border-box!important}
  .lh-mobile-menu-panel:not(.lh-mobile-menu-is-list){
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:100%!important;
    width:100%!important;
    max-width:none!important;
  }
  .lh-mobile-menu-panel.lh-mobile-menu-is-list{
    width:100%!important;
    max-width:100%!important;
  }
  .lh-mobile-menu-panel ul,
  ul.lh-mobile-menu-panel{
    display:none!important;
  }
  body.lh-mobile-menu-open .lh-mobile-menu-panel ul,
  body.lh-mobile-menu-open ul.lh-mobile-menu-panel{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:8px 18px 14px!important;
    background:#fff!important;
  }
  body.lh-mobile-menu-open .lh-mobile-menu-panel li,
  body.lh-mobile-menu-open ul.lh-mobile-menu-panel > li{
    display:block!important;
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid rgba(17,43,78,.10)!important;
  }
  body.lh-mobile-menu-open .lh-mobile-menu-panel li > a,
  body.lh-mobile-menu-open ul.lh-mobile-menu-panel > li > a{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:46px!important;
    margin:0!important;
    padding:11px 4px!important;
    white-space:normal!important;
    line-height:1.25!important;
  }
  body.lh-mobile-menu-open .lh-mobile-menu-panel .sub-menu{
    position:static!important;
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    box-shadow:none!important;
    padding:0 0 6px 14px!important;
  }
}
@media (max-width:479px){
  body.single-product .woocommerce div.product .summary,
  body.single-product div.product .summary,
  body.single-product div.product > .summary{
    padding-left:16px!important;
    padding-right:16px!important;
  }
  body.single-product .summary form.cart{grid-template-columns:60px minmax(0,1fr)!important;gap:8px!important}
  body.single-product .summary form.cart .quantity,
  body.single-product .summary form.cart .quantity input.qty{width:60px!important;min-width:60px!important;max-width:60px!important}
}

/* === V25 — dedicated vertical mobile drawer + corrected single-product gutters === */
@media (max-width:850px){
  /* Never render the parent desktop menu row on a small screen. */
  .lh-v25-header .lh-v25-desktop-nav > .lh-v25-desktop-menu-list,
  .lh-v25-header .lh-v25-desktop-menu-list{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
  .lh-v25-header .menu-toggle,.lh-v25-header .mobile-menu-toggle,.lh-v25-header .nav-toggle,.lh-v25-header .navbar-toggler,.lh-v25-header .hamburger,
  .lh-v25-header button[aria-controls="lh-v25-mobile-drawer"]{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:100005!important}

  .lh-v25-mobile-drawer{display:block!important;position:fixed!important;left:0!important;right:0!important;top:0!important;width:100%!important;max-width:100%!important;height:100dvh!important;padding:88px 18px 24px!important;margin:0!important;background:#fff!important;z-index:100000!important;overflow-y:auto!important;overflow-x:hidden!important;transform:translateX(100%)!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;transition:transform .22s ease,opacity .18s ease,visibility .18s ease!important;box-sizing:border-box!important}
  .lh-v25-mobile-drawer.is-open{transform:translateX(0)!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
  body.lh-v25-menu-open{overflow:hidden!important}
  body.lh-v25-menu-open .lh-v25-header{position:relative!important;z-index:100010!important}
  .lh-v25-mobile-list,.lh-v25-mobile-list ul{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:0!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;list-style:none!important;background:transparent!important}
  .lh-v25-mobile-list li{display:block!important;float:none!important;position:static!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid rgba(17,43,78,.12)!important;transform:none!important}
  .lh-v25-mobile-list li > a{display:flex!important;align-items:center!important;width:100%!important;min-height:50px!important;height:auto!important;margin:0!important;padding:13px 4px!important;box-sizing:border-box!important;white-space:normal!important;overflow:visible!important;text-align:left!important;line-height:1.25!important;transform:none!important}
  .lh-v25-mobile-list .sub-menu{position:static!important;inset:auto!important;display:flex!important;width:100%!important;box-shadow:none!important;padding:0 0 8px 16px!important;transform:none!important;visibility:visible!important;opacity:1!important}

  /* Product text must have a real, symmetric gutter; no inherited negative offsets. */
  body.single-product .woocommerce div.product .summary,
  body.single-product div.product .summary,
  body.single-product div.product > .summary{box-sizing:border-box!important;float:none!important;position:relative!important;left:auto!important;right:auto!important;transform:none!important;width:auto!important;max-width:none!important;margin-left:18px!important;margin-right:18px!important;padding-left:0!important;padding-right:0!important}
  body.single-product .summary form.cart{box-sizing:border-box!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;gap:10px!important;align-items:end!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}
  body.single-product .summary form.cart .quantity,
  body.single-product .summary form.cart .quantity input.qty{box-sizing:border-box!important;width:62px!important;min-width:62px!important;max-width:62px!important;height:42px!important;min-height:42px!important;margin:0!important}
  body.single-product .summary form.cart .single_add_to_cart_button{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0 10px!important;white-space:nowrap!important}
}
@media (max-width:479px){
  body.single-product .woocommerce div.product .summary,
  body.single-product div.product .summary,
  body.single-product div.product > .summary{margin-left:16px!important;margin-right:16px!important}
  body.single-product .summary form.cart{grid-template-columns:60px minmax(0,1fr)!important;gap:8px!important}
  body.single-product .summary form.cart .quantity,
  body.single-product .summary form.cart .quantity input.qty{width:60px!important;min-width:60px!important;max-width:60px!important}
  .lh-v25-mobile-drawer{padding-left:16px!important;padding-right:16px!important}
}
@media (min-width:851px){.lh-v25-mobile-drawer{display:none!important}.lh-v25-header .lh-v25-desktop-menu-list{visibility:visible!important}}

/* === V26 — rebuilt mobile hamburger navigation === */
.lh-v26-menu-button,.lh-v26-mobile-drawer,.lh-v26-menu-backdrop{display:none}
@media (max-width:850px){
  html,body{max-width:100%;overflow-x:hidden}
  .lh-v26-header{position:relative!important;z-index:10020!important}

  /* Parent desktop row and every previous hamburger are removed on mobile. */
  .lh-v26-header .lh-v26-desktop-nav,
  .lh-v26-header .lh-v26-desktop-menu,
  .lh-v26-header .lh-v26-old-toggle{display:none!important;visibility:hidden!important;pointer-events:none!important}

  .lh-v26-menu-button{
    display:flex!important;position:absolute!important;right:14px!important;top:50%!important;
    transform:translateY(-50%)!important;flex-direction:column!important;align-items:center!important;
    justify-content:center!important;gap:5px!important;width:42px!important;height:42px!important;
    min-width:42px!important;min-height:42px!important;margin:0!important;padding:0!important;
    border:0!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important;
    cursor:pointer!important;z-index:10031!important
  }
  .lh-v26-menu-button span{display:block!important;width:22px!important;height:2px!important;margin:0!important;padding:0!important;background:#112b4e!important;border-radius:2px!important;transition:transform .18s ease,opacity .18s ease!important}
  body.lh-v26-menu-open .lh-v26-menu-button span:nth-child(1){transform:translateY(7px) rotate(45deg)!important}
  body.lh-v26-menu-open .lh-v26-menu-button span:nth-child(2){opacity:0!important}
  body.lh-v26-menu-open .lh-v26-menu-button span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important}

  .lh-v26-menu-backdrop{display:block!important;position:fixed!important;inset:0!important;border:0!important;margin:0!important;padding:0!important;background:rgba(10,28,50,.32)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:10010!important;transition:opacity .18s ease,visibility .18s ease!important}
  .lh-v26-menu-backdrop.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}

  .lh-v26-mobile-drawer{
    display:block!important;position:fixed!important;left:0!important;right:0!important;top:0!important;
    width:100%!important;max-width:100%!important;height:auto!important;max-height:100dvh!important;
    margin:0!important;padding:82px 18px 22px!important;box-sizing:border-box!important;background:#fff!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    transform:translateY(-105%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    z-index:10025!important;transition:transform .22s ease,opacity .18s ease,visibility .18s ease!important
  }
  .lh-v26-mobile-drawer.is-open{transform:translateY(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  body.lh-v26-menu-open{overflow:hidden!important;touch-action:none!important}

  .lh-v26-mobile-list,.lh-v26-mobile-list ul{
    display:flex!important;position:static!important;float:none!important;flex-direction:column!important;flex-wrap:nowrap!important;
    align-items:stretch!important;justify-content:flex-start!important;gap:0!important;width:100%!important;max-width:100%!important;
    height:auto!important;margin:0!important;padding:0!important;list-style:none!important;background:transparent!important;
    box-shadow:none!important;transform:none!important;opacity:1!important;visibility:visible!important
  }
  .lh-v26-mobile-list li{
    display:block!important;position:static!important;float:none!important;clear:both!important;width:100%!important;max-width:100%!important;
    height:auto!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid rgba(17,43,78,.12)!important;
    background:transparent!important;transform:none!important
  }
  .lh-v26-mobile-list li > a{
    display:flex!important;position:static!important;align-items:center!important;width:100%!important;max-width:100%!important;
    min-height:50px!important;height:auto!important;margin:0!important;padding:13px 4px!important;box-sizing:border-box!important;
    color:#112b4e!important;background:transparent!important;text-align:left!important;text-decoration:none!important;
    font-size:15px!important;font-weight:700!important;line-height:1.3!important;white-space:normal!important;overflow-wrap:anywhere!important;
    transform:none!important
  }
  .lh-v26-mobile-list .sub-menu{padding-left:16px!important;border-top:1px solid rgba(17,43,78,.06)!important}
  .lh-v26-mobile-list .sub-menu li > a{min-height:44px!important;font-size:14px!important;font-weight:600!important;padding-top:10px!important;padding-bottom:10px!important}
}
@media (max-width:479px){
  .lh-v26-mobile-drawer{padding-left:16px!important;padding-right:16px!important}
  .lh-v26-menu-button{right:10px!important}
}
@media (min-width:851px){
  .lh-v26-menu-button,.lh-v26-mobile-drawer,.lh-v26-menu-backdrop{display:none!important}
  .lh-v26-header .lh-v26-desktop-nav,.lh-v26-header .lh-v26-desktop-menu{display:revert!important;visibility:visible!important;pointer-events:auto!important}
}

/* === V27 — clean mobile-only hamburger; zero desktop artifacts === */
.lh-v27-menu-button,.lh-v27-mobile-drawer,.lh-v27-menu-backdrop{display:none!important}
@media (max-width:850px){
  .lh-v27-header{position:relative!important;z-index:10020!important}
  .lh-v27-header .lh-v27-desktop-nav,.lh-v27-header .lh-v27-desktop-menu,.lh-v27-header .lh-v27-old-toggle{display:none!important;visibility:hidden!important;pointer-events:none!important}
  .lh-v27-menu-button{display:flex!important;position:absolute!important;right:14px!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;z-index:10031!important}
  .lh-v27-menu-button span{display:block!important;width:23px!important;height:2px!important;background:#112b4e!important;border-radius:2px!important;margin:0!important}
  body.lh-v27-menu-open .lh-v27-menu-button span:nth-child(1){transform:translateY(7px) rotate(45deg)!important} body.lh-v27-menu-open .lh-v27-menu-button span:nth-child(2){opacity:0!important} body.lh-v27-menu-open .lh-v27-menu-button span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important}
  .lh-v27-menu-backdrop{display:block!important;position:fixed!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;background:rgba(10,28,50,.35)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:10010!important}
  .lh-v27-menu-backdrop.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .lh-v27-mobile-drawer{display:block!important;position:fixed!important;top:0!important;right:0!important;left:auto!important;width:min(88vw,380px)!important;height:100dvh!important;margin:0!important;padding:82px 18px 24px!important;box-sizing:border-box!important;background:#fff!important;overflow-y:auto!important;overflow-x:hidden!important;transform:translateX(105%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:10025!important;transition:transform .22s ease,opacity .18s ease,visibility .18s ease!important}
  .lh-v27-mobile-drawer.is-open{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  body.lh-v27-menu-open{overflow:hidden!important}
  .lh-v27-mobile-list,.lh-v27-mobile-list ul{display:flex!important;position:static!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;width:100%!important;margin:0!important;padding:0!important;gap:0!important;list-style:none!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .lh-v27-mobile-list li{display:block!important;position:static!important;float:none!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid rgba(17,43,78,.12)!important}
  .lh-v27-mobile-list li>a{display:flex!important;align-items:center!important;width:100%!important;min-height:52px!important;margin:0!important;padding:13px 4px!important;box-sizing:border-box!important;color:#112b4e!important;text-decoration:none!important;font-size:15px!important;font-weight:700!important;line-height:1.3!important;white-space:normal!important}
  .lh-v27-mobile-list .sub-menu{padding-left:16px!important}
}
@media (min-width:851px){
  .lh-v27-menu-button,.lh-v27-mobile-drawer,.lh-v27-menu-backdrop{display:none!important;visibility:hidden!important;pointer-events:none!important}
}

/* === V28 — one hamburger only; vertical mobile drawer === */
.lh-v28-menu-button,.lh-v28-mobile-drawer,.lh-v28-menu-backdrop{display:none!important}
@media (max-width:850px){
 .lh-v28-desktop-nav,.lh-v28-desktop-menu{display:none!important;visibility:hidden!important;pointer-events:none!important}
 .lh-v28-extra-toggle{display:none!important;visibility:hidden!important;pointer-events:none!important}
 .lh-v28-menu-trigger{position:relative!important;z-index:10041!important}
 .lh-v28-menu-button{display:flex!important;position:absolute!important;right:18px!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;min-width:42px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important}
 .lh-v28-menu-button span{display:block!important;width:23px!important;height:2px!important;margin:0!important;background:#112b4e!important;border-radius:2px!important}
 .lh-v28-menu-backdrop{display:block!important;position:fixed!important;inset:0!important;border:0!important;background:rgba(10,28,50,.35)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:10020!important}
 .lh-v28-menu-backdrop.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
 .lh-v28-mobile-drawer{display:block!important;position:fixed!important;top:0!important;right:0!important;width:min(88vw,380px)!important;height:100dvh!important;padding:84px 20px 24px!important;box-sizing:border-box!important;background:#fff!important;overflow:auto!important;transform:translateX(105%)!important;visibility:hidden!important;pointer-events:none!important;z-index:10030!important;transition:transform .22s ease,visibility .22s ease!important}
 .lh-v28-mobile-drawer.is-open{transform:translateX(0)!important;visibility:visible!important;pointer-events:auto!important}
 body.lh-v28-menu-open{overflow:hidden!important}
 .lh-v28-mobile-list,.lh-v28-mobile-list ul{display:flex!important;position:static!important;flex-direction:column!important;flex-wrap:nowrap!important;width:100%!important;margin:0!important;padding:0!important;gap:0!important;list-style:none!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;transform:none!important}
 .lh-v28-mobile-list li{display:block!important;float:none!important;width:100%!important;margin:0!important;padding:0!important;border-bottom:1px solid rgba(17,43,78,.12)!important}
 .lh-v28-mobile-list li>a{display:flex!important;align-items:center!important;width:100%!important;min-height:52px!important;padding:13px 4px!important;box-sizing:border-box!important;color:#112b4e!important;text-decoration:none!important;font-size:15px!important;font-weight:700!important;line-height:1.3!important;white-space:normal!important}
 .lh-v28-mobile-list .sub-menu{padding-left:16px!important}
}
@media (min-width:851px){.lh-v28-menu-button,.lh-v28-mobile-drawer,.lh-v28-menu-backdrop{display:none!important}}
