/* ============================================================
   SempereConsulting · Opción B — boutique / editorial
   Sistema visual según el briefing aprobado.
   Azul tinta · marfil cálido · bronce apagado.
   ============================================================ */
:root{
  --tinta:#0B2239;
  --tinta-alt:#0F2A47;
  --tinta-linea:#1E3A5C;
  --marfil:#F5F1EA;
  --marfil-2:#F3EEE5;
  --carbon:#1C2530;
  --carbon-suave:#3A4550;
  --claro-sobre-tinta:#C8D2DC;
  --bronce:#A9895B;          /* decorativo y texto sobre tinta (AA 4,9:1) */
  --bronce-linea:#9B7745;
  --bronce-texto:#7A5A2F;    /* texto pequeño sobre marfil (AA 5,5:1) */
  --linea-clara:#DCD5C8;

  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

  --max:1240px;
  --gutter:clamp(1.25rem,4vw,2.5rem);
  --ritmo:clamp(3.5rem,7vw,7.5rem);   /* 56px móvil → 120px escritorio */
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--marfil);color:var(--carbon);
  font-family:var(--sans);font-size:1rem;line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--bronce-linea);outline-offset:3px}

/* ---------- tipografía ---------- */
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-.012em}
h1{font-size:clamp(2.1rem,4.4vw,3.5rem);line-height:1.13}
h2{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.18}
h3{font-size:clamp(1.2rem,1.5vw,1.4rem);line-height:1.3}
p{margin:0 0 1.15em}
p:last-child{margin-bottom:0}

.rotulo{
  font-family:var(--sans);font-size:.72rem;font-weight:500;
  letter-spacing:.17em;text-transform:uppercase;color:var(--bronce-texto);
  margin:0 0 1.5rem;display:flex;align-items:center;gap:1rem;
}
.rotulo::after{content:"";height:1px;flex:1;max-width:4.5rem;background:var(--bronce-linea);opacity:.5}
.rotulo--tinta{color:var(--bronce)}
.rotulo--tinta::after{background:var(--bronce)}

.entrada{font-size:1.0625rem;color:var(--carbon-suave);max-width:56ch}

/* ---------- estructura ---------- */
.contenedor{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.seccion{padding-block:var(--ritmo)}
.seccion--marfil2{background:var(--marfil-2)}
.seccion--tinta{background:var(--tinta);color:var(--marfil)}
.seccion--tinta h2,.seccion--tinta h3{color:var(--marfil)}
.cabeza{max-width:40ch;margin-bottom:clamp(2.5rem,4vw,3.5rem)}

/* ---------- botones y enlaces ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--sans);font-size:.9375rem;font-weight:500;text-decoration:none;
  padding:.95rem 1.9rem;border:1px solid var(--tinta);border-radius:2px;
  background:var(--tinta);color:var(--marfil);
  transition:background .22s ease,color .22s ease,border-color .22s ease;
}
.btn:hover{background:var(--tinta-alt);border-color:var(--tinta-alt)}
.btn--linea{background:transparent;color:var(--marfil);border-color:rgba(245,241,234,.45)}
.btn--linea:hover{background:rgba(245,241,234,.08);border-color:var(--marfil)}
.enlace{
  font-size:.9375rem;text-decoration:none;color:var(--carbon);
  border-bottom:1px solid var(--bronce-linea);padding-bottom:.3rem;
  transition:border-color .22s ease,color .22s ease;
}
.enlace:hover{color:var(--bronce-texto);border-bottom-color:var(--carbon)}
.enlace--tinta{color:var(--marfil);border-bottom-color:var(--bronce)}
.enlace--tinta:hover{color:var(--bronce);border-bottom-color:var(--marfil)}

/* ============================================================
   CABECERA
   ============================================================ */
.cabecera{background:var(--tinta);position:sticky;top:0;z-index:60}
.cabecera__interior{
  max-width:var(--max);margin-inline:auto;padding:1.1rem var(--gutter);
  display:flex;align-items:center;gap:1.75rem;position:relative;
}
.marca{flex:none;text-decoration:none;display:flex;align-items:center;padding-block:.45rem}
.marca img{height:30px;width:auto}
.menu{display:flex;align-items:center;gap:1.9rem;margin-left:auto}
.menu a{
  font-size:.875rem;text-decoration:none;color:var(--claro-sobre-tinta);
  position:relative;padding-block:.35rem;transition:color .2s ease;
}
.menu a::after{
  content:"";position:absolute;left:0;bottom:.1rem;width:0;height:1px;
  background:var(--bronce);transition:width .25s ease;
}
.menu a:hover{color:var(--marfil)}
.menu a:hover::after{width:100%}
.menu .btn{display:none}
.cabecera__cta{
  flex:none;font-size:.875rem;text-decoration:none;color:var(--marfil);
  border-bottom:1px solid var(--bronce);padding-bottom:.35rem;
  transition:border-bottom-color .22s ease;
}
.cabecera__cta:hover{border-bottom-color:var(--marfil)}
.wa-icono{
  flex:none;display:grid;place-items:center;width:2.75rem;height:2.75rem;
  color:var(--claro-sobre-tinta);transition:color .2s ease;
}
.wa-icono:hover{color:var(--marfil)}
.wa-icono svg{width:1.15rem;height:1.15rem}
.hamburguesa{display:none}

/* ============================================================
   HERO — panel de marfil montado sobre la fotografía
   ============================================================ */
.hero{background:var(--tinta);position:relative}
.hero__rejilla{
  max-width:var(--max);margin-inline:auto;
  display:grid;grid-template-columns:1fr;align-items:stretch;
}
.hero__panel{
  background:var(--marfil);padding:clamp(2.5rem,5vw,4.5rem) var(--gutter);
  display:flex;flex-direction:column;justify-content:center;
}
.hero__panel .rotulo{margin-bottom:1.75rem}
.hero h1{margin-bottom:1.5rem;max-width:15ch}
.hero__texto{color:var(--carbon-suave);max-width:46ch;margin-bottom:2.25rem}
.hero__acciones{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}
.hero__foto{position:relative;min-height:15rem}
.hero__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:35% 28%}

@media(min-width:56rem){
  .hero__rejilla{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:660px}
  .hero__panel{
    padding:clamp(3rem,5vw,4.5rem) clamp(2.5rem,4vw,4rem);
    margin:clamp(2.5rem,4vw,3.5rem) -5% clamp(2.5rem,4vw,3.5rem) var(--gutter);
    position:relative;z-index:2;
    border-left:2px solid var(--bronce-linea);
  }
  .hero__foto{min-height:0}
}

/* ============================================================
   FRANJA DE CONFIANZA
   ============================================================ */
.confianza{background:var(--marfil);border-bottom:1px solid var(--linea-clara)}
.confianza__rejilla{
  display:grid;grid-template-columns:1fr;
  max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter);
}
.confianza__dato{
  padding:1.5rem 0;text-align:center;font-size:.9375rem;color:var(--carbon-suave);
  border-bottom:1px solid var(--linea-clara);margin:0;
}
.confianza__dato:last-child{border-bottom:0}
@media(min-width:48rem){
  .confianza__rejilla{grid-template-columns:repeat(3,1fr)}
  .confianza__dato{
    padding:2.1rem 1.5rem;border-bottom:0;border-right:1px solid var(--linea-clara);
  }
  .confianza__dato:last-child{border-right:0}
}

/* ============================================================
   ÁREAS DE ESPECIALIZACIÓN — filas separadas por líneas finas
   ============================================================ */
.areas{border-top:1px solid var(--linea-clara)}
.area{
  display:grid;grid-template-columns:auto 1fr;gap:.3rem 1.5rem;
  padding-block:clamp(1.75rem,3vw,2.5rem);
  border-bottom:1px solid var(--linea-clara);
  text-decoration:none;color:inherit;
  transition:background .25s ease;
}
.area:hover{background:rgba(155,119,69,.055)}
.area__num{
  font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,1.9rem);
  color:var(--bronce-linea);line-height:1;padding-top:.1rem;
}
.area__texto p{margin:.5rem 0 0;color:var(--carbon-suave);font-size:.9375rem;max-width:62ch}
.area__ir{
  font-size:.8125rem;color:var(--bronce-texto);margin-top:.9rem;
  display:inline-flex;align-items:center;gap:.45rem;
}
.area__ir i{font-style:normal;transition:transform .22s ease}
.area:hover .area__ir i{transform:translateX(4px)}
@media(max-width:51.99rem){
  .area__num{grid-row:span 2}
}
@media(min-width:52rem){
  .area{grid-template-columns:auto minmax(0,20rem) minmax(0,1fr);align-items:start}
}

/* ============================================================
   MANIFIESTO
   ============================================================ */
.manifiesto{display:grid;gap:clamp(2.5rem,4vw,4rem);grid-template-columns:1fr}
@media(min-width:56rem){.manifiesto{grid-template-columns:1.15fr .85fr}}
.manifiesto__frase{
  font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.25;
  margin:0;padding-left:clamp(1.25rem,2vw,2rem);
  border-left:2px solid var(--bronce);letter-spacing:-.012em;
}
.manifiesto__lado p{color:var(--claro-sobre-tinta);font-size:.9375rem}
.manifiesto__lado .rotulo{color:var(--bronce)}

/* ============================================================
   MÉTODO
   ============================================================ */
.metodo{display:grid;gap:0;grid-template-columns:1fr}
@media(min-width:40rem){.metodo{grid-template-columns:1fr 1fr;gap:0 clamp(1.5rem,3vw,2.5rem)}}
@media(min-width:64rem){.metodo{grid-template-columns:repeat(4,1fr)}}
.paso{padding:1.5rem 0;border-top:1px solid var(--linea-clara)}
@media(min-width:64rem){
  .paso{padding:0 0 0 clamp(1.25rem,2vw,2rem);border-top:0;border-left:1px solid var(--linea-clara)}
  .paso:first-child{padding-left:0;border-left:0}
}
.paso__num{
  font-family:var(--serif);font-size:clamp(1.7rem,2.4vw,2.1rem);
  color:var(--bronce-linea);line-height:1;display:block;margin-bottom:.85rem;
}
.paso h3{margin-bottom:.45rem}
.paso p{font-size:.9375rem;color:var(--carbon-suave);margin:0}

/* ============================================================
   EQUIPO
   ============================================================ */
.equipo{display:grid;gap:clamp(2rem,4vw,3.5rem);grid-template-columns:1fr;align-items:center}
@media(min-width:56rem){.equipo{grid-template-columns:.8fr 1.2fr}}
.equipo__ambiente img{width:100%;aspect-ratio:4/5;object-fit:cover}
.socios{margin-top:clamp(1.5rem,2.5vw,2rem);border-top:1px solid var(--linea-clara)}
.socio{
  display:grid;grid-template-columns:auto 1fr;gap:1.25rem;align-items:center;
  padding-block:1.4rem;border-bottom:1px solid var(--linea-clara);
}
.socio__foto{width:4.5rem;height:4.5rem;overflow:hidden;border-radius:2px;background:var(--marfil-2)}
.socio__foto img{width:100%;height:100%;object-fit:cover;object-position:center 15%;filter:grayscale(1) contrast(1.02)}
.socio h3{margin-bottom:.15rem}
.socio__cargo{font-size:.8125rem;color:var(--bronce-texto);margin:0 0 .45rem}
.socio__perfil{
  font-size:.8125rem;text-decoration:none;color:var(--carbon-suave);
  border-bottom:1px solid var(--linea-clara);padding-bottom:.5rem;padding-top:.45rem;
  display:inline-block;
  transition:color .2s ease,border-color .2s ease;
}
.socio__perfil:hover{color:var(--bronce-texto);border-bottom-color:var(--bronce-linea)}


/* ============================================================
   CIERRE
   ============================================================ */
.cierre{display:grid;grid-template-columns:1fr}
@media(min-width:56rem){.cierre{grid-template-columns:1.1fr .9fr}}
.cierre__izq{
  background:var(--marfil-2);padding:var(--ritmo) var(--gutter);
  display:flex;flex-direction:column;justify-content:center;
}
.cierre__izq h2{max-width:14ch;margin-bottom:1.25rem}
.cierre__der{
  background:var(--tinta);color:var(--marfil);
  padding:var(--ritmo) var(--gutter);
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
}
.cierre__der h3{color:var(--marfil);margin-bottom:.8rem}
.cierre__der p{color:var(--claro-sobre-tinta);font-size:.9375rem;margin-bottom:2rem}
.cierre__der .rotulo{color:var(--bronce)}
@media(min-width:56rem){
  .cierre__izq{padding-inline:clamp(2.5rem,5vw,5rem) clamp(2.5rem,4vw,4rem)}
  .cierre__der{padding-inline:clamp(2.5rem,4vw,4rem) clamp(2.5rem,5vw,5rem)}
}

/* ============================================================
   PIE
   ============================================================ */
.pie{background:var(--tinta);color:var(--claro-sobre-tinta);padding-block:clamp(3rem,5vw,4.5rem) 2rem}
.pie__rejilla{display:grid;gap:2.5rem;grid-template-columns:1fr}
@media(min-width:48rem){.pie__rejilla{grid-template-columns:1.4fr 1fr 1fr}}
.pie img{height:28px;width:auto;margin-bottom:1.25rem}
.pie__lugar{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bronce);margin:0 0 .9rem}
.pie__intro{font-size:.9375rem;max-width:40ch;margin:0}
.pie h2{
  font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.17em;
  text-transform:uppercase;color:var(--bronce);margin:0 0 1.2rem;
}
.pie ul{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.pie a{font-size:.9375rem;text-decoration:none;transition:color .2s ease}
.pie__dato{font-size:.9375rem;line-height:1.6}
.pie a:hover{color:var(--marfil)}
.pie__legal{
  margin-top:clamp(2.5rem,4vw,3.5rem);padding-top:1.5rem;
  border-top:1px solid var(--tinta-linea);
  display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:space-between;
  font-size:.8125rem;
}
.pie__legal nav{display:flex;flex-wrap:wrap;gap:.75rem 1.75rem}
.pie__legal a{font-size:.8125rem}

/* ============================================================
   MOVIMIENTO — sobrio, una sola vez, nunca continuo
   ============================================================ */
[data-revelar]{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}
[data-revelar].visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms !important;animation-duration:.01ms !important}
  [data-revelar]{opacity:1;transform:none}
}

/* ============================================================
   PROFUNDIDAD — el papel sobre la fotografía, no efectos vistosos
   Todo va ligado al scroll o al puntero: nada se mueve solo.
   ============================================================ */
.hero{overflow:hidden;perspective:1800px;perspective-origin:50% 42%}
.hero__rejilla{transform-style:preserve-3d;will-change:transform}
.hero__foto img{height:116%;top:-8%;will-change:transform}

@media(min-width:56rem){
  /* el panel de marfil es una lámina física apoyada sobre la imagen */
  .hero__panel{
    box-shadow:
      0 34px 64px -44px rgba(11,34,57,.5),
      0 10px 24px -20px rgba(11,34,57,.3);
  }
}

/* las filas de área se levantan levemente al pasarlas */
.area{transform-style:preserve-3d;transition:background .25s ease,transform .35s cubic-bezier(.22,1,.36,1)}
.area:hover{transform:translate3d(0,-2px,14px)}
.areas{perspective:1000px}

/* los retratos ganan un punto de relieve */
.socios{perspective:900px}
.socio{transition:transform .35s cubic-bezier(.22,1,.36,1)}
.socio:hover{transform:translate3d(0,-1px,10px)}
.socio__foto{box-shadow:0 10px 22px -16px rgba(11,34,57,.55)}

/* el revelado entra desde el fondo, no solo desde abajo */
[data-revelar]{transform:translateY(16px)}
[data-revelar].visible{transform:none}

@media(prefers-reduced-motion:reduce){
  .hero__rejilla,.hero__foto img{transform:none !important}
  .area:hover,.socio:hover{transform:none}
}

/* ============================================================
   MÓVIL — menú sencillo, cierre visible, sin superposiciones
   ============================================================ */
@media(max-width:55.99rem){
  .hamburguesa{
    display:grid;place-items:center;order:5;
    width:2.75rem;height:2.75rem;background:none;cursor:pointer;
    border:1px solid var(--tinta-linea);border-radius:2px;color:var(--marfil);
  }
  .cabecera__cta{display:none}
  .wa-icono{order:4;margin-left:auto}
  .menu{
    position:absolute;left:0;right:0;top:100%;margin:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--tinta);border-top:1px solid var(--tinta-linea);
    max-height:0;overflow:hidden;transition:max-height .3s ease;
  }
  .menu[data-abierto="si"]{max-height:32rem}
  .menu a{padding:1rem var(--gutter);border-bottom:1px solid var(--tinta-linea);font-size:1rem}
  .menu a::after{display:none}
  .menu .btn{display:inline-flex;margin:1.25rem var(--gutter);border-color:var(--bronce);background:transparent}
  .menu .btn:hover{background:rgba(245,241,234,.08)}
}

/* ============================================================
   PÁGINAS INTERIORES
   ============================================================ */
.hero-int{background:var(--tinta);color:var(--marfil);padding-block:clamp(3rem,6vw,5.5rem)}
.hero-int .rotulo{color:var(--bronce)}
.hero-int .rotulo::after{background:var(--bronce)}
.hero-int h1{max-width:20ch;margin-bottom:1.25rem}
.hero-int p{color:var(--claro-sobre-tinta);max-width:58ch;font-size:1.0625rem;margin:0}
.hero-int .btn{margin-top:2rem;background:transparent;color:var(--marfil);border-color:rgba(245,241,234,.45)}
.hero-int .btn:hover{background:rgba(245,241,234,.08);border-color:var(--marfil)}

.doble{display:grid;gap:clamp(2rem,4vw,3.5rem);grid-template-columns:1fr;align-items:start}
@media(min-width:56rem){.doble{grid-template-columns:minmax(0,22rem) minmax(0,1fr)}}
.doble__lado{position:sticky;top:6rem}
@media(max-width:55.99rem){.doble__lado{position:static}}

.situaciones{list-style:none;margin:0;padding:0;border-top:1px solid var(--linea-clara)}
.situaciones li{
  padding:1.05rem 0 1.05rem 1.75rem;border-bottom:1px solid var(--linea-clara);
  position:relative;color:var(--carbon-suave);font-size:.9688rem;
}
.situaciones li::before{
  content:"";position:absolute;left:0;top:1.6rem;width:.65rem;height:1px;background:var(--bronce-linea);
}

.detalle{border-top:1px solid var(--linea-clara);margin-top:clamp(2rem,3vw,2.5rem)}
.detalle__item{padding-block:clamp(1.5rem,2.5vw,2.1rem);border-bottom:1px solid var(--linea-clara)}
.detalle__item h3{margin-bottom:.5rem}
.detalle__item p{margin:0;color:var(--carbon-suave);font-size:.9375rem;max-width:64ch}

.faq{border-top:1px solid var(--linea-clara);margin-top:clamp(2rem,3vw,2.5rem)}
.faq details{border-bottom:1px solid var(--linea-clara)}
.faq summary{
  cursor:pointer;list-style:none;padding:1.25rem 2.5rem 1.25rem 0;position:relative;
  font-family:var(--serif);font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.35;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";position:absolute;right:.5rem;top:1.15rem;color:var(--bronce-linea);
  font-size:1.3rem;line-height:1;transition:transform .25s ease;
}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--bronce-texto)}
.faq p{margin:0 0 1.25rem;color:var(--carbon-suave);font-size:.9375rem;max-width:64ch}

/* ---------- formulario ---------- */
.formulario{display:grid;gap:1.25rem;max-width:34rem}
.campo{display:grid;gap:.4rem}
.campo label{font-size:.8125rem;font-weight:500;letter-spacing:.02em;color:var(--carbon)}
.campo label .req{color:var(--bronce-texto)}
.campo input,.campo textarea{
  /* 16px exactos: por debajo, iOS amplía la página al enfocar el campo */
  font-family:var(--sans);font-size:1rem;color:var(--carbon);
  padding:.8rem .9rem;border:1px solid var(--linea-clara);border-radius:2px;
  background:#FBF9F5;transition:border-color .2s ease;
}
.campo input:focus,.campo textarea:focus{border-color:var(--bronce-linea);outline:none}
.campo textarea{min-height:8rem;resize:vertical}
.consentimiento{display:flex;gap:.7rem;align-items:flex-start;font-size:.875rem;color:var(--carbon-suave)}
.consentimiento input{margin-top:.25rem;flex:none;width:1.05rem;height:1.05rem;accent-color:var(--tinta)}
.consentimiento a{color:var(--carbon)}
.aviso-form{
  padding:1rem 1.15rem;border-radius:2px;font-size:.9375rem;margin-bottom:1.75rem;
  border-left:2px solid var(--bronce-linea);background:var(--marfil-2);
}
.aviso-form--error{border-left-color:#A3352B;background:#F7ECEA}

/* ---------- texto largo (páginas legales) ---------- */
.prosa{max-width:68ch}
.prosa h2{font-size:clamp(1.3rem,2vw,1.6rem);margin:2.5rem 0 .85rem}
.prosa h3{font-size:1.0625rem;margin:1.9rem 0 .6rem;font-family:var(--sans);font-weight:600}
.prosa p,.prosa li{color:var(--carbon-suave);font-size:.9688rem}
.prosa ul,.prosa ol{padding-left:1.15rem;margin:0 0 1.2em}
.prosa li{margin-bottom:.4rem}
.prosa table{width:100%;border-collapse:collapse;margin:1.25rem 0 1.75rem;font-size:.875rem}
.prosa th,.prosa td{text-align:left;padding:.7rem .6rem;border-bottom:1px solid var(--linea-clara);vertical-align:top}
.prosa th{font-family:var(--sans);font-weight:600;color:var(--carbon);font-size:.8125rem;
          letter-spacing:.03em;text-transform:uppercase}
.prosa td{color:var(--carbon-suave)}
.prosa__meta{font-size:.8125rem;color:var(--bronce-texto);margin-bottom:2rem}
.tabla-envoltura{overflow-x:auto}

/* ---------- selector de idioma ---------- */
.menu .idioma{
  font-family:var(--mono,var(--sans));font-size:.78rem;letter-spacing:.08em;
  text-transform:uppercase;color:var(--bronce);
}
.menu .idioma:hover{color:var(--marfil)}
@media(max-width:55.99rem){.menu .idioma{padding:1rem var(--gutter);border-bottom:1px solid var(--tinta-linea)}}

/* ============================================================
   AVISO DE COOKIES — solo aparece si hay analítica configurada
   ============================================================ */
.cookies{
  position:fixed;left:0;right:0;bottom:0;z-index:80;
  background:var(--tinta);color:var(--marfil);
  border-top:2px solid var(--bronce-linea);
  padding:clamp(1.25rem,2.5vw,1.75rem) var(--gutter);
  transform:translateY(110%);transition:transform .35s cubic-bezier(.22,1,.36,1);
}
.cookies[data-visible="si"]{transform:none}
.cookies__int{
  max-width:var(--max);margin-inline:auto;
  display:grid;gap:1.25rem;align-items:center;grid-template-columns:1fr;
}
@media(min-width:56rem){.cookies__int{grid-template-columns:1fr auto}}
.cookies h2{
  font-family:var(--sans);font-size:.72rem;font-weight:500;letter-spacing:.17em;
  text-transform:uppercase;color:var(--bronce);margin:0 0 .5rem;
}
.cookies p{font-size:.9375rem;color:var(--claro-sobre-tinta);margin:0;max-width:70ch}
.cookies a{color:var(--marfil)}
.cookies__acciones{display:flex;flex-wrap:wrap;gap:.7rem}
.cookies__acciones .btn{padding:.75rem 1.5rem;font-size:.875rem;white-space:nowrap}
/* Aceptar y rechazar con el mismo peso visual: lo exige la AEPD */
.btn--cookie{background:var(--marfil);color:var(--tinta);border-color:var(--marfil)}
.btn--cookie:hover{background:#fff;border-color:#fff}
.btn--cookie-no{background:transparent;color:var(--marfil);border-color:rgba(245,241,234,.5)}
.btn--cookie-no:hover{background:rgba(245,241,234,.1);border-color:var(--marfil)}
@media(max-width:34rem){
  .cookies__acciones{width:100%}
  .cookies__acciones .btn{flex:1 1 auto;justify-content:center}
}

/* ---------- zona de toque en móvil ---------- */
@media(max-width:55.99rem){
  .pie ul{gap:.25rem}
  .pie ul a{display:inline-block;padding-block:.55rem}
  .pie__legal a{display:inline-block;padding-block:.4rem}
  .enlace{display:inline-block;padding-top:.35rem}
}

/* ============================================================
   BLOG
   ============================================================ */
.articulos{border-top:1px solid var(--linea-clara)}
.articulo-fila{
  display:grid;gap:.5rem 2.5rem;grid-template-columns:1fr;
  padding-block:clamp(1.75rem,3vw,2.5rem);border-bottom:1px solid var(--linea-clara);
  text-decoration:none;color:inherit;transition:background .25s ease;
}
.articulo-fila:hover{background:rgba(155,119,69,.055)}
@media(min-width:52rem){.articulo-fila{grid-template-columns:minmax(0,14rem) minmax(0,1fr)}}
.articulo-fila__meta{
  font-family:var(--sans);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bronce-texto);display:flex;flex-direction:column;gap:.35rem;padding-top:.35rem;
}
.articulo-fila h2{font-size:clamp(1.25rem,1.9vw,1.6rem);margin-bottom:.5rem}
.articulo-fila p{margin:0 0 .9rem;color:var(--carbon-suave);font-size:.9375rem;max-width:62ch}
.articulo-fila:hover .area__ir i{transform:translateX(4px)}
.articulo.prosa{max-width:66ch}
.articulo.prosa blockquote{
  margin:2rem 0;padding-left:1.25rem;border-left:2px solid var(--bronce);
  font-family:var(--serif);font-size:1.2rem;line-height:1.5;color:var(--carbon);
}
