/* Aperador · hoja de estilos compartida (index, privacidad y aviso legal)
   Sin estilos en línea en el HTML: así la política CSP puede bloquearlos. */

*,*::before,*::after{box-sizing:border-box}
:root{
  --oliva-noche:#1c2811;
  --oliva-oscuro:#3e5020;
  --oliva:#556b2f;
  --hoja-viva:#8aa04f;
  --crema:#f6f5ee;
  --papel:#fffefa;
  --tinte:#ecedde;
  --tinte-fuerte:#dde2c4;
  --linea:#d5d8bd;
  --texto:#1d2410;
  --texto-suave:#434b2e;
  --aceite:#d9a82c;
  --tierra:#a8742f;
  --sobre-oscuro:#e9edd6;
  --sobre-oscuro-suave:#c5cfa0;
  --chat-fondo:#ece8d6;
  --radio:14px;
  --sombra:0 28px 50px -30px rgba(29,36,16,.65);
  --ease:cubic-bezier(.22,.8,.3,1);
  --f-titulo:"Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-texto:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color-scheme:light;
}

/* ───────── Base ───────── */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:1rem}
@media (min-width:60em){html{scroll-padding-top:5.5rem}}
body{margin:0;background:var(--crema);color:var(--texto);font-family:var(--f-texto);font-size:1.25rem;line-height:1.6;overflow-wrap:break-word}
body.con-barra{padding-bottom:5.5rem}
@media (min-width:48em){body.con-barra{padding-bottom:0}}
h1,h2,h3{font-family:var(--f-titulo);color:var(--oliva-oscuro);line-height:1.1;letter-spacing:-.02em;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.5rem,1.6rem + 4.2vw,4.5rem);font-weight:800;line-height:1.03;letter-spacing:-.03em}
h2{font-size:clamp(2rem,1.5rem + 2.3vw,3.1rem);font-weight:800}
h3{font-size:1.45rem;font-weight:700;letter-spacing:-.01em}
h4{margin:0 0 .5em;font-family:var(--f-titulo);font-size:1.45rem;font-weight:700;line-height:1.1;letter-spacing:-.01em;color:var(--oliva-oscuro)}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.3em}
li{margin-bottom:.45em}
a{color:var(--oliva-oscuro);text-decoration-thickness:2px;text-underline-offset:.18em}
a:hover{color:var(--oliva)}
:focus-visible{outline:3px solid var(--tierra);outline-offset:3px;border-radius:6px}
.fondo-oscuro :focus-visible{outline-color:var(--aceite)}
svg{display:block}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.ico{width:1.5em;height:1.5em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.contenedor{width:100%;max-width:72rem;margin-inline:auto;padding-inline:1.25rem}
@media (min-width:48em){.contenedor{padding-inline:2rem}}
.saltar{position:absolute;left:-9999px;top:0}
.saltar:focus{left:1rem;top:1rem;z-index:50;background:var(--oliva-oscuro);color:var(--crema);padding:.6rem 1rem;border-radius:8px}
.solo-lector{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.correo{overflow-wrap:break-word}

/* Dibujo de la rama (logo). El color sale de las variables del contenedor. */
.r-tallo{fill:none;stroke:var(--rama,#3e5020);stroke-width:2.6;stroke-linecap:round}
.r-hoja{fill:var(--hoja,#556b2f)}
.r-aceituna{fill:var(--aceituna,#3e5020)}

/* ───────── Cabecera ───────── */
.cabecera{position:relative;z-index:20;background:var(--crema);border-bottom:1px solid var(--linea);transition:box-shadow .25s}
@media (min-width:60em){.cabecera{position:sticky;top:0;background:rgba(246,245,238,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}
.cabecera-fila{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.1rem 1.5rem;padding-block:.8rem;transition:padding .25s}
.cabecera.compacta{box-shadow:0 10px 26px -20px rgba(29,36,16,.7)}
.cabecera.compacta .cabecera-fila{padding-block:.35rem}
.marca{display:inline-flex;align-items:center;min-height:2.75rem;gap:.55rem;color:var(--oliva-oscuro);text-decoration:none;font-family:var(--f-titulo);font-weight:800;font-size:1.7rem;letter-spacing:-.02em;line-height:1}
.marca:hover{color:var(--oliva-oscuro)}
.marca svg{width:2.8rem;height:2.8rem;transition:width .25s,height .25s}
.cabecera.compacta .marca svg{width:2.3rem;height:2.3rem}
.menu{display:flex;flex-wrap:wrap;gap:0 1.4rem;margin:0;padding:0;list-style:none}
.menu li{margin:0}
.menu a{display:inline-block;padding:.6rem 0;font-weight:700;font-size:1.05rem;text-decoration:none;background:linear-gradient(var(--aceite),var(--aceite)) 0 100%/0 4px no-repeat;transition:background-size .25s var(--ease)}
.menu a:hover,.menu a[aria-current="page"]{background-size:100% 4px}
.boton.cabecera-cta{display:none}
@media (min-width:60em){.boton.cabecera-cta{display:inline-flex}}

/* ───────── Botones ───────── */
.botones{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.6rem 0}
.boton{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.5rem;padding:.75rem 1.6rem;border:2px solid var(--oliva-oscuro);border-radius:999px;background:var(--oliva-oscuro);color:var(--crema);font-family:inherit;font-weight:700;font-size:1.05rem;line-height:1.25;text-align:center;text-decoration:none;cursor:pointer;transition:background-color .2s,border-color .2s,transform .2s var(--ease),box-shadow .2s}
.boton:hover{background:var(--oliva);border-color:var(--oliva);color:#fff;transform:translateY(-2px);box-shadow:0 10px 18px -12px rgba(29,36,16,.8)}
.boton:active{transform:translateY(0)}
.boton .ico{width:1.35em;height:1.35em}
.boton-claro{background:transparent;color:var(--oliva-oscuro)}
.boton-claro:hover{background:var(--tinte-fuerte);border-color:var(--oliva-oscuro);color:var(--oliva-oscuro)}
.boton-aceite{background:var(--aceite);border-color:var(--aceite);color:var(--oliva-noche)}
.boton-aceite:hover{background:#e6b93f;border-color:#e6b93f;color:var(--oliva-noche)}
.boton-chico{min-height:2.9rem;padding:.4rem 1.2rem;font-size:1rem}
.boton-grande{min-height:4rem;padding-inline:2rem;font-size:1.3rem}
.boton-texto{display:none;align-items:center;gap:.5rem;min-height:2.9rem;margin-top:.6rem;padding:.3rem .2rem;border:0;background:none;color:var(--oliva-oscuro);font:inherit;font-weight:700;font-size:1.05rem;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em;cursor:pointer}
.js .boton-texto{display:inline-flex}
.boton-texto[hidden]{display:none !important}
.boton-texto:hover{color:var(--oliva)}
@media (max-width:30em){.botones .boton{flex:1 1 100%}}

/* Barra de contacto fija solo en móvil */
.barra-movil{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;gap:.6rem;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(246,245,238,.97);border-top:1px solid var(--linea);box-shadow:0 -12px 30px -22px rgba(29,36,16,.7)}
.barra-movil .boton{flex:1;min-height:3.3rem;padding-inline:.8rem}
@media (min-width:48em){.barra-movil{display:none}}

/* ───────── Portada ───────── */
.portada{position:relative;overflow:hidden;padding-top:2rem;background:var(--crema)}
@media (min-width:60em){.portada{padding-top:3.5rem}}
.portada-rejilla{position:relative;z-index:1;display:grid;gap:2.75rem;align-items:center;padding-bottom:2rem}
@media (min-width:60em){.portada-rejilla{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:3.5rem}}
.rama-portada{width:4.6rem;height:4.6rem;margin:0 0 1rem}
.rb-tallo{fill:none;stroke:var(--oliva-oscuro);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.rb-hoja{fill:var(--oliva);transform-box:fill-box;transform-origin:0 50%}
.rb-aceituna{fill:var(--oliva-oscuro);transform-box:fill-box;transform-origin:50% 50%}
.entradilla{font-size:1.15em;color:var(--texto-suave);max-width:32em}
.subrayado{position:relative;display:inline-block;white-space:nowrap}
.trazo{position:absolute;left:-2%;bottom:-.16em;width:104%;height:.32em;overflow:visible}
.trazo path{fill:none;stroke:var(--aceite);stroke-width:7;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.aviso-piloto{display:inline-flex;align-items:center;gap:.55rem;margin:0;padding:.5rem 1rem;border:1px solid var(--linea);border-radius:999px;background:var(--tinte);color:var(--oliva-oscuro);font-size:.95rem;font-weight:700;line-height:1.35}
.aviso-piloto .ico{width:1.3em;height:1.3em;color:var(--oliva)}

/* Colinas de la campiña: la de delante coincide con el fondo de la franja siguiente */
.campina{position:relative;z-index:0;display:block;width:100%;height:clamp(70px,11vw,150px);margin-top:-1px}
.campina g{will-change:transform}

/* ───────── Móvil de WhatsApp (conversación de ejemplo) ───────── */
.movil{margin:0;justify-self:center;width:100%;max-width:26rem}
.movil-marco{border:9px solid var(--oliva-noche);border-radius:2.5rem;background:var(--chat-fondo);box-shadow:var(--sombra);overflow:hidden}
.charla-cabeza{display:flex;align-items:center;gap:.7rem;padding:.85rem 1rem;background:var(--oliva-oscuro);color:var(--crema)}
.charla-avatar{display:grid;place-items:center;flex:none;width:2.7rem;height:2.7rem;border-radius:50%;background:var(--crema)}
.charla-avatar svg{width:2rem;height:2rem}
.charla-nombre{margin:0;font-weight:700;line-height:1.2}
.charla-estado{margin:0;font-size:.95rem;line-height:1.3;color:var(--sobre-oscuro-suave)}
.charla-cuerpo{display:flex;flex-direction:column;gap:.65rem;min-height:31rem;padding:1rem .9rem 1.2rem}
.msj{width:fit-content;max-width:92%;margin:0;padding:.6rem .85rem;border-radius:16px;font-size:1.06rem;line-height:1.4;box-shadow:0 1px 0 rgba(29,36,16,.12);transition:opacity .45s var(--ease),transform .45s var(--ease)}
.msj-yo{margin-left:auto;background:#dfe8b4;border-bottom-right-radius:5px}
.msj-asistente{background:#fff;border-bottom-left-radius:5px}
.msj strong{color:var(--oliva-oscuro)}
.respuesta-wrap{display:grid;justify-items:start}
.respuesta-wrap > *{grid-area:1/1}
.msj-puntos{display:none;align-self:start}
.mostrar-puntos .msj-puntos{display:block}
.puntos{display:flex;gap:.3rem;padding:.35rem .2rem}
.puntos i{display:block;width:.6rem;height:.6rem;border-radius:50%;background:var(--oliva);animation:punto 1.1s ease-in-out infinite}
.puntos i:nth-child(2){animation-delay:.18s}
.puntos i:nth-child(3){animation-delay:.36s}
.nota-voz{display:flex;align-items:center;gap:.6rem}
.reproducir{display:grid;place-items:center;flex:none;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--oliva-oscuro)}
.reproducir svg{width:.8rem;height:.8rem;margin-left:2px;fill:var(--crema)}
.onda{position:relative;display:flex;align-items:center;gap:3px;height:1.7rem}
.onda > span,.onda-llena > span{display:block;width:3px;border-radius:2px;background:#a9b88a}
.onda-llena{position:absolute;inset:0;display:flex;align-items:center;gap:3px}
.onda-llena > span{background:var(--oliva-oscuro)}
.onda span:nth-child(1){height:30%}.onda span:nth-child(2){height:55%}.onda span:nth-child(3){height:85%}.onda span:nth-child(4){height:45%}
.onda span:nth-child(5){height:100%}.onda span:nth-child(6){height:60%}.onda span:nth-child(7){height:35%}.onda span:nth-child(8){height:75%}
.onda span:nth-child(9){height:50%}.onda span:nth-child(10){height:90%}.onda span:nth-child(11){height:40%}.onda span:nth-child(12){height:25%}
.onda span:nth-child(13){height:55%}.onda span:nth-child(14){height:30%}
.duracion{font-size:.95rem;color:var(--texto-suave)}
.ficha-apunte{margin:.5rem 0;border:1px solid var(--linea);border-radius:10px;background:var(--papel);overflow:hidden}
.ficha-apunte div{display:flex;justify-content:space-between;gap:1rem;padding:.35rem .7rem;font-size:1rem}
.ficha-apunte div + div{border-top:1px solid var(--tinte)}
.ficha-apunte dt{color:var(--texto-suave)}
.ficha-apunte dd{margin:0;font-weight:700;text-align:right}
.respuestas{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}
.resp{padding:.25rem .8rem;border:1px solid var(--linea);border-radius:999px;background:#fff;color:var(--oliva-oscuro);font-size:.95rem;font-weight:700}
.adjunto{display:flex;align-items:center;gap:.55rem;margin-bottom:.4rem;padding:.55rem .7rem;border-radius:10px;background:var(--tinte);font-weight:700;font-size:.98rem}
.adjunto .ico{color:var(--oliva-oscuro)}
.movil figcaption{margin:.7rem 0 0;font-size:.95rem;color:var(--texto-suave);text-align:center}
.movil .boton-texto{display:none;margin-inline:auto}
.js .movil .boton-texto{display:flex}

/* Estados de la conversación animada: sin JS (o con movimiento reducido) se ve entera */
.js .charla-cuerpo:not([data-estado]) .msj{opacity:0;animation:salvavidas .01s 12s forwards}
.charla-cuerpo[data-estado="jugando"] .msj{opacity:0;transform:translateY(10px)}
.charla-cuerpo[data-estado="jugando"] .msj.visto{opacity:1;transform:none}
.charla-cuerpo[data-estado="jugando"] .msj-puntos{opacity:1;transform:none}
.charla-cuerpo[data-estado="jugando"] .onda-llena{clip-path:inset(0 100% 0 0)}
.charla-cuerpo .nota-voz.sonando .onda-llena{animation:sonar 3s linear forwards}
@keyframes salvavidas{to{opacity:1}}
@keyframes sonar{to{clip-path:inset(0 0 0 0)}}
@keyframes punto{0%,70%,100%{transform:translateY(0);opacity:.45}35%{transform:translateY(-.3rem);opacity:1}}

/* ───────── Secciones ───────── */
.seccion{padding-block:4rem}
@media (min-width:48em){.seccion{padding-block:6rem}}
.fondo-tinte{background:var(--tinte)}
.fondo-oscuro{background:var(--oliva-noche);color:var(--sobre-oscuro)}
.fondo-oscuro h2,.fondo-oscuro h3{color:#fff}
.fondo-oscuro a:not(.boton){color:#fff}
.fondo-arboleda{background-color:var(--crema);background-image:radial-gradient(circle,rgba(85,107,47,.2) 0 3px,transparent 3.6px);background-size:28px 28px}
.cabeza-seccion{max-width:44rem;margin-bottom:2.5rem}
.cabeza-seccion > :last-child{margin-bottom:0}
.cabeza-seccion p{max-width:36em}
.subtitulo{margin-top:3.5rem}
.marcas-lista{margin:0;padding:0;list-style:none}
.marcas-lista li{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:1rem}
.marcas-lista li:last-child{margin-bottom:0}
.marcas-lista .ico{width:1.5rem;height:1.5rem;margin-top:.15em;color:var(--oliva)}
.fondo-oscuro .marcas-lista .ico{color:var(--aceite)}

/* Franja de garantías */
.garantias{padding-block:2rem;background:var(--tinte)}
.garantias ul{display:grid;gap:1.1rem 2rem;margin:0;padding:0;list-style:none}
@media (min-width:40em){.garantias ul{grid-template-columns:1fr 1fr}}
@media (min-width:64em){.garantias ul{grid-template-columns:repeat(4,1fr)}}
.garantias li{display:flex;align-items:center;gap:.9rem;margin:0;font-weight:700;font-size:1.05rem;line-height:1.35;color:var(--oliva-oscuro)}
.garantias .ico-circulo{display:grid;place-items:center;flex:none;width:3rem;height:3rem;border-radius:50%;background:var(--crema);color:var(--oliva)}
.garantias .ico{width:1.6rem;height:1.6rem}

/* Qué es */
.dos-columnas{display:grid;gap:2.25rem}
@media (min-width:48em){.dos-columnas{grid-template-columns:1fr 1fr;gap:0}}
.publico > :last-child{margin-bottom:0}
.publico + .publico{padding-top:2.25rem;border-top:2px solid var(--linea)}
@media (min-width:48em){.publico{padding-right:3rem}.publico + .publico{padding:0 0 0 3rem;border-top:0;border-left:2px solid var(--linea)}}
.nombre-aperador{display:grid;gap:1.5rem;align-items:center;margin-top:3.5rem;padding:2rem 0 0;border-top:2px solid var(--linea)}
@media (min-width:48em){.nombre-aperador{grid-template-columns:auto 1fr;gap:2.5rem}}
.nombre-aperador svg{width:5.5rem;height:5.5rem;--rama:var(--oliva-oscuro);--hoja:var(--oliva);--aceituna:var(--oliva-oscuro)}
.nombre-aperador p{margin:0;max-width:36em;font-family:var(--f-titulo);font-size:1.35rem;line-height:1.35;color:var(--oliva-oscuro)}
.nombre-aperador strong{display:block;margin-bottom:.3rem}

/* Pasos con la línea de surco que se dibuja */
.pasos{position:relative;display:grid;gap:2.25rem;margin:0;padding:0;list-style:none}
@media (min-width:56em){.pasos{grid-template-columns:repeat(3,1fr);gap:2.5rem}}
.paso:not(:last-child)::before,.paso:not(:last-child)::after{content:"";position:absolute;left:calc(1.55rem - 2px);top:3.1rem;bottom:-2.25rem;width:4px;border-radius:4px;background:var(--linea);transform-origin:0 0;transition:transform .9s var(--ease)}
.paso:not(:last-child)::after{background:var(--oliva)}
.paso:nth-child(2)::after{transition-delay:.7s}
@media (min-width:56em){
  .paso:not(:last-child)::before,.paso:not(:last-child)::after{left:3.1rem;right:-2.5rem;top:calc(1.55rem - 2px);bottom:auto;width:auto;height:4px}
}
.paso{position:relative;z-index:1;margin:0;padding-left:4.5rem}
@media (min-width:56em){.paso{padding:3.8rem 0 0}}
.paso > :last-child{margin-bottom:0}
.paso-numero{position:absolute;left:0;top:0;display:grid;place-items:center;width:3.1rem;height:3.1rem;border:4px solid var(--crema);border-radius:50%;background:var(--oliva-oscuro);color:var(--crema);font-family:var(--f-titulo);font-weight:800;font-size:1.5rem;line-height:1}
.fondo-tinte .paso-numero{border-color:var(--tinte)}
.caja-piloto .paso-numero{border-color:var(--papel)}
.pasos.oculto .paso::after{transform:scaleY(0)}
@media (min-width:56em){.pasos.oculto .paso::after{transform:scaleX(0)}}

/* Parcelas SIGPAC */
.dos-mitades{display:grid;gap:3rem;align-items:start}
@media (min-width:60em){.dos-mitades{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:4.5rem}}
.fondo-oscuro .cabeza-seccion p{color:var(--sobre-oscuro)}
.pasos-lista{margin:0 0 2rem;padding:0;list-style:none;counter-reset:p}
.pasos-lista li{position:relative;margin:0 0 1.3rem;padding-left:3.6rem;counter-increment:p}
.pasos-lista li::before{content:counter(p);position:absolute;left:0;top:.05rem;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--aceite);color:var(--oliva-noche);font-family:var(--f-titulo);font-weight:800;font-size:1.2rem}
.pasos-lista h3{margin:0 0 .15em;font-size:1.3rem}
.pasos-lista p{margin:0;color:var(--sobre-oscuro)}
.nota-veraz{display:flex;gap:.9rem;margin:0;padding:1.1rem 1.2rem;border-left:6px solid var(--aceite);border-radius:0 12px 12px 0;background:rgba(255,255,255,.08);font-size:1.05rem;line-height:1.5}
.nota-veraz .ico{width:1.7rem;height:1.7rem;margin-top:.1em;color:var(--aceite)}
.nota-veraz p{margin:0}
.mapa-caja{padding:1rem;border-radius:22px;background:#f3f2e4;color:var(--texto);box-shadow:0 34px 60px -34px rgba(0,0,0,.85)}
.mapa-chips{display:none;flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem}
.js .mapa-chips{display:flex}
.chip{min-height:2.9rem;padding:.35rem 1.05rem;border:2px solid var(--oliva-oscuro);border-radius:999px;background:transparent;color:var(--oliva-oscuro);font:inherit;font-weight:700;font-size:1.02rem;cursor:pointer;transition:background-color .2s,color .2s}
.chip:hover{background:var(--tinte-fuerte)}
.chip[aria-pressed="true"]{background:var(--oliva-oscuro);color:var(--crema)}
.mapa{width:100%;height:auto;border-radius:14px;background:#e6e9cf}
.parcela{cursor:pointer;transition:opacity .7s var(--ease)}
.parcela .base{transition:fill .4s}
.parcela.activa .base{fill:#d3df94}
.parcela .textura{stroke:#f3f2e4;stroke-width:8;stroke-linejoin:round;pointer-events:none}
.contorno{fill:none;stroke:var(--aceite);stroke-width:6;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;pointer-events:none;transition:stroke-dashoffset 1s var(--ease)}
.contorno.activa{stroke-dashoffset:0}
.parcela .nombre{font-family:var(--f-titulo);font-weight:800;font-size:27px;fill:var(--oliva-noche);text-anchor:middle;paint-order:stroke;stroke:#f3f2e4;stroke-width:6;stroke-linejoin:round;pointer-events:none}
.vecina{fill:#d6dbb6;stroke:#f3f2e4;stroke-width:8;stroke-linejoin:round}
.mapa-dialogo{display:grid;gap:.5rem;margin-top:1rem}
.mapa-dialogo .msj{max-width:100%}
.mapa-ficha{margin-top:.9rem;padding:1rem 1.2rem;border:2px solid var(--linea);border-radius:var(--radio);background:var(--papel);transition:opacity .6s var(--ease) 2.2s}
.mapa-ficha h3{margin:0 0 .5rem;font-size:1.35rem;color:var(--oliva-oscuro)}
.mapa-ficha dl{display:grid;grid-template-columns:auto 1fr;gap:.25rem 1.2rem;margin:0;font-size:1.05rem}
.mapa-ficha dt{color:var(--texto-suave)}
.mapa-ficha dd{margin:0;font-weight:700}
.mapa-pie{margin:.8rem .2rem 0;font-size:.95rem;color:var(--texto-suave)}
.mapa-caja .msj{transition:opacity .6s var(--ease),transform .6s var(--ease)}
.js .mapa-caja.preparando .parcela{opacity:0}
.js .mapa-caja.preparando .msj,.js .mapa-caja.preparando .mapa-ficha{opacity:0;transform:translateY(8px)}
.mapa-caja .parcela:nth-of-type(2){transition-delay:.12s}
.mapa-caja .parcela:nth-of-type(3){transition-delay:.24s}
.mapa-caja .parcela:nth-of-type(4){transition-delay:.36s}
.mapa-dialogo .msj:nth-child(1){transition-delay:1.1s}
.mapa-dialogo .msj:nth-child(2){transition-delay:1.8s}

/* Labores */
.labores{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem 1rem;margin:0;padding:0;list-style:none}
@media (min-width:56em){.labores{grid-template-columns:repeat(5,1fr);gap:1.5rem}}
.labor{display:flex;flex-direction:column;gap:.7rem;margin:0;padding:1.1rem 0 0;border-top:4px solid var(--oliva);font-family:var(--f-titulo);font-weight:700;font-size:1.3rem;color:var(--oliva-oscuro)}
.labor .ico{width:2.7rem;height:2.7rem;color:var(--oliva)}
.tres-formas{display:grid;gap:1.75rem}
@media (min-width:56em){.tres-formas{grid-template-columns:repeat(3,1fr);gap:2.5rem}}
.forma{padding-top:1.2rem;border-top:2px solid var(--linea)}
.forma > :last-child{margin-bottom:0}
.forma-icono{display:grid;place-items:center;width:3.4rem;height:3.4rem;margin-bottom:.9rem;border-radius:50%;background:var(--crema);color:var(--oliva-oscuro)}
.forma-icono .ico{width:1.8rem;height:1.8rem}
.aviso{display:flex;gap:1rem;align-items:flex-start;margin-top:3rem;padding:1.3rem 1.4rem;border:2px solid #e3cfa5;border-left:8px solid var(--tierra);border-radius:var(--radio);background:#fbf4e6}
.aviso .ico{width:2rem;height:2rem;margin-top:.1em;color:var(--tierra)}
.aviso h3{margin-bottom:.3em;font-size:1.3rem}
.aviso p{margin:0}

/* Cooperativas y panel del técnico */
.panel-figura{margin:0}
.panel{border-radius:var(--radio);background:var(--papel);color:var(--texto);box-shadow:0 34px 60px -34px rgba(0,0,0,.85);overflow:hidden}
.panel-barra{display:flex;align-items:center;gap:.4rem;padding:.65rem .9rem;background:var(--tinte-fuerte);font-size:.95rem;font-weight:700;color:var(--oliva-oscuro)}
.panel-barra i{display:block;width:.7rem;height:.7rem;border-radius:50%;background:var(--oliva)}
.panel-barra span{margin-left:.5rem}
.panel table{width:100%;border-collapse:collapse;font-size:1.05rem}
.panel th,.panel td{padding:.75rem .9rem;text-align:left;vertical-align:middle;border-top:1px solid var(--linea)}
.panel thead th{border-top:0;font-size:.95rem;color:var(--texto-suave)}
.estado{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .7rem;border-radius:999px;font-size:.95rem;font-weight:700;white-space:nowrap}
.estado .ico{width:1.1em;height:1.1em;stroke-width:2.6}
.est-pend{background:#fbf0d4;color:#6b4a12}
.est-rev{display:none;background:#dfeccb;color:#2d4a14}
.panel tr[data-revisado="si"] .est-pend{display:none}
.panel tr[data-revisado="si"] .est-rev{display:inline-flex}
.panel tr{transition:background-color 1.2s}
.panel tr.destello{background:#f7eec8}
.panel-pie{margin:.8rem .2rem 0;font-size:.95rem;color:var(--sobre-oscuro-suave)}

/* Piloto y cómo empezar */
.caja-piloto{max-width:60rem;margin-inline:auto;padding:2.25rem 1.4rem;border:2px solid var(--linea);border-radius:24px;background:var(--papel)}
@media (min-width:48em){.caja-piloto{padding:3rem 3.25rem}}
.caja-piloto .cabeza-seccion{margin-bottom:1.5rem}
.empezar{margin-top:2.5rem;padding-top:2rem;border-top:2px solid var(--linea)}
.empezar h3{margin-bottom:1.4rem}

/* Datos */
.datos-lista{display:grid;gap:0 3rem;margin:0;padding:0;list-style:none}
@media (min-width:48em){.datos-lista{grid-template-columns:1fr 1fr}}
.dato{display:flex;gap:1rem;margin:0;padding:1.4rem 0;border-top:2px solid var(--linea)}
.dato .ico{width:2.1rem;height:2.1rem;margin-top:.15rem;color:var(--oliva)}
.dato h3{margin-bottom:.2em;font-size:1.3rem}
.dato p{margin:0}
.enlace-aparte{margin:2.5rem 0 0;font-weight:700}

/* Preguntas */
.preguntas{max-width:50rem}
.pregunta{border-top:2px solid var(--linea)}
.pregunta:last-child{border-bottom:2px solid var(--linea)}
.pregunta summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.9rem;padding:1rem 0;font-family:var(--f-titulo);font-weight:700;font-size:1.3rem;line-height:1.25;color:var(--oliva-oscuro);list-style:none;cursor:pointer}
.pregunta summary::-webkit-details-marker{display:none}
.pregunta summary::after{content:"";flex:none;width:1.5rem;height:1.5rem;background:linear-gradient(currentColor,currentColor) center/100% 3px no-repeat,linear-gradient(currentColor,currentColor) center/3px 100% no-repeat;transition:transform .3s var(--ease)}
.pregunta[open] summary::after{transform:rotate(45deg)}
.pregunta summary:hover{color:var(--oliva)}
.respuesta{max-width:40em;padding:0 0 1.4rem}
.respuesta > :last-child{margin-bottom:0}

/* Contacto */
.contacto-rejilla{display:grid;gap:2.25rem}
@media (min-width:56em){.contacto-rejilla{grid-template-columns:repeat(3,1fr);gap:3rem}}
.contacto-bloque{padding-top:1.2rem;border-top:4px solid var(--oliva)}
.contacto-bloque > :last-child{margin-bottom:0}
.contacto-etiqueta{margin:0 0 .3rem;font-weight:700;font-size:1.05rem;color:var(--oliva)}
.contacto-dato{margin:0 0 1.1rem;font-family:var(--f-titulo);font-weight:800;font-size:1.55rem;line-height:1.25;color:var(--oliva-oscuro)}
.contacto-bloque .boton{width:100%}

/* Pie */
.pie{padding-block:3.5rem 1.5rem;background:var(--texto);color:#e6e9d6;font-size:1.05rem}
.pie a{color:#fff}
.pie a:hover{color:#dfe6c2}
.pie .marca{color:#fff;--rama:#dfe6c2;--hoja:#a9bb73;--aceituna:#f6f5ee}
.pie-rejilla{display:grid;gap:2rem}
@media (min-width:48em){.pie-rejilla{grid-template-columns:1.2fr 1fr .8fr}}
.pie-lema{margin:1rem 0 0}
.pie-titulo{margin:0 0 .5rem;font-weight:700;color:#fff}
.pie address{font-style:normal}
.pie li a,.pie address a{display:inline-block;padding:.5rem 0}
.pie li{margin:0}
.pie ul{margin:0;padding:0;list-style:none}
.pie-final{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid rgba(246,245,238,.2);font-size:.95rem;color:#c9ceb5}

/* ───────── Páginas legales ───────── */
.legal{padding-block:2.5rem 4rem}
.legal .contenedor{max-width:48rem}
.legal h1{font-size:clamp(2.1rem,1.6rem + 2.4vw,3.1rem)}
.legal h2{margin-top:2.6rem;padding-top:1.6rem;border-top:2px solid var(--linea);font-size:clamp(1.45rem,1.25rem + .9vw,1.85rem)}
.legal h3{margin-top:1.5rem;font-size:1.2rem}
.antetitulo{margin:0 0 .75rem;font-weight:700;font-size:1rem;color:var(--oliva)}
.fecha{color:var(--texto-suave);font-size:.95em}
.resumen{margin:1.75rem 0 2rem;padding:1.3rem 1.4rem;border:2px solid var(--linea);border-left:8px solid var(--oliva);border-radius:var(--radio);background:var(--papel)}
.resumen h2{margin:0 0 .6rem;padding:0;border:0;font-size:1.35rem}
.resumen ul{margin-bottom:0}
.indice{margin:0 0 1rem;padding:1.2rem 1.4rem;border-radius:var(--radio);background:var(--tinte)}
.indice p{margin:0 0 .5rem;font-weight:700}
.indice ol{margin:0}
@media (min-width:48em){.indice ol{columns:2;column-gap:2.5rem}}
.ficha{display:grid;gap:.1rem 1.5rem;margin:0 0 1em;padding:1.2rem 1.4rem;border:2px solid var(--linea);border-radius:var(--radio);background:var(--papel)}
.ficha dt{font-weight:700;color:var(--oliva-oscuro)}
.ficha dd{margin:0 0 .7rem;overflow-wrap:anywhere}
@media (min-width:40em){.ficha{grid-template-columns:auto 1fr;row-gap:.6rem}.ficha dd{margin:0}}
.encargados{display:grid;gap:1rem;margin:0 0 1.25rem;padding:0;list-style:none}
.encargado{margin:0;padding:1.1rem 1.3rem;border:2px solid var(--linea);border-radius:var(--radio);background:var(--papel)}
.encargado h3{margin:0 0 .3rem;font-size:1.25rem}
.encargado p{margin:0}
.encargado .lugar{margin-top:.4rem;font-size:.95em;color:var(--texto-suave)}

/* ───────── Aparición al hacer scroll (la pone y quita el JS; sin JS todo se ve) ───────── */
.aparece > *{transition:opacity .6s var(--ease),transform .6s var(--ease)}
.aparece.oculto > *{opacity:0;transform:translateY(12px)}
.aparece > :nth-child(2){transition-delay:.09s}
.aparece > :nth-child(3){transition-delay:.18s}
.aparece > :nth-child(4){transition-delay:.27s}
.aparece > :nth-child(5){transition-delay:.36s}
.aparece > :nth-child(6){transition-delay:.45s}

/* ───────── Movimiento ───────── */
@media (prefers-reduced-motion:no-preference){
  .rb-tallo{animation:trazar .9s var(--ease) .2s both}
  .rb-hoja{animation:brotar .5s var(--ease) both}
  .rb-aceituna{animation:brotar .5s var(--ease) 1.4s both}
  .rama-portada g:nth-of-type(1) .rb-hoja{animation-delay:.55s}
  .rama-portada g:nth-of-type(2) .rb-hoja{animation-delay:.7s}
  .rama-portada g:nth-of-type(3) .rb-hoja{animation-delay:.85s}
  .rama-portada g:nth-of-type(4) .rb-hoja{animation-delay:1s}
  .rama-portada g:nth-of-type(5) .rb-hoja{animation-delay:1.15s}
  .rama-portada g:nth-of-type(6) .rb-hoja{animation-delay:1.3s}
  .trazo path{animation:trazar 1.1s var(--ease) .9s both}
  .pregunta[open] .respuesta{animation:abrir .35s var(--ease)}
  .panel tr.destello{animation:destello 1.4s ease-out}
}
@keyframes trazar{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes brotar{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes abrir{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@keyframes destello{from{background-color:#f3df94}to{background-color:transparent}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;animation-delay:0s !important;transition-duration:.01ms !important;transition-delay:0s !important}
  .js .charla-cuerpo:not([data-estado]) .msj{opacity:1}
  .campina g{transform:none !important}
}
@media print{
  .aparece.oculto > *{opacity:1 !important;transform:none !important}
  .barra-movil,.cabecera-cta{display:none}
}
