/*
Theme Name: AquaElectric Premium v5
Theme URI: https://aquaelectric.cl
Author: Serviline SpA
Author URI: https://serviline.cl
Description: Tema a medida para AquaElectric — "La fusión perfecta". Diseño premium con animación generativa, mega menú, footer por widgets, patrones de bloques Gutenberg, paleta de marca, bloques 100% estilizados, WooCommerce y consentimiento Ley 21.719.
Version: 5.2.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aquaelectric
Tags: e-commerce, custom-menu, custom-logo, featured-images, translation-ready
*/

/* ===================== TOKENS ===================== */
:root{
  --cobre:#C8421A; --fuego:#E05A1E; --cobre-osc:#7E2A0E; --cobre-brillo:#F07A3E;
  --plata:#9E9E9E; --plata-clara:#D6D4D0; --plata-brillo:#EDEBE7; --plata-osc:#54524F;
  --negro:#0B0B0B; --carbon:#151412; --carbon2:#1E1C1A; --linea:#2B2926;
  --blanco:#F5F3EF;
  --display:'Big Shoulders Display',sans-serif; --body:'Archivo',sans-serif;
  --metal-cobre:linear-gradient(115deg,#7E2A0E 0%,#C8421A 30%,#F07A3E 50%,#C8421A 70%,#7E2A0E 100%);
  --metal-plata:linear-gradient(115deg,#6E6C69 0%,#B9B7B3 30%,#EDEBE7 50%,#B9B7B3 70%,#6E6C69 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html{overflow-x:clip}
body{font-family:var(--body);background:var(--negro);color:var(--blanco);line-height:1.6;overflow-x:clip}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:var(--body);cursor:pointer}
:focus-visible{outline:2px solid var(--fuego);outline-offset:3px}
::selection{background:var(--cobre);color:#fff}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

@keyframes sheen{to{background-position:200% 0}}
@keyframes pulse{0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(224,90,30,0))}50%{transform:scale(1.06);filter:drop-shadow(0 0 26px rgba(224,90,30,.55))}}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes up{to{transform:translateY(0)}}

/* ===================== PRELOADER / UTILIDADES ===================== */
#loader{position:fixed;inset:0;z-index:2000;background:var(--negro);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6rem;transition:opacity .6s,visibility .6s}
#loader.off{opacity:0;visibility:hidden}
#loader img{width:110px;height:110px;animation:pulse 1.6s ease-in-out infinite}
#loader .bar{width:200px;height:2px;background:var(--linea);overflow:hidden;border-radius:2px}
#loader .bar::after{content:"";display:block;height:100%;width:40%;background:var(--metal-cobre);animation:load 1.1s ease-in-out infinite}
@keyframes load{0%{transform:translateX(-100%)}100%{transform:translateX(350%)}}
#loader p{font-size:.7rem;letter-spacing:.4em;text-transform:uppercase;color:var(--plata)}
#progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--metal-cobre);z-index:1500;box-shadow:0 0 10px rgba(224,90,30,.7)}
#toTop{position:fixed;right:1.2rem;bottom:5.4rem;z-index:950;width:46px;height:46px;border-radius:50%;border:1px solid var(--linea);background:rgba(21,20,18,.9);color:var(--blanco);font-size:1.1rem;opacity:0;pointer-events:none;transition:.3s}
#toTop.on{opacity:1;pointer-events:auto}
#toTop:hover{border-color:var(--fuego);color:var(--fuego);transform:translateY(-3px)}
#wsp{position:fixed;right:1.2rem;bottom:1.2rem;z-index:950;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;font-size:1.6rem;box-shadow:0 8px 24px rgba(37,211,102,.4);transition:transform .25s}
#wsp:hover{transform:scale(1.1) rotate(6deg)}

/* ===================== TOPBAR / HEADER ===================== */
.topbar{background:var(--metal-cobre);background-size:200% 100%;animation:sheen 8s linear infinite;color:#fff;font-size:.8rem;padding:.45rem 1.5rem;display:flex;justify-content:center;gap:2.2rem;flex-wrap:wrap;font-weight:500}
.site-top{position:sticky;top:0;z-index:1000;isolation:isolate}
.site-header{background:var(--header-bg,rgba(11,11,11,.92));backdrop-filter:blur(14px);border-bottom:1px solid var(--linea);transition:padding .28s,background .28s}
.site-header.compact{background:var(--overlay,rgba(11,11,11,.97))}
.site-header.compact .nav{padding-top:.3rem;padding-bottom:.3rem}
.site-header.compact .brand img{height:calc(var(--logo-alto,54px) * .74)}
.site-header.compact .brand-tag{opacity:0;height:0;overflow:hidden}
.skip-link:focus{position:fixed;top:8px;left:8px;z-index:3000;width:auto;height:auto;clip:auto;background:var(--cobre);color:#fff;padding:.7rem 1.1rem;border-radius:4px}
.nav{max-width:1360px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.5rem;gap:1.2rem;transition:padding .28s}
.nav-acciones{display:flex;align-items:center;gap:.7rem}
.nav-carrito{position:relative;font-size:1.3rem;line-height:1}
.nav-carrito .cart-n{position:absolute;top:-6px;right:-10px;background:var(--cobre);color:#fff;font-size:.62rem;font-weight:700;border-radius:20px;padding:.1rem .35rem}
.brand{display:flex;align-items:center;gap:.75rem;flex-shrink:0}
.brand img{width:auto;height:var(--logo-alto,54px);transition:transform .4s,height .28s}
.brand-txt{display:flex;flex-direction:column;line-height:1.15}
.brand:hover img{transform:rotate(-8deg) scale(1.05)}
.brand-name{font-family:var(--display);font-weight:800;font-size:1.45rem;letter-spacing:.05em;line-height:1;color:var(--blanco)}
.brand-name em{font-style:normal;background:var(--metal-cobre);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 6s linear infinite}
.brand-tag{font-size:.58rem;letter-spacing:.3em;color:var(--plata);text-transform:uppercase}

/* Menú WordPress (wp_nav_menu) */
.menu{display:flex;list-style:none;gap:.2rem;align-items:center}
.menu>li{position:relative}
.menu>li>a{display:flex;align-items:center;gap:.35rem;padding:.9rem .85rem;font-size:.9rem;font-weight:500;border-radius:4px;transition:color .2s,background .2s}
.menu>li>a:hover{color:var(--cobre-brillo);background:rgba(200,66,26,.08)}
.menu>li.menu-item-has-children>a::after{content:"▾";font-size:.65rem;opacity:.6}
.menu .sub-menu{position:absolute;top:100%;left:0;min-width:230px;background:var(--carbon2);border:1px solid var(--linea);border-top:2px solid var(--cobre);border-radius:0 0 8px 8px;padding:.6rem;opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s;box-shadow:0 24px 50px rgba(0,0,0,.55);list-style:none;z-index:50}
.menu li:hover>.sub-menu,.menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.menu .sub-menu a{display:block;padding:.6rem .8rem;font-size:.87rem;border-radius:4px;color:var(--plata-clara)}
.menu .sub-menu a:hover{background:rgba(200,66,26,.12);color:#fff;padding-left:1.05rem}
/* Mega menú: agregar clase CSS "mega" al ítem padre (ej. Productos) en Apariencia > Menús */
.menu>li.mega{position:static}
.menu>li.mega>.sub-menu{left:50%;transform:translate(-50%,10px);width:min(760px,92vw);display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.4rem;border-radius:0 0 10px 10px}
.menu>li.mega:hover>.sub-menu,.menu>li.mega:focus-within>.sub-menu{transform:translate(-50%,0)}
.menu>li.mega>.sub-menu>li>a{font-family:var(--display);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cobre-brillo);padding:.2rem 0 .5rem;background:none}
.menu>li.mega .sub-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;border:none;box-shadow:none;padding:0;background:none;min-width:0}
.menu>li.mega .sub-menu .sub-menu a{font-size:.83rem;padding:.32rem 0}
.menu>li.mega .sub-menu .sub-menu a:hover{padding-left:.4rem;background:none}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;font-size:.9rem;padding:.8rem 1.7rem;border-radius:4px;border:none;transition:transform .2s,box-shadow .25s,background .25s,background-position .25s}
.btn-cobre{background:var(--metal-cobre);background-size:200% 100%;color:#fff}
.btn-cobre:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 10px 28px rgba(224,90,30,.45);color:#fff}
.btn-ghost{background:transparent;color:var(--btn-ghost-txt,#F5F3EF);border:1px solid var(--btn-ghost-borde,#54524F)}
.btn-ghost:hover{border-color:var(--fuego);color:var(--cobre-brillo);transform:translateY(-2px)}
.btn-plata{background:var(--metal-plata);background-size:200% 100%;color:var(--btn-plata-txt,#16150F)}
.btn-plata:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 10px 28px rgba(214,212,208,.25)}
.hamb{display:none;background:none;border:1px solid var(--plata-osc);color:var(--blanco);padding:.55rem .85rem;border-radius:4px;font-size:1.15rem}
#mobileNav{display:none}

/* ===================== HERO ===================== */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;padding:0}
#fx,.hero-media{position:absolute;inset:0;z-index:0;width:100%;height:100%}
.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 90% 70% at 50% 100%,rgba(11,11,11,.55),transparent 55%),linear-gradient(180deg,rgba(11,11,11,.25),rgba(11,11,11,.65) 90%)}
.hero-inner{position:relative;z-index:2;max-width:1360px;margin:0 auto;padding:5rem 1.5rem 6rem;width:100%}
.eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-size:.76rem;letter-spacing:.32em;text-transform:uppercase;color:var(--plata-clara);margin-bottom:1.6rem}
.eyebrow::before{content:"";width:38px;height:1px;background:var(--metal-cobre)}
.hero h1{font-family:var(--display);font-weight:800;font-size:clamp(3.2rem,9vw,7.6rem);line-height:.92;letter-spacing:.01em;text-transform:uppercase;max-width:12ch}
.hero h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom}
.hero h1 .w i{display:inline-block;font-style:normal;transform:translateY(110%);animation:up .7s cubic-bezier(.2,.7,.2,1) forwards}
.hero h1 .agua i{background:var(--metal-plata);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:up .7s cubic-bezier(.2,.7,.2,1) forwards,sheen 7s linear infinite}
.hero h1 .fusion i{background:var(--metal-cobre);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:up .7s cubic-bezier(.2,.7,.2,1) forwards,sheen 5s linear infinite}
.hero-sub{margin-top:1.8rem;max-width:36rem;color:#DDD9D2;font-size:1.12rem;opacity:0;animation:fadeUp .8s .9s forwards}
.hero-ctas{margin-top:2.6rem;display:flex;gap:1rem;flex-wrap:wrap;opacity:0;animation:fadeUp .8s 1.1s forwards}
.hero-datos{margin-top:3.8rem;display:flex;flex-wrap:wrap;opacity:0;animation:fadeUp .8s 1.3s forwards}
.dato{padding:0 2.4rem;border-left:1px solid rgba(214,212,208,.2)}
.dato:first-child{padding-left:0;border-left:none}
.dato .n{font-family:var(--display);font-weight:800;font-size:2.7rem;line-height:1}
.dato .n small{font-size:1.3rem;color:var(--cobre-brillo)}
.dato .l{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--plata)}
.scroll-cue{position:absolute;bottom:1.6rem;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--plata);font-size:.62rem;letter-spacing:.3em;text-transform:uppercase}
.scroll-cue span{width:1px;height:44px;background:linear-gradient(180deg,var(--fuego),transparent);animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ===================== CINTAS ===================== */
.cintas{border-top:1px solid var(--alt-linea,#2B2926);border-bottom:1px solid var(--alt-linea,#2B2926);background:var(--cinta-bg,#151412)}
.cinta{overflow:hidden;padding:.8rem 0}
.cinta+.cinta{border-top:1px solid var(--alt-linea,#2B2926)}
.cinta-track{display:flex;width:max-content;font-family:var(--display);font-weight:700;font-size:1.02rem;letter-spacing:.14em;text-transform:uppercase}
.cinta-track span{display:flex;align-items:center;gap:2.6rem;padding-right:2.6rem;white-space:nowrap}
.c1 .cinta-track{color:var(--cinta-1,#F07A3E)}
.c2 .cinta-track{color:var(--cinta-2,#D6D4D0)}
.cinta i{font-style:normal;opacity:.55;font-size:.85em}
@media (prefers-reduced-motion:no-preference){
  .c1 .cinta-track{animation:mq var(--cinta-vel,30s) linear infinite}
  .c2 .cinta-track{animation:mq2 calc(var(--cinta-vel,30s) * 1.13) linear infinite}
  @keyframes mq{to{transform:translateX(-50%)}}
  @keyframes mq2{from{transform:translateX(-50%)}to{transform:translateX(0)}}
}

/* ===================== SECCIONES ===================== */
.seccion{padding:6rem 1.5rem;position:relative}
.wrap{max-width:1360px;margin:0 auto}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:3.2rem;flex-wrap:wrap}
.sec-head h2,.seccion h2{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,5vw,4rem);text-transform:uppercase;line-height:.98;color:var(--alt-txt,var(--blanco))}
h2 em{font-style:normal;background:var(--metal-cobre);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 6s linear infinite}
.sec-head p{max-width:32rem;color:var(--alt-soft,var(--plata-clara));font-size:.98rem}

.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:1.3rem;perspective:1200px}
.cat{position:relative;background:linear-gradient(160deg,var(--card-bg,#1E1C1A),var(--card-bg2,#171614));color:var(--card-txt,#F5F3EF);border:1px solid var(--card-borde,#2B2926);border-radius:10px;padding:2.2rem 1.7rem 1.8rem;overflow:hidden;transition:border-color .3s,box-shadow .3s;transform-style:preserve-3d;will-change:transform}
.cat::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--metal-cobre);transform:scaleX(0);transform-origin:left;transition:transform .35s}
.cat::after{content:"";position:absolute;top:0;left:-80%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.09),transparent);transform:skewX(-18deg);transition:left .55s}
.cat:hover{border-color:var(--cobre);box-shadow:0 22px 50px rgba(200,66,26,.22)}
.cat:hover::before{transform:scaleX(1)}
.cat:hover::after{left:130%}
.cat .ic{width:58px;height:58px;border-radius:12px;background:rgba(200,66,26,.14);border:1px solid rgba(224,90,30,.35);display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin-bottom:1.2rem;transition:transform .3s}
.cat:hover .ic{transform:scale(1.12) rotate(-6deg)}
.cat h3{font-family:var(--display);font-weight:700;font-size:1.5rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}
.cat h3{color:var(--card-txt,#F5F3EF)}
.cat p{font-size:.88rem;color:var(--card-soft,#D6D4D0)}
.cat .cat-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.2rem;font-size:.85rem;font-weight:600;color:var(--cobre-brillo)}
.cat .cat-link::after{content:"→";transition:transform .25s}
.cat:hover .cat-link::after{transform:translateX(5px)}

.split{background:linear-gradient(104deg,#171615 0 57.8%,#221310 58.2% 100%);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
.split .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:4rem;align-items:center}
.split p{color:#DDD9D2;margin-bottom:1rem;font-size:.98rem}
.check{list-style:none;margin-top:1.5rem}
.check li{padding-left:1.8rem;position:relative;margin-bottom:.85rem;font-size:.96rem}
.check li::before{content:"";position:absolute;left:0;top:.4em;width:10px;height:10px;background:var(--metal-cobre);transform:rotate(45deg)}
.media-box{aspect-ratio:4/3;border-radius:12px;overflow:hidden;position:relative;background:#141311}
.media-box video,.media-box img{width:100%;height:100%;object-fit:cover}

.prod-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.3rem}
.prod{background:var(--card-invert-bg,#F5F3EF);color:var(--card-invert-txt,#0B0B0B);border-radius:10px;overflow:hidden;transition:transform .3s,box-shadow .3s;position:relative}
.prod:hover{transform:translateY(-8px);box-shadow:0 22px 55px rgba(0,0,0,.55)}
.prod-img{aspect-ratio:1/1;background:linear-gradient(145deg,#ECE9E3,#D8D5CF);display:flex;align-items:center;justify-content:center;color:var(--plata-osc);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;border-bottom:3px solid var(--cobre);position:relative;overflow:hidden}
.prod-img img{width:100%;height:100%;object-fit:cover}
.prod-img::after{content:"";position:absolute;top:0;left:-80%;width:55%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);transition:left .5s;z-index:2}
.prod:hover .prod-img::after{left:135%}
.prod .tag-new{position:absolute;top:.8rem;left:.8rem;background:var(--metal-cobre);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .6rem;border-radius:3px;z-index:3}
.prod-body{padding:1.15rem 1.25rem 1.35rem}
.prod .cat-tag{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cobre);font-weight:700}
.prod h3{font-size:1rem;font-weight:600;margin:.4rem 0 .6rem;line-height:1.35}
.prod .precio{font-family:var(--display);font-weight:800;font-size:1.55rem}
.prod .precio small{font-size:.82rem;color:var(--plata-osc);font-weight:500;font-family:var(--body)}
.prod .btn{width:100%;margin-top:1rem;font-size:.85rem;padding:.7rem}

.tienda{background:var(--metal-cobre);background-size:250% 100%;animation:sheen 12s linear infinite;color:#fff;text-align:center;overflow:hidden}
.tienda h2{color:#fff}
.tienda h2 em{background:none;-webkit-background-clip:unset;background-clip:unset;color:var(--negro);animation:none}
.tienda p{max-width:40rem;margin:1.2rem auto 2.2rem;color:#FFE9DE;font-size:1.02rem}
.tienda .eyebrow{color:#FFE9DE}

.slider{position:relative;max-width:820px;margin:0 auto}
.slide{display:none;background:var(--card-bg,#1E1C1A);color:var(--card-txt,#F5F3EF);border:1px solid var(--card-borde,#2B2926);border-radius:12px;padding:2.6rem;text-align:center}
.slide.on{display:block;animation:fadeUp .5s}
.slide .stars{color:var(--cobre-brillo);letter-spacing:.22em;font-size:1.1rem;margin-bottom:1.1rem}
.slide p{font-size:1.05rem;color:var(--card-soft,#E4E1DB);font-style:italic;max-width:38rem;margin:0 auto}
.slide .who{margin-top:1.3rem;font-size:.85rem;color:var(--plata);font-style:normal;letter-spacing:.06em}
.dots{display:flex;justify-content:center;gap:.6rem;margin-top:1.6rem}
.dots button{width:34px;height:4px;border-radius:2px;border:none;background:var(--linea);transition:.3s}
.dots button.on{background:var(--metal-cobre);width:52px}

.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.3rem}
.post-card{background:var(--card-bg,#1E1C1A);color:var(--card-txt,#F5F3EF);border:1px solid var(--card-borde,#2B2926);border-radius:10px;overflow:hidden;transition:transform .3s,border-color .3s}
.post-card:hover{transform:translateY(-6px);border-color:var(--cobre)}
.post-card .ph{aspect-ratio:16/9;background:linear-gradient(135deg,#232120,#191817);display:flex;align-items:center;justify-content:center;color:var(--plata-osc);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;overflow:hidden}
.post-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.post-card:hover .ph img{transform:scale(1.06)}
.post-card .pb{padding:1.3rem}
.post-card .meta{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cobre-brillo);font-weight:600}
.post-card h3{font-size:1.08rem;margin:.5rem 0 .6rem;line-height:1.35}
.post-card p{font-size:.86rem;color:var(--card-soft,#D6D4D0)}

/* ===================== CONTENIDO INTERIOR (páginas/entradas) ===================== */
.contenido{max-width:820px;margin:0 auto;padding:4.5rem 1.5rem}
.contenido h1{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,5vw,3.6rem);text-transform:uppercase;line-height:1;margin-bottom:1.8rem}
.contenido h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:2.2rem 0 .9rem}
.contenido h3{margin:1.8rem 0 .7rem}
.contenido p,.contenido ul,.contenido ol{margin-bottom:1.1rem;color:#DDD9D2}
.contenido ul,.contenido ol{padding-left:1.4rem}
.contenido a{color:var(--cobre-brillo);text-decoration:underline;text-underline-offset:3px}
.contenido img{border-radius:10px;margin:1.4rem 0}
.contenido blockquote{border-left:3px solid var(--cobre);padding:.6rem 0 .6rem 1.2rem;margin:1.4rem 0;color:var(--plata-clara);font-style:italic}
.entry-meta{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--plata);margin-bottom:1.4rem}
.archivo-grid{max-width:1360px;margin:0 auto;padding:4.5rem 1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.3rem}
.paginacion{display:flex;gap:.6rem;justify-content:center;padding:0 1.5rem 4rem}
.paginacion .page-numbers{padding:.5rem .95rem;border:1px solid var(--linea);border-radius:4px;font-size:.9rem}
.paginacion .page-numbers.current,.paginacion .page-numbers:hover{background:var(--cobre);border-color:var(--cobre);color:#fff}

/* ===================== WOOCOMMERCE (base) ===================== */
.woocommerce-page .wrap-shop{max-width:1360px;margin:0 auto;padding:4rem 1.5rem}
.woocommerce ul.products li.product{background:var(--blanco);color:var(--negro);border-radius:10px;overflow:hidden;transition:transform .3s,box-shadow .3s}
.woocommerce ul.products li.product:hover{transform:translateY(-8px);box-shadow:0 22px 55px rgba(0,0,0,.55)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--body);font-size:1rem;font-weight:600;padding:.6rem 1.1rem 0}
.woocommerce ul.products li.product .price{font-family:var(--display);font-weight:800;font-size:1.4rem;color:var(--negro);padding:0 1.1rem}
.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button.alt{background:var(--metal-cobre);background-size:200% 100%;color:#fff;border-radius:4px;font-weight:600;transition:.25s}
.woocommerce a.button:hover,.woocommerce button.button.alt:hover{background-position:100% 0;transform:translateY(-2px)}
.woocommerce span.onsale{background:var(--cobre);border-radius:3px;font-weight:700}
.woocommerce .star-rating span::before{color:var(--fuego)}

/* ===================== FOOTER ===================== */
.site-footer{background:#070707;border-top:2px solid var(--cobre);padding:4rem 1.5rem 2rem;position:relative}
.site-footer::before{content:"";position:absolute;top:-2px;left:0;width:100%;height:2px;background:var(--metal-cobre);background-size:200% 100%;animation:sheen 6s linear infinite}
.foot-grid{max-width:1360px;margin:0 auto;display:grid;gap:2.4rem}
.foot-grid.cols-1{grid-template-columns:1fr}
.foot-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.foot-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.foot-grid.cols-4{grid-template-columns:2fr 1fr 1fr 1.4fr}
.foot-grid.cols-5{grid-template-columns:2fr 1fr 1fr 1fr 1.4fr}
.foot-grid.cols-6{grid-template-columns:repeat(6,1fr)}
.foot-col{min-width:0}
.foot-widget{margin-bottom:1.4rem}
.foot-widget:last-child{margin-bottom:0}
.foot-widget img{max-width:170px;height:auto}
.site-footer .foot-title,.site-footer h4{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:1.05rem;margin-bottom:1.1rem;color:var(--blanco)}
.site-footer p{font-size:.88rem;color:var(--plata-clara);margin-bottom:.6rem}
.site-footer ul{list-style:none;font-size:.88rem;padding:0;margin:0}
.site-footer li{margin-bottom:.6rem;color:var(--plata-clara)}
.site-footer a{transition:.2s}
.site-footer a:hover{color:var(--cobre-brillo);padding-left:.3rem}
.foot-legal{max-width:1360px;margin:2.8rem auto 0;padding-top:1.5rem;border-top:1px solid #1E1C1A;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.78rem;color:var(--plata)}
.foot-legal a{text-decoration:underline;text-underline-offset:3px}

/* ===================== COOKIES (Ley 21.719) ===================== */
.cookies{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:1100;max-width:580px;margin:0 auto;background:rgba(21,20,18,.97);backdrop-filter:blur(8px);border:1px solid var(--cobre);border-radius:12px;padding:1.5rem;box-shadow:0 24px 70px rgba(0,0,0,.7)}
.cookies[hidden]{display:none}
.cookies h5{font-family:var(--display);font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem}
.cookies p{font-size:.84rem;color:#DDD9D2;margin-bottom:1.1rem}
.cookies p a{color:var(--cobre-brillo);text-decoration:underline}
.cookies-btns{display:flex;gap:.7rem;flex-wrap:wrap}
.cookies .btn{font-size:.84rem;padding:.62rem 1.25rem}
.cookies details{margin-bottom:1rem;font-size:.84rem;color:var(--plata-clara)}
.cookies details label{display:flex;gap:.5rem;align-items:center;margin-top:.6rem}

/* ===================== REVEAL / STAGGER ===================== */
.rv{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}
.rv.vis{opacity:1;transform:none}
.st>*{opacity:0;transform:translateY(30px);transition:opacity .6s,transform .6s}
.st.vis>*{opacity:1;transform:none}
.st.vis>*:nth-child(1){transition-delay:.05s}.st.vis>*:nth-child(2){transition-delay:.15s}
.st.vis>*:nth-child(3){transition-delay:.25s}.st.vis>*:nth-child(4){transition-delay:.35s}
.st.vis>*:nth-child(5){transition-delay:.45s}.st.vis>*:nth-child(6){transition-delay:.55s}
@media (prefers-reduced-motion:reduce){
  .rv,.st>*{opacity:1;transform:none;transition:none}
  .hero h1 .w i{transform:none;animation:none}
  .hero-sub,.hero-ctas,.hero-datos{opacity:1;animation:none}
  .topbar,.tienda,.site-footer::before,.brand-name em,h2 em{animation:none}
  #loader{display:none}
}

/* ===================== RESPONSIVE ===================== */
@media (max-width:1080px){
  .menu,.nav-cta{display:none}
  .hamb{display:block}
  #mobileNav{display:block;position:fixed;inset:0;z-index:1200;background:rgba(7,7,7,.98);padding:5rem 2rem 2rem;transform:translateX(100%);transition:transform .35s;overflow-y:auto}
  #mobileNav.open{transform:none}
  #mobileNav ul{list-style:none}
  #mobileNav a{display:block;font-family:var(--display);font-size:1.6rem;text-transform:uppercase;letter-spacing:.06em;padding:.7rem 0;border-bottom:1px solid var(--linea)}
  #mobileNav .sub-menu a{font-size:1.05rem;font-family:var(--body);text-transform:none;padding-left:1.2rem;border-bottom:none;color:var(--plata-clara)}
  #mobileNav a:hover{color:var(--cobre-brillo)}
  #mobileNav .close{position:absolute;top:1.4rem;right:1.4rem;font-size:1.6rem;background:none;border:1px solid var(--plata-osc);color:#fff;border-radius:4px;padding:.4rem .8rem}
  .split .wrap{grid-template-columns:1fr}
  .foot-grid[class*=cols-]{grid-template-columns:1fr 1fr}
  .tienda-grid{grid-template-columns:1fr!important}
}
@media (max-width:640px){
  .seccion{padding:4.2rem 1.2rem}
  .dato{padding:0 1.3rem}
  .dato .n{font-size:2.1rem}
  .foot-grid[class*=cols-]{grid-template-columns:1fr}
  .topbar{font-size:.72rem;gap:1rem}
  .cookies-btns .btn{flex:1}
}

/* =====================================================
   v1.1 — REDES SOCIALES
===================================================== */
.topbar-icons,.foot-icons,.movil-icons{display:inline-flex;gap:.55rem;align-items:center}
.topbar-icon,.foot-icon,.movil-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.35);color:#fff;transition:.25s}
.topbar-icon:hover{background:#fff;color:var(--cobre);transform:translateY(-2px)}
.foot-icon{border-color:var(--linea);color:var(--plata-clara);width:34px;height:34px}
.foot-icon:hover{border-color:var(--fuego);color:var(--cobre-brillo);transform:translateY(-2px)}
.movil-redes{margin-top:2rem;display:flex;gap:.8rem}
.movil-icon{width:44px;height:44px;border-color:var(--plata-osc);color:var(--blanco)}
.movil-icon:hover{border-color:var(--fuego);color:var(--cobre-brillo)}
.foot-legal-links{display:inline-flex;align-items:center;gap:1.4rem;flex-wrap:wrap}
.legal-menu{display:flex;gap:1.1rem;list-style:none;margin:0;padding:0}
.legal-menu a{text-decoration:underline;text-underline-offset:3px}

/* =====================================================
   v1.1 — FRANJA TIENDA CON IMAGEN OPCIONAL
===================================================== */
.tienda-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:center;text-align:left}
.tienda.con-img p{margin-left:0}
.tienda-img img{max-height:340px;width:auto;margin:0 auto;filter:drop-shadow(0 24px 50px rgba(0,0,0,.35))}

/* =====================================================
   v1.1 — PÁGINA ANCHA (constructor con bloques)
===================================================== */
.pagina-ancha{padding-bottom:4rem}
.pagina-ancha>*{max-width:1080px;margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}
.pagina-ancha>.alignwide{max-width:1360px}
.pagina-ancha>.alignfull{max-width:none;padding-left:0;padding-right:0}
.pagina-ancha>h1,.pagina-ancha>h2,.pagina-ancha>h3{margin-top:2.6rem}

/* =====================================================
   v1.1 — BLOQUES GUTENBERG (estética del tema)
===================================================== */
/* Tipografía de títulos en contenido */
.contenido h1,.contenido h2,.contenido h3,.pagina-ancha h1,.pagina-ancha h2,.pagina-ancha h3,
.wp-block-heading{font-family:var(--display);text-transform:uppercase;line-height:1.05}
.wp-block-heading em,.contenido h1 em,.contenido h2 em{font-style:normal;background:var(--metal-cobre);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 6s linear infinite}

/* Botones de bloque — estilos de marca */
.wp-block-button__link{border-radius:4px;font-weight:600;font-family:var(--body);transition:transform .2s,box-shadow .25s,background-position .25s}
.wp-block-button.is-style-cobre .wp-block-button__link{background:var(--metal-cobre);background-size:200% 100%;color:#fff;border:none}
.wp-block-button.is-style-cobre .wp-block-button__link:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 10px 28px rgba(224,90,30,.45)}
.wp-block-button.is-style-plata .wp-block-button__link{background:var(--metal-plata);background-size:200% 100%;color:var(--negro);border:none}
.wp-block-button.is-style-plata .wp-block-button__link:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 10px 28px rgba(214,212,208,.25)}
.wp-block-button.is-style-ghost .wp-block-button__link{background:transparent;color:var(--blanco);border:1px solid var(--plata-osc)}
.wp-block-button.is-style-ghost .wp-block-button__link:hover{border-color:var(--fuego);color:var(--cobre-brillo);transform:translateY(-2px)}

/* Grupo estilo tarjeta oscura (como las categorías del inicio) */
.is-style-tarjeta{background:linear-gradient(160deg,var(--card-bg,#1E1C1A),var(--card-bg2,#171614));color:var(--card-txt,#F5F3EF);border:1px solid var(--card-borde,#2B2926);border-radius:10px;padding:1.9rem 1.6rem;transition:border-color .3s,box-shadow .3s,transform .3s}
.is-style-tarjeta:hover{border-color:var(--cobre);box-shadow:0 22px 50px rgba(200,66,26,.22);transform:translateY(-5px)}

/* Separador costura cobre */
.wp-block-separator.is-style-costura{border:none;height:2px;background:var(--metal-cobre);background-size:200% 100%;animation:sheen 6s linear infinite;max-width:180px;opacity:1}

/* Columnas, galerías y medios */
.wp-block-columns{gap:1.6rem}
.wp-block-gallery{gap:.9rem}
.wp-block-gallery .wp-block-image img{border-radius:10px;transition:transform .35s,box-shadow .35s}
.wp-block-gallery .wp-block-image:hover img{transform:scale(1.03);box-shadow:0 16px 40px rgba(0,0,0,.5)}
.ae-logos .wp-block-image{background:var(--blanco);border-radius:10px;padding:1.1rem;display:flex;align-items:center;justify-content:center}
.ae-logos img{filter:grayscale(1);opacity:.75;transition:.3s;object-fit:contain;max-height:64px}
.ae-logos .wp-block-image:hover img{filter:none;opacity:1}
.wp-block-image img{border-radius:10px}
.wp-block-embed{margin:1.6rem 0}
.wp-block-embed iframe{border-radius:12px}
.ae-mapa iframe{border-radius:12px;border:1px solid var(--linea);filter:grayscale(.25) contrast(1.05)}
.wp-block-cover{border-radius:12px;overflow:hidden}

/* Tablas */
.wp-block-table table{width:100%;border-collapse:collapse;font-size:.92rem}
.wp-block-table th{background:var(--carbon2);color:var(--cobre-brillo);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;text-align:left}
.wp-block-table th,.wp-block-table td{border:1px solid var(--linea);padding:.7rem .9rem}
.wp-block-table tr:nth-child(even) td{background:rgba(255,255,255,.02)}

/* Citas, listas, código */
.wp-block-quote{border-left:3px solid var(--cobre);padding:.6rem 0 .6rem 1.2rem;color:var(--plata-clara);font-style:italic}
.wp-block-quote cite{color:var(--plata);font-style:normal;font-size:.85rem}
.wp-block-code{background:var(--carbon2);border:1px solid var(--linea);border-radius:8px;padding:1rem;color:var(--plata-brillo);font-size:.88rem;overflow:auto}
.wp-block-list li{margin-bottom:.45rem}

/* Archivo de shortcode / html crudo hereda tipografía */
.wp-block-shortcode,.wp-block-html{font-family:var(--body)}

/* Formularios genéricos (plugins de formularios heredan estilo) */
.pagina-ancha input[type=text],.pagina-ancha input[type=email],.pagina-ancha input[type=tel],.pagina-ancha textarea,.pagina-ancha select,
.contenido input[type=text],.contenido input[type=email],.contenido input[type=tel],.contenido textarea,.contenido select{width:100%;padding:.8rem 1rem;border-radius:6px;border:1px solid var(--linea);background:var(--carbon2);color:var(--blanco);font-family:var(--body);font-size:.95rem;margin-bottom:1rem}
.pagina-ancha input:focus,.pagina-ancha textarea:focus,.contenido input:focus,.contenido textarea:focus{outline:2px solid var(--fuego);outline-offset:1px;border-color:var(--fuego)}
.pagina-ancha input[type=submit],.pagina-ancha button[type=submit],.contenido input[type=submit],.contenido button[type=submit]{background:var(--metal-cobre);background-size:200% 100%;color:#fff;border:none;border-radius:4px;font-weight:600;padding:.8rem 1.7rem;cursor:pointer;transition:.25s}
.pagina-ancha input[type=submit]:hover,.contenido input[type=submit]:hover{background-position:100% 0;transform:translateY(-2px)}

/* Paleta de colores registrada (clases que genera WordPress) */
.has-cobre-color{color:#C8421A}.has-cobre-background-color{background-color:#C8421A}
.has-fuego-color{color:#E05A1E}.has-fuego-background-color{background-color:#E05A1E}
.has-cobre-brillo-color{color:#F07A3E}.has-cobre-brillo-background-color{background-color:#F07A3E}
.has-plata-color{color:#9E9E9E}.has-plata-background-color{background-color:#9E9E9E}
.has-plata-clara-color{color:#D6D4D0}.has-plata-clara-background-color{background-color:#D6D4D0}
.has-negro-color{color:#0B0B0B}.has-negro-background-color{background-color:#0B0B0B}
.has-carbon-color{color:#151412}.has-carbon-background-color{background-color:#151412}
.has-blanco-color{color:#F5F3EF}.has-blanco-background-color{background-color:#F5F3EF}
.has-metal-cobre-gradient-background{background:linear-gradient(115deg,#7E2A0E 0%,#C8421A 30%,#F07A3E 50%,#C8421A 70%,#7E2A0E 100%)}
.has-metal-plata-gradient-background{background:linear-gradient(115deg,#6E6C69 0%,#B9B7B3 30%,#EDEBE7 50%,#B9B7B3 70%,#6E6C69 100%)}
.has-carbon-profundo-gradient-background{background:linear-gradient(160deg,#1E1C1A 0%,#0B0B0B 100%)}

/* =====================================================================
   v2.0 — SISTEMA DE SECCIONES DE LA PORTADA
===================================================================== */
.ae-seccion{position:relative;background-size:cover;background-position:center}
.ae-seccion>.wrap{max-width:1360px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}
.ae-seccion.ancho-angosto>.wrap{max-width:820px}
.ae-seccion.ancho-completo>.wrap{max-width:none;padding-left:0;padding-right:0}
.esp-cero{padding:0}
.esp-compacto{padding:2.6rem 0}
.esp-normal{padding:6rem 0}
.esp-amplio{padding:9rem 0}
.bg-negro{background-color:var(--negro)}
.bg-carbon{background-color:var(--alt-bg,#151412);color:var(--alt-txt,#F5F3EF)}
.bg-carbon2{background-color:var(--card-bg,#1E1C1A);color:var(--card-txt,#F5F3EF)}
.bg-fusion{background:linear-gradient(104deg,#171615 0 57.8%,#221310 58.2% 100%);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
.bg-cobre{background:var(--metal-cobre);background-size:250% 100%;animation:sheen 12s linear infinite;color:#fff;text-align:center}
.bg-cobre h2{color:#fff}
.bg-cobre h2 em{background:none;-webkit-background-clip:unset;background-clip:unset;color:var(--negro);animation:none}
.bg-cobre p{color:#FFE9DE}
.bg-cobre .eyebrow{color:#FFE9DE}
.bg-cobre .sec-head{justify-content:center;text-align:center}
.bg-ninguno{background:transparent}
.ae-aviso{background:rgba(200,66,26,.12);border:1px dashed var(--cobre);border-radius:8px;padding:1rem 1.2rem;font-size:.9rem;color:var(--plata-clara)}
.sec-cta{margin-top:2.4rem;text-align:center}
.ae-libre>*:first-child{margin-top:0}

/* =====================================================================
   v2.0 — MARCAS / PROVEEDORES (carrusel infinito derecha → izquierda)
===================================================================== */
.marcas-viewport{overflow:hidden;position:relative;padding:.6rem 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marcas-track{display:flex;width:max-content;gap:0}
.marcas-set{display:flex;align-items:center;gap:1rem;padding-right:1rem}
.marca{flex:0 0 auto;width:190px;height:96px;display:flex;align-items:center;justify-content:center;background:var(--blanco);border-radius:10px;padding:.9rem;transition:transform .3s,box-shadow .3s}
.marca img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.72;transition:.3s}
.marca:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(0,0,0,.5)}
.marca:hover img{filter:none;opacity:1}
.marca-txt{font-family:var(--display);font-weight:700;font-size:1.15rem;color:var(--negro);text-transform:uppercase;letter-spacing:.06em;text-align:center}
@media (prefers-reduced-motion:no-preference){
  .marcas-track{animation:marcas 38s linear infinite}
  .marcas-viewport:hover .marcas-track{animation-play-state:paused}
  @keyframes marcas{from{transform:translateX(0)}to{transform:translateX(-50%)}}
}

/* =====================================================================
   v2.0 — NOSOTROS FLEXIBLE
===================================================================== */
.nos-grid{display:grid;gap:4rem;align-items:center}
.nos-grid.prop-50{grid-template-columns:1fr 1fr}
.nos-grid.prop-60{grid-template-columns:1.5fr 1fr}
.nos-grid.prop-40{grid-template-columns:1fr 1.5fr}
.nos-grid.media-izquierda .nos-texto{order:2}
.nos-grid.media-izquierda .media-box{order:1}
.nos-grid.media-arriba,.nos-grid.media-abajo{grid-template-columns:1fr;gap:2.6rem}
.nos-grid.media-arriba .media-box{order:1}
.nos-grid.media-arriba .nos-texto{order:2}
.nos-btns{margin-top:2rem;display:flex;gap:.8rem;flex-wrap:wrap}

/* =====================================================================
   v2.0 — CANALES DIGITALES / INSTAGRAM
===================================================================== */
.ig-grid{display:grid;grid-template-columns:.9fr 1.4fr;gap:2rem;align-items:stretch}
.ig-grid.lado-derecha .ig-banner{order:2}
.ig-grid.lado-derecha .ig-feed{order:1}
.ig-banner{position:relative;border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#C8421A,#7E2A0E);display:flex;align-items:center;justify-content:center;padding:2.4rem 1.8rem;text-align:center;min-height:340px}
.ig-banner-img{position:absolute;inset:0;opacity:.28}
.ig-banner-img img{width:100%;height:100%;object-fit:cover}
.ig-banner-txt{position:relative;z-index:2}
.ig-ico{display:inline-flex;width:62px;height:62px;align-items:center;justify-content:center;border-radius:16px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);color:#fff;margin-bottom:1rem}
.ig-invita{font-size:.86rem;letter-spacing:.22em;text-transform:uppercase;color:#FFE0D2;margin-bottom:.2rem}
.ig-user{font-family:var(--display);font-weight:800;font-size:2rem;color:#fff;line-height:1;margin-bottom:.9rem;word-break:break-word}
.ig-desc{font-size:.92rem;color:#FFE9DE;margin-bottom:1.4rem;max-width:26ch;margin-left:auto;margin-right:auto}
.ig-banner .btn-cobre{background:#fff;color:var(--cobre);font-weight:700}
.ig-banner .btn-cobre:hover{background:var(--negro);color:#fff;box-shadow:0 10px 26px rgba(0,0,0,.4)}
.ig-redes{margin-top:1.2rem;display:flex;justify-content:center}
.ig-redes .foot-icon{border-color:rgba(255,255,255,.5);color:#fff}
.ig-redes .foot-icon:hover{background:#fff;color:var(--cobre)}
.ig-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.ig-item{position:relative;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:var(--carbon2);display:block}
.ig-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ig-item:hover img{transform:scale(1.07)}
.ig-item .ig-ver{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(200,66,26,.72);color:#fff;font-size:1.6rem;opacity:0;transition:opacity .3s}
.ig-item:hover .ig-ver{opacity:1}
.ig-shortcode{grid-column:1/-1}

/* =====================================================================
   v2.0 — PREGUNTAS FRECUENTES
===================================================================== */
.faq-lista{max-width:900px;margin:0 auto}
.faq-item{border:1px solid var(--card-borde,#2B2926);border-radius:10px;margin-bottom:.8rem;background:var(--card-bg,#1E1C1A);color:var(--card-txt,#F5F3EF);overflow:hidden;transition:border-color .25s}
.faq-item[open]{border-color:var(--cobre)}
.faq-item summary{cursor:pointer;padding:1.1rem 1.4rem;font-family:var(--display);font-size:1.2rem;text-transform:uppercase;letter-spacing:.03em;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";color:var(--cobre-brillo);font-size:1.5rem;transition:transform .25s;flex-shrink:0}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:var(--cobre-brillo)}
.faq-resp{padding:0 1.4rem 1.3rem;color:var(--card-soft,#D6D4D0);font-size:.96rem}
.faq-resp p{margin-bottom:.7rem}

/* =====================================================================
   v2.0 — CONTACTO Y MAPA
===================================================================== */
.ct-grid{display:grid;gap:3rem;align-items:start}
.ct-grid.layout-form-izq,.ct-grid.layout-form-der{grid-template-columns:1.05fr .95fr}
.ct-grid.layout-apilado,.ct-grid.layout-form-solo,.ct-grid.layout-mapa-solo{grid-template-columns:1fr;max-width:900px;margin:0 auto}
.ct-datos h3{font-family:var(--display);font-size:1.7rem;text-transform:uppercase;margin-bottom:1.1rem}
.ct-lista{list-style:none;margin-bottom:1.4rem}
.ct-lista li{display:flex;gap:.7rem;margin-bottom:.7rem;color:var(--plata-clara);font-size:.96rem}
.ct-lista span{flex-shrink:0}
.ct-lista a:hover{color:var(--cobre-brillo)}
.ct-btns{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.6rem}
.ct-mapa{border-radius:12px;overflow:hidden;border:1px solid var(--linea)}
.ct-mapa iframe{display:block;filter:grayscale(.25) contrast(1.05)}
.ae-form{background:var(--card-bg,#1E1C1A);color:var(--card-txt,#F5F3EF);border:1px solid var(--card-borde,#2B2926);border-radius:14px;padding:2rem}
.ae-campo{margin-bottom:1.1rem}
.ae-campo label{display:block;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--plata);margin-bottom:.4rem}
.ae-campo .req{color:var(--cobre-brillo)}
.ae-form input[type=text],.ae-form input[type=email],.ae-form input[type=tel],.ae-form textarea,.ae-form select{width:100%;padding:.85rem 1rem;border-radius:6px;border:1px solid var(--linea);background:var(--negro);color:var(--blanco);font-family:var(--body);font-size:.96rem}
.ae-form input:focus,.ae-form textarea:focus,.ae-form select:focus{outline:2px solid var(--fuego);outline-offset:1px;border-color:var(--fuego)}
.ae-form textarea{resize:vertical;min-height:130px}
.ae-consent{font-size:.85rem;color:var(--plata-clara);margin:1.2rem 0}
.ae-consent label{display:flex;gap:.6rem;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:.85rem;color:var(--plata-clara)}
.ae-consent input{margin-top:.25rem;flex-shrink:0}
.ae-consent a{color:var(--cobre-brillo);text-decoration:underline}
.ae-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ct-alert{padding:1rem 1.2rem;border-radius:8px;margin-bottom:1.3rem;font-size:.94rem}
.ct-alert.ok{background:rgba(8,116,67,.18);border:1px solid #0E8A52;color:#B8F0D2}
.ct-alert.err{background:rgba(200,66,26,.16);border:1px solid var(--cobre);color:#FFD9C8}

/* =====================================================================
   v2.0 — FOOTER PROPUESTO
===================================================================== */
.foot-marca .foot-logo{max-width:190px;height:auto;margin-bottom:1.1rem}
.foot-desc{font-size:.92rem;color:var(--plata-clara);margin-bottom:1.1rem;max-width:34ch}
.foot-datos{list-style:none;font-size:.88rem;margin-bottom:1.2rem}
.foot-datos li{margin-bottom:.5rem;color:var(--plata-clara)}
.foot-lista{list-style:none}
.foot-lista li{margin-bottom:.55rem}
.foot-lista a{font-size:.9rem;color:var(--plata-clara)}
.foot-cta p{font-size:.9rem;color:var(--plata-clara);margin-bottom:1rem}
.foot-nota{font-size:.8rem;color:var(--plata);margin-top:1rem}
.foot-social{display:flex;gap:.5rem}
.ae-catalogo-aviso{background:rgba(200,66,26,.14);border:1px solid var(--cobre);border-radius:8px;padding:1rem 1.2rem;margin-bottom:1.6rem;font-size:.94rem;color:var(--plata-clara)}
.ae-cotizar{display:inline-flex;margin-top:.7rem}

/* =====================================================================
   v2.0 — MIGAS DE PAN
===================================================================== */
.migas{border-bottom:1px solid var(--linea);background:var(--carbon);font-size:.82rem}
.migas .wrap{max-width:1360px;margin:0 auto;padding:.8rem 1.5rem;color:var(--plata)}
.migas a{color:var(--plata-clara)}
.migas a:hover{color:var(--cobre-brillo)}
.migas span[aria-hidden]{margin:0 .35rem;color:var(--plata-osc)}

/* =====================================================================
   v2.0 — RESPONSIVE DE LAS SECCIONES NUEVAS
===================================================================== */
@media (max-width:1080px){
  .nos-grid[class*=prop-]{grid-template-columns:1fr!important}
  .nos-grid.media-izquierda .nos-texto,.nos-grid.media-izquierda .media-box{order:initial}
  .ig-grid{grid-template-columns:1fr}
  .ig-grid.lado-derecha .ig-banner,.ig-grid.lado-derecha .ig-feed{order:initial}
  .ig-banner{min-height:260px}
  .ct-grid[class*=layout-]{grid-template-columns:1fr}
  .esp-normal{padding:4.4rem 0}
  .esp-amplio{padding:6rem 0}
}
@media (max-width:640px){
  .esp-normal{padding:3.4rem 0}
  .esp-compacto{padding:2rem 0}
  .esp-amplio{padding:4.4rem 0}
  .ae-seccion>.wrap{padding-left:1.2rem;padding-right:1.2rem}
  .ig-feed{grid-template-columns:repeat(2,1fr)}
  .marca{width:150px;height:80px}
  .ae-form{padding:1.4rem}
  .faq-item summary{font-size:1.05rem;padding:.9rem 1.1rem}
  .nav-acciones{gap:.5rem}
}


/* =====================================================================
   v2.1 — TIPOGRAFÍA Y MEDIDAS DESDE EL PANEL DE DISEÑO GLOBAL
   Todo lo de abajo lee las variables que genera el Personalizador,
   por lo que un cambio ahí se refleja en TODAS las páginas del sitio.
===================================================================== */
body{font-size:var(--fs-texto,16px);line-height:var(--lh-texto,1.6)}
h1,h2,h3,h4,.wp-block-heading,.sec-head h2,.seccion h2,.hero h1,.contenido h1,.contenido h2,.contenido h3{
  font-family:var(--display);text-transform:var(--titulos-caso,uppercase);
  line-height:var(--lh-titulos,1);letter-spacing:var(--ls-titulos,.01em)}
.hero h1,.contenido h1,.pagina-ancha h1,.ae-hero-int h1{font-size:var(--fs-h1)}
h2,.sec-head h2,.seccion h2,.contenido h2{font-size:var(--fs-h2)}
h3,.contenido h3,.cat h3,.faq-item summary{font-size:var(--fs-h3)}
h4,.foot-title,.site-footer h4{font-size:var(--fs-h4)}
.eyebrow,.dato .l,.cat-tag,.post-card .meta,.brand-tag{font-size:var(--fs-pequeno)}
.wrap,.ae-seccion>.wrap,.foot-grid,.nav,.foot-legal,.archivo-grid,.migas .wrap{max-width:var(--ancho-max,1360px)}
.ae-seccion.ancho-angosto>.wrap,.contenido{max-width:var(--ancho-lectura,820px)}
.cat,.prod,.post-card,.faq-item,.ae-form,.media-box,.ct-mapa,.marca,.ig-item,.is-style-tarjeta,.slide,.ig-banner{border-radius:var(--radio,10px)}
.btn,.wp-block-button__link{border-radius:calc(var(--radio,10px) * .4)}

/* Secciones construidas con bloques dentro de Páginas */
.ae-seccion.wp-block-group{background-size:cover;background-position:center}
.ae-seccion.wp-block-group>*{max-width:var(--ancho-max,1360px);margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}
.ae-seccion.wp-block-group>.alignfull{max-width:none;padding-left:0;padding-right:0}
.ae-hero-int{text-align:left}
.ae-hero-int .eyebrow{margin-bottom:1rem;display:inline-flex}
.ae-hero-int h1{max-width:16ch}
.ae-hero-int .bajada{max-width:52ch;color:var(--plata-clara);font-size:1.08rem;margin-top:1.2rem}
.ae-sc{width:100%}
.ae-sc .seccion,.ae-sc .ae-seccion{padding:0;background:none}
.ae-cifras-sc{margin-top:0;opacity:1;animation:none}
.bg-cobre .wp-block-button__link{background:var(--negro);color:#fff}

/* Instagram embebido oficial (blockquote + embed.js) */
.ig-embeds{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;grid-column:1/-1}
.ig-embeds .instagram-media{border-radius:var(--radio,10px)!important;min-width:0!important;margin:0!important;max-width:100%!important}
@media (max-width:640px){.ig-embeds{grid-template-columns:1fr}}

/* =====================================================================
   v2.2 — ASPECTOS DE LAS TARJETAS DE CATEGORÍA
===================================================================== */
.cat{padding:0;overflow:hidden;background-size:cover;background-position:center}
.cat-cuerpo{padding:2.2rem 1.7rem 1.8rem;position:relative;z-index:2}
.cat.estilo-banner .cat-cuerpo{padding-top:1.5rem}
.cat.estilo-fondo{min-height:300px;display:flex;align-items:flex-end}
.cat.estilo-fondo .cat-cuerpo{width:100%}
.cat.estilo-fondo h3,.cat.estilo-fondo p{text-shadow:0 2px 12px rgba(0,0,0,.7)}
.cat.estilo-sin_icono .cat-cuerpo{padding-top:2rem}
.cat-banner{aspect-ratio:16/9;overflow:hidden;border-bottom:2px solid var(--cobre)}
.cat-banner img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.cat:hover .cat-banner img{transform:scale(1.06)}
.ic.ic-img{padding:0;overflow:hidden;background:none;border-color:var(--linea)}
.ic.ic-img img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.cat.estilo-fondo::before,.cat.estilo-banner::before{z-index:3}

/* La barra legal no queda tapada por el botón flotante de WhatsApp */
.foot-legal{padding-right:5.5rem}
@media (max-width:640px){.foot-legal{padding-right:0;padding-bottom:4.5rem}}

/* =====================================================================
   v3.0 — ÍCONOS VECTORIALES
===================================================================== */
.ae-svg{display:inline-block;vertical-align:middle;flex-shrink:0}
.ico-inline{margin-right:.4rem;opacity:.9}
.ic.ic-svg{color:var(--cobre-brillo)}
.ic.ic-svg .ae-svg{width:30px;height:30px}
.topbar-item{display:inline-flex;align-items:center}
.topbar-item .ae-svg{margin-right:.35rem}
.foot-datos li{display:flex;align-items:flex-start;gap:.1rem}
.foot-datos .ae-svg{margin-top:.15rem;color:var(--cobre-brillo)}
.ct-lista li .ae-svg{color:var(--cobre-brillo)}

/* =====================================================================
   v3.0 — CIFRAS Y SELLOS
===================================================================== */
.hero-datos.modo-sellos,.hero-datos.modo-mixto{gap:0}
.dato-ico{color:var(--cobre-brillo);margin-bottom:.55rem;line-height:1}
.dato-sello{font-family:var(--display);font-weight:800;font-size:1.35rem;line-height:1.05;text-transform:var(--titulos-caso,uppercase);letter-spacing:.02em;max-width:14ch}
.modo-sellos .dato{padding:0 2rem}
.modo-sellos .dato .l{margin-top:.35rem;opacity:.85}
.modo-mixto .dato .n{margin-top:.1rem}

/* =====================================================================
   v3.0 — CARRUSEL DE LA SECCIÓN NOSOTROS
===================================================================== */
.nos-carrusel{position:relative;width:100%;height:100%;min-height:280px}
.nos-slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;pointer-events:none}
.nos-slide.on{opacity:1;pointer-events:auto}
.nos-slide img{width:100%;height:100%;object-fit:cover}
.nos-dots{position:absolute;left:0;right:0;bottom:.9rem;display:flex;justify-content:center;gap:.5rem;z-index:3}
.nos-dots button{width:26px;height:4px;border:none;border-radius:2px;background:rgba(255,255,255,.45);cursor:pointer;transition:.3s;padding:0}
.nos-dots button.on{background:var(--metal-cobre);width:40px}
.nos-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.4);color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;opacity:0;transition:.25s}
.nos-carrusel:hover .nos-nav{opacity:1}
.nos-nav:hover{background:var(--cobre);border-color:var(--cobre)}
.nos-nav.prev{left:.7rem}
.nos-nav.next{right:.7rem}
.nos-grid.sin-media{grid-template-columns:1fr!important}

/* =====================================================================
   v3.0 — MARCAS EN COLOR ORIGINAL
===================================================================== */
.marcas-viewport.color-original .marca img{filter:none;opacity:1}
.marcas-viewport.sin-fondo .marca{background:transparent;padding:0}
.marcas-viewport .marcas-track{animation-duration:var(--marcas-vel,38s)}

/* =====================================================================
   v4.2 — SECCIONES ALTERNAS: contraste garantizado
   Cualquier sección con fondo alterno hereda su color de texto correcto,
   y las tarjetas que van dentro cambian a la superficie clara.
===================================================================== */
.bg-carbon,.bg-carbon2{color:var(--alt-txt,#F5F3EF)}
.bg-carbon h1,.bg-carbon h2,.bg-carbon h3,.bg-carbon h4,.bg-carbon .sec-head h2{color:var(--alt-txt,#F5F3EF)}
.bg-carbon p,.bg-carbon li,.bg-carbon .sec-head p{color:var(--alt-soft,#D6D4D0)}
.bg-carbon .eyebrow{color:var(--alt-soft,#D6D4D0)}
.bg-carbon .cat,.bg-carbon .faq-item,.bg-carbon .slide,.bg-carbon .post-card,
.bg-carbon .ae-form,.bg-carbon .is-style-tarjeta{
  background:var(--alt-card-bg,#1E1C1A);color:var(--alt-card-txt,#F5F3EF);
  border-color:var(--alt-linea,#2B2926)}
.bg-carbon .cat h3,.bg-carbon .faq-item summary,.bg-carbon .post-card h3,
.bg-carbon .slide .who,.bg-carbon .ct-datos h3{color:var(--alt-card-txt,#F5F3EF)}
.bg-carbon .cat p,.bg-carbon .faq-resp,.bg-carbon .post-card p,
.bg-carbon .slide p,.bg-carbon .ct-lista li{color:var(--alt-soft,#D6D4D0)}
.bg-carbon .ae-form input,.bg-carbon .ae-form textarea,.bg-carbon .ae-form select{
  background:var(--alt-bg,#0B0B0B);color:var(--alt-txt,#F5F3EF);border-color:var(--alt-linea,#2B2926)}
.bg-carbon .ae-campo label{color:var(--alt-soft,#9E9E9E)}
.bg-carbon .cintas{border-color:var(--alt-linea,#2B2926)}
.bg-carbon .ae-consent,.bg-carbon .ae-consent label{color:var(--alt-soft,#D6D4D0)}

/* Tarjetas claras: el degradado se mantiene dentro del mismo rango de luz */
.esquema-claro .cat,.esquema-claro .is-style-tarjeta{
  background:linear-gradient(160deg,var(--card-bg,#fff),var(--card-bg2,#f5f5f5))}

/* =====================================================================
   v4.2 — ESQUEMA CLARO: ajustes de componentes globales
===================================================================== */
.esquema-claro .site-header{border-bottom-color:var(--linea)}
.esquema-claro .brand-name{color:var(--blanco)}
.esquema-claro .brand-tag{color:var(--plata)}
.esquema-claro .menu>li>a{color:var(--blanco)}
.esquema-claro .menu>li>a:hover{color:var(--cobre)}
.esquema-claro .menu .sub-menu{background:#fff;box-shadow:0 22px 46px rgba(0,0,0,.14)}
.esquema-claro .menu .sub-menu a{color:var(--plata-clara)}
.esquema-claro .menu .sub-menu a:hover{color:var(--cobre);background:rgba(var(--cobre-rgb),.08)}
.esquema-claro #mobileNav{background:rgba(255,255,255,.98)}
.esquema-claro #mobileNav a{color:var(--blanco);border-bottom-color:var(--linea)}
.esquema-claro .hamb{border-color:var(--linea);color:var(--blanco)}

/* El hero se mantiene oscuro: el cobre metálico necesita fondo oscuro */
.esquema-claro .hero{background:#101010}
.esquema-claro .hero h1,.esquema-claro .hero-sub,.esquema-claro .dato .n,
.esquema-claro .dato-sello,.esquema-claro .scroll-cue{color:#F5F3EF}
.esquema-claro .hero .eyebrow,.esquema-claro .dato .l{color:#D6D4D0}
.esquema-claro .dato{border-left-color:rgba(255,255,255,.18)}
.esquema-claro .dato-ico{color:var(--cobre-brillo)}

/* Pie oscuro para cerrar la página con peso visual */
.esquema-claro .site-footer{background:#131313;color:#F5F3EF}
.esquema-claro .site-footer p,.esquema-claro .site-footer li,
.esquema-claro .foot-desc,.esquema-claro .foot-nota{color:#CFCCC7}
.esquema-claro .site-footer .foot-title{color:#F5F3EF}
.esquema-claro .site-footer a{color:#CFCCC7}
.esquema-claro .site-footer a:hover{color:var(--cobre-brillo)}
.esquema-claro .foot-legal{border-top-color:rgba(255,255,255,.12);color:#A8A5A1}
.esquema-claro .foot-icon{border-color:rgba(255,255,255,.25);color:#CFCCC7}

/* Superficies claras */
.esquema-claro .cat:hover,.esquema-claro .post-card:hover{box-shadow:0 18px 38px rgba(var(--cobre-rgb),.18)}
.esquema-claro .ae-form input,.esquema-claro .ae-form textarea,.esquema-claro .ae-form select{
  background:var(--alt-bg);color:var(--blanco);border-color:var(--linea)}
.esquema-claro .ae-campo label{color:var(--plata)}
.esquema-claro .cookies{background:rgba(255,255,255,.99);color:var(--blanco);box-shadow:0 24px 60px rgba(0,0,0,.18)}
.esquema-claro .cookies p,.esquema-claro .cookies details{color:var(--plata-clara)}
.esquema-claro #toTop{background:rgba(255,255,255,.96);color:var(--blanco);border-color:var(--linea)}
.esquema-claro .migas{background:var(--alt-bg);border-bottom-color:var(--linea)}
.esquema-claro .migas a{color:var(--plata-clara)}
.esquema-claro .prod{border:1px solid var(--linea)}
.esquema-claro .btn-ghost:hover{color:var(--cobre);border-color:var(--cobre);background:rgba(var(--cobre-rgb),.06)}
.esquema-claro .btn-plata{background:var(--btn-plata-bg,#fff);color:var(--btn-plata-txt,#16150F);
  border:1px solid var(--btn-ghost-borde);background-image:none}
.esquema-claro .btn-plata:hover{background:var(--cobre);color:#fff;border-color:var(--cobre)}
/* -----------------------------------------------------------------
   CONTEXTOS DE SUPERFICIE.
   Una sección que fuerza fondo oscuro (o claro) redefine las VARIABLES
   dentro de sí misma. Así cualquier elemento que viva ahí —títulos,
   párrafos, tarjetas, botones, formularios— toma automáticamente el
   color correcto, sin necesidad de una regla por componente.
----------------------------------------------------------------- */
.ctx-oscuro,.bg-negro,.hero,.doc-hero,.site-footer,.bg-fusion{
  --card-bg:#1E1E20;--card-bg2:#161618;--card-txt:#F5F3EF;--card-soft:#CFCCC7;
  --card-borde:#2E2E31;
  --alt-bg:#141415;--alt-txt:#F5F3EF;--alt-soft:#CFCCC7;--alt-linea:#2E2E31;
  --alt-card-bg:#1E1E20;--alt-card-txt:#F5F3EF;
  --btn-ghost-txt:#F5F3EF;--btn-ghost-borde:rgba(255,255,255,.45);
  --btn-ghost-txt-alt:#F5F3EF;--btn-ghost-borde-alt:rgba(255,255,255,.45);
  --btn-plata-bg:#E9E7E3;--btn-plata-txt:#16150F;
  --blanco:#F5F3EF;--plata-clara:#CFCCC7;--plata:#A8A5A1;--linea:#2E2E31;
  --seccion-clara-txt:#F5F3EF;--seccion-clara-soft:#CFCCC7}
.bg-negro{background-color:#141415}
.bg-negro,.ctx-oscuro{color:#F5F3EF}

/* Contexto claro forzado: para secciones que deben ser claras
   aunque la paleta sea oscura. */
.ctx-claro{
  --card-bg:#FFFFFF;--card-bg2:#F6F4F1;--card-txt:#1A1917;--card-soft:#55524E;
  --card-borde:#DFDAD3;
  --alt-bg:#F2EFEA;--alt-txt:#171615;--alt-soft:#4A4744;--alt-linea:#D9D4CC;
  --alt-card-bg:#FFFFFF;--alt-card-txt:#171615;
  --btn-ghost-txt:#171615;--btn-ghost-borde:#8C8880;
  --btn-ghost-txt-alt:#171615;--btn-ghost-borde-alt:#8C8880;
  --btn-plata-bg:#FFFFFF;--btn-plata-txt:#16150F;
  --blanco:#1A1917;--plata-clara:#4A4744;--plata:#6E6B67;--linea:#DFDAD3;
  background-color:#F7F5F2;color:#1A1917}

/* La franja cobre lleva siempre texto blanco */
.bg-cobre,.doc-cta{
  --card-txt:#fff;--card-soft:#FFE9DE;--alt-txt:#fff;--alt-soft:#FFE9DE;
  --blanco:#fff;--plata-clara:#FFE9DE;
  --btn-ghost-txt:#fff;--btn-ghost-borde:rgba(255,255,255,.7);
  --btn-plata-bg:#fff;--btn-plata-txt:#16150F}

.esquema-claro .bg-fusion{background:linear-gradient(104deg,var(--alt-bg) 0 57.8%,rgba(var(--cobre-rgb),.1) 58.2% 100%);color:var(--blanco)}
.esquema-claro .bg-fusion p,.esquema-claro .bg-fusion li{color:var(--plata-clara)}
.esquema-claro .contenido a,.esquema-claro .ct-lista a{color:var(--cobre)}
.esquema-claro .check li::before{background:var(--metal-cobre)}
.esquema-claro .ae-oculta-aviso{color:var(--plata-clara)}
.esquema-claro .marca{border-color:var(--linea)}

/* En claro el brillo metálico se sustituye por color sólido: sobre fondo
   claro el degradado se ve como un naranjo plano y pierde el efecto */
.esquema-claro h2 em,.esquema-claro .wp-block-heading em,
.esquema-claro .brand-name em{background:none;-webkit-background-clip:initial;
  background-clip:initial;color:var(--cobre);animation:none}

@media (max-width:640px){
  .modo-sellos .dato{padding:0 1rem}
  .dato-sello{font-size:1.1rem}
  .nos-carrusel{min-height:220px}
}

/* =====================================================================
   v3.1 — LEY 21.719: BLOQUEO PREVIO DE CONTENIDO DE TERCEROS
===================================================================== */
.ae-tercero{position:relative;display:flex;align-items:center;justify-content:center;
  background:var(--carbon2);border:1px dashed var(--linea);border-radius:var(--radio,10px);padding:1.8rem 1.4rem;text-align:center}
.ae-tercero.cargado{display:block;padding:0;border:none;background:none;min-height:0}
.ae-tercero-aviso{max-width:44ch}
.ae-tercero-tit{font-family:var(--display);font-size:1.15rem;text-transform:var(--titulos-caso,uppercase);
  letter-spacing:.05em;margin-bottom:.6rem;color:var(--blanco)}
.ae-tercero-txt{font-size:.9rem;color:var(--plata-clara);margin-bottom:1.1rem}
.ae-tercero-nota{margin-top:.9rem;font-size:.8rem}
.ae-tercero-nota a{color:var(--plata);text-decoration:underline;text-underline-offset:3px}
.ae-tercero-nota a:hover{color:var(--cobre-brillo)}
.ae-tercero-cont iframe{display:block;width:100%;border:0;border-radius:var(--radio,10px)}

/* Enlace permanente de preferencias de privacidad */
.ae-link-cookies{text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ae-link-cookies:hover{color:var(--cobre-brillo)}

/* Aceptar y rechazar con el mismo peso visual (consentimiento libre) */
.cookies .btn-rechazar{background:var(--metal-plata);background-size:200% 100%;color:var(--negro)}
.cookies .btn-rechazar:hover{background-position:100% 0;color:var(--negro)}
.esquema-claro .cookies .btn-rechazar{color:#0B0B0B}

/* v3.3 — Aviso de contenido heredado (solo administradores) */
.ae-aviso-legado{background:rgba(200,66,26,.12);border:1px solid var(--cobre);border-radius:var(--radio,10px);
  padding:1rem 1.2rem;margin-bottom:1.4rem;font-size:.9rem;color:var(--plata-clara)}
.ae-aviso-legado strong{color:var(--cobre-brillo)}
.ae-aviso-legado a{color:var(--cobre-brillo);text-decoration:underline}

/* =====================================================================
   v4.1 — MARCAS CONFIGURABLES (tamaño, color y contraste)
===================================================================== */
.marca{flex:0 0 auto;width:var(--marca-ancho,220px);height:var(--marca-alto,120px);
  display:flex;align-items:center;justify-content:center;
  background:var(--marca-bg,#fff);border:var(--marca-borde,1px solid rgba(0,0,0,.09));
  border-radius:var(--marca-radio,10px);padding:.8rem;
  transition:transform .3s,box-shadow .3s,border-color .3s}
.marca img{max-width:var(--marca-logo,78%);max-height:var(--marca-logo,78%);
  width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.72;transition:.3s}
.marcas-viewport.color-original .marca img{filter:none;opacity:1}
.marcas-viewport.sin-fondo .marca{background:transparent;border:none;padding:0}
.marcas-viewport.sin-fondo .marca img{max-width:100%;max-height:100%}
.marcas-viewport.con-sombra .marca:hover{transform:translateY(-6px);box-shadow:0 18px 38px rgba(0,0,0,.28)}
.marcas-viewport.con-sombra .marca:hover img{filter:none;opacity:1}
.marca-txt{font-family:var(--display);font-weight:700;font-size:1.1rem;color:#1A1917;
  text-transform:uppercase;letter-spacing:.05em;text-align:center;line-height:1.15}
.marcas-viewport.sin-fondo .marca-txt{color:var(--blanco)}
.marcas-set{gap:1.1rem;padding-right:1.1rem}
@media (prefers-reduced-motion:no-preference){
  .marcas-viewport.con-pausa:hover .marcas-track{animation-play-state:paused}
}

/* =====================================================================
   v4.1 — CANALES DIGITALES: tamaños controlados
===================================================================== */
.ig-grid{display:grid;grid-template-columns:var(--ig-prop,35%) 1fr;gap:1.6rem;align-items:start}
.ig-grid.lado-derecha{grid-template-columns:1fr var(--ig-prop,35%)}
.ig-banner{min-height:var(--ig-banner-min,340px);align-self:stretch}
.ig-grid.banner-ajustado .ig-banner{align-self:start;min-height:0;padding:2rem 1.6rem}
.ig-feed{display:grid;grid-template-columns:repeat(var(--ig-cols,2),minmax(0,1fr));gap:.9rem;
  max-height:var(--ig-alto,640px);overflow:hidden;position:relative}
.ig-grid.con-scroll .ig-feed{overflow-y:auto;scrollbar-width:thin;
  scrollbar-color:var(--cobre) transparent;padding-right:.4rem}
.ig-grid.con-scroll .ig-feed::-webkit-scrollbar{width:6px}
.ig-grid.con-scroll .ig-feed::-webkit-scrollbar-thumb{background:var(--cobre);border-radius:3px}
.ig-grid.con-scroll .ig-feed::-webkit-scrollbar-track{background:rgba(128,128,128,.15)}
.ig-embeds{display:grid;grid-template-columns:repeat(var(--ig-cols,2),minmax(0,1fr));gap:.9rem;grid-column:1/-1}
.ig-embeds .instagram-media{max-width:var(--ig-post-max,420px)!important;min-width:0!important;
  width:100%!important;margin:0 auto!important;border-radius:var(--radio,10px)!important}
.ig-feed .ig-item{max-width:var(--ig-post-max,420px);width:100%;margin:0 auto}
/* Degradado inferior que insinúa que hay más contenido */
.ig-grid.con-scroll .ig-feed::after{content:"";position:sticky;bottom:0;left:0;right:0;height:38px;
  grid-column:1/-1;background:linear-gradient(transparent,var(--negro));pointer-events:none;margin-top:-38px}
.esquema-claro .ig-grid.con-scroll .ig-feed::after{background:linear-gradient(transparent,var(--carbon))}

/* =====================================================================
   v4.1 — HERO: partículas sobre imagen o video + velo regulable
===================================================================== */
.hero::after{background:
  radial-gradient(ellipse 90% 70% at 50% 100%,rgba(11,11,11,calc(var(--hero-velo,.55) * .9)),transparent 58%),
  linear-gradient(180deg,rgba(11,11,11,calc(var(--hero-velo,.55) * .45)),rgba(11,11,11,var(--hero-velo,.55)) 92%)}
#fx.fx-sobre{z-index:1;mix-blend-mode:screen;opacity:var(--hero-fx-op,.45);pointer-events:none}

/* =====================================================================
   v4.1 — AVISO DE SECCIÓN OCULTA (solo administradores)
===================================================================== */
.ae-oculta-aviso{max-width:var(--ancho-max,1360px);margin:.5rem auto;padding:.7rem 1.1rem;
  background:rgba(200,66,26,.1);border-left:3px solid var(--cobre);border-radius:4px;
  font-size:.84rem;color:var(--plata-clara)}
.ae-oculta-aviso strong{color:var(--cobre-brillo)}
.ae-oculta-aviso a{color:var(--cobre-brillo);text-decoration:underline;margin-left:.3rem}

/* =====================================================================
   v4.1 — RESPONSIVE COMPLETO
   Antes solo existían dos cortes (1080 y 640). Se agregan los rangos
   intermedios, que son justamente donde se rompía la composición:
   tablet horizontal, tablet vertical, móvil grande y móvil pequeño.
===================================================================== */

/* ---- Tablet horizontal / notebook chico ---- */
@media (max-width:1280px){
  .ae-seccion>.wrap,.wrap{padding-left:1.8rem;padding-right:1.8rem}
  .esp-normal{padding:5rem 0}
  .esp-amplio{padding:7rem 0}
  .cat-grid{grid-template-columns:repeat(auto-fit,minmax(228px,1fr))}
  .foot-grid.cols-4,.foot-grid.cols-5{grid-template-columns:1.6fr 1fr 1fr}
  .foot-grid.cols-5 .foot-col:nth-child(5){grid-column:span 3}
}

/* ---- Tablet vertical ---- */
@media (max-width:900px){
  .hero{min-height:auto;padding-top:2rem}
  .hero-inner{padding:4rem 1.5rem 4.5rem}
  .hero-datos{margin-top:2.6rem;gap:.4rem}
  .dato{padding:0 1.4rem}
  .dato:first-child{padding-left:0}
  .hero-ctas .btn{flex:1 1 auto;min-width:190px;justify-content:center}
  .sec-head{flex-direction:column;align-items:flex-start;gap:.9rem;margin-bottom:2.4rem}
  .sec-head p{max-width:100%}
  .prod-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
  .blog-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
  .ig-grid,.ig-grid.lado-derecha{grid-template-columns:1fr}
  .ig-banner{min-height:0;padding:2rem 1.5rem}
  .ig-feed{max-height:none;overflow:visible}
  .ig-grid.con-scroll .ig-feed{overflow:visible}
  .ig-grid.con-scroll .ig-feed::after{display:none}
  .ct-grid[class*=layout-]{grid-template-columns:1fr;gap:2.2rem}
  .foot-grid[class*=cols-]{grid-template-columns:1fr 1fr}
  .foot-grid.cols-5 .foot-col:nth-child(5){grid-column:span 2}
}

/* ---- Móvil grande ---- */
@media (max-width:768px){
  .topbar{font-size:.72rem;gap:.9rem;padding:.5rem 1rem;line-height:1.5}
  .topbar-item{white-space:nowrap}
  .nav{padding:.55rem 1.1rem}
  .brand-tag{font-size:.5rem;letter-spacing:.2em}
  .hero h1{max-width:100%}
  .hero-sub{font-size:1rem}
  .hero-datos{width:100%;gap:0}
  .dato{flex:1 1 45%;padding:.9rem 1rem;border-left:none;
    border-top:1px solid rgba(214,212,208,.14)}
  .dato:first-child,.dato:nth-child(2){border-top:none}
  .dato .n{font-size:1.9rem}
  .dato-sello{font-size:1rem;max-width:100%}
  .cat-grid{grid-template-columns:1fr 1fr;gap:.9rem}
  .cat-cuerpo{padding:1.5rem 1.1rem 1.3rem}
  .cat .ic{width:46px;height:46px;font-size:1.35rem;margin-bottom:.9rem}
  .cat h3{font-size:1.15rem}
  .cat p{font-size:.82rem}
  .marca{width:170px;height:96px}
  .ig-feed,.ig-embeds{grid-template-columns:1fr;max-width:440px;margin:0 auto}
  .slide{padding:1.9rem 1.4rem}
  .slide p{font-size:.98rem}
  .faq-item summary{font-size:1rem;padding:.95rem 1.1rem}
  .nos-btns .btn{flex:1 1 auto;justify-content:center}
  .foot-legal{flex-direction:column;align-items:flex-start;gap:.7rem;padding-right:0;padding-bottom:4.5rem}
  .foot-legal-links{flex-wrap:wrap;gap:.9rem}
}

/* ---- Móvil estándar ---- */
@media (max-width:600px){
  .esp-normal{padding:3.2rem 0}
  .esp-amplio{padding:4.2rem 0}
  .esp-compacto{padding:1.9rem 0}
  .ae-seccion>.wrap,.wrap{padding-left:1.1rem;padding-right:1.1rem}
  .topbar{flex-direction:column;gap:.28rem;align-items:center;text-align:center;padding:.55rem 1rem}
  .topbar-icons{margin-top:.2rem}
  .hero-inner{padding:3rem 1.1rem 3.6rem}
  .hero-ctas{gap:.7rem}
  .hero-ctas .btn{width:100%}
  .cat-grid{grid-template-columns:1fr}
  .cat.estilo-fondo{min-height:240px}
  .prod-grid{grid-template-columns:1fr 1fr;gap:.8rem}
  .prod-body{padding:.9rem}
  .prod h3{font-size:.9rem}
  .prod .precio{font-size:1.25rem}
  .blog-grid{grid-template-columns:1fr}
  .foot-grid[class*=cols-]{grid-template-columns:1fr;gap:2rem}
  .foot-grid.cols-5 .foot-col:nth-child(5){grid-column:auto}
  .ae-form{padding:1.2rem}
  .cookies{left:.6rem;right:.6rem;bottom:.6rem;padding:1.2rem}
  .cookies-btns{flex-direction:column}
  .cookies-btns .btn{width:100%}
  #wsp{width:50px;height:50px;right:.9rem;bottom:.9rem}
  #toTop{width:42px;height:42px;right:.9rem;bottom:4.8rem}
  .ct-mapa iframe{height:280px!important}
  .nos-carrusel{min-height:210px}
  .marca{width:150px;height:86px}
}

/* ---- Móvil pequeño (iPhone SE y similares) ---- */
@media (max-width:400px){
  .brand img{height:calc(var(--logo-alto,54px) * .82)}
  .brand-name{font-size:1.15rem}
  .hero h1{font-size:clamp(2.1rem,11vw,2.9rem)}
  .dato{flex:1 1 100%;padding:.75rem 0}
  .dato:nth-child(2){border-top:1px solid rgba(214,212,208,.14)}
  .prod-grid{grid-template-columns:1fr}
  .sec-head h2,.seccion h2{font-size:1.75rem}
  .ae-seccion>.wrap,.wrap{padding-left:.9rem;padding-right:.9rem}
  .faq-item summary{font-size:.94rem;gap:.6rem}
  .ct-btns .btn{width:100%;justify-content:center}
}

/* ---- Pantallas anchas: que el contenido no quede perdido ---- */
@media (min-width:1600px){
  .esp-normal{padding:7rem 0}
  .hero-inner{padding-top:6rem;padding-bottom:7rem}
}

/* ---- Áreas táctiles mínimas (accesibilidad en móvil) ---- */
@media (hover:none) and (pointer:coarse){
  .menu>li>a,.legal-menu a,.foot-lista a,.cat-link,.ae-link-cookies{min-height:44px;display:inline-flex;align-items:center}
  .nos-nav{opacity:1;width:42px;height:42px}
  .nos-dots button{height:8px;width:32px}
  .dots button{height:8px}
  .cat:hover,.prod:hover,.post-card:hover{transform:none}
  .marca:hover{transform:none}
}

/* ---- Impresión ---- */
@media print{
  .topbar,.site-header,#mobileNav,#wsp,#toTop,.cookies,.cintas,.marcas-viewport,
  .ig-grid,.scroll-cue,#loader,#progress{display:none!important}
  body{background:#fff;color:#000}
  .ae-seccion{padding:1rem 0;background:none!important}
  h1,h2,h3{color:#000!important}
  a{color:#000;text-decoration:underline}
}

/* v4.2 — Enlaces legales del pie */
.legal-menu{flex-wrap:wrap}
.ae-falta-legal{font-size:.8rem;color:var(--cobre-brillo)}
.ae-falta-legal a{text-decoration:underline}
/* La barra legal se ordena en dos líneas cuando hay muchos enlaces */
@media (max-width:1100px){
  .foot-legal{flex-direction:column;align-items:flex-start;gap:.8rem}
  .foot-legal-links{order:-1}
}

/* =====================================================================
   v4.3 — HERO Y BLOQUES A ANCHO COMPLETO
===================================================================== */
.ae-full,.ae-full>.wp-block-shortcode{max-width:none!important;padding:0!important;margin:0!important;width:100%}
.portada-pagina>.ae-full,.pagina-ancha>.ae-full{max-width:none;padding-left:0;padding-right:0}
.ae-full .hero{width:100%}
.ae-full .cintas{width:100%}

/* =====================================================================
   v4.3 — MENÚ: contraste y efecto al pasar el mouse
===================================================================== */
.menu>li>a{position:relative}
.menu>li>a::after{content:"";position:absolute;left:.85rem;right:.85rem;bottom:.42rem;height:2px;
  background:var(--metal-cobre);background-size:200% 100%;transform:scaleX(0);transform-origin:left;
  transition:transform .28s ease;border-radius:2px}
.menu>li>a:hover::after,.menu>li:focus-within>a::after,
.menu>li.current-menu-item>a::after,.menu>li.current-menu-parent>a::after{transform:scaleX(1)}
.menu>li.current-menu-item>a,.menu>li.current-menu-parent>a{color:var(--cobre-brillo)}

/* Submenú: fila completa marcada, con barra lateral y desplazamiento */
.menu .sub-menu a{position:relative;border-left:3px solid transparent;transition:.22s}
.menu .sub-menu a:hover,.menu .sub-menu a:focus-visible{
  background:rgba(var(--cobre-rgb),.16);color:#fff;border-left-color:var(--cobre);
  padding-left:1.15rem;letter-spacing:.01em}
.menu .sub-menu a::after{content:"→";position:absolute;right:.8rem;opacity:0;transform:translateX(-6px);
  transition:.22s;color:var(--cobre-brillo)}
.menu .sub-menu a:hover::after{opacity:1;transform:translateX(0)}
.menu .sub-menu li.current-menu-item>a{border-left-color:var(--cobre);color:var(--cobre-brillo)}
/* Mega menú: mismo tratamiento en los enlaces de columna */
.menu>li.mega .sub-menu .sub-menu a:hover{background:rgba(var(--cobre-rgb),.16);
  border-left-color:var(--cobre);padding-left:.7rem}
.esquema-claro .menu .sub-menu a:hover{background:rgba(var(--cobre-rgb),.1);color:var(--cobre)}
/* Menú móvil */
#mobileNav a{border-left:3px solid transparent;padding-left:.6rem;transition:.22s}
#mobileNav a:hover,#mobileNav a:active{border-left-color:var(--cobre);
  background:rgba(var(--cobre-rgb),.12);padding-left:1rem}

/* Marcas: espacio interior configurable */
.marca{padding:var(--marca-pad,13px)}

/* =====================================================================
   v4.3 — CANALES DIGITALES: aprovechamiento real del espacio
   Las publicaciones de Instagram tienen ancho propio. Se usa un grid con
   columnas automáticas para que se acomoden de a varias en escritorio y
   se reduzcan solas en pantallas menores.
===================================================================== */
.ig-feed,.ig-embeds{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));
  gap:1rem;align-items:start;justify-items:stretch}
.ig-embeds .instagram-media{max-width:100%!important;min-width:0!important;width:100%!important;margin:0!important}
.ig-feed .ig-item{max-width:100%;width:100%}
/* El alto máximo solo limita cuando hay muchas publicaciones */
.ig-grid.con-scroll .ig-feed{max-height:var(--ig-alto,640px);overflow-y:auto}
.ig-grid:not(.con-scroll) .ig-feed{max-height:none;overflow:visible}
/* El banner acompaña el alto del feed sin estirarse de más */
.ig-banner{align-self:stretch}
.ig-grid.banner-ajustado .ig-banner{align-self:start}
@media (min-width:1400px){
  .ig-feed,.ig-embeds{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
}
@media (max-width:900px){
  .ig-feed,.ig-embeds{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
}

/* =====================================================================
   v4.3 — PÁGINAS DE DOCUMENTOS LEGALES
===================================================================== */
.doc-hero{background:linear-gradient(150deg,var(--carbon2) 0%,var(--negro) 62%,rgba(var(--cobre-rgb),.22) 100%);
  position:relative;overflow:hidden;border-bottom:2px solid var(--cobre)}
.doc-hero::before{content:"";position:absolute;top:-40%;right:-8%;width:52%;height:180%;
  background:radial-gradient(ellipse at center,rgba(var(--cobre-rgb),.22),transparent 62%);
  animation:docGlow 9s ease-in-out infinite;pointer-events:none}
@keyframes docGlow{0%,100%{transform:scale(1) rotate(0);opacity:.75}50%{transform:scale(1.12) rotate(6deg);opacity:1}}
.doc-hero h1{max-width:18ch;position:relative;animation:fadeUp .8s .1s backwards}
.doc-hero .eyebrow{animation:fadeUp .8s backwards}
.doc-intro{max-width:58ch;font-size:1.08rem;color:var(--plata-clara);margin-top:1.2rem;
  position:relative;animation:fadeUp .8s .25s backwards}
.doc-fecha{font-size:.85rem;color:var(--plata);font-style:italic;margin-top:.8rem;
  position:relative;animation:fadeUp .8s .4s backwards}
.esquema-claro .doc-hero{background:linear-gradient(150deg,#1C1C1E 0%,#111 62%,rgba(var(--cobre-rgb),.28) 100%)}
.esquema-claro .doc-hero h1{color:#F5F3EF}
.esquema-claro .doc-intro{color:#D6D4D0}
.esquema-claro .doc-fecha{color:#A8A5A1}

.doc-cuerpo{background:var(--alt-bg);color:var(--alt-txt)}
.doc-cuerpo>*{max-width:var(--ancho-lectura,820px)!important}
.doc-indice{background:var(--alt-card-bg);border:1px solid var(--alt-linea);
  border-left:4px solid var(--cobre);border-radius:var(--radio,10px);
  padding:1.4rem 1.6rem;margin-bottom:3rem}
.doc-indice-tit{font-family:var(--display);text-transform:uppercase;letter-spacing:.14em;
  font-size:.86rem;color:var(--cobre-brillo);margin-bottom:.8rem}
.doc-indice ol{margin:0;padding-left:1.2rem;columns:2;column-gap:2rem}
.doc-indice li{margin-bottom:.4rem;font-size:.9rem;break-inside:avoid}
.doc-indice a{color:var(--alt-soft);text-decoration:none;transition:.2s}
.doc-indice a:hover{color:var(--cobre);padding-left:.25rem}
@media (max-width:700px){.doc-indice ol{columns:1}}

.doc-seccion{position:relative;padding:1.7rem 0 1.7rem 3.6rem;border-bottom:1px solid var(--alt-linea);
  scroll-margin-top:120px;transition:background .3s}
.doc-seccion:last-of-type{border-bottom:none}
.doc-seccion:hover{background:rgba(var(--cobre-rgb),.04)}
.doc-num{position:absolute;left:0;top:1.9rem;font-family:var(--display);font-weight:800;
  font-size:1.5rem;line-height:1;color:var(--cobre);opacity:.5;transition:.3s}
.doc-seccion:hover .doc-num{opacity:1;transform:scale(1.1)}
.doc-seccion h2{font-size:clamp(1.25rem,2.4vw,1.6rem);margin-bottom:.7rem;color:var(--alt-txt)}
.doc-seccion p{color:var(--alt-soft);line-height:1.75;font-size:1rem}
.doc-seccion:target{background:rgba(var(--cobre-rgb),.08);border-radius:var(--radio,10px)}
.doc-nota{margin-top:2.6rem;padding:1.1rem 1.3rem;background:rgba(var(--cobre-rgb),.1);
  border-left:3px solid var(--cobre);border-radius:6px;font-size:.9rem;color:var(--alt-soft)}
.doc-nota strong{color:var(--cobre)}
.doc-cta{background:var(--metal-cobre);background-size:250% 100%;animation:sheen 12s linear infinite;
  color:#fff;text-align:center}
.doc-cta h2{color:#fff}
.doc-cta p{color:#FFE9DE}

/* Migas de pan siempre legibles sobre su propio fondo */
.migas{background:var(--alt-bg);color:var(--alt-soft);border-bottom-color:var(--alt-linea)}
.migas a{color:var(--alt-soft)}
.migas a:hover{color:var(--cobre)}
.migas span[aria-hidden]{color:var(--alt-soft);opacity:.6}

/* Revelado progresivo del contenido de páginas interiores */
.pagina-ancha .wp-block-group>*,.contenido>*{scroll-margin-top:120px}


/* =====================================================================
   v4.3 — ESQUEMA CLARO EN PÁGINAS INTERIORES
   Gerencia pidió base clara con secciones oscuras puntuales. El contenido
   de páginas y artículos hereda ahora la superficie clara, y solo el hero,
   la franja de tienda, el pie y los bloques marcados quedan oscuros.
===================================================================== */
.esquema-claro .contenido,.esquema-claro .pagina-ancha,
.esquema-claro .archivo-grid,.esquema-claro .portada-pagina{color:var(--blanco)}
.esquema-claro .contenido h1,.esquema-claro .contenido h2,.esquema-claro .contenido h3,
.esquema-claro .pagina-ancha h1,.esquema-claro .pagina-ancha h2,.esquema-claro .pagina-ancha h3{color:var(--blanco)}
.esquema-claro .contenido p,.esquema-claro .contenido li,
.esquema-claro .pagina-ancha p:not(.has-text-color),
.esquema-claro .pagina-ancha li:not(.has-text-color){color:var(--plata-clara)}
.esquema-claro .contenido blockquote{color:var(--plata-clara);border-left-color:var(--cobre)}
.esquema-claro .wp-block-table th{background:var(--alt-bg);color:var(--cobre)}
.esquema-claro .wp-block-table th,.esquema-claro .wp-block-table td{border-color:var(--linea)}
.esquema-claro .wp-block-code{background:var(--alt-bg);color:var(--blanco);border-color:var(--linea)}
.esquema-claro .entry-meta{color:var(--plata)}
.esquema-claro .paginacion .page-numbers{border-color:var(--linea);color:var(--blanco)}
.esquema-claro .ae-libre{color:var(--blanco)}
/* Documentos legales en esquema claro */
.esquema-claro .doc-cuerpo{background:var(--negro);color:var(--blanco)}
.esquema-claro .doc-indice{background:var(--alt-bg);border-color:var(--linea);color:var(--blanco)}
.esquema-claro .doc-indice a{color:var(--plata-clara)}
.esquema-claro .doc-seccion{border-bottom-color:var(--linea)}
.esquema-claro .doc-seccion h2{color:var(--blanco)}
.esquema-claro .doc-seccion p{color:var(--plata-clara)}
.esquema-claro .doc-nota{color:var(--plata-clara)}
.esquema-claro .migas{background:var(--alt-bg);color:var(--plata)}
.esquema-claro .migas a{color:var(--plata-clara)}
/* Formulario de búsqueda */
.esquema-claro form input[type=search]{background:var(--alt-bg)!important;color:var(--blanco)!important;border-color:var(--linea)!important}

/* Secciones que SIEMPRE se mantienen oscuras, en cualquier esquema:
   dan el contraste dramático que la marca necesita */
.hero,.doc-hero{color:#F5F3EF}
.hero h1,.hero-sub,.hero .eyebrow,.doc-hero h1,.doc-hero .doc-intro{color:inherit}

/* =====================================================================
   v5.0 — HERO Y CINTAS A ANCHO COMPLETO, SIN IMPORTAR EL CONTENEDOR
   La página «Inicio» ya existía cuando se corrigió el generador, así que
   conserva el shortcode dentro de un contenedor con ancho limitado. Esta
   técnica de sangrado completo funciona en cualquier caso, sin necesidad
   de regenerar la página.
===================================================================== */
.ae-sc-hero,.ae-sc-cintas,
.pagina-ancha .ae-sc-hero,.pagina-ancha .ae-sc-cintas,
.portada-pagina .ae-sc-hero,.portada-pagina .ae-sc-cintas{
  width:100vw;max-width:100vw;
  margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  padding-left:0;padding-right:0}
/* Cuando el bloque de shortcode envuelve al hero, también se libera */
.wp-block-shortcode:has(.ae-sc-hero),
.wp-block-shortcode:has(.ae-sc-cintas){max-width:none;padding:0;margin:0}
/* Respaldo para navegadores sin :has() */
.ae-sc-hero .hero,.ae-sc-cintas .cintas{width:100%}
.ae-sc-hero{position:relative;z-index:0}

/* =====================================================================
   v5.0 — CANALES DIGITALES: estructura configurable
===================================================================== */
.canales-grid{display:grid;gap:var(--can-gap,20px);align-items:start;width:100%}
.canales-grid.alto-igual{align-items:stretch}
.canal{min-width:0;display:flex;flex-direction:column}
.canal>*{min-width:0;width:100%}

/* Disposiciones */
.canales-grid.dispo-auto{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}
.canales-grid.dispo-fila{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
.canales-grid.dispo-2col{grid-template-columns:repeat(2,minmax(0,1fr))}
.canales-grid.dispo-3col{grid-template-columns:repeat(3,minmax(0,1fr))}
.canales-grid.dispo-4col{grid-template-columns:repeat(4,minmax(0,1fr))}
.canales-grid.dispo-apilado{grid-template-columns:minmax(0,1fr)}
.canales-grid.dispo-destacado{grid-template-columns:repeat(3,minmax(0,1fr))}
.canales-grid.dispo-destacado>.canal:first-child{grid-column:span 2;grid-row:span 2}

/* Anchos por bloque */
.canal.ancho-1{grid-column:span 1}
.canal.ancho-2{grid-column:span 2}
.canal.ancho-3{grid-column:span 3}
.canal.ancho-full{grid-column:1/-1}

/* Contenido de cada red */
.canal-ig,.canal-fb,.canal-tt{width:100%;min-width:0;border-radius:var(--radio,10px);overflow:hidden}
.canal-ig{display:grid;gap:.8rem;grid-template-columns:minmax(0,1fr)}
.canal-instagram .canal-ig .instagram-media{margin:0!important;min-width:0!important;max-width:100%!important;width:100%!important;border-radius:var(--radio,10px)!important}
.canal-fb iframe,.canal-tt iframe{display:block;width:100%;border:0;border-radius:var(--radio,10px);background:#fff}
.canal-tt .tiktok-embed{margin:0!important;max-width:100%!important;min-width:0!important}
.canal-img img{width:100%;height:100%;object-fit:cover;border-radius:var(--radio,10px)}
.canal-img a{display:block;overflow:hidden;border-radius:var(--radio,10px)}
.canal-img img{transition:transform .45s}
.canal-img a:hover img{transform:scale(1.04)}
.canal-banner .ig-banner{height:100%;min-height:0}
.canal .ae-tercero{height:100%;min-height:0}

/* Alturas iguales sin deformar el contenido */
.canales-grid.alto-igual .canal{height:100%}
.canales-grid.alto-igual .canal>*{flex:1 1 auto}

/* Responsive de la sección */
@media (max-width:1200px){
  .canales-grid.dispo-4col{grid-template-columns:repeat(2,minmax(0,1fr))}
  .canales-grid.dispo-destacado{grid-template-columns:repeat(2,minmax(0,1fr))}
  .canales-grid.dispo-destacado>.canal:first-child{grid-column:span 2;grid-row:auto}
}
@media (max-width:900px){
  .canales-grid.dispo-fila{grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
  .canales-grid.dispo-3col{grid-template-columns:repeat(2,minmax(0,1fr))}
  .canal.ancho-3{grid-column:span 2}
}
@media (max-width:640px){
  .canales-grid[class*=dispo-]{grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important}
  .canal[class*=ancho-]{grid-column:1/-1!important;grid-row:auto!important}
  .canales-grid.alto-igual{align-items:start}
  .canales-grid.alto-igual .canal{height:auto}
}

/* =====================================================================
   v5.1 — BOTONES: contraste garantizado en cualquier superficie
   En esquema mixto las secciones alternas son claras, pero los botones
   seguían usando el color de texto de las secciones oscuras y quedaban
   invisibles (ese era el caso del botón «Cómo llegar»). Ahora heredan el
   color de la superficie donde realmente están.
===================================================================== */
.bg-carbon .btn-ghost,.bg-carbon2 .btn-ghost,.doc-cuerpo .btn-ghost{
  color:var(--btn-ghost-txt-alt,#F5F3EF);
  border-color:var(--btn-ghost-borde-alt,#54524F)}
.bg-carbon .btn-ghost:hover,.bg-carbon2 .btn-ghost:hover{
  color:var(--cobre);border-color:var(--cobre);background:rgba(var(--cobre-rgb),.08)}
.bg-carbon .btn-plata,.bg-carbon2 .btn-plata{
  background:var(--btn-plata-bg,#E9E7E3);color:var(--btn-plata-txt,#16150F);
  background-image:none;border:1px solid var(--btn-ghost-borde-alt)}
.bg-carbon .btn-plata:hover{background:var(--cobre);color:#fff;border-color:var(--cobre)}
/* La franja cobre siempre lleva botones legibles */
.bg-cobre .btn-plata,.doc-cta .btn-plata{background:#fff;color:#16150F;background-image:none;border:none}
.bg-cobre .btn-ghost,.doc-cta .btn-ghost{color:#fff;border-color:rgba(255,255,255,.7)}
.bg-cobre .btn-ghost:hover{background:#fff;color:var(--cobre);border-color:#fff}
/* El hero mantiene su tratamiento oscuro */
.hero .btn-ghost{color:#F5F3EF;border-color:rgba(255,255,255,.45)}

/* =====================================================================
   v5.1 — TARJETAS CLICABLES COMPLETAS
===================================================================== */
.cat.cat-click,.prod.prod-click{cursor:pointer}
.cat-cover{position:absolute;inset:0;z-index:4;border-radius:inherit;
  text-indent:-9999px;overflow:hidden;background:transparent}
.cat.cat-click .cat-link,.prod.prod-click .btn{position:relative;z-index:5}
.cat.cat-click:hover,.prod.prod-click:hover{border-color:var(--cobre)}
.cat-cover:focus-visible{outline:3px solid var(--fuego);outline-offset:-3px}

/* =====================================================================
   v5.1 — BANNER DE CANALES: color superpuesto, alineación y proporciones
===================================================================== */
.ig-banner{position:relative;overflow:hidden;border-radius:var(--radio,10px);
  background:linear-gradient(160deg,var(--cobre),var(--cobre-osc));
  display:flex;padding:2.4rem 1.8rem;min-height:var(--ig-banner-min,340px)}
.ig-banner.con-imagen{background-color:var(--negro)}
.ig-banner.banner-centro{align-items:center;justify-content:center;text-align:center}
.ig-banner.banner-abajo{align-items:flex-end;justify-content:center;text-align:center}
.ig-banner.banner-arriba{align-items:flex-start;justify-content:center;text-align:center}
.ig-banner.banner-izq{align-items:center;justify-content:flex-start;text-align:left}
.ig-banner-txt{position:relative;z-index:2;max-width:32ch}
.ig-ico{display:inline-flex;width:62px;height:62px;align-items:center;justify-content:center;
  border-radius:16px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.4);
  color:#fff;margin-bottom:1rem}
.ig-invita{font-size:.86rem;letter-spacing:.22em;text-transform:uppercase;color:#FFE0D2;margin-bottom:.25rem}
.ig-user{font-family:var(--display);font-weight:800;font-size:clamp(1.5rem,3vw,2.1rem);
  color:#fff;line-height:1;margin-bottom:.9rem;word-break:break-word}
.ig-desc{font-size:.94rem;color:#FFEAE0;margin-bottom:1.4rem}
.ig-banner .btn-cobre{background:#fff;color:var(--cobre);font-weight:700;background-image:none}
.ig-banner .btn-cobre:hover{background:#0B0B0B;color:#fff;box-shadow:0 10px 26px rgba(0,0,0,.4)}
.ig-redes{margin-top:1.2rem;display:flex;gap:.5rem}
.ig-banner.banner-centro .ig-redes,.ig-banner.banner-abajo .ig-redes,
.ig-banner.banner-arriba .ig-redes{justify-content:center}
.ig-redes .foot-icon{border-color:rgba(255,255,255,.55);color:#fff}
.ig-redes .foot-icon:hover{background:#fff;color:var(--cobre)}

/* Columnas por dispositivo en canales */
@media (max-width:1024px){
  .canales-grid.dispo-fila,.canales-grid.dispo-3col,.canales-grid.dispo-4col,
  .canales-grid.dispo-destacado{
    grid-auto-flow:row;grid-template-columns:repeat(var(--can-col-tab,2),minmax(0,1fr))}
  .canales-grid.dispo-destacado>.canal:first-child{grid-column:span var(--can-col-tab,2);grid-row:auto}
  .canal.ancho-3,.canal.ancho-2{grid-column:span var(--can-col-tab,2)}
}
@media (max-width:640px){
  .canales-grid[class*=dispo-]{grid-template-columns:repeat(var(--can-col-mov,1),minmax(0,1fr))!important}
  .canal[class*=ancho-]{grid-column:1/-1!important}
  .ig-banner{min-height:0;padding:2rem 1.4rem}
}


/* =====================================================================
   v5.2 — HERENCIA DE COLOR EN TODA SECCIÓN
   Cualquier sección toma su color de texto de los tokens de su propia
   superficie. Esto reemplaza las decenas de reglas por componente que
   antes había que mantener a mano para cada esquema.
===================================================================== */
.ae-seccion{color:var(--alt-txt,var(--blanco))}
.ae-seccion h1,.ae-seccion h2,.ae-seccion h3,.ae-seccion h4,
.ae-seccion .wp-block-heading{color:var(--alt-txt,var(--blanco))}
.ae-seccion p,.ae-seccion li{color:var(--alt-soft,var(--plata-clara))}
.ae-seccion .eyebrow{color:var(--alt-soft,var(--plata))}
/* El acento cobre nunca se pierde */
.ae-seccion h1 em,.ae-seccion h2 em,.ae-seccion h3 em,
.ae-seccion .wp-block-heading em{color:var(--cobre)}
/* Tarjetas: su propia superficie manda sobre la de la sección */
.cat,.slide,.faq-item,.post-card,.ae-form,.is-style-tarjeta,.prod{
  color:var(--card-txt,var(--blanco))}
.cat h3,.slide .who,.faq-item summary,.post-card h3,.prod h3{color:var(--card-txt,var(--blanco))}
.cat p,.slide p,.faq-resp,.post-card p{color:var(--card-soft,var(--plata-clara))}
/* Bajada de las cabeceras interiores */
.ae-hero-int .bajada,.ae-hero-int p{color:var(--alt-soft,var(--plata-clara))}
.ae-hero-int .eyebrow{color:var(--alt-soft,var(--plata))}
/* Migas y formularios heredan igual */
.ae-seccion .ae-campo label{color:var(--alt-soft,var(--plata))}
.ae-seccion .ae-form input,.ae-seccion .ae-form textarea,.ae-seccion .ae-form select{
  background:var(--alt-bg,var(--negro));color:var(--card-txt,var(--blanco));
  border-color:var(--card-borde,var(--linea))}
/* Cifras del hero */
.hero .dato .n,.hero .dato-sello{color:#F5F3EF}
.hero .dato .l{color:#D6D4D0}

/* =====================================================================
   v5.2 — CABECERA DE PÁGINAS INTERIORES
===================================================================== */
.ae-hero-int{position:relative;display:flex;flex-direction:column;justify-content:center;
  overflow:hidden;isolation:isolate}
.ae-hero-int>*{position:relative;z-index:2}
.cab-media{background-color:#0F0F10}
.cab-media::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.cab-video-el{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.cab-cobre{background:var(--metal-cobre);background-size:250% 100%;animation:sheen 14s linear infinite}
.cab-claro{background-color:var(--alt-bg)}

/* Entrada animada del título */
.cab-anim .eyebrow{animation:fadeUp .7s .05s backwards}
.cab-anim h1{animation:fadeUp .8s .18s backwards}
.cab-anim .bajada{animation:fadeUp .8s .32s backwards}
/* Línea decorativa que crece bajo el título */
.ae-hero-int h1::after{content:"";display:block;width:0;height:3px;margin-top:1rem;
  background:var(--metal-cobre);background-size:200% 100%;border-radius:2px;
  animation:crecerLinea .9s .5s forwards}
@keyframes crecerLinea{to{width:120px}}
@media (prefers-reduced-motion:reduce){
  .cab-anim .eyebrow,.cab-anim h1,.cab-anim .bajada,.ae-hero-int h1::after{animation:none}
  .ae-hero-int h1::after{width:120px}
}
@media (max-width:900px){.ae-hero-int{min-height:240px!important}}
@media (max-width:600px){
  .ae-hero-int{min-height:190px!important}
  .cab-imagen{background-attachment:scroll!important}
}

/* =====================================================================
   v5.2 — EFECTOS Y ANIMACIONES RESTAURADOS
===================================================================== */
@media (prefers-reduced-motion:no-preference){
  /* Revelado al entrar en pantalla */
  .rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
  .rv.on{opacity:1;transform:none}
  /* Entrada escalonada de las tarjetas */
  .st>*{opacity:0;transform:translateY(22px);
    transition:opacity .6s cubic-bezier(.2,.7,.3,1),transform .6s cubic-bezier(.2,.7,.3,1)}
  .st.on>*{opacity:1;transform:none}
  .st.on>*:nth-child(1){transition-delay:.05s}
  .st.on>*:nth-child(2){transition-delay:.13s}
  .st.on>*:nth-child(3){transition-delay:.21s}
  .st.on>*:nth-child(4){transition-delay:.29s}
  .st.on>*:nth-child(5){transition-delay:.37s}
  .st.on>*:nth-child(6){transition-delay:.45s}
  .st.on>*:nth-child(7){transition-delay:.53s}
  .st.on>*:nth-child(8){transition-delay:.61s}

  /* Elevación de tarjetas */
  .cat,.prod,.post-card,.slide{transition:transform .4s cubic-bezier(.2,.7,.3,1),
    box-shadow .4s,border-color .3s,background .3s}
  .cat:hover,.post-card:hover{transform:translateY(-8px)}
  .prod:hover{transform:translateY(-6px)}
  /* Brillo que recorre la tarjeta */
  .cat::after{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;
    background:linear-gradient(100deg,transparent,rgba(255,255,255,.12),transparent);
    transform:skewX(-18deg);transition:left .75s ease;pointer-events:none;z-index:3}
  .cat:hover::after{left:130%}
  /* Ícono que reacciona */
  .cat .ic{transition:transform .45s cubic-bezier(.34,1.56,.64,1),box-shadow .35s}
  .cat:hover .ic{transform:translateY(-4px) rotate(-6deg) scale(1.08);
    box-shadow:0 12px 26px rgba(var(--cobre-rgb),.4)}
  /* Título que se desplaza suave */
  .cat:hover h3{transform:translateX(4px)}
  .cat h3{transition:transform .35s}
  /* Botones */
  .btn{transition:transform .25s,box-shadow .3s,background .3s,color .3s,border-color .3s}
  .btn-cobre:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(var(--cobre-rgb),.42)}
  /* Enlaces del pie y listas */
  .foot-lista a,.legal-menu a{transition:color .25s,padding-left .25s}
  .foot-lista a:hover,.legal-menu a:hover{padding-left:.35rem}
  /* Acordeón de preguntas */
  .faq-item{transition:border-color .3s,background .3s,box-shadow .3s}
  .faq-item[open]{box-shadow:0 10px 30px rgba(0,0,0,.16)}
  .faq-item summary::after{transition:transform .35s cubic-bezier(.34,1.56,.64,1),color .25s}
  /* Imágenes con acercamiento suave */
  .post-thumb img,.prod-img img,.nos-media img{transition:transform .6s cubic-bezier(.2,.7,.3,1)}
  .post-card:hover .post-thumb img,.prod:hover .prod-img img{transform:scale(1.07)}
  /* Cifras del hero */
  .dato{transition:transform .35s}
  .dato:hover{transform:translateY(-4px)}
  .dato:hover .dato-ico{color:var(--cobre-brillo)}
  .dato-ico{transition:color .3s,transform .35s}
  .dato:hover .dato-ico{transform:scale(1.12)}
}
/* Aparición progresiva de las secciones de documentos */
.doc-seccion{opacity:0;transform:translateY(18px);
  transition:opacity .6s ease,transform .6s ease}
.doc-seccion.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.doc-seccion{opacity:1;transform:none}}

/* Rejilla de productos de la tienda con columnas configurables */
.prod-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}
@supports (grid-template-columns:repeat(var(--prod-col,4),1fr)){
  @media (min-width:1100px){
    .prod-grid[style*="--prod-col"]{grid-template-columns:repeat(var(--prod-col,4),minmax(0,1fr))}
  }
}
.btn-sm{padding:.5rem 1rem;font-size:.78rem}
