:root{--vino:#7A1521;--vino-900:#5E0F19;--vino-700:#6A1220;--rojo:#C8102E;--teal:#86C5BE;--mostaza:#EBCB83;--terracota:#E5AE9C;--salvia:#AECAB4;--ciruela:#C2ABCB;--azul:#A9BCD8;--teal-txt:#2E7C75;--mostaza-txt:#94701F;--terracota-txt:#A4563F;--salvia-txt:#4C6F57;--ciruela-txt:#71527D;--oro:#F2D592;--rosa:#F7E9EA;--rosa-2:#F1DADD;--cream:#FBF7F1;--cream-2:#F4ECE0;--ink:#241F1C;--ink-60:#7E756D;--line:#ECE2DA;}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Manrope',sans-serif;color:var(--ink);background:#fff;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--vino);text-decoration:none}a:hover{color:var(--teal)}
h1,h2,h3,h4{margin:0;font-family:'Montserrat',sans-serif;font-weight:600;letter-spacing:-.025em;line-height:1.1}
p{margin:0}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 32px}
.eyebrow{font-weight:700;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--teal)}
.eyebrow.on-vino{color:var(--oro)}
.lead{font-size:19px;line-height:1.6;color:var(--ink-60)}
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15px;letter-spacing:.02em;padding:15px 28px;border-radius:3px;border:2px solid transparent;transition:.18s;cursor:pointer;font-family:'Manrope',sans-serif}
.btn-primary{background:var(--vino);color:#fff;border-color:var(--vino)}
.btn-primary:hover{background:var(--vino-900);border-color:var(--vino-900);color:#fff}
.btn-ghost{border-color:currentColor;color:var(--vino)}
.btn-ghost:hover{background:var(--vino);border-color:var(--vino);color:#fff}
.btn-light{background:#fff;color:var(--vino);border-color:#fff}
.btn-light:hover{background:var(--oro);border-color:var(--oro);color:var(--vino-900)}
.btn-outline-light{border-color:rgba(255,255,255,.5);color:#fff}
.btn-outline-light:hover{background:#fff;color:var(--vino);border-color:#fff}
/* header */
.topbar{background:var(--vino-900);color:rgba(255,255,255,.8);font-size:13px}
.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:9px;padding-bottom:9px;flex-wrap:wrap}
.topbar a{color:rgba(255,255,255,.85)}.topbar a:hover{color:var(--oro)}
.nav{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:22px;padding-top:16px;padding-bottom:16px}
.nav .logo{width:186px;flex-shrink:0}
.nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:18px;margin:0;padding:0;margin-left:auto}
.nav ul a{font-weight:600;font-size:14px;white-space:nowrap;color:var(--ink);padding-bottom:3px;border-bottom:2px solid transparent}
.nav ul a:hover{color:var(--vino);border-color:var(--teal)}
.nav ul a.on{color:var(--vino);border-color:var(--vino)}
.nav .btn{padding:12px 22px;font-size:14px}
/* bandas */
.band{display:flex;height:7px}.band span{flex:1}
.band .b1{background:var(--teal)}.band .b2{background:var(--mostaza)}.band .b3{background:var(--terracota)}.band .b4{background:var(--salvia)}.band .b5{background:var(--ciruela)}
/* secciones */
section{padding:88px 0}
.sec-vino{background:var(--vino);color:#fff}
.sec-vino h2,.sec-vino h3{color:#fff}
.sec-dark{background:var(--vino-900);color:#fff}
.sec-cream{background:var(--cream)}
.sec-head{max-width:760px;margin-bottom:48px}
.sec-head h2{font-size:clamp(32px,4vw,50px);margin-top:14px;color:var(--vino-900)}
.sec-vino .sec-head h2,.sec-dark .sec-head h2{color:#fff}
.sec-head p{margin-top:18px}
.sec-vino .sec-head p,.sec-dark .sec-head p{color:rgba(255,255,255,.82)}
/* grid utilidades */
.g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px}
.g3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media(max-width:1000px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.g4{grid-template-columns:1fr}}
/* tarjetas de pilar */
.pilar{background:#fff;border:1px solid var(--line);border-top:6px solid var(--teal);padding:34px 30px 30px;display:flex;flex-direction:column;gap:14px;transition:.18s}
.pilar:hover{box-shadow:0 16px 40px rgba(78,12,20,.1);transform:translateY(-3px)}
.pilar .num{font-family:'Montserrat',sans-serif;font-weight:600;font-size:15px;color:var(--ink-60)}
.pilar h3{font-size:26px;color:var(--vino-900)}
.pilar p{font-size:16px;color:var(--ink-60)}
.pilar ul{margin:6px 0 0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.pilar ul li{font-size:15px;display:flex;gap:10px;align-items:flex-start;color:var(--ink)}
.pilar ul li::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;margin-top:9px;flex-shrink:0;opacity:.55}
.pilar .more{margin-top:auto;padding-top:16px;font-weight:700;font-size:14px;letter-spacing:.02em}
.p-teal{border-top-color:var(--teal)}.p-teal .more{color:var(--teal)}
.p-mostaza{border-top-color:var(--mostaza)}.p-mostaza .more{color:#A87415}
.p-ciruela{border-top-color:var(--ciruela)}.p-ciruela .more{color:var(--ciruela)}
.p-terracota{border-top-color:var(--terracota)}.p-terracota .more{color:var(--terracota)}
/* cifras */
.stat{border-left:3px solid rgba(255,255,255,.25);padding-left:20px}
.stat .n{font-family:'Montserrat',sans-serif;font-weight:600;font-size:clamp(38px,4.4vw,54px);line-height:1;color:#fff}
.stat .l{font-size:14px;line-height:1.4;color:rgba(255,255,255,.75);margin-top:10px}
/* bloque foto+texto */
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:56px;align-items:center}
.split img{width:100%;height:100%;min-height:340px;object-fit:cover}
/* citas */
.quote{font-family:'Montserrat',sans-serif;font-weight:500;font-style:italic;font-size:clamp(24px,2.6vw,34px);line-height:1.3}
/* formularios */
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.field label{font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60)}
.field input,.field select,.field textarea{font-family:'Manrope',sans-serif;font-size:16px;padding:14px 16px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--teal);outline-offset:-1px}
/* footer */
footer{background:var(--vino-900);color:rgba(255,255,255,.72);padding:72px 0 0;font-size:15px}
footer h4{font-family:'Manrope',sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--oro);margin-bottom:18px}
footer a{color:rgba(255,255,255,.72);display:block;padding:5px 0}
footer a:hover{color:#fff}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
footer .logo{width:210px;margin-bottom:20px}
footer .legal{margin-top:56px;border-top:1px solid rgba(255,255,255,.14);padding:22px 0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.5)}
.nav .menu-btn{display:none;font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;padding:11px 16px;border:1px solid var(--line);background:#fff;color:var(--vino);border-radius:3px;cursor:pointer}
@media(max-width:1080px){.nav ul{display:none}nav.nav .menu-btn{display:inline-flex}.nav .btn{margin-left:auto}.nav.open ul{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:16px 32px 22px;gap:14px;box-shadow:0 20px 40px rgba(78,12,20,.12)}}
@media(max-width:900px){footer .cols{grid-template-columns:1fr 1fr}section{padding:64px 0}}

/* efectos visuales con la paleta */
.eyebrow{display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:2px;background:currentColor;opacity:.8}
.sec-head h2{position:relative;padding-bottom:22px}
.sec-head h2::after{content:"";position:absolute;left:0;bottom:0;width:120px;height:4px;background:linear-gradient(90deg,var(--teal) 0 20%,var(--mostaza) 20% 40%,var(--terracota) 40% 60%,var(--salvia) 60% 80%,var(--ciruela) 80%)}
.sec-vino,.hero,.ph,.sh,.cta-final{background-image:linear-gradient(135deg,var(--vino) 0%,var(--vino-900) 100%)!important}
.sec-dark{background-image:radial-gradient(900px 400px at 100% 0,rgba(200,16,46,.35),transparent 70%)}
.btn{position:relative;overflow:hidden}
.btn-primary:hover{box-shadow:0 10px 24px rgba(122,21,33,.3);transform:translateY(-1px)}
.btn-light:hover{box-shadow:0 10px 24px rgba(0,0,0,.18);transform:translateY(-1px)}
.pilar{position:relative;overflow:hidden}
.pilar::after{content:"";position:absolute;right:-60px;top:-60px;width:160px;height:160px;border-radius:50%;background:var(--acc,var(--teal));opacity:0;transition:.25s;filter:blur(30px)}
.pilar:hover::after{opacity:.22}
.p-teal{--acc:var(--teal)}.p-mostaza{--acc:var(--mostaza)}.p-ciruela{--acc:var(--ciruela)}.p-terracota{--acc:var(--terracota)}
.pilar:hover{border-top-width:10px;padding-top:30px;box-shadow:0 18px 44px rgba(94,15,25,.14)}
.stat .n{color:var(--oro)}
.stat{border-left-color:var(--teal)}
.stat:nth-child(2){border-left-color:var(--mostaza)}.stat:nth-child(3){border-left-color:var(--terracota)}.stat:nth-child(4){border-left-color:var(--salvia)}
.split img,.note-c img,.hero .shot img,.sh img,.ph img{transition:transform .5s ease,filter .5s ease}
.split img:hover,.note-c:hover img,.hero .shot:hover img{transform:scale(1.03)}
.note-c{position:relative;transition:.2s}
.note-c::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--teal),var(--mostaza),var(--terracota),var(--salvia),var(--ciruela));opacity:0;transition:.2s;z-index:2}
.note-c:hover{box-shadow:0 16px 40px rgba(94,15,25,.12);transform:translateY(-3px)}
.note-c:hover::before{opacity:1}
.nav ul a{transition:.15s}
.nav ul a:hover{border-image:linear-gradient(90deg,var(--teal),var(--ciruela)) 1}
footer h4::before{content:"";display:inline-block;width:14px;height:2px;background:var(--oro);margin-right:8px;vertical-align:middle}
.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 4px rgba(30,143,134,.15)}

/* v2 · portafolio 2026: quinta solución, proceso en cinco pasos y nota de revisión */
.p-salvia{border-top-color:var(--salvia);--acc:var(--salvia)}.p-salvia .more{color:#4F7159}
.g5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media(max-width:1100px){.g5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.g5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.g5{grid-template-columns:1fr}}
.linea{display:flex;flex-wrap:wrap;gap:0 14px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:2.1}
.linea span+span::before{content:"|";margin-right:14px;opacity:.45;font-weight:400}
.enfoque5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18);margin-top:48px}
.enfoque5>div{position:relative;padding:30px 24px 32px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.enfoque5 .n{font-family:'Montserrat',sans-serif;font-weight:600;font-size:42px;line-height:1;color:var(--oro)}
.enfoque5 h4{font-family:'Manrope',sans-serif;font-weight:800;font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#fff;margin:16px 0 10px}
.enfoque5 p{font-size:15px;line-height:1.5;color:rgba(255,255,255,.8)}
.enfoque5>div::after{content:"→";position:absolute;right:-10px;top:36px;z-index:2;color:var(--oro);font-size:20px;font-weight:700;background:inherit}
.enfoque5>div:last-child::after{content:none}
@media(max-width:1000px){.enfoque5{grid-template-columns:repeat(2,minmax(0,1fr))}.enfoque5>div::after{content:none}}
@media(max-width:560px){.enfoque5{grid-template-columns:1fr}}
.enfoque5-lema{margin-top:40px;font-family:'Montserrat',sans-serif;font-weight:500;font-style:italic;font-size:clamp(22px,2.6vw,30px);line-height:1.3;color:#fff;max-width:900px}
.enfoque5-lema b{font-weight:600;font-style:normal;color:var(--oro)}
.rev-note{background:#FFF8E6;border-bottom:2px dashed #CE9626;color:#5A4A1E;font-size:14px;line-height:1.55}
.rev-note .wrap{padding-top:14px;padding-bottom:14px;display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.rev-note .tag{flex-shrink:0;font-weight:800;font-size:11px;letter-spacing:.18em;text-transform:uppercase;background:#CE9626;color:#fff;padding:5px 10px;border-radius:3px;margin-top:2px}
.rev-note p{flex:1;min-width:280px;margin:0}
.rev-note b{color:#7A1521}

/* v3 · paleta pastel: los acentos de relleno son pastel y el texto usa su versión oscura */
.eyebrow{color:var(--teal-txt)}
a:hover{color:var(--teal-txt)}
.p-teal .more{color:var(--teal-txt)}.p-mostaza .more{color:var(--mostaza-txt)}.p-terracota .more{color:var(--terracota-txt)}.p-salvia .more{color:var(--salvia-txt)}.p-ciruela .more{color:var(--ciruela-txt)}
.field input:focus,.field select:focus,.field textarea:focus{outline-color:var(--teal-txt);box-shadow:0 0 0 4px rgba(134,197,190,.25)}
.sec-dark{background-image:radial-gradient(900px 400px at 100% 0,rgba(229,174,156,.22),transparent 70%)}

/* v3 · secciones del inicio compartidas por las versiones A, B y C */
.statband{background:var(--vino-900);padding:46px 0}
.statband .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px}
.stat .n.txt{font-size:clamp(26px,2.6vw,34px);line-height:1.15}
.pyme{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:34px;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}
.pyme .sello{display:flex;align-items:center;justify-content:center;min-width:150px;height:64px;padding:0 16px;border:1px dashed rgba(255,255,255,.45);border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.7);background:rgba(255,255,255,.06)}
.pyme p{font-size:16px;color:rgba(255,255,255,.88);max-width:620px}
.pyme b{color:var(--oro)}
.senales{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media(max-width:980px){.senales{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.senales{grid-template-columns:1fr}}
.senales div{background:#fff;border:1px solid var(--line);border-left:5px solid var(--acc,var(--teal));padding:26px 24px}
.senales h4{font-family:'Manrope',sans-serif;font-weight:800;font-size:18px;letter-spacing:0;color:var(--vino-900);margin-bottom:8px;line-height:1.3}
.senales p{font-size:15px;color:var(--ink-60)}
.senales div:nth-child(1){--acc:var(--teal)}.senales div:nth-child(2){--acc:var(--mostaza)}.senales div:nth-child(3){--acc:var(--terracota)}.senales div:nth-child(4){--acc:var(--salvia)}.senales div:nth-child(5){--acc:var(--ciruela)}.senales div:nth-child(6){--acc:var(--azul)}
.cierre{margin-top:40px;background:var(--rosa);border-radius:4px;padding:30px 34px}
.cierre p{font-family:'Montserrat',sans-serif;font-weight:500;font-size:clamp(19px,2vw,23px);line-height:1.4;color:var(--vino-900);max-width:900px}
.cierre p b{font-weight:600;color:var(--vino)}
.ruta{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:44px;position:relative}
.ruta::before{content:"";position:absolute;left:8%;right:8%;top:27px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--teal),var(--mostaza),var(--terracota),var(--salvia),var(--ciruela))}
.ruta>div{position:relative;padding:0 14px;text-align:center}
.ruta .dot{width:58px;height:58px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;font-family:'Montserrat',sans-serif;font-weight:600;font-size:20px;color:var(--vino-900);background:var(--acc);border:5px solid #fff;box-shadow:0 6px 18px rgba(94,15,25,.12);position:relative}
.ruta>div:nth-child(1){--acc:var(--teal)}.ruta>div:nth-child(2){--acc:var(--mostaza)}.ruta>div:nth-child(3){--acc:var(--terracota)}.ruta>div:nth-child(4){--acc:var(--salvia)}.ruta>div:nth-child(5){--acc:var(--ciruela)}
.ruta h4{font-family:'Manrope',sans-serif;font-weight:800;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--vino-900);margin:18px 0 8px}
.ruta p{font-size:15px;line-height:1.45;color:var(--ink-60)}
@media(max-width:900px){.ruta{grid-template-columns:1fr;gap:22px}.ruta::before{left:27px;right:auto;top:0;bottom:0;width:4px;height:auto;background:linear-gradient(180deg,var(--teal),var(--mostaza),var(--terracota),var(--salvia),var(--ciruela))}.ruta>div{display:grid;grid-template-columns:58px 1fr;gap:4px 18px;text-align:left;padding:0}.ruta .dot{grid-row:span 2;margin:0}.ruta h4{margin:6px 0 0}}
.ruta-lema{margin-top:44px;text-align:center;font-family:'Montserrat',sans-serif;font-weight:500;font-size:clamp(20px,2.2vw,26px);line-height:1.35;color:var(--vino-900)}
.ruta-lema span{display:block;margin-top:10px;font-family:'Manrope',sans-serif;font-size:16px;color:var(--ink-60)}
.sol .pilar .cat{font-weight:800;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-60)}
.sol .pilar h3{font-size:20px;line-height:1.2}
.sol .pilar p{font-size:14.5px}
.somos{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start}
@media(max-width:900px){.somos{grid-template-columns:1fr}}
.somos .receta{margin-top:26px;font-family:'Montserrat',sans-serif;font-weight:500;font-style:italic;font-size:clamp(21px,2.2vw,27px);line-height:1.3}
.somos .dif3{display:flex;flex-direction:column;gap:26px}
.somos .dif3 div{border-top:3px solid var(--oro);padding-top:18px}
.somos .dif3 h4{font-family:'Montserrat',sans-serif;font-weight:600;font-size:22px;margin-bottom:8px;color:var(--vino-900)}
.somos .dif3 p{font-size:16px;color:var(--ink-60)}
.somos .frase{margin-top:44px;padding-top:26px;border-top:1px solid var(--line);font-size:18px;max-width:900px;color:var(--vino-900)}
.sec-vino .somos .receta,.sec-vino .somos .dif3 h4{color:#fff}.sec-vino .somos p,.sec-vino .somos .dif3 p{color:rgba(255,255,255,.84)}
.sec-vino .somos .frase{border-top-color:rgba(255,255,255,.18);color:#fff}
.sectores{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.sectores span{background:#fff;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:14px;padding:9px 18px}
.logos-pend{margin-top:26px;border:1px dashed var(--line);border-radius:4px;padding:18px 20px;font-size:14px;color:var(--ink-60);text-align:center;background:rgba(255,255,255,.6)}
.cta-final .apoyo{max-width:700px;margin:20px auto 0;color:rgba(255,255,255,.85);font-size:18px}
.cta-final .agenda{margin-top:34px;font-weight:800;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--oro)}
.cta-final .agenda span{display:block;margin-top:8px;font-weight:500;font-size:16px;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.85)}
.cta-final .final{margin-top:44px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16);font-family:'Montserrat',sans-serif;font-style:italic;font-size:18px;color:rgba(255,255,255,.8)}
.switch{position:fixed;right:18px;bottom:18px;z-index:80;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(78,12,20,.14);display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:700}
.switch a{padding:7px 12px;border-radius:3px;color:var(--ink-60)}
.switch a.on{background:var(--vino);color:#fff}

/* v3 · tema C: estructura de la versión A con los colores claros de la versión B */
.tema-c .hero{background:var(--cream)!important;background-image:radial-gradient(700px 420px at 85% 20%,var(--cream-2),transparent 70%)!important;color:var(--ink);border-bottom:1px solid var(--line)}
.tema-c .hero h1{color:var(--vino-900)}
.tema-c .hero h1 em{color:var(--vino)}
.tema-c .hero .eyebrow.on-vino{color:var(--teal-txt)}
.tema-c .hero .sub{color:var(--ink-60)}
.tema-c .hero .linea{color:var(--vino)}
.tema-c .hero .btn-light{background:var(--vino);border-color:var(--vino);color:#fff}
.tema-c .hero .btn-light:hover{background:var(--vino-900);border-color:var(--vino-900);color:#fff}
.tema-c .hero .btn-outline-light{border-color:var(--vino);color:var(--vino)}
.tema-c .hero .btn-outline-light:hover{background:var(--vino);color:#fff}
.tema-c .hero .shot{margin:64px 40px 64px 8px;align-self:center;height:460px;min-height:0;overflow:visible;z-index:1}
.tema-c .hero .shot::after{background:none;border:2px solid var(--mostaza);inset:auto -18px -18px auto;width:60%;height:60%;z-index:-1}
.tema-c .hero .shot img{position:relative;inset:auto;width:100%;height:460px}
.tema-c .statband{background:var(--rosa);border-bottom:1px solid var(--line)}
.tema-c .stat .n{color:var(--vino)}
.tema-c .stat .l{color:var(--ink-60)}
.tema-c .pyme{border-top-color:var(--rosa-2)}
.tema-c .pyme .sello{border-color:var(--terracota);color:var(--terracota-txt);background:#fff}
.tema-c .pyme p{color:var(--ink)}.tema-c .pyme b{color:var(--vino)}
.tema-c .somos-sec{background:#fff!important;background-image:none!important;color:var(--ink)}
.tema-c .somos-sec .eyebrow.on-vino{color:var(--teal-txt)}
.tema-c .somos-sec .sec-head h2{color:var(--vino-900)}
.tema-c .somos-sec .somos .receta,.tema-c .somos-sec .somos .dif3 h4{color:var(--vino-900)}
.tema-c .somos-sec .somos p,.tema-c .somos-sec .somos .dif3 p{color:var(--ink-60)}
.tema-c .somos-sec .somos .dif3 div{border-top-color:var(--mostaza)}
.tema-c .somos-sec .somos .frase{border-top-color:var(--line);color:var(--vino-900)}
@media(max-width:900px){.tema-c .hero .shot{margin:0 32px 48px}}

/* v3.1 · alineado a la identidad V3 de Synergia
   Tipografías elegidas por Carolina en su portal (21-jul-2026): Montserrat (titulares) y Manrope (texto); los acentos van en Montserrat cursiva.
   Colores por solución, en el orden de la identidad: 01 teal · 02 pizarra · 03 salvia · 04 mostaza · 05 ciruela.
   Relleno = intensidad clara; texto = intensidad intensa (mostaza más oscura para que se lea sobre blanco). */
:root{
--teal:#83C1BC;--teal-txt:#1E8F86;
--azul:#95A6C0;--azul-txt:#3F5E8C;
--salvia:#AEC1B4;--salvia-txt:#5A7C64;
--mostaza:#E4C588;--mostaza-txt:#946C17;
--ciruela:#BBA9C1;--ciruela-txt:#84628F;
--terracota:#E2B9AC;--terracota-txt:#BE6347;
--oro:#E4C588;
--cream:#FBF7F0;--cream-2:#F3EBDC;--rosa:#F3EBDC;--rosa-2:#E9DCC6;
--ink:#241F1C;--ink-60:#8A8178;
}
body{font-family:'Manrope',sans-serif}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;letter-spacing:-.02em}
h1 em,h2 em,.quote,.somos .receta,.res .q,.pil .res .q,.claim .q b,.enfoque5-lema,.cta-final .final,.ruta-lema{font-family:'Montserrat',sans-serif;font-style:italic;font-weight:500;letter-spacing:-.01em}
.enfoque5-lema b{font-family:'Montserrat',sans-serif}
.band .b1{background:var(--teal)}.band .b2{background:var(--azul)}.band .b3{background:var(--salvia)}.band .b4{background:var(--mostaza)}.band .b5{background:var(--ciruela)}
.sec-head h2::after{background:linear-gradient(90deg,var(--teal) 0 20%,var(--azul) 20% 40%,var(--salvia) 40% 60%,var(--mostaza) 60% 80%,var(--ciruela) 80%)}
.note-c::before{background:linear-gradient(90deg,var(--teal),var(--azul),var(--salvia),var(--mostaza),var(--ciruela))}
.stat{border-left-color:var(--teal)}.stat:nth-child(2){border-left-color:var(--azul)}.stat:nth-child(3){border-left-color:var(--salvia)}.stat:nth-child(4){border-left-color:var(--mostaza)}
.p-azul{border-top-color:var(--azul);--acc:var(--azul)}.p-azul .more{color:var(--azul-txt)}
.p-salvia{border-top-color:var(--salvia);--acc:var(--salvia)}.p-mostaza{border-top-color:var(--mostaza);--acc:var(--mostaza)}
.s-azul{--acc:var(--azul)}
.senales div:nth-child(1){--acc:var(--teal)}.senales div:nth-child(2){--acc:var(--azul)}.senales div:nth-child(3){--acc:var(--salvia)}.senales div:nth-child(4){--acc:var(--mostaza)}.senales div:nth-child(5){--acc:var(--ciruela)}.senales div:nth-child(6){--acc:var(--terracota)}
.ruta::before{background:linear-gradient(90deg,var(--teal),var(--azul),var(--salvia),var(--mostaza),var(--ciruela))}
@media(max-width:900px){.ruta::before{background:linear-gradient(180deg,var(--teal),var(--azul),var(--salvia),var(--mostaza),var(--ciruela))}}
.ruta>div:nth-child(1){--acc:var(--teal)}.ruta>div:nth-child(2){--acc:var(--azul)}.ruta>div:nth-child(3){--acc:var(--salvia)}.ruta>div:nth-child(4){--acc:var(--mostaza)}.ruta>div:nth-child(5){--acc:var(--ciruela)}
.tema-c .hero{background-image:radial-gradient(700px 420px at 85% 20%,#F8F3EA,transparent 70%)!important}
.hero2{background-image:radial-gradient(700px 420px at 85% 20%,#F8F3EA,transparent 70%)!important}

/* v3.2 · carrusel en bucle de las soluciones (3 visibles en escritorio, 1 en celular) */
.carrusel{position:relative}
.car-vista{overflow:hidden;margin:0 -10px}
.car-pista{display:flex;will-change:transform}
.car-item{flex:0 0 100%;padding:6px 10px 14px;display:flex}
.car-item .pilar{flex:1;min-height:100%}
.sol .car-item .pilar h3{font-size:23px}
.sol .car-item .pilar p{font-size:15.5px}
.car-ctrl{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px}
.car-ctrl>button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--vino);font-size:18px;font-weight:700;cursor:pointer;transition:.18s}
.car-ctrl>button:hover{background:var(--vino);border-color:var(--vino);color:#fff}
.car-dots{display:flex;gap:9px}
.car-dots button{width:10px;height:10px;border-radius:999px;border:0;padding:0;background:var(--line);cursor:pointer;transition:.25s}
.car-dots button.on{width:28px;background:var(--vino)}

/* v3.3 · Ruta de Evolución animada (solo si ruta.js marcó la sección con .ruta-js) */
.ruta.ruta-js::before{transform:scaleX(0);transform-origin:left center;transition:transform 1.8s cubic-bezier(.6,.1,.2,1) .2s}
.ruta.ruta-js>div{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.ruta.ruta-js .dot{transform:scale(.3);transition:transform .55s cubic-bezier(.3,1.6,.5,1),box-shadow .4s ease}
.ruta.ruta-js.visible::before{transform:scaleX(1)}
.ruta.ruta-js.visible>div{opacity:1;transform:none}
.ruta.ruta-js.visible .dot{transform:scale(1)}
.ruta.ruta-js.visible>div:nth-child(1),.ruta.ruta-js.visible>div:nth-child(1) .dot{transition-delay:.25s}
.ruta.ruta-js.visible>div:nth-child(2),.ruta.ruta-js.visible>div:nth-child(2) .dot{transition-delay:.6s}
.ruta.ruta-js.visible>div:nth-child(3),.ruta.ruta-js.visible>div:nth-child(3) .dot{transition-delay:.95s}
.ruta.ruta-js.visible>div:nth-child(4),.ruta.ruta-js.visible>div:nth-child(4) .dot{transition-delay:1.3s}
.ruta.ruta-js.visible>div:nth-child(5),.ruta.ruta-js.visible>div:nth-child(5) .dot{transition-delay:1.65s}
.ruta.ruta-js.lista>div,.ruta.ruta-js.lista .dot{transition-delay:0s!important}
.ruta .dot::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--acc);opacity:0;pointer-events:none}
.ruta>div.activa .dot{transform:scale(1.14)!important;box-shadow:0 10px 26px rgba(94,15,25,.18)}
.ruta>div.activa .dot::after{animation:rutaPulso 1.6s ease-out infinite}
.ruta>div h4{transition:color .4s ease}
.ruta>div.activa h4{color:var(--vino)}
@keyframes rutaPulso{0%{opacity:.85;transform:scale(1)}100%{opacity:0;transform:scale(1.7)}}
@media(max-width:900px){.ruta.ruta-js::before{transform:scaleY(0);transform-origin:center top}.ruta.ruta-js.visible::before{transform:scaleY(1)}}

/* v3.4 · encabezado fijo (el contenedor de parts.js es el que se pega) */
[data-part=nav]{position:sticky;top:0;z-index:60}
[data-part=nav] .nav{position:relative}
.nav.fija{box-shadow:0 8px 24px rgba(94,15,25,.10)}

/* v3.5 · titular del hero: la segunda línea más pequeña para que la primera sea la protagonista */
.hero h1 em,.hero2 h1 em{display:block;font-size:.6em;line-height:1.25;margin-top:14px;letter-spacing:-.01em}

/* v3.6 · publicaciones reales de Studio (posts.js + posts-data.js) */
.posts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
@media(max-width:1100px){.posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.posts-grid{grid-template-columns:1fr}}
.post-card{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-top:4px solid var(--c,var(--vino));transition:.2s}
.post-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(94,15,25,.12)}
.post-card:focus-visible{outline:3px solid var(--teal-txt);outline-offset:3px}
.post-img{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--cream)}
.post-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.post-card:hover .post-img img{transform:scale(1.04)}
.post-bd{display:flex;flex-direction:column;gap:8px;padding:20px 20px 22px;flex:1}
.post-cat{font-weight:800;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--c,var(--vino))}
.post-tit{font-family:'Montserrat',sans-serif;font-weight:600;font-size:18px;line-height:1.25;color:var(--vino-900)}
.post-ext{font-size:14.5px;line-height:1.5;color:var(--ink-60)}
.post-mas{margin-top:auto;padding-top:10px;font-weight:700;font-size:14px;color:var(--vino)}
.posts-acciones{display:flex;justify-content:center;margin-top:30px}
.posts-filtros{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.posts-filtros button{font-family:'Manrope',sans-serif;font-weight:700;font-size:14px;padding:9px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.posts-filtros button.on{background:var(--vino);border-color:var(--vino);color:#fff}
.post-dlg{width:min(980px,94vw);max-height:90vh;padding:0;border:0;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden}
.post-dlg::backdrop{background:rgba(36,31,28,.62)}
.post-dlg-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);max-height:90vh;overflow:auto}
.post-dlg-in img{width:100%;height:auto;max-height:90vh;object-fit:contain;align-self:start;background:var(--cream)}
.post-dlg-bd{padding:34px 34px 30px;display:flex;flex-direction:column;gap:12px}
.post-dlg-bd h3{font-size:26px;color:var(--vino-900)}
.post-texto p{font-size:15.5px;line-height:1.6;color:var(--ink);margin:0 0 12px}
.post-dlg-bd .btn{align-self:flex-start;margin-top:6px}
.post-cerrar{position:absolute;top:10px;right:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:var(--vino);font-size:24px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.18)}
@media(max-width:760px){.post-dlg-in{grid-template-columns:1fr}.post-dlg-in img{height:auto;max-height:52vh}.post-dlg-bd{padding:24px 22px}}
.post-dlg-in{background:linear-gradient(90deg,var(--cream) 48.8%,#fff 48.8%)}
@media(max-width:760px){.post-dlg-in{background:#fff}}

/* v3.7 · slider del hero (hero.js): diapositivas apiladas que se funden */
.hero-slides{display:grid}
.hero-slide{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s}
.hero-slide.on{opacity:1;visibility:visible;transition:opacity .9s ease,visibility 0s}
.hero-slide .copy>*{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.hero-slide.on .copy>*{opacity:1;transform:none}
.hero-slide.on .copy>*:nth-child(2){transition-delay:.12s}.hero-slide.on .copy>*:nth-child(3){transition-delay:.24s}.hero-slide.on .copy>*:nth-child(4){transition-delay:.36s}.hero-slide.on .copy>*:nth-child(5){transition-delay:.48s}
.hero-slide.on .shot img{animation:heroZoom 8s ease-out both}
@keyframes heroZoom{from{transform:scale(1.07)}to{transform:scale(1)}}
.hero[data-hero-slider] .copy{padding-bottom:132px}
.hero h2.h1{font-size:clamp(36px,4.6vw,58px);color:#fff;margin-top:22px}
.hero h2.h1 em{font-style:italic;color:#F4D3D8;display:block;font-size:.6em;line-height:1.25;margin-top:14px;letter-spacing:-.01em}
.tema-c .hero h2.h1{color:var(--vino-900)}.tema-c .hero h2.h1 em{color:var(--vino)}
.hero-ctrl{position:absolute;z-index:4;bottom:40px;left:max(32px,calc((100vw - 1400px)/2 + 32px));display:flex;align-items:center;gap:14px}
.hero-ctrl>button{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:.18s}
.hero-ctrl>button:hover{background:#fff;color:var(--vino)}
.hero-dots{display:flex;gap:8px}
.hero-dots button{width:38px;height:4px;padding:0;border:0;border-radius:4px;background:rgba(255,255,255,.3);cursor:pointer;overflow:hidden}
.hero-dots button span{display:block;height:100%;width:0;background:var(--oro);border-radius:4px}
.hero-dots button.on span{animation:heroProg var(--hero-dura,7000ms) linear forwards}
.hero.pausa .hero-dots button.on span{animation-play-state:paused}
.hero.sin-auto .hero-dots button.on span{animation:none;width:100%}
@keyframes heroProg{from{width:0}to{width:100%}}
.tema-c .hero-ctrl>button{border-color:var(--line);color:var(--vino);background:#fff}
.tema-c .hero-ctrl>button:hover{background:var(--vino);color:#fff}
.tema-c .hero-dots button{background:var(--rosa-2)}.tema-c .hero-dots button span{background:var(--vino)}
@media(max-width:900px){.hero[data-hero-slider] .copy{padding-bottom:40px}.hero-ctrl{position:static;justify-content:center;padding:18px 0 26px}}

/* v3.8 · video de fondo en el hero (hero.js): la foto queda de póster hasta que el video corre */
.hero .shot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease}
.hero .shot.con-video video{opacity:1}
.hero .shot.con-video img{animation:none}

/* v3.9 · hero A: la imagen/video ocupa toda la mitad derecha, de borde a borde y todo el alto */
.hero[data-hero-slider] .wrap{max-width:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(560px,calc(100vh - 120px),820px)}
.hero[data-hero-slider] .copy{padding-left:max(32px,calc((100vw - 1240px)/2 + 32px));padding-right:56px}
.hero[data-hero-slider] .shot{min-height:100%;height:100%}
.hero-ctrl{left:max(32px,calc((100vw - 1240px)/2 + 32px))}
@media(max-width:900px){.hero[data-hero-slider] .wrap{grid-template-columns:1fr;min-height:0}.hero[data-hero-slider] .copy{padding:56px 24px 32px}.hero[data-hero-slider] .shot{min-height:380px;height:380px}}
/* todas las diapositivas se estiran al alto de la más alta, y su foto/video con ellas */
.hero-slide{display:flex}
.hero-slide>.wrap{flex:1;width:100%}

/* v3.10 · tipografía animada del hero: el titular (dolor) entra palabra por palabra, la palabra clave
   se subraya en dorado, la cursiva y el párrafo llegan después y los botones cierran con un pulso */
.hero-slide .copy>h1,.hero-slide .copy>h2.h1{opacity:1;transform:none}
.hero .w{display:inline-block;opacity:0;transform:translateY(.45em);filter:blur(4px);transition:opacity .55s ease,transform .7s cubic-bezier(.2,.8,.2,1),filter .55s ease}
.hero-slide.on .w{opacity:1;transform:none;filter:none;transition-delay:calc(.15s + var(--i,0) * .09s)}
.hero .h-mark{position:relative;background:none;color:inherit;padding:0 .04em;white-space:nowrap}
.hero .h-mark::after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.16em;border-radius:.1em;background:var(--oro);opacity:.9;transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.6,.1,.2,1);z-index:-1}
.hero-slide.on .h-mark::after{transform:scaleX(1);transition-delay:calc(.45s + var(--n,6) * .09s)}
.hero .copy h1 em,.hero .copy h2.h1 em{opacity:0;transform:translateY(10px);transition:opacity .7s ease,transform .7s ease}
.hero-slide.on .copy h1 em,.hero-slide.on .copy h2.h1 em{opacity:1;transform:none;transition-delay:.9s}
.hero-slide.on .copy>.sub{transition-delay:1.15s}
.hero .sub b{color:#fff;font-weight:700}
.hero-slide.on .copy>.acts{transition-delay:1.4s}
.hero-slide.on .acts .btn-light{animation:heroPulso 1.6s ease 2.3s 1 both}
@keyframes heroPulso{0%{box-shadow:0 0 0 0 rgba(242,213,146,.0)}35%{box-shadow:0 0 0 8px rgba(242,213,146,.35)}100%{box-shadow:0 0 0 16px rgba(242,213,146,0)}}
@media(prefers-reduced-motion:reduce){.hero .w,.hero .copy h1 em,.hero .copy h2.h1 em{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.hero .h-mark::after{transform:scaleX(1)!important;transition:none!important}}
.hero .h-mark{z-index:0;isolation:isolate}
.hero .h-mark::after{height:.2em;bottom:.02em;opacity:1}

/* v3.11 · todo el texto del hero animado en orden de lectura (hero.js · animarTextos) */
.hero-slide .copy>*,.hero .copy h1 em,.hero .copy h2.h1 em{opacity:1!important;transform:none!important;transition:none!important}
.hero .w{display:inline-block;opacity:0;transform:translateY(.45em);filter:blur(4px);transition:opacity .5s ease,transform .65s cubic-bezier(.2,.8,.2,1),filter .5s ease,color .6s ease}
.hero-slide.on .w{opacity:1;transform:none;filter:none;transition-delay:calc(var(--b,0s) + var(--i,0) * var(--s,.05s))}
.hero .sub .w{transform:translateY(.6em)}
.hero .sub b .w{color:rgba(255,255,255,.85)}
.hero-slide.on .sub b .w{color:#fff;text-shadow:0 0 18px rgba(242,213,146,.0);animation:heroBrillo 1.2s ease both;animation-delay:calc(var(--b,0s) + var(--i,0) * var(--s,.05s) + .3s)}
@keyframes heroBrillo{0%{text-shadow:0 0 0 rgba(242,213,146,0)}40%{text-shadow:0 0 16px rgba(242,213,146,.55)}100%{text-shadow:0 0 0 rgba(242,213,146,0)}}
.hero-slide.on .h-mark::after{transition-delay:var(--t-mark,1s)}
.hero .copy>.eyebrow{clip-path:inset(0 100% 0 0);transition:clip-path .9s cubic-bezier(.6,.1,.2,1)!important}
.hero-slide.on .copy>.eyebrow{clip-path:inset(0 0 0 0)}
.hero .copy>.acts .btn{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.8,.2,1),background .18s,color .18s,border-color .18s}
.hero-slide.on .copy>.acts .btn{opacity:1;transform:none;transition-delay:var(--t-acts,1.6s),var(--t-acts,1.6s),0s,0s,0s}
.hero-slide.on .copy>.acts .btn+.btn{transition-delay:calc(var(--t-acts,1.6s) + .12s),calc(var(--t-acts,1.6s) + .12s),0s,0s,0s}
.hero-slide.on .acts .btn-light{animation:heroPulso 1.6s ease 1 both;animation-delay:calc(var(--t-acts,1.6s) + .7s)}
@media(prefers-reduced-motion:reduce){.hero .w,.hero .copy>.acts .btn{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;animation:none!important}.hero .copy>.eyebrow{clip-path:none!important}}

/* v3.12 · textura de papel sobre el vino del hero: ruido gris neutro (media 50 %) en overlay,
   así el vino conserva su tono y solo gana grano y manchas suaves de papel */
.hero[data-hero-slider]::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='.33 .33 .33 0 0 .33 .33 .33 0 0 .33 .33 .33 0 0 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
  background-size:240px 240px;mix-blend-mode:overlay;opacity:.22;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 46%,transparent 64%);mask-image:linear-gradient(90deg,#000 0,#000 46%,transparent 64%)}
.hero[data-hero-slider]::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='900'%3E%3Cfilter id='m' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.005 .011' numOctaves='4' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='.33 .33 .33 0 0 .33 .33 .33 0 0 .33 .33 .33 0 0 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23m)'/%3E%3C/svg%3E");
  background-size:900px 900px;mix-blend-mode:overlay;opacity:.28;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 46%,transparent 64%);mask-image:linear-gradient(90deg,#000 0,#000 46%,transparent 64%)}
.hero[data-hero-slider] .copy{position:relative;z-index:3}
.hero-ctrl{z-index:5}
@media(max-width:900px){.hero[data-hero-slider]::before,.hero[data-hero-slider]::after{-webkit-mask-image:none;mask-image:none}}

/* v3.13 · unión texto–video sin corte: el video/foto se DISUELVE (máscara de transparencia con curva suave)
   sobre el vino con textura, en vez de pintarle una capa vino encima (eso dejaba una franja rosada con borde) */
.hero[data-hero-slider] .shot::after{display:none}
.hero[data-hero-slider] .shot img,.hero[data-hero-slider] .shot video{
  -webkit-mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.04) 6%,rgba(0,0,0,.14) 13%,rgba(0,0,0,.3) 21%,rgba(0,0,0,.5) 30%,rgba(0,0,0,.7) 39%,rgba(0,0,0,.87) 48%,#000 58%);
  mask-image:linear-gradient(90deg,transparent 0,rgba(0,0,0,.04) 6%,rgba(0,0,0,.14) 13%,rgba(0,0,0,.3) 21%,rgba(0,0,0,.5) 30%,rgba(0,0,0,.7) 39%,rgba(0,0,0,.87) 48%,#000 58%)}
.hero[data-hero-slider]::before,.hero[data-hero-slider]::after{
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 50%,rgba(0,0,0,.6) 63%,transparent 80%);
  mask-image:linear-gradient(90deg,#000 0,#000 50%,rgba(0,0,0,.6) 63%,transparent 80%)}
@media(max-width:900px){
  .hero[data-hero-slider] .shot img,.hero[data-hero-slider] .shot video{
    -webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.35) 12%,rgba(0,0,0,.8) 26%,#000 36%);
    mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.35) 12%,rgba(0,0,0,.8) 26%,#000 36%)}
  .hero[data-hero-slider]::before,.hero[data-hero-slider]::after{-webkit-mask-image:none;mask-image:none}}
/* con la máscara, foto y video eran semitransparentes a la vez y se veía doble: mientras el video corre, la foto se oculta */
.hero[data-hero-slider] .shot img{transition:opacity .7s ease}
.hero[data-hero-slider] .shot.con-video img{opacity:0}
.rev-note[hidden]{display:none!important}

/* v3.14 · Safari no aplica bien mask-image sobre <video> y dejaba una línea clara en el borde:
   la máscara va en el contenedor (.shot), que agrupa foto y video, y se aísla en su propia capa */
.hero[data-hero-slider] .shot img,.hero[data-hero-slider] .shot video{-webkit-mask-image:none;mask-image:none}
.hero[data-hero-slider] .shot{isolation:isolate;transform:translateZ(0);
  -webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 1.5%,rgba(0,0,0,.04) 6%,rgba(0,0,0,.14) 13%,rgba(0,0,0,.3) 21%,rgba(0,0,0,.5) 30%,rgba(0,0,0,.7) 39%,rgba(0,0,0,.87) 48%,#000 58%);
  mask-image:linear-gradient(90deg,transparent 0,transparent 1.5%,rgba(0,0,0,.04) 6%,rgba(0,0,0,.14) 13%,rgba(0,0,0,.3) 21%,rgba(0,0,0,.5) 30%,rgba(0,0,0,.7) 39%,rgba(0,0,0,.87) 48%,#000 58%)}
@media(max-width:900px){.hero[data-hero-slider] .shot{
  -webkit-mask-image:linear-gradient(180deg,transparent 0,transparent 2%,rgba(0,0,0,.35) 12%,rgba(0,0,0,.8) 26%,#000 36%);
  mask-image:linear-gradient(180deg,transparent 0,transparent 2%,rgba(0,0,0,.35) 12%,rgba(0,0,0,.8) 26%,#000 36%)}}
/* franja de cifras un tono más clara (pedido de Erick): vino intermedio de la paleta */
.statband{background:var(--vino-700)}

/* v3.15 · animaciones al hacer scroll (animaciones.js). Todo oculto SOLO si el script marcó html.anim-on */
.anim-on [data-rv]{transition:opacity .8s ease,transform .9s cubic-bezier(.2,.8,.2,1),clip-path 1.1s cubic-bezier(.6,.1,.2,1);transition-delay:var(--d,0s)}
.anim-on [data-rv=sube]{opacity:0;transform:translateY(30px)}
.anim-on [data-rv=izq]{opacity:0;transform:translateX(-46px)}
.anim-on [data-rv=der]{opacity:0;transform:translateX(46px)}
.anim-on [data-rv=zoom]{opacity:0;transform:scale(.94)}
.anim-on [data-rv=pop]{opacity:0;transform:translateY(12px) scale(.85)}
.anim-on [data-rv].rv-in{opacity:1;transform:none}
/* títulos palabra por palabra */
.anim-on [data-rv=palabras] .rw{display:inline-block;opacity:0;transform:translateY(.5em);filter:blur(3px);transition:opacity .6s ease,transform .75s cubic-bezier(.2,.8,.2,1),filter .6s ease;transition-delay:calc(var(--i,0) * .06s)}
.anim-on [data-rv=palabras].rv-in .rw{opacity:1;transform:none;filter:none}
.anim-on .sec-head h2[data-rv]::after{transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.6,.1,.2,1) .5s}
.anim-on .sec-head h2.rv-in::after{transform:scaleX(1)}
/* etiquetas (eyebrow): se revelan de izquierda a derecha */
.anim-on [data-rv=linea]{clip-path:inset(0 100% 0 0)}
.anim-on [data-rv=linea].rv-in{clip-path:inset(0 0 0 0)}
/* fotos: barrido de revelado + parallax suave (--py lo pone el script) */
.anim-on [data-rv=foto]{clip-path:inset(0 0 100% 0);transform:translateY(var(--py,0px)) scale(1.06)}
.anim-on [data-rv=foto].rv-in{clip-path:inset(0 0 0 0);transform:translateY(var(--py,0px)) scale(1.06);transition:clip-path 1.2s cubic-bezier(.6,.1,.2,1),opacity .8s ease}
.split{overflow:hidden}
/* grupos dinámicos (blog): cada tarjeta entra escalonada */
.anim-on [data-rv=grupo]>*{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.8,.2,1),box-shadow .2s;transition-delay:var(--d,0s)}
.anim-on [data-rv=grupo]>.rv-hijo{opacity:1;transform:none}
.anim-on [data-rv=grupo]>.rv-hijo:hover{transform:translateY(-3px);transition-delay:0s}
/* barra de progreso de lectura, bajo el encabezado fijo */
.progreso-lectura{position:absolute;left:0;right:0;bottom:-3px;height:3px;background:linear-gradient(90deg,var(--teal),var(--azul),var(--salvia),var(--mostaza),var(--ciruela));transform:scaleX(0);transform-origin:left;pointer-events:none;z-index:2}
[data-part=nav]{position:sticky}
/* al subir, los elementos que salieron por arriba vuelven a entrar desde arriba */
.anim-on [data-rv=sube].rv-arriba{transform:translateY(-30px)}
.anim-on [data-rv=pop].rv-arriba{transform:translateY(-12px) scale(.85)}
.anim-on [data-rv=palabras].rv-arriba .rw{transform:translateY(-.5em)}
.anim-on [data-rv=grupo].rv-arriba>*{transform:translateY(-30px)}
.anim-on [data-rv].rv-in{opacity:1;transform:none}
.anim-on [data-rv=foto].rv-in{transform:translateY(var(--py,0px)) scale(1.06)}

/* v3.16 · video de sección (reunión con el sitio de Synergia en la laptop) */
.split-media{position:relative;min-height:340px;aspect-ratio:1/1;overflow:hidden;height:100%}
.split-media img,.split-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.split-media video{opacity:0;transition:opacity .8s ease}
.split-media img{transition:opacity .8s ease}
.split-media.con-video video{opacity:1}
.split-media.con-video img{opacity:0}
/* el recuadro del video ocupa exactamente su columna (sin desbordar sobre el texto) */
.split-media{width:100%;min-width:0;aspect-ratio:auto;height:100%;min-height:440px}
.anim-on .split-media[data-rv=foto],.anim-on .split-media[data-rv=foto].rv-in{transform:translateY(var(--py,0px))}
.split-media img,.split-media video{transform:scale(1.04)}
.split>div{position:relative;z-index:1}

/* 3-nov · sellos PYME + MEIC (placa blanca: el azul del MEIC no se lee sobre vino) */
.pyme .sellos{display:flex;align-items:center;gap:18px;padding:10px 20px;background:#fff;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.pyme .sellos img{display:block;height:auto}
.pyme .sellos img[src*="pyme"]{width:52px}
.pyme .sellos img[src*="meic"]{width:132px}
.pyme .sellos-div{width:1px;align-self:stretch;background:#e6dccd}
@media(max-width:600px){.pyme .sellos{padding:8px 14px;gap:14px}.pyme .sellos img[src*="pyme"]{width:44px}.pyme .sellos img[src*="meic"]{width:112px}}
