/* Comercial Corazón y DE ORO — estilos comunes. Móvil primero. */
:root{
  --rojo:#c8102e;--rojo-osc:#8f0a1f;--rojo-luz:#e8203f;--amarillo:#f6c445;
  --marino:#002060;--verde:#1a8a3a;--verde-osc:#126b2c;--crema:#fff8ec;--crema-2:#fff3e0;
  --borde:#f0e4cf;--tinta:#10203f;--gris:#55607a;--blanco:#fff;
  --oro:#a8780f;--oro-texto:#7d5806;--arena:#f3e2b3;--carbon:#1d1a14;--carbon-2:#2b261d;
  --marfil:#fffdf7;--marfil-borde:#e7dcc2;--ladrillo:#8a3b12;--cafe-gris:#6a5d4a;
  --mono:'IBM Plex Mono',ui-monospace,Consolas,monospace;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --cond:Archivo,'Arial Narrow',sans-serif;
  --sans:Manrope,'Segoe UI',system-ui,-apple-system,sans-serif;
  --radio:20px;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:16px}
body{margin:0;font-family:var(--sans);color:var(--tinta);background:var(--crema);font-size:16px;line-height:1.5;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--marino)}a:hover{color:var(--rojo)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--amarillo);outline-offset:3px;border-radius:4px}
.deoro :focus-visible{outline-color:var(--oro)}
.oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.saltar{position:absolute;left:12px;top:-60px;z-index:100;background:var(--marino);color:#fff;padding:10px 16px;border-radius:10px;font-weight:800}
.saltar:focus{top:12px;color:#fff}
.ancho{max-width:1280px;margin:0 auto;padding-inline:16px}
@media(min-width:700px){.ancho{padding-inline:24px}}
.mono{font-family:var(--mono);font-weight:700}
.mano{font-family:var(--serif);font-style:italic;font-weight:400;line-height:1;letter-spacing:-.01em;text-transform:none}
h1,h2,h3{margin:0;line-height:1.08;letter-spacing:-.01em}
p{margin:0}

/* ---------- botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border:0;border-radius:999px;font-weight:800;font-size:16px;text-decoration:none;cursor:pointer;text-align:center;line-height:1.15}
.btn svg{flex:none}
.btn-verde{background:var(--verde);color:#fff}.btn-verde:hover{background:var(--verde-osc);color:#fff}
.btn-blanco{background:#fff;color:var(--rojo-osc)}.btn-blanco:hover{color:var(--rojo)}
.btn-rojo{background:var(--rojo);color:#fff;border-radius:12px}.btn-rojo:hover{background:var(--rojo-osc);color:#fff}
.btn-carbon{background:var(--carbon);color:var(--arena)}.btn-carbon:hover{color:#fff}
.btn-borde{background:transparent;border:2px solid currentColor;color:var(--carbon)}
.btn-grande{min-height:58px;font-size:17px;padding:0 28px}
.btn-sombra{box-shadow:0 10px 24px rgba(0,0,0,.25)}

/* ---------- barra y encabezado ---------- */
.barra{background:var(--marino);color:#fff;font-size:14px}
.barra .ancho{display:flex;flex-wrap:wrap;gap:2px 24px;justify-content:space-between;padding-block:8px}
.barra a{color:#fff;font-weight:700;text-decoration:none}
.barra span{opacity:.88}
.cabeza{background:#fff;border-bottom:1px solid var(--borde);position:relative;z-index:5}
.cabeza .ancho{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px 20px;padding-block:12px}
.logo img{height:30px;width:auto;max-width:none}
.cabeza .btn-cot{white-space:nowrap}.cot-corto{display:none}
@media(max-width:420px){.cabeza .btn-cot svg,.cabeza .btn-cot .mi{display:none}.cabeza .btn-cot .cot-corto{display:inline}.cabeza .btn-cot{padding:0 14px}}
.cabeza .btn-cot{justify-self:end;min-height:44px;padding:0 16px;font-size:14px}
.menu{grid-column:1/-1;display:flex;gap:4px 16px;font-weight:800;font-size:15px;overflow-x:auto;scrollbar-width:none;margin-inline:-4px;padding:2px 4px}
.menu::-webkit-scrollbar{display:none}
@media(max-width:1199px){.menu{font-size:14px;gap:4px 14px;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent);padding-right:28px}}
.menu a{text-decoration:none;white-space:nowrap;padding:6px 0}
.menu a[aria-current="page"]{color:var(--rojo);box-shadow:inset 0 -3px 0 var(--rojo)}
.menu .m-oro{color:#8a6209}
.buscador{grid-column:1/-1;display:flex;align-items:center;gap:8px;background:var(--crema-2);border-radius:999px;padding:0 6px 0 16px;min-width:0}
.buscador input{border:0;background:transparent;height:46px;font-size:16px;width:100%;min-width:0}
.buscador input:focus{outline:none}.buscador:focus-within{outline:3px solid var(--amarillo);outline-offset:2px}
.buscador button{border:0;background:var(--marino);color:#fff;border-radius:999px;height:36px;padding:0 14px;font-weight:800;font-size:14px;cursor:pointer}
@media(min-width:1200px){
  .cabeza .ancho{grid-template-columns:auto auto minmax(220px,1fr) auto;gap:14px 22px}
  .menu{grid-column:auto;overflow:visible;margin:0;order:2}
  .buscador{grid-column:auto;order:3}
  .cabeza .btn-cot{order:4}
  .buscador button{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);padding:0}
  .buscador{padding-right:16px}
  .cabeza .btn-cot{min-height:46px;padding:0 20px;font-size:15px}
  .logo img{height:40px}
}

/* ---------- portada CC ---------- */
.luz{background:radial-gradient(circle at 72% 45%,var(--rojo-luz) 0,var(--rojo) 38%,var(--rojo-osc) 100%);color:#fff}
.portada .ancho{display:flex;flex-wrap:wrap;gap:28px 36px;align-items:center;padding-block:40px 52px}
.portada-texto{flex:1 1 480px;display:flex;flex-direction:column;gap:20px;min-width:0}
.etiqueta-pildora{align-self:start;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:rgba(255,255,255,.14);padding:8px 14px;border-radius:999px}
.portada h1{display:flex;flex-direction:column;gap:4px}
.portada h1 .grande{font-size:clamp(38px,6.2vw,84px);line-height:.95;font-weight:800;text-transform:uppercase;letter-spacing:-.02em}
.portada h1 .mano{font-size:clamp(44px,6.8vw,96px);color:var(--amarillo)}
.portada-texto>p{font-size:clamp(17px,1.6vw,20px);line-height:1.5;max-width:31em;color:#ffe9ec}
.acciones{display:flex;flex-wrap:wrap;gap:12px}
.stickers{flex:1 1 460px;min-width:0;position:relative;aspect-ratio:1/.92;max-width:640px;margin-inline:auto;width:100%}
.stickers .halo{position:absolute;left:14%;top:8%;width:72%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,233,170,.55) 0,rgba(255,233,170,0) 70%)}
.st{position:absolute;background:#fff;border-radius:22px;padding:3%;box-shadow:0 18px 36px rgba(60,0,10,.3)}
.st img{width:100%;aspect-ratio:1;object-fit:contain}
.st1{left:30%;top:2%;width:38%;transform:rotate(-3deg);padding:4%;border-radius:26px}
.st2{left:0;top:16%;width:28%;transform:rotate(-9deg)}
.st3{right:0;top:10%;width:28%;transform:rotate(8deg)}
.st4{left:4%;bottom:6%;width:32%;transform:rotate(5deg)}
.st5{left:38%;bottom:0;width:30%;transform:rotate(-4deg)}
.st6{right:2%;bottom:10%;width:24%;transform:rotate(10deg)}
.sello{position:absolute;right:22%;top:-3%;width:21%;height:auto;filter:drop-shadow(0 8px 14px rgba(0,0,0,.3));animation:girar 26s linear infinite}
.flota{animation:flotar 6s ease-in-out infinite}
@keyframes girar{to{transform:rotate(360deg)}}
@keyframes flotar{50%{translate:0 -8px}}
.cinta{background:var(--amarillo);color:var(--rojo-osc);overflow:hidden;border-block:3px solid var(--rojo-osc)}
.cinta-pista{display:flex;gap:34px;width:max-content;padding:13px 0;font-weight:800;font-size:clamp(16px,1.6vw,20px);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;animation:correr 38s linear infinite}
.cinta-pista a{color:inherit;text-decoration:none}
.cinta:hover .cinta-pista,.cinta:focus-within .cinta-pista{animation-play-state:paused}
@keyframes correr{to{transform:translateX(-50%)}}
.numeros{background:#fff}
.numeros .ancho{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;padding-block:32px}
@media(min-width:900px){.numeros .ancho{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));padding-block:44px}}
.numeros strong{display:block;font-size:clamp(38px,5vw,56px);line-height:1;color:var(--rojo);letter-spacing:-.02em}
.numeros span{color:var(--gris);font-size:15px}
.numeros strong span{font:inherit;color:inherit;letter-spacing:inherit}
.seccion{padding-block:clamp(48px,7vw,72px)}
.titulo{display:flex;flex-direction:column;gap:6px}
.titulo .mano{font-size:clamp(30px,3vw,38px);color:var(--rojo)}
.titulo h2,.titulo h1{font-size:clamp(28px,3.4vw,44px);font-weight:800;color:var(--marino);text-transform:uppercase}
.titulo p{font-size:17px;color:var(--gris);max-width:44em}
.mantel{background-color:var(--crema);background-image:repeating-linear-gradient(0deg,rgba(200,16,46,.13) 0 26px,transparent 26px 52px),repeating-linear-gradient(90deg,rgba(200,16,46,.13) 0 26px,transparent 26px 52px)}
.mantel-caja{background:var(--crema);border-radius:28px;padding:clamp(20px,3vw,36px);display:flex;flex-direction:column;gap:22px;box-shadow:0 20px 50px rgba(143,10,31,.14)}
.mantel-caja .cab{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:end}
.mantel-caja .mano{font-size:clamp(36px,4vw,46px);color:var(--rojo)}
.mantel-caja h2{font-size:clamp(24px,3vw,38px);font-weight:800;color:var(--marino);text-transform:uppercase}

/* ---------- tarjetas de producto ---------- */
.rejilla{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:640px){.rejilla{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}}
.tarjeta{background:#fff;border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:6px;border:2px solid #f3dcc4;min-width:0;position:relative}
@media(min-width:640px){.tarjeta{padding:16px;gap:8px}}
.tarjeta .foto{aspect-ratio:1;display:block;text-decoration:none;border-radius:12px;overflow:hidden;background:#fff}
.tarjeta .foto img{width:100%;height:100%;object-fit:contain}
.tarjeta .cod{font-family:var(--mono);font-weight:700;font-size:clamp(17px,2vw,20px);color:var(--marino);letter-spacing:.02em}
.tarjeta .nom{font-weight:800;font-size:15px;line-height:1.25;color:var(--tinta);text-decoration:none}
.tarjeta .nom::after{content:"";position:absolute;inset:0;border-radius:18px}
.tarjeta .nom:hover{color:var(--rojo)}
.tarjeta .pres{font-size:13.5px;color:var(--gris);line-height:1.35}
.tarjeta .btn-agregar{margin-top:auto;position:relative;z-index:1}
.btn-agregar{min-height:46px;border:0;border-radius:12px;background:var(--rojo);color:#fff;font-weight:800;font-size:14.5px;cursor:pointer;padding:6px 10px;line-height:1.2}
.btn-agregar:hover{background:var(--rojo-osc)}
.btn-agregar.en-lista{background:var(--verde)}
.tarjeta:hover{box-shadow:0 14px 30px rgba(143,10,31,.14)}
.sin-foto{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:var(--crema-2);color:var(--gris);font-size:13px;font-weight:700;text-align:center;padding:10px}
.sin-foto svg{width:40%;height:auto;opacity:.5}

/* ---------- categorías (bloques) ---------- */
.bloques{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:720px){.bloques{grid-template-columns:repeat(2,1fr);gap:18px}}
@media(min-width:1080px){.bloques{grid-template-columns:repeat(3,1fr)}}
.bloque{position:relative;overflow:hidden;border-radius:24px;padding:24px;min-height:200px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;text-decoration:none}
.bloque .txt{display:flex;flex-direction:column;gap:6px;max-width:58%;position:relative;z-index:1}
.bloque strong{font-size:clamp(22px,2.2vw,26px);line-height:1.05;text-transform:uppercase}
.bloque span{font-size:15px;line-height:1.4;opacity:.92}
.bloque .ver{font-weight:800;font-size:15px;position:relative;z-index:1}
.bloque .st-cat{position:absolute;right:-6%;bottom:-8%;width:50%;max-width:220px;background:#fff;border-radius:22px;padding:4%;box-shadow:0 16px 30px rgba(0,0,0,.18)}
.bloque .st-cat img{width:100%;aspect-ratio:1;object-fit:contain}
.bloque:hover .st-cat{transform:rotate(0deg)!important}
.otros-link{margin-top:6px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:16px}
.otros-link a{font-weight:800}

/* ---------- negocios ---------- */
.negocios{background:var(--marino);color:#fff}
.negocios .titulo h2{color:#fff}.negocios .titulo .mano{color:var(--amarillo)}.negocios .titulo p{color:#dfe6f5}
.lista-neg{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:640px){.lista-neg{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}}
.neg{background:#fff;color:var(--tinta);border-radius:20px;padding:16px;display:flex;gap:16px;align-items:center;text-decoration:none}
.neg .ico{width:80px;height:80px;flex:none;border-radius:16px;display:flex;align-items:center;justify-content:center}
.neg .ico img{width:64px;height:64px;object-fit:contain;mix-blend-mode:multiply}
.neg strong{font-size:19px;color:var(--marino);display:block}
.neg span{font-size:14px;color:var(--gris);line-height:1.4;display:block}
.neg em{font-style:normal;font-size:14px;font-weight:800;color:var(--rojo);display:block;margin-top:2px}
.neg:hover{color:var(--tinta)}.neg:hover strong{color:var(--rojo)}

/* ---------- cómo cotizar ---------- */
.como .ancho{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.como-texto{flex:1 1 480px;display:flex;flex-direction:column;gap:24px;min-width:0}
.pasos{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.pasos li{display:flex;gap:16px;align-items:start}
.pasos .n{flex:none;width:50px;height:50px;border-radius:50%;background:var(--rojo);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800}
.pasos li:last-child .n{background:var(--verde)}
.pasos strong{font-size:19px;display:block}
.pasos span{font-size:16px;color:var(--gris)}
.celu-caja{flex:0 1 360px;min-width:0;display:flex;justify-content:center;margin-inline:auto}
.celu{width:310px;max-width:100%;border:10px solid #10131a;border-radius:40px;overflow:hidden;background:#ece5dc;box-shadow:0 30px 60px rgba(16,32,63,.25);transform:rotate(2deg)}
.celu .wa-cab{background:#0b6b52;color:#fff;padding:14px 16px;font-weight:800;font-size:15px}
.celu .chat{padding:14px 12px 22px;display:flex;flex-direction:column;gap:10px;font-size:13px;line-height:1.5}
.burbuja{max-width:250px;border-radius:14px;padding:10px 12px;background:#fff}
.burbuja.mia{align-self:end;background:#d9fdd3;border-top-right-radius:4px}
.burbuja.suya{align-self:start;border-top-left-radius:4px}
.burbuja .mono{font-weight:500}

/* ---------- formularios ---------- */
.form{display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:560px){.form.dos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.form .ancho-total{grid-column:1/-1}
.campo{display:flex;flex-direction:column;gap:6px;min-width:0}
.campo label{font-weight:800;font-size:14px}
.campo .opc{font-weight:600;color:var(--gris)}
.campo input,.campo select,.campo textarea{min-height:50px;border:2px solid #ecdcc6;border-radius:12px;padding:10px 14px;font-size:16px;background:#fff;min-width:0;width:100%}
.campo textarea{min-height:84px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:none;border-color:var(--marino);box-shadow:0 0 0 3px rgba(246,196,69,.6)}
.campo input[aria-invalid="true"]{border-color:var(--rojo)}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aviso-form{font-size:14px;color:var(--gris)}
.error-form{color:var(--rojo);font-weight:700;font-size:14px}
.cliente .ancho{display:flex;flex-wrap:wrap;gap:36px;align-items:center}
.cliente-texto{flex:1 1 380px;display:flex;flex-direction:column;gap:14px;min-width:0}
.cliente-texto .mano{font-size:clamp(34px,3.6vw,40px);color:var(--amarillo)}
.cliente-texto h2{font-size:clamp(30px,3.8vw,50px);font-weight:800;text-transform:uppercase;line-height:1}
.cliente-texto p{font-size:18px;color:#ffe9ec}
.tarjeta-form{flex:1 1 460px;min-width:0;background:#fff;color:var(--tinta);border-radius:26px;padding:clamp(20px,3vw,30px);box-shadow:0 30px 60px rgba(60,0,10,.35)}

/* ---------- franja DE ORO y pie ---------- */
.franja-oro{background:var(--amarillo)}
.franja-oro .ancho{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between;padding-block:40px}
.franja-oro .marca{font-size:clamp(30px,4vw,40px);font-weight:800;letter-spacing:.16em;color:var(--carbon)}
.franja-oro p{font-size:18px;color:#3d2f12;max-width:34em}
.franja-oro .der{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.franja-oro .mini{background:#fff;border-radius:16px;padding:8px;transform:rotate(-4deg);box-shadow:0 10px 22px rgba(0,0,0,.15)}
.franja-oro .mini img{height:56px;width:auto}
.pie{background:#fff;border-top:1px solid var(--borde)}
.pie .ancho{display:flex;flex-wrap:wrap;gap:28px 56px;justify-content:space-between;padding-block:40px 110px}
.pie-datos{display:flex;flex-direction:column;gap:10px;flex:1 1 280px;font-size:15px;color:var(--gris)}
.pie-datos img{height:36px;width:auto;align-self:start}
.pie-datos a{color:var(--gris)}
.pie-links{display:grid;grid-template-columns:repeat(2,minmax(0,auto));gap:6px 28px;font-size:15px;font-weight:700;align-content:start}
.pie-links a{text-decoration:none;padding:4px 0}
.pie-cta{display:flex;flex-direction:column;gap:6px;align-items:start}
.pie-cta small{font-size:14px;font-weight:700;color:var(--gris);padding-left:8px}
.pie-legal{flex-basis:100%;font-size:13px;color:var(--gris)}

/* ---------- flotante y cajón de cotización ---------- */
.flotante{position:fixed;right:16px;bottom:16px;z-index:40;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 20px;background:var(--verde);color:#fff;border:0;border-radius:999px;font-weight:800;font-size:15px;box-shadow:0 12px 28px rgba(0,0,0,.25);cursor:pointer;text-decoration:none;max-width:calc(100vw - 32px)}
.flotante:hover{background:var(--verde-osc);color:#fff}
.flotante .num{background:#fff;color:var(--verde-osc);border-radius:999px;min-width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;font-size:14px}
.cajon{border:0;padding:0;margin:0 0 0 auto;width:min(480px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;background:#fff;color:var(--tinta);box-shadow:-20px 0 50px rgba(0,0,0,.25)}
.cajon::backdrop{background:rgba(16,32,63,.5)}
.cajon[open]{animation:entrar .22s ease-out}
@keyframes entrar{from{transform:translateX(40px);opacity:.4}}
.cajon-in{display:flex;flex-direction:column;height:100%}
.cajon-cab{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--borde);background:var(--crema)}
.cajon-cab h2{font-size:22px;font-weight:800;color:var(--marino)}
.cerrar{width:44px;height:44px;border:0;border-radius:50%;background:#fff;font-size:26px;line-height:1;cursor:pointer;color:var(--tinta)}
.cajon-cuerpo{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:18px}
.lineas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.linea{display:grid;grid-template-columns:56px 1fr;gap:6px 12px;align-items:center;border:1px solid var(--borde);border-radius:14px;padding:10px}
.linea img,.linea .sin-foto{width:56px;height:56px;object-fit:contain;border-radius:8px}
.linea .cod{font-family:var(--mono);font-weight:700;color:var(--marino);font-size:15px}
.linea .nom{font-weight:700;font-size:14px;line-height:1.3}
.linea .ctrl{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px}
.paso{display:flex;align-items:center;border:2px solid var(--tinta);border-radius:12px;height:44px}
.paso button{width:42px;height:40px;border:0;background:transparent;font-size:20px;font-weight:800;cursor:pointer}
.paso input{width:52px;height:40px;border:0;text-align:center;font-weight:800;font-size:16px;-moz-appearance:textfield;background:transparent}
.paso input::-webkit-inner-spin-button,.paso input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.paso .uni{font-size:13px;font-weight:700;color:var(--gris);padding-right:10px}
.quitar{border:0;background:none;color:var(--rojo);font-weight:700;font-size:14px;cursor:pointer;text-decoration:underline;min-height:44px}
.vacio{background:var(--crema);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:12px;font-size:15px}
.vacio strong{font-size:17px}
.cajon-pie{border-top:1px solid var(--borde);padding:12px 16px 16px;display:flex;flex-direction:column;gap:8px;background:#fff}
.cajon-pie .btn{width:100%}
.link-foto{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--verde-osc)}
.aviso{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);z-index:60;background:var(--tinta);color:#fff;border-radius:14px;padding:12px 14px 12px 18px;display:flex;gap:12px;align-items:center;font-size:15px;box-shadow:0 12px 30px rgba(0,0,0,.3);width:max-content;max-width:calc(100vw - 32px)}
.aviso button{border:0;background:var(--amarillo);color:var(--tinta);font-weight:800;border-radius:10px;min-height:40px;padding:0 12px;cursor:pointer;white-space:nowrap}
.aviso[hidden]{display:none}

/* ---------- páginas internas ---------- */
.cab-pag{padding-block:32px 24px}
.migas{font-size:14px;color:var(--gris);display:flex;flex-wrap:wrap;gap:4px 8px;margin-bottom:12px}
.migas a{color:var(--gris)}
.migas span[aria-hidden]{opacity:.6}
.filtros{display:flex;flex-direction:column;gap:12px;margin-bottom:22px}
.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px;margin-inline:-2px}
.chips::-webkit-scrollbar{display:none}
.chip{flex:none;min-height:42px;padding:0 16px;border-radius:999px;border:2px solid var(--borde);background:#fff;font-weight:800;font-size:14px;cursor:pointer;color:var(--tinta);text-decoration:none;display:inline-flex;align-items:center}
.chip[aria-pressed="true"],.chip[aria-current="page"]{background:var(--marino);border-color:var(--marino);color:#fff}
.buscar-cat{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--borde);border-radius:14px;padding:0 14px;max-width:560px}
.buscar-cat:focus-within{border-color:var(--marino)}
.buscar-cat input{border:0;height:50px;width:100%;font-size:16px;background:transparent;min-width:0}
.buscar-cat input:focus{outline:none}
.contador{font-size:14px;color:var(--gris);font-weight:700}
.sin-resultados{background:#fff;border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:12px;align-items:start}
.texto-largo{max-width:46em;display:flex;flex-direction:column;gap:16px;font-size:17px;line-height:1.65}
.texto-largo h2{font-size:24px;font-weight:800;color:var(--marino);margin-top:12px}
.texto-largo ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.caja-blanca{background:#fff;border-radius:24px;padding:clamp(20px,3vw,36px)}
.dos-col{display:grid;grid-template-columns:1fr;gap:28px}
@media(min-width:900px){.dos-col{grid-template-columns:1.2fr 1fr;gap:48px}}
.preguntas details{border-bottom:1px solid var(--borde);padding:14px 0}
.preguntas summary{font-weight:800;font-size:17px;cursor:pointer;min-height:32px}
.preguntas details p{margin-top:8px;color:var(--gris)}

/* ---------- ficha de producto ---------- */
.ficha{display:grid;grid-template-columns:1fr;gap:24px;padding-block:8px 48px}
@media(min-width:900px){.ficha{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:48px;align-items:start}}
.ficha-foto{background:#fff;border-radius:26px;padding:clamp(16px,3vw,36px);aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:2px solid #f3dcc4}
.ficha-foto img{width:100%;height:100%;object-fit:contain}
.ficha-info{display:flex;flex-direction:column;gap:16px;min-width:0}
.ficha-cod{font-family:var(--mono);font-weight:700;font-size:clamp(30px,4vw,44px);color:var(--marino);letter-spacing:.03em;line-height:1}
.ficha-cod small{display:block;font-family:var(--sans);font-size:13px;font-weight:700;color:var(--gris);letter-spacing:0;margin-bottom:6px}
.ficha h1{font-size:clamp(28px,3.6vw,44px);font-weight:800;line-height:1.08}
.ficha .pres{font-size:19px;font-weight:700}
.disponible{align-self:start;font-size:14px;font-weight:800;color:#13632b;background:#e5f4ea;padding:6px 14px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}
.disponible::before{content:"";width:8px;height:8px;border-radius:50%;background:#1a8a3a}
.datos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--borde);border-radius:14px;overflow:hidden;background:#fff}
.datos div{padding:12px 14px;border-bottom:1px solid var(--borde);display:flex;flex-direction:column;gap:2px;min-width:0}
.datos div:nth-child(odd){border-right:1px solid var(--borde)}
.datos dt{font-size:13px;font-weight:700;color:var(--gris)}
.datos dd{margin:0;font-weight:800;font-size:16px}
.agregar-ficha{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.agregar-ficha .paso{height:54px}
.agregar-ficha .paso button{height:50px}
.agregar-ficha .btn-agregar{min-height:54px;padding:0 24px;font-size:16px}
.va-con{display:flex;flex-direction:column;gap:10px;padding-top:6px}
.va-con h2{font-size:18px;font-weight:800}
.va-item{display:grid;grid-template-columns:64px 1fr;gap:4px 14px;align-items:center;background:#fff;border:1px solid var(--borde);border-radius:14px;padding:10px 12px}
.va-item img,.va-item .sin-foto{width:64px;height:64px;object-fit:contain;grid-row:span 2}
.va-item .cod{font-family:var(--mono);font-weight:700;color:var(--marino)}
.va-item a{font-weight:800;color:var(--tinta);text-decoration:none;line-height:1.25}
.va-item a:hover{color:var(--rojo)}
.va-item .pres{font-size:13px;color:var(--gris)}
.va-item .btn-agregar{grid-column:1/-1;min-height:42px;background:transparent;border:2px solid var(--tinta);color:var(--tinta)}
.va-item .btn-agregar.en-lista{background:var(--verde);border-color:var(--verde);color:#fff}
@media(min-width:560px){.va-item{grid-template-columns:64px 1fr auto}.va-item .btn-agregar{grid-column:3;grid-row:1/span 2}}

/* ---------- página de negocio ---------- */
.neg-cab{padding-block:40px}
.neg-cab .ancho{display:flex;flex-direction:column;gap:14px}
.neg-cab .mano{font-size:clamp(32px,3.4vw,40px);color:var(--amarillo)}
.neg-cab h1{font-size:clamp(32px,4.6vw,58px);font-weight:800;text-transform:uppercase;line-height:1}
.neg-cab p{font-size:18px;max-width:36em;color:#ffe9ec}

/* ======================================================= DE ORO */
body.deoro{background:#f7f3ea;color:var(--carbon)}
.deoro a{color:var(--carbon)}.deoro a:hover{color:var(--oro-texto)}
.deoro a.btn-carbon,.deoro a.btn-carbon:hover{color:var(--arena)}.deoro a.btn-verde,.deoro a.btn-verde:hover,.deoro .barra a{color:#fff}
.cc a.btn-verde,.cc a.btn-verde:hover,.cc a.btn-rojo,.cc a.btn-rojo:hover{color:#fff}
.deoro .cabeza{background:var(--marfil);border-color:var(--marfil-borde)}
.marca-oro{display:flex;flex-direction:column;text-decoration:none;line-height:1}
.marca-oro b{font-size:28px;font-weight:800;letter-spacing:.16em;color:var(--oro)}
.marca-oro small{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cafe-gris);padding-top:4px}
.deoro .menu a[aria-current="page"]{color:var(--oro-texto);box-shadow:inset 0 -3px 0 var(--oro)}
.deoro .buscador{background:#f3ead4}
.deoro .buscador button{background:var(--carbon);color:var(--arena)}
.oro-portada{background:var(--arena)}
.oro-portada .ancho{display:flex;flex-wrap:wrap;gap:32px 40px;align-items:center;padding-block:44px 52px}
.oro-portada .txt{flex:1 1 440px;display:flex;flex-direction:column;gap:20px;min-width:0}
.oro-portada .mano{font-size:clamp(30px,3vw,38px);color:var(--ladrillo)}
.oro-portada h1{font-size:clamp(36px,5vw,62px);line-height:1.03;font-weight:800;letter-spacing:-.02em;text-wrap:balance}
.oro-portada p{font-size:clamp(17px,1.6vw,19px);line-height:1.55;color:#4a3f2c;max-width:32em}
.oro-fotos{flex:1 1 440px;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.oro-fotos a{background:#fff;border-radius:22px;padding:14px;display:flex;align-items:center;justify-content:center}
.oro-fotos a:first-child{grid-column:span 2;aspect-ratio:2/1}
.oro-fotos a:not(:first-child){aspect-ratio:4/3}
.oro-fotos img{width:100%;height:100%;object-fit:contain}
.oro-titulo{display:flex;flex-direction:column;gap:6px}
.oro-titulo .mano{font-size:clamp(28px,3vw,34px);color:var(--ladrillo)}
.oro-titulo h2,.oro-titulo h1{font-size:clamp(28px,3.4vw,40px);font-weight:800;line-height:1.1}
.oro-titulo p{font-size:17px;color:var(--cafe-gris);max-width:44em}
.lineas-oro{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:560px){.lineas-oro{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}}
.linea-oro{background:var(--marfil);border:1px solid var(--marfil-borde);border-radius:16px;padding:14px;display:flex;gap:16px;align-items:center;text-decoration:none}
.linea-oro img{width:80px;height:80px;object-fit:contain;flex:none;border-radius:10px}
.linea-oro strong{font-size:17px;display:block;line-height:1.25}
.linea-oro span{font-size:14px;color:var(--cafe-gris)}
.linea-oro:hover{border-color:var(--oro);box-shadow:0 10px 24px rgba(60,40,0,.12)}
.deoro .tarjeta{background:var(--marfil);border-color:var(--marfil-borde)}
.deoro .tarjeta .cod,.deoro .ficha-cod,.deoro .va-item .cod,.deoro .linea .cod{color:var(--oro-texto)}
.deoro .tarjeta .nom{color:var(--carbon)}
.deoro .btn-agregar{background:var(--carbon);color:var(--arena)}
.deoro .btn-agregar:hover{background:#000}
.deoro .btn-agregar.en-lista{background:var(--verde);color:#fff}
.deoro .va-item .btn-agregar{background:transparent;color:var(--carbon);border-color:var(--carbon)}
.deoro .va-item .btn-agregar.en-lista{background:var(--verde);border-color:var(--verde);color:#fff}
.deoro .ficha-foto{background:var(--marfil);border-color:var(--marfil-borde)}
.deoro .datos,.deoro .va-item{background:var(--marfil);border-color:var(--marfil-borde)}
.deoro .datos div{border-color:var(--marfil-borde)}
.deoro .chip[aria-pressed="true"],.deoro .chip[aria-current="page"]{background:var(--carbon);border-color:var(--carbon);color:var(--arena)}
.deoro .cajon-cab{background:#f7f3ea}
.deoro .cajon-cab h2{color:var(--carbon)}
.calc{background:var(--carbon);color:var(--marfil)}
.calc .ancho{display:flex;flex-wrap:wrap;gap:28px 56px;align-items:start;padding-block:clamp(44px,6vw,64px)}
.calc-txt{flex:1 1 340px;display:flex;flex-direction:column;gap:12px;min-width:0}
.calc-txt .mano{font-size:clamp(30px,3vw,36px);color:#e9c46a}
.calc-txt h2,.calc-txt h1{font-size:clamp(28px,3.4vw,40px);font-weight:800;line-height:1.1}
.calc-txt p{font-size:17px;opacity:.88}
.calc-caja{flex:1 1 480px;min-width:0;background:var(--carbon-2);border-radius:20px;padding:clamp(16px,3vw,26px);display:flex;flex-direction:column;gap:16px}
.calc-personas{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.calc-personas label{font-weight:800;font-size:17px}
.calc .paso{border-color:#e9c46a;color:#e9c46a}
.calc .paso input{color:#fff;width:84px;font-size:20px}
.calc .paso button{color:#e9c46a}
.calc-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.calc-item{display:grid;grid-template-columns:52px 1fr auto;gap:4px 12px;align-items:center;background:var(--marfil);color:var(--carbon);border-radius:14px;padding:10px 12px}
.calc-item img{width:52px;height:52px;object-fit:contain;grid-row:span 2}
.calc-item .n{font-weight:800;font-size:15px;line-height:1.25}
.calc-item .d{font-size:13px;color:var(--cafe-gris);grid-column:2}
.calc-item .r{font-weight:800;font-size:21px;white-space:nowrap;grid-row:1/span 2;grid-column:3;text-align:right}
.calc-item .r small{display:block;font-size:12px;font-weight:700;color:var(--cafe-gris)}
.calc-item .acc{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;border-top:1px dashed var(--marfil-borde);padding-top:8px}
.calc-item select{min-height:40px;border:2px solid var(--marfil-borde);border-radius:10px;padding:0 8px;background:#fff;font-size:14px;font-weight:700}
.calc-item .btn-agregar{min-height:40px;font-size:14px;padding:0 14px}
.calc .acciones{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.calc-pasos{flex:1 1 380px;min-width:0;background:var(--carbon-2);border-radius:20px;padding:clamp(18px,3vw,28px)}
.calc-pasos .n{background:#e9c46a;color:var(--carbon)}
.calc-pasos li:last-child .n{background:var(--verde);color:#fff}
.calc-pasos span{color:var(--marfil);opacity:.8}
.checks{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.checks legend{font-weight:800;margin-bottom:8px;padding:0}
.checks label{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;border:2px solid var(--marfil-borde);background:#fff;font-weight:700;font-size:15px;cursor:pointer}
.checks input{width:18px;height:18px;margin:0;accent-color:var(--carbon)}
.checks label:has(input:checked){border-color:var(--carbon);background:var(--arena)}
.calc-nota{font-size:14px;opacity:.8}
@media(max-width:559px){.calc-item{grid-template-columns:48px 1fr}.calc-item img{width:48px;height:48px}.calc-item .r{grid-column:1/-1;grid-row:auto;text-align:left;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.calc-item .r small{display:inline}}
.calc .btn-verde{width:100%}
.oro-pie{background:var(--marfil);border-top:1px solid var(--marfil-borde)}
.oro-pie .ancho{display:flex;flex-wrap:wrap;gap:24px 56px;justify-content:space-between;align-items:start;padding-block:40px 110px}
.oro-pie .col{display:flex;flex-direction:column;gap:6px;font-size:15px;color:var(--cafe-gris)}
.oro-pie .col a{color:var(--cafe-gris)}
.oro-pie b.m{font-size:26px;font-weight:800;letter-spacing:.16em;color:var(--oro)}
.oro-pie img{height:30px;width:auto}
.oro-ficha-dest{background:var(--marfil);border-block:1px solid var(--marfil-borde)}


/* ---------- video de portada ---------- */
.portada{position:relative;overflow:hidden}
.portada .ancho{position:relative;z-index:1}
.portada-fondo{position:absolute;inset:0;z-index:0}
.portada-fondo video{width:100%;height:100%;object-fit:cover;display:block}
.portada-fondo::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(80,4,16,.86) 0%,rgba(143,10,31,.66) 48%,rgba(143,10,31,.42) 100%)}

/* ---------- muro de marcas ---------- */
.marcas-sec{background:#fff;border-top:1px solid var(--borde)}
.cab-marcas{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:end}
.muro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:640px){.muro{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(min-width:1000px){.muro{grid-template-columns:repeat(4,minmax(0,1fr))}}
.marca-t{display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;background:var(--crema);border:2px solid #f3dcc4;border-radius:18px;padding:12px 14px;text-decoration:none;color:var(--tinta);min-width:0}
.marca-f{grid-row:span 2;width:72px;height:72px;background:#fff;border-radius:14px;overflow:hidden;display:block}
.marca-f img{width:100%;height:100%;object-fit:contain}
.marca-t strong{font-size:clamp(17px,1.7vw,21px);font-weight:800;letter-spacing:-.015em;line-height:1.1;align-self:end;overflow-wrap:anywhere}
.marca-v{font-size:13px;font-weight:700;color:var(--rojo);align-self:start}
.marca-t:hover{border-color:var(--rojo);color:var(--tinta)}
.marca-t.m-deoro strong{letter-spacing:.14em;color:#8a6209}
@media(max-width:400px){.marca-t{grid-template-columns:56px 1fr;padding:10px;column-gap:10px}.marca-f{width:56px;height:56px}.marca-v{font-size:12px}}

/* ---------- fabricantes ---------- */
.cifras-fab{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin-top:8px}
.cifras-fab strong{display:block;font-size:clamp(28px,3.2vw,40px);line-height:1;color:var(--amarillo);letter-spacing:-.02em}
.cifras-fab span{font-size:15px;color:#ffe9ec}

/* ---------- línea del tiempo ---------- */
.linea-tiempo{list-style:none;margin:0;padding:0;position:relative;display:flex;flex-direction:column;gap:30px}
.linea-tiempo::before{content:"";position:absolute;left:17px;top:12px;bottom:12px;border-left:4px dashed rgba(200,16,46,.45)}
.hito{position:relative;padding-left:52px;display:grid;gap:14px}
.hito::before{content:"";position:absolute;left:8px;top:4px;width:22px;height:22px;border-radius:50%;background:var(--rojo);box-shadow:0 0 0 6px var(--crema)}
.hito .ilus{background:#fff;border-radius:22px;overflow:hidden;aspect-ratio:16/11;border:2px solid #f3dcc4}
.hito .ilus svg,.hito .ilus img{width:100%;height:100%;display:block;object-fit:cover}
.hito-txt{display:flex;flex-direction:column;gap:6px}
.hito .fecha{font-size:clamp(32px,3.4vw,42px);color:var(--rojo);line-height:1}
.hito h3{font-size:22px;font-weight:800;color:var(--marino)}
.hito p{font-size:17px;color:var(--gris);max-width:30em}
@media(min-width:900px){
  .linea-tiempo{gap:44px}
  .linea-tiempo::before{left:50%;margin-left:-2px}
  .hito{grid-template-columns:1fr 1fr;padding-left:0;gap:72px;align-items:center}
  .hito::before{left:50%;margin-left:-11px;top:50%;margin-top:-11px}
  .hito:nth-child(even) .ilus{order:2}
  .hito:nth-child(even) .hito-txt{text-align:right;align-items:end}
}

/* ---------- especias: saco de yute hecho con CSS ---------- */
:root{--canela:#8a4a1c;--canela-osc:#5e2f10;--curcuma:#e0a526;--pimienta:#4a3426;--yute-claro:#ffe6c7}
.franja-esp .ancho{display:flex;flex-wrap:wrap;gap:28px 40px;align-items:center;padding-block:clamp(40px,6vw,64px)}
.esp-texto{flex:1 1 420px;display:flex;flex-direction:column;gap:16px;min-width:0}
.esp-texto .mano{color:var(--curcuma);font-size:clamp(30px,3.2vw,42px)}
.esp-titulo{font-size:clamp(32px,4.2vw,56px);font-weight:800;text-transform:uppercase;line-height:1;letter-spacing:-.02em}
.esp-texto p{font-size:clamp(17px,1.6vw,19px);line-height:1.55;color:var(--yute-claro);max-width:32em}
.btn-curcuma{background:var(--curcuma);color:#3b2410}.btn-curcuma:hover{background:#f0b93a;color:#3b2410}
.btn-borde-claro{background:transparent;border:2px solid #fff3e0;color:#fff3e0}.btn-borde-claro:hover{background:rgba(255,255,255,.12);color:#fff}
.cc a.btn-curcuma,.cc a.btn-curcuma:hover{color:#3b2410}.cc a.btn-borde-claro{color:#fff3e0}
.esp-stickers{flex:1 1 420px;min-width:0;position:relative;aspect-ratio:1/.72;max-width:560px;margin-inline:auto;width:100%}
.est1{left:2%;top:6%;width:30%;transform:rotate(-7deg)}
.est2{left:34%;top:0;width:32%;transform:rotate(4deg)}
.est3{right:0;top:10%;width:28%;transform:rotate(9deg)}
.est4{left:8%;bottom:0;width:27%;transform:rotate(5deg)}
.est5{left:38%;bottom:4%;width:26%;transform:rotate(-5deg)}
.est6{right:4%;bottom:0;width:25%;transform:rotate(-9deg)}
.esp-stickers .st{box-shadow:0 18px 34px rgba(40,15,0,.4)}
.m-esp{color:#8a4a1c!important}
.puertas{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:860px){.puertas{grid-template-columns:1fr 1fr;gap:24px}}
.puerta{background:#fff;border:2px solid #f3dcc4;border-radius:24px;padding:clamp(20px,3vw,32px);display:flex;flex-direction:column;gap:14px;align-items:start}
.puerta .mano{color:var(--rojo);font-size:clamp(26px,2.6vw,34px)}
.puerta .esp-titulo{font-size:clamp(24px,2.8vw,34px);color:var(--marino)}
.puerta-empaca{background:#fff7ea;border-color:#e9cfa3}
.puerta-empaca .mano{color:var(--canela)}
.lista-check{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:18px;font-weight:700}
.lista-check li{display:flex;gap:10px;align-items:center}
.lista-check li::before{content:"";flex:none;width:22px;height:22px;border-radius:50%;background:var(--curcuma) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%233b2410' stroke-width='3'/%3E%3C/svg%3E") center/16px no-repeat}
.esp-temporadas{background:#fff7ea}
.temporadas{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:900px){.temporadas{grid-template-columns:repeat(3,1fr)}}
.temporada{background:#fff;border-radius:20px;padding:20px;border-top:8px solid var(--curcuma);display:flex;flex-direction:column;gap:10px}
.temporada:nth-child(2){border-top-color:var(--rojo)}.temporada:nth-child(3){border-top-color:var(--pimienta)}
.temporada .meses{font-size:14px;font-weight:800;color:var(--canela)}
.temporada h3{font-size:21px;font-weight:800;color:var(--marino);line-height:1.2}
.temporada p{color:var(--gris)}
.temporada ul{margin:0;padding-left:18px;display:grid;gap:4px;font-size:15px}
.temporada .mono{color:var(--marino);font-size:14px}
.temporada .btn{margin-top:auto;width:100%;min-height:48px;font-size:15px}
.esp-grupo{display:flex;flex-direction:column;gap:14px}
.esp-grupo h3{font-size:22px;font-weight:800;color:var(--canela);border-bottom:2px dashed #e9cfa3;padding-bottom:6px}
.cliente-flex{display:flex;flex-wrap:wrap;gap:36px;align-items:center}
.esp-volumen .cliente-texto .mano{color:var(--curcuma)}
.esp-volumen .cliente-texto p{color:var(--yute-claro)}
.guias{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:800px){.guias{grid-template-columns:1fr 1fr}}
.guia-t{background:#fff;border:2px solid #f3dcc4;border-radius:20px;padding:20px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--tinta)}
.guia-t strong{font-size:20px;color:var(--marino);line-height:1.25}
.guia-t span{color:var(--gris)}
.guia-t em{font-style:normal;font-weight:800;color:var(--rojo)}
.guia-t:hover{border-color:var(--canela);color:var(--tinta)}
.guia .guia-intro{font-size:19px;font-weight:600;color:var(--tinta)}

/* ---------- filtro por marca ---------- */
.filtros-fila{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.filtros-fila .buscar-cat{flex:1 1 300px}
.sel-marca{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px}
.sel-marca select{min-height:50px;border:2px solid var(--borde);border-radius:14px;padding:0 12px;background:#fff;font-size:15px;font-weight:700;max-width:220px}
.sel-marca select:focus{outline:none;border-color:var(--marino)}

/* ======================================================= MUNDO DE ESPECIAS
   Paleta propia: canela, cúrcuma, pimentón, crema de saco y tinta café. El rojo corazón queda
   solo en los botones de cotización. */
:root{--e-canela:#8B4A22;--e-canela-osc:#5E2F10;--e-curcuma:#E3A21A;--e-pimenton:#B8341B;--e-crema:#F1E4C8;--e-tinta:#3A2416;--e-tinta-2:#6B4A33;--e-borde:#E0CBA2;
  --ruido:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='r'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .2 0 0 0 0 .12 0 0 0 0 .05 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23r)'/%3E%3C/svg%3E")}
body.mundo-especias{background:var(--e-crema);color:var(--e-tinta)}
.mundo-especias a{color:var(--e-canela)}.mundo-especias a:hover{color:var(--e-pimenton)}
.mundo-especias .barra a,.mundo-especias .cinta-temp a,.mundo-especias a.btn-verde,.mundo-especias a.btn-rojo{color:#fff}.mundo-especias a.btn-curcuma{color:#3b2410}
.mundo-especias .titulo h1,.mundo-especias .titulo h2{color:var(--e-canela-osc)}
.mundo-especias .titulo .mano{color:var(--e-pimenton)}
.mundo-especias .titulo p,.mundo-especias .migas,.mundo-especias .migas a,.mundo-especias .contador{color:var(--e-tinta-2)}
.mundo-especias .chip{border-color:var(--e-borde);background:#fbf3e2;color:var(--e-tinta)}
.mundo-especias .chip[aria-pressed="true"],.mundo-especias .chip[aria-current="page"]{background:var(--e-canela);border-color:var(--e-canela);color:#fff}
.mundo-especias .buscar-cat,.mundo-especias .sel-marca select{border-color:var(--e-borde);background:#fbf3e2}
.mundo-especias .caja-blanca{background:#fbf3e2}
.mundo-especias .texto-largo h2{color:var(--e-canela-osc)}
.mundo-especias .esp-temporadas{background:#ecdcb9}
.mundo-especias .puerta{background:#fbf3e2;border-color:var(--e-borde)}
.mundo-especias .puerta .esp-titulo{color:var(--e-canela-osc)}
.mundo-especias .puerta .mano{color:var(--e-pimenton)}
.mundo-especias .puerta-empaca .mano{color:var(--e-canela)}
.mundo-especias .temporada{background:#fbf3e2}
.mundo-especias .temporada h3{color:var(--e-canela-osc)}
.mundo-especias .temporada:nth-child(2){border-top-color:var(--e-pimenton)}
.mundo-especias .guia-t{background:#fbf3e2;border-color:var(--e-borde)}
.mundo-especias .guia-t strong{color:var(--e-canela-osc)}
.mundo-especias .guia-t em{color:var(--e-pimenton)}
.mundo-especias .va-item,.mundo-especias .datos{background:#fbf3e2;border-color:var(--e-borde)}
.mundo-especias .datos div{border-color:var(--e-borde)}
.mundo-especias .tarjeta:not(.kraft){background:#fbf3e2;border-color:var(--e-borde)}
.mundo-especias .tarjeta .cod{color:var(--e-canela-osc)}
.chip .ico-esp{width:22px;height:22px;margin:-4px 6px -4px -6px;flex:none}
.esp-grupo h3{display:flex;align-items:center;gap:10px}
.esp-grupo h3 .ico-esp{width:40px;height:40px;flex:none}

/* yute más creíble: dos tramas cruzadas, hebras gruesas y ruido */
.yute{position:relative;overflow:hidden;background-color:var(--e-canela);color:#fff3e0;
  background-image:var(--ruido),
    repeating-linear-gradient(0deg,rgba(255,224,170,.16) 0 1px,rgba(60,25,5,.10) 1px 3px,transparent 3px 7px),
    repeating-linear-gradient(90deg,rgba(255,224,170,.12) 0 2px,rgba(50,20,4,.22) 2px 4px,transparent 4px 7px),
    repeating-linear-gradient(90deg,transparent 0 41px,rgba(50,20,4,.18) 41px 43px),
    radial-gradient(ellipse at 82% 25%,rgba(227,162,26,.40),transparent 55%),
    radial-gradient(ellipse at 6% 95%,rgba(94,47,16,.80),transparent 60%);
  background-size:160px 160px,auto,auto,auto,auto,auto}
.yute>.ancho{position:relative;z-index:1}
.sello-saco{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-7deg);z-index:0;pointer-events:none;width:max-content;max-width:none}
.sello-saco span{display:block;font-family:'Stardos Stencil',Impact,'Arial Black',sans-serif;font-weight:700;font-size:clamp(26px,4.2vw,62px);line-height:1.05;text-align:center;
  letter-spacing:.06em;white-space:nowrap;color:rgba(40,16,2,.30);border:6px solid rgba(40,16,2,.26);border-radius:10px;padding:.05em .35em;
  -webkit-mask-image:linear-gradient(#000,#000),var(--ruido);mask-image:linear-gradient(#000,#000),var(--ruido);
  -webkit-mask-composite:source-out;mask-composite:subtract;-webkit-mask-size:100% 100%,220px 220px;mask-size:100% 100%,220px 220px}
.orla-esp{display:flex;gap:18px;overflow:hidden;white-space:nowrap;padding:8px 0;opacity:.9;position:relative;z-index:1;justify-content:center}
.orla-esp .ico-esp{flex:none;filter:drop-shadow(0 1px 0 rgba(255,240,210,.35))}
.orla-esp.abajo{transform:scaleX(-1)}
.franja-esp .orla-esp{background:rgba(241,228,200,.92)}

/* etiquetas kraft */
.tarjeta.kraft{background-color:#c9a26a;color:var(--e-tinta);border:0;border-radius:10px 10px 14px 14px;padding-top:26px;
  background-image:var(--ruido),repeating-linear-gradient(100deg,rgba(255,240,210,.10) 0 2px,transparent 2px 9px),linear-gradient(160deg,#d4b07a,#bf9558);
  background-size:160px 160px,auto,auto;box-shadow:inset 0 0 0 6px #c9a26a,inset 0 0 0 7.5px rgba(60,30,8,.35),0 6px 14px rgba(60,30,8,.18);margin-top:14px}
.tarjeta.kraft::before{content:"";position:absolute;top:9px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--crema);box-shadow:inset 0 1px 2px rgba(0,0,0,.45);z-index:1}
.mundo-especias .tarjeta.kraft::before{background:var(--e-crema)}
.tarjeta.kraft::after{content:"";position:absolute;top:-16px;left:50%;width:46px;height:31px;margin-left:-18px;z-index:2;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 31'%3E%3Cpath d='M18 27c-4-8-9-12-16-25M18 27c6-9 14-16 26-22' fill='none' stroke='%23e9dcc0' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M18 27c-4-8-9-12-16-25M18 27c6-9 14-16 26-22' fill='none' stroke='%237a5a3a' stroke-width='.8' stroke-dasharray='2 2'/%3E%3C/svg%3E") no-repeat}
.tarjeta.kraft .foto{border-radius:6px;box-shadow:0 1px 0 rgba(60,30,8,.25)}
.tarjeta.kraft .cod{color:var(--e-tinta);font-size:clamp(16px,1.8vw,19px)}
.tarjeta.kraft .nom{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(19px,1.9vw,23px);line-height:1.1;color:var(--e-tinta)}
.tarjeta.kraft .pres{align-self:start;display:inline-block;font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--e-pimenton);
  border:2px solid currentColor;border-radius:6px;padding:3px 8px;transform:rotate(-3deg);background:rgba(255,240,210,.25)}
.tarjeta.kraft:hover{box-shadow:inset 0 0 0 6px #c9a26a,inset 0 0 0 7.5px rgba(60,30,8,.35),0 14px 28px rgba(60,30,8,.25)}
.ficha-kraft .ficha-foto{background:#fbf3e2;border-color:var(--e-borde)}
.ficha-kraft .ficha-info>.ficha-cod,.ficha-kraft .ficha-info>h1,.ficha-kraft .ficha-info>.pres{position:relative}
.ficha-kraft .ficha-info{background-color:#c9a26a;border-radius:16px;padding:clamp(18px,3vw,30px);
  background-image:var(--ruido),linear-gradient(160deg,#d4b07a,#bf9558);background-size:160px 160px,auto;
  box-shadow:inset 0 0 0 8px #c9a26a,inset 0 0 0 9.5px rgba(60,30,8,.35)}
.ficha-kraft h1{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--e-tinta);text-transform:none;letter-spacing:-.01em}
.ficha-kraft .ficha-cod{color:var(--e-tinta)}
.ficha-kraft .pres{align-self:start;display:inline-block;border:2.5px solid var(--e-pimenton);color:var(--e-pimenton);border-radius:8px;padding:4px 12px;
  transform:rotate(-2deg);text-transform:uppercase;letter-spacing:.06em;font-size:16px}
.ficha-kraft .disponible{background:#fbf3e2}
.ficha-kraft .aviso-form{color:var(--e-tinta)}

/* ======================================================= TEMPORADAS */
.cinta-temp{background:var(--t-acento2);color:#fff;font-size:13px;font-weight:800}
.cinta-temp .ancho{display:flex;align-items:center;justify-content:center;gap:14px;min-height:30px;padding-block:3px}
.cinta-temp a{color:#fff;text-decoration:none;text-align:center}.cinta-temp a:hover{color:#fff;text-decoration:underline}
.orla-mini{width:110px;height:20px;background-repeat:repeat-x;background-size:auto 20px;flex:none;opacity:.95}
@media(max-width:520px){.orla-mini{width:34px}}
.orla-temp{display:none;height:26px;background-repeat:repeat-x;background-size:auto 26px;pointer-events:none}
html[data-adorno] .orla-temp{display:block}
.portada .orla-hero{position:absolute;left:0;right:0;top:6px;z-index:1;opacity:.5}
.portada h1 .mano{color:var(--t-acento)}
.franja-temp{position:relative;background:var(--t-fondo)}
.franja-temp>.orla-temp{position:absolute;left:0;right:0;top:12px;opacity:.85}
.franja-temp>.orla-temp.abajo{top:auto;bottom:12px}
.franja-temp[data-fondo="mantel"]{background-color:var(--crema);background-image:repeating-linear-gradient(0deg,rgba(200,16,46,.13) 0 26px,transparent 26px 52px),repeating-linear-gradient(90deg,rgba(200,16,46,.13) 0 26px,transparent 26px 52px)}
.franja-temp[data-fondo="yute"]{background-color:var(--e-canela);background-image:var(--ruido),repeating-linear-gradient(0deg,rgba(255,224,170,.16) 0 1px,rgba(60,25,5,.10) 1px 3px,transparent 3px 7px),repeating-linear-gradient(90deg,rgba(255,224,170,.12) 0 2px,rgba(50,20,4,.22) 2px 4px,transparent 4px 7px);background-size:160px 160px,auto,auto}
.franja-temp[data-fondo="cuaderno"]{background-color:#fdfdf8;background-image:linear-gradient(90deg,transparent 46px,rgba(224,90,90,.55) 46px 48px,transparent 48px),linear-gradient(rgba(120,160,215,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(120,160,215,.25) 1px,transparent 1px);background-size:100% 100%,24px 24px,24px 24px}
.franja-temp .mantel-caja .mano{color:var(--t-acento2)}
.franja-temp[data-fondo="mantel"] .mantel-caja .mano{color:var(--rojo)}
.franja-temp .mantel-caja{box-shadow:0 20px 50px rgba(60,20,10,.14)}
.rejilla .tarjeta.destacada{grid-column:span 2;grid-row:span 2}
.rejilla .tarjeta.destacada .nom{font-size:clamp(17px,1.8vw,22px)}
.rejilla .tarjeta.destacada .cod{font-size:clamp(20px,2.2vw,26px)}

/* ======================================================= ZAFACONES */
:root{--z-verde:#2f7d4a;--z-verde-osc:#1f5c35;--z-gris:#eef1ef;--z-gris-2:#d9dfdb;--z-tinta:#1f2a24}
.franja-zaf{background:var(--z-gris);border-block:1px solid var(--z-gris-2);
  background-image:linear-gradient(90deg,rgba(47,125,74,.06) 1px,transparent 1px),linear-gradient(rgba(47,125,74,.06) 1px,transparent 1px);background-size:32px 32px}
.franja-zaf .ancho,.zaf-hero .ancho{display:flex;flex-wrap:wrap;gap:28px 40px;align-items:center;padding-block:clamp(40px,6vw,60px)}
.zaf-texto{flex:1 1 420px;display:flex;flex-direction:column;gap:14px;min-width:0;color:var(--z-tinta)}
.zaf-texto .mano{color:var(--z-verde);font-size:clamp(28px,3vw,38px)}
.franja-zaf .esp-titulo,.zaf-texto h1{color:var(--z-tinta);font-size:clamp(30px,4vw,52px);font-weight:800;line-height:1.02;letter-spacing:-.02em}
.zaf-texto p{font-size:clamp(17px,1.6vw,19px);color:#46524b;max-width:32em}
.btn-zaf{background:var(--z-verde);color:#fff}.btn-zaf:hover{background:var(--z-verde-osc);color:#fff}
.cc a.btn-zaf,.deoro a.btn-zaf{color:#fff}
.franja-zaf .btn-borde,.zaf-hero .btn-borde{color:var(--z-tinta)}
.zaf-stickers{flex:1 1 380px;min-width:0;position:relative;aspect-ratio:1/.6;max-width:520px;margin-inline:auto;width:100%}
.zst1{left:0;bottom:4%;width:26%;transform:rotate(-5deg)}.zst2{left:24%;top:4%;width:28%;transform:rotate(3deg)}
.zst3{left:50%;bottom:0;width:27%;transform:rotate(-3deg)}.zst4{right:0;top:0;width:28%;transform:rotate(6deg)}
.zaf-stickers .st{box-shadow:0 14px 28px rgba(20,40,28,.22)}
.bloque-zafacones{background:var(--z-gris);color:var(--z-tinta);grid-column:1/-1;min-height:170px;border:2px solid var(--z-gris-2)}
.bloque-zafacones .st-cat{max-width:150px;width:28%;right:4%;bottom:-14%}
.zaf-hero{background:var(--z-gris);border-bottom:1px solid var(--z-gris-2);
  background-image:linear-gradient(90deg,rgba(47,125,74,.06) 1px,transparent 1px),linear-gradient(rgba(47,125,74,.06) 1px,transparent 1px);background-size:32px 32px}
.zaf-hero .zaf-stickers .st{position:absolute}
.zaf-nav{padding-top:18px}
.zaf-lugar{display:flex;flex-direction:column;gap:14px}
.zaf-cab{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;border-bottom:2px solid var(--z-gris-2);padding-bottom:8px}
.zaf-cab h2{font-size:clamp(22px,2.4vw,30px);font-weight:800;color:var(--z-tinta)}
.zaf-rango{font-weight:800;color:var(--z-verde)}
.zaf-ilus{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:16px;align-items:center;background:#fff;border:2px dashed var(--z-verde);border-radius:18px;padding:14px;text-decoration:none;color:var(--z-tinta)}
.zaf-ilus svg{width:100%;height:auto;border-radius:12px}
.zaf-ilus strong{font-size:clamp(18px,2vw,22px);display:block}
.zaf-ilus em{font-style:normal;color:#46524b}
.tabla-zaf{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;font-size:16px}
.tabla-zaf th,.tabla-zaf td{padding:12px 14px;border-bottom:1px solid var(--z-gris-2);text-align:left}
.tabla-zaf thead th{background:var(--z-verde);color:#fff;font-size:14px}
.zaf-guia{background:var(--z-gris)}
.zaf-volumen .tarjeta-form{box-shadow:0 18px 40px rgba(20,40,28,.12)}

/* ======================================================= BAMBÚ Y MADERA (DE ORO) */
.bambu{background:#f3ead4;
  background-image:repeating-linear-gradient(90deg,rgba(150,110,50,.07) 0 3px,transparent 3px 22px),repeating-linear-gradient(90deg,rgba(120,90,40,.05) 0 1px,transparent 1px 9px)}
.bambu .oro-titulo .mano{color:#7a5a1e}

/* ======================================================= SEO: descripciones, guías y ciudades */
.desc-prod{font-size:17px;line-height:1.6;color:var(--tinta);max-width:40em}
.ficha-kraft .desc-prod{color:var(--e-tinta)}
.guia-respuesta{font-size:19px;font-weight:600;line-height:1.55;background:#fff7e0;border-left:5px solid var(--amarillo);padding:14px 16px;border-radius:0 12px 12px 0}
.deoro .guia-respuesta{background:#f6ecd0;border-left-color:var(--oro)}
.guia ol,.guia ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px}
.guia-col{align-items:start}
.faq-titulo{font-size:clamp(20px,2.2vw,26px);font-weight:800;color:var(--marino);margin-bottom:6px}
.deoro .faq-titulo{color:var(--carbon)}
.mundo-especias .faq-titulo{color:var(--e-canela-osc)}
.lista-guias{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;font-size:15px}
.lista-ciudades{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.lista-ciudades a{display:flex;flex-direction:column;gap:2px;background:#fff;border:2px solid var(--borde);border-radius:16px;padding:14px 16px;text-decoration:none;color:var(--tinta)}
.lista-ciudades strong{font-size:18px;color:var(--marino)}
.lista-ciudades span{font-size:14px;color:var(--gris)}
.lista-ciudades a:hover{border-color:var(--rojo)}
.zona-ciudades{display:flex;flex-direction:column;gap:12px}

/* ======================================================= LETRA (contenido.json -> "letra")
   B (por defecto): titulares Manrope 800 en mayúsculas + acento en Instrument Serif itálica.
   A: todo Manrope; el acento con el mismo peso, en color.  C: titulares Archivo condensado 900. */
.letra-b .portada h1 .mano{font-size:clamp(44px,6vw,86px);line-height:.95}
.letra-b .titulo .mano,.letra-b .oro-titulo .mano,.letra-b .calc-txt .mano{font-size:clamp(32px,3.3vw,42px)}
.letra-b .mantel-caja .mano{font-size:clamp(40px,4.4vw,52px)}
.letra-b .cliente-texto .mano,.letra-b .neg-cab .mano,.letra-b .oro-portada .mano{font-size:clamp(34px,3.6vw,44px)}
.letra-b .hito .fecha{font-family:var(--serif);font-style:italic;font-size:clamp(36px,3.8vw,48px)}

.letra-a .mano,.letra-a .hito .fecha{font-family:var(--sans);font-style:normal;font-weight:800;letter-spacing:-.02em}
.letra-a .titulo .mano,.letra-a .oro-titulo .mano,.letra-a .calc-txt .mano,.letra-a .cliente-texto .mano,
.letra-a .neg-cab .mano,.letra-a .oro-portada .mano{font-size:clamp(20px,2vw,26px)}
.letra-a .mantel-caja .mano{font-size:clamp(26px,2.6vw,32px)}
.letra-a .portada h1 .grande,.letra-a .portada h1 .mano{font-size:clamp(38px,5.8vw,78px);letter-spacing:-.03em;line-height:1}
.letra-a .portada h1 .grande,.letra-a .titulo h1,.letra-a .titulo h2,.letra-a .mantel-caja h2,.letra-a .cliente-texto h2,
.letra-a .cliente-texto h1,.letra-a .neg-cab h1,.letra-a .bloque strong,.letra-a .esp-titulo{text-transform:none;letter-spacing:-.03em}

.letra-c .portada h1 .grande,.letra-c .portada h1 .mano,.letra-c .titulo h1,.letra-c .titulo h2,.letra-c .mantel-caja h2,
.letra-c .cliente-texto h2,.letra-c .cliente-texto h1,.letra-c .neg-cab h1,.letra-c .bloque strong,.letra-c .oro-portada h1,
.letra-c .oro-titulo h1,.letra-c .oro-titulo h2,.letra-c .calc-txt h1,.letra-c .calc-txt h2,.letra-c .ficha h1,.letra-c .esp-titulo,
.letra-c .hito h3{font-family:var(--cond);font-stretch:72%;font-weight:900;text-transform:uppercase;letter-spacing:-.005em;line-height:.92;font-style:normal}
.letra-c .portada h1 .grande,.letra-c .portada h1 .mano{font-size:clamp(46px,7vw,96px)}
.letra-c .titulo h1,.letra-c .titulo h2,.letra-c .oro-titulo h1,.letra-c .oro-titulo h2{font-size:clamp(34px,4.2vw,56px)}
.letra-c .mano,.letra-c .hito .fecha{font-family:var(--cond);font-stretch:85%;font-weight:700;font-style:normal;text-transform:uppercase;letter-spacing:.02em}
.letra-c .titulo .mano,.letra-c .oro-titulo .mano,.letra-c .calc-txt .mano,.letra-c .cliente-texto .mano,.letra-c .neg-cab .mano,
.letra-c .oro-portada .mano,.letra-c .mantel-caja .mano{font-size:clamp(18px,1.8vw,23px)}
.letra-c .portada h1 .mano{font-stretch:72%;font-weight:900;letter-spacing:-.005em}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{.flotante,.cabeza,.barra,.pie,.oro-pie,.aviso{display:none!important}}
