:root{
  --tostado:#000000;
  --tostado-2:#000000;
  --oro:#F5AB2B;
  --oro-oscuro:#B8760F;
  --cereza:#E40E20;
  --hoja:#2F4A2C;
  --pergamino:#FFFFFC;
  --verde:#D9D3A6;

  --bg:#FFFFFC;
  --surface:#F5AB2B;
  --ink:#000000;
  --muted:#4D4D4A;
  --line:rgba(0,0,0,.14);
  --accent-ink:#8A560A;

  --serif:"Montserrat", "Segoe UI", system-ui, sans-serif;
  --script:"Fraunces", Georgia, "Times New Roman", serif;
  --sans:"Open Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
  --wrap:1180px;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
:root{color-scheme:light only}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + var(--hh-min) + 10px)}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;font-size:1.02rem;line-height:1.7;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--oro);outline-offset:3px;border-radius:4px}
.wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.12;margin:0;letter-spacing:-.02em}
h2{font-size:clamp(1.85rem,3.8vw,3rem)}
p{margin:0 0 1em}
b,strong{font-weight:700}
.kicker{font-family:var(--script);font-style:italic;font-weight:600;font-size:1.25rem;font-variation-settings:"SOFT" 50;color:var(--accent-ink);margin-bottom:.6rem;display:block}
section{padding:clamp(4rem,9vw,7.5rem) 0}

/* ---------- Encabezado ---------- */
/* --p va de 0 (arriba del todo) a 1 (tras deslizar) y lo actualiza el script */
:root{--p:0;--logo-max:132px;--logo-min:74px;--hh-min:92px}
.top{position:fixed;inset:0 0 auto 0;z-index:50;padding-top:env(safe-area-inset-top,0px);
  background:rgba(0,0,0,calc(var(--p) * .92));
  backdrop-filter:blur(calc(var(--p) * 12px));-webkit-backdrop-filter:blur(calc(var(--p) * 12px));
  border-bottom:1px solid rgba(245,171,43,calc(var(--p) * .28));
  box-shadow:0 10px 30px rgba(0,0,0,calc(var(--p) * .35))}
.top::before{content:"";position:absolute;inset:0 0 -60px 0;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.75),rgba(0,0,0,0));opacity:calc(1 - var(--p))}
.barra{display:flex;align-items:center;justify-content:space-between;gap:2rem;
  height:calc(var(--logo-max) + 28px - (var(--logo-max) + 28px - var(--hh-min)) * var(--p))}
.brand{display:block;position:relative;flex:none;padding:10px 0}
.brand img{position:relative;width:auto;
  height:calc(var(--logo-max) - (var(--logo-max) - var(--logo-min)) * var(--p));
  transition:transform .3s}
.brand:hover img{transform:scale(1.03)}
.nav{display:flex;gap:1.75rem;align-items:center}
.nav a{color:#FFFFFC;text-decoration:none;font-size:.97rem;font-weight:500;text-shadow:0 1px 6px rgba(0,0,0,calc(.6 - var(--p) * .6))}
.nav a:hover{color:var(--oro)}
.nav .btn{padding:.55rem 1.1rem;font-size:.95rem;text-shadow:none}
.nav .btn-oro,.nav .btn-oro:hover{color:#000000}
.menu-btn{display:none;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,252,.4);color:#FFFFFC;border-radius:8px;padding:.5rem .8rem;font:inherit;font-size:.95rem;cursor:pointer}
.nav-movil{display:none}
@media (max-width:900px){
  :root{--logo-max:100px;--logo-min:58px;--hh-min:74px}
  .nav-der{display:none}
  .menu-btn{display:block}
  .nav-movil{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:#000000;padding:.5rem 1.25rem 1.25rem;border-bottom:1px solid rgba(245,171,43,.25)}
  .nav-movil.open{display:flex}
  .nav-movil a{padding:.8rem 0;width:100%;border-bottom:1px solid rgba(255,255,252,.08)}
  .nav-movil .btn{margin-top:.9rem;width:auto;border-bottom:0}
}
.btn{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;font-weight:700;border-radius:999px;padding:.85rem 1.5rem;font-size:1rem;transition:background .2s,color .2s}
.btn-oro{background:var(--oro);color:#000000}
.btn-oro:hover{background:#F8BE57}
.btn-linea{border:1.5px solid rgba(255,255,252,.6);color:#FFFFFC}
.btn-linea:hover{border-color:var(--oro);color:var(--oro)}
.btn svg{width:1.15em;height:1.15em;flex:none}

/* ---------- Inicio ---------- */
.hero{position:relative;min-height:100svh;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;color:#FFFFFC;background:#000000;padding:0;overflow:hidden}
.hero-img{position:absolute;inset:0;background:url(../img/inicio-taza.webp) 70% 60%/cover no-repeat}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.72) 42%,rgba(0,0,0,.15) 80%),linear-gradient(0deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,0) 38%)}
.hero .wrap{position:relative;z-index:2}
.hero-texto{padding-top:calc(var(--logo-max) + 28px + 3rem)}
.hero h1 .resalte{color:var(--oro)}
.hero .kicker{color:var(--oro);font-size:1.4rem}
.hero h1{font-size:clamp(2.4rem,6vw,5rem);font-weight:800;max-width:12ch;line-height:1.05;letter-spacing:-.03em}
.hero p.lead{max-width:34rem;font-size:1.12rem;color:#EDEDEA;margin:1.6rem 0 2rem}
.hero .acciones{display:flex;flex-wrap:wrap;gap:.8rem}
.cifras{position:relative;z-index:2;margin-top:clamp(3rem,8vh,5.5rem);border-top:1px solid rgba(245,171,43,.3)}
.cifras dl{display:grid;grid-template-columns:repeat(4,1fr);margin:0}
.cifras div{padding:1.4rem 1.2rem 1.6rem 0}
.cifras div+div{padding-left:1.4rem;border-left:1px solid rgba(245,171,43,.2)}
.cifras dt{font-family:var(--serif);font-weight:700;font-size:clamp(1.5rem,2.6vw,2.15rem);color:var(--oro);line-height:1.1}
.cifras dd{margin:.35rem 0 0;font-size:.92rem;color:#CFCFCB}
@media (max-width:760px){
  .cifras dl{grid-template-columns:1fr 1fr}
  .cifras div:nth-child(3){padding-left:0;border-left:0}
  .cifras div:nth-child(n+3){border-top:1px solid rgba(245,171,43,.2)}
}

/* ---------- Quiénes somos ---------- */
.somos .grid{display:grid;grid-template-columns:.9fr 1.15fr;gap:clamp(2rem,6vw,5.5rem);align-items:start}
.somos figure{margin:0;position:sticky;top:110px}
.somos figure img{border-radius:6px;aspect-ratio:4/5;object-fit:cover;width:100%}
.somos figcaption{font-size:.88rem;color:var(--muted);margin-top:.7rem}
.somos h2{margin-bottom:1.8rem;max-width:14ch}
.somos .texto{max-width:36rem}
.somos .cita{border-left:3px solid var(--oro);padding-left:1.2rem;margin-top:1.6rem}
.somos .cita p{font-family:var(--script);font-style:italic;font-weight:500;font-size:1.13rem;line-height:1.6;font-variation-settings:"SOFT" 50;color:var(--ink)}
.somos .cita p:last-child{margin-bottom:0}
.valores-bloque{margin-top:2.4rem;padding-top:1.8rem;border-top:1px solid var(--line)}
.valores-titulo{font-size:1rem;font-weight:700;color:var(--accent-ink);margin-bottom:1.3rem}
.valores{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:0;padding:0}
.valores li{display:flex;flex-direction:column;align-items:flex-start}
.icono{display:block;height:58px;width:100%;margin-bottom:.7rem;background:var(--accent-ink);
  -webkit-mask:var(--m) left bottom/contain no-repeat;mask:var(--m) left bottom/contain no-repeat}
.icono-grano{--m:url(../img/icono-grano.png)}
.icono-sombrero{--m:url(../img/icono-sombrero.png)}
.icono-d{--m:url(../img/icono-d.png)}
.valor{font-family:var(--serif);font-weight:700;font-size:1.15rem}
.valores-frase{margin:1.4rem 0 0;font-family:var(--script);font-style:italic;font-weight:500;font-size:1.13rem;line-height:1.5;font-variation-settings:"SOFT" 50;color:var(--ink)}
@media (max-width:520px){.icono{height:46px}.valor{font-size:1rem}}
@media (max-width:860px){.somos .grid{grid-template-columns:1fr}.somos figure{position:static}.somos figure img{aspect-ratio:3/2}}

/* ---------- Proceso (elemento protagonista) ---------- */
.proceso{background:var(--tostado);color:#FFFFFC}
.proceso .kicker{color:var(--oro)}
.proceso .cab{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:end;margin-bottom:3.2rem}
.proceso .cab p{color:#D8D8D4;max-width:34rem;margin:0}
.proceso figure{margin:0 0 0;position:relative}
.proceso figure img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:50% 62%;border-radius:6px 6px 0 0}
.etapas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);counter-reset:e;border-radius:8px;overflow:hidden}
.etapas li{counter-increment:e;padding:1.5rem 1.3rem 1.7rem;min-height:11rem;display:flex;flex-direction:column;justify-content:space-between}
.etapas li::before{content:counter(e);font-family:var(--serif);font-size:.95rem;opacity:.75}
.etapas strong{font-family:var(--serif);font-weight:700;font-size:clamp(1.35rem,2.2vw,1.85rem);display:block}
.etapas span{font-size:.9rem;opacity:.85;display:block;margin-top:.2rem}
.etapas li:nth-child(1){background:var(--cereza);color:#FFFFFC}
.etapas li:nth-child(2){background:#C9B28A;color:#000000}
.etapas li:nth-child(3){background:var(--verde);color:#000000}
.etapas li:nth-child(4){background:#000000;color:#F5AB2B;box-shadow:inset 0 0 0 1px rgba(245,171,43,.35)}
@media (max-width:760px){
  .proceso .cab{grid-template-columns:1fr}
  .proceso figure img{aspect-ratio:4/3}
  .etapas{grid-template-columns:1fr 1fr}
  .etapas li{min-height:7.5rem}
}

/* ---------- Microlotes (presentación enmarcada) ---------- */
.lotes{padding:clamp(3.5rem,7vw,5.5rem) 0}
.lotes-marco{position:relative;overflow:hidden;border-radius:12px;background:#000;color:#FFFFFC;
  min-height:clamp(380px,56vh,480px);display:flex;align-items:center;padding:clamp(2rem,5vw,3.5rem);
  box-shadow:0 20px 45px rgba(0,0,0,.18)}
.lotes-fotos{position:absolute;inset:0}
.lotes-foto{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;animation:lotesCambio 16s infinite}
.lotes-foto.f1{background-position:60% 50%}
.lotes-foto.f2{background-position:70% 45%;animation-delay:8s}
@keyframes lotesCambio{
  0%{opacity:0;transform:scale(1)}
  6%{opacity:1}
  50%{opacity:1}
  56%{opacity:0;transform:scale(1.035)}
  100%{opacity:0;transform:scale(1.035)}
}
@media (prefers-reduced-motion: reduce){.lotes-foto{animation:none}.lotes-foto.f1{opacity:1}}
.lotes-marco::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.55) 40%,rgba(0,0,0,.08) 75%,rgba(0,0,0,0) 100%)}
.lotes-texto{position:relative;z-index:1}
.lotes .kicker{color:var(--oro)}
.lotes h2{color:#FFFFFC;max-width:14ch;margin-bottom:1.2rem;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.lotes-leyenda{margin-top:1.4rem!important;padding-top:1rem;border-top:1px solid rgba(245,171,43,.55);font-size:1.15rem!important;font-weight:700;line-height:1.5;color:#F5AB2B!important;max-width:40rem}
.lotes-leyenda > span{display:block}
.lotes p.lotes-leyenda{max-width:40rem}
.lotes-leyenda .nw{white-space:nowrap}
.lotes p{max-width:31rem;font-size:1.04rem;color:#EDEDEA;margin:0;text-shadow:0 1px 10px rgba(0,0,0,.4)}
@media (max-width:760px){
  .lotes-marco{min-height:460px;align-items:flex-end}
  .lotes-marco::after{background:linear-gradient(0deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.7) 60%,rgba(0,0,0,.35) 100%)}
  .lotes-foto.f1{background-position:55% 50%}
}

/* ---------- Respaldo ---------- */
.respaldo-bloque{margin-top:clamp(3rem,6vw,4.5rem);--line:rgba(255,255,252,.18)}
.respaldo-bloque h3{font-size:clamp(1.3rem,2.2vw,1.6rem);color:#FFFFFC;margin-bottom:1.4rem}
.sellos{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:0;margin:0;border-top:1px solid var(--line)}
.sellos div{padding:1.5rem 1.4rem 0 0}
.sellos div+div{padding-left:1.4rem;border-left:1px solid var(--line)}
.sellos dt{font-family:var(--serif);font-weight:700;font-size:1.3rem;line-height:1.25;margin-bottom:.4rem}
.sellos dt{color:var(--oro)}
.sellos div:first-child dt{font-size:2.8rem;line-height:1;font-weight:800}
.sellos dd{margin:0;color:#CFCFCB;font-size:.95rem;font-weight:400}
@media (max-width:900px){
  .sellos{grid-template-columns:1fr 1fr}
  .sellos div:nth-child(3){padding-left:0;border-left:0}
  .sellos div:nth-child(n+3){margin-top:1.5rem;border-top:1px solid var(--line)}
}
@media (max-width:520px){
  .sellos{grid-template-columns:1fr}
  .sellos div+div{padding-left:0;border-left:0;border-top:1px solid var(--line);margin-top:1.5rem}
}

/* ---------- Café de especialidad ---------- */
.especialidad{background:#FDF3E1}
.cab-centro{text-align:center;max-width:40rem;margin:0 auto clamp(2.5rem,5vw,3.5rem)}
.cab-centro h2{margin-bottom:1rem}
.cab-centro p{color:var(--muted);margin:0 auto;max-width:34rem}
.cab-centro b{color:var(--ink)}
.procesos{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.2rem,2.5vw,1.8rem);max-width:1040px;margin:0 auto}
.procesos article{display:flex;flex-direction:column;background:#FFFFFC;border-radius:10px;overflow:hidden;box-shadow:0 14px 34px rgba(90,60,10,.12);transition:transform .25s,box-shadow .25s}
.procesos article:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(90,60,10,.18)}
.procesos img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.procesos .cuerpo{display:flex;flex-direction:column;flex:1;padding:1.3rem 1.4rem 1.4rem}
.procesos .num{font-family:var(--script);font-style:italic;font-weight:600;color:var(--accent-ink);font-size:1.05rem;font-variation-settings:"SOFT" 50}
.procesos h3{font-size:1.3rem;margin:.2rem 0 .7rem;color:#000}
.procesos p{color:#4D4D4A;font-size:.93rem;line-height:1.6}
.tostion{margin:auto 0 0!important;padding-top:.8rem;border-top:1px solid rgba(0,0,0,.1);font-size:.9rem}
.tostion b{font-weight:700;color:#000}
@media (max-width:860px){.procesos{grid-template-columns:1fr;max-width:30rem}.procesos img{aspect-ratio:16/10}}
@media (prefers-reduced-motion: reduce){.procesos article:hover{transform:none}}

/* ---------- Pedidos ---------- */
.pedidos{position:relative;background:#FFFFFC;color:#000;padding-bottom:0;overflow:hidden}
.pedidos::before{content:"";position:absolute;inset:0;background:url(../img/patron-corporativo.webp) 0 0/264px auto repeat;opacity:.1;filter:invert(1) grayscale(1);pointer-events:none}
.pedidos .grid{position:relative}
.pedidos .grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.pedidos .kicker{color:#8A560A}
.pedidos h2{max-width:13ch;margin-bottom:1.8rem}
.presentaciones{margin:0 0 1.6rem;padding:0;list-style:none}
.presentaciones li{padding:1rem 0;border-top:1px solid rgba(0,0,0,.14)}
.presentaciones li:last-child{border-bottom:1px solid rgba(0,0,0,.14)}
.presentaciones b{display:block;font-family:var(--serif);font-weight:700;font-size:1.25rem;color:#000}
.presentaciones span{color:#4D4D4A}
.pedidos .ayuda{color:#4D4D4A;max-width:30rem}
.pedidos .nota{font-size:1.2rem;font-weight:600;color:#000;margin-top:1rem}
.pedidos .foto{align-self:end}
.pedidos .foto img{width:100%;border-radius:6px 6px 0 0;aspect-ratio:5/4;object-fit:cover}
.pedidos .texto{padding-bottom:clamp(4rem,9vw,7rem)}
@media (max-width:860px){.pedidos .grid{grid-template-columns:1fr}.pedidos .texto{padding-bottom:0}}


.registros{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin:1.6rem 0 0;padding-top:1.2rem;border-top:1px solid rgba(0,0,0,.14);max-width:30rem}
.registros dt{font-family:var(--serif);font-weight:700;font-size:.9rem;color:#000}
.registros dd{margin:.15rem 0 0;font-size:.9rem;color:#4D4D4A}
@media (max-width:420px){.registros{grid-template-columns:1fr}}
/* ---------- Panel de pedido ---------- */
.pedidos{padding-bottom:clamp(4rem,9vw,7.5rem)}
.pedidos .grid{align-items:start}
.pedidos .texto{padding-bottom:0}
.foto-productos{display:block;width:100%;height:auto;aspect-ratio:990/711;border-radius:10px;margin-bottom:2.2rem;box-shadow:0 18px 40px rgba(0,0,0,.14)}
.panel{background:#000;border:1px solid rgba(245,171,43,.45);border-radius:10px;padding:clamp(1.3rem,3vw,2.2rem);color:#FFFFFC;box-shadow:0 24px 50px rgba(0,0,0,.22)}
.panel h3{font-size:1.6rem;margin-bottom:1.3rem;color:var(--oro)}
.panel fieldset{border:0;margin:0 0 1.35rem;padding:0;min-width:0}
.panel legend{font-weight:700;font-size:1rem;margin-bottom:.6rem;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{position:relative}
.chip input{position:absolute;opacity:0;width:1px;height:1px}
.chip span{display:inline-block;padding:.5rem 1rem;border:1px solid rgba(255,255,252,.35);border-radius:999px;cursor:pointer;font-size:.95rem;font-weight:400;line-height:1.3;transition:background .15s,border-color .15s,color .15s}
.chip span:hover{border-color:var(--oro)}
.chip input:checked+span{background:var(--oro);border-color:var(--oro);color:#000;font-weight:700}
.chip input:focus-visible+span{outline:3px solid var(--oro);outline-offset:3px}
.pista{font-size:.86rem;color:#B3B3AF;margin:.55rem 0 0}
.fila{display:grid;grid-template-columns:1fr auto;gap:1.2rem;align-items:start}
.stepper{display:inline-flex;align-items:center;border:1px solid rgba(255,255,252,.35);border-radius:999px;overflow:hidden}
.stepper button{background:none;border:0;color:#FFFFFC;font:inherit;font-size:1.2rem;width:2.6rem;height:2.4rem;cursor:pointer}
.stepper button:hover{background:rgba(245,171,43,.18)}
.stepper button:disabled{opacity:.3;cursor:default;background:none}
.stepper output{min-width:2rem;text-align:center;font-weight:700}
.datos{grid-template-columns:1fr 1fr;margin-bottom:1.1rem}
.datos label{font-weight:700;font-size:.95rem;display:block}
.datos .opc{font-weight:400;color:#B3B3AF}
.datos input{display:block;width:100%;margin-top:.4rem;padding:.65rem .8rem;border-radius:8px;border:1px solid rgba(255,255,252,.3);background:rgba(255,255,252,.06);color:#FFFFFC;font:inherit;font-weight:400}
.datos input:focus{outline:2px solid var(--oro);outline-offset:1px;border-color:var(--oro)}
.resumen{border-top:1px solid rgba(255,255,252,.15);padding-top:1rem;font-size:.97rem;color:#EDEDEA;margin:0 0 1rem}
.resumen b{color:var(--oro)}
.link-pergamino{color:#8A560A;font-weight:700;text-underline-offset:3px;white-space:nowrap}
.btn-enviar{width:100%;justify-content:center;padding:1rem 1.2rem;font-size:1.05rem}
.privacidad{font-size:.82rem;color:#9A9A96;margin:.8rem 0 0;text-align:center}
.privacidad a{color:#CFCFCB}
@media (max-width:860px){.foto-productos{margin-bottom:1.6rem}}
@media (max-width:520px){.fila,.datos{grid-template-columns:1fr}}


/* ---------- Títulos en dos líneas ---------- */
.hero-texto,.somos .texto,.pedidos .texto{container-type:inline-size}
.dos-lineas{max-width:none!important}
.dos-lineas > span{display:block;white-space:nowrap}
.dos-lineas .resalte{display:inline}
.hero h1.dos-lineas{font-size:clamp(1.6rem,6.4cqi,4.6rem)}
.somos h2.dos-lineas{font-size:clamp(1.3rem,6.1cqi,2.8rem)}
.pedidos h2.dos-lineas{font-size:clamp(1.3rem,7.2cqi,3rem)}
/* ---------- Pie ---------- */
footer{position:relative;border-top:6px solid var(--oro);background:#000000;color:#CFCFCB;padding:4rem 0 calc(6.5rem + env(safe-area-inset-bottom,0px));font-size:.95rem}
footer .grid{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center}
.logo-pie{width:clamp(200px,24vw,280px);height:auto}
footer a{text-decoration:none;color:#FFFFFC}
.contacto{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}
.contacto a{display:flex;align-items:center;gap:.9rem}
.contacto .ico{flex:none;width:42px;height:42px;border-radius:50%;background:var(--oro);display:grid;place-items:center;color:#000;transition:background .2s}
.contacto svg{width:21px;height:21px;fill:currentColor}
.contacto .dato{display:flex;flex-direction:column;line-height:1.3;font-size:1rem}
.contacto .etq{font-size:.8rem;color:#9A9A96}
.contacto a:hover .ico{background:#FFFFFC}
.contacto a:hover .dato{color:var(--oro)}
footer .legal{margin-top:3rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,252,.12);display:flex;justify-content:center;text-align:center;font-size:.87rem;color:#9A9A96}
footer .legal a{color:#CFCFCB;text-decoration:underline;text-underline-offset:3px}
footer .legal a:hover{color:var(--oro)}
@media (max-width:800px){footer .grid{grid-template-columns:1fr;gap:2.2rem;justify-items:start}footer .legal{justify-content:center}}

/* ---------- Política ---------- */
#politica-datos{display:block;padding-top:calc(var(--logo-max) + 28px + 3rem)}
.politica{max-width:44rem}
.politica h1{font-size:clamp(2.2rem,5vw,3.4rem);margin-bottom:1.5rem}
.politica h2{font-size:1.5rem;margin:2.2rem 0 .8rem}
.politica ul{padding-left:1.2rem}
.politica li{margin-bottom:.4rem}
.politica .volver{display:inline-block;margin-bottom:2rem;color:var(--accent-ink);font-weight:700;text-decoration:none}

.wa-flotante{position:fixed;right:1.1rem;top:auto;bottom:calc(6rem + env(safe-area-inset-bottom,0px));z-index:40;width:58px;height:58px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.28)}
.wa-flotante svg{width:30px;height:30px;fill:#fff}
