/*
Theme Name: Gam's — Healthy lifestyle
Theme URI: https://gams.ro
Author URI: https://dklgroup.eu
Author: DKL Distribution Group S.R.L.
Description: Temă copil pentru Twenty Twenty-Five, cu designul Gam's — temă închisă implicit, comutator light/dark, titluri Kaushan Script, accent portocaliu/auriu și texturi de brand. Construită pentru WooCommerce (RO/EN + RON/EUR).
Template: twentytwentyfive
Version: 1.9.4
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gams
Tags: e-commerce, dark-mode, block-theme, full-site-editing
*/

/* ==========================================================================
   1. TOKENS — tema închisă (implicită)
   ========================================================================== */
:root{
  --gams-bg:#0d0d0f;
  --gams-bg-soft:rgba(255,255,255,.028);
  --gams-card:rgba(255,255,255,.045);
  --gams-card-brd:rgba(255,255,255,.10);
  --gams-line:rgba(255,255,255,.09);
  --gams-line-2:rgba(255,255,255,.20);
  --gams-ghost-brd:rgba(255,255,255,.24);
  --gams-card-hover:rgba(255,255,255,.06);
  --gams-nav-bg:rgba(10,10,12,.82);
  --gams-field-bg:rgba(0,0,0,.25);
  --gams-drawer-bg:#151517;
  --gams-card-shadow:0 30px 60px -30px rgba(0,0,0,.8);
  --gams-elev:none;

  --gams-text:#F4F2EC;
  --gams-muted:rgba(244,242,236,.62);
  --gams-faint:rgba(244,242,236,.34);

  --gams-orange:#F2842F;
  --gams-orange-2:#FFA24D;
  --gams-gold:#F3AA1B;
  --gams-teal:#38D1C1;
  --gams-coral:#FF7C7C;
  --gams-btn-ink:#17223F;

  --gams-heading-shadow:0 2px 12px rgba(0,0,0,.45);
  --gams-texture:url('assets/img/dark-texture.jpg');
  --gams-texture-blend:soft-light;
  --gams-texture-opacity:.30;

  --gams-radius:22px;
  --gams-radius-sm:14px;
  --gams-maxw:1180px;
  --gams-nav-h:84px;
}

/* ==========================================================================
   2. TOKENS — tema deschisă
   ========================================================================== */
:root[data-theme="light"]{
  --gams-bg:#F9E6CE;
  --gams-bg-soft:rgba(255,255,255,.42);
  --gams-card:#FFFFFF;
  --gams-card-brd:rgba(23,34,63,.14);
  --gams-line:rgba(23,34,63,.12);
  --gams-line-2:rgba(23,34,63,.22);
  --gams-ghost-brd:rgba(23,34,63,.30);
  --gams-card-hover:#FFFFFF;
  --gams-nav-bg:rgba(250,236,216,.85);
  --gams-field-bg:#FFFFFF;
  --gams-drawer-bg:#FFF7EC;
  --gams-card-shadow:0 22px 44px -26px rgba(23,34,63,.30);
  --gams-elev:0 12px 30px -18px rgba(23,34,63,.20);

  --gams-text:#17223F;
  --gams-muted:rgba(23,34,63,.66);
  --gams-faint:rgba(23,34,63,.42);

  --gams-orange:#B0480A;
  --gams-orange-2:#C9591A;
  --gams-gold:#B57500;
  --gams-btn-ink:#ffffff;

  --gams-heading-shadow:0 2px 7px rgba(23,34,63,.16);
  --gams-texture:url('assets/img/light-texture.jpg');
  --gams-texture-blend:multiply;
  --gams-texture-opacity:.22;
}

/* ==========================================================================
   3. BAZĂ
   ========================================================================== */
html{ scroll-behavior:smooth; scroll-padding-top:calc(var(--gams-nav-h) + 12px); }

body{
  background-color:var(--gams-bg);
  color:var(--gams-text);
  -webkit-font-smoothing:antialiased;
  position:relative;
}
/* textura de brand, pe un strat propriu ca să nu afecteze conținutul */
body::before{
  content:"";
  position:fixed; inset:0;
  background-image:var(--gams-texture);
  background-size:cover; background-position:center;
  mix-blend-mode:var(--gams-texture-blend);
  opacity:var(--gams-texture-opacity);
  pointer-events:none;
  z-index:0;
}
.wp-site-blocks{ position:relative; z-index:1; }

::selection{ background:var(--gams-orange); color:#fff; }

a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible,
.wp-block-button__link:focus-visible{
  outline:2px solid var(--gams-orange);
  outline-offset:2px;
  border-radius:6px;
}
/* clic cu mouse-ul nu lasă contur (accesibilitatea la tastatură rămâne) */
:focus:not(:focus-visible){ outline:none; box-shadow:none; }

/* ==========================================================================
   4. TITLURI — Kaushan Script, cu grosime falsă (fontul are un singur weight)
   ========================================================================== */
h1,h2,h3,h4,
.wp-block-post-title,
.wp-block-site-title,
.woocommerce-loop-product__title,
.product_title,
.wc-block-components-product-name,
.wp-block-heading{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-weight:400;
  letter-spacing:.2px;
  text-shadow:var(--gams-heading-shadow);
}
h1,.wp-block-post-title,.product_title{ -webkit-text-stroke:.7px currentColor; line-height:1.22; }
h2{ -webkit-text-stroke:.6px currentColor; line-height:1.22; }
h3,h4,
.woocommerce-loop-product__title,
.wc-block-components-product-name{ -webkit-text-stroke:.35px currentColor; line-height:1.18; }

/* ==========================================================================
   5. BUTOANE
   ========================================================================== */
.wp-block-button__link,
button, .button, input[type="submit"],
.wc-block-components-button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-weight:400;
  font-size:1.05rem;
  letter-spacing:.3px;
  -webkit-text-stroke:.4px currentColor;
  border-radius:999px;
  border:0;
  padding:.78rem 1.6rem;
  background:var(--gams-orange);
  color:var(--gams-btn-ink);
  cursor:pointer;
  transition:background .18s ease, transform .18s ease, box-shadow .18s ease;
  text-decoration:none;
}
.wp-block-button__link:hover,
button:hover, .button:hover, input[type="submit"]:hover,
.wc-block-components-button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover{
  background:var(--gams-orange-2);
  color:var(--gams-btn-ink);
  transform:translateY(-1px);
  box-shadow:0 10px 24px -12px rgba(0,0,0,.55);
}
/* varianta „fantomă" (contur) */
.is-style-outline .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link,
.gams-btn-ghost{
  background:transparent;
  color:var(--gams-text);
  border:1.5px solid var(--gams-ghost-brd);
  -webkit-text-stroke:0;
}
.is-style-outline .wp-block-button__link:hover,
.gams-btn-ghost:hover{
  background:var(--gams-card-hover);
  border-color:var(--gams-orange);
  color:var(--gams-text);
}

/* ==========================================================================
   6. CÂMPURI DE FORMULAR
   ========================================================================== */
input[type="text"],input[type="email"],input[type="tel"],input[type="url"],
input[type="password"],input[type="number"],input[type="search"],
textarea,select,
.wc-block-components-text-input input,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.select2-container--default .select2-selection--single{
  font-family:Poppins,system-ui,sans-serif;
  font-size:15px;
  line-height:1.5;
  min-height:52px;
  padding:13px 16px;
  color:var(--gams-text);
  background:var(--gams-field-bg);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius-sm);
  transition:border-color .18s ease, box-shadow .18s ease;
}
textarea{ min-height:120px; }
input:focus,textarea:focus,select:focus{
  border-color:var(--gams-orange);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--gams-orange) 22%, transparent);
}
::placeholder{ color:var(--gams-faint); }
label,.wc-block-components-checkbox__label{ color:var(--gams-muted); font-size:.92rem; }

/* ==========================================================================
   7. CARDURI ȘI SUPRAFEȚE
   ========================================================================== */
.gams-card{
  background:var(--gams-card);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius);
  box-shadow:var(--gams-elev);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.gams-card:hover{
  transform:translateY(-4px);
  background:var(--gams-card-hover);
  border-color:var(--gams-line-2);
  box-shadow:var(--gams-card-shadow);
}
hr.wp-block-separator{ border-color:var(--gams-line); opacity:1; }

/* ==========================================================================
   8. ANTET
   ========================================================================== */
.wp-block-template-part.gams-header,
header.wp-block-template-part{
  position:sticky; top:0; z-index:60;
  background:var(--gams-nav-bg);
  backdrop-filter:saturate(140%) blur(14px);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid var(--gams-line);
}
.gams-logo{ display:block; line-height:0; }
.gams-logo img{ height:48px; width:auto; }
/* logo auriu pe fundal închis, negru pe fundal deschis — schimbat doar din CSS.
   Selectoarele sunt scrise cu doi pași (.gams-logo .gams-logo--x) ca să bată
   regula de mai sus; o clasă simplă ar pierde în fața lui `.gams-logo img`. */
.gams-logo .gams-logo--dark{ display:block; }
.gams-logo .gams-logo--light{ display:none; }
:root[data-theme="light"] .gams-logo .gams-logo--dark{ display:none; }
:root[data-theme="light"] .gams-logo .gams-logo--light{ display:block; }

.wp-block-navigation{ font-family:Poppins,system-ui,sans-serif; font-size:.95rem; }
.wp-block-navigation .wp-block-navigation-item__content{
  color:var(--gams-text); text-decoration:none; opacity:.86;
  transition:opacity .16s ease, color .16s ease;
}
.wp-block-navigation .wp-block-navigation-item__content:hover{ opacity:1; color:var(--gams-orange); }
.wp-block-navigation .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-container,
.wp-block-navigation__submenu-container{
  background:var(--gams-drawer-bg);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius-sm);
  box-shadow:var(--gams-card-shadow);
  padding:8px;
  min-width:280px;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content{
  padding:9px 12px; border-radius:10px;
}
.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{ background:var(--gams-card-hover); }
/* atributul `hidden` singur nu ascunde: tema pune display:flex pe elementele de meniu */
.wp-block-navigation-item[hidden], li[hidden]{ display:none !important; }

/* --- comutator temă / limbă / monedă din antet --- */
.gams-tools{ display:flex; align-items:center; gap:14px; }
.gams-toggle{
  width:40px; height:40px; display:grid; place-items:center;
  border-radius:999px; padding:0;
  background:var(--gams-bg-soft);
  border:1px solid var(--gams-card-brd);
  color:var(--gams-text);
  font-size:1.05rem; line-height:1;
  -webkit-text-stroke:0;
}
.gams-toggle:hover{ background:var(--gams-card-hover); border-color:var(--gams-orange); transform:none; box-shadow:none; }
.gams-toggle .gams-icon-sun{ display:none; }
:root[data-theme="light"] .gams-toggle .gams-icon-sun{ display:block; }
:root[data-theme="light"] .gams-toggle .gams-icon-moon{ display:none; }

/* comutatoarele TranslatePress și CURCY, aduse la aspectul temei */
.trp-language-switcher, .wmc-currency-wrapper, .woo-multi-currency{
  font-family:Poppins,system-ui,sans-serif !important;
  font-size:.9rem !important;
}
.trp-language-switcher > div, .wmc-currency-wrapper .wmc-current-currency{
  background:var(--gams-bg-soft) !important;
  border:1px solid var(--gams-card-brd) !important;
  border-radius:999px !important;
  color:var(--gams-text) !important;
  padding:7px 14px !important;
}
.trp-language-switcher .trp-ls-shortcode-language,
.wmc-currency-wrapper .wmc-sub-currency{
  background:var(--gams-drawer-bg) !important;
  border:1px solid var(--gams-card-brd) !important;
  border-radius:var(--gams-radius-sm) !important;
  box-shadow:var(--gams-card-shadow) !important;
}
.wmc-currency-wrapper a, .trp-language-switcher a{ color:var(--gams-text) !important; }
.wmc-currency-wrapper a:hover, .trp-language-switcher a:hover{ color:var(--gams-orange) !important; }

/* ==========================================================================
   9. WOOCOMMERCE — listă de produse
   ========================================================================== */
.woocommerce ul.products li.product,
.wc-block-grid__product,
.wp-block-woocommerce-product-template li{
  background:var(--gams-card);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius);
  padding:14px 14px 18px;
  box-shadow:var(--gams-elev);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  text-align:left;
}
.woocommerce ul.products li.product:hover,
.wc-block-grid__product:hover,
.wp-block-woocommerce-product-template li:hover{
  transform:translateY(-4px);
  border-color:var(--gams-line-2);
  box-shadow:var(--gams-card-shadow);
}
.woocommerce ul.products li.product img,
.wc-block-grid__product-image img,
.wp-block-woocommerce-product-image img{
  border-radius:var(--gams-radius-sm);
  /* ⚠ `cover` decupa dozele înalte și batoanele late; `contain` le încadrează
     întregi, iar înălțimea fixă ține cardurile aliniate între ele. */
  height:230px;
  width:100%;
  object-fit:contain;
  background:transparent;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title{
  font-size:1.16rem;
  margin:.55rem 0 .3rem;
  color:var(--gams-text);
}
.woocommerce ul.products li.product .price,
.wc-block-grid__product-price,
.wp-block-woocommerce-product-price{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-size:1.28rem;
  color:var(--gams-orange);
  -webkit-text-stroke:.35px currentColor;
  text-shadow:var(--gams-heading-shadow);
}
.woocommerce ul.products li.product .price del,
.wp-block-woocommerce-product-price del{ color:var(--gams-faint); -webkit-text-stroke:0; opacity:.75; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; }

/* etichete („Reducere", „Nou") */
.woocommerce span.onsale, .wc-block-grid__product-onsale{
  background:var(--gams-teal);
  color:#0d0d0f;
  font-family:Poppins,sans-serif;
  font-weight:600;
  font-size:.72rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  border-radius:999px;
  padding:6px 12px;
  min-height:0; min-width:0; line-height:1.2;
}

/* ==========================================================================
   10. WOOCOMMERCE — pagina de produs
   ========================================================================== */
.woocommerce div.product .product_title{ margin-bottom:.4rem; }
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.wp-block-woocommerce-product-price .woocommerce-Price-amount{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-size:2rem;
  color:var(--gams-orange);
  -webkit-text-stroke:.4px currentColor;
  text-shadow:var(--gams-heading-shadow);
}
.woocommerce div.product .woocommerce-tabs ul.tabs{ border:0; padding:0; margin:0 0 1.2rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ border-color:var(--gams-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:var(--gams-bg-soft);
  border:1px solid var(--gams-card-brd);
  border-radius:999px;
  margin:0 8px 8px 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{ display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  background:var(--gams-orange); border-color:var(--gams-orange);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--gams-btn-ink); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  font-family:Poppins,sans-serif; font-weight:600; font-size:.92rem; color:var(--gams-text);
}
.woocommerce .quantity .qty{ width:76px; text-align:center; }
.woocommerce div.product form.cart .variations select{ min-height:54px; }
.woocommerce div.product .stock{ font-family:Poppins,sans-serif; font-weight:600; color:var(--gams-teal); }
.woocommerce div.product .stock.out-of-stock{ color:var(--gams-coral); }
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  background:var(--gams-card);
  border:1px solid var(--gams-card-brd);
  border-top:3px solid var(--gams-orange);
  border-radius:var(--gams-radius-sm);
  color:var(--gams-text);
}
.woocommerce-error{ border-top-color:var(--gams-coral); }
.woocommerce-message{ border-top-color:var(--gams-teal); }

/* ==========================================================================
   11. WOOCOMMERCE — coș, finalizare, cont
   ========================================================================== */
.woocommerce table.shop_table,
.wc-block-cart-items{
  background:var(--gams-card);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius);
  border-collapse:separate;
  overflow:hidden;
}
.woocommerce table.shop_table th,
.wc-block-cart-items__header{
  font-family:Poppins,sans-serif; font-weight:600; font-size:.82rem;
  letter-spacing:.06em; text-transform:uppercase; color:var(--gams-muted);
}
.woocommerce table.shop_table td,
.woocommerce table.shop_table th{ border-color:var(--gams-line); }
.woocommerce-cart .cart-collaterals .cart_totals,
.wc-block-components-totals-wrapper{ border-color:var(--gams-line); }
.wc-block-components-totals-item__value,
.woocommerce .order-total .woocommerce-Price-amount{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-size:1.3rem; color:var(--gams-orange); -webkit-text-stroke:.35px currentColor;
}
.wc-block-components-sidebar-layout .wc-block-components-sidebar{
  background:var(--gams-card);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius);
  padding:20px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; padding:0; margin:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li{
  border-bottom:1px solid var(--gams-line);
}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block; padding:12px 6px; color:var(--gams-text); text-decoration:none;
  font-family:Poppins,sans-serif; font-size:.95rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{ color:var(--gams-orange); }

/* bara de progres „livrare gratuită" */
.gams-freeship{
  background:var(--gams-bg-soft);
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius-sm);
  padding:14px 16px;
  font-family:Poppins,sans-serif; font-size:.9rem; color:var(--gams-muted);
}
.gams-freeship b{ color:var(--gams-orange); font-family:'Kaushan Script',cursive; font-size:1.05rem; -webkit-text-stroke:.3px currentColor; }
.gams-freeship-bar{ height:7px; border-radius:999px; background:var(--gams-line); margin-top:10px; overflow:hidden; }
.gams-freeship-bar span{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--gams-orange),var(--gams-gold)); transition:width .35s ease; }

/* ==========================================================================
   12. SUBSOL
   ========================================================================== */
footer.wp-block-template-part{
  background:var(--gams-bg-soft);
  border-top:1px solid var(--gams-line);
  margin-top:0;
}
footer .gams-logo img{ height:42px; }
footer .wp-block-heading{ font-size:1.05rem; margin-bottom:.95rem; }
footer a{ color:var(--gams-muted); text-decoration:none; }
footer a:hover{ color:var(--gams-orange); }
.gams-anpc{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.gams-anpc img{ height:44px; width:auto; border-radius:6px; }

/* ==========================================================================
   13. MIȘCARE
   ========================================================================== */
@keyframes gamsFloat{
  0%,100%{ transform:translateY(-14px) rotate(-1.4deg); }
  50%    { transform:translateY(14px)  rotate(1.4deg); }
}
.gams-hero-logo img{ animation:gamsFloat 6s ease-in-out infinite; will-change:transform; }
.gams-reveal{ opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease; }
.gams-reveal.is-in{ opacity:1; transform:none; }

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .gams-hero-logo img{ animation:none; }
  .gams-reveal{ opacity:1; transform:none; transition:none; }
  *{ transition-duration:.01ms !important; }
}

/* ==========================================================================
   14. RESPONSIVE
   ========================================================================== */
@media (max-width:781px){
  :root{ --gams-nav-h:70px; }
  .gams-logo img{ height:40px; }
  .gams-tools{ gap:10px; }
  .woocommerce div.product p.price,
  .woocommerce div.product span.price{ font-size:1.6rem; }
}

/* ==========================================================================
   15. COMUTATOARE, COȘ ÎN ANTET, BADGE-URI ANPC
   ========================================================================== */
.gams-switchers{ display:flex; align-items:center; gap:10px; }

.gams-cart-link{
  position:relative; display:inline-grid; place-items:center;
  width:42px; height:42px; border-radius:999px;
  background:var(--gams-bg-soft); border:1px solid var(--gams-card-brd);
  text-decoration:none; font-size:1.1rem; line-height:1;
  transition:border-color .16s ease, background .16s ease;
}
.gams-cart-link:hover{ border-color:var(--gams-orange); background:var(--gams-card-hover); }
.gams-cart-count{
  position:absolute; top:-5px; right:-5px;
  min-width:20px; height:20px; padding:0 5px;
  display:none; place-items:center;
  border-radius:999px;
  background:var(--gams-orange); color:var(--gams-btn-ink);
  font-family:Poppins,sans-serif; font-size:.7rem; font-weight:700; line-height:20px;
}
.gams-cart-count.has-items{ display:grid; }

.anpc-row{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.anpc-btn{
  display:inline-flex; align-items:center; gap:12px;
  padding:9px 16px 9px 12px;
  border:1px solid var(--gams-line); border-radius:14px;
  background:var(--gams-card); text-decoration:none;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.anpc-btn:hover{ transform:translateY(-2px); border-color:var(--gams-line-2); box-shadow:var(--gams-card-shadow); }
.anpc-btn > span{ display:flex; flex-direction:column; line-height:1.25; }
.anpc-btn strong{ font-family:Poppins,sans-serif; font-size:13.4px; font-weight:700; color:var(--gams-text); }
.anpc-btn em{ font-style:normal; font-size:12px; color:var(--gams-muted); }
.anpc-logo{ height:30px; width:auto; flex:0 0 auto; }
.anpc-logo--light{ display:none; }
:root[data-theme="light"] .anpc-logo--dark{ display:none; }
:root[data-theme="light"] .anpc-logo--light{ display:block; }
@media (max-width:560px){ .anpc-row{ width:100%; } .anpc-btn{ flex:1 1 100%; } }

/* sigla mare, animată, din antetul paginii principale */
.gams-hero-logo img{ width:min(470px,88vw); height:auto; margin-inline:auto; }
.gams-hero-logo .gams-logo--dark{ display:block; }
.gams-hero-logo .gams-logo--light{ display:none; }
:root[data-theme="light"] .gams-hero-logo .gams-logo--dark{ display:none; }
:root[data-theme="light"] .gams-hero-logo .gams-logo--light{ display:block; }

/* ==========================================================================
   16. PAGINA PRINCIPALĂ
   ========================================================================== */
/* învelișurile scurtcodurilor nu trebuie să apară în așezarea flexibilă */
.gams-logo-wrap, .gams-cart, .gams-toggle-wrap, .gams-switchers > .gams-switch{ display:contents; }
.gams-tools .gams-switchers{ display:flex; align-items:center; gap:10px; }

.gams-eyebrow{
  font-family:Poppins,sans-serif; font-weight:700; font-size:.78rem;
  letter-spacing:.18em; text-transform:uppercase; margin-bottom:.6rem;
}
.gams-lead{ font-size:1.08rem; max-width:52ch; }
.gams-sub{ max-width:60ch; margin-inline:auto; margin-bottom:2rem; }
.gams-section{ padding-block:clamp(2.5rem,6vw,4.5rem); }
.gams-section > .wp-block-heading{ margin-bottom:.5rem; }

/* cifre */
.gams-stats{
  background:var(--gams-card); border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius); padding:26px 20px; box-shadow:var(--gams-elev);
}
.gams-stat-n{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-size:clamp(1.9rem,4vw,2.6rem);
  color:var(--gams-orange); -webkit-text-stroke:.5px currentColor;
  text-shadow:var(--gams-heading-shadow); margin:0 0 .2rem; line-height:1.1;
}
.gams-stat-l{ font-size:.9rem; color:var(--gams-muted); margin:0; }

/* carduri „de ce Gam's" */
.gams-feature{
  background:var(--gams-card); border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius); padding:26px 24px; box-shadow:var(--gams-elev);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.gams-feature:hover{ transform:translateY(-4px); border-color:var(--gams-line-2); box-shadow:var(--gams-card-shadow); }
.gams-ic{ font-size:2rem; margin:0 0 .5rem; line-height:1; }

/* pași */
.gams-step-n{
  font-family:'Kaushan Script','DynaPuff',cursive;
  font-size:2.6rem; line-height:1; margin:0 0 .3rem;
  color:transparent; -webkit-text-stroke:2px var(--gams-orange);
}

/* chemare la acțiune */
.gams-cta{
  background:linear-gradient(135deg, color-mix(in srgb, var(--gams-orange) 16%, transparent), color-mix(in srgb, var(--gams-gold) 12%, transparent));
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius);
}

/* întrebări frecvente */
.gams-faq .wp-block-details{
  background:var(--gams-card); border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius-sm); padding:16px 20px; margin-bottom:12px;
}
.gams-faq summary{
  font-family:'Kaushan Script','DynaPuff',cursive; font-size:1.12rem;
  cursor:pointer; -webkit-text-stroke:.3px currentColor;
}
.gams-faq .wp-block-details[open]{ border-color:var(--gams-line-2); }
.gams-faq .wp-block-details p{ color:var(--gams-muted); margin-top:.7rem; }

/* carduri de categorie generate de scurtcodul WooCommerce */
.woocommerce ul.products li.product-category a{ text-decoration:none; }
.woocommerce ul.products li.product-category h2,
.woocommerce ul.products li.product-category h3{
  font-size:1.14rem; margin:.6rem 0 .2rem; color:var(--gams-text);
}
.woocommerce ul.products li.product-category mark.count{
  background:transparent; color:var(--gams-faint);
  font-family:Poppins,sans-serif; font-size:.82rem;
}

/* listele din subsol */
.gams-foot-list{ list-style:none; padding:0; margin:0; }
/* titlul coloanei are nevoie de aer, altfel se citește ca primul element din listă */
footer .wp-block-heading + .gams-foot-list,
footer .wp-block-heading + ul{ margin-top:.2rem; }
.gams-foot-list li{ margin:0 0 .55rem; font-size:.94rem; }

/* pe telefon eroul devine o coloană, cu sigla deasupra textului */
@media (max-width:781px){
  .gams-hero .wp-block-columns{ flex-direction:column-reverse; }
  .gams-lead{ max-width:none; }
  .gams-stats .wp-block-columns{ flex-wrap:wrap !important; }
  .gams-stats .wp-block-column{ flex-basis:45% !important; }
}

/* ==========================================================================
   17. GRILA DE PRODUSE
   WooCommerce așază produsele cu `float` și lățimi procentuale calculate
   pentru temele clasice. Într-o temă bloc iese strâmb: încap 3 pe rând în loc
   de 4 și rămâne o bandă goală în dreapta. Trecem lista pe CSS Grid.
   ========================================================================== */
.woocommerce ul.products,
.woocommerce-page ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  margin:0 0 1.5rem;
  padding:0;
  list-style:none;
}
.woocommerce ul.products.columns-1{ grid-template-columns:minmax(0,1fr); }
.woocommerce ul.products.columns-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.woocommerce ul.products.columns-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.woocommerce ul.products.columns-5{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.woocommerce ul.products.columns-6{ grid-template-columns:repeat(6,minmax(0,1fr)); }

.woocommerce ul.products li.product,
.woocommerce ul.products li.product-category{
  width:auto !important;
  margin:0 !important;
  float:none !important;
  clear:none !important;
  display:flex;
  flex-direction:column;
}
/* WooCommerce pune un „clearfix" pe listă: `ul.products::before/::after` cu
   content:" ". Într-o grilă, pseudo-elementele containerului devin ele însele
   celule și împing primul produs cu o poziție. Le anulăm. */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after{ content:none !important; display:none !important; }
.woocommerce ul.products li.product::before,
.woocommerce ul.products li.product::after{ content:none; }

/* butonul „adaugă în coș" rămâne jos, indiferent cât de lung e titlul */
.woocommerce ul.products li.product .button{ margin-top:auto; align-self:flex-start; }
.woocommerce ul.products li.product .price{ margin-bottom:.9rem; }

/* Imaginea „lipsă" a WooCommerce e albă și sare pe fundal închis. Nu are clasă
   proprie în toate contextele, așa că o prindem după numele fișierului. */
.woocommerce img.woocommerce-placeholder,
.woocommerce img[src*="woocommerce-placeholder"]{
  opacity:.14;
  filter:grayscale(1);
  mix-blend-mode:luminosity;
}
:root[data-theme="light"] .woocommerce img.woocommerce-placeholder,
:root[data-theme="light"] .woocommerce img[src*="woocommerce-placeholder"]{
  opacity:.5; mix-blend-mode:normal;
}

@media (max-width:1100px){ .woocommerce ul.products, .woocommerce ul.products.columns-4{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:820px){  .woocommerce ul.products, .woocommerce ul.products.columns-3, .woocommerce ul.products.columns-4{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:520px){  .woocommerce ul.products, .woocommerce ul.products[class*="columns-"]{ grid-template-columns:minmax(0,1fr); } }

/* ==========================================================================
   18. RAFINĂRI PE PAGINILE WOOCOMMERCE
   ========================================================================== */
/* Blocul „legacy-template" își pune conținutul într-un `.content-area alignwide`,
   adică pe lățimea mare (1380px). E potrivit pentru grila din magazin, dar prea
   lat pentru o fișă de produs. */
.single-product .content-area{ max-width:1180px; margin-inline:auto; }

/* firul Ariadnei */
.woocommerce .woocommerce-breadcrumb{
  font-family:Poppins,sans-serif; font-size:.88rem;
  color:var(--gams-faint); margin-bottom:1.4rem;
}
.woocommerce .woocommerce-breadcrumb a{ color:var(--gams-muted); }
.woocommerce .woocommerce-breadcrumb a:hover{ color:var(--gams-orange); }

/* rândul „X rezultate" + sortare */
.woocommerce .woocommerce-result-count{
  font-family:Poppins,sans-serif; font-size:.9rem; color:var(--gams-muted); margin:0;
}
.woocommerce .woocommerce-ordering{ margin:0 0 1.4rem; }
.woocommerce .woocommerce-ordering select{ min-height:46px; padding-block:9px; }

/* galeria produsului */
.woocommerce div.product .woocommerce-product-gallery__image img{
  border-radius:var(--gams-radius);
}
.woocommerce div.product .woocommerce-product-gallery__trigger{
  background:var(--gams-card); border:1px solid var(--gams-card-brd);
  border-radius:999px; width:40px; height:40px; display:grid; place-items:center;
  color:var(--gams-text); text-indent:0; font-size:0;
}
.woocommerce div.product .woocommerce-product-gallery__trigger::after{
  content:"⌕"; font-size:22px; line-height:1;
}

/* cantitate + „adaugă în coș": aceeași înălțime, aliniate pe centru */
.woocommerce div.product form.cart{
  display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:1.4rem;
}
.woocommerce div.product form.cart .quantity{ margin:0; }
.woocommerce div.product form.cart .quantity .qty{
  height:52px; min-height:52px; padding-block:0;
}
.woocommerce div.product form.cart .button{
  height:52px; min-height:52px; padding-block:0;
  display:inline-flex; align-items:center; justify-content:center;
}
.woocommerce div.product form.cart .variations{ width:100%; }

/* meta (categorii, cod produs) */
.woocommerce div.product .product_meta{
  font-family:Poppins,sans-serif; font-size:.9rem; color:var(--gams-muted);
  border-top:1px solid var(--gams-line); padding-top:1rem; margin-top:.5rem;
}

/* produse similare / upsell */
.woocommerce .related > h2, .woocommerce .upsells > h2,
.woocommerce section.related > h2{ margin-bottom:1.2rem; }

/* paginarea catalogului */
.woocommerce nav.woocommerce-pagination ul{
  border:0; display:flex; gap:8px; justify-content:center; margin-top:2rem;
}
.woocommerce nav.woocommerce-pagination ul li{ border:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--gams-card-brd); border-radius:999px;
  min-width:42px; height:42px; display:grid; place-items:center;
  color:var(--gams-text); font-family:Poppins,sans-serif; font-size:.95rem;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{
  background:var(--gams-orange); border-color:var(--gams-orange); color:var(--gams-btn-ink);
}

/* coș gol */
.woocommerce .cart-empty, .wc-block-cart__empty-cart__title{
  font-family:'Kaushan Script',cursive; font-size:1.5rem; -webkit-text-stroke:.4px currentColor;
}
.woocommerce .return-to-shop{ margin-top:1.2rem; }

/* ==========================================================================
   19. COȘ, FINALIZARE, CONT — alinieri și notificări
   ========================================================================== */
/* WooCommerce limitează la 1000px atât titlul, cât și conținutul acestor
   pagini, dar titlul rămâne centrat iar conținutul aliniat la stânga, deci
   cele două nu se mai potrivesc. Le aducem pe aceeași lățime și poziție. */
.woocommerce-cart .wp-block-post-title,
.woocommerce-cart main .woocommerce,
.woocommerce-checkout .wp-block-post-title,
.woocommerce-checkout main .woocommerce,
.woocommerce-account .wp-block-post-title,
.woocommerce-account main .woocommerce{
  max-width:1180px;
  margin-inline:auto;
}

/* Notificările au marcaj nou în WooCommerce (`wc-block-components-notice-banner`);
   fără stilizare rămân albe și sar de pe tema închisă. */
.wc-block-components-notice-banner,
.woocommerce-message, .woocommerce-info, .woocommerce-error{
  background:var(--gams-card) !important;
  color:var(--gams-text) !important;
  border:1px solid var(--gams-card-brd) !important;
  border-left:3px solid var(--gams-orange) !important;
  border-radius:var(--gams-radius-sm) !important;
  font-family:Poppins,sans-serif;
  font-size:.95rem;
  align-items:center;
}
.wc-block-components-notice-banner.is-success,
.woocommerce-message{ border-left-color:var(--gams-teal) !important; }
.wc-block-components-notice-banner.is-error,
.woocommerce-error{ border-left-color:var(--gams-coral) !important; }
.wc-block-components-notice-banner.is-info{ border-left-color:var(--gams-orange) !important; }

/* Iconița notificării e un `<svg>` cu FUNDAL colorat și desen alb — deci se
   schimbă `background-color`, nu `fill`. */
.wc-block-components-notice-banner > svg{
  background-color:var(--gams-orange) !important;
  fill:var(--gams-bg) !important;
  border-radius:50%;
  flex:0 0 auto;
}
.wc-block-components-notice-banner.is-success > svg{ background-color:var(--gams-teal) !important; }
.wc-block-components-notice-banner.is-error > svg{ background-color:var(--gams-coral) !important; }
.wc-block-components-notice-banner a{ color:var(--gams-orange); }
.wc-block-components-notice-banner .wc-block-components-button{
  background:transparent; color:var(--gams-orange); padding:0;
}

/* butoanele din notificări („Vezi coșul") */
.woocommerce-message .button, .woocommerce-info .button{ margin-left:auto; }

/* ==========================================================================
   20. FORMULARUL DE FINALIZARE
   Regulile WooCommerce pentru câmpuri au specificitate mai mare decât
   selectorul general de la secțiunea 6, așa că select-urile, zona de note și
   caseta metodei de plată rămâneau albe pe tema închisă.
   ========================================================================== */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row select,
.woocommerce-checkout select, .woocommerce-checkout textarea,
select.country_select, select.state_select,
#order_comments, #billing_country, #billing_state,
#shipping_country, #shipping_state{
  background-color:var(--gams-field-bg) !important;
  color:var(--gams-text) !important;
  border:1px solid var(--gams-card-brd) !important;
  border-radius:var(--gams-radius-sm) !important;
}
/* lista derulantă a unui select e desenată de sistem: îi dăm culorile temei */
select option{ background:var(--gams-drawer-bg); color:var(--gams-text); }

/* select2, folosit de WooCommerce pentru țară/județ */
.select2-container--default .select2-selection--single,
.select2-dropdown, .select2-container--default .select2-search--dropdown .select2-search__field{
  background:var(--gams-field-bg) !important;
  color:var(--gams-text) !important;
  border-color:var(--gams-card-brd) !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{ color:var(--gams-text) !important; }
.select2-container--default .select2-results__option--highlighted[aria-selected]{
  background:var(--gams-orange) !important; color:var(--gams-btn-ink) !important;
}

/* descrierea metodei de plată */
.woocommerce-checkout #payment div.payment_box{
  background:var(--gams-bg-soft) !important;
  color:var(--gams-muted) !important;
  border:1px solid var(--gams-card-brd);
  border-radius:var(--gams-radius-sm);
  font-size:.92rem;
}
.woocommerce-checkout #payment div.payment_box::before{
  border-bottom-color:var(--gams-bg-soft) !important;
}
.woocommerce-checkout #payment{
  background:transparent; border-radius:var(--gams-radius);
}
.woocommerce-checkout #payment ul.payment_methods{
  border-bottom:1px solid var(--gams-line);
  padding:0 0 1rem;
}
.woocommerce-checkout #payment ul.payment_methods li{ list-style:none; }
.woocommerce-checkout #payment div.form-row{ padding:1rem 0 0; }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text{
  color:var(--gams-muted); font-size:.9rem;
}

/* caseta de cupon */
.woocommerce form.checkout_coupon{
  border:1px dashed var(--gams-line-2) !important;
  border-radius:var(--gams-radius) !important;
  background:var(--gams-bg-soft);
}

/* titlurile de secțiune din checkout */
.woocommerce-checkout h3, .woocommerce-billing-fields h3,
#order_review_heading{ margin-bottom:1rem; }

/* rândul de total din tabelul comenzii */
.woocommerce-checkout-review-order-table tfoot .order-total td{
  font-family:'Kaushan Script',cursive; color:var(--gams-orange);
  -webkit-text-stroke:.35px currentColor;
}

/* săgeata select-urilor: o desenăm noi, ca să nu depindem de imaginea temei
   (stilizarea fundalului o înlătură pe cea implicită) */
select,
.woocommerce form .form-row select,
.woocommerce-checkout select{
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M1 1.6 6 6.5l5-4.9'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 16px center !important;
  background-size:12px 8px !important;
  padding-right:42px !important;
}

/* Pe telefon WordPress pune coloanele una sub alta cu `flex-basis:100% !important`
   și o specificitate mai mare decât regula noastră de la secțiunea 16; pentru
   cifre vrem însă 2×2, nu patru rânduri. */
@media (max-width:781px){
  .gams-stats .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column{
    flex-basis:calc(50% - .75rem) !important;
    flex-grow:0;
  }
  .gams-stats .wp-block-columns{ flex-wrap:wrap !important; gap:1.5rem; }
}

/* ==========================================================================
   21. COMUTATOARELE PLUGINURILOR, ADUSE LA ASPECTUL TEMEI
   CURCY randează un <select class="wmc-nav">, iar TranslatePress o listă
   proprie — nu structurile presupuse inițial. Le stilizăm după marcajul real.
   ========================================================================== */
.woo-multi-currency.wmc-shortcode,
.woo-multi-currency .wmc-currency{ background:transparent !important; border:0 !important; box-shadow:none !important; margin:0 !important; }

.woo-multi-currency select.wmc-nav,
select.wmc-nav{
  background-color:var(--gams-bg-soft) !important;
  color:var(--gams-text) !important;
  border:1px solid var(--gams-card-brd) !important;
  border-radius:999px !important;
  min-height:42px !important;
  height:42px !important;
  padding:0 38px 0 16px !important;
  font-family:Poppins,system-ui,sans-serif !important;
  font-size:.9rem !important;
  line-height:42px !important;
  box-shadow:none !important;
  width:auto !important;
  max-width:190px;
}
.woo-multi-currency select.wmc-nav:hover{ border-color:var(--gams-orange) !important; }
select.wmc-nav option{ background:var(--gams-drawer-bg); color:var(--gams-text); }

/* TranslatePress (comutator v2).
   ⚠ WordPress împachetează ieșirea scurtcodului în paragrafe; cele goale
   lăsau o bandă întunecată sub pastila de limbă. Le ascundem.
   ⚠ Un selector generic `.trp-language-switcher > div` prindea și lista
   derulantă, nu doar pastila — de aceea stilizăm exact clasa pastilei. */
.gams-switchers p:empty{ display:none !important; }
.gams-switchers br{ display:none; }
.trp-shortcode-switcher__wrapper{
  line-height:0; display:flex; align-items:center; height:42px;
}
/* TranslatePress impune propria inaltime (51px) si lasa spatiu sub pastila;
   o aliniem la restul comutatoarelor din antet. */
.trp-language-switcher.trp-ls-dropdown{
  height:42px !important; min-height:42px !important;
  background:transparent !important; margin:0 !important; padding:0 !important;
}
.trp-language-switcher-container, .trp-language-switcher, .trp-shortcode-switcher{
  background:transparent !important; border:0 !important; box-shadow:none !important;
}
.trp-language-switcher > .trp-current-language-item__wrapper,
.trp-current-language-item__wrapper{
  background:var(--gams-bg-soft) !important;
  border:1px solid var(--gams-card-brd) !important;
  border-radius:999px !important;
  color:var(--gams-text) !important;
  height:42px !important; min-height:42px !important;
  padding:0 12px !important;
  font-family:Poppins,system-ui,sans-serif !important;
  font-size:.9rem !important;
  line-height:1 !important;
}
.trp-current-language-item__wrapper:hover{ border-color:var(--gams-orange) !important; }
.trp-language-switcher a, .trp-language-switcher span,
.trp-current-language-item__wrapper *{ color:var(--gams-text) !important; }
.trp-language-switcher a:hover{ color:var(--gams-orange) !important; }

/* legătura către cont, pe care WooCommerce o adaugă singură în antet */
.wp-block-woocommerce-customer-account{ display:flex; align-items:center; }
.wp-block-woocommerce-customer-account a{
  display:grid; place-items:center;
  width:42px; height:42px; border-radius:999px;
  background:var(--gams-bg-soft); border:1px solid var(--gams-card-brd);
  color:var(--gams-text) !important; text-decoration:none;
  transition:border-color .16s ease, background .16s ease;
}
.wp-block-woocommerce-customer-account a:hover{ border-color:var(--gams-orange); background:var(--gams-card-hover); }
.wp-block-woocommerce-customer-account svg{ width:20px; height:20px; }

/* ==========================================================================
   22. GALERIA PRODUSULUI
   Două probleme pe fotografiile producătorului (pătrate, 1200×1200, pe fundal alb):
   1. imaginea principală ocupa toată lățimea coloanei și ieșea uriașă;
   2. miniaturile erau puse cu `float` la 25% fiecare — 4 × 142 px într-un spațiu
      de 566 px, deci a patra se rupea pe rândul următor și se suprapunea.
   ========================================================================== */
.woocommerce div.product .woocommerce-product-gallery__image{
  background:#fff;
  border-radius:var(--gams-radius);
  overflow:hidden;
}
.woocommerce div.product .woocommerce-product-gallery__image img{
  max-height:400px;
  width:auto;
  max-width:100%;
  margin-inline:auto;
  object-fit:contain;
  padding:16px;
  border-radius:0;
}

/* miniaturile: grilă cu spații, nu float */
.woocommerce div.product .flex-control-thumbs{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
  margin:12px 0 0 !important;
  padding:0 !important;
  list-style:none;
  float:none !important;
  overflow:visible;
}
.woocommerce div.product .flex-control-thumbs li{
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  list-style:none;
}
.woocommerce div.product .flex-control-thumbs img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:contain;
  background:#fff;
  border-radius:12px;
  padding:6px;
  opacity:.68;
  cursor:pointer;
  transition:opacity .16s ease, box-shadow .16s ease;
}
.woocommerce div.product .flex-control-thumbs img:hover,
.woocommerce div.product .flex-control-thumbs img.flex-active{
  opacity:1;
  box-shadow:0 0 0 2px var(--gams-orange);
}

/* lupa de mărire, peste colțul imaginii */
.woocommerce div.product .woocommerce-product-gallery__trigger{
  top:12px; right:12px; z-index:5;
}

@media (max-width:781px){
  .woocommerce div.product .woocommerce-product-gallery__image img{ max-height:320px; }
  .woocommerce div.product .flex-control-thumbs{ grid-template-columns:repeat(4, minmax(0,1fr)); gap:8px; }
}

/* ==========================================================================
   23. IMAGINI FĂRĂ FUNDAL
   Fotografiile au fost reprocesate: fundalul alb a fost scos, iar produsele
   sunt WebP cu transparență. Cardul alb de sub ele nu mai are rost — produsul
   stă direct pe fundalul temei, la fel de bine pe cea închisă și pe cea deschisă.
   ========================================================================== */
.woocommerce div.product .woocommerce-product-gallery__image{
  background:transparent;
}
.woocommerce div.product .woocommerce-product-gallery__image img{
  padding:0;
  filter:drop-shadow(0 18px 26px rgba(0,0,0,.45));
}
:root[data-theme="light"] .woocommerce div.product .woocommerce-product-gallery__image img{
  filter:drop-shadow(0 16px 22px rgba(23,34,63,.20));
}
.woocommerce div.product .flex-control-thumbs img{
  background:var(--gams-bg-soft);
  border:1px solid var(--gams-card-brd);
  opacity:.85;
  padding:8px;
}
.woocommerce div.product .flex-control-thumbs img:hover,
.woocommerce div.product .flex-control-thumbs img.flex-active{
  opacity:1;
  border-color:var(--gams-orange);
  box-shadow:0 0 0 1px var(--gams-orange);
}

/* aceleași reguli pentru miniaturile din listă și din coș */
.woocommerce ul.products li.product img,
.wp-block-woocommerce-product-image img{
  background:transparent;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,.35));
}
:root[data-theme="light"] .woocommerce ul.products li.product img,
:root[data-theme="light"] .wp-block-woocommerce-product-image img{
  filter:drop-shadow(0 8px 14px rgba(23,34,63,.16));
}
.woocommerce table.shop_table img{ background:transparent; }

/* ==========================================================================
   24. GALERIE — dimensiuni reduse și spații între miniaturi
   ========================================================================== */
.woocommerce div.product .woocommerce-product-gallery__image img{
  max-height:320px;
}
.woocommerce div.product .flex-control-thumbs{
  gap:16px;
  margin-top:18px !important;
}
.woocommerce div.product .flex-control-thumbs img{
  max-height:88px;
  width:auto;
  margin-inline:auto;
  padding:9px;
  border-radius:14px;
}
@media (max-width:781px){
  .woocommerce div.product .woocommerce-product-gallery__image img{ max-height:250px; }
  .woocommerce div.product .flex-control-thumbs{ gap:12px; }
  .woocommerce div.product .flex-control-thumbs img{ max-height:68px; padding:7px; }
}

/* ⚠ Miniaturile late (fotografiile de ambalaj) depășeau celula din grilă —
   150 px de imagine într-o celulă de 130 px — și de aceea păreau lipite.
   Limitarea pe înălțime nu ajunge; trebuie și pe lățime. */
.woocommerce div.product .flex-control-thumbs img{
  box-sizing:border-box;
  max-width:100%;
  width:100%;
  height:auto;
  max-height:80px;
  object-fit:contain;
}

/* ==========================================================================
   25. CARDURI DE CATEGORIE
   Imaginile de categorie sunt montaje transparente, ca și produsele.
   ========================================================================== */
.woocommerce ul.products li.product-category img{
  background:transparent;
  aspect-ratio:1 / 1;
  object-fit:contain;
  padding:10px;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.4));
  transition:transform .22s ease;
}
:root[data-theme="light"] .woocommerce ul.products li.product-category img{
  filter:drop-shadow(0 10px 16px rgba(23,34,63,.18));
}
.woocommerce ul.products li.product-category:hover img{ transform:scale(1.04); }
.woocommerce ul.products li.product-category h2,
.woocommerce ul.products li.product-category h3{
  text-align:center;
  margin-top:.2rem;
}
.woocommerce ul.products li.product-category mark.count{ display:block; text-align:center; margin-top:.15rem; }

/* imaginile din listă: încadrate întregi, cu aceeași înălțime pe toate cardurile */
.woocommerce ul.products li.product a img{
  height:230px;
  object-fit:contain;
  padding:6px;
}
@media (max-width:820px){
  .woocommerce ul.products li.product a img{ height:190px; }
}
@media (max-width:520px){
  .woocommerce ul.products li.product a img{ height:220px; }
}


/* ---------- casetele de limbă și monedă ---------------------------------- */
/* Două segmente lipite într-un chenar, în locul listelor derulante ale
   pluginurilor. Segmentul activ e plin, celălalt e doar text. */
.gams-seg-box{
  display:inline-flex; align-items:stretch;
  border:1px solid var(--gams-card-brd); border-radius:999px;
  background:var(--gams-bg-soft); overflow:hidden; height:42px;
}
.gams-seg{
  display:inline-grid; place-items:center;
  min-width:44px; padding:0 13px;
  font-family:Poppins,sans-serif; font-size:.8rem; font-weight:600; letter-spacing:.04em;
  color:var(--gams-muted); text-decoration:none; white-space:nowrap;
  transition:color .16s ease, background .16s ease;
}
.gams-seg + .gams-seg{ border-left:1px solid var(--gams-card-brd); }
.gams-seg:hover{ color:var(--gams-text); background:var(--gams-card-hover); }
.gams-seg.is-active{ background:var(--gams-orange); color:var(--gams-btn-ink); }
.gams-seg.is-active:hover{ background:var(--gams-orange); color:var(--gams-btn-ink); }
@media (max-width:620px){
  .gams-seg-box{ height:38px; }
  .gams-seg{ min-width:38px; padding:0 10px; font-size:.75rem; }
}

/* întrebarea de monedă, la prima vizită pe o limbă străină */
.gams-valuta{
  position:fixed; z-index:9999; right:18px; bottom:18px;
  width:min(320px, calc(100vw - 36px));
  padding:18px 20px 16px; border-radius:18px;
  background:var(--gams-card); border:1px solid var(--gams-line-2);
  box-shadow:0 18px 44px rgba(0,0,0,.42);
  animation:gamsValutaIn .32s ease both;
}
@keyframes gamsValutaIn{ from{ opacity:0; transform:translateY(14px); } to{ opacity:1; transform:none; } }
.gams-valuta-titlu{
  margin:0 0 4px; font-family:var(--gams-font-heading, inherit);
  font-size:1.06rem; line-height:1.3; color:var(--gams-text);
}
.gams-valuta-sub{ margin:0 0 13px; font-size:.82rem; color:var(--gams-muted); }
.gams-valuta-optiuni{ display:flex; gap:9px; }
.gams-val-btn{
  flex:1 1 0; text-align:center; padding:10px 0;
  border-radius:999px; border:1px solid var(--gams-card-brd);
  background:var(--gams-bg-soft); color:var(--gams-text);
  font-family:Poppins,sans-serif; font-size:.86rem; font-weight:600; text-decoration:none;
  transition:background .16s ease, border-color .16s ease, color .16s ease;
}
.gams-val-btn:hover{ background:var(--gams-orange); border-color:var(--gams-orange); color:var(--gams-btn-ink); }
.gams-valuta-x{
  position:absolute; top:8px; right:10px;
  width:26px; height:26px; padding:0; line-height:1;
  border:0; background:none; color:var(--gams-muted);
  font-size:1.2rem; cursor:pointer; border-radius:999px;
}
.gams-valuta-x:hover{ color:var(--gams-text); background:var(--gams-card-hover); }
@media (prefers-reduced-motion:reduce){ .gams-valuta{ animation:none; } }


/* ---------- descrierea produsului, pe carduri ---------------------------- */
.gams-secs{ display:grid; gap:16px; margin-top:6px; }
.gams-sec-intro{
  font-size:1.02rem; line-height:1.75; color:var(--gams-text);
  max-width:74ch;
}
.gams-sec-intro p:last-child{ margin-bottom:0; }
.gams-sec{
  padding:20px 22px 18px;
  border:1px solid var(--gams-card-brd); border-radius:18px;
  background:var(--gams-card);
  transition:border-color .18s ease, box-shadow .18s ease;
}
.gams-sec:hover{ border-color:var(--gams-line-2); box-shadow:var(--gams-card-shadow); }
.gams-sec-titlu{
  margin:0 0 12px; padding-bottom:10px;
  font-size:1.22rem; line-height:1.25;
  border-bottom:1px solid var(--gams-card-brd);
  position:relative;
}
.gams-sec-titlu::after{
  content:""; position:absolute; left:0; bottom:-1px;
  width:46px; height:2px; background:var(--gams-orange); border-radius:2px;
}
.gams-sec-corp{ font-size:.95rem; line-height:1.7; color:var(--gams-text-2, var(--gams-text)); }
.gams-sec-corp > :first-child{ margin-top:0; }
.gams-sec-corp > :last-child{ margin-bottom:0; }

/* tabelul de valori nutriționale, în interiorul cardului */
.gams-sec-corp table{
  width:100%; border-collapse:collapse; margin:0;
  font-size:.9rem; border:0;
}
.gams-sec-corp table th,
.gams-sec-corp table td{
  padding:9px 12px; border:0;
  border-bottom:1px solid var(--gams-card-brd);
  text-align:left; vertical-align:top;
}
.gams-sec-corp table tr:last-child th,
.gams-sec-corp table tr:last-child td{ border-bottom:0; }
.gams-sec-corp table tr:nth-child(even){ background:var(--gams-bg-soft); }
.gams-sec-corp table th{ font-weight:600; color:var(--gams-text); width:58%; }
.gams-sec-corp table td{ color:var(--gams-muted); }
.gams-sec-corp table thead th{
  font-family:Poppins,sans-serif; font-size:.78rem; letter-spacing:.04em;
  color:var(--gams-muted);
}
/* ⚠ fără text-transform:uppercase aici — capul de tabel conține unități de măsură
   („la 100 g"), iar majusculele le-ar transforma în „LA 100 G", ceea ce e greșit:
   simbolul gramului se scrie mereu cu literă mică. */
/* derularea stă pe <figure>, nu pe <table>: cu display:block tabelul își pierde
   layoutul de tabel și rândurile se strâng la jumătate din lățimea cardului */
.gams-sec-corp figure.wp-block-table{ margin:0; overflow-x:auto; }
.gams-sec-corp figure.wp-block-table table{ min-width:340px; }

@media (max-width:600px){
  .gams-sec{ padding:16px 15px 14px; border-radius:15px; }
  .gams-sec-titlu{ font-size:1.1rem; }
}


/* butonul „Parte din DKL Distribution Group", la fel ca pe celelalte site-uri DKL */
.group-btn{
  display:inline-flex; align-items:center; gap:9px;
  margin-top:20px; padding:10px 16px;
  border-radius:11px;
  border:1px solid var(--gams-card-brd); background:var(--gams-bg-soft);
  color:var(--gams-muted); text-decoration:none;
  font-family:Poppins,sans-serif; font-weight:500; font-size:.72rem;
  letter-spacing:.12em; text-transform:uppercase; line-height:1.2;
  transition:background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}
.group-btn:hover{
  background:var(--gams-orange); border-color:var(--gams-orange);
  color:var(--gams-btn-ink); transform:translateY(-2px);
}
.group-btn svg{ flex:0 0 auto; }
@media (prefers-reduced-motion:reduce){ .group-btn:hover{ transform:none; } }


/* ---------- contul clientului -------------------------------------------- */
.gams-cont-avantaje{
  list-style:none; margin:16px 0 0; padding:14px 16px;
  border:1px solid var(--gams-card-brd); border-radius:14px;
  background:var(--gams-bg-soft);
  font-size:.88rem; line-height:1.6; color:var(--gams-muted);
}
.gams-cont-avantaje li{ position:relative; padding-left:22px; margin:0 0 7px; }
.gams-cont-avantaje li:last-child{ margin-bottom:0; }
.gams-cont-avantaje li::before{
  content:"✓"; position:absolute; left:0; top:0;
  color:var(--gams-orange); font-weight:700;
}
.gams-cont-nota{ font-size:.88rem; color:var(--gams-muted); margin:0 0 10px; }

/* ⚠ fără grid pe #customer_login — WooCommerce aranjează deja cele două formulare
   pe coloane (col2-set), iar un grid peste el le rupe ordinea. */


/* butonul „Continuă cumpărăturile" din coș — secundar, ca să nu concureze cu
   „Actualizează coșul", care e acțiunea principală a rândului */
.woocommerce .cart .actions .button.gams-continua,
.woocommerce-cart .cart .actions a.gams-continua{
  background:transparent !important;
  color:var(--gams-text) !important;
  border:1px solid var(--gams-card-brd) !important;
  margin-right:10px;
}
.woocommerce .cart .actions .button.gams-continua:hover,
.woocommerce-cart .cart .actions a.gams-continua:hover{
  border-color:var(--gams-orange) !important;
  color:var(--gams-orange) !important;
  background:transparent !important;
}
@media (max-width:640px){
  .woocommerce-cart .cart .actions a.gams-continua{ display:block; text-align:center; margin:0 0 10px; }
}


/* ---------- telefon: antetul și meniul ----------------------------------- */

/* ⚠ Meniul mobil apărea complet alb. WordPress dă panoului de navigație fundalul
   presetului „base" (alb) dacă blocul n-are `overlayBackgroundColor`, iar antetul
   nostru vine din baza de date, nu din fișierul temei — deci nu-l putem seta în
   marcaj. Îl îmbrăcăm din CSS, cu !important, ca să prindă indiferent de sursă. */
.wp-block-navigation__responsive-container.is-menu-open{
  background-color:var(--gams-bg) !important;
  color:var(--gams-text) !important;
  padding:78px 24px 44px !important;
  /* ⚠ Fără înălțime explicită panoul rămâne cât conținutul (122 px) și pagina se
     vede pe dedesubt, peste linkuri. `inset:0` singur nu ajunge — WordPress îi dă
     `height:auto`, iar la `position:fixed` înălțimea nu se mai deduce din bottom. */
  position:fixed !important;
  inset:0 !important;
  height:100vh !important;
  height:100dvh !important;
  overflow-y:auto !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
  flex:1 1 auto;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
  width:100%; align-items:stretch; justify-content:flex-start;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list{
  width:100%; gap:0 !important; align-items:stretch;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{
  width:100%; border-bottom:1px solid var(--gams-card-brd);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{ border-bottom:0; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
  display:block; width:100%; padding:17px 2px;
  font-size:1.16rem; color:var(--gams-text); text-decoration:none;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus{
  color:var(--gams-orange);
}
.wp-block-navigation__responsive-container-close{
  color:var(--gams-text) !important; top:22px !important; right:20px !important;
}
.wp-block-navigation__responsive-container-close svg{ width:26px; height:26px; }

/* ⚠ Antetul ieșea din ecran pe telefon: coșul rămânea tăiat la marginea dreaptă.
   Sunt șase controale pe un rând, iar la 390 px nu încap la dimensiunea de desktop. */
@media (max-width:680px){
  .gams-header .wp-block-group.alignwide{ gap:8px; }
  .gams-tools{ gap:6px !important; }
  .gams-header .gams-logo img{ height:34px; }   /* doar în antet: .gams-logo e și pe sigla din hero */
  .gams-cart-link, .gams-toggle{ width:36px; height:36px; }
  .gams-cart-link svg, .gams-toggle svg{ width:18px; height:18px; }
  .gams-seg-box{ height:36px; }
  .gams-seg{ min-width:32px; padding:0 8px; font-size:.68rem; letter-spacing:.03em; }
  .wp-block-woocommerce-customer-account a{ padding:0 !important; }
  .wp-block-woocommerce-customer-account svg{ width:20px; height:20px; }
}
@media (max-width:470px){
  /* contul se ajunge din meniu și din subsol; în antet nu mai are loc */
  .gams-header .wp-block-woocommerce-customer-account{ display:none !important; }
  .gams-header .gams-logo img{ height:31px; }
  .gams-seg{ min-width:30px; padding:0 7px; }
}
/* plasa de siguranță: nimic din antet nu împinge pagina pe orizontală */
.gams-header, .gams-header .wp-block-group.alignwide{ max-width:100%; }
.gams-header .wp-block-group.alignwide{ min-width:0; }
.gams-tools{ min-width:0; flex-shrink:1; }

/* ⚠ WooCommerce își agață singur blocul de mini-coș în antet, iar tema are deja
   butonul ei de coș — apăreau două pictograme una lângă alta, iar pe telefon
   mâncau din lățimea de care aveam nevoie. O ascundem pe a lui. */
.gams-header .wp-block-woocommerce-mini-cart,
.gams-header .wc-block-mini-cart{ display:none !important; }
