/* =========================
   VARS + HELPERS
   ========================= */
:root{
  --gs-gold:#d5bb57;
  --gs-dark:#0b0b0b;
  --gs-muted:#7A7A7A;
  --gs-border:#e9e9e9;
  --gs-bg:#ffffff;
  --gs-bg-soft:#faf9f5;
}
.container{max-width:1200px;margin:0 auto;padding:0 16px}

/* ENLACES GLOBALES MI CUENTA */
.gs-dash a,
.gs-dash .gs-link {
  color: #bea129;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: all .2s ease-in-out;
}

.gs-dash a:hover,
.gs-dash .gs-link:hover {
  color: #d4a00f; /* tono más claro si querés */
  border-color: currentColor;
}

/* =========================
   HEADER GS
   ========================= */

/* Alturas del header (podés ajustarlas) */
:root{
  --gs-header-h: 120px;   /* altura total de la barra */
  --gs-logo-h:   72px;    /* alto máximo del logo dentro del header */
}

.gs-header{
  background:#fff;
  border-bottom:1px solid #eee;
  position:sticky;
  top:0;
  z-index:1000;
}

/* Grid base: logo | centro | (nada)  */
.gs-header-inner{
  display:grid;
  grid-template-columns: auto 1fr auto;
  align-items:center;
  column-gap:24px;
  min-height: var(--gs-header-h);
}

/* Logo a la izquierda (fijo) */
.gs-brand{ justify-self:start; }
.gs-brand img{
  max-height: var(--gs-logo-h);
  height:auto;
  width:auto;
}

/* ====== BLOQUE CENTRO (menú + buscador) ====== */
.gs-center{
  /* este wrap contiene .gs-nav y .gs-actions */
  grid-column: 2;                   /* va en la columna central del grid */
  display:flex;
  justify-content:center;           /* centrado total */
  align-items:center;
  gap: clamp(36px, 5vw, 80px);      /* separación entre menú y buscador */
  width:100%;
}

/* Menú */
.gs-nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap:28px;
  align-items:center;
}

/* Tipografía del menú (Poppins 16/400) */
.gs-nav a{
  color:#000;                        /* o var(--gs-dark) si ya lo tenés */
  text-decoration:none;
  font-family: 'Poppins', sans-serif;
  font-size: 16px;
  font-weight: 400;
  text-transform: capitalize;
  font-style: normal;
  line-height: 150%;
}

/* Separador | entre ítems */
.gs-nav ul li+li{ position:relative; }
.gs-nav ul li+li::before{
  content:"";
  position:absolute;
  left:-14px;
  top:50%;
  width:2px;
  height:18px;
  background: var(--gs-gold);
  transform: translateY(-50%);
}

/* Buscador y CTA */
.gs-actions {
  display: flex;
  align-items: center;
  gap: clamp(60px, 7vw, 120px); /* más separación y mantiene respuesta fluida */
}
.gs-cta{
  background:#4b5563;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  border-radius:8px;
  padding:12px 22px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  line-height:1;
}
.gs-cta:hover{ filter:brightness(1.1); color:#fff; }
.gs-cta-icon svg{ width:1.2em; height:1.2em; fill:#fff; }

/* ====== Mobile ====== */
.gs-burger{ display:none; background:transparent; border:0; font-size:24px; }

@media (max-width:992px){
  .gs-burger{ display:inline-block; }

  /* menú colapsable */
  .gs-nav{
    display:none;
    position:absolute;
    left:0; right:0;
    top: var(--gs-header-h);     /* antes estaba fijo en 86px */
    background:#fff;
    border-bottom:1px solid #eee;
  }
  .gs-nav.open{ display:block; }
  .gs-nav ul{ flex-direction:column; gap:0; }
  .gs-nav ul li{ border-top:1px solid #eee; }
  .gs-nav ul li+li::before{ display:none; }

  /* en mobile mantené todo con menos separación */
  .gs-center{ gap:20px; }
}

/* ===== FIX HEADER (tam. logo + menú en 1 línea) ===== */

/* 1) Limitar el alto del logo y mantenerlo proporcionado */
:root{
  --gs-header-h: 86px;   /* barra un poco más baja para compactar */
  --gs-logo-h:   70px;   /* alto max del logo en desktop */
}
.gs-brand img{
  max-height: var(--gs-logo-h) !important;
  height: auto !important;
  width: auto !important;
  object-fit: contain;
}

/* 2) Evitar que los ítems del menú se corten en 2 líneas */
.gs-nav li{ flex: 0 0 auto; }
.gs-nav a{
  white-space: nowrap;         /* <- clave para "Mi cuenta" */
  line-height: 1.2;            /* un poco más compacto */
}

/* 3) Ajustar separaciones para que todo entre cómodo */
.gs-center{ gap: clamp(20px, 4vw, 48px) !important; }
.gs-actions{ gap: clamp(24px, 5vw, 64px) !important; }
.gs-nav ul{ gap: clamp(16px, 2.2vw, 24px) !important; }

/* 4) Afinar el separador '|' para que no empuje el menú */
.gs-nav ul li+li::before{
  left: -10px;                 /* antes -14px */
  height: 16px;                /* un pelín más bajo */
}

/* 5) Si tenés buscador ancho, que ceda espacio al menú */
.gs-actions input[type="search"],
.gs-actions .search-field,
.gs-actions .gs-search__input{
  max-width: 420px;            /* evita que invada el menú */
  width: clamp(200px, 30vw, 420px);
}

/* ===== Responsive ===== */
@media (max-width: 1200px){
  :root{ --gs-logo-h: 52px; }
}
@media (max-width: 992px){
  :root{ --gs-logo-h: 46px; }
  /* en tablet, sacamos el separador para ganar aire */
  .gs-nav ul li+li::before{ display:none; }
}
@media (max-width: 640px){
  :root{ --gs-logo-h: 40px; --gs-header-h: 72px; }
}

/*================ RESPONSIVE DEFINITIVO MOVILES  */
/* --- Burger: dibuja 3 rayitas si usás <span><span><span> --- */
.gs-burger{
  display:none;
  width:42px;height:42px;
  border:0;background:transparent;cursor:pointer;
  position:relative;
}
.gs-burger span{
  position:absolute;left:8px;right:8px;height:2px;background:#111;
  transition:transform .25s ease, opacity .25s ease, top .25s ease;
}
.gs-burger span:nth-child(1){ top:12px; }
.gs-burger span:nth-child(2){ top:20px; }
.gs-burger span:nth-child(3){ top:28px; }
.gs-burger.is-open span:nth-child(1){ top:20px; transform:rotate(45deg); }
.gs-burger.is-open span:nth-child(2){ opacity:0; }
.gs-burger.is-open span:nth-child(3){ top:20px; transform:rotate(-45deg); }

/* --- Mobile header layout --- */
@media (max-width:992px){
  .gs-burger{ display:inline-block; }

  /* Ocultá el CTA en mobile para que no se salga */
  .gs-cta{ display:none !important; }

  /* El menú pasa a desplegable */
  #gsNav.gs-nav{
    display:none;            /* cerrado por defecto */
    position:absolute;
    left:0; right:0;
    top: var(--gs-header-h); /* cuelga debajo de la barra */
    background:#fff;
    border-bottom:1px solid #eee;
    z-index: 1001;           /* por encima de todo */
  }
  #gsNav.open{ display:block; }

  /* Estilo de la lista en dropdown */
  #gsNav ul{ 
    display:flex; flex-direction:column; 
    margin:0; padding:8px 0;
  }
  #gsNav li{ border-top:1px solid #eee; }
  #gsNav li:first-child{ border-top:0; }
  #gsNav a{ display:block; padding:12px 16px; white-space:nowrap; }

  /* Compactá centro para que quepa todo */
  .gs-center{ gap:16px !important; }

  /* La barra: logo a la izq, burger a la der */
  .gs-header-inner{
    grid-template-columns: auto 1fr auto; /* igual que desktop */
  }
  .gs-search{ display:none !important; }       /* fuera el buscador */
  :root{
    --gs-header-h: 82px;                       /* barra un poco más alta */
    --gs-logo-h:   64px;                       /* logo más grande */
  }
  .gs-brand img{
    max-height: var(--gs-logo-h) !important;
    height:auto !important; width:auto !important; display:block;
  }
}

/* Un poco más de control del z-index general */
.gs-header{ z-index: 1000; }
#gsNav{ z-index: 1001; } /* el dropdown queda encima */

.gs-burger {
  border-radius: 6px;
  transition: background-color 0.25s ease;
}

.gs-burger:hover {
  background-color: rgba(213, 187, 87, 0.15); /* fondo dorado suave */
}

.gs-burger:hover span {
  background-color: #d5bb57;
}


/* =========================
   HERO (logo grande + caret fijo + wipe suave)
   ========================= */
.gs-hero{
  position: relative;
  min-height: clamp(420px, 65vh, 640px);
  background: center/cover no-repeat var(--hero-bg, none);
  display: flex;
  align-items: center;
  justify-content: center;
}
.gs-hero__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.79);
}
.gs-hero__inner{
  position: relative;
  z-index: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(40px, 6vh, 70px);            /* separa logo/texto */
  padding: clamp(2rem, 6vh, 3.5rem) 1rem;
  color: #fff;
}

/* Logo (tipo Elementor 18% aprox), con extra de margen inferior */
.gs-hero__logo{
  width: 25%;
  max-width: 700px;
  min-width: 280px;
  height: auto;
  border: none;
  border-radius: 0;
  box-shadow: none;
  filter: drop-shadow(0 6px 24px rgba(0,0,0,.35));
  margin-bottom: clamp(36px, 5vh, 64px);
}

/* Texto superior del hero (si lo usás) */
.gs-hero__claim{
  font-size: clamp(20px, 2.8vw, 28px);
  font-weight: 800;
  letter-spacing: .02em;
  margin: 0;
}

/* ===== Tipografía animada (fade rápido y caret fijo) ===== */
.gs-typer {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 900;
  font-size: clamp(28px, 3.5vw, 46px);
  letter-spacing: .5px;
  color: #fff;

  position: relative;
  display: inline-block;
  white-space: nowrap;
  line-height: 1.15;
  padding-right: .06em;         /* margen mínimo */
  
  /* Variables de velocidad */
  --gs-fade: 10ms;   /* duración del fade (aparece/desaparece) */
  --gs-hold: 500ms;  /* tiempo visible de cada palabra */
}

/* Caret fijo al final del texto */
.gs-typer::after {
  content: "";
  position: absolute;
  right: -.08em;          /* más pegado al texto */
  top: -25%;              /* sobresale hacia arriba */
  bottom: -25%;           /* sobresale hacia abajo */
  width: .05em;           /* grosor fino */
  background: #111;       /* color de la barra */
  border-radius: 2px;
  opacity: .95;
}

/* Contenedor del texto animado */
.gs-typer-wrap {
  position: relative;
  display: inline-grid;
  align-items: baseline;
  min-height: 1em;         /* evita saltos verticales */
}

/* Palabras superpuestas con transición de opacidad */
.gs-word {
  position: absolute;
  inset: 0 auto auto 0;
  opacity: 0;
  transform: translateY(3%);
  transition:
    opacity var(--gs-fade) ease,
    transform var(--gs-fade) ease !important; /* fuerza la duración */
  will-change: opacity, transform;
}

/* Palabra visible */
.gs-word.show {
  opacity: 1;
  transform: translateY(0);
}

/* Palabra saliente */
.gs-word.hide {
  opacity: 0;
  transform: translateY(-5%);
}

/* ===== Responsive ===== */
@media (max-width: 768px){
  .gs-hero { min-height: 400px; }
  .gs-hero__logo {
    width: 45%;
    min-width: 180px;
  }
  .gs-hero__inner {
    gap: 12px;
    padding: 2rem 1rem;
  }
}

/* evitar que el hero cambie de altura con las transiciones de palabras */
/* ===== HERO: altura bloqueada a viewport - header, con límites ===== */
.gs-hero{
  /* quitamos min-height y usamos altura fija responsiva */
  min-height: 0 !important;
  height: clamp(420px, calc(100svh - var(--header-h, 0px)), 680px) !important;
}

/* El gap ya no depende del alto de la ventana para evitar “respirar” distinto */
.gs-hero__inner{
  gap: clamp(24px, 5vw, 48px) !important;  /* antes usaba vh */
}

/* ===== Typer: contenedor con altura fija (no colapsa al cambiar palabra) ===== */
.gs-typer-wrap{
  display: inline-block;
  height: var(--typer-h, 1.2em);  /* JS define --typer-h con la palabra más alta */
  overflow: hidden;               /* por si alguna palabra quiere “salirse” */
  vertical-align: middle;
}

/* Seguimos superponiendo palabras, pero el alto ya no varía */
.gs-word{ position:absolute; inset:0 auto auto 0; }
/* =========================
   MI CUENTA (todo tu layout)
   ========================= */
:root{--gs-field-h:48px;--gs-label:#7A7A7A;--gs-input-bd:#8b93a1}
.gs-myaccount{padding:3rem 1rem;min-height:70vh;font-family:'Roboto',system-ui,-apple-system,Segoe UI,Arial,sans-serif}
.gs-myaccount__title{font-size:clamp(26px,3vw,36px);font-weight:900;margin:0 0 2rem;color:#1a1b1f;text-align:center}
.gs-myaccount .woocommerce form{border:0;padding:0;background:transparent;box-shadow:none}
.gs-myaccount h2,.gs-myaccount .woocommerce h2{font-family:"Roboto",sans-serif;font-weight:900;font-size:clamp(20px,2.2vw,28px);margin:0 0 14px;color:#1a1b1f}
.gs-myaccount .woocommerce form .form-row label{color:var(--gs-label);font-weight:400;display:block;margin-bottom:6px}
.gs-myaccount .woocommerce form .form-row input.input-text,
.gs-myaccount .woocommerce form .form-row select,
.gs-myaccount .woocommerce form .form-row textarea{width:100%;height:var(--gs-field-h);border:1px solid var(--gs-input-bd);border-radius:8px;padding:10px 14px;background:#fff;outline:0;transition:border-color .15s ease}
.gs-myaccount .woocommerce form .form-row input:focus{border-color:var(--gs-gold)}
.gs-myaccount .woocommerce-LostPassword{margin-top:8px}
.gs-myaccount .woocommerce button.button,
.gs-myaccount .woocommerce a.button,
.gs-myaccount .woocommerce input.button{background:var(--gs-gold);color:#fff;border:0;border-radius:10px;padding:14px 22px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;align-items:center;gap:10px}
.gs-myaccount .woocommerce button.button:hover,
.gs-myaccount .woocommerce a.button:hover,
.gs-myaccount .woocommerce input.button:hover{filter:brightness(.95)}
.gs-btn{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:10px;padding:14px 22px;font-weight:700;line-height:1;text-decoration:none}
.gs-btn--gold{background:var(--gs-gold,#cdb45a);color:#fff}
.gs-btn--wide{width:100%;justify-content:center}
.gs-btn__icon svg{display:block;width:18px;height:18px}
.gs-myaccount .woocommerce .woocommerce-form__label-for-checkbox{display:inline-flex;align-items:center;gap:8px;color:var(--gs-label)}

/* 2 columnas en Mi Cuenta */
.gs-account.gs-account--two-cols{display:grid;grid-template-columns:repeat(2,minmax(360px,520px));justify-content:center;align-items:start;gap:48px;margin:2rem auto;max-width:1200px;padding:0 16px}
@media (max-width:991px){.gs-account.gs-account--two-cols{grid-template-columns:1fr;gap:28px}}
.gs-account__col,.gs-myaccount .u-column1,.gs-myaccount .u-column2{float:none!important;width:auto!important;max-width:none!important;margin:0!important}
.gs-account__col .woocommerce-form{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:22px;box-shadow:0 6px 18px rgba(0,0,0,.04)}

/* Promo */
.gs-promo{margin:48px auto}
.gs-promo .container{max-width:1200px}
.gs-promo__inner{border:1px solid #e5e7eb;border-radius:10px;padding:32px;display:grid;grid-template-columns:1fr 1.25fr;gap:36px;align-items:center;background:#fff}
.gs-promo__media img{width:100%;height:auto;display:block;object-fit:contain;filter:drop-shadow(0 2px 0 rgba(0,0,0,.03))}
.gs-myaccount h2.gs-promo__title{font-family:"Roboto",sans-serif!important;font-weight:600!important;font-size:clamp(20px,2.8vw,36px)!important;line-height:1.2!important;letter-spacing:0!important;color:#0b0b0b!important;margin:0 0 10px!important}
@media (min-width:1400px){.gs-promo__title{font-size:84px!important}}
.gs-promo__lead{margin:0 0 18px;color:#444;font-size:16px}
.gs-promo__form{display:grid;grid-template-columns:1fr auto;gap:12px;max-width:560px;margin:0 0 10px}
.gs-promo__input{height:46px;border:1px solid #cbd5e1;border-radius:8px;padding:0 14px;outline:none}
.gs-promo__input:focus{border-color:var(--gs-gold,#cdb45a)}
.gs-promo__btn{height:46px;padding:0 18px;border:0;border-radius:8px;font-weight:700;background:var(--gs-gold,#cdb45a);color:#fff;cursor:pointer;white-space:nowrap}
.gs-promo__btn:hover{filter:brightness(.95)}
.gs-promo__note{margin:6px 0 0;font-size:13px;color:#666}
@media (max-width:992px){
  .gs-promo__inner{grid-template-columns:1fr;padding:24px}
  .gs-promo__media{order:-1}
  .gs-promo__form{grid-template-columns:1fr}
  .gs-promo__btn{width:100%}
}

/* Layout interno Mi Cuenta */
.gs-myaccount .gs-account{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:992px){.gs-myaccount .gs-account{grid-template-columns:1fr;gap:20px}}
.gs-myaccount .gs-welcome{grid-column:1 / -1;background:var(--gs-bg-soft);border:1px solid var(--gs-border);border-left:4px solid var(--gs-gold);border-radius:10px;padding:18px 20px;margin-bottom:18px}
.gs-welcome__title{margin:0 0 6px;font:900 clamp(20px,2.2vw,28px)/1.1 "Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--gs-dark)}
.gs-welcome__text{margin:0;color:var(--gs-muted);font:400 16px/1.5 "Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif}
.gs-welcome__email{color:var(--gs-dark)}

.gs-account__nav{grid-column:1}
.gs-account-nav__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.gs-account-nav__link{display:block;background:var(--gs-bg);color:var(--gs-dark);text-decoration:none;padding:12px 14px;font:600 16px/1.2 "Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif;transition:background .2s,color .2s,border-color .2s,transform .08s}
.gs-account-nav__item.is-active .gs-account-nav__link,.gs-account-nav__link:hover{background:var(--gs-gold);color:#fff;border-color:var(--gs-gold);transform:translateY(-1px)}
.gs-account-nav__link{border:none!important;box-shadow:none!important;border-radius:10px!important}
.woocommerce-account .gs-myaccount .gs-account__nav .gs-account-nav__item,
.woocommerce-account .woocommerce-MyAccount-navigation ul li{border:none!important;background:transparent!important;box-shadow:none!important;padding:0!important;overflow:visible}

.gs-account__content{grid-column:2;min-width:0;background:var(--gs-bg);border:1px solid var(--gs-border);border-radius:12px;padding:18px;min-height:360px;box-sizing:border-box}
.gs-account__content h2,.gs-account__content h3{font-family:"Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif;font-weight:800;color:var(--gs-dark)}
.gs-account__content table.shop_table{border-radius:10px;overflow:hidden;border-color:var(--gs-border)}
.gs-account__content table.shop_table th{background:var(--gs-bg-soft);color:var(--gs-dark)}
.gs-account__content a{color:#0b63ce}
.gs-account__content a:hover{text-decoration:underline}

/* =========================
   FOOTER GS (compacto)
   ========================= */
.gs-footer{background:linear-gradient(180deg,#fff 0%,#fff 100%);padding:clamp(18px,3.5vw,34px) 0;border-top:1px solid #eee}
.gs-footer__inner{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;align-items:start;gap:clamp(14px,2.5vw,36px)}
.gs-footer__logo img{max-width:min(220px,100%);height:auto;display:block}
.gs-footer__heading{font-family:"Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--gs-gold);font-weight:700;font-size:clamp(18px,1.8vw,28px);margin:0 0 8px}
.gs-footer__list{list-style:none;padding:0;margin:0}
.gs-footer__list li{font:400 clamp(15px,1.3vw,18px)/1.35 "Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--gs-dark)}
.gs-footer__list li+li{margin-top:8px}
.gs-footer__text{margin:0 0 10px;color:var(--gs-dark);font:400 clamp(14px,1.2vw,18px)/1.4 "Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif}
.gs-input-group{display:flex;align-items:stretch;gap:10px}
.gs-input{flex:1 1 auto;height:46px;border:0;border-radius:12px;background:var(--gs-cream);padding:0 14px;font:400 16px/1 "Roboto",system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--gs-dark);outline:none;box-shadow:inset 0 -2px 0 0 var(--gs-gold)}
.gs-input::placeholder{color:#857d6b}
.gs-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:0 16px;height:46px;border:0;cursor:pointer;font-weight:700;color:#fff}
.gs-btn--gold{background:var(--gs-gold)}
.gs-btn--pill{border-radius:999px}
.gs-btn:hover{filter:brightness(.96); background-color: grey;}
.gs-form-note{margin-top:8px;font-size:14px}
.gs-form-note--ok{color:#137333}
.gs-form-note--bad{color:#c62828}
@media (max-width:1024px){
  .gs-footer__inner{grid-template-columns:1fr}
  .gs-footer__logo{order:-1}
  .gs-footer{padding:22px 0}
}

/* =========================
   HEADER “EN TIENDA”
   ========================= */
.gs-header{position:sticky;top:0;z-index:9999}
.woocommerce .site-main,
.woocommerce .content-area,
.woocommerce .ast-container{position:relative;z-index:1}
.gs-shop-intro{margin:0 0 18px}

/* ==================
    ESTILO DE FILTROS
   ==================
/* Contenedor y título */
.wpfMainWrapper .wpfFilterWrapper { 
  font-size: 15px; 
}
.wpfMainWrapper h3, .wpfMainWrapper .wpfTitle { 
  font-weight: 800; 
  margin-bottom: .5rem;
}

/* Lista vertical + sangrías y línea guía */
.wpfMainWrapper .wpfCheckboxHier ul { 
  list-style: none; margin: 0; padding: 0; 
}
.wpfMainWrapper .wpfCheckboxHier ul ul { 
  margin-left: 1rem; padding-left: .6rem; 
  border-left: 1px solid #eee; 
}

/* Ítems: alineación bonita */
.wpfMainWrapper .wpfLiLabel { 
  display: flex; align-items: center; gap: .5rem; 
  margin: .25rem 0;
}
.wpfMainWrapper .wpfCheckbox label,
#wpfMainWrapper-1_822895 .wpfCheckbox label { 
  width: 16px; height: 16px; border-radius: 4px; 
}

/* Botón FILTRAR */
.wpfMainWrapper .wpfFilterButtons .wpfButton {
  background: #d5bb57; color: white; border: 0;
  padding: .6rem 1.1rem; border-radius: .6rem;
  font-weight: 700; box-shadow: 0 4px 14px rgba(0,0,0,.08);
}
.wpfMainWrapper .wpfFilterButtons .wpfButton:hover {
  filter: brightness(.95);
}

/* Versión "píldoras" (si querés chips en vez de lista) */
.wpfMainWrapper.pills .wpfLiLabel { 
  display: inline-flex; 
}
.wpfMainWrapper.pills .wpfLiLabel .wpfDisplay { 
  border: 1px solid #ddd; border-radius: 999px;
  padding: .35rem .65rem; background: #fff;
  font-weight: 600; transition: .15s ease;
}
.wpfMainWrapper.pills input:checked + label + .wpfDisplay,
.wpfMainWrapper.pills .wpfLiLabel input:checked ~ .wpfDisplay {
  background: #d5bb57; border-color: #d5bb57; color: #111;
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.wpfMainWrapper.pills .wpfCheckboxHier li { 
  display: inline-block; margin: 0 .4rem .4rem 0; 
}

.gs-active-filters {
  margin: .25rem 0 1rem;
}
.gs-chip {
  display: inline-block;
  padding: .25rem .55rem;
  border-radius: 999px;
  background: #f1e6b6; /* tono suave del dorado */
  border: 1px solid #d5bb57;
  color: #111;
  font-weight: 600;
  font-size: .9rem;
  margin: 0 .35rem .35rem 0;
}

/* =========================
PERSONALIZACION DE LOS PRODUCTOS MOSTRADOS EN TIENDA
=============== */

/* 1) Ocultar TODAS las categorías del grid... */
.wpr-grid-item-below-content .wpr-grid-product-categories .inner-block a,
.wpr-grid-item-below-content .wpr-grid-product-categories .inner-block .tax-sep {
  display: none !important;
}

/* ...y mostrar SOLO el pack (pack-base | pack-medio | pack-premium) */
.wpr-grid-item-below-content .wpr-grid-product-categories .inner-block a[href*="/categoria-producto/pack-"] {
  display: inline-block !important;
  background: #e6e6e6;            /* gris como te gustó */
  color: #111;
  font-weight: 700;
  line-height: 1;
  padding: 6px 10px;
  border-radius: 9999px;          /* pill */
  text-decoration: none;
  margin: 4px 0 2px;
}

/* 2) Ocultar las estrellas en el grid de productos (WPR) */
.wpr-grid-item-below-content .wpr-grid-item-rating {
  display: none !important;
}

/* =========================
   SINGLE PRODUCT — 2 COLUMNAS
   ========================= */
/* GRID base */
.single-product div.product{
  display:grid!important;
  grid-template-columns:minmax(0,560px) minmax(0,1fr); /* imagen | resumen */
  gap:32px;
  align-items:start;
}
.single-product div.product .images,
.single-product div.product .summary{float:none!important;width:auto!important}
.single-product div.product .images{grid-column:1;justify-self:center;max-width:560px}
.single-product div.product .summary{grid-column:2}

/* Bloques debajo a todo el ancho */
.single-product div.product .woocommerce-tabs,
.single-product div.product .upsells,
.single-product div.product .related{grid-column:1 / -1;width:100%}

/* ===== Centrar todo el bloque del producto ===== */
.single-product div.product {
  justify-content: center !important; /* centra columnas en el grid */
}

.single-product .product {
  margin: 0 auto !important;
  max-width: 960px; /* ajustá según tu diseño */
}

.single-product div.product .summary {
  justify-self: center !important; /* centra la columna derecha */
  text-align: center !important;   /* centra texto, botón, precio */
}

.single-product .summary .price,
.single-product .summary .cart,
.single-product .product_meta {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ===== SINGLE PRODUCT – Galería (Flexslider ON, centrada) ===== */
/* Contenedor de la galería centrado */
.single-product div.product .images{
  margin: 0 auto;
  justify-self: center;
  max-width: 560px;
  float: none;
}

/* Dejá que Flexslider maneje la pista y el ancho de cada slide.
   (¡No tocar .woocommerce-product-gallery__wrapper ni .woocommerce-product-gallery__image!) */

/* Viewport: recorta lo que desliza */
.single-product .woocommerce-product-gallery .flex-viewport{
  overflow: hidden;
  height: auto;
}

/* Imagen dentro de cada slide (solo presentación) */
.single-product .woocommerce-product-gallery__image img{
  display: block;
  margin: 0 auto;
  width: 100%;
  height: auto;
  max-height: 420px;
  object-fit: contain;
  border-radius: 12px;
}

/* Miniaturas centradas */
.single-product .flex-control-thumbs{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 0;
}
.single-product .flex-control-thumbs li{ float:none; }
.single-product .flex-direction-nav{ display:none; } /* si no querés flechas */
/* Botón lupa discreto (opcional) */
.single-product .woocommerce-product-gallery__trigger{
  top:10px; right:10px; left:auto;
  background:#fff; border:1px solid #e5e7eb;
  width:34px; height:34px; line-height:34px; text-align:center;
  border-radius:999px; box-shadow:0 4px 12px rgba(0,0,0,.06);
}

/* Tamaño y feedback de las miniaturas */
.single-product .flex-control-thumbs img{
  width: 68px;
  height: auto;
  border-radius: 8px;
  opacity: .85;
  transition: transform .15s ease, opacity .15s ease;
}
.single-product .flex-control-thumbs img.flex-active{
  opacity: 1;
  transform: scale(1.04);
}

/* Botón "Agregar al carrito" en single product */
.single-product div.product form.cart .single_add_to_cart_button,
.single-product .single_add_to_cart_button.button,
.single-product .single_add_to_cart_button.button.alt{
  background: var(--gs-gold) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 10px;
  font-weight: 700;
  padding: 12px 18px;
  box-shadow: 0 10px 22px rgba(213,187,87,.18);
}
.single-product div.product form.cart .single_add_to_cart_button:hover{
  filter: brightness(.95);
}
/* Centrar el botón "Agregar al carrito" */
.single-product form.cart {
  display: flex !important;
  justify-content: center !important;
}

.single-product form.cart .single_add_to_cart_button {
  margin: 2 auto !important;
}

/* ===== Botones grises tipo "Leer más" ===== */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  background: #e6e6e6 !important;
  color: #333 !important;
  border: none !important;
  border-radius: 6px !important;
  font-weight: 600;
  padding: 10px 18px !important;
  transition: background 0.2s ease, color 0.2s ease;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: #ccc !important;
  color: #000 !important;
}

/* Footer abajo en el carrito */
/* ---- Que el footer quede al fondo en páginas Woo ---- */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account {
  min-height: 100vh;            /* altura de viewport completa */
  display: flex;
  flex-direction: column;       /* header arriba, contenido, footer abajo */
}

/* el contenedor de contenido crece para empujar el footer */
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content,
body.woocommerce-account .site-content {
  flex: 1 0 auto;
}

/* si tu tema usa estos envoltorios, también dejalos crecer */
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main,
body.woocommerce-checkout .content-area,
body.woocommerce-checkout .site-main,
body.woocommerce-account .content-area,
body.woocommerce-account .site-main {
  flex: 1 0 auto;
}

/* El footer (tu GS) se mantiene al final */
.gs-footer { 
  margin-top: auto; 
}

/* Opcional: un poco de aire extra bajo el contenido del carrito */
body.woocommerce-cart .site-main { padding-bottom: 24px; }

/* ===== HOME – Bloque "Servicios pensados para vos" ===== */

/* Franja dorada (más alta, degradé oscuro → claro) */
.gs-services {
  position: relative;
  z-index: 1;
  padding: clamp(80px, 10vw, 180px) 0; /* altura general */
  background: linear-gradient(180deg, #DFC88F 0%, #E1D6BB 100%);
  overflow: hidden;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .06) inset;
  transition: background 0.6s ease-in-out;

  /* variables para fotos centradas */
  --inner-max: 1160px;
  --photo-offset: 56px;
}

/* Franja blanca superior (30 % más chica que antes, corte recto) */
.gs-services::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  background-color: #DEE6FF !important;
  height: clamp(23px, 3vw, 50px); /* antes: 40px, 5vw, 80px */
  background: #fff;
  pointer-events: none;
  z-index: 0;
}

/* Contenedor central */
.gs-services__inner {
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  text-align: center;
  position: relative;
  z-index: 1;
}

/* Título */
.gs-services__title {
  margin: 0 0 12px;
  font-family: "Roboto", Sans-serif;
  font-weight: bold;
  text-transform: uppercase;
  color: #fff;
  font-style: normal;
  line-height: 1.3;
  font-size: clamp(32px, 5vw, 51px);
}

/* Descripción */
.gs-services__lead {
  margin: 0 auto;
  max-width: 460px;
  text-align: center;
  font-family: "Montserrat", Sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 26px;
  color: #000;
}

/* Fotos */
.gs-services__photo {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(64px, 6vw, 92px);
  height: clamp(64px, 6vw, 92px);
  object-fit: cover;
  border-radius: 50%;
  border: 4px solid #fff;
  box-shadow: 0 10px 26px rgba(0,0,0,.18);
  background: #fff;
  animation: gsFloat 6s ease-in-out infinite;
  z-index: 2;
}

/* Fotos centradas respecto al contenido principal */
.gs-services__photo--left {
  left: max(24px, calc(50% - (var(--inner-max) / 2) - var(--photo-offset)));
  animation-delay: .2s;
}
.gs-services__photo--right {
  right: max(24px, calc(50% - (var(--inner-max) / 2) - var(--photo-offset)));
  animation-delay: .8s;
}

/* Animación */
@keyframes gsFloat {
  0%,100% { transform: translateY(-50%) }
  50% { transform: translateY(calc(-50% - 6px)) }
}

/* Responsive */
@media (min-width: 1440px) {
  .gs-services { --inner-max: 1320px; }
}
@media (min-width: 1680px) {
  .gs-services { --inner-max: 1500px; }
}
@media (max-width: 560px) {
  .gs-services__photo { display: none; }
}


/* ===================== ABOUT (replica Elementor ajustada + fluida) ===================== */
/* Fondo: blanco translúcido → dorado claro */
.gs-about{
  position: relative;
  /* alto fluido para que no quede “corto” en desktop */
  padding: clamp(72px, 9vw, 180px) 0 clamp(64px, 8vw, 160px);
  background-image: linear-gradient(180deg, rgba(255,255,255,0.97) 10%, #E1D6BB 50%);
  overflow: hidden;
}

/* Contenedor: más ancho, menos bordes y también fluido */
.gs-about .container{
  max-width: min(1440px, 96vw);  /* crece hasta 1440 o 96vw */
  width: 96vw;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(8px, 1.6vw, 18px);
  padding-right: clamp(8px, 1.6vw, 18px);
}

/* Shape divider superior */
.gs-shape--top{ position: absolute; inset: 0 0 auto 0; height: 80px; pointer-events: none; }
.gs-shape--top svg{ display:block; width:100%; height:100%; }
.gs-shape--top .fill{ fill: rgba(255,255,255,0.97); }

/* ---------- Layout superior: 2 columnas (título izq / texto der) ---------- */
.gs-about__grid{
  position: relative;
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;              /* balance leve hacia la izq */
  column-gap: clamp(28px, 5vw, 100px);               /* gap fluido */
  align-items: start;
}
.gs-about__intro{ grid-column: 1; }
.gs-about__copy { grid-column: 2; }

/* Línea/divisor del bloque */
.gs-about__divider{
  display:block;
  width: clamp(100px, 12vw, 220px); /* se adapta al ancho de pantalla */
  height: 1.5px;
  background:#000;
  border-radius:999px;
  margin: 0 0 clamp(16px, 2vw, 20px);
}

/* H2: “Acerca de Nosotros: ¿Quienes somos?” (fluido) */
.gs-about__title{
  margin: 0 0 10px;
  font-family: "Poppins", Sans-serif;
  font-weight: 500;
  line-height: 1.1em;
  letter-spacing: clamp(-1px, -0.25vw, -2px);
  text-transform: none;
  color: var(--e-global-color-primary, #0f0f0f);
  font-size: clamp(36px, 5vw, 86px);                /* escala más en desktop */
}

/* Párrafo a la derecha: “En Global Soluciones…” (fluido) */
.gs-about__text{
  margin-top: .5rem;
  max-width: clamp(46ch, 60vw, 68ch);               /* ancho de lectura fluido */
  font-family: "Poppins", Sans-serif;
  font-size: clamp(18px, 1.4vw, 22px);
  font-weight: 300;
  line-height: clamp(1.45em, 1.2em + 0.5vw, 1.6em);
  color: var(--e-global-color-primary, #111111);
}

/* Badge (foto redonda) centrada entre columnas y fluida */
.gs-about__badge{
  position: absolute;
  left: 50.5%;
  top: clamp(170px, 15vw, 260px);                    /* más abajo en pantallas grandes */
  transform: translate(-50%, -50%);
  width: clamp(88px, 6vw, 128px);
  height: clamp(88px, 6vw, 128px);
  object-fit: cover;
  border-radius: 999px;
  border: clamp(4px, 0.35vw, 6px) solid #fff;
  box-shadow: 0 clamp(10px, 1vw, 22px) clamp(24px, 1.8vw, 44px) rgba(0,0,0,.18);
  background:#fff;
  z-index: 2;
}

/* ---------- Zona inferior: 3 columnas (Visión / Misión / Proceso) ---------- */
:root{ --gs-gold:#E0BE77; } /* dorado de títulos inferiores */

.gs-about__boxes{
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  column-gap: clamp(24px, 3.6vw, 64px);
  row-gap: clamp(14px, 2.2vw, 32px);
  margin-top: clamp(36px, 6vw, 96px);               /* más aire arriba, fluido */
}

/* Sin “card look” */
.gs-ibox{
  background: transparent;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
}

/* H3: subtítulos (fluido) */
.gs-ibox__title{
  margin: 0 0 8px;
  font-family: "Poppins", Sans-serif;
  font-size: clamp(18px, 1.6vw, 24px);
  font-weight: 600;
  line-height: 1.1em;
  text-transform: capitalize;
  color: #E5B741;
}

/* P de las 3 columnas (fluido) */
.gs-ibox__desc{
  margin: 0;
  font-family: "Poppins", Sans-serif;
  text-align: justify;
  font-size: clamp(16px, 2vw, 20px);
  font-weight: 300;
  line-height: clamp(1.45em, 1.2em + 0.4vw, 1.6em);
  color: black;
}

/* ---------- Reveal / Parallax ---------- */
.reveal.is-visible[data-reveal="fade-up"]{
  animation: gsFadeUp .7s ease both;
  animation-delay: var(--delay, 0ms);
}
.reveal.is-visible[data-reveal="fade-left"]{
  animation: gsFadeLeft .6s ease both;
}
@keyframes gsFadeUp{
  from{opacity:0; transform:translateY(26px)}
  to{opacity:1; transform:translateY(0)}
}
@keyframes gsFadeLeft{
  from{opacity:0; transform:translateX(-24px)}
  to{opacity:1; transform:translateX(0)}
}
[data-parallax="x"]{ will-change: transform; }

/* ------------------------------ Responsive ------------------------------ */
@media (max-width: 1200px){
  .gs-about .container{ max-width: min(1320px, 94vw); }
}
@media (max-width: 1024px){
  .gs-about__grid{ grid-template-columns: 1fr; }
  .gs-about__intro, .gs-about__copy{ grid-column: 1; }
  .gs-about__badge{ top: clamp(140px, 22vw, 200px); left: 50%; }
}
@media (max-width: 820px){
  .gs-about__boxes{ grid-template-columns: 1fr; }
  .gs-about__badge{ display: none; }
}
@media (max-width: 768px){
  .gs-about__title{ font-size: clamp(28px, 6.5vw, 40px); letter-spacing: -1px; }
  .gs-about__text{ font-size: 18px; }
}

/* Ultra-wide: limita para que no “explote” todo */
@media (min-width: 1680px){
  .gs-about .container{ max-width: min(1500px, 92vw); }
  .gs-about__grid{ column-gap: clamp(48px, 4.2vw, 120px); }
}

/* ===== ABOUT – ultra wide scaling (overrides) ===== */

/* deja crecer el container y el “spread” en pantallas grandes */
@media (min-width: 1600px){
  .gs-about .container{
    max-width: min(1680px, 98vw);  /* antes 1440/96vw */
    width: 98vw;
  }
  .gs-about{
    padding-top: clamp(80px, 9.5vw, 220px);
    padding-bottom: clamp(72px, 9vw, 200px);
  }

  /* más separación entre columnas */
  .gs-about__grid{
    grid-template-columns: 1.06fr 0.94fr;          /* balance suave */
    column-gap: clamp(56px, 6vw, 140px);           /* + espacio */
  }

  /* título y párrafo siguen creciendo un poco más */
  .gs-about__title{
    font-size: clamp(56px, 5.6vw, 104px);          /* ↑ límite superior */
    letter-spacing: clamp(-1px, -0.22vw, -2px);
  }
  .gs-about__text{
    font-size: clamp(24px, 1.3vw, 27px);          /* ↑ límite superior */
    line-height: clamp(1.5em, 1.2em + 0.6vw, 1.65em);
    max-width: clamp(52ch, 58vw, 72ch);            /* ancho de lectura acompaña */
  }

  /* badge más grande y un poco más baja */
  .gs-about__badge{
    width: clamp(112px, 7vw, 152px);
    height: clamp(112px, 7vw, 152px);
    top: clamp(200px, 17.5vw, 280px);
    left: 50.5%;
    border-width: clamp(5px, 0.4vw, 7px);
    box-shadow: 0 clamp(12px, 1.2vw, 28px) clamp(28px, 2.2vw, 56px) rgba(0,0,0,.18);
  }

  /* fila inferior: más aire y tipografías que acompañan */
  .gs-about__boxes{
    column-gap: clamp(40px, 4vw, 80px);
    row-gap: clamp(20px, 2.4vw, 36px);
    margin-top: clamp(56px, 6.5vw, 110px);
  }
  .gs-ibox__title{
    font-size: clamp(22px, 1.5vw, 28px);
  }
  .gs-ibox__desc{
    font-size: clamp(20px, 1.05vw, 25px);
    line-height: clamp(1.5em, 1.2em + 0.45vw, 1.7em);
  }
}

/* aún más grande: evita que todo “explote”, pero deja crecer un poco */
@media (min-width: 1920px){
  .gs-about .container{ max-width: min(1800px, 96vw); }
  .gs-about__grid{ column-gap: clamp(64px, 5.5vw, 160px); }
  .gs-about__title{ font-size: clamp(64px, 5.4vw, 112px); }
  .gs-about__text{ font-size: clamp(22px, 1.1vw, 26px); }
  .gs-about__badge{ width: clamp(128px, 7.2vw, 168px); height: clamp(128px, 7.2vw, 168px); }
}

/* ===== ABOUT – separaciones extra en pantallas grandes (solo fila superior) ===== */

/* 1) Más separación horizontal entre título y texto */
@media (min-width: 1360px){
  .gs-about__grid{
    column-gap: clamp(40px, 6vw, 120px);
    grid-template-columns: 1.06fr 0.94fr; /* leve balance hacia la izquierda */
  }

  /* 2) Título más grande y con tracking coherente */
  .gs-about__title{
    font-size: clamp(56px, 5.6vw, 108px);
    letter-spacing: clamp(-1px, -0.22vw, -2px);
  }

  /* 3) Texto de la derecha baja un poco (se separa del título) */
  .gs-about__copy{
    padding-top: clamp(8px, 2.2vw, 36px);
  }

  /* 4) Párrafo: sube levemente el tamaño, mantiene ancho de lectura */
  .gs-about__text{
    font-size: clamp(23px, 1.3vw, 27px);
    max-width: clamp(50ch, 58vw, 68ch);
    line-height: clamp(1.5em, 1.2em + 0.5vw, 1.65em);
  }

  /* 5) Badge: un toque más grande, más abajo y apenas a la derecha del centro */
  .gs-about__badge{
    width: clamp(104px, 6.5vw, 140px);
    height: clamp(104px, 6.5vw, 140px);
    top: clamp(200px, 18vw, 280px);
    left: 53%;
    border-width: clamp(5px, .4vw, 7px);
    box-shadow: 0 clamp(12px, 1.2vw, 28px) clamp(28px, 2.2vw, 56px) rgba(0,0,0,.18);
  }
}

/* 6) Ultra-wide: mantiene la composición elegante sin “pegarse” a los bordes */
@media (min-width: 1680px){
  .gs-about .container{ max-width: min(1600px, 94vw); }
  .gs-about__grid{ column-gap: clamp(64px, 6.5vw, 160px); }
}

/* 7) En 1920+ todavía un poco más de aire arriba sin tocar la fila inferior */
@media (min-width: 1920px){
  .gs-about{
    padding-top: clamp(90px, 10vw, 220px);
  }
}

/* Forzar .gs-about a full-bleed aunque esté dentro de .ast-container */
.gs-about{
  /* sacar la sección del contenedor angosto */
  position: relative;
  width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;

  /* padding lateral para que el contenido siga centrado */
  padding-left: max(24px, 3vw);
  padding-right: max(24px, 3vw);
}

/* Evitar que algún wrapper de Astra recorte el bleed */
.site-content, .entry-content, .ast-container{
  overflow: visible;
}

/* El “inner container” vuelve a centrar y limitar el contenido */
.gs-about .container{
  width: 100%;
  max-width: min(1720px, 96vw); /* podés subir 1720 → 1840 si querés más ancho */
  margin: 0 auto;
}

@media (min-width: 1360px){
  .gs-about__grid{
    grid-template-columns: 1.06fr 0.94fr;
    column-gap: clamp(56px, 6.5vw, 140px);
  }
  .gs-about__copy{ padding-top: clamp(12px, 2.4vw, 40px); }
  .gs-about__badge{
    left: 53%;
    top: clamp(200px, 18vw, 280px);
    width: clamp(104px, 6.5vw, 140px);
    height: clamp(104px, 6.5vw, 140px);
  }
}

/* === FIX: liberar el container interno de ABOUT === */
.gs-about > .container{
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Re-limitar y centrar SOLO los bloques internos (grid superior, shape y 3 columnas) */
.gs-about__grid,
.gs-shape--top,
.gs-about__boxes{
  max-width: min(1800px, 94vw);   /* subí 1800 si querés aún más ancho */
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(20px, 3vw, 48px);
  padding-right: clamp(20px, 3vw, 48px);
}

/* Más separación arriba entre título / badge / texto en desktop ancho */
@media (min-width: 1360px){
  .gs-about__grid{
    grid-template-columns: 1.06fr 0.94fr;
    column-gap: clamp(56px, 6.5vw, 140px);
  }
  .gs-about__copy{ padding-top: clamp(12px, 2.4vw, 40px); }
  .gs-about__badge{
    left: 53%;
    top: clamp(200px, 18vw, 280px);
    width: clamp(104px, 6.5vw, 140px);
    height: clamp(104px, 6.5vw, 140px);
  }
}

/* ===== reajuste horizontal de la imagen central ===== */
/* Base (tablets en adelante) */
@media (min-width: 1024px){
  .gs-about__badge{ left: 49%; }   /* antes ~50.5–53% */
}

/* Desktop “común” */
@media (min-width: 1360px){
  .gs-about__badge{ left: 48%; }
}

/* Desktop grande */
@media (min-width: 1600px){
  .gs-about__badge{ left: 47%; }
}

/* Ultra-wide */
@media (min-width: 1920px){
  .gs-about__badge{ left: 46%; }
}

/* ===== ABOUT – full-bleed estable (fix Chrome overflow) ===== */
/* Sustituye el hack con width:100vw / margin:-50vw; */

.gs-about{
  /* cuánto sangramos hacia los lados, calculado contra el contenedor actual */
  --gs-bleed: max(0px, calc(50dvw - 50%));  /* usa d(vw) para evitar scrollbar-width issues */
  box-sizing: border-box;

  /* expandir hacia los bordes sin desbordar */
  margin-inline: calc(-1 * var(--gs-bleed));
  padding-inline: calc(var(--gs-bleed) + clamp(20px, 3vw, 48px));
}

/* MUY IMPORTANTE: elimina el hack anterior si quedó en cascada */
.gs-about{
  width: auto !important;
  left: auto !important;
  right: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: revert-layer;   /* o simplemente deja el cálculo de arriba */
  padding-right: revert-layer;
}

/* Mantén el centrado/ancho interno como ya lo tenías */
.gs-about > .container{
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
}
.gs-about__grid,
.gs-shape--top,
.gs-about__boxes{
  max-width: min(1800px, 94svw); /* svw/dvw para estabilidad en zoom/scrollbars */
  margin-inline: auto;
  padding-inline: clamp(20px, 3vw, 48px);
}

/* ===== ABOUT – Overrides de centrado y respiración (pegar al FINAL) ===== */
@media (min-width: 1200px){
  /* 1) Menos aire arriba; abajo lo dejamos como está */
  .gs-about{
    padding-top: clamp(40px, 5vw, 100px) !important; /* antes ~72px–180px */
  }

  /* 2) Más padding lateral del “inner”, así título y texto se corren al centro */
  .gs-about__grid,
  .gs-shape--top,
  .gs-about__boxes{
    padding-inline: clamp(60px, 10vw, 160px) !important; /* antes 20–48px */
  }

  /* 3) Un poco menos de gap entre columnas para que se acerquen */
  .gs-about__grid{
    column-gap: clamp(36px, 4.5vw, 100px) !important; /* antes 56–140px */
  }

  /* 4) Badge algo más centrada para acompañar el corrimiento */
  .gs-about__badge{
    left: 50% !important; /* neutraliza los left:48/47/46 previos */
  }
}

/* Opcional: si querés todavía más “centro” en pantallas enormes */
@media (min-width: 1680px){
  .gs-about__grid,
  .gs-shape--top,
  .gs-about__boxes{
    padding-inline: clamp(80px, 12vw, 200px) !important;
  }
  .gs-about__grid{
    column-gap: clamp(40px, 4vw, 90px) !important;
  }
}

/* ===== ABOUT – centrado vertical, más margen lateral y título equilibrado ===== */
:root{
  --about-edge: clamp(80px, 10vw, 200px);   /* más separación lateral */
  --about-top:  clamp(160px, 14vw, 300px);  /* más aire superior */
  --about-bot:  clamp(120px, 12vw, 260px);  /* más aire inferior */
}

.gs-about{
  padding-top:    var(--about-top) !important;
  padding-bottom: var(--about-bot) !important;
}

/* aplica margen lateral amplio al grid y las cajas */
.gs-about__grid,
.gs-about__boxes,
.gs-shape--top{
  padding-left:  var(--about-edge) !important;
  padding-right: var(--about-edge) !important;
}

/* ajusta disposición de columnas y balancea el ancho */
@media (min-width: 1200px){
  .gs-about__grid{
    grid-template-columns: 1.05fr 0.95fr;
    column-gap: clamp(48px, 5vw, 120px) !important;
    align-items: start;
  }
}

/* achica un poco el título y agrega separación inferior */
.gs-about__title{
  font-size: clamp(32px, 4.2vw, 72px) !important; /* antes 36px–86px aprox */
  letter-spacing: clamp(-0.5px, -0.18vw, -1px);
  margin-bottom: clamp(16px, 2vw, 24px);
}

/* opcional: sube ligeramente el texto de la derecha para alinearlo mejor */
.gs-about__copy{
  padding-top: clamp(0px, 1vw, 16px);
}

/* ultra-wide: mantiene el centro y evita exceso de expansión */
@media (min-width: 1680px){
  .gs-about__grid,
  .gs-about__boxes{
    max-width: min(1600px, 88vw);
  }
}

/* ===== ABOUT – versión extendida y alineada como referencia visual ===== */

/* 1. Subir el bloque entero (título + texto principal) */
/* Solo desktop amplio */
@media (min-width: 1200px){
  .gs-about__grid {
    position: relative;
    top: clamp(-140px, -12vw, -200px);
    grid-template-columns: 1.2fr 0.8fr;
    column-gap: clamp(60px, 6vw, 120px);
    align-items: start;
  }
  .gs-about__intro { padding-left: clamp(80px, 6vw, 160px); max-width: 80%; }
  .gs-about__title { font-size: clamp(36px, 5vw, 86px); line-height: 1.08; margin-bottom: clamp(20px, 2vw, 28px); }
  .gs-about__copy { padding-top: clamp(0px, 1vw, 10px); max-width: 90%; }
  .gs-about__badge { top: clamp(260px, 23vw, 340px); left: 50%; transform: translateX(-50%); }
}

/* 6. Ajuste de padding superior/inferior del bloque general */
.gs-about {
  padding-top: clamp(100px, 12vw, 220px);
  padding-bottom: clamp(140px, 14vw, 260px);
}

/* 7. En pantallas muy grandes, mantener composición centrada */
@media (min-width: 1600px) {
  .gs-about__grid {
    grid-template-columns: 1.15fr 0.85fr;
    column-gap: clamp(80px, 5vw, 140px);
  }
  .gs-about__intro { max-width: 78%; }
  .gs-about__badge { top: clamp(280px, 20vw, 360px); }
}

/* ===== Ajuste fino de alineación en ABOUT ===== */

/* 1️⃣ Subir levemente la imagen central */
.gs-about__badge {
  top: clamp(220px, 17vw, 300px) !important; /* antes 260px–340px */
}

/* 2️⃣ Bajar la fila inferior (Visión / Misión / Proceso) */
.gs-about__boxes {
  margin-top: clamp(120px, 12vw, 200px) !important; /* antes ~96px */
}

/* 3️⃣ Afinar la separación general del bloque para mantener armonía */
.gs-about {
  padding-top: clamp(80px, 10vw, 180px);
  padding-bottom: clamp(160px, 14vw, 260px);
}

/* 4️⃣ (Opcional) más espacio vertical entre los tres textos */
.gs-ibox__desc {
  line-height: clamp(1.55em, 1.2em + 0.6vw, 1.8em);
}

/* ===== Centrar título pero mantener línea a la izquierda ===== */
.gs-about__intro {
  display: flex;
  flex-direction: column;
  align-items: center;     /* centra el bloque del texto */
  text-align: center;      /* centra las líneas del título */
  padding-left: 0 !important;
  margin: 0 auto;
  max-width: 80%;
  position: relative;
}

/* Línea (divider) alineada a la izquierda respecto al texto */
.gs-about__divider {
  align-self: flex-start;  /* hace que la línea no se centre */
  margin-left: 0;          /* evita margen automático */
  margin-right: 0;
}

/* ===== ABOUT – fila inferior más ancha (aprovechar laterales) ===== */
@media (min-width: 1200px){
  /* 1) La fila de 3 columnas usa menos padding lateral que el bloque superior */
  .gs-about__boxes{
    /* antes heredaba var(--about-edge) → demasiado grande para esta fila */
    padding-left:  clamp(20px, 3vw, 48px) !important;
    padding-right: clamp(20px, 3vw, 48px) !important;

    /* 2) Más ancho total disponible en desktop grandes */
    max-width: min(1900px, 94vw);

    /* 3) Un poco menos de separación entre columnas para ganar ancho útil */
    column-gap: clamp(20px, 2.2vw, 40px);
  }

  /* 4) Evitar límites internos que achiquen el texto */
  .gs-ibox{ max-width: none; }
  .gs-ibox__desc{
    max-width: none;         /* sin tope oculto */
    hyphens: auto;           /* cortes elegantes si hace falta */
  }
  
  .gs-about__boxes{
    margin-top: clamp(200px, 20vw, 300px) !important; /* antes 120px–200px aprox */
  }
}

/* Opcional en pantallas muy grandes: darle todavía más “spread” */
@media (min-width: 1680px){
  .gs-about__boxes{
    max-width: min(2000px, 95vw);
    column-gap: clamp(20px, 2vw, 36px);
  }
}

/******************* Transiciones en about */
/* ===== Animaciones de aparición ===== */
.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: 
    opacity 0.8s ease-out,
    transform 0.8s cubic-bezier(.2,.8,.3,1);
  transition-delay: var(--delay, 0ms);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Variantes */
[data-reveal="fade-up"] {
  transform: translateY(40px);
}
[data-reveal="slide-left"] {
  transform: translateX(-40px);
}
[data-reveal="slide-right"] {
  transform: translateX(40px);
}
[data-reveal="zoom-in"] {
  transform: scale(0.9);
}
[data-reveal="fade-up"].is-visible,
[data-reveal="slide-left"].is-visible,
[data-reveal="slide-right"].is-visible,
[data-reveal="zoom-in"].is-visible {
  opacity: 1;
  transform: none;
}

/***************** ULTIMA VERSION RESPONSIVE PARA MOVILES */
/* === ABOUT – versión mobile optimizada === */
@media (max-width: 600px){
  /* aire simple y sin gradiente tan alto */
  .gs-about{
    padding-top: clamp(48px, 12vw, 72px);
    padding-bottom: clamp(56px, 14vw, 88px);
    background-image: linear-gradient(180deg, rgba(255,255,255,0.98) 6%, #E1D6BB 42%);
  }

  /* 1 columna, paddings laterales simples */
  .gs-about__grid,
  .gs-about__boxes,
  .gs-shape--top{
    padding-inline: 20px !important;
  }
  .gs-about__grid{
    grid-template-columns: 1fr;
    row-gap: 12px;
    top: 0; /* quita cualquier “lift” previo */
  }

  /* Título alineado a la izquierda y ancho completo */
  .gs-about__intro{
    align-items: flex-start;
    text-align: left;
    margin: 0;
    max-width: 100%;
    padding: 0 !important;
  }

  /* Divider corto y proporcional */
  .gs-about__divider{
    width: 64px;
    height: 2px;
    margin-bottom: 10px;
  }

  /* Título más corto y legible; balancea líneas y evita <br> forzados */
  .gs-about__title{
    font-size: clamp(24px, 7.2vw, 30px);
    line-height: 1.18;
    letter-spacing: -0.2px;
    margin: 0 0 12px;
    text-wrap: balance;               /* browsers modernos */
  }
  .gs-about__title br{ display:none; } /* no partas en 2 líneas en mobile */

  /* Texto con ancho total y ritmo de lectura */
  .gs-about__copy{ padding-top: 0; }
  .gs-about__text{
    max-width: 100%;
    font-size: clamp(15px, 3.8vw, 17px);
    line-height: 1.55;
    text-align: left;
    hyphens: auto;
  }

  /* Ocultar badge en mobile (evita solaparse) */
  .gs-about__badge{ display:none !important; }

  /* Fila inferior: una sola columna y buen aire */
  .gs-about__boxes{
    grid-template-columns: 1fr;
    row-gap: 14px;
    column-gap: 0;
    margin-top: clamp(28px, 10vw, 40px) !important;
  }
  .gs-ibox__title{
    font-size: clamp(16px, 4.6vw, 18px);
  }
  .gs-ibox__desc{
    font-size: clamp(14px, 3.8vw, 16px);
    line-height: 1.6;
  }
}

/* Tablet chica: un poco más de escala sin romper */
@media (min-width: 601px) and (max-width: 820px){
  .gs-about__grid{ padding-inline: 28px !important; }
  .gs-about__title{
    font-size: clamp(28px, 5.8vw, 36px);
    line-height: 1.16;
    text-wrap: balance;
  }
  .gs-about__text{
    font-size: clamp(16px, 2.8vw, 18px);
    max-width: 100%;
  }
  .gs-about__badge{ display:none !important; }
  .gs-about__boxes{ grid-template-columns: 1fr; }
}

/* === Centrar título y texto principal en mobile/tablet === */
@media (max-width: 820px){
  /* Centra el bloque del título */
  .gs-about__intro{
    align-items: center !important;   /* centra el contenido horizontalmente */
    text-align: center !important;    /* centra el texto del título */
    margin: 0 auto;
    max-width: 90%;
    padding: 0 !important;
  }

  /* Línea centrada bajo el título */
  .gs-about__divider{
    align-self: center !important;
    margin-left: auto;
    margin-right: auto;
  }

  /* Título centrado */
  .gs-about__title{
    text-align: center !important;
    margin: 0 auto clamp(12px, 3vw, 20px);
  }

  /* Párrafo principal centrado y equilibrado */
  .gs-about__copy{
    text-align: center !important;
    padding-top: 0;
    margin: 0 auto;
    max-width: 90%;
  }
  .gs-about__text{
    text-align: center !important;
    margin: 0 auto;
    font-size: clamp(15px, 3.8vw, 17px);
    line-height: 1.55;
    max-width: 90%;
  }
}

/* === Centrar el bloque del texto principal, pero con texto justificado === */
@media (max-width: 1024px){
  .gs-about__copy{
    display: flex;
    justify-content: center;       /* centra el bloque */
    text-align: justify !important;/* texto justificado */
    max-width: 90%;
    margin: 0 auto;
    padding-top: 0;
  }

  .gs-about__text{
    text-align: justify !important;
    hyphens: auto;
    font-size: clamp(15px, 3.8vw, 17px);
    line-height: 1.6;
    max-width: 100%;
  }
}

/* === ABOUT – Centrado del bloque superior desde 900px hacia abajo === */
@media (max-width: 900px){

  /* Centra y equilibra el bloque del título */
  .gs-about__intro{
    align-items: center !important;
    text-align: center !important;
    margin: 0 auto;
    max-width: 90%;
    padding: 0 !important;
  }

  /* Línea bajo el título, centrada */
  .gs-about__divider{
    align-self: center !important;
    margin-inline: auto;
  }

  /* Título principal centrado */
  .gs-about__title{
    text-align: center !important;
    font-size: clamp(28px, 5vw, 38px);
    line-height: 1.2;
    margin: 0 auto clamp(12px, 3vw, 20px);
  }

  /* Párrafo principal centrado y justificado */
  .gs-about__copy{
    display: flex;
    justify-content: center;
    text-align: justify !important;
    max-width: 90%;
    margin: 0 auto;
    padding-top: 0;
  }

  .gs-about__text{
    text-align: justify !important;
    hyphens: auto;
    font-size: clamp(15px, 3.5vw, 17px);
    line-height: 1.6;
    max-width: 100%;
  }

  /* Imagen centrada debajo del texto */
  .gs-about__badge{
    position: relative;
    display: block;
    top: auto !important;
    left: 50% !important;
    transform: translateX(-50%);
    margin-top: clamp(24px, 4vw, 40px);
    width: clamp(72px, 10vw, 100px);
    height: clamp(72px, 10vw, 100px);
  }
}

/* === ABOUT – overrides firmes para <= 900px === */
@media (max-width: 900px){

  /* 1 columna real y sin desplazamiento vertical */
  .gs-about__grid{
    grid-template-columns: 1fr !important;
    top: 0 !important;
    column-gap: clamp(12px, 4vw, 24px) !important;
  }
  .gs-about__intro,
  .gs-about__copy{ grid-column: 1 !important; }

  /* Título centrado */
  .gs-about__intro{
    align-items: center !important;
    text-align: center !important;
    margin: 0 auto !important;
    max-width: 92% !important;
    padding: 0 !important;
  }
  .gs-about__divider{
    align-self: center !important;
    margin-inline: auto !important;
  }
  .gs-about__title{
    text-align: center !important;
    font-size: clamp(28px, 5vw, 38px) !important;
    line-height: 1.2 !important;
    margin: 0 auto clamp(12px, 3vw, 20px) !important;
  }

  /* Párrafo principal centrado (bloque) pero texto justificado */
  .gs-about__copy{
    display: block !important;
    margin: 0 auto !important;
    max-width: min(680px, 92%) !important;
    padding-top: 0 !important;
  }
  .gs-about__text{
    text-align: justify !important;
    hyphens: auto;
    font-size: clamp(15px, 3.5vw, 17px) !important;
    line-height: 1.6 !important;
    max-width: 100% !important;
    margin: 0 auto !important;
  }

  /* Badge centrada debajo del texto (y visible) */
  .gs-about__badge{
    position: relative !important;
    display: block !important;          /* por si algún media anterior la ocultó */
    top: auto !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin-top: clamp(20px, 4vw, 36px) !important;
    width: clamp(72px, 10vw, 100px) !important;
    height: clamp(72px, 10vw, 100px) !important;
  }
}

/* =========================
   NUESTROS VALORES (continuación del ABOUT)
   ========================= */
.gs-values.is-continuation{
  /* acercamos el bloque hacia arriba para que no “corte” la transición */
  padding-top: clamp(28px, 4vw, 52px);
  padding-bottom: clamp(80px, 9vw, 140px);
}

/* cabecera centrada */
.gs-values__head{
  max-width: min(1200px, 92vw);
  margin: 0 auto clamp(20px, 3.6vw, 40px);
  text-align: center;
}
.gs-values__eyebrow{
  margin: 0 0 8px;
  font: 600 14px/1.2 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #E5B741; /* dorado suave */
}
.gs-values__title{
  margin: 0;
  font: 800 clamp(28px, 4.6vw, 56px)/1.05 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: #0b0b0b;
}

/* grilla principal: 3 columnas arriba (texto / imagen / texto),
   segunda fila con dos columnas */
.gs-values__grid{
  max-width: min(1400px, 94vw);
  margin: clamp(18px, 2.6vw, 28px) auto 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: auto auto;
  align-items: start;
  column-gap: clamp(28px, 4.5vw, 60px);
  row-gap: clamp(22px, 3.2vw, 36px);
}

/* imagen grande centrada */
.gs-values__image{
  grid-column: 2;
  grid-row: 1;
  display: grid;
  place-items: center;
}
.gs-values__image img{
  width: clamp(520px, 38vw, 720px);
  height: auto;
  filter: drop-shadow(0 14px 40px rgba(0,0,0,.16));
}

/* items de texto */
.gs-values__item{
  max-width: clamp(320px, 32vw, 440px);
  text-align: center;
  margin-inline: auto;
}
.gs-values__item--top:nth-of-type(1){ grid-column: 1; grid-row: 1; }
.gs-values__item--top:nth-of-type(3){ grid-column: 3; grid-row: 1; }
.gs-values__item--bottom{ grid-row: 2; }
.gs-values__item--bottom:nth-of-type(4){ grid-column: 1; }
.gs-values__item--bottom:nth-of-type(5){ grid-column: 3; }

.gs-values__h3{
  margin: 0 0 10px;
  font: 700 clamp(18px, 1.6vw, 24px)/1.2 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: #131313;
}
.gs-values__p{
  margin: 0;
  font: 400 clamp(14px, 1.15vw, 16.5px)/1.65 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: #2b2b2b;
  opacity: .92;
}

/* separadores bajo los textos superiores (decorativos) */
@media (min-width: 1024px){
  .gs-values__item--top{
    position: relative;
    padding-bottom: clamp(18px, 2.5vw, 28px);
  }
  .gs-values__item--top::after{
    content:"";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: clamp(160px, 18vw, 300px);
    height: 1px;
    background: rgba(0,0,0,.12);
  }
}

/* responsive: pila vertical y luego 2 columnas */
@media (max-width: 1023.98px){
  .gs-values__grid{
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto auto;
    row-gap: clamp(18px, 3vw, 26px);
  }
  .gs-values__image{ grid-column: 1; grid-row: 2; }
  .gs-values__item--top:nth-of-type(1){ grid-column: 1; grid-row: 1; }
  .gs-values__item--top:nth-of-type(3){ grid-column: 1; grid-row: 3; }
  .gs-values__item--bottom:nth-of-type(4){ grid-column: 1; grid-row: 4; }
  .gs-values__item--bottom:nth-of-type(5){ grid-column: 1; grid-row: 5; }

  .gs-values__image img{ width: clamp(300px, 70vw, 560px); }
}

/* ---- SI existen contenedores Elementor para esta sección ---- */
/* Fuerza que NO pinten otro fondo ni añadan gap arriba */
/* .elementor-element-4c728925,
[data-id="4c728925"]{
  background: transparent !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
} */

/* === REFINO FINAL – BLOQUE "NUESTROS VALORES" === */

/* 1️⃣ Fondo: continuidad perfecta con el bloque anterior */
/* === Fondo fusionado: continúa el degradado anterior === */
.gs-values {
  /* inicia en el mismo beige y se aclara progresivamente */
  background: linear-gradient(
    180deg,
    #E1D6BB 0%,              /* continuidad exacta desde la sección anterior */
    rgba(255,255,255,0.98) 55%,  /* transición suave al blanco */
    #ffffff 100%             /* aclara al final */
  ) !important;

  padding-top: clamp(80px, 8vw, 140px);
  padding-bottom: clamp(160px, 14vw, 220px);
  position: relative;
  z-index: 1;
}

/* 2️⃣ Reorganiza la grilla para que la imagen quede centrada y los textos rodeen */
.gs-values__grid {
  max-width: min(1440px, 94vw);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr minmax(480px, 700px) 1fr;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: clamp(32px, 5vw, 80px);
  row-gap: clamp(40px, 6vw, 80px);
  text-align: center;
}

/* Izquierda / Derecha arriba */
.gs-values__item--top:nth-of-type(1) {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
}
.gs-values__item--top:nth-of-type(3) {
  grid-column: 3;
  grid-row: 1;
  align-self: start;
}

/* Imagen centrada */
.gs-values__image {
  grid-column: 2;
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  margin-top: clamp(-40px, -5vw, -60px);
}
.gs-values__image img {
  width: clamp(420px, 35vw, 680px);
  height: auto;
  filter: drop-shadow(0 18px 38px rgba(0,0,0,.15));
}

/* Inferiores */
.gs-values__item--bottom:nth-of-type(4) {
  grid-column: 1;
  grid-row: 2;
}
.gs-values__item--bottom:nth-of-type(5) {
  grid-column: 3;
  grid-row: 2;
}

/* 3️⃣ Tipografía y espaciado */
.gs-values__h3 {
  margin: 0 0 10px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-size: clamp(18px, 1.6vw, 22px);
  color: #111;
}
.gs-values__p {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1.6;
  color: #222;
  max-width: 380px;
  margin: 0 auto;
}

/* 4️⃣ Responsive */
@media (max-width: 1024px) {
  .gs-values__grid {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(5, auto);
  }
  .gs-values__item--top:nth-of-type(1) { grid-row: 1; }
  .gs-values__image { grid-row: 2; }
  .gs-values__item--top:nth-of-type(3) { grid-row: 3; }
  .gs-values__item--bottom:nth-of-type(4) { grid-row: 4; }
  .gs-values__item--bottom:nth-of-type(5) { grid-row: 5; }
  .gs-values__image img { width: clamp(320px, 70vw, 520px); }
}

/* =========================================================
   VALORES — levantar masthead (título) y columnas superiores
   sin tocar HTML. Mantiene continuidad de fondo.
   ========================================================= */

/* 0) Variables de levantado y fondo */
:root{
  /* cuánto “tirar arriba” (ajustable) */
  --values-lift: clamp(60px, 8vw, 140px);
  /* continuidad del dorado (mismo tono que ABOUT) */
  --values-grad-start: #E1D6BB;
}

/* 1) Fondo y respiración general del bloque */
.gs-values{
  /* continuidad del degradado del bloque anterior */
  background: linear-gradient(
    180deg,
    var(--values-grad-start) 0%,
    rgba(225,214,187,0.92) 26%,
    rgba(247,243,230,1) 62%,
    #ffffff 100%
  ) !important;

  /* un poco menos de aire arriba; más abajo */
  padding-top: clamp(24px, 4vw, 56px) !important;
  padding-bottom: clamp(140px, 12vw, 240px) !important;
}

/* 2) Sube el masthead (preheading + título) */
.gs-values__mast{
  margin-top: calc(-1 * var(--values-lift)) !important;
}

/* 3) Sube también las dos columnas de arriba (izq/der) */
.gs-values__cols{
  align-items: start;
  gap: clamp(24px, 4vw, 64px);
}
.gs-values__col{
  transform: translateY(calc(-1 * var(--values-lift)));
}

/* 4) Detalles tipográficos/espaciados más limpios */
.gs-values__pre{
  margin-bottom: clamp(6px, 1vw, 12px);
  letter-spacing: .12em;        /* se lee mejor en horizontal largo */
}
.gs-values__title{
  margin-bottom: clamp(20px, 2vw, 28px);
}

/* 5) Ajustes de seguridad en tablet/móvil:
      no “tiremos” nada hacia arriba en pantallas chicas */
@media (max-width: 1024px){
  .gs-values__mast{
    margin-top: 0 !important;
  }
  .gs-values__col{
    transform: none !important;
  }
  .gs-values{
    padding-top: clamp(32px, 6vw, 72px) !important;
    padding-bottom: clamp(120px, 14vw, 220px) !important;
  }
}

/* 6) Un pelo más de aire bajo la imagen central para separar
      de los dos textos inferiores (Compromiso / Cercanía) */
.gs-values__image{
  margin-bottom: clamp(28px, 4vw, 56px);
}

/* =========================================================
   VALORES (sección con ID 4c728925 en Elementor)
   Sube masthead + dos boxes de arriba y hace continuar el dorado.
   ========================================================= */

/* 0) Ajustes: cuánto levantar en desktop */
:root{
  --values-lift: clamp(60px, 8vw, 140px);
}

/* 1) CONTINUIDAD DEL FONDO
   Forzamos a que este bloque NO pinte un degradado distinto.
   Así continúa el dorado del bloque anterior. */
.elementor-element.elementor-element-4c728925{
  background: transparent !important;
  /* un poco menos de aire arriba; más abajo */
  padding-top: clamp(24px, 4vw, 56px) !important;
  padding-bottom: clamp(140px, 12vw, 240px) !important;
}

/* 2) MASTHEAD (preheading + “NUESTROS VALORES”) — subimos */
.elementor-element.elementor-element-254026c5{
  transform: translateY(calc(-1 * var(--values-lift)));
  will-change: transform;
}

/* 3) DOS BOXES SUPERIORES — subimos ambos contenedores */
.elementor-element.elementor-element-3de2cd04, /* Izquierda: Accesibilidad */
.elementor-element.elementor-element-4bd5de1  /* Derecha: Transparencia */{
  transform: translateY(calc(-1 * var(--values-lift)));
  will-change: transform;
}

/* 4) Imagen central — separamos un poco de los textos inferiores */
.elementor-element.elementor-element-7d87683c{
  margin-top: clamp(12px, 2vw, 24px) !important;
  margin-bottom: clamp(24px, 4vw, 48px) !important;
}

/* 5) Línea divisoria bajo los textos superiores — alineada y con aire */
.elementor-element.elementor-element-644adaee .elementor-divider,
.elementor-element.elementor-element-7e998cdf  .elementor-divider{
  max-width: 720px;
  margin-inline: auto;
  opacity: .9;
}


/* 6) Tablet/Mobile: NO levantamos nada para no romper la lectura */
@media (max-width: 1024px){
  .elementor-element.elementor-element-254026c5,
  .elementor-element.elementor-element-3de2cd04,
  .elementor-element.elementor-element-4bd5de1{
    transform: none !important;
  }

  .elementor-element.elementor-element-4c728925{
    padding-top: clamp(32px, 6vw, 72px) !important;
    padding-bottom: clamp(120px, 14vw, 220px) !important;
  }
}

/* ===== NUESTROS VALORES — versión sin Elementor ===== */

:root{
  /* ajusta si querés más/menos aire */
  --values-py-top: clamp(28px, 4vw, 52px);
  --values-py-bot: clamp(140px, 12vw, 220px);
  /* usa el mismo beige del bloque anterior para continuidad */
  --values-grad-start: #E1D6BB;
}

.gs-values{
  /* continuidad del dorado anterior → aclara hacia el blanco */
  background: linear-gradient(
    180deg,
    var(--values-grad-start) 0%,
    rgba(230,221,200,0.92) 30%,
    rgba(248,245,236,1) 68%,
    #fff 100%
  );
  padding: var(--values-py-top) 0 var(--values-py-bot);
}

.gs-values__mast{
  text-align:center;
  max-width: min(1200px, 92vw);
  margin: 0 auto clamp(16px, 3.2vw, 36px);
}

.gs-values__pre{
  margin:0 0 8px;
  font: 600 14px/1.2 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#CBB37F;
}

.gs-values__title{
  margin:0;
  font: 800 clamp(28px, 4.6vw, 56px)/1.05 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color:#0b0b0b;
}

.gs-values__grid{
  max-width: min(1440px, 94vw);
  margin: 0 auto;
  display:grid;
  grid-template-columns: 1fr minmax(480px, 700px) 1fr; /* texto — imagen — texto */
  grid-template-rows: auto auto;                       /* fila top y fila bottom */
  align-items:start;
  column-gap: clamp(32px, 5vw, 80px);
  row-gap: clamp(40px, 6vw, 80px);
  text-align:center;
}

/* TOP LEFT / TOP RIGHT */
.gs-values__item--top:nth-of-type(1){ grid-column:1; grid-row:1; }
.gs-values__item--top:nth-of-type(3){ grid-column:3; grid-row:1; }

/* CENTER IMAGE, ocupa 2 filas para quedar “en el medio” naturalmente */
.gs-values__image{
  grid-column:2;
  grid-row:1 / span 2;
  display:grid; place-items:center;
  margin-top: clamp(-24px, -3vw, -40px); /* sube ligeramente todo el conjunto */
}
.gs-values__image img{
  width: clamp(420px, 35vw, 680px);
  height:auto;
  filter: drop-shadow(0 18px 38px rgba(0,0,0,.15));
}

/* BOTTOM LEFT / BOTTOM RIGHT */
.gs-values__item--bottom:nth-of-type(4){ grid-column:1; grid-row:2; }
.gs-values__item--bottom:nth-of-type(5){ grid-column:3; grid-row:2; }

.gs-values__item{
  max-width: clamp(320px, 32vw, 440px);
  margin-inline:auto;
}

.gs-values__h3{
  margin:0 0 10px;
  font: 700 clamp(18px, 1.6vw, 22px)/1.2 "Poppins", sans-serif;
  color:#111;
}
.gs-values__p{
  margin:0;
  font: 300 clamp(15px, 1.2vw, 17px)/1.65 "Poppins", sans-serif;
  color:#222;
  opacity:.95;
}

/* Separadores bajo los textos superiores (opcionales) */
@media (min-width:1024px){
  .gs-values__item--top{ position:relative; padding-bottom: clamp(16px, 2vw, 22px); }
  .gs-values__item--top::after{
    content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%);
    width: clamp(160px, 18vw, 300px); height:1px; background: rgba(0,0,0,.12);
  }
}

/* Responsive: apilar en una columna */
@media (max-width:1024px){
  .gs-values__grid{
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto auto;
    row-gap: clamp(18px, 3vw, 26px);
  }
  .gs-values__item--top:nth-of-type(1){ grid-column:1; grid-row:1; }
  .gs-values__image{ grid-column:1; grid-row:2; margin-top: 0; }
  .gs-values__item--top:nth-of-type(3){ grid-column:1; grid-row:3; }
  .gs-values__item--bottom:nth-of-type(4){ grid-column:1; grid-row:4; }
  .gs-values__item--bottom:nth-of-type(5){ grid-column:1; grid-row:5; }
  .gs-values__image img{ width: clamp(320px, 70vw, 520px); }
}

/* cambiar posicion titulo
/* ===== NUESTROS VALORES — subir SOLO el masthead (título+preheading) ===== */
/* cuánto lo subimos (ajustable) */
:root{ --values-mast-lift: clamp(60px, 8vw, 140px); }

/* Desktop solamente */
@media (min-width: 1024px){

  /* 1) Tu HTML propio (clases "gs-values") */
  .gs-values :where(.gs-values__mast,.gs-values__head){
    /* principal: mover hacia arriba */
    transform: translateY(calc(-1 * var(--values-mast-lift))) !important;
    will-change: transform;
  }
  /* fallback si por algún motivo transform no surte efecto (display:contents, etc.) */
  .gs-values :where(.gs-values__mast,.gs-values__head){
    margin-top: calc(-1 * var(--values-mast-lift)) !important;
  }

  /* 2) Si todavía está montado con Elementor */
  /* wrapper de la sección de valores */
  .elementor-element-4c728925 .elementor-element-254026c5{
    transform: translateY(calc(-1 * var(--values-mast-lift))) !important;
    will-change: transform;
    margin-top: calc(-1 * var(--values-mast-lift)) !important; /* fallback */
  }

  /* 3) Dar un poco más de aire entre masthead e imagen (opcional) */
  .gs-values :where(.gs-values__grid){ 
    row-gap: clamp(56px, 7vw, 120px) !important;
  }
  /* mismo “gap” si es el contenedor de Elementor */
  .elementor-element-695464b2 .e-con-inner{
    gap: clamp(56px, 7vw, 120px) !important;
    row-gap: clamp(56px, 7vw, 120px) !important;
  }
}

/* === NUESTROS VALORES — líneas centradas entre boxes === */

/* 1) Definimos el gap de filas de la grilla como variable reutilizable */
.gs-values__grid{
  /* usa el mismo rango que ya venías usando */
  --gs-gap: clamp(40px, 6vw, 80px);
  row-gap: var(--gs-gap);
}

/* 2) Dibujamos la línea desde los items superiores, a mitad del gap */
.gs-values__item--top{
  position: relative;
  /* un poco de aire para que no choque visualmente */
  padding-bottom: clamp(10px, 1.8vw, 16px);
}

.gs-values__item--top::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: calc(-0.5 * var(--gs-gap));
  transform: translateX(-50%);
  width: clamp(160px, 18vw, 300px);

  /* 🎨 Color dorado personalizado */
  border-top: 0.5px solid #E5B741;

  opacity: 0.9;
}

/* 3) En móviles/tablet reducimos un poco el gap, la línea se recoloca sola */
@media (max-width: 1023.98px){
  .gs-values__grid{
    --gs-gap: clamp(28px, 5vw, 48px);
  }
}
/* === Igualar tamaño y proporción de texto entre secciones === */

/* Estilo base compartido */
.gs-values__p,
.gs-ibox__desc {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  color: #222;
  opacity: 0.95;
  text-align: justify; /* para igualar el bloque largo */
  margin: 0 auto;
  max-width: 680px; /* asegura coherencia visual */
}

/* Tamaño y altura de línea unificados */
.gs-values__p,
.gs-ibox__desc {
  font-size: clamp(16px, 1.25vw, 18px);
  line-height: clamp(1.55em, 1.2em + 0.4vw, 1.75em);
}

/* Ajuste fino para pantallas grandes */
@media (min-width: 1200px) {
  .gs-values__p,
  .gs-ibox__desc {
    font-size: 17px;
    line-height: 1.65;
  }
}

/* ===== NUESTROS VALORES — título con el look del diseño ===== */

/* Versión sin Elementor (nuestro HTML propio) */
.gs-values .gs-values__title{
  font-family: "Poppins", sans-serif !important;
  font-weight: 500 !important;               /* peso 500 */
  font-size: clamp(36px, 5vw, 55px) !important; /* 55px en desktop */
  line-height: 1.1 !important;               /* interlínea 1.1 */
  letter-spacing: -0.02em !important;        /* ≈ -2px */
  word-spacing: 0 !important;
  text-transform: none !important;
  color: var(--e-global-color-primary, #0b0b0b) !important;
  margin: 0 0 clamp(10px, 1.6vw, 18px) !important;
}

/* Versión con Elementor (mientras lo sigas usando en esa sección) */
.elementor-element-4e0a1e20 .elementor-heading-title{
  font-family: "Poppins", sans-serif !important;
  font-weight: 500 !important;
  font-size: clamp(36px, 5vw, 55px) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  word-spacing: 0 !important;
  text-transform: none !important;
  color: var(--e-global-color-primary, #0b0b0b) !important;
  margin: 0 0 clamp(10px, 1.6vw, 18px) !important;
}

/* Eyebrow (LO QUE NOS HACE DIFERENTES) igual al mock */
.gs-values__eyebrow,
.elementor-element-271c6a79 .elementor-heading-title{
  font: 600 14px/1.2 "Poppins", sans-serif !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #E5B741 !important;                 /* dorado */
  margin: 0 0 6px !important;
}


/************** DISEÑO RESPONSIVE VERSION FINAL PARA MOVILES */
/* ====== NUESTROS VALORES — versión responsive final (HTML propio) ====== */
@media (max-width: 900px){

  /* 🔹 Pila todos los elementos en una columna centrada */
  .gs-values__grid{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: clamp(24px, 4vw, 32px) !important;
    text-align: center !important;
  }

  /* 🔹 Asegura que todos los items ocupen 100% del ancho disponible */
  .gs-values__item,
  .gs-values__image{
    width: 100% !important;
    max-width: 680px !important;
    margin: 0 auto !important;
  }

  /* 🔹 Orden deseado:
     1. Accesibilidad
     2. Transparencia
     3. Imagen
     4. Compromiso
     5. Cercanía */
  .gs-values__item.gs-values__item--top:nth-of-type(1){ order: 1 !important; } /* Accesibilidad */
  .gs-values__item.gs-values__item--top:nth-of-type(3){ order: 2 !important; } /* Transparencia */
  .gs-values__image{ order: 3 !important; } /* Imagen */
  .gs-values__item.gs-values__item--bottom:nth-of-type(4){ order: 4 !important; } /* Compromiso */
  .gs-values__item.gs-values__item--bottom:nth-of-type(5){ order: 5 !important; } /* Cercanía */

  /* 🔹 Centra y ajusta texto */
  .gs-values__h3,
  .gs-values__p{
    text-align: center !important;
    margin: 0 auto !important;
  }

  /* 🔹 Imagen responsiva y centrada */
  .gs-values__image img{
    display: block !important;
    margin: 0 auto !important;
    max-width: clamp(280px, 80vw, 460px) !important;
    height: auto !important;
  }

  /* 🔹 Espaciado general */
  .gs-values{
    padding-top: clamp(56px, 10vw, 80px) !important;
    padding-bottom: clamp(100px, 12vw, 160px) !important;
  }
}


/******************* ===== PREGUNTAS FRECUENTES — 2 columnas con imagen ===== */
.gs-faq{
  background: linear-gradient(180deg,#E1D6BB 0%, rgba(247,243,230,.96) 60%, #fff 100%);
  padding: clamp(40px,6vw,80px) clamp(20px,4vw,56px);
}

.gs-faq__grid {
  display: grid;
  grid-template-columns: minmax(620px, 1fr) minmax(260px, 25%);
  grid-template-rows: auto 1fr;
  grid-template-areas:
    "head media"
    "list media";
  gap: clamp(24px, 4vw, 64px);
  align-items: stretch;
  min-height: clamp(560px, 80vh, 980px);
}

/* Áreas del grid */
.gs-faq__head  { grid-area: head;  align-self:start; }
.gs-faq__list  { grid-area: list; }

/* Título */
.gs-faq__title{
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  line-height: 1.05;
  color: #fff;
  font-size: clamp(32px, 4.2vw, 60px); /* antes: 42px–65px */

   /* 🔹 NUEVO: fuerza que todo quede en una sola línea centrada */
  white-space: nowrap;         /* impide el salto de línea */
  text-align: center;
  
}
.gs-faq__title span{ display:block; }

/* Acordeón */
.gs-faq__list{ margin-top: clamp(8px,1.2vw,12px); }
.faq{ border-bottom:1px solid rgba(80,90,130,.25); padding: clamp(14px,2.2vw,18px) 0; }
.faq__q{
  cursor:pointer; list-style:none;
  font:700 clamp(18px,1.8vw,28px)/1.25 "Poppins",sans-serif; color:#1b1b1b;
}
.faq__q::-webkit-details-marker{ display:none; }
.faq__a{
  margin-top: clamp(8px,1vw,10px);
  font:400 clamp(14px,1.2vw,18px)/1.65 "Poppins",sans-serif; color:#222;
}

/* ========= FAQ — Columna izquierda (versión final ajustada) ========= */

/* Variables globales para el ancho y aire lateral */
:root {
  --faq-col-width: min(580px, 66vw);     /* más ancho para que crezcan las líneas */
  --faq-inline-pad: clamp(12px, 3vw, 48px); /* aire lateral dentro del bloque */
}

/* 1) Título: una sola línea, centrado, Roboto 65/70 */
.gs-faq__head {
  display: flex;
  justify-content: center;
  width: var(--faq-col-width);
  justify-self: center;
}

.gs-faq__title {
  text-align: center;
  font-family: "Roboto", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-weight: 700; /* "bold" */
  font-size: clamp(42px, 5vw, 65px);
  line-height: clamp(46px, 5.4vw, 70px);
  letter-spacing: 0;
  color: #fff;
  padding-bottom: 0 !important; /* elimina cualquier padding inferior */
  margin-bottom: clamp(2px, 0.5vw, 8px) !important; /* mantiene un pequeño espacio visual */
}

.gs-faq__title br { display: none; }
.gs-faq__title span { display: inline; }

/* 2) Contenedor del acordeón: centrado y ancho coherente */
.gs-faq__list {
  justify-self: center;
  width: var(--faq-col-width);
  margin: 0; /* centrado perfecto en la columna */
  padding: 0 !important;
  box-sizing: border-box;
  text-align: justify;
}

/* 3) Cada ítem del acordeón: línea gris más larga y sutil */
.faq {
  width: 100%;
  margin: 0 auto;
  border-bottom: 1px solid rgba(120, 130, 160, .45); /* gris suave */
  padding: clamp(12px, 1.6vw, 16px) 0;
  box-sizing: border-box;
}

/* 4) Tipografía de la pregunta (Montserrat 16 / 35, justificada) */
.faq__q {
  list-style: none;
  cursor: pointer;
  font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-weight: 400; /* “normal” */
  font-size: clamp(15px, 1.05vw, 16px);
  line-height: 35px;
  letter-spacing: 0.51px;
  color: #1b1b1b;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  margin: 0;
}

.faq__q::-webkit-details-marker { display: none; }

/* 5) Tipografía del contenido (Montserrat 16 / 24, justificado y legible) */
.faq__a {
  margin-top: clamp(8px, 1vw, 10px);
  font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6; /* más legible */
  color: #202020;
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
}

/* Responsive */
@media (max-width: 1024px) {
  :root {
    --faq-col-width: 80vw; /* aprovecha más el ancho en pantallas pequeñas */
    --faq-inline-pad: clamp(10px, 4vw, 24px);
  }

  .gs-faq__title {
    margin-bottom: clamp(10px, 3vw, 20px);
  }
}

/* === Ajustes visuales extra === */

/* Línea gris superior antes de la primera pregunta */
.gs-faq__list {
  position: relative;
}

.gs-faq__list::before { content: none !important; }

/* Reducir aún más el espacio entre el título y las preguntas */
.gs-faq__title {
  margin-bottom: clamp(2px, 0.6vw, 8px);  /* antes era 6px–12px */
}

/* Opcional: reducir padding-top del contenedor de preguntas */
.gs-faq__list {
  position: relative;
  overflow: visible;
  padding-top: 0; 
}

/* La primera pregunta recibe la línea superior */
.gs-faq__list > .faq:first-of-type {
  border-top: 1px solid rgba(120,130,160,.45);
}


/* Asegura el mismo ancho para todas las líneas */
.gs-faq__list,
.gs-faq__list > .faq {
  box-sizing: border-box;
  width: var(--faq-col-width);
  margin-left: auto;
  margin-right: auto;
  padding-inline: var(--faq-inline-pad);
}

/* Si ya le das padding-inline a .faq en otro lado, quítalo
   para que la línea quede siempre alineada */
.gs-faq__list > .faq {
  padding-left: 0;
  padding-right: 0;
}

/* === Columna derecha: imagen full-bleed === */
.gs-faq__media {
  grid-area: media;
  grid-row: 1 / -1;
  position: relative;
  z-index: 0;
  min-height: 0;
  /* permite que sobresalga el padding del contenedor */
  margin: calc(-1 * clamp(40px,6vw,80px)) calc(-1 * clamp(20px,4vw,56px));
  /* el padding que quitamos con el margin negativo */
  border-radius: 0;
  overflow: hidden;
}

/* Fondo: ocupa 100% y toca los bordes del viewport */
.gs-faq__media::before {
  content: "";
  position: absolute;
  inset: 0;
  background: center / cover no-repeat var(--faq-bg);
  z-index: -1;
}

/* Badge circular centrado */
/* tamaño del badge: bajalo/subilo desde acá */
:root{
  --badge-size: clamp(90px, 10vw, 140px);
}
.gs-faq__badge{
  width: var(--badge-size);
  height: var(--badge-size);
  border-radius: 50%;
  border: clamp(6px, .6vw, 8px) solid #fff;
  background: #fff;
  object-fit: cover;
  box-shadow: 0 14px 30px rgba(0,0,0,.18);

  position: absolute;
  left: 50%;
  top: 50%;
  /* NOTA: el translate queda dinámico con las variables --tx/--ty (ver JS) */
  transform: translate(calc(-50% + var(--tx, 0px)),
                      calc(-50% + var(--ty, 0px)));
  transition: transform .35s cubic-bezier(.2,.6,.2,1),
              box-shadow .35s;
  will-change: transform;
}
@media (max-width: 1024px){
  :root{ --badge-size: clamp(110px, 18vw, 180px); }
}
/* Responsive */
@media (max-width:1024px){
  .gs-faq__grid{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    grid-template-areas:
      "head"
      "media"
      "list";
    gap: clamp(18px,4vw,28px);
    min-height:auto;
  }
  .gs-faq__media{ height: clamp(300px,45vh,520px); }
  .gs-faq__badge{
    top:60%;
    width: clamp(110px,20vw,180px);
    height: clamp(110px,20vw,180px);
  }
}

/* (seguridad) evita mínimos por contenido en la columna izquierda */
/* Título y lista: mismo ancho y centrados */
.gs-faq__head,
.gs-faq__list{
  max-width: var(--faq-col-width);
  width: 100%;
  margin-inline: auto;
}

/* leve realce cuando hay hover sobre el área derecha */
.gs-faq__media:hover .gs-faq__badge{
  transform: translate(calc(-50% + var(--tx, 0px)),
                      calc(-50% + var(--ty, 0px)))
             scale(1.04);
  box-shadow: 0 18px 40px rgba(0,0,0,.22);
}

/* Si el usuario prefiere menos movimiento, mantenemos todo quieto */
@media (prefers-reduced-motion: reduce){
  .gs-faq__badge{
    transition: none !important;
    transform: translate(-50%,-50%) !important;
  }
}

/* No partir palabras en las preguntas y respuestas */
.faq__q,
.faq__a, p {
  -webkit-hyphens: none !important;
  -ms-hyphens: none !important;
  hyphens: none !important;

  /* y no fuerces cortes raros */
  overflow-wrap: normal;   /* antes: break-word/anywhere */
  word-break: normal;      /* evita cortar a mitad de palabra */
}


/*=========== RESPONSIVE DEFINITIVO MOVILES FAQ*/
/* ===== FAQ – FIX MOBILE (orden correcto: título → imagen → preguntas) ===== */
@media (max-width: 900px){

  .gs-faq__title{
    font-size: clamp(26px, 7vw, 34px) !important; /* antes era 42–65px */
    line-height: 1.15 !important;
    text-align: center !important;
    word-break: break-word;
    white-space: normal !important; /* permite que corte en 2 líneas si hace falta */
    padding-inline: clamp(8px, 4vw, 20px) !important; /* agrega respiración lateral */
  }

  /* 1️⃣ Asegura que la grilla se apile en columna */
  .gs-faq__grid{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: clamp(24px, 5vw, 32px) !important;
  }

  /* 2️⃣ Orden de los elementos */
  .gs-faq__head{ order: 1 !important; }   /* título */
  .gs-faq__media{ order: 2 !important; }  /* imagen */
  .gs-faq__list{ order: 3 !important; }   /* acordeón */

  /* 3️⃣ Reset de márgenes para evitar superposición */
  .gs-faq__media{
    margin: 0 auto clamp(24px,6vw,40px) auto !important;
    width: 100% !important;
    height: clamp(280px, 45vh, 400px) !important;
    overflow: hidden !important;
    position: relative;
    z-index: 1;
  }

  /* 4️⃣ Badge más pequeño y centrado */
  .gs-faq__badge{
    top: 50% !important;
    width: clamp(80px, 16vw, 120px) !important;
    height: clamp(80px, 16vw, 120px) !important;
    transform: translate(-50%, -50%) !important;
    z-index: 2;
  }

  /* 5️⃣ Lista de preguntas debajo de todo */
  .gs-faq__list{
    position: relative;
    z-index: 3; /* garantiza que quede por encima del fondo beige, no de la imagen */
    margin-top: clamp(16px, 4vw, 32px) !important;
  }
}

/*===================== TESTIMONIOS */

/* Fondo y contenedor */
.gs-testimonials{
  background: linear-gradient(180deg,#E1D6BB 0%, rgba(247,243,230,.96) 60%, #fff 100%);
  padding: clamp(48px,6vw,96px) clamp(24px,4vw,56px);
}
.gs-testimonials__inner{
  max-width: min(980px, 88vw);
  margin: 0 auto;
  text-align: center;
}

/* Encabezados */
.gs-testimonials__eyebrow{
  font: 600 12px/1.2 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: #6f5e3b;
  margin: 0 0 10px;
}
.gs-testimonials__title{
  font: 700 clamp(28px,4vw,38px)/1.15 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  color: #1b1b1b;
  margin: 0 0 18px;
}
.gs-testimonials__rule{
  display:block;
  height:1px;
  background: rgba(120,130,160,.45);
  width: min(520px, 80%);
  margin: 0 auto clamp(22px,3vw,34px);
}

/* Carrusel */
.gs-testimonials__viewport{
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  max-width: 820px;
}
.gs-testimonials__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  transition: transform .55s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}

/* Slide */
.gs-testimonial{
  padding: clamp(10px,2vw,14px) clamp(10px,3vw,24px) clamp(22px,4vw,28px);
}
.gs-testimonial__text{
  font: 400 clamp(15px,1.4vw,18px)/1.75 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  color:#222;
  max-width: 780px;
  margin: 0 auto clamp(18px,3vw,24px);
}
.gs-testimonial__footer{
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.gs-testimonial__avatar{
  width:56px;height:56px;border-radius:50%;object-fit:cover;
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}
.gs-testimonial__name{
  display:block;
  font:600 16px/1.2 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
}
.gs-testimonial__role{
  display:block;
  font:400 12px/1.2 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  color:#666;
}

/* Bullets */
.gs-testimonials__bullets{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top: clamp(12px,2.6vw,18px);
}
.gs-testimonials__bullets button{
  width:8px;height:8px;border-radius:999px;border:0;
  background:#bbb; opacity:.8; cursor:pointer;
  transition:transform .2s ease, background-color .2s ease, opacity .2s ease;
}
.gs-testimonials__bullets button.is-active{
  background:#1b1b1b; opacity:1; transform:scale(1.15);
}

/* Responsive pequeño */
@media (max-width:520px){
  .gs-testimonial__avatar{ width:48px; height:48px; }
}

/* ====== LÍNEA DORADA DEBAJO DEL TÍTULO ====== */
.gs-testimonials__rule {
  background: rgb(229,183,65);   /* dorado */
  height: 2px;
  width: min(560px, 60%);
  margin: 14px auto clamp(28px, 3vw, 36px);
  border-radius: 2px;
  opacity: 1;
}


/* ====== LÍNEA DORADA INFERIOR ====== */
.gs-testimonials__inner > .gs-testimonials__rule:last-of-type {
  background: rgb(229,183,65);
  height: 2px;
  width: min(560px, 60%);
  margin-top: clamp(24px, 3vw, 36px);
  border-radius: 2px;
  opacity: 1;
}

/* === TESTIMONIOS (custom) — coincide 1:1 con tu HTML === */

/* Contenedor */
.gs-testimonials{
  background: linear-gradient(180deg,#E1D6BB 0%, rgba(247,243,230,.96) 60%, #fff 100%);
  padding: clamp(48px,6vw,96px) clamp(24px,4vw,56px);
}
.gs-testimonials__inner{
  max-width: min(980px, 88vw);
  margin: 0 auto;
  text-align: center;
}

/* Eyebrow + Título */
.gs-testimonials__eyebrow{
  font: 600 12px/1.2 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: #6f5e3b;
  margin: 0 0 10px;
}
.gs-testimonials__title{
  font: 700 clamp(28px,4vw,38px)/1.15 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  color: #1b1b1b;
  margin: 0;
}

/* Líneas doradas (arriba y abajo) */
.gs-testimonials__rule{
  display:block !important;
  height: 2px !important;
  background: rgb(229,183,65) !important;
  width: min(92%, 1120px) !important; /* un poco más largas */
  margin: 14px auto clamp(26px, 3vw, 34px) !important; /* separa del título */
  border-radius: 2px !important;
  opacity: 1 !important;
}
/* La de abajo un poco más separada de los bullets */
.gs-testimonials__inner > .gs-testimonials__rule:last-of-type{
  margin-top: clamp(24px, 3vw, 36px) !important;
}

/* Carrusel */
.gs-testimonials__viewport{
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  max-width: 820px;
}
.gs-testimonials__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  transition: transform .55s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}

/* Slide */
.gs-testimonial{
  padding: clamp(10px,2vw,14px) clamp(10px,3vw,24px) clamp(22px,4vw,28px);
}
.gs-testimonial__text{
  font: 400 clamp(15px,1.4vw,18px)/1.75 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  color:#222;
  max-width: 780px;
  margin: 0 auto clamp(18px,3vw,24px);
}
.gs-testimonial__footer{
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.gs-testimonial__avatar{
  width:56px;height:56px;border-radius:50%;object-fit:cover;
  box-shadow: 0 8px 18px rgba(0,0,0,.18);
}
.gs-testimonial__name{
  display:block;
  font:600 16px/1.2 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  font-size: clamp(15px, 1.5vw, 20px) !important;
  text-align: left;
}
.gs-testimonial__role{
  display:block;
  font:400 12px/1.2 "Poppins",system-ui,Segoe UI,Roboto,sans-serif;
  color:#666;
  font-size: clamp(10px, 1vw, 15px) !important;
  text-align: left;
}

/* Bullets mini, perfectamente redondos y suaves */
.gs-testimonials__bullets {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: clamp(12px, 2vw, 18px);
  -webkit-font-smoothing: antialiased;
}

.gs-testimonials__bullets button {
  width: 7px;                        /* 1px más grande para suavizar el render */
  height: 7px;
  border-radius: 50%;
  background-color: rgba(0,0,0,0.7); /* gris oscuro neutro */
  border: none;
  outline: none;
  cursor: pointer;
  padding: 0;
  transition: transform .2s ease, background-color .2s ease, opacity .2s ease;

  /* 🔹 mejora del renderizado y evita el pixel jagged */
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  will-change: transform;
}

.gs-testimonials__bullets button.is-active {
  background-color: #1b1b1b;         /* negro sólido */
  transform: scale(1.1);             /* leve realce */
  opacity: 1;
}

.gs-testimonials__bullets button:hover,
.gs-testimonials__bullets button:focus-visible {
  opacity: 1;
  transform: scale(1.15);
}

/* Responsive pequeño */
@media (max-width:520px){
  .gs-testimonial__avatar{ width:48px; height:48px; }
}

/* Footer centrado horizontalmente */
.gs-testimonial__footer {
  display: flex;
  justify-content: center;    /* mantiene el footer centrado */
  align-items: flex-start;    /* alinea el texto con la parte superior del avatar */
  gap: 12px;
  text-align: left;           /* mantiene el texto alineado correctamente dentro */
}

/* Contenedor del nombre y rol */
.gs-testimonial__who {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  line-height: 1.2;
}

/* Ajuste fino entre nombre y rol */
.gs-testimonial__name {
  margin-bottom: 0;
}
/* Separación responsive entre nombre y rol */
.gs-testimonial__role {
  margin-top: clamp(4px, 1vw, 10px);  /* min 2px, ideal 0.5% del ancho, máx 6px */
}


/* ====== MARCAS – CONTENEDOR ====== */
.gs-brands{
  background:#e9eaee; /* similar a la captura */
  padding: clamp(48px,6vw,96px) clamp(20px,4vw,56px);
}
.gs-brands__inner{
  max-width: min(1100px, 92vw);
  margin: 0 auto;
  text-align: center;
}
.gs-brands__title{
  font: 800 clamp(28px,4.4vw,56px)/1.15 "Poppins", system-ui, Segoe UI, Roboto, sans-serif;
  color:#111;
  margin: 0 0 6px;
}
.gs-brands__subtitle{
  font: 400 clamp(13px,1.3vw,16px)/1.45 "Poppins", system-ui, Segoe UI, Roboto, sans-serif;
  color:#666;
  margin: 0 0 clamp(22px,3vw,34px);
}

/* ====== VIEWPORT / TRACK ====== */
.gs-brands__viewport{
  position: relative;
  overflow: hidden;
}
.gs-brands__track{
  display: grid;
  grid-auto-flow: column;
  /* cada item ocupa 1/N del ancho del viewport (se define por --brands-per-view via JS) */
  grid-auto-columns: calc(100% / var(--brands-per-view, 4));
  align-items: center;
  transition: transform var(--brands-speed, 500ms) cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}
.gs-brand{
  display:flex; align-items:center; justify-content:center;
  padding: clamp(8px,2.2vw,24px);
}
.gs-brand img{
  max-height: clamp(44px, 8.2vw, 90px);
  max-width: 100%;
  height:auto; width:auto;
  filter: none;        /* si querés, podés usar: grayscale(1) opacity(.85) */
  object-fit: contain;
}

/* ====== BULLETS (pequeños y redondos) ====== */
.gs-brands__bullets{
  display:flex; justify-content:center; gap:8px;
  margin-top: clamp(12px,2vw,18px);
  -webkit-font-smoothing: antialiased;
}
.gs-brands__bullets button{
  width: 7px; height: 7px; border-radius: 50%;
  background: rgba(0,0,0,.35); border:0; padding:0; cursor:pointer;
  transform: translateZ(0); backface-visibility: hidden; will-change: transform;
  transition: transform .2s ease, background-color .2s ease, opacity .2s ease;
}
.gs-brands__bullets button.is-active{
  background:#1b1b1b; transform: scale(1.1); opacity:1;
}
.gs-brands__bullets button:hover,
.gs-brands__bullets button:focus-visible{
  opacity:.95; transform: scale(1.15); outline:none;
}

/* ====== RESPONSIVE: logos por vista ====== */
/* JS ajusta --brands-per-view según el ancho, pero dejamos defaults de respaldo */
@media (max-width: 1024px){
  .gs-brands__track{ grid-auto-columns: calc(100% / 3); }
}
@media (max-width: 640px){
  .gs-brands__track{ grid-auto-columns: calc(100% / 2); }
}

/* ===== ÚNETE – Estática ===== */
.gs-join{
  /* mismo fondo suave de tu sitio */
  background: rgb(222, 230, 255); /* si preferís el gradiente: linear-gradient(180deg,#e7eaf3 0%, #eef2f7 100%) */
  padding: clamp(48px, 6vw, 96px) clamp(24px, 4vw, 56px);
}
.gs-join__inner{
  max-width: min(1080px, 92vw);
  margin: 0 auto;
  text-align: center;
}

/* Título + intro */
.gs-join__title{
  font: 700 clamp(28px, 4.4vw, 44px)/1.15 "Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: rgb(229,183,65); /* dorado */
  margin: 0 0 clamp(10px, 1.8vw, 16px);
}
.gs-join__intro{
  max-width: 760px;
  margin: 0 auto clamp(28px, 6vw, 64px);
  color: #5f6b7a;
  font: 400 clamp(14px, 1.4vw, 16px)/1.7 "Poppins", system-ui, Segoe UI, Roboto, sans-serif;
}

/* Grid de “píldoras” */
.gs-join__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(20px, 4vw, 56px);
  align-items: start;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Item */
.gs-join__item{
  display: grid;
  justify-items: center;
  gap: clamp(10px, 1.6vw, 14px);
}

/* Icono estrella */
.gs-join__icon{
  display:inline-grid;
  place-items:center;
  width: clamp(40px, 4.8vw, 56px);
  height: clamp(40px, 4.8vw, 56px);
}
.gs-join__icon svg{
  width: 100%; height: 100%;
  fill: rgb(229,183,65);
  filter: drop-shadow(0 1px 0 rgba(0,0,0,.04));
}

/* Etiqueta debajo del icono */
.gs-join__label{
  margin: 0;
  font: 700 clamp(14px, 1.6vw, 18px)/1.25 "Poppins", system-ui, Segoe UI, Roboto, sans-serif;
  color: #0f141a;
}

/* Responsive */
@media (max-width: 1024px){
  .gs-join__grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px){
  .gs-join__grid{ grid-template-columns: 1fr; }
}


/* ===== BOTÓN "VOLVER ARRIBA" (ASTRA) ===== */
#ast-scroll-top {
  background-color: #d5bb57 !important;  /* dorado */
  border-radius: 6px !important;
  box-shadow: 0 6px 12px rgba(0,0,0,0.15);
  transition: background-color 0.25s ease, transform 0.2s ease;
}

/* Flecha en blanco */
#ast-scroll-top .ast-arrow-svg path {
  fill: #fff !important;
}

/* Hover: dorado más oscuro + pequeño lift */
#ast-scroll-top:hover {
  background-color: #c3a94e !important;  /* dorado más oscuro */
  transform: translateY(-3px);
}

/* Ajuste opcional: más redondeado o menos si querés */
#ast-scroll-top {
  width: 44px !important;
  height: 44px !important;
  display: grid;
  place-items: center;
}

/* =========================
   DISEÑO DE LAS MODIFICACIONES DE LOS BOTONES DE CADA PRODUCTO DEL CARRITO
   ========================= */
/* ===== GS – Fila Pack + Beneficio especial (dos columnas) ===== */
.gs-pack-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  margin:-0.15rem 0 0.45rem 0;
}
.gs-pack-col{
  display:flex;
  flex-direction:column;
  line-height:1.1;
}
.gs-right{
  align-items: center;   /* antes: flex-end */
  text-align: center;    /* antes: right */
}

/* Píldoras */
.gs-pack-badge,
.gs-benef-badge{
  display:inline-block;
  font-size:.6rem;
  font-weight:700;
  background:#eee;
  color:#555;
  padding:.22rem .50rem;
  border-radius:.4rem;
  letter-spacing:.02em;
}

/* Valores debajo de cada badge */
.gs-pack-value,
.gs-benef-value{
  display:block;
  margin-top:.30rem;
  font-size:0.7rem;      /* mismo tamaño para ambos */
  font-weight:700;
  color:#535353;
}

/* Centrar cuando la fila es de una sola columna */
.gs-pack-row.gs-onecol{ justify-content: center !important; }
.gs-pack-row.gs-onecol .gs-pack-col{ align-items: center; text-align: center; margin: 0 auto; }
.wpr-grid-item-below-content .gs-pack-row.gs-onecol{ width:100%; }

/* Si querés mantener ocultas las estrellas */
.wpr-grid-item-rating { display:none !important; }

/* Responsive */
@media (max-width:480px){
  .gs-pack-row{ gap:.6rem; }
  .gs-pack-badge,.gs-benef-badge{ font-size:.57rem; }
  .gs-pack-value,.gs-benef-value{ font-size:.67rem; }
}
  
/*
TITULO DEL PRODUCTO EN LA TARJETA CENTRADO
*/
body.woocommerce-shop .wpr-grid-item-title,
body.tax-product_cat .wpr-grid-item-title {
  text-align: center !important;
}

/*
Agregar palabra "precio final" al precio del producto
*/
.wpr-grid-item-price::before {
  content: "Precio final";
  display: block;
  font-size: 0.7rem;
  color: #777;
  margin-bottom: 2px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.wpr-grid-item-price .amount {
  position: relative;
  cursor: help;
}

.wpr-grid-item-price .amount::after {
  content: "Precio final del combo (incluye beneficio especial)";
  position: absolute;
  bottom: 120%;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0,0,0,0.8);
  color: #fff;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 0.7rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s;
}

.wpr-grid-item-price .amount:hover::after {
  opacity: 1;
}

/* ===== GS – Variante corporativa para el precio final ===== */
.wpr-grid-item-price {
  text-align: center !important;
  margin-top: 0.8rem;
}

.wpr-grid-item-price .amount {
  display: inline-block;
  background: #d4b254;               /* dorado institucional */
  color: #fff;                       /* texto blanco */
  font-size: 1.2rem;
  font-weight: 800;
  padding: 0.4rem 1rem;
  border-radius: 0.5rem;
  letter-spacing: 0.5px;
  box-shadow: 0 3px 6px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
}

/* Efecto hover */
.wpr-grid-item:hover .wpr-grid-item-price .amount {
  background: #c8a93e;               /* tono más cálido */
  transform: translateY(-2px);
  box-shadow: 0 5px 10px rgba(0,0,0,0.15);
}

/* === Alinear los "+" entre las 2 filas (sin tocar HTML) === */
.wpr-grid-item-below-content .gs-pack-row.gs-onecol .gs-pack-col{
  display: inline-grid !important;
  grid-template-columns: max-content 16px max-content; /* izq | + | der */
  column-gap: 6px;
  row-gap: 6px;
  justify-content: center;   /* mantiene la fila superior centrada */
  align-items: center;
  text-align: center;
}

/* “Aplana” los 2 wrappers inline-flex para que sus spans usen la grilla del padre */
.wpr-grid-item-below-content .gs-pack-row.gs-onecol .gs-pack-col > div{
  display: contents !important;
}

/* El + queda siempre en la misma columna */
.wpr-grid-item-below-content .gs-pack-row.gs-onecol .gs-pack-col > div > span:nth-child(2){
  justify-self: center;
  width: 16px;              /* mismo ancho que la columna del + */
  text-align: center;
}

/* =========================
   CHECKOUT
   ========================= */
/* === Botón principal del checkout (Realizar el pedido) === */
.woocommerce #place_order,
.woocommerce-page #place_order,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  background-color: #d4af37 !important; /* dorado */
  border-color: #d4af37 !important;
  color: #ffffff !important; /* texto oscuro para contraste */
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* Efecto hover */
.woocommerce #place_order:hover,
.woocommerce-page #place_order:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: #b8962e !important; /* dorado más oscuro */
  border-color: #b8962e !important;
  color: #fff !important; /* texto claro al pasar el mouse */
}

/* Píldora de Pack en carrito/checkout/emails */
.gs-pack-line { display:inline-block; margin-top:2px; }
.gs-pack-pill{
  display:inline-block;
  font-size:.70rem;
  font-weight:700;
  background:#eee;
  color:#555;
  padding:.20rem .50rem;
  border-radius:.4rem;
  letter-spacing:.02em;
  vertical-align:middle;
}

/*
=================
CARRITO EN HEADER
=================
*/
/* Contenedor del icono */
.gs-cart-icon{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  padding: .35rem .50rem;
  color: #111;
  text-decoration: none;
}

/* Ícono */
.gs-cart-svg{ display:inline-flex; }

/* Burbuja contador */
.gs-cart-count{
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #d4af37;   /* dorado */
  color: #111;
  font-weight: 700;
  font-size: 12px;
  line-height: 20px;
  text-align: center;
  transform: translateY(-2px);
}

/* Hover */
.gs-cart-icon:hover .gs-cart-count{ background:#b8962e; }

/* === Carrito fijo en la esquina superior derecha === */
.gs-cart-icon {
  position: fixed !important;
  top: 18px;       /* ajustá según la altura de tu header */
  right: 25px;
  z-index: 9999;
  background: none;
  color: #111;
  font-size: 18px;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Contador dorado */
.gs-cart-count {
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 999px;
  background: #d4af37;
  color: #111;
  font-weight: 700;
  font-size: 12px;
  line-height: 20px;
  text-align: center;
}

/* Hover */
.gs-cart-icon:hover .gs-cart-count {
  background: #b8962e;
  color: #fff;
}

/* Ícono más grande */
.gs-cart-svg svg {
  width: 22px;
  height: 22px;
}

/* Aplica solo al template 1050 */
.elementor-1050 .elementor-widget-shortcode,
.elementor-1050 .elementor-element-8a19e17,
.elementor-1050 .elementor-element-8a19e17 > .e-con-inner {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
}

/* Si el contenedor de shortcode está vacío, ocultarlo */
.elementor-1050 .elementor-widget-shortcode .elementor-shortcode:empty {
  display: none !important;
}
