/*
Theme Name: GAN Commerce 2.0 Elegant Partner Theme
Theme URI: https://gandigitalsolutions.com/
Author: Gan Digital Solutions
Description: Minimalist partner theme for GAN Commerce 2.0.
Version: 1.1.7
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: gan-commerce-elegant
*/
:root{--gce2-black:#111;--gce2-white:#fff;--gce2-border:#e8e8e8;--gce2-muted:#666}
html,body{margin:0!important;padding:0!important;background:#fff;color:var(--gce2-black)}
*,*:before,*:after{box-sizing:border-box}
body.gce2-body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}
.gce2-site{min-height:100vh;display:flex;flex-direction:column;margin:0!important;padding:0!important}
.gce2-header{display:block!important;position:relative!important;top:auto!important;left:auto!important;width:100%!important;height:70px!important;min-height:70px!important;margin:0!important;padding:8px 0!important;background:transparent!important;border:0!important;z-index:9999!important}
.gce2-header-bar{height:54px;max-width:1240px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:44px 1fr 180px;align-items:center;gap:12px;background:#111!important;color:#fff!important;border-radius:28px!important;box-shadow:0 5px 18px rgba(0,0,0,.08)!important}
.gce2-logo{min-width:0;display:flex;align-items:center;justify-content:center;height:100%;grid-column:2}
.gce2-logo-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;max-width:220px;height:100%;text-decoration:none!important;color:#fff!important}
.gce2-logo-image{display:block!important;width:auto!important;max-width:170px!important;max-height:34px!important;height:auto!important;object-fit:contain!important;filter:none!important}
.gce2-logo-text{font-size:16px;font-weight:600;white-space:nowrap;color:#fff!important}
.gce2-nav{display:none!important}
.gce2-menu{display:flex!important;align-items:center!important;justify-content:center!important;gap:22px!important;list-style:none!important;margin:0!important;padding:0!important}
.gce2-menu li{list-style:none!important;margin:0!important;padding:0!important}
.gce2-menu a{display:block!important;color:#fff!important;text-decoration:none!important;font-size:13px!important;font-weight:500!important;line-height:1!important;padding:8px 0!important;white-space:nowrap!important}
.gce2-menu a:hover{opacity:.7}
.gce2-action{display:none!important}
.gce2-tools{grid-column:3;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;height:100%!important}
.gce2-tool{width:32px!important;height:32px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;text-decoration:none!important;border-radius:50%!important}
.gce2-tool:hover{background:rgba(255,255,255,.12)!important}
.gce2-tool svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.gce2-mobile-toggle{display:flex!important;grid-column:1;border:0!important;background:transparent!important;color:#fff!important;padding:6px!important;width:34px!important;height:34px!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:4px!important;cursor:pointer!important}
.gce2-mobile-toggle span{display:block;width:20px;height:2px;background:#fff;border-radius:2px}
.gce2-mobile-panel{display:none}
.gce2-main{flex:1;width:100%!important;margin:0!important;padding:0!important}
.gce2-main>*:first-child{margin-top:0!important}
.gce2-footer{height:42px!important;min-height:42px!important;margin:0!important;padding:0 12px!important;border-top:1px solid var(--gce2-border)!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important}
.gce2-footer-copy{margin:0!important;padding:0!important;font-size:10px!important;line-height:1.2!important;color:var(--gce2-muted)!important;text-align:center!important}
/* Remove common theme/builder top gaps without hiding the partner header. */
.gce2-body .site,.gce2-body .site-content,.gce2-body .content-area,.gce2-body .page-content,.gce2-body .entry-content{margin-top:0!important;padding-top:0!important}
.gce2-body .elementor,.gce2-body .elementor-page,.gce2-body .elementor-section-wrap{margin-top:0!important;padding-top:0!important}
@media(max-width:1024px){
 .gce2-header{height:66px!important;min-height:66px!important;padding:7px 0!important}
 .gce2-header-bar{height:52px;max-width:calc(100% - 24px);padding:0 12px;border-radius:27px!important;grid-template-columns:40px 1fr 112px;gap:6px}
 .gce2-tools{gap:4px!important}
 .gce2-tool{width:30px!important;height:30px!important}
 .gce2-tool svg{width:20px!important;height:20px!important}
 .gce2-logo-image{max-width:145px!important;max-height:30px!important}
}
@media(max-width:800px){
 .gce2-header{height:62px!important;min-height:62px!important;padding:6px 0!important}
 .gce2-header-bar{height:50px;max-width:calc(100% - 20px);padding:0 10px;border-radius:26px!important;grid-template-columns:38px 1fr 104px;gap:4px}
 .gce2-logo-image{max-width:132px!important;max-height:28px!important}
 .gce2-logo-text{font-size:15px!important}
 .gce2-tools{gap:2px!important}
 .gce2-tool{width:30px!important;height:30px!important}
 .gce2-tool svg{width:19px!important;height:19px!important}
 .gce2-mobile-panel{position:absolute;top:58px;left:10px;right:10px;background:#111;color:#fff;border-radius:14px;border:1px solid #2b2b2b;box-shadow:0 12px 28px rgba(0,0,0,.16);padding:8px 14px;z-index:10000}
 .gce2-mobile-panel.is-open{display:block!important}
 .gce2-mobile-menu{display:flex!important;flex-direction:column!important;list-style:none!important;margin:0!important;padding:0!important}
 .gce2-mobile-menu li{list-style:none!important;margin:0!important}
 .gce2-mobile-menu a{display:block!important;padding:11px 2px!important;border-bottom:1px solid #2b2b2b!important;color:#fff!important;text-decoration:none!important;font-size:13px!important}
 .gce2-footer{height:38px!important;min-height:38px!important}
 .gce2-footer-copy{font-size:9px!important}
}


/* v1.1.2: desktop header matches the full-width emerald business header reference. */
@media (min-width:1025px){
  .gce2-header{
    height:78px!important;min-height:78px!important;width:100%!important;
    padding:0!important;background:#063d32!important;border-bottom:1px solid #c8a45d!important;
    box-shadow:0 4px 18px rgba(0,0,0,.08)!important;
  }
  .gce2-header-bar{
    width:100%!important;max-width:none!important;height:77px!important;margin:0!important;
    padding:0 clamp(28px,5.5vw,84px)!important;display:grid!important;
    grid-template-columns:minmax(240px,1fr) auto auto!important;gap:30px!important;
    border-radius:0!important;background:#063d32!important;color:#fff!important;
    box-shadow:none!important;
  }
  .gce2-mobile-toggle{display:none!important}
  .gce2-logo{grid-column:1!important;justify-content:flex-start!important;min-width:0!important}
  .gce2-logo-link{justify-content:flex-start!important;max-width:100%!important;color:#fff!important}
  .gce2-logo-image{max-width:210px!important;max-height:46px!important}
  .gce2-logo-text{font-size:18px!important;font-weight:700!important;color:#fff!important}
  .gce2-nav{display:block!important;grid-column:2!important;min-width:0!important}
  .gce2-menu{justify-content:flex-end!important;gap:clamp(16px,2vw,30px)!important;flex-wrap:nowrap!important}
  .gce2-menu a{color:#fff!important;font-size:13px!important;font-weight:600!important;padding:12px 0!important}
  .gce2-menu a:hover,.gce2-menu .current-menu-item>a{color:#e3c27b!important;opacity:1!important}
  .gce2-tools{grid-column:3!important;justify-content:flex-end!important;gap:8px!important}
  .gce2-tool{color:#f4dfae!important;width:32px!important;height:32px!important}
  .gce2-tool:hover{background:rgba(255,255,255,.1)!important}
  .gce2-mobile-panel{display:none!important}
}

/* v1.0.4: clean homepage frame with modest side spacing. */
body.home .gce2-main{
  width:calc(100% - 28px)!important;
  max-width:1400px!important;
  margin:0 auto!important;
  padding:0!important;
  border:1px solid var(--gce2-border)!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:#fff!important;
}
body.home .gce2-main>*:first-child{margin-top:0!important;padding-top:0!important}
@media(max-width:800px){
  body.home .gce2-main{width:calc(100% - 20px)!important;border-radius:10px!important}
}

/* Header product search modal with live product suggestions */
.gce2-tool.gce2-search-trigger{border:0;background:transparent;padding:0;cursor:pointer;font:inherit}
.gce2-search-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:flex-start;justify-content:center;padding:9vh 16px 24px;box-sizing:border-box}
.gce2-search-modal.is-open{display:flex}
.gce2-search-backdrop{position:absolute;inset:0;background:rgba(8,10,14,.66);backdrop-filter:blur(3px)}
.gce2-search-dialog{position:relative;width:min(620px,100%);max-height:82vh;overflow:auto;background:#fff;color:#111;border-radius:22px;padding:22px;box-shadow:0 24px 80px rgba(0,0,0,.28);box-sizing:border-box}
.gce2-search-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px}
.gce2-search-heading h2{font-size:22px;line-height:1.25;margin:0;color:#111}
.gce2-search-close{border:0;background:#f2f3f5;color:#111;width:40px;height:40px;border-radius:50%;font-size:28px;line-height:1;cursor:pointer}
.gce2-search-field{display:flex;align-items:center;gap:12px;border:1px solid #d9dce1;border-radius:14px;padding:0 15px;height:54px;background:#fff;box-sizing:border-box}
.gce2-search-field:focus-within{border-color:#111;box-shadow:0 0 0 3px rgba(17,17,17,.08)}
.gce2-search-field svg{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:#6b7280;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gce2-search-field input{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#111!important;width:100%;min-width:0;height:100%;padding:0!important;font-size:16px!important}
.gce2-search-results{margin-top:14px}
.gce2-search-hint,.gce2-search-empty{margin:0;padding:18px 8px;text-align:center;color:#6b7280;font-size:14px}
.gce2-search-list{display:flex;flex-direction:column;gap:4px}
.gce2-search-result{display:flex;align-items:center;gap:13px;padding:10px 7px;border-radius:13px;text-decoration:none!important;color:#111!important;min-width:0}
.gce2-search-result:hover,.gce2-search-result:focus{background:#f5f6f7;outline:none}
.gce2-search-result img,.gce2-search-image-placeholder{display:block;width:58px;height:58px;flex:0 0 58px;object-fit:cover;border-radius:10px;background:#f0f1f2}
.gce2-search-result-info{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.gce2-search-result-title{font-size:15px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.gce2-search-result-price{font-size:14px;color:#686868}
.gce2-search-result-arrow{font-size:28px;line-height:1;color:#888;padding:0 7px}
body.gce2-search-open{overflow:hidden}
@media(max-width:480px){.gce2-search-modal{padding:5vh 10px 14px}.gce2-search-dialog{padding:17px;border-radius:18px;max-height:88vh}.gce2-search-heading h2{font-size:20px}.gce2-search-result img,.gce2-search-image-placeholder{width:52px;height:52px;flex-basis:52px}}


/* v1.1.1: isolated, responsive, premium live-search dialog */
html body .gce2-search-modal{
  position:fixed!important; inset:0!important; z-index:2147483000!important;
  display:none; align-items:flex-start!important; justify-content:center!important;
  width:100vw!important; max-width:100vw!important; height:100dvh!important;
  margin:0!important; padding:clamp(18px,5vh,48px) 14px max(18px,env(safe-area-inset-bottom))!important;
  overflow-y:auto!important; overflow-x:hidden!important; box-sizing:border-box!important;
  isolation:isolate;
}
html body .gce2-search-modal.is-open{display:flex!important}
html body .gce2-search-modal .gce2-search-backdrop{
  position:fixed!important; inset:0!important; width:100%!important; height:100%!important;
  background:rgba(10,13,18,.72)!important; backdrop-filter:blur(7px)!important;
}
html body .gce2-search-modal .gce2-search-dialog{
  position:relative!important; inset:auto!important; float:none!important;
  display:block!important; flex:0 1 560px!important;
  width:100%!important; min-width:0!important; max-width:560px!important;
  height:auto!important; max-height:calc(100dvh - 36px)!important;
  margin:0 auto!important; padding:clamp(18px,4vw,28px)!important;
  overflow-x:hidden!important; overflow-y:auto!important;
  box-sizing:border-box!important; border:1px solid rgba(201,170,95,.42)!important;
  border-radius:24px!important; background:#fffdf9!important; color:#171717!important;
  box-shadow:0 28px 90px rgba(0,0,0,.34)!important;
}
html body .gce2-search-modal .gce2-search-heading{
  display:flex!important; align-items:center!important; justify-content:space-between!important;
  width:100%!important; min-width:0!important; gap:14px!important; margin:0 0 20px!important;
  padding:0!important; box-sizing:border-box!important;
}
html body .gce2-search-modal .gce2-search-heading h2{
  display:block!important; flex:1 1 auto!important; min-width:0!important;
  margin:0!important; padding:0!important; font-size:clamp(21px,5vw,27px)!important;
  line-height:1.25!important; font-weight:600!important; letter-spacing:-.025em!important;
  color:#171717!important; overflow-wrap:anywhere!important;
}
html body .gce2-search-modal .gce2-search-close{
  display:flex!important; align-items:center!important; justify-content:center!important;
  flex:0 0 42px!important; width:42px!important; min-width:42px!important; height:42px!important;
  margin:0!important; padding:0!important; border:1px solid #ece7dc!important;
  border-radius:50%!important; background:#f7f3eb!important; color:#171717!important;
  font-size:27px!important; line-height:1!important; box-shadow:none!important;
}
html body .gce2-search-modal .gce2-search-field{
  display:flex!important; align-items:center!important; width:100%!important; min-width:0!important;
  height:58px!important; margin:0!important; padding:0 16px!important; gap:12px!important;
  border:1px solid #dedbd4!important; border-radius:16px!important; background:#fff!important;
  box-sizing:border-box!important; box-shadow:0 3px 12px rgba(20,20,20,.035)!important;
}
html body .gce2-search-modal .gce2-search-field:focus-within{
  border-color:#b99a52!important; box-shadow:0 0 0 4px rgba(185,154,82,.14)!important;
}
html body .gce2-search-modal .gce2-search-field input{
  display:block!important; flex:1 1 auto!important; min-width:0!important; max-width:100%!important;
  width:100%!important; height:100%!important; margin:0!important; padding:0!important;
  border:0!important; border-radius:0!important; outline:0!important; box-shadow:none!important;
  background:transparent!important; color:#171717!important; font-size:16px!important;
  line-height:1.4!important; appearance:none!important; -webkit-appearance:none!important;
}
html body .gce2-search-modal .gce2-search-results{
  display:block!important; width:100%!important; min-width:0!important;
  margin:14px 0 0!important; padding:0!important; box-sizing:border-box!important;
}
html body .gce2-search-modal .gce2-search-hint,
html body .gce2-search-modal .gce2-search-empty{
  margin:0!important; padding:22px 10px!important; text-align:center!important;
  color:#77736b!important; font-size:14px!important; line-height:1.6!important;
}
html body .gce2-search-modal .gce2-search-list{display:flex!important; flex-direction:column!important; gap:6px!important; width:100%!important}
html body .gce2-search-modal .gce2-search-result{
  display:flex!important; align-items:center!important; gap:13px!important; width:100%!important;
  min-width:0!important; margin:0!important; padding:12px!important; box-sizing:border-box!important;
  border:1px solid transparent!important; border-radius:15px!important;
  color:#171717!important; text-decoration:none!important; background:transparent!important;
}
html body .gce2-search-modal .gce2-search-result:hover,
html body .gce2-search-modal .gce2-search-result:focus-visible{
  border-color:#eee5d2!important; background:#faf6ed!important; outline:none!important;
}
html body .gce2-search-modal .gce2-search-result img,
html body .gce2-search-modal .gce2-search-image-placeholder{
  display:block!important; flex:0 0 60px!important; width:60px!important; height:60px!important;
  max-width:60px!important; margin:0!important; border-radius:12px!important; object-fit:cover!important;
}
html body .gce2-search-modal .gce2-search-result-info{display:flex!important; flex:1 1 auto!important; min-width:0!important; gap:5px!important}
html body .gce2-search-modal .gce2-search-result-title{font-size:15px!important; font-weight:600!important; line-height:1.4!important; overflow-wrap:anywhere!important}
html body .gce2-search-modal .gce2-search-result-price{font-size:14px!important; color:#6c6a64!important}
html body.gce2-search-open{overflow:hidden!important}
@media(max-width:480px){
  html body .gce2-search-modal{padding:18px 12px max(18px,env(safe-area-inset-bottom))!important}
  html body .gce2-search-modal .gce2-search-dialog{flex-basis:auto!important; width:100%!important; max-width:100%!important; padding:19px 16px!important; border-radius:21px!important; max-height:calc(100dvh - 36px)!important}
  html body .gce2-search-modal .gce2-search-heading{gap:10px!important; margin-bottom:16px!important}
  html body .gce2-search-modal .gce2-search-heading h2{font-size:22px!important}
  html body .gce2-search-modal .gce2-search-field{height:54px!important; padding:0 13px!important}
  html body .gce2-search-modal .gce2-search-result img,
  html body .gce2-search-modal .gce2-search-image-placeholder{flex-basis:52px!important; width:52px!important; height:52px!important; max-width:52px!important}
}

/* v1.1.3: live cart count badge in the header. */
.gce2-cart-link{position:relative!important;overflow:visible!important}
.gce2-cart-count{position:absolute!important;top:-5px!important;right:-5px!important;min-width:17px!important;height:17px!important;padding:0 4px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;background:#c8a45d!important;color:#111!important;font-size:10px!important;font-weight:800!important;line-height:1!important;border:1.5px solid #063d32!important;box-shadow:0 2px 5px rgba(0,0,0,.15)!important;z-index:2!important}
.gce2-cart-count[hidden]{display:none!important}
@media(max-width:1024px){.gce2-cart-count{border-color:#111!important}}


/* v1.1.5: desktop checkout now follows the clean, mobile-first single-column layout. */
@media (min-width: 768px) {
  /* Elementor and page-builder wrappers should not squeeze the checkout into a narrow column. */
  body:has(.gsc-premium-checkout) .gce2-main,
  body:has(.gsc-premium-checkout) .gan-content,
  body:has(.gsc-premium-checkout) .entry-content,
  body:has(.gsc-premium-checkout) .elementor-section:has(.gsc-premium-checkout) > .elementor-container,
  body:has(.gsc-premium-checkout) .elementor-container:has(.gsc-premium-checkout),
  body:has(.gsc-premium-checkout) .elementor-column:has(.gsc-premium-checkout),
  body:has(.gsc-premium-checkout) .elementor-widget-wrap:has(.gsc-premium-checkout),
  body:has(.gsc-premium-checkout) .elementor-widget:has(.gsc-premium-checkout),
  body:has(.gsc-premium-checkout) .elementor-widget-container:has(.gsc-premium-checkout) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  body:has(.gsc-premium-checkout) .elementor-column:has(.gsc-premium-checkout) {
    flex: 0 0 100% !important;
  }

  /* A centered mobile-style checkout column for desktop and laptop screens. */
  body:has(.gsc-premium-checkout) .gsc-premium-checkout {
    display: block !important;
    width: 100% !important;
    max-width: 720px !important;
    margin: 0 auto !important;
    padding: 18px 14px 48px !important;
    box-sizing: border-box !important;
  }
  body:has(.gsc-premium-checkout) .gsc-checkout-header {
    padding: 4px 4px 16px !important;
    margin: 0 !important;
  }
  body:has(.gsc-premium-checkout) .gsc-checkout-header h1 {
    font-size: clamp(28px, 3vw, 36px) !important;
    line-height: 1.12 !important;
    margin: 0 0 7px !important;
  }
  body:has(.gsc-premium-checkout) .gsc-checkout-layout {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    gap: 13px !important;
  }
  body:has(.gsc-premium-checkout) .gsc-checkout-card,
  body:has(.gsc-premium-checkout) .gsc-order-summary,
  body:has(.gsc-premium-checkout) .gsc-place-order {
    display: block !important;
    order: initial !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    float: none !important;
    grid-column: auto !important;
    box-sizing: border-box !important;
  }
  body:has(.gsc-premium-checkout) .gsc-order-card { order: 1 !important; }
  body:has(.gsc-premium-checkout) .gsc-checkout-card:nth-of-type(2) { order: 2 !important; }
  body:has(.gsc-premium-checkout) .gsc-checkout-card:nth-of-type(3) { order: 3 !important; }
  body:has(.gsc-premium-checkout) .gsc-order-summary { order: 4 !important; position: static !important; }
  body:has(.gsc-premium-checkout) .gsc-place-order { order: 5 !important; }
  body:has(.gsc-premium-checkout) .gsc-checkout-fields,
  body:has(.gsc-premium-checkout) .gsc-reservation-fields {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }
  body:has(.gsc-premium-checkout) .gsc-field-full,
  body:has(.gsc-premium-checkout) .gsc-reservation-fields p {
    grid-column: auto !important;
  }
  body:has(.gsc-premium-checkout) .gsc-order-type {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
  }
  body:has(.gsc-premium-checkout) .gsc-order-type-option {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    min-height: 50px !important;
    padding: 11px 7px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
  }
  body:has(.gsc-premium-checkout) .gsc-co-item {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px 12px !important;
    min-width: 0 !important;
  }
  body:has(.gsc-premium-checkout) .gsc-co-item-product {
    flex: 1 1 250px !important;
    min-width: 0 !important;
  }
  body:has(.gsc-premium-checkout) .gsc-co-item-product strong {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  body:has(.gsc-premium-checkout) .gsc-co-item > span:not(.gsc-co-item-product),
  body:has(.gsc-premium-checkout) .gsc-co-item > b {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }
  body:has(.gsc-premium-checkout) .gsc-checkout-card {
    padding: 18px !important;
    border-radius: 18px !important;
  }
  body:has(.gsc-premium-checkout) .gsc-order-summary > div {
    gap: 14px !important;
    flex-wrap: wrap !important;
  }
  body:has(.gsc-premium-checkout) .gsc-place-order {
    min-height: 54px !important;
  }
}


/* v1.1.6: keep conditional checkout fields hidden unless their order type is selected.
   The desktop mobile-style layout uses display:grid!important; that previously overrode
   the browser's native [hidden] behavior. These specific rules intentionally win. */
html body .gsc-premium-checkout .gsc-reservation-fields[hidden],
html body .gsc-premium-checkout .gsc-delivery-fields[hidden],
html body .gsc-premium-checkout [hidden].gsc-reservation-fields,
html body .gsc-premium-checkout [hidden].gsc-delivery-fields {
  display: none !important;
  visibility: hidden !important;
}
html body .gsc-premium-checkout .gsc-reservation-fields:not([hidden]) {
  display: grid !important;
  visibility: visible !important;
}
html body .gsc-premium-checkout .gsc-delivery-fields:not([hidden]) {
  display: grid !important;
  visibility: visible !important;
}


/* v1.1.7: elegant full-width homepage View More products action */
.gce2-view-more-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: clamp(24px, 4vw, 48px) 18px clamp(34px, 5vw, 58px);
  clear: both;
}
.gce2-view-more-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: min(100%, 520px);
  min-height: 54px;
  padding: 15px 28px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #111;
  color: #fff !important;
  font-size: 15px;
  font-weight: 650;
  letter-spacing: .02em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
  box-shadow: 0 8px 22px rgba(17,17,17,.12);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.gce2-view-more-button:hover,
.gce2-view-more-button:focus-visible {
  background: #174c3c;
  border-color: #174c3c;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(17,17,17,.16);
}
.gce2-view-more-button span { font-size: 20px; line-height: 1; }
@media (max-width: 767px) {
  .gce2-view-more-wrap { padding: 24px 16px 38px; }
  .gce2-view-more-button { width: 100%; min-height: 52px; }
}
