/*
Theme Name: Porto Child
Theme URI: https://www.portotheme.com/wordpress/porto
Author: P-THEMES
Author URI: https://www.portotheme.com/
Description: Porto Responsive WordPress + eCommerce Theme.
Version: 1.1
Template: porto
License: Commercial
License URI: http://themeforest.net/licenses/regular_extended
Tags: woocommerce, ecommerce, responsive
*/

/* ==========================================================================
   GOLAZO · Camisetas de Fútbol — Child theme redesign (es_ES)
   Todo el CSS del rediseño vive en este archivo.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Barlow:wght@400;500;600;700&display=swap');

/* ---------- 1. DESIGN TOKENS ---------- */
:root{
  --gz-ink:#0d1b2a;
  --gz-ink-2:#12293f;
  --gz-brand:#00a55f;
  --gz-brand-d:#00844c;
  --gz-brand-l:#e6f7ef;
  --gz-amber:#ffb020;
  --gz-sale:#e4002b;
  --gz-bg:#ffffff;
  --gz-surface:#f5f7f9;
  --gz-surface-2:#eaeff3;
  --gz-line:#e3e9ee;
  --gz-text:#1a2b3a;
  --gz-muted:#66788a;
  --gz-radius:16px;
  --gz-radius-sm:11px;
  --gz-radius-xs:8px;
  --gz-shadow-sm:0 1px 2px rgba(13,27,42,.05),0 2px 6px rgba(13,27,42,.05);
  --gz-shadow:0 8px 28px rgba(13,27,42,.09);
  --gz-shadow-lg:0 22px 60px rgba(13,27,42,.16);
  --gz-container:1240px;
  --gz-font:'Barlow','Segoe UI',system-ui,-apple-system,sans-serif;
  --gz-display:'Barlow Condensed','Barlow',system-ui,sans-serif;
  --gz-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- 2. GLOBAL BASE ---------- */
body,#main,.page-wrapper,p,li,td,input,select,textarea,.woocommerce{ font-family:var(--gz-font); color:var(--gz-text); }
body{ background:var(--gz-bg); -webkit-font-smoothing:antialiased; letter-spacing:.1px; }
h1,h2,h3,h4,h5,.gz-display{ font-family:var(--gz-display); letter-spacing:.2px; color:var(--gz-ink); }
a{ color:var(--gz-brand-d); }
a:hover{ color:var(--gz-brand); }
.gz-wrap{ max-width:var(--gz-container); margin-inline:auto; padding-inline:20px; }
::selection{ background:var(--gz-brand); color:#fff; }
img{ max-width:100%; }

/* utility full-bleed */
html,body{ overflow-x:hidden; }
.gz-bleed{ width:100%; position:relative; }
/* front page: neutralise Porto's Bootstrap container to true full width */
.page-id-2 #main .container-fluid,
.page-id-2 .row.main-content-wrap,
.page-id-2 .main-content,
.page-id-2 #content,
.page-id-2 article.page,
.page-id-2 .page-content{
  width:100% !important; max-width:100% !important;
  margin:0 !important; padding:0 !important; flex:0 0 100% !important;
}
.page-id-2 #main{ padding:0 !important; }
/* hide theme page title/breadcrumb on the front page */
.page-id-2 .page-header,.page-id-2 .entry-title,
.page-id-2 .breadcrumb,.page-id-2 .porto-breadcrumbs-wrap{ display:none !important; }
.gz-home{ margin-top:0; }

/* ---------- 3. HEADER ---------- */
#header, .header-wrapper{ background:#fff; }
#header{ box-shadow:0 1px 0 var(--gz-line); }
/* announcement / top bar (section that holds the announcement carousel or the shop-now button) */
#header .elementor-section:has(.owl-carousel),
#header .elementor-section:has(.btn-link){
  background:linear-gradient(90deg,var(--gz-ink),var(--gz-ink-2)) !important;
}
#header .elementor-section:has(.owl-carousel) .elementor-heading-title,
#header .elementor-section:has(.btn-link) .elementor-heading-title{
  color:#dfe8f0 !important; font-family:var(--gz-font) !important;
  font-size:12.5px !important; font-weight:600 !important; letter-spacing:.6px;
  text-transform:uppercase; margin:0 !important; line-height:40px;
}
#header .elementor-section:has(.owl-carousel) .btn-link,
#header .elementor-section:has(.btn-link) .btn-link{
  color:var(--gz-amber) !important; font-weight:700 !important; text-transform:uppercase;
  letter-spacing:.5px; font-size:12.5px !important; border:0 !important; padding:0 6px !important;
}
#header .elementor-section:has(.owl-carousel) .btn-link:hover{ color:#fff !important; }
#header .elementor-section:has(.owl-carousel) .elementor-container{ min-height:40px; }
#header .elementor-section:has(.owl-carousel) .mfp-close{ display:none !important; }

/* main header row */
#header .elementor-section:has(.elementor-widget-porto_hb_logo){
  background:#fff !important; border-bottom:1px solid var(--gz-line);
}
#header .elementor-section:has(.elementor-widget-porto_hb_logo) > .elementor-container{
  display:flex !important; align-items:center !important;
  max-width:var(--gz-container); margin-inline:auto; min-height:66px; gap:10px;
  padding-inline:20px;
}
/* sticky */
#header.sticky-header .header-main, .fixed-header #header.sticky-header .header-main{ background:#fff !important; }

/* brand wordmark replaces broken logo image */
.elementor-widget-porto_hb_logo img{ display:none !important; }
.elementor-widget-porto_hb_logo .elementor-widget-container{ display:inline-flex; align-items:center; }
.elementor-widget-porto_hb_logo a{ display:inline-flex !important; align-items:center; gap:5px;
  width:auto !important; line-height:1; }
.elementor-widget-porto_hb_logo a::before{
  content:"GOLAZO"; font-family:var(--gz-display); font-weight:800;
  font-size:30px; letter-spacing:1.5px; line-height:1; color:var(--gz-ink);
  text-transform:uppercase; white-space:nowrap;
}
.elementor-widget-porto_hb_logo a::after{
  content:""; display:inline-block; width:9px; height:9px; border-radius:50%;
  background:var(--gz-brand); }

/* header nav (top-links) */
#header .elementor-widget-porto_hb_menu ul.top-links{ display:flex; gap:6px; margin:0; padding:0; list-style:none; }
#header ul.top-links > li.menu-item > a{
  font-family:var(--gz-font); font-weight:600; font-size:14px; letter-spacing:.3px;
  color:var(--gz-ink) !important; padding:10px 14px !important; border-radius:9px;
  text-transform:none; transition:.2s var(--gz-ease); background:transparent;
}
#header ul.top-links > li.menu-item > a:hover{ color:var(--gz-brand-d) !important; background:var(--gz-brand-l); }

/* header icons: search / account / cart */
#header .porto-icon-magnifier,#header .porto-icon-user,#header .minicart-icon,
#header .elementor-widget-porto_hb_myaccount i,#header .elementor-widget-porto_hb_mini_cart i,
#header .elementor-widget-porto_hb_search_form i{ font-size:20px !important; color:var(--gz-ink) !important; }
#header .search-text,#header .minicart-text .cart-head .cart-label{ font-weight:600; color:var(--gz-ink); }
#header .elementor-widget-porto_hb_mini_cart .cart-items,
#header .cart-head .cart-count,#header .minicart-icon .cart-items{
  background:var(--gz-brand) !important; color:#fff !important; font-weight:700;
}
#header .elementor-widget-porto_hb_search_form,
#header .elementor-widget-porto_hb_myaccount,
#header .elementor-widget-porto_hb_mini_cart{ display:flex; align-items:center; }
#header a:hover .porto-icon-magnifier,#header a:hover .porto-icon-user{ color:var(--gz-brand) !important; }
/* hide leftover English micro-labels + stray single-item "Home" menu */
#header ul#menu-main-menu{ display:none !important; }
#header .search-text,#header .cart-subtotal,#header .minicart-text .cart-label{ display:none !important; }
#header .elementor-widget-porto_hb_mini_cart{ position:relative; }
#header .cart-icon .cart-items{ position:absolute; top:-6px; right:-8px; min-width:17px; height:17px;
  border-radius:9px; font-size:10.5px; line-height:17px; text-align:center; padding:0 4px; }
#header .mini-cart .cart-head{ position:relative; }

/* ---------- 4. BUTTONS (global) ---------- */
.gz-btn,.woocommerce a.button,.woocommerce button.button,.woocommerce .button,
.woocommerce #respond input#submit,.wc-block-components-button,
a.button.wc-forward,.single_add_to_cart_button{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-family:var(--gz-font) !important; font-weight:700 !important; letter-spacing:.3px;
  background:var(--gz-brand) !important; color:#fff !important; border:0 !important;
  border-radius:999px !important; padding:13px 26px !important; text-transform:none !important;
  box-shadow:0 6px 18px rgba(0,165,95,.28); transition:.22s var(--gz-ease); cursor:pointer;
  line-height:1.1 !important;
}
.gz-btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover,
.single_add_to_cart_button:hover{ background:var(--gz-brand-d) !important; color:#fff !important;
  transform:translateY(-2px); box-shadow:0 12px 28px rgba(0,165,95,.34); }
.gz-btn--ghost{ background:transparent !important; color:#fff !important; border:2px solid rgba(255,255,255,.6) !important;
  box-shadow:none; }
.gz-btn--ghost:hover{ background:#fff !important; color:var(--gz-ink) !important; border-color:#fff !important; }
.gz-btn--dark{ background:var(--gz-ink) !important; box-shadow:0 6px 18px rgba(13,27,42,.28); }
.gz-btn--dark:hover{ background:var(--gz-ink-2) !important; }

/* ---------- 5. HOMEPAGE SECTIONS ---------- */
.gz-home section{ margin:0; }
/* hero */
.gz-hero{
  background:radial-gradient(1200px 500px at 78% -10%,rgba(0,165,95,.28),transparent 60%),
             linear-gradient(120deg,var(--gz-ink) 0%,#0a2136 55%,#0b2b1e 100%);
  color:#fff; position:relative; overflow:hidden;
}
.gz-hero::before{ /* pitch lines decoration */
  content:""; position:absolute; inset:0; opacity:.10; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),
    radial-gradient(circle at 100% 50%,rgba(255,255,255,.5) 0 2px,transparent 3px);
  background-size:100% 76px,100% 100%;
}
.gz-hero__inner{ max-width:var(--gz-container); margin-inline:auto; padding:64px 20px 68px;
  display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:40px; position:relative; z-index:2; }
.gz-hero__eyebrow{ display:inline-flex; align-items:center; gap:9px; font-weight:700; letter-spacing:1.4px;
  text-transform:uppercase; font-size:12.5px; color:#bff0d7; background:rgba(0,165,95,.16);
  border:1px solid rgba(0,165,95,.4); padding:7px 15px; border-radius:999px; margin-bottom:22px; }
.gz-hero__eyebrow::before{ content:""; width:8px; height:8px; border-radius:50%; background:var(--gz-brand); box-shadow:0 0 0 4px rgba(0,165,95,.25); }
.gz-hero h1{ font-family:var(--gz-display); color:#fff; font-weight:800; text-transform:uppercase;
  font-size:clamp(40px,5.6vw,74px); line-height:.95; margin:0 0 18px; letter-spacing:.5px; }
.gz-hero h1 em{ font-style:normal; color:var(--gz-brand); display:block; }
.gz-hero p{ color:#cdd8e2; font-size:18px; line-height:1.6; max-width:520px; margin:0 0 30px; }
.gz-hero__cta{ display:flex; flex-wrap:wrap; gap:14px; }
.gz-hero__stats{ display:flex; gap:32px; margin-top:38px; }
.gz-hero__stats b{ font-family:var(--gz-display); font-size:30px; color:#fff; display:block; line-height:1; }
.gz-hero__stats span{ color:#9fb0bf; font-size:13px; letter-spacing:.4px; }
.gz-hero__media{ position:relative; }
.gz-hero__media .gz-hero__disc{ position:absolute; inset:6% 4%; border-radius:50%;
  background:radial-gradient(circle at 50% 40%,rgba(0,165,95,.55),rgba(0,165,95,0) 62%); filter:blur(6px); }
.gz-hero__media img{ position:relative; z-index:2; width:100%; max-width:460px; margin-inline:auto; display:block;
  filter:drop-shadow(0 30px 50px rgba(0,0,0,.5)); transform:rotate(-3deg); }
.gz-hero__badge{ position:absolute; z-index:3; top:8%; right:6%; background:var(--gz-amber); color:var(--gz-ink);
  font-family:var(--gz-display); font-weight:800; text-transform:uppercase; font-size:16px; line-height:1;
  padding:14px 16px; border-radius:50%; width:92px; height:92px; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center; box-shadow:var(--gz-shadow-lg); rotate:8deg; }
.gz-hero__badge b{ font-size:26px; }

/* trust strip */
.gz-strip{ background:#fff; border-bottom:1px solid var(--gz-line); }
.gz-strip__inner{ max-width:var(--gz-container); margin-inline:auto; padding:22px 20px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.gz-strip__item{ display:flex; align-items:center; gap:14px; }
.gz-strip__ic{ flex:0 0 auto; width:46px; height:46px; border-radius:13px; background:var(--gz-brand-l);
  color:var(--gz-brand-d); display:flex; align-items:center; justify-content:center; font-size:22px; }
.gz-strip__item b{ display:block; font-family:var(--gz-font); font-weight:700; color:var(--gz-ink); font-size:15px; }
.gz-strip__item span{ color:var(--gz-muted); font-size:13px; }

/* section heading */
.gz-sec{ padding:64px 0; }
.gz-sec--tint{ background:var(--gz-surface); }
.gz-head{ text-align:center; max-width:640px; margin:0 auto 40px; }
.gz-head .gz-kick{ display:inline-block; font-weight:700; letter-spacing:1.6px; text-transform:uppercase;
  font-size:12.5px; color:var(--gz-brand-d); margin-bottom:12px; }
.gz-head h2{ font-family:var(--gz-display); font-weight:800; text-transform:uppercase;
  font-size:clamp(30px,4vw,44px); line-height:1; margin:0 0 12px; }
.gz-head p{ color:var(--gz-muted); font-size:16px; margin:0; }

/* collection tiles */
.gz-cols{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.gz-col{ position:relative; display:flex; align-items:flex-end; overflow:hidden;
  border-radius:var(--gz-radius); aspect-ratio:4/5; background:var(--gz-ink); box-shadow:var(--gz-shadow); }
.gz-col img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;
  transition:transform .6s var(--gz-ease); }
.gz-col::after{ content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(to top,rgba(8,17,28,.92) 6%,rgba(8,17,28,.3) 52%,rgba(8,17,28,0) 82%); }
.gz-col:hover img{ transform:scale(1.07); }
.gz-col__body{ position:relative; z-index:2; padding:26px; color:#fff; width:100%; }
.gz-col__body span{ font-weight:700; letter-spacing:1.2px; text-transform:uppercase; font-size:12px; color:var(--gz-amber); }
.gz-col__body h3{ font-family:var(--gz-display); color:#fff; text-transform:uppercase; font-size:26px; margin:6px 0 14px; line-height:1; }
.gz-col__link{ display:inline-flex; align-items:center; gap:8px; font-weight:700; color:#fff;
  border-bottom:2px solid var(--gz-brand); padding-bottom:3px; font-size:14px; }
.gz-col__link:hover{ color:var(--gz-brand); }

/* promo banner */
.gz-promo{ background:linear-gradient(120deg,var(--gz-brand-d),#046b3f 40%,var(--gz-ink) 100%); color:#fff; overflow:hidden; }
.gz-promo__inner{ max-width:var(--gz-container); margin-inline:auto; padding:52px 20px;
  display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap; position:relative; }
.gz-promo__inner::before{ content:""; position:absolute; right:-40px; top:50%; transform:translateY(-50%);
  width:320px; height:320px; border-radius:50%; border:36px solid rgba(255,255,255,.06); }
.gz-promo h2{ font-family:var(--gz-display); color:#fff; text-transform:uppercase; font-size:clamp(28px,3.6vw,42px);
  line-height:1; margin:0 0 8px; }
.gz-promo p{ color:rgba(255,255,255,.82); margin:0; font-size:16px; }
.gz-promo .gz-code{ display:inline-block; margin-top:14px; border:2px dashed rgba(255,255,255,.5);
  border-radius:10px; padding:8px 16px; font-family:var(--gz-display); font-weight:700; letter-spacing:2px; font-size:20px; }

/* closing / newsletter */
.gz-news{ background:var(--gz-ink); color:#fff; text-align:center; }
.gz-news__inner{ max-width:720px; margin-inline:auto; padding:64px 20px; }
.gz-news h2{ color:#fff; font-family:var(--gz-display); text-transform:uppercase; font-size:clamp(28px,3.6vw,40px); margin:0 0 10px; }
.gz-news p{ color:#aebccb; margin:0 0 26px; font-size:16px; }
.gz-news form{ display:flex; gap:10px; max-width:480px; margin:0 auto; flex-wrap:wrap; }
.gz-news input[type=email]{ flex:1 1 240px; border:0; border-radius:999px; padding:14px 20px; font-size:15px; }

/* ---------- 6. PRODUCT CARDS (home grids + shop) ---------- */
.woocommerce ul.products,.porto-posts-grid .products-container,.gz-home .products{ gap:22px; }
.woocommerce ul.products li.product,
.porto-posts-grid .product,.products-container .product,.product-small.box{
  background:#fff; border:1px solid var(--gz-line); border-radius:var(--gz-radius);
  overflow:hidden; transition:.25s var(--gz-ease); scroll-margin-top:72px; padding:0;
}
.woocommerce ul.products li.product:hover,
.porto-posts-grid .product:hover,.products-container .product:hover,.product-small.box:hover{
  border-color:transparent; box-shadow:var(--gz-shadow); transform:translateY(-4px);
}
.woocommerce ul.products li.product a img,
.porto-posts-grid .product img,.product-small .product-image img{
  border-radius:0; background:var(--gz-surface); aspect-ratio:1/1; object-fit:cover; width:100%;
}
.product-small .product-image,.woocommerce ul.products li.product .product-thumbnail{ position:relative; overflow:hidden; }
/* card body padding for porto blocks */
.porto-posts-grid .product .term-description,
.porto-tb-item,.product-small .box-text,
.woocommerce ul.products li.product .porto-tb-woo,
.woocommerce ul.products li.product > a + *,
.product-small .box-text-products{ padding:14px 16px 18px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.porto-posts-grid .product .woocommerce-loop-product__title,
.product-small .name a,.porto-tb-woo-title a,
.woocommerce ul.products li.product h3,.woocommerce ul.products li.product .name{
  font-family:var(--gz-font) !important; font-weight:600 !important; font-size:14.5px !important;
  color:var(--gz-ink) !important; line-height:1.35 !important; margin:0 0 8px !important;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.woocommerce ul.products li.product .price,.porto-posts-grid .product .price,
.product-small .price,.tb-woo-price .price{
  color:var(--gz-brand-d) !important; font-family:var(--gz-display) !important;
  font-weight:700 !important; font-size:21px !important;
}
.woocommerce ul.products li.product .price del,.product-small .price del{
  color:var(--gz-muted) !important; font-size:15px !important; font-weight:500 !important; opacity:.8; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; }
/* sale badge */
.woocommerce span.onsale,.porto-posts-grid .onsale,.product-small .onsale,.onsale{
  background:var(--gz-sale) !important; color:#fff !important; border-radius:999px !important;
  font-family:var(--gz-font) !important; font-weight:700 !important; font-size:11.5px !important;
  letter-spacing:.4px; padding:5px 11px !important; min-height:0 !important; min-width:0 !important;
  line-height:1.1 !important; top:12px !important; left:12px !important; right:auto !important;
  margin:0 !important; box-shadow:0 4px 12px rgba(228,0,43,.32); }
/* add to cart on card */
.woocommerce ul.products li.product .button,
.porto-tb-woo-link.porto-tb-addcart,.product-small .add_to_cart_button{
  border-radius:999px !important; font-size:13.5px !important; padding:10px 18px !important; margin-top:2px; }

/* ---------- 7. PLP / SHOP ---------- */
.woocommerce .page-title,.page-header .page-title,.archive .entry-title{ font-family:var(--gz-display); text-transform:uppercase; }
.gz-shop-hero{ background:linear-gradient(120deg,var(--gz-ink),var(--gz-ink-2)); color:#fff; }
.woocommerce .woocommerce-result-count{ color:var(--gz-muted); font-size:14px; }
.woocommerce .woocommerce-ordering select,.orderby,
.woocommerce .widget_layered_nav select,.wc-block-components-sort-select__select{
  border:1px solid var(--gz-line); border-radius:999px; padding:9px 16px; font-size:14px; background:#fff; color:var(--gz-ink); }
/* sidebar widgets */
.sidebar .widget,.widget-area .widget{ background:#fff; border:1px solid var(--gz-line); border-radius:var(--gz-radius);
  padding:20px; margin-bottom:22px; }
.sidebar .widget-title,.widget-area .widget-title,.widget .widgettitle{
  font-family:var(--gz-display); text-transform:uppercase; font-size:19px; color:var(--gz-ink);
  border:0; padding:0 0 12px; margin:0 0 14px; border-bottom:2px solid var(--gz-surface-2); position:relative; }
.sidebar .widget-title::after,.widget-area .widget-title::after{
  content:""; position:absolute; left:0; bottom:-2px; width:46px; height:2px; background:var(--gz-brand); }
.widget_price_filter .ui-slider .ui-slider-range,.price_slider .ui-slider-range{ background:var(--gz-brand) !important; }
.widget_price_filter .ui-slider .ui-slider-handle,.price_slider .ui-slider-handle{ background:var(--gz-ink) !important; border:0 !important; }

/* shop: hide near-empty sidebar, go full-width multi-column grid */
.post-type-archive-product .main-content-wrap .sidebar,
.tax-product_cat .main-content-wrap .sidebar,
.woocommerce-shop .main-content-wrap .sidebar{ display:none !important; }
.post-type-archive-product .main-content-wrap .main-content,
.tax-product_cat .main-content-wrap .main-content,
.woocommerce-shop .main-content-wrap .main-content{ width:100% !important; max-width:100% !important; flex:0 0 100% !important; }
/* force a clean product grid regardless of Porto column classes */
.woocommerce-shop .products-container.products,
.post-type-archive-product .products-container.products,
.tax-product_cat .products-container.products,
.woocommerce .porto-posts-grid .products-container.products{
  display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:22px !important;
  width:100% !important; margin:0 !important;
}
.woocommerce-shop .products-container.products > .product,
.post-type-archive-product .products-container.products > .product,
.tax-product_cat .products-container.products > .product,
.woocommerce .porto-posts-grid .products-container.products > .product{
  width:auto !important; max-width:none !important; margin:0 !important; float:none !important; padding:0 !important;
}
.woocommerce .porto-posts-grid .product .box-image,
.woocommerce-shop .product .product-image{ background:var(--gz-surface); }
@media (max-width:1199px){
  .woocommerce-shop .products-container.products,.post-type-archive-product .products-container.products,
  .tax-product_cat .products-container.products{ grid-template-columns:repeat(3,1fr) !important; }
}
@media (max-width:767px){
  .woocommerce-shop .products-container.products,.post-type-archive-product .products-container.products,
  .tax-product_cat .products-container.products{ grid-template-columns:repeat(2,1fr) !important; gap:14px !important; }
}

/* pagination */
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  border-radius:9px !important; border:1px solid var(--gz-line) !important; color:var(--gz-ink); min-width:40px; }
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{ background:var(--gz-brand) !important; color:#fff !important; border-color:var(--gz-brand) !important; }

/* ---------- 8. PDP ---------- */
.single-product div.product .product_title{ font-family:var(--gz-display); text-transform:none; font-weight:700;
  font-size:clamp(26px,3vw,38px); line-height:1.1; color:var(--gz-ink); }
.single-product div.product p.price,.single-product div.product span.price{
  color:var(--gz-brand-d) !important; font-family:var(--gz-display); font-weight:700; font-size:30px; }
.single-product .single_add_to_cart_button{ padding:15px 34px !important; font-size:16px !important; }
.gz-pdp-trust{ display:flex; flex-wrap:wrap; gap:16px; margin:22px 0 6px; padding:18px 20px;
  background:var(--gz-surface); border:1px solid var(--gz-line); border-radius:var(--gz-radius-sm); }
.gz-pdp-trust div{ display:flex; align-items:center; gap:10px; font-size:13.5px; color:var(--gz-ink); font-weight:600; flex:1 1 40%; }
.gz-pdp-trust i{ color:var(--gz-brand); font-size:18px; }
.gz-pdp-size{ margin:14px 0; font-size:14px; color:var(--gz-muted); }
.gz-pdp-size b{ color:var(--gz-ink); }
.single-product .woocommerce-tabs ul.tabs li{ border-radius:999px !important; border:1px solid var(--gz-line) !important; background:#fff !important; }
.single-product .woocommerce-tabs ul.tabs li.active{ background:var(--gz-ink) !important; }
.single-product .woocommerce-tabs ul.tabs li.active a{ color:#fff !important; }

/* ---------- 9. FOOTER ---------- */
#footer,.footer.footer-builder{ background:var(--gz-ink) !important; color:#b9c6d2; }
#footer .elementor-section:has(.elementor-widget-porto_info_box){ background:var(--gz-ink-2) !important; border-bottom:1px solid rgba(255,255,255,.06); }
#footer .porto-sicon-box{ display:flex; align-items:center; gap:16px; text-align:left; }
#footer .porto-just-icon-wrapper i{ color:var(--gz-brand) !important; font-size:34px !important; }
#footer .porto-sicon-title{ color:#fff !important; font-family:var(--gz-font) !important; font-weight:700 !important;
  font-size:16px !important; margin:0 0 3px !important; }
#footer .porto-sicon-description p{ color:#8ea0b0 !important; font-size:13px !important; margin:0 !important; line-height:1.5; }
#footer h1,#footer h2,#footer h3,#footer h4,#footer h5,#footer .elementor-heading-title{
  color:#fff !important; font-family:var(--gz-display) !important; text-transform:uppercase !important;
  letter-spacing:.6px; font-size:17px !important; }
#footer a{ color:#b9c6d2 !important; transition:.18s; }
#footer a:hover{ color:var(--gz-brand) !important; }
#footer ul li a{ padding:5px 0 !important; display:inline-block; font-size:14px; }
#footer .elementor-divider,#footer hr{ border-color:rgba(255,255,255,.08) !important; }
#footer .elementor-widget-porto_info_box .porto-sicon-description p{ color:#8ea0b0 !important; }
/* copyright / bottom bar */
#footer .elementor-section:last-child{ background:#08131f !important; }
#footer .elementor-section:last-child .elementor-heading-title,
#footer .elementor-section:last-child p{ color:#7b8b9a !important; font-family:var(--gz-font) !important;
  text-transform:none !important; font-size:13px !important; }

/* WhatsApp float above bottom bars but under nothing critical */
.joinchat{ z-index:4 !important; }

/* exit-intent popup: el cupón real ya es BIENVENIDA (scn_promo_config), se muestra el
   <strong> auténtico — la máscara CSS anterior ya no es necesaria (SCN fable-polish tpl-9) */
.scn-exit-code strong{ font-family:var(--gz-display); font-weight:800;
  letter-spacing:1px; font-size:18px; color:var(--gz-brand-d); }

/* ---------- 10. RESPONSIVE ---------- */
@media (max-width:991px){
  .gz-hero__inner{ grid-template-columns:1fr; text-align:center; gap:8px; padding:44px 20px 48px; }
  .gz-hero p{ margin-inline:auto; }
  .gz-hero__cta,.gz-hero__stats{ justify-content:center; }
  .gz-hero__media{ order:-1; max-width:340px; margin:0 auto 8px; }
  .gz-hero__badge{ width:74px; height:74px; font-size:12px; }
  .gz-hero__badge b{ font-size:20px; }
  .gz-strip__inner{ grid-template-columns:repeat(2,1fr); gap:16px 12px; }
  .gz-cols{ grid-template-columns:1fr; }
  .gz-promo__inner{ text-align:center; justify-content:center; }
}
@media (max-width:767px){
  /* mobile sticky header compact */
  #header .elementor-section:has(.elementor-widget-porto_hb_logo) > .elementor-container{ min-height:56px; }
  .elementor-widget-porto_hb_logo .elementor-widget-container::before{ font-size:24px; }
  #header ul.top-links{ display:none !important; }
  .gz-sec{ padding:44px 0; }
  .gz-strip__inner{ grid-template-columns:1fr 1fr; }
  .gz-hero h1{ font-size:clamp(34px,10vw,48px); }
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .product-small .name a{ font-size:13.5px !important; }
}
@media (min-width:768px){
  .woocommerce.columns-4 ul.products li.product,.columns-4 ul.products li.product{ margin-bottom:22px; }
}

/* ---- 11. ROUND 2 · POLISH PASS (micro-ajustes, no reescritura) ---- */
/* P1 · Buscador cabecera: quitar look input-por-defecto + botón roto */
.searchform input.search-field,.widget_search input[type="search"],.widget_search input[type="text"],#header input.search-field{
  border:1px solid var(--gz-line)!important;border-radius:999px!important;padding:9px 16px!important;background:#fff!important;
  height:auto!important;font-family:var(--gz-font)!important;box-shadow:var(--gz-shadow-sm);transition:border-color .18s,box-shadow .18s}
.searchform input.search-field:focus,#header input.search-field:focus{border-color:var(--gz-brand)!important;box-shadow:0 0 0 3px var(--gz-brand-l)!important;outline:none!important}
.searchform input[type="submit"],.widget_search input[type="submit"],.widget_search button[type="submit"]{
  background:var(--gz-brand)!important;border:none!important;border-radius:999px!important;color:#fff!important;padding:9px 16px!important;
  margin-left:6px!important;font-weight:700!important;cursor:pointer;transition:background .18s}
.searchform input[type="submit"]:hover,.widget_search input[type="submit"]:hover{background:var(--gz-brand-d)!important}
/* P2 · Menú superior: sin subrayado + hover suave */
#header nav a,#header .menu li a,#header ul.top-links li a{text-decoration:none!important;transition:color .18s var(--gz-ease)}
#header nav a:hover,#header .menu li a:hover{color:var(--gz-brand)!important}
/* P3 · "Ordenar por": el texto se cortaba (Orden predeterminac…) */
.woocommerce .woocommerce-ordering,.woocommerce .woocommerce-ordering select.orderby,.porto-product-filters .orderby,.orderby-dropdown{min-width:215px!important;white-space:nowrap!important}
/* P4 · Tarjetas: micro-elevación al hover */
.woocommerce ul.products li.product,.products .product-small{transition:transform .25s var(--gz-ease),box-shadow .25s var(--gz-ease)!important}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:var(--gz-shadow)!important}


/* === SCN verifyDeployment r2 @ 2026-07-01T22:33:40.895Z === */
/* homepage: Hero 头部 kicker（span.gz-kick '● TEMPORADA 2025/2026'）与副标题（div.gz-head > p）在深绿渐变背景上文字对比度不足（WCAG 客观命中）。仅调整文字颜色，不动背景/阴影/布局，避免上一轮的性能/CLS 回退。 [severity=medium] */
section.gz-sec > div.gz-wrap > div.gz-head > span.gz-kick{color:#ffffff !important;opacity:1 !important;}section.gz-sec > div.gz-wrap > div.gz-head > p{color:#eef4f0 !important;opacity:1 !important;}

/* category: 产品卡上的两个行动按钮——a.viewcart-style-3（查看购物车）与 a.wpcbn-btn（加入购物车）——文字/背景对比度不足（WCAG 客观命中），且作为 ghost/浅色按钮在白卡上不够醒目，影响转化。改为实心绿底白字（品牌绿），只改颜色不加阴影/位移，避免布局与性能回退。 [severity=medium] */
div.product-content > div.add-links-wrap > div.add-links > a.viewcart-style-3,li.product-col > div.product-inner > div.product-content > a.wpcbn-btn{background-color:#0a7d43 !important;color:#ffffff !important;border:1px solid #0a7d43 !important;}


/* === SCN verifyDeployment r3 @ 2026-07-01T22:39:51.821Z === */
/* homepage: 客观检测命中：section.gz-sec > div.gz-wrap > div.gz-head 内的 kicker（span.gz-kick）文字对比度不足（WCAG 未达 AA）。注意这是 gz-sec 常规区块的 kicker，不是已回滚的 hero kicker。 [severity=medium] */
section.gz-sec > div.gz-wrap > div.gz-head span.gz-kick { color: #b45309 !important; font-weight: 700 !important; }

/* homepage: 客观检测命中：section.gz-sec > div.gz-wrap > div.gz-head 内的段落 p（区块副标题/说明文字，多处）对比度不足，未达 WCAG AA。为浅底区块，需加深正文色。 [severity=medium] */
section.gz-sec > div.gz-wrap > div.gz-head p { color: #334155 !important; }

/* homepage: 客观检测命中：newsletter 区块 section.gz-news > div.gz-news__inner > form > input 的输入框文字/占位符对比度不足，用户看不清 placeholder 与已输入邮箱。 [severity=medium] */
section.gz-news > div.gz-news__inner > form > input { color: #0f172a !important; background: #ffffff !important; }
section.gz-news > div.gz-news__inner > form > input::placeholder { color: #475569 !important; opacity: 1 !important; }

/* === SCN CLS 根因修复 (2026-07-02): header-builder 里 topbar promo section
   (data-id d8eae89 inner / af22579 outer) 被误设 min-height 470px(desktop)/600px(mobile)
   → 一行文案撑出半屏空白 + Elementor 初始化时 header 140px→760px 膨胀 = CLS 0.735。
   去掉 min-height 后初始渲染高度≈终态,shift 自然消除。=== */
.header-builder .elementor-section[data-id="d8eae89"],
.header-builder .elementor-section[data-id="af22579"]{
  min-height:0 !important;
}
.header-builder .elementor-section[data-id="d8eae89"] > .elementor-container,
.header-builder .elementor-section[data-id="af22579"] > .elementor-container{
  min-height:0 !important;
}
/* 预留 header 终态高度(mobile 208 / desktop 205)→ 初始渲染即终态,Elementor 初始化不再推移下方内容 */
.header-wrapper{ min-height:205px; }
@media (max-width:992px){ .header-wrapper{ min-height:208px; } }


/* === SCN fable-polish (tpl-9) @ 2026-07-02 === */
/* [F6/high] móvil /shop/: el contenedor es display:grid pero el CSS dinámico de Porto
   no trae las reglas de columnas ccols → tarjetas de 81px. Reponemos las pistas del
   grid: 2 col en móvil (ccols-2), 3 col en 576-767px (ccols-sm-3). Acotado al listado. */
/* nota: en uploads/elementor/css/custom-frontend.min.css vive una copia de las reglas
   del grid con selector 0-4-0 (.woocommerce .porto-posts-grid .products-container.products
   { repeat(4,1fr) !important }) que ganaba a todos los overrides móviles (0-3-0);
   por eso subimos la especificidad a 0-5-0. */
@media (max-width:575px){
  .woocommerce .porto-posts-grid .products-container.has-ccols.ccols-2,
  .woocommerce-shop .products-container.has-ccols.ccols-2,
  .products-container.has-ccols.ccols-2{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px !important; }
}
@media (min-width:576px) and (max-width:767px){
  .woocommerce .porto-posts-grid .products-container.has-ccols.ccols-sm-3,
  .woocommerce-shop .products-container.has-ccols.ccols-sm-3,
  .products-container.has-ccols.ccols-sm-3{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
.products-container.has-ccols > .product-col{ width:auto !important; min-width:0 !important; }

/* [F16/low] contraste pie de página: el cuerpo del footer es CLARO — los títulos de
   columna y sub-enlaces salían casi blancos (<4.5:1). Texto oscuro de marca. */
#footer .porto-u-main-heading h4,
#footer .porto-u-main-heading h2{ color:#12293f !important; }
#footer .porto-u-sub-heading a{ color:#33475a !important; }
#footer .porto-u-sub-heading a:hover{ color:var(--gz-brand-d) !important; }
section.gz-news form button.gz-btn{ background:var(--gz-ink) !important; color:#ffffff !important; }

/* [F17/low] iconos sociales del pie sin URL real (href="#") → ocultar hasta tener
   perfiles reales; se reactivan quitando esta regla */
#footer .elementor-widget-social-icons a[href="#"]{ display:none !important; }

/* === SCN hover-contrast fix (2026-07-02): 搜索按钮白图标压浅白底 1.1:1 几乎不可见 → 实底品牌绿 === */
.btn.btn-special, button.btn-special{
  background:#0b8a4f !important; color:#fff !important; border-color:#0b8a4f !important;
}
.btn.btn-special:hover{ background:#086b3d !important; color:#fff !important; }
