:root{
  --g1e-bg:#FFFFFF;          /* Pure White */
  --g1e-bg-alt:#F9F9F9;      /* Light Mist Gray */
  --g1e-fg:#222222;          /* Midnight Charcoal */
  --g1e-muted:#666666;       /* Soft Gray Text */
  --g1e-accent:#FFD400;      /* Euro Yellow */
  --g1e-accent-2:#0099FF;    /* Sky Blue */
  --g1e-border:#E0E0E0;      /* Border Gray */
  --g1e-shadow:0 8px 24px rgba(0,0,0,.08);
  --g1e-radius:12px;
  --g1e-gradient: linear-gradient(135deg,var(--g1e-accent),var(--g1e-accent-2));
  --g1e-success:#2ECC71;     /* Mint Green */
  --g1e-danger:#FF4D4D;      /* Coral Red */
}

/* Brand typography */
html{ font-size:16px; }
body,button,input,select,textarea{ font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif; color:var(--g1e-fg); background:var(--g1e-bg-alt); }
h1,h2,h3,h4,h5,h6,.site-title,.woocommerce .price{ font-family:"Outfit", "Poppins", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; }
.woocommerce .price{ font-variant-numeric: tabular-nums; }
a{ color:var(--g1e-accent-2); }
a:hover{ color:#0275d8; }

/* Icon base */
.g1e-icon{ width:1em; height:1em; display:inline-block; vertical-align:middle; }

/* Grid: tight product cards */
.woocommerce ul.products{
  display:grid;
  grid-template-columns:repeat(var(--g1e-cols, 2), minmax(0,1fr));
  gap:16px;
  padding:0;
  margin:0;
  list-style:none;
}
@media (min-width:640px){ 
  .woocommerce ul.products{ 
    grid-template-columns:repeat(var(--g1e-cols, 3), minmax(0,1fr)); 
    gap:20px;
  } 
}
@media (min-width:1024px){ 
  .woocommerce ul.products{ 
    grid-template-columns:repeat(var(--g1e-cols, 4), minmax(0,1fr)); 
    gap:24px;
  } 
}

.woocommerce ul.products li.product{
  border:1px solid var(--g1e-border);
  border-radius:var(--g1e-radius);
  overflow:hidden; 
  background:var(--g1e-bg);
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
  display:flex;
  flex-direction:column;
}
.woocommerce ul.products li.product:hover{ 
  transform:translateY(-4px); 
  box-shadow:0 12px 32px rgba(0,0,0,.12);
  border-color:var(--g1e-accent);
}

/* Enhanced Product Cards */
.g1e-card__wrapper{ position:relative; display:flex; flex-direction:column; height:100%; }
.g1e-card__thumb{ 
  display:block; 
  aspect-ratio:1/1; 
  background:linear-gradient(135deg, #f7f7f7 0%, #f0f0f0 100%); 
  overflow:hidden; 
  position:relative;
  border-radius:var(--g1e-radius) var(--g1e-radius) 0 0;
}
.g1e-card__image{ 
  width:100%; 
  height:100%; 
  object-fit:cover; 
  display:block; 
  transition:transform .4s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  z-index:1;
}
.g1e-card__thumb:hover .g1e-card__image{ 
  transform:scale(1.05);
}
.g1e-card__overlay{ 
  position:absolute; 
  inset:0; 
  background:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.02) 100%);
  opacity:1;
  transition:opacity .3s ease;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  padding:12px;
  pointer-events:none;
  z-index:10;
}
.g1e-card__controls{ 
  position:absolute; 
  top:8px; 
  right:8px; 
  display:flex; 
  gap:6px; 
  z-index:20;
  transform:translateY(0);
  opacity:1;
  transition:transform .2s ease, opacity .2s ease;
  pointer-events:auto;
  visibility:visible;
}
.g1e-card:hover .g1e-card__controls{ 
  transform:scale(1.05);
}
.g1e-card__fav, .g1e-card__qv{ 
  width:36px; 
  height:36px; 
  display:inline-flex; 
  align-items:center; 
  justify-content:center; 
  border-radius:50%; 
  border:1px solid rgba(0,0,0,0.1); 
  background:#fff; 
  backdrop-filter:blur(8px);
  cursor:pointer; 
  font-size:0;
  line-height:1;
  padding:0;
  margin:0;
  transition:all .2s ease;
  box-shadow:0 2px 8px rgba(0,0,0,0.15);
  flex-shrink:0;
}
.g1e-card__fav:hover, .g1e-card__qv:hover{ 
  background:#fff;
  transform:scale(1.1);
  box-shadow:0 4px 12px rgba(0,0,0,0.2);
  border-color:rgba(0,0,0,0.15);
}
.g1e-card__fav svg, .g1e-card__qv svg{ 
  display:block; 
  width:18px; 
  height:18px; 
  flex-shrink:0;
}
.g1e-card__fav.is-on{ 
  background:var(--g1e-accent); 
  border-color:transparent;
  box-shadow:0 2px 8px rgba(255,212,0,0.3);
}
.g1e-card__fav.is-on:hover{ 
  background:var(--g1e-accent);
}
.g1e-card__fav.is-on .g1e-icon--heart{ 
  display:none;
}
.g1e-card__fav.is-on .g1e-icon--heart-filled{ 
  display:block;
}
.g1e-card__fav:not(.is-on) .g1e-icon--heart-filled{ 
  display:none;
}
.g1e-card__sale-badge{ 
  position:absolute; 
  top:12px; 
  left:12px; 
  background:var(--g1e-accent); 
  color:var(--g1e-fg); 
  padding:.35rem .65rem; 
  border-radius:6px; 
  font-size:11px; 
  font-weight:700; 
  text-transform:uppercase; 
  letter-spacing:0.5px;
  box-shadow:0 2px 8px rgba(255,212,0,0.3);
  z-index:2;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title{
  margin:8px 0 4px;
  font-size:clamp(14px,2.6vw,16px);
  line-height:1.25;
  display:-webkit-box; 
  -webkit-line-clamp:2; 
  line-clamp:2;
  -webkit-box-orient:vertical; 
  overflow:hidden;
  min-height:2.5em;
}
.g1e-card__body{ 
  padding:12px 14px 14px; 
  display:flex; 
  flex-direction:column; 
  flex-grow:1;
  background:var(--g1e-bg);
}
.g1e-card__title-link{ 
  text-decoration:none; 
  color:inherit;
  margin-bottom:6px;
}
.g1e-card__title-link:hover{ 
  color:var(--g1e-accent-2);
}
.woocommerce ul.products li.product .price{ 
  font-weight:700; 
  color:var(--g1e-fg); 
  margin-bottom:8px; 
  display:block; 
  font-size:clamp(16px, 2vw, 18px);
}
.g1e-card__rating{ 
  display:flex; 
  align-items:center; 
  gap:6px; 
  margin-bottom:10px;
  font-size:13px;
}
.g1e-card__rating .star-rating{ 
  margin:0;
}
.g1e-card__rating-count{ 
  color:var(--g1e-muted); 
  font-size:12px;
}
.g1e-card__actions{ 
  margin-top:auto; 
  padding-top:8px;
}
.g1e-card__actions .button{ 
  font-size:13px; 
  padding:.6rem 1rem; 
  border-radius:8px; 
  width:100%;
  transition:all .2s ease;
}
.g1e-card__actions .button:hover{ 
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(255,212,0,0.3);
}

/* Chips row - Enhanced */
.g1e-top-row{ 
  display:flex; 
  align-items:center; 
  justify-content:flex-start; 
  gap:24px; 
  margin:0 0 32px;
  flex-wrap:wrap;
  background:#fff;
  border:none;
  border-radius:16px;
  padding:20px 24px;
  box-shadow:0 2px 12px rgba(0,0,0,0.08), 0 1px 4px rgba(0,0,0,0.04);
  position:sticky; 
  top:64px; 
  z-index:10; 
  backdrop-filter:blur(20px);
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
  border-top:3px solid var(--g1e-accent);
}
.g1e-top-row:hover{ 
  box-shadow:0 4px 20px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.08);
  transform:translateY(-1px);
}
.g1e-chips{ 
  display:flex; 
  flex-wrap:wrap; 
  gap:12px; 
  align-items:center;
  flex-shrink:0;
  min-width:0;
}
.g1e-chip{
  padding:.55rem 1.1rem; 
  font-size:13px; 
  font-weight:600;
  border:2px solid rgba(0,0,0,0.08); 
  border-radius:999px; 
  background:#fff; 
  color:#111;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
  box-shadow:0 2px 4px rgba(0,0,0,0.04);
  white-space:nowrap;
  line-height:1.4;
  vertical-align:middle;
  height:auto;
}
.g1e-chip__icon{
  font-size:16px;
  font-weight:700;
  opacity:0.6;
  line-height:1;
  display:inline-flex;
  align-items:center;
  margin-right:2px;
}
.g1e-chip__prefix{
  font-size:11px;
  font-weight:500;
  opacity:0.7;
  text-transform:uppercase;
  letter-spacing:0.3px;
  line-height:1.4;
  display:inline-block;
}
.g1e-chip__price{
  font-weight:700;
  font-size:14px;
  margin-left:2px;
  line-height:1.4;
  display:inline-block;
}
.g1e-chip.is-active .g1e-chip__icon{
  opacity:1;
  font-size:18px;
  font-weight:800;
}
.g1e-chip.is-active .g1e-chip__prefix{
  opacity:0.9;
  font-weight:600;
}
.g1e-chip.is-active .g1e-chip__price{
  font-size:15px;
  font-weight:800;
}
.g1e-chip::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, var(--g1e-accent) 0%, var(--g1e-accent-2) 100%);
  opacity:0;
  transition:opacity .25s ease;
  border-radius:999px;
}
.g1e-chip > *{
  position:relative;
  z-index:1;
}
.g1e-chip:hover{ 
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(0,0,0,0.12);
  border-color:var(--g1e-accent);
  background:#fff;
}
.g1e-chip.is-active{ 
  background:linear-gradient(135deg, var(--g1e-accent) 0%, rgba(255,212,0,0.9) 100%);
  color:#111; 
  border-color:transparent;
  box-shadow:0 4px 16px rgba(255,212,0,0.35), 0 2px 8px rgba(255,212,0,0.2);
  font-weight:700;
  transform:scale(1.05);
}
.g1e-chip.is-active::before{
  opacity:0;
}
.g1e-chip.is-active:hover{
  transform:scale(1.08) translateY(-2px);
  box-shadow:0 6px 20px rgba(255,212,0,0.4), 0 3px 10px rgba(255,212,0,0.25);
}
/* Shop wrapper */
.g1e-shop-wrapper{ 
  min-height:60vh;
  padding:20px 0 40px;
  position:relative;
}
/* Ensure shop content adjusts when categories sidebar is pinned */
body.g1e-cats-pinned .g1e-shop-wrapper{
  margin-left:0;
}
body.g1e-cats-pinned .g1e-container{
  max-width:100%;
  padding-left:20px;
  padding-right:20px;
}
@media (min-width:1024px){
  body.g1e-cats-pinned .g1e-container{
    padding-left:24px;
    padding-right:24px;
  }
}

/* Archive/shop header alignment */
.g1e-products-header{ 
  padding:16px 0 20px; 
  margin:0 0 24px; 
  text-align:center;
  border-bottom:2px solid var(--g1e-border);
}
.g1e-products-header .page-title{ 
  margin:0 0 8px; 
  font-size:clamp(28px, 5vw, 40px);
  font-weight:700;
  color:var(--g1e-fg);
  font-family:"Outfit", sans-serif;
}
.g1e-top-actions{ 
  margin-left:0;
  flex-shrink:0;
  display:flex;
  align-items:center;
  gap:0;
}
.g1e-results-sort-wrapper{
  display:flex;
  align-items:center;
  gap:0;
  background:rgba(0,0,0,0.02);
  border:1px solid rgba(0,0,0,0.06);
  border-radius:10px;
  padding:0;
  box-shadow:inset 0 1px 2px rgba(0,0,0,0.02);
  overflow:hidden;
  transition:all .2s ease;
}
.g1e-results-sort-wrapper:hover{
  border-color:rgba(0,0,0,0.1);
  box-shadow:inset 0 1px 2px rgba(0,0,0,0.04), 0 2px 4px rgba(0,0,0,0.04);
}
.g1e-results{ 
  font-size:13px; 
  color:var(--g1e-fg);
  font-weight:600;
  padding:.7rem 1.4rem;
  background:transparent;
  display:flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
}
.g1e-results p{
  margin:0;
  display:inline;
  font-size:13px;
}
.g1e-results::before{
  content:'';
  width:18px;
  height:18px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23111' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3h18v18H3z'/%3E%3Cpath d='M3 9h18M9 3v18'/%3E%3C/svg%3E") no-repeat center;
  background-size:18px;
  opacity:0.6;
  flex-shrink:0;
}
.g1e-divider{
  width:1px;
  height:32px;
  background:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.15) 20%, rgba(0,0,0,0.15) 80%, transparent 100%);
  flex-shrink:0;
}
.g1e-ordering{ 
  position:relative;
  display:flex;
  align-items:center;
  padding:0;
}
.g1e-ordering form{
  display:flex;
  align-items:center;
  margin:0;
}

/* Ensure consistent alignment for results-sort-wrapper everywhere */
.woocommerce-result-count,
.woocommerce-ordering{
  margin:0 !important;
  float:none !important;
  display:inline-block;
}
.woocommerce-ordering{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:auto;
}
.woocommerce-ordering select.orderby{
  width:auto;
  min-width:170px;
}
/* Hide any default WooCommerce output that might appear outside our wrapper */
.woocommerce-before-shop-loop-wrapper > .woocommerce-result-count:not(.g1e-results .woocommerce-result-count),
.woocommerce-before-shop-loop-wrapper > .woocommerce-ordering:not(.g1e-ordering .woocommerce-ordering){
  display:none !important;
}
/* Ensure g1e-top-row is properly aligned everywhere when chips are missing */
.g1e-top-row:not(:has(.g1e-chips)){
  justify-content:flex-end;
}
.g1e-ordering label{
  display:none;
}
.g1e-ordering select{ 
  border:none;
  border-radius:0;
  padding:.7rem 2.8rem .7rem 1.4rem; 
  font-size:13px;
  font-weight:600;
  background:transparent;
  color:#111;
  cursor:pointer;
  transition:all .2s ease;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23111' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 1rem center;
  background-size:12px;
  min-width:170px;
  padding-right:2.8rem;
}
.g1e-ordering select:hover{ 
  background-color:rgba(255,212,0,0.08);
}
.g1e-ordering select:focus{ 
  outline:none;
  background-color:rgba(255,212,0,0.12);
}

/* Responsive adjustments for top actions */
@media (max-width: 768px){
  .g1e-top-row{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }
  .g1e-top-actions{
    margin-left:0;
    width:100%;
  }
  .g1e-results-sort-wrapper{
    width:100%;
    flex-direction:column;
    border-radius:12px;
  }
  .g1e-divider{
    width:100%;
    height:1px;
  }
  .g1e-results{
    width:100%;
    justify-content:center;
    padding:.75rem 1rem;
  }
  .g1e-ordering{
    width:100%;
  }
  .g1e-ordering select{
    width:100%;
    min-width:auto;
    padding:.75rem 2.5rem .75rem 1rem;
    border-radius:0;
  }
}
.g1e-btn--ghost{ 
  background:#fff; 
  border:1px solid var(--g1e-border); 
  color:inherit; 
  border-radius:999px; 
  padding:.5rem .7rem;
  transition:all .2s ease;
}
.g1e-login-register-btn{ margin-left:8px; }
.g1e-btn--ghost:hover{ 
  background:var(--g1e-accent);
  border-color:var(--g1e-accent);
  color:var(--g1e-fg);
}

/* Price slider removed */

/* Categories toggle in header */
.g1e-cat-toggle{ display:inline-flex !important; align-items:center; gap:6px; padding:.4rem .7rem; border:1px solid var(--g1e-border); border-radius:999px; background:#fff; color:inherit; text-decoration:none; min-height:34px; line-height:1; }
.g1e-cat-toggle:hover{ background:var(--g1e-accent); color:var(--g1e-fg); border-color:transparent; }
.g1e-cat-toggle{ cursor:pointer; }
.g1e-cat-toggle[aria-expanded="true"]{ background:var(--g1e-accent); color:var(--g1e-fg); border-color:transparent; }

/* Off-canvas mobile nav + FAB */
.g1e-offcanvas-backdrop{ 
  position:fixed; 
  inset:0; 
  background:rgba(0,0,0,.6); 
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  opacity:0; 
  pointer-events:none; 
  transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1), backdrop-filter .3s ease; 
  z-index:1000; 
}
.g1e-offcanvas-backdrop.is-open{ 
  opacity:1; 
  pointer-events:auto; 
}
.g1e-offcanvas{ 
  position:fixed; 
  left:0; 
  top:0; 
  height:100dvh; 
  width:min(440px,92vw); 
  background:#fff;
  background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
  box-shadow:8px 0 32px rgba(0,0,0,.12), 4px 0 16px rgba(0,0,0,.08);
  transform:translateX(-100%); 
  transition:transform .4s cubic-bezier(0.16, 1, 0.3, 1); 
  z-index:1001; 
  display:flex; 
  flex-direction:column;
  border-right:1px solid rgba(0,0,0,.06);
}
.g1e-offcanvas.is-open{ 
  transform:none; 
}
.g1e-offcanvas__header{ 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:12px; 
  padding:20px 24px; 
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#fff;
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.g1e-offcanvas__header strong{
  font-size:20px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  letter-spacing:-0.02em;
}
.g1e-off-nav{ 
  padding:16px 24px 24px;
  overflow-y:auto;
  flex:1;
  -webkit-overflow-scrolling:touch;
}
.g1e-off-nav::-webkit-scrollbar{
  width:6px;
}
.g1e-off-nav::-webkit-scrollbar-track{
  background:transparent;
}
.g1e-off-nav::-webkit-scrollbar-thumb{
  background:rgba(0,0,0,.1);
  border-radius:3px;
}
.g1e-off-nav .menu, .g1e-off-nav .main-header-menu{ 
  display:flex; 
  flex-direction:column; 
  gap:8px; 
  list-style:none; 
  padding:0; 
  margin:0; 
}
.g1e-off-nav a{ 
  display:flex;
  align-items:center;
  padding:.75rem 1rem; 
  border-radius:12px; 
  text-decoration:none; 
  color:var(--g1e-fg);
  font-weight:500;
  transition:all .2s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
}
.g1e-off-nav a::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--g1e-accent);
  transform:scaleY(0);
  transition:transform .2s ease;
  border-radius:0 2px 2px 0;
}
.g1e-off-nav a:hover{ 
  background:linear-gradient(135deg, rgba(255,212,0,.08) 0%, rgba(0,153,255,.08) 100%);
  transform:translateX(4px);
  color:var(--g1e-fg);
}
.g1e-off-nav a:hover::before{
  transform:scaleY(1);
}
.g1e-off-nav a:active{
  transform:translateX(4px) scale(0.98);
}
.g1e-fab{ 
  position:fixed; 
  right:20px; 
  bottom:calc(env(safe-area-inset-bottom) + 88px); 
  width:56px; 
  height:56px; 
  border-radius:50%; 
  border:none; 
  background:var(--g1e-accent); 
  color:var(--g1e-fg); 
  font-size:0; 
  line-height:1; 
  display:flex; 
  align-items:center; 
  justify-content:center; 
  box-shadow:0 4px 16px rgba(255,212,0,0.4), 0 2px 8px rgba(255,212,0,0.3); 
  z-index:1002;
  cursor:pointer;
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
  padding:0;
  margin:0;
}
.g1e-fab:hover{
  transform:scale(1.1) translateY(-2px);
  box-shadow:0 6px 24px rgba(255,212,0,0.5), 0 3px 12px rgba(255,212,0,0.4);
  background:linear-gradient(135deg, var(--g1e-accent) 0%, rgba(255,212,0,0.9) 100%);
}
.g1e-fab:active{
  transform:scale(0.95);
}
.g1e-fab .g1e-icon{ 
  width:24px; 
  height:24px; 
  display:block;
  color:var(--g1e-fg);
  stroke:var(--g1e-fg);
  fill:none;
  stroke-width:2.5;
}
@media (min-width: 769px){ 
  .g1e-fab{ 
    display:none; /* Hidden on desktop - menu is in header */
  }
}
@media (max-width: 768px){
  .g1e-fab{
    right:16px;
    bottom:calc(env(safe-area-inset-bottom) + 100px);
  }
}

/* Mega-menu baseline (desktop) */
@media (min-width: 992px){
  .ast-desktop .main-header-menu > .menu-item-has-children:hover > .sub-menu{
    display:grid !important; grid-template-columns:repeat(3, minmax(180px, 1fr)); gap:10px; padding:16px; min-width:720px;
  }
  /* Override for Info submenu - make it vertical */
  .ast-desktop .main-header-menu > .g1e-info:hover > .sub-menu{
    display:block !important;
    grid-template-columns:none !important;
    min-width:200px !important;
    max-width:280px !important;
    padding:12px 0 !important;
  }
  .ast-desktop .main-header-menu .sub-menu li{ padding:0; }
  .ast-desktop .main-header-menu .sub-menu a{ padding:6px 8px; }
}

/* Drawer - Modern Premium Design */
.g1e-drawer-backdrop{ 
  position:fixed; 
  inset:0; 
  background:rgba(0,0,0,.6); 
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  opacity:0; 
  pointer-events:none; 
  transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1), backdrop-filter .3s ease; 
  z-index:1000; 
}
.g1e-drawer-backdrop.is-open{ 
  opacity:1; 
  pointer-events:auto; 
}
.g1e-cart-drawer{ 
  position:fixed; 
  top:0; 
  right:0; 
  height:100dvh; 
  width:min(440px,92vw); 
  background:#fff; 
  background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
  box-shadow:-8px 0 32px rgba(0,0,0,.12), -4px 0 16px rgba(0,0,0,.08);
  transform:translateX(100%); 
  transition:transform .4s cubic-bezier(0.16, 1, 0.3, 1); 
  z-index:1001; 
  display:flex; 
  flex-direction:column;
  border-left:1px solid rgba(0,0,0,.06);
}
.g1e-cart-drawer.is-open{ 
  transform:none; 
}
.g1e-cart-drawer__header{ 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:12px; 
  padding:20px 24px; 
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#fff;
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.g1e-cart-drawer__header strong{
  font-size:20px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  letter-spacing:-0.02em;
}
.g1e-cart-drawer__body{ 
  overflow-y:auto; 
  overflow-x:hidden;
  padding:0 0 24px; 
  height:100%; 
  flex:1;
  -webkit-overflow-scrolling:touch;
}
.g1e-cart-drawer__body::-webkit-scrollbar{
  width:6px;
}
.g1e-cart-drawer__body::-webkit-scrollbar-track{
  background:transparent;
}
.g1e-cart-drawer__body::-webkit-scrollbar-thumb{
  background:rgba(0,0,0,.1);
  border-radius:3px;
}
.g1e-cart-drawer__body::-webkit-scrollbar-thumb:hover{
  background:rgba(0,0,0,.15);
}
.g1e-icon-btn{ 
  background:none; 
  border:0; 
  padding:8px; 
  cursor:pointer;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all .2s cubic-bezier(0.4, 0, 0.2, 1);
  color:var(--g1e-muted);
  width:36px;
  height:36px;
}
.g1e-icon-btn:hover{
  background:rgba(0,0,0,.05);
  color:var(--g1e-fg);
  transform:rotate(90deg);
}
.g1e-icon-btn:active{
  transform:rotate(90deg) scale(0.95);
}

/* Mini-cart items - Ultra Premium Design */
.woocommerce-mini-cart{
  padding:12px 0;
  list-style:none;
  margin:0;
}
.woocommerce-mini-cart__empty-message{
  padding:60px 24px;
  text-align:center;
  color:var(--g1e-muted);
  font-size:16px;
  line-height:1.6;
}
.woocommerce-mini-cart .mini_cart_item{ 
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:12px 16px; 
  border-bottom:1px solid rgba(0,0,0,.06);
  transition:background .2s ease;
  position:relative;
}
.woocommerce-mini-cart .mini_cart_item:hover{
  background:rgba(0,0,0,.02);
}
@keyframes slideInRight{
  from{
    opacity:0;
    transform:translateX(30px) scale(0.95);
  }
  to{
    opacity:1;
    transform:translateX(0) scale(1);
  }
}
.g1e-mini-item__row{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
}
.g1e-mini-thumb{ 
  display:block;
  overflow:hidden;
  border-radius:8px;
  background:#f5f5f5;
  width:60px;
  height:60px;
  flex-shrink:0;
  position:relative;
}
/* Ensure only one image is visible - hide any duplicates */
.g1e-mini-thumb img:not(:first-of-type),
.g1e-mini-thumb img + img,
.g1e-mini-thumb picture:not(:first-of-type),
.g1e-mini-thumb source{
  display:none !important;
}
.g1e-mini-thumb img{ 
  width:100%; 
  height:100%; 
  object-fit:cover; 
  border-radius:8px;
  display:block !important;
  background:#f5f5f5;
  position:relative;
  z-index:1;
}
/* Hide any images that might be added by WooCommerce filters outside our custom thumbnail */
.mini_cart_item > img:not(.g1e-mini-thumb img),
.mini_cart_item > a:not(.g1e-mini-thumb) img,
.mini_cart_item .g1e-mini-item__row > img:not(.g1e-mini-thumb img){
  display:none !important;
}
.g1e-mini-item__info{
  display:flex;
  flex-direction:column;
  gap:4px;
  flex:1;
  min-width:0;
}
.g1e-mini-title{ 
  font-size:14px; 
  line-height:1.4; 
  color:#111; 
  text-decoration:none;
  font-weight:500;
  display:-webkit-box;
  -webkit-line-clamp:2;
  line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:0;
}
.g1e-mini-title:hover{
  color:var(--g1e-accent-2);
}
.g1e-mini-item__prices{
  display:flex;
  align-items:center;
  gap:8px;
}
.g1e-mini-price{ 
  font-weight:400;
  font-size:12px;
  color:#666;
}
.g1e-line-total{ 
  font-weight:600;
  font-size:14px;
  color:#111;
}
.g1e-mini-remove{ 
  color:#999; 
  background:none;
  border:0;
  padding:4px;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  flex-shrink:0;
  opacity:0.6;
  border-radius:4px;
  transition:all .2s ease;
}
.g1e-mini-remove:hover{
  background:color-mix(in srgb, var(--g1e-danger) 12%, transparent);
  color:var(--g1e-danger);
  opacity:1;
}
.g1e-mini-remove svg{
  width:14px;
  height:14px;
}
.g1e-qty{ 
  display:flex; 
  align-items:center; 
  gap:6px;
  margin-left:72px;
  width:fit-content;
}
.g1e-qty input{ 
  width:50px; 
  text-align:center; 
  padding:6px 4px; 
  border:1px solid #ddd; 
  border-radius:6px;
  font-weight:500;
  font-size:14px;
  background:#fff;
}
.g1e-qty input:focus{
  outline:none;
  border-color:var(--g1e-accent);
}
.g1e-qty-btn{ 
  width:28px; 
  height:28px; 
  border:1px solid #ddd; 
  border-radius:6px; 
  background:#fff; 
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#666;
  font-size:18px;
  font-weight:600;
  line-height:1;
  transition:all .2s ease;
}
.g1e-qty-btn:hover{
  border-color:var(--g1e-accent);
  background:var(--g1e-accent);
  color:#111;
}

/* Totals + actions - Enhanced */
.woocommerce-mini-cart__total, .g1e-mini-actions{ 
  padding:20px 24px; 
  border-top:2px solid rgba(0,0,0,.08);
  background:#fff;
  position:sticky;
  bottom:0;
  z-index:10;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.woocommerce-mini-cart__total{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:18px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
}
.g1e-mini-fee, .g1e-mini-est{
  padding:10px 24px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:600;
}
.g1e-mini-est{
  border-top:1px dashed var(--g1e-border);
}
.g1e-mini-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:0;
  padding-top:16px;
}
.g1e-free-note{ 
  padding:12px 24px; 
  font-size:13px; 
  color:var(--g1e-muted);
  background:linear-gradient(135deg, rgba(255,212,0,.08) 0%, rgba(0,153,255,.08) 100%);
  margin:0 24px;
  border-radius:10px;
  border:1px solid rgba(255,212,0,.2);
  text-align:center;
  font-weight:500;
}
.woocommerce-checkout-review-order .g1e-free-note{ display:none !important; }
.woocommerce-checkout-review-order .g1e-progress:not(:first-of-type){ display:none !important; }
.woocommerce-checkout-review-order .g1e-progress ~ .g1e-progress{ display:none !important; }
.g1e-coupon{ display:flex; align-items:center; gap:8px; padding:8px 16px; border-top:1px solid var(--g1e-border); }
.g1e-coupon input{ border:1px solid var(--g1e-border); border-radius:8px; padding:.4rem .55rem; min-width:160px; }
.g1e-coupon-msg{ margin-left:auto; color:var(--g1e-muted); }
.g1e-mini-reco{ padding:8px 16px 14px; }
.g1e-mini-reco h4{ margin:4px 0 8px; font-size:14px; font-weight:700; }
.g1e-fee-note{ color:var(--g1e-muted); }

/* Buttons */
.g1e-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:.65rem 1rem; border-radius:10px; border:1px solid transparent; cursor:pointer; text-decoration:none; }
.g1e-btn--primary{ background: var(--g1e-accent); color:var(--g1e-fg); }
.g1e-btn--secondary{ background:#fff; color:var(--g1e-fg); border-color:var(--g1e-border); }
.g1e-btn--block{ width:100%; }
.g1e-btn:hover{ filter:saturate(1.05) brightness(1.02); }

/* Sticky bottom bar (desktop only) */
.g1e-stickybar{ 
  position:fixed; 
  left:50%;
  transform:translateX(-50%);
  bottom:24px;
  z-index:999; 
  display:none;
  align-items:center; 
  justify-content:space-between; 
  gap:20px; 
  padding:16px 24px; 
  background:#fff; 
  border:2px solid var(--g1e-accent);
  border-radius:16px; 
  box-shadow:0 8px 32px rgba(255,212,0,0.25), 0 4px 16px rgba(0,0,0,0.1);
  max-width:600px;
  width:calc(100% - 40px);
  backdrop-filter:blur(20px);
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.g1e-stickybar:not(.is-empty){
  display:flex;
}
.g1e-stickybar:hover{
  box-shadow:0 12px 40px rgba(255,212,0,0.3), 0 6px 20px rgba(0,0,0,0.15);
  transform:translateX(-50%) translateY(-2px);
}
.g1e-stickybar.is-empty{ 
  display:none !important; 
}
@media (max-width: 768px){ 
  .g1e-stickybar{ 
    display:none !important; 
  } 
}
.g1e-stickybar__cart{ 
  background:var(--g1e-accent); 
  border:none; 
  border-radius:12px; 
  padding:10px 14px; 
  display:flex; 
  align-items:center; 
  gap:10px; 
  cursor:pointer;
  transition:all .2s ease;
  flex-shrink:0;
}
.g1e-stickybar__cart:hover{
  background:linear-gradient(135deg, var(--g1e-accent) 0%, rgba(255,212,0,0.9) 100%);
  transform:scale(1.05);
}
.g1e-stickybar__cart .g1e-cart-icon{
  width:22px;
  height:22px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.g1e-stickybar__cart .g1e-cart-icon svg{
  width:20px;
  height:20px;
  color:var(--g1e-fg);
  fill:currentColor;
}
.g1e-count{ 
  min-width:22px; 
  height:22px; 
  border-radius:50%; 
  background:#111; 
  color:#fff; 
  display:inline-flex; 
  align-items:center; 
  justify-content:center; 
  font-size:11px; 
  font-weight:700;
  padding:0 6px; 
  box-shadow:0 2px 4px rgba(0,0,0,0.2);
}
.g1e-stickybar__meta{ 
  display:flex; 
  flex-direction:column; 
  line-height:1.3;
  flex:1;
  min-width:0;
  gap:4px;
}
.g1e-subtotal{ 
  font-size:18px; 
  font-weight:700;
  color:var(--g1e-fg);
  font-family:"Outfit", sans-serif;
}
.g1e-free-msg{ 
  color:var(--g1e-muted); 
  font-size:12px;
  font-weight:500;
}
.g1e-est{
  font-size:12px;
  color:var(--g1e-fg);
  font-weight:700;
}
.g1e-progressbar{
  margin-top:6px;
  height:4px;
  background:rgba(0,0,0,0.05);
  border-radius:999px;
  overflow:hidden;
}
.g1e-progressbar__bar{
  height:100%;
  background:linear-gradient(90deg, var(--g1e-accent) 0%, var(--g1e-accent-2) 100%);
  border-radius:999px;
  transition:width .3s ease;
}
.g1e-stickybar__actions{
  display:flex;
  gap:10px;
  flex-shrink:0;
}
.g1e-stickybar__actions .g1e-btn{
  padding:.6rem 1.2rem;
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
}

/* Infinite scroll */
.g1e-infinite-spinner{ display:flex; align-items:center; justify-content:center; padding:18px 0; color:var(--g1e-muted); }
.g1e-infinite-spinner svg{ animation:g1e-spin 1s linear infinite; }
@keyframes g1e-spin{ to{ transform:rotate(360deg) } }

/* Checkout */
.g1e-cod-note{ margin:10px 0; font-size:14px; color:var(--g1e-muted); }
/* Checkout progress */
.g1e-checkout-progress{ margin:10px 0 14px; }
.g1e-checkout-progress ol{ list-style:none; padding:0; margin:0; display:flex; gap:10px; align-items:center; }
.g1e-checkout-progress li{ display:flex; align-items:center; gap:8px; color:var(--g1e-muted); }
.g1e-checkout-progress li::before{ content:""; width:20px; height:20px; border-radius:999px; border:2px solid var(--g1e-border); display:inline-block; background:#fff; }
.g1e-checkout-progress li.is-current{ color:var(--g1e-fg); font-weight:600; }
.g1e-checkout-progress li.is-current::before{ background:var(--g1e-accent); border-color:var(--g1e-accent); }
.g1e-checkout-progress li.is-done{ color:var(--g1e-success); }
.g1e-checkout-progress li.is-done::before{ background:var(--g1e-success); border-color:var(--g1e-success); }

/* Checkout form polish */
.g1e-checkout{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}
.g1e-checkout .g1e-checkout-single{ 
  display:block; 
  gap:24px;
  margin-top:20px;
}
@media (min-width: 960px){
  .g1e-checkout .g1e-checkout-single{ 
    display:grid; 
    grid-template-columns:1fr minmax(400px, 480px); 
    align-items:start; 
    gap:32px;
  }
  .g1e-checkout-review{ 
    position:relative;
    display:flex;
    flex-direction:column;
  }
  .woocommerce-checkout-review-order{
    display:flex;
    flex-direction:column;
    overflow:visible;
  }
  .woocommerce-checkout-review-order h3{
    display:none !important;
  }
  .woocommerce-checkout-review-order-table{
    margin-bottom:20px;
  }
  .woocommerce-checkout .woocommerce-checkout-payment{
    margin-top:20px;
    overflow:visible;
  }
  .woocommerce-checkout .place-order{
    background:#fff;
    margin-top:24px;
    padding-top:24px;
    padding-bottom:24px;
    border-top:2px solid var(--g1e-border);
    position:relative;
    overflow:visible;
    visibility:visible !important;
    display:block !important;
  }
}
.g1e-checkout-fields{
  background:#fff;
  border:1px solid var(--g1e-border);
  border-radius:16px;
  padding:24px;
  margin-bottom:24px;
}
.g1e-checkout-fields h3{
  font-size:20px;
  font-weight:700;
  margin:0 0 20px;
  padding-bottom:12px;
  border-bottom:2px solid var(--g1e-border);
  color:var(--g1e-fg);
}
.woocommerce-checkout .form-row{
  margin-bottom:20px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.woocommerce-checkout .form-row label{
  font-size:14px;
  font-weight:600;
  color:var(--g1e-fg);
  margin:0;
  display:block;
}
.woocommerce-checkout .form-row label .required{
  color:var(--g1e-danger);
  margin-left:2px;
}
.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row select, 
.woocommerce-checkout .form-row textarea{ 
  border:1px solid var(--g1e-border); 
  border-radius:10px; 
  padding:.75rem 1rem;
  font-size:15px;
  width:100%;
  background:#fff;
  transition:all .2s ease;
}
.woocommerce-checkout .form-row input.input-text:focus, 
.woocommerce-checkout .form-row select:focus, 
.woocommerce-checkout .form-row textarea:focus{ 
  outline:none;
  border-color:var(--g1e-accent-2); 
  box-shadow:0 0 0 3px rgba(0,153,255,.08);
}
.woocommerce form .form-row.woocommerce-invalid input.input-text, 
.woocommerce form .form-row.woocommerce-invalid select, 
.woocommerce form .form-row.woocommerce-invalid textarea{ 
  border-color:var(--g1e-danger); 
  box-shadow:0 0 0 3px rgba(255,77,77,.08); 
}
.g1e-checkout-review{
  margin-bottom:24px;
}
.woocommerce-checkout-review-order{
  width:100% !important;
  max-width:100% !important;
  background:#fff;
  border:1px solid var(--g1e-border);
  border-radius:16px;
  padding:24px;
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
  box-sizing:border-box !important;
}
.woocommerce-checkout-review-order h3{
  font-size:20px;
  font-weight:700;
  margin:0 0 20px;
  padding:0;
  padding-bottom:12px;
  border-bottom:2px solid var(--g1e-border);
  color:var(--g1e-fg);
  writing-mode:horizontal-tb;
  text-orientation:mixed;
  display:block;
}
@media (max-width: 959px){
  .g1e-checkout{
    padding:0 16px;
  }
  .g1e-checkout-fields,
  .woocommerce-checkout-review-order{
    padding:20px;
  }
  .g1e-checkout .g1e-checkout-single{
    gap:20px;
  }
}
.woocommerce-checkout-review-order-table{
  width:100%;
  border-collapse:collapse;
  margin-bottom:20px;
  table-layout:auto;
}
.woocommerce-checkout-review-order-table thead{
  display:none;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td{
  padding:16px 0;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid var(--g1e-border);
}
.woocommerce-checkout-review-order-table .product-name{
  width:auto;
  min-width:0;
  max-width:none;
}
.woocommerce-checkout-review-order-table tbody tr:last-child td{
  border-bottom:none;
}
.woocommerce-checkout-review-order-table th{
  font-weight:600;
  font-size:14px;
  color:var(--g1e-fg);
}
.woocommerce-checkout-review-order-table th:last-child,
.woocommerce-checkout-review-order-table td:last-child{
  text-align:right;
  vertical-align:middle;
  white-space:nowrap;
  padding-left:16px;
  min-width:100px;
}
.woocommerce-checkout-review-order-table td{
  font-size:15px;
  color:var(--g1e-fg);
}
.woocommerce-checkout-review-order-table .product-name{
  font-weight:500;
  color:var(--g1e-fg);
  line-height:1.6;
  padding-right:20px;
  word-wrap:break-word;
  width:auto;
  min-width:0;
  max-width:none;
}
.woocommerce-checkout-review-order-table .product-name .g1e-product-info{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:4px;
}
.woocommerce-checkout-review-order-table .product-name .g1e-product-info > *:first-child{
  flex:1;
  min-width:0;
}
.woocommerce-checkout-review-order-table .product-name strong.product-quantity{
  display:inline-block;
  margin:0;
  font-weight:600;
  color:var(--g1e-muted);
  font-size:14px;
  white-space:nowrap;
  flex-shrink:0;
}
.woocommerce-checkout-review-order-table .product-name br{
  display:none !important;
}
.woocommerce-checkout-review-order-table .product-name .variation{
  display:block;
  margin-top:4px;
  font-size:13px;
  color:var(--g1e-muted);
  line-height:1.4;
}
.woocommerce-checkout-review-order-table .product-name .variation dt,
.woocommerce-checkout-review-order-table .product-name .variation dd{
  display:inline;
  margin:0;
}
.woocommerce-checkout-review-order-table .product-name .variation dt{
  font-weight:500;
  margin-right:4px;
}
.woocommerce-checkout-review-order-table .product-name .variation dd{
  margin-right:12px;
}
.woocommerce-checkout-review-order-table .product-total{
  font-weight:600;
  color:var(--g1e-fg);
  font-size:15px;
  white-space:nowrap;
}
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout-review-order-table tfoot td{
  border-top:2px solid var(--g1e-border);
  padding-top:16px;
  font-weight:700;
  font-size:16px;
  color:var(--g1e-fg);
}
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td{
  border-top:2px solid var(--g1e-accent);
  padding-top:16px;
  font-size:18px;
  font-weight:700;
  color:var(--g1e-fg);
}
.woocommerce-checkout .woocommerce-checkout-payment{ 
  border:none;
  border-radius:0;
  padding:0;
  margin-top:20px;
  background:transparent;
}
.woocommerce-checkout .woocommerce-checkout-payment .payment_methods{
  list-style:none;
  padding:0;
  margin:0 0 20px;
  border:none;
}
.woocommerce-checkout .woocommerce-checkout-payment .payment_box{
  display:none !important;
}
.woocommerce-checkout .woocommerce-checkout-payment .payment_method_cod .payment_box{
  display:none !important;
}
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_methods{
  margin:0;
  padding:0;
}
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method{
  margin:0 0 12px;
  padding:0;
}
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method label{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:600;
  font-size:15px;
  cursor:pointer;
  padding:12px;
  border:2px solid var(--g1e-border);
  border-radius:10px;
  background:#fff;
  transition:all .2s ease;
}
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method input[type="radio"]{
  margin:0;
  width:18px;
  height:18px;
  cursor:pointer;
}
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method input[type="radio"]:checked + label,
.woocommerce-checkout .woocommerce-checkout-payment .wc_payment_method.selected label{
  border-color:var(--g1e-accent);
  background:rgba(255,212,0,0.05);
}
.woocommerce-checkout .place-order{
  margin-top:24px;
  padding-top:24px;
  border-top:2px solid var(--g1e-border);
}
@media (min-width: 960px){
  .woocommerce-checkout-review-order .place-order{
    margin-top:0;
  }
}
.woocommerce-checkout .place-order .button{ 
  width:100%; 
  padding:1rem 1.5rem; 
  font-weight:700; 
  font-size:16px;
  border-radius:12px;
  background:var(--g1e-accent);
  color:var(--g1e-fg);
  border:none;
  cursor:pointer;
  transition:all .2s ease;
  box-shadow:0 2px 8px rgba(255,212,0,0.3);
}
.woocommerce-checkout .place-order .button:hover{
  background:linear-gradient(135deg, var(--g1e-accent) 0%, rgba(255,212,0,0.9) 100%);
  box-shadow:0 4px 12px rgba(255,212,0,0.4);
  transform:translateY(-1px);
}
.woocommerce-checkout .place-order .button.is-loading{ 
  position:relative; 
  opacity:.8; 
  pointer-events:none; 
}

/* Coupon toggle */
.woocommerce-form-coupon-toggle{
  margin-bottom:20px;
}
.woocommerce-form-coupon-toggle .woocommerce-info{
  background:#fff;
  border:2px solid var(--g1e-accent);
  border-radius:12px;
  padding:14px 16px;
  color:var(--g1e-fg);
  font-size:14px;
  margin:0;
  box-shadow:0 2px 8px rgba(255,212,0,0.15);
}
.woocommerce-form-coupon-toggle .woocommerce-info::before,
.woocommerce-info::before{
  content:"" !important;
  display:none !important;
}
.woocommerce-info{
  padding-left:16px !important;
}
.woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon{
  color:var(--g1e-accent-2);
  font-weight:600;
  text-decoration:none;
  transition:all .2s ease;
  border-bottom:1px solid transparent;
}
.woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon:hover{
  color:var(--g1e-accent);
  border-bottom-color:var(--g1e-accent);
}
.woocommerce-form-coupon{
  background:#fff;
  border:1px solid var(--g1e-border);
  border-radius:12px;
  padding:16px;
  margin-bottom:20px;
}
.woocommerce-form-coupon #coupon_code{
  border:1px solid var(--g1e-border);
  border-radius:10px;
  padding:.75rem 1rem;
  font-size:15px;
  width:100%;
  transition:all .2s ease;
}
.woocommerce-form-coupon #coupon_code:focus{
  outline:none;
  border-color:var(--g1e-accent-2);
  box-shadow:0 0 0 3px rgba(0,153,255,.08);
}
.woocommerce-form-coupon button[name="apply_coupon"]{
  background:var(--g1e-accent);
  color:var(--g1e-fg);
  border:none;
  border-radius:10px;
  padding:.75rem 1.5rem;
  font-weight:600;
  font-size:15px;
  cursor:pointer;
  transition:all .2s ease;
  box-shadow:0 2px 8px rgba(255,212,0,0.3);
}
.woocommerce-form-coupon button[name="apply_coupon"]:hover{
  background:linear-gradient(135deg, var(--g1e-accent) 0%, rgba(255,212,0,0.9) 100%);
  box-shadow:0 4px 12px rgba(255,212,0,0.4);
  transform:translateY(-1px);
}
.woocommerce-checkout .place-order .button.is-loading::after{ 
  content:""; 
  position:absolute; 
  right:12px; 
  top:50%; 
  width:16px; 
  height:16px; 
  margin-top:-8px; 
  border:2px solid rgba(0,0,0,.2); 
  border-top-color:#000; 
  border-radius:50%; 
  animation:g1e-spin .8s linear infinite; 
}

/* Checkout login/saved hint */
.g1e-checkout-hint{ margin:10px 0 12px; padding:10px 12px; background:#fff; border:1px solid var(--g1e-border); border-radius:10px; font-size:14px; display:flex; align-items:center; gap:8px; }
.g1e-checkout-hint .g1e-btn--ghost{ padding:.3rem .6rem; }
.g1e-login-box{ margin:8px 0 14px; }
.g1e-register-box{ margin:8px 0 14px; }
.g1e-register-only #customer_login{ display:block; }
.g1e-register-only #customer_login .u-column1{ display:none !important; }
.g1e-register-only #customer_login .u-column2{ width:100%; max-width:520px; margin:0 auto; }
.g1e-register-only h2{ display:none; }


/* Cart page note */
.g1e-cart-note{ margin:8px 0 12px; padding:10px 12px; background:#fff; border:1px solid var(--g1e-border); border-radius:10px; font-size:14px; }

/* Toast */
.g1e-toast{ position:fixed; left:50%; transform:translateX(-50%); bottom:80px; background:#111; color:#fff; padding:.6rem .9rem; border-radius:10px; font-size:14px; z-index:1002; opacity:0; pointer-events:none; transition:opacity .2s ease, transform .2s ease; }
.g1e-toast.is-show{ opacity:1; transform:translateX(-50%) translateY(-4px); }

/* Categories flyout */
.g1e-cats-backdrop{ 
  position:fixed; 
  inset:0; 
  background:rgba(0,0,0,.6); 
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  opacity:0; 
  pointer-events:none; 
  transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1), backdrop-filter .3s ease; 
  z-index:100000; 
}
.g1e-cats-backdrop.is-open{ 
  opacity:1; 
  pointer-events:auto; 
}
.g1e-cats-panel{ 
  position:fixed; 
  top:0; 
  left:0; 
  height:100dvh; 
  width:min(440px, 92vw); 
  background:#fff;
  background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
  box-shadow:8px 0 32px rgba(0,0,0,.12), 4px 0 16px rgba(0,0,0,.08);
  transform:translateX(-100%); 
  transition:transform .4s cubic-bezier(0.16, 1, 0.3, 1); 
  z-index:100001; 
  display:flex; 
  flex-direction:column;
  border-right:1px solid rgba(0,0,0,.06);
}
.g1e-cats-panel.is-open{ 
  transform:none; 
}
.g1e-cats-panel__header{ 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:16px; 
  padding:24px 28px; 
  border-bottom:1px solid rgba(0,0,0,.08);
  background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
  position:relative;
  z-index:10;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.g1e-cats-panel__header-content{
  display:flex;
  align-items:center;
  gap:16px;
  flex:1;
  min-width:0;
}
.g1e-cats-panel__header strong{
  font-size:22px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  letter-spacing:-0.02em;
  flex:1;
  display:flex;
  align-items:center;
  gap:12px;
}
.g1e-cats-panel__header strong::before{
  content:'';
  width:4px;
  height:24px;
  background:linear-gradient(180deg, var(--g1e-accent) 0%, var(--g1e-accent-2) 100%);
  border-radius:2px;
  flex-shrink:0;
}
.g1e-cats-view-all{
  font-size:13px;
  font-weight:600;
  color:var(--g1e-fg);
  text-decoration:none;
  padding:.4rem .85rem;
  border-radius:8px;
  background:rgba(255,212,0,.12);
  border:1px solid rgba(255,212,0,.25);
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  white-space:nowrap;
  font-family:"Outfit", sans-serif;
}
.g1e-cats-view-all:hover{
  background:var(--g1e-accent);
  color:#111;
  border-color:var(--g1e-accent);
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(255,212,0,.35);
}
.g1e-cats-search{
  position:relative;
  padding:0 28px 20px;
  border-bottom:1px solid rgba(0,0,0,.06);
  margin-bottom:12px;
}
.g1e-cats-search-input{
  width:100%;
  padding:.65rem 2.5rem .65rem 1rem;
  border:1.5px solid rgba(0,0,0,.1);
  border-radius:10px;
  font-size:14px;
  background:#fff;
  color:var(--g1e-fg);
  transition:all .2s ease;
  font-family:inherit;
}
.g1e-cats-search-input:focus{
  outline:none;
  border-color:var(--g1e-accent);
  box-shadow:0 0 0 3px rgba(255,212,0,.1);
}
.g1e-cats-search-input::placeholder{
  color:#94a3b8;
}
.g1e-cats-search-icon{
  position:absolute;
  right:36px;
  top:50%;
  transform:translateY(-50%);
  color:#94a3b8;
  pointer-events:none;
}
.g1e-cats-empty{
  padding:40px 24px;
  text-align:center;
  color:#94a3b8;
  font-size:14px;
}
.g1e-cats-panel__body{ 
  overflow-y:auto;
  overflow-x:hidden;
  padding:20px 28px 28px;
  flex:1;
  min-height:0;
  -webkit-overflow-scrolling:touch;
}
.g1e-cats-panel__body::-webkit-scrollbar{
  width:6px;
}
.g1e-cats-panel__body::-webkit-scrollbar-track{
  background:transparent;
}
.g1e-cats-panel__body::-webkit-scrollbar-thumb{
  background:rgba(0,0,0,.1);
  border-radius:3px;
}
.g1e-cats-grid{ 
  display:grid; 
  grid-template-columns:repeat(2,minmax(0,1fr)); 
  gap:12px; 
}
.g1e-cat-link{ 
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:1.25rem 1rem; 
  border:2px solid var(--g1e-border); 
  border-radius:16px; 
  text-decoration:none; 
  color:var(--g1e-fg);
  background:#fff;
  font-weight:500;
  text-align:center;
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.g1e-cat-link::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, var(--g1e-accent) 0%, var(--g1e-accent-2) 100%);
  opacity:0;
  transition:opacity .3s ease;
}
.g1e-cat-link > *{
  position:relative;
  z-index:1;
}
.g1e-cat-link:hover{ 
  background:var(--g1e-accent); 
  color:var(--g1e-fg); 
  border-color:var(--g1e-accent);
  transform:translateY(-4px);
  box-shadow:0 8px 24px rgba(255,212,0,.3), 0 4px 12px rgba(0,0,0,.1);
}
.g1e-cat-link:active{
  transform:translateY(-2px) scale(0.98);
}

/* Single product tweaks */
.single-product .product .summary .price{ font-size:clamp(18px,2.8vw,22px); font-weight:700; }
.single-product .product .summary .cart .quantity input{ padding:.4rem; border-radius:8px; border:1px solid var(--g1e-border); }
.single-product .product .summary .single_add_to_cart_button{ background:var(--g1e-accent); color:var(--g1e-fg); border:none; border-radius:10px; padding:.75rem 1.25rem; }
.single-product .product .woocommerce-tabs{ border-top:1px solid var(--g1e-border); margin-top:16px; padding-top:10px; }
.single-product .product .images img{ border-radius:12px; }
.single-product .related.products h2{ font-size:clamp(18px,3.2vw,22px); }
.g1e-trust{ list-style:none; display:flex; gap:12px; padding:8px 0 0; margin:8px 0 0; flex-wrap:wrap; color:var(--g1e-muted); }
.g1e-trust li{ display:inline-flex; align-items:center; gap:6px; background:#fff; border:1px solid var(--g1e-border); border-radius:999px; padding:.35rem .6rem; font-size:13px; }

/* Reviews histogram + Q&A */
.g1e-hist{ margin:8px 0 12px; }
.g1e-hist__row{ display:grid; grid-template-columns:34px 1fr 40px; align-items:center; gap:8px; margin:4px 0; }
.g1e-hist__bar{ position:relative; height:8px; background:#f1f5f9; border-radius:999px; overflow:hidden; }
.g1e-hist__bar > span{ position:absolute; inset:0 auto 0 0; width:0; background:linear-gradient(90deg,var(--g1e-accent-2),var(--g1e-accent)); border-radius:999px; }
.g1e-qa__form textarea{ width:100%; border:1px solid var(--g1e-border); border-radius:10px; padding:.6rem .7rem; }
.g1e-qa__form button{ margin-top:8px; }
.g1e-qa__list{ margin:10px 0 0; padding-left:18px; }

/* Home hero + rows */
.g1e-hero{ background:var(--g1e-accent); color:var(--g1e-fg); padding:18px 18px; border-radius:14px; margin:10px auto 18px; max-width:720px; display:flex; align-items:center; box-shadow:var(--g1e-shadow); }
.g1e-hero h1{ margin:0 0 4px; font-size:clamp(22px,3.6vw,32px); }
.g1e-hero__sub{ margin:0; opacity:.95; font-size:clamp(13px,2.4vw,15px); }

/* Section Headers */
.g1e-section-header{ 
  text-align:center; 
  margin-bottom:24px;
}
.g1e-section-title{ 
  font-size:clamp(24px, 4vw, 32px); 
  font-weight:700; 
  margin:0 0 8px; 
  color:var(--g1e-fg);
  font-family:"Outfit", sans-serif;
}
.g1e-section-subtitle{ 
  font-size:clamp(14px, 2vw, 16px); 
  color:var(--g1e-muted); 
  margin:0;
}

/* Product Rows */
.g1e-row{ 
  margin:32px 0; 
  padding:24px 0;
}
.g1e-row--highlight{ 
  background:linear-gradient(135deg, rgba(255,212,0,0.05) 0%, rgba(0,153,255,0.05) 100%);
  border-radius:16px;
  padding:32px 16px;
  margin:40px 0;
}
.g1e-row__head{ 
  display:flex; 
  align-items:flex-end; 
  justify-content:space-between; 
  margin-bottom:20px; 
  gap:16px;
  flex-wrap:wrap;
}
.g1e-row__title-group{ 
  flex:1;
  min-width:200px;
}
.g1e-row__title{ 
  margin:0 0 4px; 
  font-size:clamp(20px, 3.5vw, 28px); 
  font-weight:700;
  color:var(--g1e-fg);
  font-family:"Outfit", sans-serif;
}
.g1e-row__desc{ 
  margin:0; 
  color:var(--g1e-muted); 
  font-size:14px;
}
.g1e-row__link{ 
  color:var(--g1e-accent-2); 
  text-decoration:none; 
  font-weight:600; 
  font-size:14px;
  transition:color .2s ease;
  white-space:nowrap;
}
.g1e-row__link:hover{ 
  color:var(--g1e-accent); 
}

/* Featured Categories Section */
.g1e-featured-cats{ 
  margin:40px 0; 
  padding:32px 0;
}
.g1e-featured-cats__grid{ 
  display:grid; 
  grid-template-columns:repeat(2, 1fr); 
  gap:16px;
}
@media (min-width:640px){ 
  .g1e-featured-cats__grid{ 
    grid-template-columns:repeat(3, 1fr); 
  } 
}
@media (min-width:1024px){ 
  .g1e-featured-cats__grid{ 
    grid-template-columns:repeat(6, 1fr); 
  } 
}
.g1e-featured-cat{ 
  display:flex; 
  flex-direction:column; 
  background:var(--g1e-bg); 
  border:1px solid var(--g1e-border); 
  border-radius:var(--g1e-radius); 
  overflow:hidden; 
  text-decoration:none; 
  color:inherit;
  transition:all .3s ease;
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
}
.g1e-featured-cat:hover{ 
  transform:translateY(-4px); 
  box-shadow:0 8px 24px rgba(0,0,0,0.12);
  border-color:var(--g1e-accent);
}
.g1e-featured-cat__thumb{ 
  aspect-ratio:1/1; 
  background:linear-gradient(135deg, #f7f7f7 0%, #f0f0f0 100%);
  overflow:hidden;
  position:relative;
}
.g1e-featured-cat__thumb img{ 
  width:100%; 
  height:100%; 
  object-fit:cover; 
  transition:transform .4s ease;
}
.g1e-featured-cat:hover .g1e-featured-cat__thumb img{ 
  transform:scale(1.1);
}
.g1e-featured-cat__placeholder{ 
  width:100%; 
  height:100%; 
  background:var(--g1e-gradient);
  opacity:0.1;
}
.g1e-featured-cat__content{ 
  padding:12px; 
  text-align:center;
}
.g1e-featured-cat__content h3{ 
  margin:0 0 4px; 
  font-size:14px; 
  font-weight:600;
  color:var(--g1e-fg);
}
.g1e-featured-cat__count{ 
  font-size:12px; 
  color:var(--g1e-muted);
}

/* Trust Section */
.g1e-trust-section{ 
  margin:48px 0; 
  padding:40px 0;
  background:linear-gradient(135deg, rgba(255,212,0,0.03) 0%, rgba(0,153,255,0.03) 100%);
  border-radius:16px;
}
.g1e-trust-section__grid{ 
  display:grid; 
  grid-template-columns:repeat(2, 1fr); 
  gap:24px;
}
@media (min-width:640px){ 
  .g1e-trust-section__grid{ 
    grid-template-columns:repeat(4, 1fr); 
  } 
}
.g1e-trust-item{ 
  text-align:center; 
  padding:20px;
  background:var(--g1e-bg);
  border-radius:12px;
  border:1px solid var(--g1e-border);
  transition:all .3s ease;
}
.g1e-trust-item:hover{ 
  transform:translateY(-2px);
  box-shadow:0 4px 16px rgba(0,0,0,0.08);
  border-color:var(--g1e-accent);
}
.g1e-trust-item__icon{ 
  font-size:32px; 
  margin-bottom:12px;
  display:block;
}
.g1e-trust-item h3{ 
  margin:0 0 6px; 
  font-size:16px; 
  font-weight:600;
  color:var(--g1e-fg);
}
.g1e-trust-item p{ 
  margin:0; 
  font-size:13px; 
  color:var(--g1e-muted);
  line-height:1.4;
}

/* Sale Section */
.g1e-row--sale{ 
  background:linear-gradient(135deg, rgba(255,212,0,0.08) 0%, rgba(255,212,0,0.03) 100%);
  border:2px solid rgba(255,212,0,0.2);
  border-radius:16px;
  padding:32px 16px;
}

/* Testimonials Section */
.g1e-testimonials{ 
  margin:48px 0; 
  padding:40px 0;
}
.g1e-testimonials__grid{ 
  display:grid; 
  grid-template-columns:1fr; 
  gap:20px;
}
@media (min-width:640px){ 
  .g1e-testimonials__grid{ 
    grid-template-columns:repeat(3, 1fr); 
  } 
}
.g1e-testimonial{ 
  background:var(--g1e-bg); 
  border:1px solid var(--g1e-border); 
  border-radius:12px; 
  padding:20px; 
  text-align:center;
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
  transition:all .3s ease;
}
.g1e-testimonial:hover{ 
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(0,0,0,0.08);
  border-color:var(--g1e-accent-2);
}
.g1e-testimonial__stars{ 
  font-size:18px; 
  margin-bottom:12px;
  color:var(--g1e-accent);
}
.g1e-testimonial__text{ 
  margin:0 0 12px; 
  font-size:14px; 
  line-height:1.6;
  color:var(--g1e-fg);
  font-style:italic;
}
.g1e-testimonial__author{ 
  font-size:12px; 
  color:var(--g1e-muted);
  font-weight:600;
}

/* CTA / Newsletter Section */
.g1e-cta{ 
  margin:48px 0; 
  padding:48px 0;
  background:var(--g1e-gradient);
  border-radius:16px;
  position:relative;
  overflow:hidden;
}
.g1e-cta::before{ 
  content:""; 
  position:absolute; 
  inset:0; 
  background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" fill="rgba(255,255,255,0.1)"/></svg>');
  opacity:0.3;
  pointer-events:none;
}
.g1e-cta__inner{ 
  position:relative; 
  z-index:1;
  display:flex; 
  flex-direction:column; 
  align-items:center; 
  gap:24px;
  text-align:center;
}
.g1e-cta__content h2{ 
  margin:0 0 8px; 
  font-size:clamp(24px, 4vw, 32px); 
  font-weight:700; 
  color:var(--g1e-fg);
  font-family:"Outfit", sans-serif;
}
.g1e-cta__content p{ 
  margin:0; 
  font-size:16px; 
  color:var(--g1e-fg);
  opacity:0.9;
}
.g1e-cta__form{ 
  display:flex; 
  gap:12px; 
  max-width:480px; 
  width:100%;
  flex-wrap:wrap;
  justify-content:center;
}
.g1e-cta__form input[type="email"]{ 
  flex:1; 
  min-width:200px;
  padding:.75rem 1rem; 
  border:2px solid rgba(255,255,255,0.3); 
  border-radius:999px; 
  background:rgba(255,255,255,0.9);
  font-size:14px;
  color:var(--g1e-fg);
}
.g1e-cta__form input[type="email"]:focus{ 
  outline:none; 
  border-color:var(--g1e-bg);
  background:var(--g1e-bg);
}
.g1e-cta__form button{ 
  padding:.75rem 2rem; 
  white-space:nowrap;
}

/* Marketplace-like hero grid */
.g1e-hero-grid{ display:grid; grid-template-columns:260px 1fr 280px; gap:12px; margin:12px 0 14px; }
@media (max-width: 1023px){ .g1e-hero-grid{ grid-template-columns:1fr; } .g1e-cat-rail, .g1e-hero-micros{ display:none; } }
.g1e-cat-rail{ background:#fff; border:1px solid var(--g1e-border); border-radius:14px; padding:10px; box-shadow:0 4px 14px rgba(0,0,0,.04); }
.g1e-rail-head{ display:flex; align-items:center; gap:8px; font-weight:600; margin:2px 0 6px; color:#111; }
.g1e-rail{ list-style:none; margin:0; padding:0; display:grid; gap:4px; }
.g1e-rail-item a{ display:grid; grid-template-columns:20px 1fr 14px; gap:10px; align-items:center; padding:.5rem .55rem; border-radius:10px; text-decoration:none; color:inherit; }
.g1e-rail-item a{ grid-template-columns:20px 1fr auto 14px; }
.g1e-rail-count{ font-size:12px; font-weight:700; color:#334155; background:#f1f5f9; padding:.1rem .45rem; border-radius:999px; }
.g1e-rail-item a:hover{ background:#f5f7fb; }
.g1e-rail-icon{ width:20px; height:20px; display:inline-flex; align-items:center; justify-content:center; color:#94a3b8; }
.g1e-rail-more{ color:#b0b8c5; }
.g1e-rail-more svg{ width:14px; height:14px; }

.g1e-hero-slider{ position:relative; background:#fff; border:1px solid var(--g1e-border); border-radius:14px; overflow:hidden; box-shadow:0 6px 18px rgba(0,0,0,.06); }
.g1e-slides{ position:relative; height:100%; min-height:280px; }
.g1e-slide{ position:absolute; inset:0; background:var(--bg,#fff); display:flex; align-items:center; justify-content:center; opacity:0; transform:scale(.98); transition:opacity .35s ease, transform .35s ease; }
.g1e-slide.is-active{ opacity:1; transform:none; }
.g1e-slide__text{ text-align:left; width:min(92%, 720px); }
.g1e-slide__text h2{ margin:0 0 6px; font-size:clamp(20px,4.2vw,34px); }
.g1e-slide__text p{ margin:0 0 10px; color:#333; }
.g1e-slide-nav{ position:absolute; top:50%; transform:translateY(-50%); width:36px; height:36px; border-radius:999px; border:1px solid var(--g1e-border); background:#fff; box-shadow:0 3px 12px rgba(0,0,0,.08); display:flex; align-items:center; justify-content:center; cursor:pointer; }
.g1e-slide-nav.prev{ left:10px; }
.g1e-slide-nav.next{ right:10px; }
.g1e-dots{ position:absolute; bottom:10px; left:0; right:0; display:flex; gap:6px; justify-content:center; }
.g1e-dots button{ width:8px; height:8px; border-radius:999px; border:0; background:#d1d5db; }
.g1e-dots button.is-on{ background:#111; }

.g1e-hero-micros{ display:grid; grid-template-rows:1fr 1fr; gap:12px; }
.g1e-micro{ display:flex; flex-direction:column; justify-content:center; gap:4px; background:#fff; border:1px solid var(--g1e-border); border-radius:14px; padding:12px; text-decoration:none; color:inherit; box-shadow:0 4px 14px rgba(0,0,0,.04); }
.g1e-micro strong{ font-size:16px; }
.g1e-micro span{ color:var(--g1e-muted); font-size:13px; }

/* Deal of the Day */
.g1e-deal{ margin:8px 0 16px; }
.g1e-deal__inner{ background:#fff; border:1px solid var(--g1e-border); border-radius:14px; padding:12px 14px; display:flex; align-items:center; justify-content:space-between; gap:10px; box-shadow:0 4px 14px rgba(0,0,0,.06); }
.g1e-badge--deal{ background:var(--g1e-danger); }
.g1e-deal__text{ display:flex; flex-direction:column; gap:4px; }
.g1e-deal__text strong{ font-size:clamp(16px,3vw,18px); }
.g1e-deal__text small{ color:var(--g1e-muted); }

/* Breadcrumbs + Sale badge */
.woocommerce-breadcrumb{ font-size:13px; color:var(--g1e-muted); margin-bottom:6px; }
.woocommerce span.onsale{ background:var(--g1e-accent); color:var(--g1e-fg); border-radius:999px; min-width:44px; min-height:24px; line-height:24px; padding:0 .5rem; box-shadow:0 2px 6px rgba(0,0,0,.12); }

/* Tables + notices */
.woocommerce-cart table.shop_table{ border:1px solid var(--g1e-border); border-radius:12px; overflow:hidden; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td{ padding:12px; }
.woocommerce a.remove{ border-radius:8px; background:#fff !important; border:1px solid var(--g1e-border); color:#64748b !important; width:28px; height:28px; line-height:26px; text-align:center; }
.woocommerce .quantity .qty{ border:1px solid var(--g1e-border); border-radius:8px; padding:.35rem .5rem; }
.cart-collaterals .cart_totals{ border:1px solid var(--g1e-border); border-radius:12px; padding:12px; }
.woocommerce-error, .woocommerce-info, .woocommerce-message{ border-radius:12px; padding:12px 14px; }

/* Woo buttons unified */
.woocommerce ul.products li.product a.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  background: var(--g1e-accent) !important; border:none !important; color:var(--g1e-fg) !important; border-radius:10px !important; padding:.5rem .75rem !important; font-weight:600 !important;
}
.woocommerce ul.products li.product a.button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{ filter:saturate(1.05) brightness(1.03); }



/* Badges on product cards */
.g1e-badges{ position:absolute; top:8px; left:8px; display:flex; gap:6px; z-index:2; }
.g1e-badge{ font-size:12px; padding:.2rem .45rem; border-radius:8px; color:#fff; box-shadow:0 2px 6px rgba(0,0,0,.12); }
.g1e-badge--new{ background:var(--g1e-accent-2); }
.g1e-badge--low{ background:var(--g1e-danger); }
.g1e-badge--one{ background:var(--g1e-success); }
.g1e-badge--sale{ background:#222; color:#FFD400; }

/* Focus states for a11y */
:where(a,button,input,select,textarea,[role="button"])::selection{ background:rgba(255,212,0,.35); }
:where(a,button,input,select,textarea,[role="button"]):focus-visible{ outline:2px solid var(--g1e-accent-2); outline-offset:2px; border-radius:8px; }

/* Dark mode */
body.g1e-dark{ --g1e-bg:#0f1222; --g1e-fg:#e5e7eb; --g1e-muted:#9aa3b2; --g1e-border:#1f2435; }
/* Dark mode for drawers */
body.g1e-dark .g1e-stickybar, 
body.g1e-dark .g1e-cart-drawer, 
body.g1e-dark .g1e-cats-panel, 
body.g1e-dark .g1e-offcanvas,
body.g1e-dark .g1e-fav-panel,
body.g1e-dark .g1e-qv-panel{ 
  background:linear-gradient(180deg, #12172a 0%, #0f131f 100%);
  border-color:#1f2435;
  color:#e5e7eb;
}
body.g1e-dark .g1e-cart-drawer__header,
body.g1e-dark .g1e-offcanvas__header,
body.g1e-dark .g1e-cats-panel__header,
body.g1e-dark .g1e-fav__header,
body.g1e-dark .g1e-qv__header{ 
  background:#12172a;
  border-color:#1f2435;
}
body.g1e-dark .g1e-cart-drawer__header strong,
body.g1e-dark .g1e-offcanvas__header strong,
body.g1e-dark .g1e-cats-panel__header strong,
body.g1e-dark .g1e-fav__header strong,
body.g1e-dark .g1e-qv__header strong{ 
  color:#e5e7eb;
}
body.g1e-dark .woocommerce-mini-cart .mini_cart_item{ 
  border-color:#2a3142;
}
body.g1e-dark .woocommerce-mini-cart .mini_cart_item:hover{ 
  background:rgba(255,255,255,.03);
}
body.g1e-dark .g1e-mini-thumb{
  background:#2a3142;
}
body.g1e-dark .g1e-mini-thumb img{
  background:#2a3142;
}
body.g1e-dark .g1e-mini-title{
  color:#e5e7eb;
}
body.g1e-dark .g1e-mini-price{
  color:#9ca3af;
}
body.g1e-dark .g1e-line-total{
  color:#e5e7eb;
}
body.g1e-dark .g1e-mini-remove{
  color:#9ca3af;
}
body.g1e-dark .g1e-qty input{
  color:#e5e7eb;
  background:#1f2435;
  border-color:#2a3142;
}
body.g1e-dark .g1e-qty input:focus{
  border-color:var(--g1e-accent);
}
body.g1e-dark .g1e-qty-btn{
  background:#1f2435;
  border-color:#2a3142;
  color:#9ca3af;
}
body.g1e-dark .g1e-qty-btn:hover{
  background:var(--g1e-accent);
  border-color:var(--g1e-accent);
  color:#111;
}
body.g1e-dark .g1e-icon-btn{ 
  color:#9ca3af;
}
body.g1e-dark .g1e-icon-btn:hover{ 
  background:rgba(255,255,255,.1);
  color:#e5e7eb;
}
body.g1e-dark .g1e-qty input,
body.g1e-dark .g1e-qty button{ 
  background:#1f2435;
  border-color:#2a3142;
  color:#e5e7eb;
}
body.g1e-dark .g1e-qty input:focus{ 
  border-color:var(--g1e-accent);
  box-shadow:0 0 0 3px rgba(255,212,0,.2);
}
body.g1e-dark .g1e-qty button:hover{ 
  background:var(--g1e-accent);
  border-color:var(--g1e-accent);
  color:var(--g1e-fg);
}
body.g1e-dark .woocommerce-mini-cart__total,
body.g1e-dark .g1e-mini-actions{ 
  background:#12172a;
  border-color:#1f2435;
}
body.g1e-dark .g1e-cat-toggle{ 
  background:#12172a; 
  border-color:#1f2435; 
  color:#e5e7eb; 
}
body.g1e-dark .g1e-off-nav a{ 
  color:#e5e7eb;
}
body.g1e-dark .g1e-off-nav a:hover{ 
  background:rgba(255,212,0,.1);
}
/* Dark mode - Categories */
body.g1e-dark .g1e-cat-item,
body.g1e-dark .g1e-cat-link{
  background:#1f2435;
  border-color:#2a3142;
  color:#e5e7eb;
}
body.g1e-dark .g1e-cat-item::before,
body.g1e-dark .g1e-cat-link::before{
  background:linear-gradient(135deg, rgba(255,212,0,.15) 0%, rgba(255,212,0,.08) 100%);
}
body.g1e-dark .g1e-cat-item:hover,
body.g1e-dark .g1e-cat-link:hover{
  background:linear-gradient(135deg, #252b3d 0%, #1f2435 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 4px 12px rgba(255,212,0,.2), 0 2px 4px rgba(0,0,0,.2);
}
body.g1e-dark .g1e-cat-item[aria-expanded="true"]{
  background:linear-gradient(135deg, rgba(255,212,0,.12) 0%, rgba(255,212,0,.06) 100%);
  border-color:var(--g1e-accent);
}
body.g1e-dark .g1e-cat-item.is-active,
body.g1e-dark .g1e-cat-link.is-active{
  background:linear-gradient(135deg, rgba(255,212,0,.18) 0%, rgba(255,212,0,.1) 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 2px 10px rgba(255,212,0,.25);
}
body.g1e-dark .g1e-cat-item.is-active .g1e-cat-label,
body.g1e-dark .g1e-cat-link.is-active .g1e-cat-label{
  color:#111;
}
body.g1e-dark .g1e-cat-child.is-active{
  background:linear-gradient(135deg, rgba(255,212,0,.15) 0%, rgba(255,212,0,.08) 100%);
  border-color:var(--g1e-accent);
}
body.g1e-dark .g1e-cat-child.is-active .g1e-cat-child__label{
  color:#111;
}
body.g1e-dark .g1e-cat-label{
  color:#e5e7eb;
}
body.g1e-dark .g1e-cat-count{
  background:linear-gradient(135deg, #2a3142 0%, #1f2435 100%);
  color:#9ca3af;
  box-shadow:0 1px 2px rgba(0,0,0,.2);
}
body.g1e-dark .g1e-cat-item:hover .g1e-cat-count,
body.g1e-dark .g1e-cat-link:hover .g1e-cat-count{
  background:linear-gradient(135deg, var(--g1e-accent) 0%, #ffd700 100%);
  color:#111;
}
body.g1e-dark .g1e-cat-chevron{
  color:#6b7280;
}
body.g1e-dark .g1e-cat-item[aria-expanded="true"] .g1e-cat-chevron{
  color:var(--g1e-accent);
}
body.g1e-dark .g1e-cat-children{
  border-left-color:rgba(255,212,0,.3);
}
body.g1e-dark .g1e-cat-child{
  background:#1f2435;
  border-color:#2a3142;
  color:#e5e7eb;
}
body.g1e-dark .g1e-cat-child:hover{
  background:linear-gradient(135deg, #252b3d 0%, #1f2435 100%);
  border-color:var(--g1e-accent);
}
body.g1e-dark .g1e-cat-child__label{
  color:#e5e7eb;
}
body.g1e-dark .g1e-cat-child__count{
  background:rgba(255,255,255,.08);
  color:#9ca3af;
}
body.g1e-dark .g1e-cat-child:hover .g1e-cat-child__count{
  background:rgba(255,212,0,.25);
  color:#111;
}
body.g1e-dark .g1e-cats-pinned .g1e-cats-panel{
  background:linear-gradient(180deg, #12172a 0%, #0f131f 100%);
  border-right-color:#1f2435;
}
body.g1e-dark .g1e-cats-pinned .g1e-cats-panel__header{
  background:linear-gradient(180deg, #12172a 0%, #0f131f 100%);
  border-bottom-color:#1f2435;
}
body.g1e-dark .g1e-cats-search{
  border-bottom-color:#1f2435;
}
body.g1e-dark .g1e-cats-search-input{
  background:#1f2435;
  border-color:#2a3142;
  color:#e5e7eb;
}
body.g1e-dark .g1e-cats-search-input:focus{
  border-color:var(--g1e-accent);
  box-shadow:0 0 0 3px rgba(255,212,0,.15);
}
body.g1e-dark .g1e-cats-search-input::placeholder{
  color:#64748b;
}
body.g1e-dark .g1e-cats-search-icon{
  color:#64748b;
}
body.g1e-dark .g1e-cats-view-all{
  background:rgba(255,212,0,.15);
  color:var(--g1e-accent);
}
body.g1e-dark .g1e-cats-view-all:hover{
  background:var(--g1e-accent);
  color:#111;
}
body.g1e-dark .g1e-cats-empty{
  color:#64748b;
}
body.g1e-dark .g1e-fav-list li a{ 
  background:#1f2435;
  border-color:#2a3142;
  color:#e5e7eb;
}
body.g1e-dark .g1e-fav-list li a:hover{ 
  border-color:var(--g1e-accent);
  background:rgba(255,212,0,.1);
}
body.g1e-dark .woocommerce ul.products li.product{ 
  background:#12172a; 
  border-color:#1f2435; 
}
body.g1e-dark .g1e-hero{ 
  filter:saturate(1.05); 
}
body.g1e-dark .woocommerce .price{ 
  color:#e5e7eb; 
}
body.g1e-dark .g1e-cart-drawer__body::-webkit-scrollbar-thumb,
body.g1e-dark .g1e-off-nav::-webkit-scrollbar-thumb,
body.g1e-dark .g1e-cats-panel__body::-webkit-scrollbar-thumb,
body.g1e-dark .g1e-fav__body::-webkit-scrollbar-thumb,
body.g1e-dark .g1e-qv-body::-webkit-scrollbar-thumb{ 
  background:rgba(255,255,255,.2);
}
body.g1e-dark .g1e-free-note{ 
  background:rgba(255,212,0,.15);
  border-color:rgba(255,212,0,.3);
  color:#e5e7eb;
}
/* Dark mode - Search modal */
body.g1e-dark .g1e-search-backdrop{
  background:rgba(0,0,0,.7);
}
body.g1e-dark .g1e-search-modal{
  background:linear-gradient(180deg, #12172a 0%, #0f131f 100%);
  border-color:rgba(255,255,255,.1);
  box-shadow:
    0 25px 80px rgba(0,0,0,.4),
    0 10px 40px rgba(0,0,0,.3),
    0 0 0 1px rgba(255,255,255,.05) inset;
}
body.g1e-dark .g1e-searchform .g1e-search-input{
  background:linear-gradient(180deg, #1f2435 0%, #1a1f2e 100%);
  border-color:rgba(255,255,255,.1);
  color:#e5e7eb;
  box-shadow:
    0 2px 8px rgba(0,0,0,.2),
    0 0 0 1px rgba(255,255,255,.03) inset;
}
body.g1e-dark .g1e-searchform .g1e-search-input:focus{
  border-color:var(--g1e-accent);
  background:#1f2435;
  box-shadow:
    0 4px 16px rgba(255,212,0,.25),
    0 0 0 4px rgba(255,212,0,.1),
    0 2px 8px rgba(0,0,0,.3);
}
body.g1e-dark .g1e-searchform .g1e-search-input::placeholder{
  color:#64748b;
}
body.g1e-dark .g1e-search-submit{
  color:#9ca3af;
}
body.g1e-dark .g1e-search-submit:hover{
  background:rgba(255,212,0,.15);
  color:var(--g1e-accent);
}
body.g1e-dark .g1e-search-close{
  color:#9ca3af;
}
body.g1e-dark .g1e-search-close:hover{
  background:color-mix(in srgb, var(--g1e-danger) 18%, transparent);
  color:var(--g1e-danger);
}
body.g1e-dark .g1e-searchform .g1e-suggest{
  background:linear-gradient(180deg, #1f2435 0%, #1a1f2e 100%);
  border-color:rgba(255,255,255,.1);
  box-shadow:
    0 20px 60px rgba(0,0,0,.4),
    0 8px 24px rgba(0,0,0,.3),
    0 0 0 1px rgba(255,255,255,.05) inset;
}
body.g1e-dark .g1e-suggest__item{
  color:#e5e7eb;
}
body.g1e-dark .g1e-suggest__item:hover,
body.g1e-dark .g1e-suggest__item.is-active{
  background:linear-gradient(135deg, rgba(255,212,0,.15) 0%, rgba(255,212,0,.08) 100%);
  box-shadow:0 2px 8px rgba(255,212,0,.2);
}
body.g1e-dark .g1e-suggest__thumb{
  background:linear-gradient(135deg, #2a3142 0%, #1f2435 100%);
  box-shadow:0 2px 6px rgba(0,0,0,.3);
}
body.g1e-dark .g1e-suggest__item:hover .g1e-suggest__thumb,
body.g1e-dark .g1e-suggest__item.is-active .g1e-suggest__thumb{
  box-shadow:0 4px 12px rgba(255,212,0,.3);
}
body.g1e-dark .g1e-suggest__title{
  color:#e5e7eb;
}
body.g1e-dark .g1e-suggest__item:hover .g1e-suggest__title,
body.g1e-dark .g1e-suggest__item.is-active .g1e-suggest__title{
  color:#fff;
}
body.g1e-dark .g1e-suggest__price{
  color:#e5e7eb;
}
body.g1e-dark .g1e-suggest__item:hover .g1e-suggest__price,
body.g1e-dark .g1e-suggest__item.is-active .g1e-suggest__price{
  color:var(--g1e-accent);
}
body.g1e-dark .g1e-suggest__empty{
  background:linear-gradient(135deg, rgba(255,212,0,.08) 0%, rgba(255,212,0,.03) 100%);
  color:#64748b;
}
/* Dark mode - Search icon in navbar */
body.g1e-dark .main-header-menu .g1e-search-menu > a{
  background:linear-gradient(135deg, rgba(255,212,0,.12) 0%, rgba(255,212,0,.06) 100%);
  border-color:rgba(255,212,0,.35);
  box-shadow:0 2px 6px rgba(255,212,0,.2);
}
body.g1e-dark .main-header-menu .g1e-search-menu > a:hover{
  background:linear-gradient(135deg, rgba(255,212,0,.22) 0%, rgba(255,212,0,.14) 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 6px 16px rgba(255,212,0,.35), 0 2px 8px rgba(255,212,0,.25);
}
body.g1e-dark .main-header-menu .g1e-search-menu .g1e-icon{
  color:var(--g1e-accent);
  filter:drop-shadow(0 2px 3px rgba(255,212,0,.4));
}
body.g1e-dark .main-header-menu .g1e-search-menu > a:hover .g1e-icon{
  color:#ffd400;
  filter:drop-shadow(0 3px 6px rgba(255,212,0,.6));
}

/* Header shadow when scrolled */
body.g1e-scrolled .main-header-bar{ box-shadow:0 6px 20px rgba(0,0,0,.08); }
/* Theme toggle */
.g1e-theme-toggle{ display:none !important; }
.g1e-theme-toggle:active{
  transform:scale(0.95);
}
.g1e-theme-toggle__icon{
  width:20px;
  height:20px;
  display:block;
  color:#111;
  transition:all .3s ease;
  pointer-events:none;
}
.g1e-theme-toggle:hover .g1e-theme-toggle__icon{
  color:var(--g1e-accent-2);
}
.g1e-dark .g1e-theme-toggle{
  background:#1a1a1a;
  box-shadow:0 4px 16px rgba(0,0,0,0.4), 0 2px 8px rgba(0,0,0,0.3);
}
.g1e-dark .g1e-theme-toggle:hover{
  background:linear-gradient(135deg, #1a1a1a 0%, #2a2a2a 100%);
  box-shadow:0 6px 24px rgba(0,0,0,0.6), 0 3px 12px rgba(0,0,0,0.4);
}
.g1e-dark .g1e-theme-toggle__icon{
  color:#fff;
}
.g1e-dark .g1e-theme-toggle:hover .g1e-theme-toggle__icon{
  color:var(--g1e-accent);
}
@media (min-width: 769px){ 
  .g1e-theme-toggle{ 
    bottom:96px; 
    right:24px;
    width:44px;
    height:44px;
  }
  .g1e-theme-toggle__icon{
    width:18px;
    height:18px;
  }
}
@media (max-width: 768px){
  .g1e-theme-toggle{
    right:16px;
    bottom:calc(env(safe-area-inset-bottom) + 180px);
  }
}

/* Floating buttons spacing - ensure they don't overlap */
@media (min-width: 769px){
  .g1e-theme-toggle{
    bottom:88px;
  }
  .g1e-chat{
    bottom:24px;
    right:24px;
  }
}
@media (max-width: 768px){
  /* Stack floating buttons vertically on mobile */
  .g1e-chat{
    bottom:16px;
    right:16px;
  }
  .g1e-theme-toggle{
    bottom:calc(env(safe-area-inset-bottom) + 180px);
    right:16px;
  }
  .g1e-fab{
    bottom:calc(env(safe-area-inset-bottom) + 100px);
    right:16px;
  }
}

/* Top search & category chips */
.g1e-topbar{ margin:8px 0 10px; }
.g1e-searchbar{ display:grid; grid-template-columns:1fr auto auto; gap:8px; align-items:center; }
.g1e-searchbar input[type="search"]{ border:1px solid var(--g1e-border); border-radius:999px; padding:.6rem .9rem; }
.g1e-suggest{ position:absolute; left:0; right:0; top:calc(100% + 6px); background:#fff; border:1px solid var(--g1e-border); border-radius:12px; box-shadow:var(--g1e-shadow); padding:6px; z-index:1002; }
.g1e-suggest__item{ 
  display:grid; 
  grid-template-columns:28px 1fr auto; 
  gap:8px; 
  align-items:center; 
  padding:8px 10px; 
  border-radius:8px; 
  text-decoration:none; 
  color:inherit; 
  transition:all .15s ease;
}
.g1e-suggest__item:hover,
.g1e-suggest__item.is-active{
  background:#f5f7fb;
  transform:translateX(2px);
}
.g1e-suggest__thumb{ 
  display:block;
  width:28px;
  height:28px;
  border-radius:6px;
  overflow:hidden;
  background:#f5f5f5;
  flex-shrink:0;
}
.g1e-suggest__thumb img{ 
  width:100%; 
  height:100%; 
  object-fit:cover; 
  display:block;
}
.g1e-suggest__title{ 
  font-size:14px; 
  font-weight:500;
  color:var(--g1e-fg);
  line-height:1.4;
}
.g1e-suggest__price{ 
  font-weight:700; 
  font-size:13px; 
  color:var(--g1e-fg);
  white-space:nowrap;
}
.g1e-suggest__empty{
  padding:16px;
  text-align:center;
  color:#94a3b8;
  font-size:14px;
}
.g1e-suggest[hidden]{ display:none !important; }

/* Global search modal */
.g1e-search-backdrop{ 
  position:fixed; 
  inset:0; 
  background:rgba(0,0,0,.55); 
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:0; 
  pointer-events:none; 
  transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1); 
  z-index:100010; 
}
.g1e-search-backdrop.is-open{ 
  opacity:1; 
  pointer-events:auto; 
}
.g1e-search-modal{ 
  position:fixed; 
  top:50%; 
  left:50%; 
  transform:translate(-50%, -50%) scale(.95); 
  width:min(720px, 94vw); 
  background:linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
  border:1px solid rgba(0,0,0,.08);
  border-radius:20px; 
  box-shadow:
    0 25px 80px rgba(0,0,0,.15),
    0 10px 40px rgba(0,0,0,.1),
    0 0 0 1px rgba(255,255,255,.5) inset;
  z-index:100011; 
  padding:24px; 
  opacity:0; 
  pointer-events:none; 
  transition:all .35s cubic-bezier(0.34, 1.56, 0.64, 1); 
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.g1e-search-modal.is-open{ 
  opacity:1; 
  pointer-events:auto; 
  transform:translate(-50%, -50%) scale(1); 
}
@media (max-width: 768px){
  .g1e-search-modal{
    top:10vh;
    transform:translateX(-50%) scale(.95);
    width:calc(100vw - 32px);
    padding:20px;
    border-radius:16px;
  }
  .g1e-search-modal.is-open{
    transform:translateX(-50%) scale(1);
  }
}
.g1e-searchform{ position:relative; display:flex; align-items:center; gap:8px; }
.g1e-searchform .g1e-search-input{ 
  flex:1; 
  border:2px solid rgba(0,0,0,.08); 
  border-radius:999px; 
  padding:.85rem 4rem .85rem 1.5rem; 
  font-size:17px; 
  background:linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
  color:var(--g1e-fg);
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  font-family:inherit;
  box-shadow:
    0 2px 8px rgba(0,0,0,.04),
    0 0 0 1px rgba(0,0,0,.02) inset;
}
.g1e-searchform .g1e-search-input:focus{
  outline:none;
  border-color:var(--g1e-accent);
  background:#fff;
  box-shadow:
    0 4px 16px rgba(255,212,0,.2),
    0 0 0 4px rgba(255,212,0,.08),
    0 2px 8px rgba(0,0,0,.06);
  transform:translateY(-1px);
}
.g1e-searchform .g1e-search-input::placeholder{
  color:#94a3b8;
  font-weight:400;
}
.g1e-search-submit{ 
  position:absolute; 
  right:52px; 
  top:50%; 
  transform:translateY(-50%); 
  background:transparent; 
  border:0; 
  padding:8px; 
  cursor:pointer; 
  color:#64748b; 
  display:flex;
  align-items:center;
  justify-content:center;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius:10px;
}
.g1e-search-submit:hover{
  background:linear-gradient(135deg, rgba(255,212,0,.15) 0%, rgba(255,212,0,.08) 100%);
  color:var(--g1e-accent);
  transform:translateY(-50%) scale(1.1);
}
.g1e-search-submit:active{
  transform:translateY(-50%) scale(.95);
}
.g1e-search-submit svg{
  width:20px;
  height:20px;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));
}
.g1e-search-close{ 
  position:absolute; 
  right:14px; 
  top:50%; 
  transform:translateY(-50%); 
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  background:transparent;
  border:0;
  cursor:pointer;
  color:#64748b;
  font-size:24px;
  line-height:1;
  font-weight:300;
}
.g1e-search-close:hover{
  background:rgba(239,68,68,.1);
  color:var(--g1e-danger);
  transform:translateY(-50%) rotate(90deg) scale(1.1);
}
.g1e-search-close:active{
  transform:translateY(-50%) rotate(90deg) scale(.9);
}
.g1e-searchform .g1e-suggest{ 
  position:absolute; 
  left:0; 
  right:0; 
  top:calc(100% + 12px); 
  background:linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
  border:1px solid rgba(0,0,0,.08);
  border-radius:16px; 
  box-shadow:
    0 20px 60px rgba(0,0,0,.12),
    0 8px 24px rgba(0,0,0,.08),
    0 0 0 1px rgba(255,255,255,.5) inset;
  padding:8px; 
  max-height:60vh; 
  overflow-y:auto;
  overflow-x:hidden;
  z-index:100012;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  animation:g1e-slideDown .3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@keyframes g1e-slideDown{
  from{
    opacity:0;
    transform:translateY(-10px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.g1e-searchform .g1e-suggest::-webkit-scrollbar{
  width:8px;
}
.g1e-searchform .g1e-suggest::-webkit-scrollbar-track{
  background:transparent;
  border-radius:4px;
}
.g1e-searchform .g1e-suggest::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.1) 100%);
  border-radius:4px;
  border:2px solid transparent;
  background-clip:padding-box;
}
.g1e-searchform .g1e-suggest::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,.15) 100%);
  background-clip:padding-box;
}
.g1e-btn--ghost{ background:#fff; border:1px solid var(--g1e-border); color:inherit; border-radius:999px; padding:.5rem .7rem; }
.g1e-cat-chips{ display:flex; gap:10px; flex-wrap:wrap; margin:6px 0 6px; }
.g1e-chip--icon{ display:inline-flex; align-items:center; gap:8px; }
.g1e-chip__icon{ width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; background:#f5f7fb; }

/* Bottom navigation */
.g1e-bottomnav{ position:fixed; left:0; right:0; bottom:0; background:#fff; border-top:1px solid var(--g1e-border); display:flex; justify-content:space-around; padding:8px 6px env(safe-area-inset-bottom); z-index:999; }
.g1e-bottomnav a{ display:flex; flex-direction:column; align-items:center; gap:2px; text-decoration:none; color:inherit; font-size:12px; }
.g1e-bottomnav a svg{ width:18px; height:18px; }
@media (min-width: 769px){ .g1e-bottomnav{ display:none; } }

/* Header search icon sizing */
.main-header-menu .g1e-search-menu{ 
  display:inline-flex;
  align-items:center;
  margin-left:4px;
  vertical-align:middle;
}
.main-header-menu .g1e-search-menu > a{ 
  display:inline-flex; 
  align-items:center; 
  justify-content:center;
  gap:0; 
  padding:.6rem .85rem; 
  min-height:44px;
  cursor:pointer;
  text-decoration:none;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius:10px;
  position:relative;
  background:linear-gradient(135deg, rgba(255,212,0,.08) 0%, rgba(255,212,0,.04) 100%);
  border:1.5px solid rgba(255,212,0,.25);
  box-shadow:0 2px 6px rgba(255,212,0,.15);
}
.main-header-menu .g1e-search-menu > a::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:10px;
  background:linear-gradient(135deg, rgba(255,212,0,.2) 0%, rgba(255,212,0,.12) 100%);
  opacity:0;
  transition:opacity .25s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events:none;
}
.main-header-menu .g1e-search-menu > a:hover{
  background:linear-gradient(135deg, rgba(255,212,0,.18) 0%, rgba(255,212,0,.1) 100%);
  border-color:var(--g1e-accent);
  transform:translateY(-2px);
  box-shadow:0 6px 16px rgba(255,212,0,.3), 0 2px 8px rgba(255,212,0,.2);
}
.main-header-menu .g1e-search-menu > a:hover::before{
  opacity:1;
}
.main-header-menu .g1e-search-menu > a:active{
  transform:translateY(0);
  box-shadow:0 2px 6px rgba(255,212,0,.2);
}
.main-header-menu .g1e-search-menu .g1e-icon{ 
  width:22px; 
  height:22px; 
  display:block;
  pointer-events:none;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  color:var(--g1e-accent);
  filter:drop-shadow(0 2px 3px rgba(255,212,0,.3));
  stroke-width:2.5;
}
.main-header-menu .g1e-search-menu > a:hover .g1e-icon{
  color:#ffd400;
  transform:scale(1.15) rotate(-8deg);
  filter:drop-shadow(0 3px 6px rgba(255,212,0,.5));
}
.main-header-menu .g1e-search-menu > a:active .g1e-icon{
  transform:scale(1.05) rotate(-4deg);
}
.ast-desktop .main-header-menu .g1e-search-menu .g1e-icon{ 
  width:22px; 
  height:22px; 
}
.main-header-menu .g1e-search-menu .screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border-width:0;
}
/* Professional menu item alignment */
.main-header-menu .menu-item{
  display:inline-flex;
  align-items:center;
  vertical-align:middle;
  flex-shrink:0;
}
.main-header-menu .menu-item:not(.g1e-brand):not(.g1e-cat-menu):not(.g1e-search-menu) > a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:.6rem 1rem;
  border-radius:8px;
  transition:all .2s ease;
  color:var(--g1e-fg);
  text-decoration:none;
  font-weight:500;
  font-size:14px;
  position:relative;
}
.main-header-menu .menu-item:not(.g1e-brand):not(.g1e-cat-menu):not(.g1e-search-menu) > a:hover{
  background:rgba(255,212,0,.08);
  color:var(--g1e-accent);
}
.main-header-menu .menu-item:not(.g1e-brand):not(.g1e-cat-menu):not(.g1e-search-menu) > a::after{
  content:'';
  position:absolute;
  bottom:8px;
  left:50%;
  transform:translateX(-50%) scaleX(0);
  width:80%;
  height:2px;
  background:var(--g1e-accent);
  border-radius:2px;
  transition:transform .25s cubic-bezier(0.4, 0, 0.2, 1);
}
.main-header-menu .menu-item:not(.g1e-brand):not(.g1e-cat-menu):not(.g1e-search-menu) > a:hover::after{
  transform:translateX(-50%) scaleX(1);
}
/* Brand logo in navbar - Professional placement */
.main-header-menu .g1e-brand{
  margin-right:auto;
  flex-shrink:0;
}
.main-header-menu .g1e-brand > a.g1e-logo{
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  font-family:"Outfit", sans-serif;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--g1e-fg);
  padding:.75rem 1rem;
  border-radius:12px;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  background:transparent;
}
.main-header-menu .g1e-brand > a.g1e-logo:hover{
  background:rgba(255,212,0,.08);
  transform:translateY(-1px);
}
.main-header-menu .g1e-logo__text{ 
  font-size:20px; 
  font-weight:800;
  text-transform:uppercase; 
  letter-spacing:.02em;
  line-height:1;
}
.main-header-menu .g1e-logo__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:26px;
  padding:0 10px;
  border-radius:8px;
  background:var(--g1e-accent);
  color:var(--g1e-fg);
  font-size:15px;
  font-weight:800;
  box-shadow:0 2px 8px rgba(255,212,0,.3), 0 1px 3px rgba(0,0,0,.1);
  line-height:1;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
}
.main-header-menu .g1e-brand > a.g1e-logo:hover .g1e-logo__badge{
  transform:scale(1.05);
  box-shadow:0 4px 12px rgba(255,212,0,.4), 0 2px 6px rgba(0,0,0,.15);
}
@media (min-width:1024px){
  .main-header-menu .g1e-logo__text{ font-size:22px; }
  .main-header-menu .g1e-logo__badge{ height:28px; font-size:16px; padding:0 12px; }
}
/* Responsive navbar adjustments */
@media (max-width: 768px){
  .main-header-menu .g1e-brand > a.g1e-logo{
    padding:.6rem .75rem;
  }
  .main-header-menu .g1e-logo__text{ 
    font-size:18px; 
  }
  .main-header-menu .g1e-logo__badge{ 
    height:22px; 
    font-size:13px; 
    padding:0 8px; 
  }
  .main-header-menu .g1e-cat-toggle{
    padding:.4rem .75rem;
    font-size:13px;
  }
  .ast-desktop .main-header-menu{ 
    gap:2px;
  }
  .main-header-menu .menu-item:not(.g1e-brand):not(.g1e-cat-menu):not(.g1e-search-menu) > a{
    padding:.5rem .75rem;
    font-size:13px;
  }
}

/* Navbar layout: Professional organization with proper spacing */
.ast-desktop .main-header-menu{ 
  display:flex; 
  align-items:center; 
  gap:4px;
  flex-wrap:nowrap;
  width:100%;
}
.ast-desktop .main-header-menu > li:not(.g1e-brand):not(.g1e-search-menu){
  margin-left:4px;
}
.ast-desktop .main-header-menu > li.g1e-search-menu{ 
  margin-left:auto; 
  margin-right:0;
}
.main-header-menu .g1e-cat-toggle{ 
  display:inline-flex; 
  align-items:center; 
  gap:8px; 
  background:#fff; 
  border:1.5px solid var(--g1e-border); 
  border-radius:10px; 
  padding:.5rem 1rem; 
  text-decoration:none; 
  color:inherit;
  font-weight:600;
  font-size:14px;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow:0 2px 6px rgba(0,0,0,.04);
  white-space:nowrap;
}
.main-header-menu .g1e-cat-toggle:hover{ 
  border-color:var(--g1e-accent); 
  background:rgba(255,212,0,.08);
  box-shadow:0 4px 12px rgba(255,212,0,.25);
  transform:translateY(-1px);
}
.main-header-menu .g1e-cat-toggle:active{
  transform:translateY(0);
}

/* Single column submenu for Info (vertical list) */
@media (min-width: 1024px){
  .ast-desktop .main-header-menu .g1e-info{ position:relative; }
  .ast-desktop .main-header-menu .g1e-info > .sub-menu{
    display:block !important;
    grid-template-columns:none !important;
    min-width:200px !important;
    max-width:280px !important;
    padding:12px 0 !important;
    border:1px solid var(--g1e-border);
    border-radius:12px;
    box-shadow:var(--g1e-shadow);
    background:#fff;
    left:0; right:auto; top:calc(100% + 8px);
  }
  .ast-desktop .main-header-menu .g1e-info > .sub-menu > li{ 
    margin:0 !important; 
    display:block !important;
    width:100% !important;
    float:none !important;
  }
  .ast-desktop .main-header-menu .g1e-info > .sub-menu > li > a{
    display:block !important; 
    padding:.5rem 1rem !important; 
    border-radius:0 !important; 
    text-decoration:none; 
    color:inherit;
    white-space:normal !important; 
    word-break:normal !important; 
    line-height:1.5; 
    font-size:14px; 
    font-weight:500;
    transition:all .2s ease;
    width:100%;
    box-sizing:border-box;
  }
  .ast-desktop .main-header-menu .g1e-info > .sub-menu > li > a:hover{ 
    background:#f5f7fb; 
    color:var(--g1e-accent);
  }
  .ast-desktop .main-header-menu .g1e-info > .sub-menu > li:first-child > a{
    border-top-left-radius:12px;
    border-top-right-radius:12px;
  }
  .ast-desktop .main-header-menu .g1e-info > .sub-menu > li:last-child > a{
    border-bottom-left-radius:12px;
    border-bottom-right-radius:12px;
  }
}

/* Hide Astra default title/logo text only; keep container visible for our brand */
.site-title, .custom-logo-link{ display:none !important; }

/* Brand logo when placed in Astra site-identity (left column) */
.ast-site-identity .g1e-logo, .site-branding .g1e-logo{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  font-family:"Outfit", sans-serif;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--g1e-fg);
  padding:.6rem 0;
}
.ast-site-identity .g1e-logo__text, .site-branding .g1e-logo__text{ font-size:20px; text-transform:uppercase; letter-spacing:.02em; }
.ast-site-identity .g1e-logo__badge, .site-branding .g1e-logo__badge{
  display:inline-flex;
  align-items:center; justify-content:center;
  height:24px; padding:0 8px; border-radius:8px; background:var(--g1e-accent);
  color:var(--g1e-fg); font-size:15px; font-weight:800;
  box-shadow:0 2px 6px rgba(0,0,0,.08), 0 2px 6px rgba(255,212,0,.25);
}

/* Footer */
.ast-footer-copyright{ display:none !important; }
.g1e-footer{ 
  background:var(--g1e-bg); 
  color:var(--g1e-fg); 
  margin-top:32px; 
  padding:40px 0 16px; 
  border-top:1px solid var(--g1e-border);
  position:relative;
  z-index:200;
  text-align:center;
}
.g1e-footer a{ color:var(--g1e-fg); text-decoration:none; }
.g1e-footer a:hover{ color:var(--g1e-accent-2); text-decoration:underline; }
.g1e-footer__grid{ 
  display:grid; 
  grid-template-columns:1fr; 
  gap:32px; 
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}
@media (min-width:640px){ 
  .g1e-footer__grid{ 
    grid-template-columns:repeat(2,minmax(0,1fr)); 
    text-align:left;
    gap:32px 24px;
  } 
}
@media (min-width:1024px){ 
  .g1e-footer__grid{ 
    grid-template-columns:1.2fr 1fr 1fr 1.2fr; 
    text-align:left;
    gap:40px 32px;
  } 
}
/* Remove list dots and improve footer lists */
.g1e-footer ul{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}
.g1e-footer li{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}
.g1e-footer__brand .g1e-footer__logo{ 
  font-family:"Outfit", sans-serif; 
  font-size:24px; 
  font-weight:800; 
  letter-spacing:-.02em; 
  margin:0 0 8px;
}
.g1e-footer__brand .g1e-footer__logo span{ color:var(--g1e-accent); }
.g1e-footer__tag{ 
  margin-top:8px; 
  color:var(--g1e-muted); 
  font-size:14px; 
  line-height:1.6;
}
.g1e-footer__social{ 
  display:flex; 
  gap:12px; 
  margin-top:16px; 
  list-style:none;
  padding:0;
}
.g1e-footer__social li{
  margin:0;
  padding:0;
  list-style:none;
}
.g1e-footer__social .g1e-icon{ width:20px; height:20px; color:var(--g1e-muted); }
.g1e-footer__social a:hover .g1e-icon{ color:var(--g1e-accent-2); }
.g1e-footer__col h4, .g1e-footer__news h4{ 
  font-size:14px; 
  text-transform:uppercase; 
  letter-spacing:.08em; 
  color:var(--g1e-fg); 
  margin:0 0 16px; 
  font-weight:700;
  font-family:"Outfit", sans-serif;
}
.g1e-footer__links{ 
  display:grid; 
  gap:8px; 
  font-size:14px;
  list-style:none;
  padding:0;
  margin:0;
}
.g1e-footer__links li{
  margin:0;
  padding:0;
  list-style:none;
}
.g1e-footer__links a{
  display:block;
  padding:4px 0;
  transition:all .2s ease;
}
.g1e-footer__links a:hover{
  color:var(--g1e-accent);
  padding-left:4px;
}
.g1e-footer__news p{ color:var(--g1e-muted); font-size:14px; margin:0 0 16px; line-height:1.6; }
.g1e-footer__form{ display:flex; gap:8px; flex-wrap:wrap; }
.g1e-footer__form input[type=email]{ 
  flex:1; 
  min-width:200px;
  border:1px solid var(--g1e-border); 
  background:#fff; 
  color:var(--g1e-fg); 
  border-radius:999px; 
  padding:.6rem .9rem; 
  font-size:14px;
}
.g1e-footer__form input[type=email]:focus{
  outline:none;
  border-color:var(--g1e-accent);
  box-shadow:0 0 0 3px rgba(255,212,0,.1);
}
.g1e-footer__hint{ display:block; margin-top:12px; color:var(--g1e-muted); font-size:12px; line-height:1.5; }
.g1e-footer__bottom{ 
  margin-top:32px; 
  padding-top:20px; 
  border-top:1px solid var(--g1e-border); 
  display:flex; 
  justify-content:space-between; 
  align-items:center; 
  gap:16px; 
  flex-wrap:wrap; 
  color:var(--g1e-muted);
  text-align:center;
  font-size:13px;
}
.g1e-footer__legal{ 
  display:flex; 
  gap:16px; 
  flex-wrap:wrap;
  justify-content:center;
  list-style:none;
  padding:0;
  margin:0;
}
.g1e-footer__legal li{
  margin:0;
  padding:0;
  list-style:none;
}
/* Responsive footer adjustments */
@media (max-width: 768px){
  .g1e-footer{ 
    padding:32px 0 20px; 
  }
  .g1e-footer__grid{ 
    gap:28px;
    padding:0 16px;
  }
  .g1e-footer__brand .g1e-footer__logo{ 
    font-size:20px; 
  }
  .g1e-footer__col h4, .g1e-footer__news h4{ 
    font-size:13px; 
    margin-bottom:12px;
  }
  .g1e-footer__links{ 
    gap:6px; 
    font-size:13px;
  }
  .g1e-footer__bottom{ 
    flex-direction:column; 
    text-align:center; 
    gap:12px;
    margin-top:24px;
    padding-top:16px;
  }
  .g1e-footer__legal{ 
    justify-content:center;
    gap:12px;
  }
  .g1e-footer__form{ 
    flex-direction:column; 
  }
  .g1e-footer__form input[type=email]{ 
    width:100%;
    min-width:auto;
  }
}

/* Contact Form 7 Styling */
.g1e-kontakt-page{
  padding:60px 0;
  min-height:60vh;
}
.g1e-kontakt-header{
  margin-bottom:48px;
  text-align:center;
}
.g1e-kontakt-content{
  max-width:680px;
  margin:0 auto;
}

/* Contact Form 7 - Form Container */
.wpcf7{
  background:var(--g1e-bg);
  border:1px solid var(--g1e-border);
  border-radius:var(--g1e-radius);
  padding:32px;
  box-shadow:var(--g1e-shadow);
}
.wpcf7-form{
  display:grid;
  gap:20px;
}

/* Contact Form 7 - Form Groups */
.wpcf7-form-control-wrap{
  display:block;
  width:100%;
}
.wpcf7-form p{
  margin:0;
  display:grid;
  gap:8px;
}

/* Contact Form 7 - Labels */
.wpcf7-form label{
  display:block;
  font-size:14px;
  font-weight:600;
  color:var(--g1e-fg);
  margin-bottom:6px;
  font-family:"Poppins", sans-serif;
}
.wpcf7-form .wpcf7-form-control-wrap label{
  font-weight:500;
}

/* Contact Form 7 - Input Fields */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="date"],
.wpcf7-form textarea,
.wpcf7-form select{
  width:100%;
  padding:.75rem 1rem;
  border:2px solid var(--g1e-border);
  border-radius:10px;
  background:var(--g1e-bg);
  color:var(--g1e-fg);
  font-size:15px;
  font-family:"Poppins", sans-serif;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  box-sizing:border-box;
}
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="url"]:focus,
.wpcf7-form input[type="number"]:focus,
.wpcf7-form input[type="date"]:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus{
  outline:none;
  border-color:var(--g1e-accent);
  box-shadow:0 0 0 4px rgba(255,212,0,.1);
  background:#fff;
}
.wpcf7-form textarea{
  min-height:140px;
  resize:vertical;
  font-family:"Poppins", sans-serif;
  line-height:1.6;
}
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder{
  color:var(--g1e-muted);
  opacity:.7;
}

/* Contact Form 7 - Submit Button */
.wpcf7-form input[type="submit"],
.wpcf7-form button[type="submit"],
.wpcf7-submit{
  background:var(--g1e-accent) !important;
  color:var(--g1e-fg) !important;
  border:none !important;
  border-radius:10px !important;
  padding:.75rem 1.25rem !important;
  font-size:16px;
  font-weight:600 !important;
  font-family:"Poppins", sans-serif;
  cursor:pointer;
  transition:all .2s ease;
  text-transform:none;
  letter-spacing:0;
  width:100%;
  margin-top:8px;
}
.wpcf7-form input[type="submit"]:hover,
.wpcf7-form button[type="submit"]:hover,
.wpcf7-submit:hover{
  filter:saturate(1.05) brightness(1.03);
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(255,212,0,0.3);
}
.wpcf7-form input[type="submit"]:active,
.wpcf7-form button[type="submit"]:active,
.wpcf7-submit:active{
  transform:translateY(0);
}

/* Contact Form 7 - Checkbox and Radio */
.wpcf7-form input[type="checkbox"],
.wpcf7-form input[type="radio"]{
  width:auto;
  margin-right:8px;
  accent-color:var(--g1e-accent);
  cursor:pointer;
}
.wpcf7-form .wpcf7-list-item{
  display:flex;
  align-items:center;
  margin:6px 0;
}
.wpcf7-form .wpcf7-list-item label{
  margin:0;
  font-weight:400;
  cursor:pointer;
}

/* Contact Form 7 - Validation Messages */
.wpcf7-validation-errors,
.wpcf7-mail-sent-ok,
.wpcf7-mail-sent-ng,
.wpcf7-spam,
.wpcf7-not-valid-tip{
  padding:12px 16px;
  border-radius:8px;
  font-size:14px;
  font-weight:500;
  margin:8px 0;
  font-family:"Poppins", sans-serif;
}
.wpcf7-validation-errors{
  background:rgba(255,77,77,.1);
  border:1px solid var(--g1e-danger);
  color:var(--g1e-danger);
}
.wpcf7-mail-sent-ok{
  background:rgba(46,204,113,.1);
  border:1px solid var(--g1e-success);
  color:var(--g1e-success);
}
.wpcf7-mail-sent-ng,
.wpcf7-spam{
  background:rgba(255,77,77,.1);
  border:1px solid var(--g1e-danger);
  color:var(--g1e-danger);
}
.wpcf7-not-valid-tip{
  color:var(--g1e-danger);
  font-size:13px;
  margin-top:4px;
  display:block;
}
.wpcf7-form-control-wrap.wpcf7-not-valid .wpcf7-form-control{
  border-color:var(--g1e-danger);
  background:rgba(255,77,77,.02);
}

/* Contact Form 7 - Loading State */
.wpcf7-form .ajax-loader{
  display:inline-block;
  margin-left:12px;
  vertical-align:middle;
}
.wpcf7-form input[type="submit"]:disabled,
.wpcf7-submit:disabled{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
}

/* Contact Form 7 - File Upload */
.wpcf7-form input[type="file"]{
  padding:.6rem;
  border:2px dashed var(--g1e-border);
  background:var(--g1e-bg-alt);
  border-radius:8px;
  cursor:pointer;
  transition:all .25s ease;
}
.wpcf7-form input[type="file"]:hover{
  border-color:var(--g1e-accent);
  background:rgba(255,212,0,.05);
}

/* Contact Form 7 - Select Dropdown */
.wpcf7-form select{
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23222' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 1rem center;
  padding-right:2.5rem;
  cursor:pointer;
}

/* Dark Mode - Contact Form 7 */
body.g1e-dark .wpcf7{
  background:linear-gradient(180deg, #12172a 0%, #0f131f 100%);
  border-color:rgba(255,255,255,.1);
  box-shadow:0 8px 24px rgba(0,0,0,.3);
}
body.g1e-dark .wpcf7-form input[type="text"],
body.g1e-dark .wpcf7-form input[type="email"],
body.g1e-dark .wpcf7-form input[type="tel"],
body.g1e-dark .wpcf7-form input[type="url"],
body.g1e-dark .wpcf7-form input[type="number"],
body.g1e-dark .wpcf7-form input[type="date"],
body.g1e-dark .wpcf7-form textarea,
body.g1e-dark .wpcf7-form select{
  background:linear-gradient(180deg, #1f2435 0%, #1a1f2e 100%);
  border-color:rgba(255,255,255,.1);
  color:#e5e7eb;
}
body.g1e-dark .wpcf7-form input[type="text"]:focus,
body.g1e-dark .wpcf7-form input[type="email"]:focus,
body.g1e-dark .wpcf7-form input[type="tel"]:focus,
body.g1e-dark .wpcf7-form input[type="url"]:focus,
body.g1e-dark .wpcf7-form input[type="number"]:focus,
body.g1e-dark .wpcf7-form input[type="date"]:focus,
body.g1e-dark .wpcf7-form textarea:focus,
body.g1e-dark .wpcf7-form select:focus{
  background:#1f2435;
  border-color:var(--g1e-accent);
  box-shadow:0 0 0 4px rgba(255,212,0,.15);
}
body.g1e-dark .wpcf7-form input::placeholder,
body.g1e-dark .wpcf7-form textarea::placeholder{
  color:#64748b;
}
body.g1e-dark .wpcf7-form label{
  color:#e5e7eb;
}
body.g1e-dark .wpcf7-form input[type="file"]{
  background:#1f2435;
  border-color:rgba(255,255,255,.1);
}
body.g1e-dark .wpcf7-form select{
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23e5e7eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Responsive - Contact Form 7 */
@media (max-width: 768px){
  .g1e-kontakt-page{
    padding:40px 0;
  }
  .wpcf7{
    padding:24px 20px;
    border-radius:16px;
  }
  .wpcf7-form{
    gap:18px;
  }
}

/* Kushtet (Terms) Page Styling */
.g1e-kushtet-page{
  padding:60px 0;
  min-height:60vh;
}
.g1e-kushtet-header{
  margin-bottom:48px;
  text-align:center;
}
.g1e-kushtet-content{
  max-width:900px;
  margin:0 auto;
}
.g1e-kushtet-sections{
  display:grid;
  gap:24px;
}
.g1e-kushtet-section{
  background:var(--g1e-bg);
  border:1px solid var(--g1e-border);
  border-radius:var(--g1e-radius);
  padding:28px;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
}
.g1e-kushtet-section:hover{
  box-shadow:0 4px 16px rgba(0,0,0,.08);
  transform:translateY(-2px);
  border-color:rgba(255,212,0,.3);
}
.g1e-kushtet-section h2{
  font-size:22px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  margin:0 0 16px;
  display:flex;
  align-items:center;
  gap:12px;
}
.g1e-kushtet-section h2 span{
  width:6px;
  height:6px;
  border-radius:50%;
  flex-shrink:0;
}
.g1e-kushtet-section ul{
  margin:12px 0;
  padding-left:24px;
  list-style:none;
}
.g1e-kushtet-section ul li{
  margin:8px 0;
  padding-left:24px;
  position:relative;
  color:var(--g1e-fg);
  line-height:1.6;
}
.g1e-kushtet-section ul li span{
  position:absolute;
  left:0;
  font-weight:700;
}
.g1e-kushtet-section p{
  margin:0 0 12px;
  color:var(--g1e-fg);
  line-height:1.7;
  font-size:15px;
}
.g1e-kushtet-section a{
  color:var(--g1e-accent-2);
  text-decoration:none;
  transition:all .2s ease;
}
.g1e-kushtet-section a:hover{
  color:var(--g1e-accent);
  text-decoration:underline;
}
.g1e-kushtet-mission{
  background:linear-gradient(135deg, rgba(255,212,0,.12) 0%, rgba(0,153,255,.08) 100%);
  border:2px solid var(--g1e-accent);
  border-radius:var(--g1e-radius);
  padding:32px;
  margin-bottom:40px;
  box-shadow:0 4px 16px rgba(255,212,0,.15);
  position:relative;
  overflow:hidden;
}
.g1e-kushtet-mission::before{
  content:'';
  position:absolute;
  top:-50%;
  right:-50%;
  width:200%;
  height:200%;
  background:radial-gradient(circle, rgba(255,212,0,.1) 0%, transparent 70%);
  animation:g1e-pulse 4s ease-in-out infinite;
}
.g1e-kushtet-mission > *{
  position:relative;
  z-index:1;
}
@keyframes g1e-pulse{
  0%, 100%{ opacity:.5; transform:scale(1); }
  50%{ opacity:.8; transform:scale(1.1); }
}
.g1e-kushtet-mission h2{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
}
.g1e-kushtet-mission .g1e-icon-box{
  width:48px;
  height:48px;
  background:var(--g1e-accent);
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  box-shadow:0 4px 12px rgba(255,212,0,.3);
}
.g1e-kushtet-mission .g1e-icon-box svg{
  color:var(--g1e-fg);
}

/* Dark Mode - Kushtet Page */
body.g1e-dark .g1e-kushtet-section{
  background:linear-gradient(180deg, #12172a 0%, #0f131f 100%);
  border-color:rgba(255,255,255,.1);
  box-shadow:0 2px 8px rgba(0,0,0,.2);
}
body.g1e-dark .g1e-kushtet-section:hover{
  border-color:rgba(255,212,0,.4);
  box-shadow:0 4px 16px rgba(0,0,0,.3);
}
body.g1e-dark .g1e-kushtet-mission{
  background:linear-gradient(135deg, rgba(255,212,0,.15) 0%, rgba(0,153,255,.1) 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 4px 16px rgba(255,212,0,.2);
}
body.g1e-dark .g1e-kushtet-section h2,
body.g1e-dark .g1e-kushtet-section p,
body.g1e-dark .g1e-kushtet-section li{
  color:#e5e7eb;
}

/* Responsive - Kushtet Page */
@media (max-width: 768px){
  .g1e-kushtet-page{
    padding:40px 0;
  }
  .g1e-kushtet-section{
    padding:24px 20px;
  }
  .g1e-kushtet-section h2{
    font-size:20px;
  }
  .g1e-kushtet-mission{
    padding:24px 20px;
  }
}

/* Chat bubble */
.g1e-chat{ 
  position:fixed; 
  right:20px; 
  bottom:calc(env(safe-area-inset-bottom) + 20px); 
  width:56px; 
  height:56px; 
  border-radius:50%; 
  border:none; 
  background:#111; 
  color:#fff; 
  display:flex; 
  align-items:center; 
  justify-content:center; 
  box-shadow:0 4px 16px rgba(0,0,0,0.3), 0 2px 8px rgba(0,0,0,0.2); 
  z-index:1002;
  cursor:pointer;
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
  padding:0;
  margin:0;
}
.g1e-chat:hover{
  transform:scale(1.1) translateY(-2px);
  box-shadow:0 6px 24px rgba(0,0,0,0.4), 0 3px 12px rgba(0,0,0,0.3);
  background:#1a1a1a;
}
.g1e-chat:active{
  transform:scale(0.95);
}
.g1e-chat .g1e-icon{
  width:24px;
  height:24px;
  display:block;
  color:#fff;
  fill:currentColor;
}
.g1e-chat-panel{ 
  position:fixed; 
  right:20px; 
  bottom:calc(env(safe-area-inset-bottom) + 84px); 
  width:min(380px, 92vw); 
  max-width:90vw;
  background:#fff; 
  border:1px solid var(--g1e-border); 
  border-radius:16px; 
  box-shadow:0 8px 32px rgba(0,0,0,0.15), 0 4px 16px rgba(0,0,0,0.1); 
  opacity:0; 
  transform:translateY(8px) scale(0.95); 
  pointer-events:none; 
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1); 
  z-index:1002;
  overflow:hidden;
}
.g1e-chat-panel[aria-hidden="false"]{ 
  opacity:1; 
  transform:translateY(0) scale(1); 
  pointer-events:auto; 
}
@media (min-width: 769px){
  .g1e-chat{
    right:24px;
    bottom:24px;
    width:52px;
    height:52px;
  }
  .g1e-chat .g1e-icon{
    width:22px;
    height:22px;
  }
  .g1e-chat-panel{
    right:24px;
    bottom:88px;
    width:380px;
  }
}
@media (max-width: 768px){
  .g1e-chat{
    right:16px;
    bottom:16px;
  }
  .g1e-chat-panel{
    right:16px;
    bottom:88px;
    width:calc(100vw - 32px);
    max-width:360px;
  }
}
.g1e-chat-panel header{ 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:8px; 
  padding:14px 16px; 
  border-bottom:1px solid var(--g1e-border); 
  background:#fff;
}
.g1e-chat-panel header strong{
  font-size:16px;
  font-weight:700;
  color:var(--g1e-fg);
}
.g1e-chat-body{ 
  padding:16px; 
  font-size:14px; 
  line-height:1.6;
}
.g1e-chat-body p{
  margin:0 0 12px;
}
.g1e-chat-body p:last-child{
  margin-bottom:0;
}

/* Layout container */
.g1e-container{ max-width:1200px; margin:0 auto; padding:0 20px; }
@media (min-width:1400px){
  .g1e-container{ max-width:1320px; }
}

/* Product card skeleton & loading states */
.g1e-card__thumb{ position:relative; }
.g1e-card__thumb::before{ 
  content:""; 
  position:absolute; 
  inset:0; 
  background:linear-gradient(90deg,#f1f5f9 8%, #e9eef5 18%, #f1f5f9 33%); 
  background-size:1200px 100%; 
  animation:g1e-shimmer 1.1s infinite; 
  pointer-events:none; 
  z-index:1;
  border-radius:var(--g1e-radius) var(--g1e-radius) 0 0;
}
.g1e-card__thumb.is-loaded::before{ 
  opacity:0; 
  visibility:hidden; 
  transition:opacity .3s ease, visibility .3s ease;
}
.g1e-card__image{ 
  transition:opacity .4s ease;
}
.g1e-card__image[loading="lazy"]{ 
  opacity:0.8;
}
.g1e-card__image[loading="eager"]{ 
  opacity:1;
}
.g1e-card__thumb.is-loaded .g1e-card__image{ 
  opacity:1;
}
.g1e-card__thumb.has-error{ 
  background:#fee;
}
.g1e-card__thumb.has-error .g1e-card__image{ 
  filter:grayscale(50%);
  opacity:0.6;
}
@keyframes g1e-shimmer{ 
  0%{ background-position:-1200px 0 } 
  100%{ background-position:1200px 0 } 
}

/* Active state when categories drawer open */
.g1e-cat-toggle[aria-expanded="true"]{ background:var(--g1e-gradient); color:#fff; border-color:transparent; }

/* Search suggestions dropdown */
.g1e-searchbar{ position:relative; }
.g1e-suggest{ position:absolute; left:0; right:0; top:calc(100% + 6px); background:#fff; border:1px solid var(--g1e-border); border-radius:12px; box-shadow:var(--g1e-shadow); padding:6px; z-index:1002; }
.g1e-suggest__item{ 
  display:grid; 
  grid-template-columns:28px 1fr auto; 
  gap:8px; 
  align-items:center; 
  padding:8px 10px; 
  border-radius:8px; 
  text-decoration:none; 
  color:inherit; 
  transition:all .15s ease;
}
.g1e-suggest__item:hover,
.g1e-suggest__item.is-active{
  background:#f5f7fb;
  transform:translateX(2px);
}
.g1e-suggest__thumb{ 
  display:block;
  width:28px;
  height:28px;
  border-radius:6px;
  overflow:hidden;
  background:#f5f5f5;
  flex-shrink:0;
}
.g1e-suggest__thumb img{ 
  width:100%; 
  height:100%; 
  object-fit:cover; 
  display:block;
}
.g1e-suggest__title{ 
  font-size:14px; 
  font-weight:500;
  color:var(--g1e-fg);
  line-height:1.4;
}
.g1e-suggest__price{ 
  font-weight:700; 
  font-size:13px; 
  color:var(--g1e-fg);
  white-space:nowrap;
}
.g1e-suggest__empty{
  padding:16px;
  text-align:center;
  color:#94a3b8;
  font-size:14px;
}
.g1e-suggest[hidden]{ display:none !important; }

/* Categories drawer nested */
/* Category Items - Enhanced Styling */
.g1e-cat-item,
.g1e-cat-link{
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:space-between;
  padding:.75rem 1rem;
  border:1.5px solid rgba(0,0,0,.08);
  border-radius:12px;
  cursor:pointer;
  user-select:none;
  background:#fff;
  transition:all .25s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
}
.g1e-cat-link{
  text-decoration:none;
  color:inherit;
}
.g1e-cat-item::before,
.g1e-cat-link::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,212,0,.1) 0%, rgba(255,212,0,.05) 100%);
  opacity:0;
  transition:opacity .25s ease;
  pointer-events:none;
}
.g1e-cat-item:hover,
.g1e-cat-link:hover{
  border-color:var(--g1e-accent);
  background:linear-gradient(135deg, #fff 0%, #fefefe 100%);
  box-shadow:0 4px 12px rgba(255,212,0,.15), 0 2px 4px rgba(0,0,0,.05);
  transform:translateY(-1px);
}
.g1e-cat-item:hover::before,
.g1e-cat-link:hover::before{
  opacity:1;
}
.g1e-cat-item:active,
.g1e-cat-link:active{
  transform:translateY(0);
  box-shadow:0 2px 6px rgba(255,212,0,.1);
}
.g1e-cat-item[aria-expanded="true"]{
  background:linear-gradient(135deg, rgba(255,212,0,.08) 0%, rgba(255,212,0,.03) 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 2px 8px rgba(255,212,0,.12);
}
.g1e-cat-item[aria-expanded="true"]::before{
  opacity:1;
}
/* Active category state */
.g1e-cat-item.is-active,
.g1e-cat-link.is-active{
  background:linear-gradient(135deg, rgba(255,212,0,.15) 0%, rgba(255,212,0,.08) 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 2px 10px rgba(255,212,0,.2), 0 1px 4px rgba(255,212,0,.15);
}
.g1e-cat-item.is-active::before,
.g1e-cat-link.is-active::before{
  opacity:1;
}
.g1e-cat-item.is-active .g1e-cat-label,
.g1e-cat-link.is-active .g1e-cat-label{
  color:#111;
  font-weight:700;
}
.g1e-cat-item.is-active .g1e-cat-count,
.g1e-cat-link.is-active .g1e-cat-count{
  background:linear-gradient(135deg, var(--g1e-accent) 0%, #ffd700 100%);
  color:#111;
  box-shadow:0 2px 6px rgba(255,212,0,.4);
}
.g1e-cat-item.is-active .g1e-cat-chevron{
  color:var(--g1e-accent);
}
.g1e-cat-label{
  font-weight:600;
  font-size:15px;
  color:var(--g1e-fg);
  letter-spacing:-0.01em;
  flex:1;
  min-width:0;
}
.g1e-cat-count{
  background:linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
  color:#475569;
  border-radius:999px;
  padding:.25rem .65rem;
  font-size:11px;
  font-weight:700;
  letter-spacing:0.02em;
  box-shadow:0 1px 2px rgba(0,0,0,.05);
  transition:all .2s ease;
}
.g1e-cat-item:hover .g1e-cat-count,
.g1e-cat-link:hover .g1e-cat-count{
  background:linear-gradient(135deg, var(--g1e-accent) 0%, #ffd700 100%);
  color:#111;
  box-shadow:0 2px 4px rgba(255,212,0,.3);
  transform:scale(1.05);
}
.g1e-cat-chevron{
  color:#94a3b8;
  font-size:18px;
  font-weight:400;
  transition:transform .3s cubic-bezier(0.4, 0, 0.2, 1), color .2s ease;
  width:20px;
  height:20px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.g1e-cat-item[aria-expanded="true"] .g1e-cat-chevron{
  transform:rotate(90deg);
  color:var(--g1e-accent);
}
/* Subcategories - Enhanced Styling */
.g1e-cat-item[aria-expanded="false"] + .g1e-cat-children{
  display:none;
}
.g1e-cat-children{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  padding:12px 0 16px 16px;
  margin-left:8px;
  border-left:2px solid rgba(255,212,0,.2);
  animation:slideDown .3s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes slideDown{
  from{
    opacity:0;
    transform:translateY(-8px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}
.g1e-cat-children .g1e-cat-child{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:.6rem .85rem;
  border:1.5px solid rgba(0,0,0,.06);
  border-radius:10px;
  text-decoration:none;
  color:inherit;
  background:#fff;
  transition:all .2s cubic-bezier(0.4, 0, 0.2, 1);
  position:relative;
  overflow:hidden;
}
.g1e-cat-child::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:var(--g1e-accent);
  transform:scaleY(0);
  transition:transform .2s ease;
}
.g1e-cat-child:hover{
  background:linear-gradient(135deg, #fefefe 0%, #fafafa 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 2px 8px rgba(255,212,0,.1);
  transform:translateX(4px);
  padding-left:1rem;
}
.g1e-cat-child:hover::before{
  transform:scaleY(1);
}
.g1e-cat-child__label{
  font-size:14px;
  font-weight:500;
  color:var(--g1e-fg);
  flex:1;
  min-width:0;
}
.g1e-cat-child__count{
  font-size:11px;
  font-weight:600;
  color:#64748b;
  background:rgba(0,0,0,.04);
  border-radius:999px;
  padding:.15rem .5rem;
  transition:all .2s ease;
}
.g1e-cat-child:hover .g1e-cat-child__count{
  background:rgba(255,212,0,.2);
  color:#111;
}
/* Active child category */
.g1e-cat-child.is-active{
  background:linear-gradient(135deg, rgba(255,212,0,.12) 0%, rgba(255,212,0,.06) 100%);
  border-color:var(--g1e-accent);
  box-shadow:0 2px 8px rgba(255,212,0,.15);
  padding-left:1rem;
}
.g1e-cat-child.is-active::before{
  transform:scaleY(1);
}
.g1e-cat-child.is-active .g1e-cat-child__label{
  color:#111;
  font-weight:600;
}
.g1e-cat-child.is-active .g1e-cat-child__count{
  background:rgba(255,212,0,.3);
  color:#111;
  font-weight:700;
}
.g1e-cat-link .g1e-cat-count{
  margin-left:auto;
}

/* Pinned categories sidebar (desktop) - Normal positioning, flows with content */
@media (min-width:1024px){
  body.g1e-cats-pinned .g1e-cats-backdrop{ display:none !important; }
  body.g1e-cats-pinned .g1e-cats-panel{
    transform:none !important;
    position:relative;
    left:auto;
    top:auto;
    height:auto;
    width:280px;
    max-width:280px;
    border-right:1px solid rgba(0,0,0,.08);
    border-radius:0;
    box-shadow:2px 0 16px rgba(0,0,0,.04);
    z-index:50;
    background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
    overflow:visible;
    display:flex;
    flex-direction:column;
    float:left;
    margin-right:20px;
  }
  /* Shift only content/footer, not the header */
  body.g1e-cats-pinned{ padding-left:0 !important; }
  body.g1e-cats-pinned .site-content{
    display:flex;
    align-items:flex-start;
  }
  body.g1e-cats-pinned .site-content > *:not(.g1e-cats-panel){
    flex:1;
    margin-left:0;
  }
  body.g1e-cats-pinned .g1e-shop-wrapper,
  body.g1e-cats-pinned .g1e-container{
    margin-left:0;
    flex:1;
  }
  body.g1e-cats-pinned .site-footer{
    margin-left:0;
    clear:both;
    margin-top:40px;
  }
  /* Ensure panel is hidden when not pinned */
  body:not(.g1e-cats-pinned) .g1e-cats-panel{
    position:fixed;
  }
  @media (min-width:1280px){
    body.g1e-cats-pinned .g1e-cats-panel{
      width:300px;
      max-width:300px;
      margin-right:20px;
    }
  }
  body.g1e-cats-pinned .g1e-cats-panel__header{
    position:relative;
    background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
    z-index:10;
    border-bottom:1px solid rgba(0,0,0,.06);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    padding:20px 20px;
    box-shadow:0 2px 8px rgba(0,0,0,.04);
  }
  body.g1e-cats-pinned .g1e-cats-panel__header .g1e-icon-btn{ display:none !important; }
  body.g1e-cats-pinned .g1e-cats-panel__header strong{
    font-size:18px;
    gap:10px;
  }
  body.g1e-cats-pinned .g1e-cats-panel__header strong::before{
    width:3px;
    height:20px;
  }
  body.g1e-cats-pinned .g1e-cats-panel__header-content{
    gap:12px;
  }
  body.g1e-cats-pinned .g1e-cats-search{
    padding:0 20px 12px;
    margin-bottom:8px;
  }
  body.g1e-cats-pinned .g1e-cats-search-input{
    padding:.6rem 2.5rem .6rem .9rem;
    font-size:13px;
  }
  body.g1e-cats-pinned .g1e-cats-search-icon{
    right:32px;
    width:16px;
    height:16px;
  }
  body.g1e-cats-pinned .g1e-cats-grid{
    grid-template-columns:1fr;
    gap:8px;
    padding:12px 20px 20px;
  }
  body.g1e-cats-pinned .g1e-cats-panel__body{
    padding:0;
    min-height:0;
    flex:1;
  }
  body.g1e-cats-pinned .g1e-cat-item,
  body.g1e-cats-pinned .g1e-cat-link{
    padding:.65rem .9rem;
    margin-bottom:0;
  }
  body.g1e-cats-pinned .g1e-cat-item[aria-expanded="true"]{
    background:linear-gradient(135deg, rgba(255,212,0,.08) 0%, rgba(255,212,0,.03) 100%);
  }
  body.g1e-cats-pinned .g1e-cat-children{
    margin:8px 0 12px 12px;
    padding:10px 0 12px 16px;
    border-left:2px solid rgba(255,212,0,.25);
  }
  body.g1e-cats-pinned .g1e-cat-menu{ display:none !important; }
}

/* Favorites panel - Enhanced */
.g1e-fav-backdrop{ 
  position:fixed; 
  inset:0; 
  background:rgba(0,0,0,.6); 
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  opacity:0; 
  pointer-events:none; 
  transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1), backdrop-filter .3s ease; 
  z-index:9999; 
}
.g1e-fav-backdrop.is-open{ 
  opacity:1; 
  pointer-events:auto; 
}
.g1e-fav-panel{ 
  position:fixed; 
  right:0; 
  top:0; 
  height:100dvh; 
  width:min(440px,92vw); 
  background:#fff;
  background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
  box-shadow:-8px 0 32px rgba(0,0,0,.12), -4px 0 16px rgba(0,0,0,.08);
  transform:translateX(100%); 
  transition:transform .4s cubic-bezier(0.16, 1, 0.3, 1); 
  z-index:10000; 
  display:flex; 
  flex-direction:column;
  border-left:1px solid rgba(0,0,0,.06);
}
.g1e-fav-panel.is-open{ 
  transform:none; 
}
.g1e-fav__header{ 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:12px; 
  padding:20px 24px; 
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#fff;
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.g1e-fav__header strong{
  font-size:20px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  letter-spacing:-0.02em;
}
.g1e-fav__body{ 
  overflow-y:auto;
  overflow-x:hidden;
  padding:16px 24px 24px;
  flex:1;
  -webkit-overflow-scrolling:touch;
}
.g1e-fav__body::-webkit-scrollbar{
  width:6px;
}
.g1e-fav__body::-webkit-scrollbar-track{
  background:transparent;
}
.g1e-fav__body::-webkit-scrollbar-thumb{
  background:rgba(0,0,0,.1);
  border-radius:3px;
}
.g1e-fav-list{ 
  list-style:none; 
  padding:0; 
  margin:0; 
  display:grid; 
  gap:12px; 
}
.g1e-fav-list li{ 
  animation:slideInRight .3s ease backwards;
}
.g1e-fav-list li:nth-child(1){ animation-delay:.05s; }
.g1e-fav-list li:nth-child(2){ animation-delay:.1s; }
.g1e-fav-list li:nth-child(3){ animation-delay:.15s; }
.g1e-fav-list li:nth-child(4){ animation-delay:.2s; }
.g1e-fav-list li a{ 
  display:grid; 
  grid-template-columns:72px 1fr; 
  gap:12px; 
  align-items:center; 
  border:2px solid var(--g1e-border); 
  border-radius:16px; 
  padding:12px; 
  text-decoration:none; 
  color:inherit;
  background:#fff;
  transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.g1e-fav-list li a:hover{ 
  border-color:var(--g1e-accent);
  transform:translateX(4px) translateY(-2px);
  box-shadow:0 8px 24px rgba(255,212,0,.2), 0 4px 12px rgba(0,0,0,.08);
  background:linear-gradient(135deg, rgba(255,212,0,.04) 0%, rgba(0,153,255,.04) 100%);
}
.g1e-fav-list img{ 
  width:72px; 
  height:72px; 
  object-fit:cover; 
  border-radius:12px;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
  transition:transform .3s ease;
}
.g1e-fav-list li a:hover img{
  transform:scale(1.08);
}
.g1e-fav-empty{ 
  color:var(--g1e-muted); 
  padding:40px 20px;
  text-align:center;
  font-size:15px;
  line-height:1.6;
}

/* Quick View modal - Enhanced */
.g1e-qv-backdrop{ 
  position:fixed; 
  inset:0; 
  background:rgba(0,0,0,.7); 
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:0; 
  pointer-events:none; 
  transition:opacity .3s cubic-bezier(0.4, 0, 0.2, 1), backdrop-filter .3s ease; 
  z-index:10001; 
}
.g1e-qv-backdrop.is-open{ 
  opacity:1; 
  pointer-events:auto; 
}
.g1e-qv-panel{ 
  position:fixed; 
  left:50%; 
  top:50%; 
  transform:translate(-50%,-50%) scale(.95); 
  width:min(960px,96vw); 
  max-height:90dvh; 
  background:#fff;
  background:linear-gradient(180deg, #fff 0%, #fafbfc 100%);
  border-radius:24px; 
  box-shadow:0 24px 64px rgba(0,0,0,.2), 0 8px 24px rgba(0,0,0,.15);
  border:1px solid rgba(0,0,0,.08);
  opacity:0; 
  pointer-events:none; 
  display:flex; 
  flex-direction:column; 
  z-index:10002; 
  transition:opacity .4s cubic-bezier(0.16, 1, 0.3, 1), transform .4s cubic-bezier(0.16, 1, 0.3, 1); 
  overflow:hidden;
}
.g1e-qv-panel.is-open{ 
  opacity:1; 
  pointer-events:auto; 
  transform:translate(-50%,-50%) scale(1); 
}
.g1e-qv__header{ 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:12px; 
  padding:20px 24px; 
  border-bottom:1px solid rgba(0,0,0,.08);
  background:#fff;
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.g1e-qv__header strong{
  font-size:20px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  letter-spacing:-0.02em;
}
.g1e-qv-body{ 
  overflow-y:auto;
  overflow-x:hidden;
  padding:24px;
  flex:1;
  -webkit-overflow-scrolling:touch;
}
.g1e-qv-body::-webkit-scrollbar{
  width:8px;
}
.g1e-qv-body::-webkit-scrollbar-track{
  background:transparent;
}
.g1e-qv-body::-webkit-scrollbar-thumb{
  background:rgba(0,0,0,.1);
  border-radius:4px;
}
.g1e-qv__grid{ 
  display:grid; 
  grid-template-columns:1fr; 
  gap:24px; 
}
@media (min-width: 768px){ 
  .g1e-qv__grid{ 
    grid-template-columns:400px 1fr; 
    gap:32px;
  } 
}
.g1e-qv__media{ 
  position:relative;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(0,0,0,.1);
  background:#f5f7fb;
}
.g1e-qv__media img{ 
  width:100%; 
  height:auto; 
  border-radius:16px;
  display:block;
  transition:transform .4s ease;
}
.g1e-qv__media:hover img{
  transform:scale(1.05);
}
.g1e-qv__meta h3{
  font-size:24px;
  font-weight:700;
  font-family:"Outfit", sans-serif;
  margin:0 0 12px;
  color:var(--g1e-fg);
  line-height:1.3;
}
.g1e-qv__price{ 
  font-weight:700; 
  font-size:28px;
  margin:0 0 16px;
  font-family:"Outfit", sans-serif;
  color:var(--g1e-fg);
  display:flex;
  align-items:center;
  gap:8px;
}
.g1e-qv__excerpt{
  color:var(--g1e-muted);
  line-height:1.6;
  margin-bottom:24px;
  font-size:15px;
}
.g1e-qv__actions{ 
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.g1e-qv__actions .button{ 
  margin-right:0;
  flex:1;
  min-width:160px;
  text-align:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.g1e-qv-loading{ 
  padding:60px 20px; 
  color:var(--g1e-muted);
  text-align:center;
  font-size:16px;
}


/* Cart & tables */
.woocommerce-cart table.shop_table{ border:1px solid var(--g1e-border); border-radius:12px; overflow:hidden; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td{ padding:12px; }
.woocommerce a.remove{ border-radius:8px; background:#fff !important; border:1px solid var(--g1e-border); color:#64748b !important; width:28px; height:28px; line-height:26px; text-align:center; }
.woocommerce .quantity .qty{ border:1px solid var(--g1e-border); border-radius:8px; padding:.35rem .5rem; }
.cart-collaterals .cart_totals{ border:1px solid var(--g1e-border); border-radius:12px; padding:12px; }

/* Notices */
.woocommerce-error, .woocommerce-info, .woocommerce-message{ border-radius:12px; padding:12px 14px; }

/* My Account nav */
.woocommerce-MyAccount-navigation ul{ list-style:none; padding:0; margin:0 0 12px; display:grid; gap:6px; }
.woocommerce-MyAccount-navigation a{ display:block; padding:.55rem .7rem; border:1px solid var(--g1e-border); border-radius:10px; text-decoration:none; color:inherit; }
.woocommerce-MyAccount-navigation a:hover{ background:#f5f7fb; }
