/* Excalibur Irish Pub · hoja de estilos única
   Identidad oscura (verde irlandés) con secciones alternas en crema.
   Sin modo claro/oscuro automático: la marca es oscura. */

/* ---------- Fuentes propias (OFL) ---------- */
@font-face{font-family:"Cinzel";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fuentes/cinzel-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Libre Baskerville";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fuentes/libre-baskerville-latin-400-italic.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fuentes/source-sans-3-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fuentes/source-sans-3-latin-600-normal.woff2") format("woff2")}

/* ---------- Tokens ---------- */
:root{
  /* Paleta de material/datos.md */
  --verde:#0E2A21;
  --verde-sup:#16382C;
  --oro:#C9A85C;
  --oro-osc:#9C7B2E;
  --crema:#F4EEDB;
  --tinta:#151515;
  /* Derivados */
  --oro-claro:#DCC285;
  --verde-hondo:#0A2019;

  --f-titular:"Cinzel","Times New Roman",serif;
  --f-destacado:"Libre Baskerville",Georgia,serif;
  --f-texto:"Source Sans 3","Segoe UI",system-ui,-apple-system,sans-serif;

  --ancho:72rem;
  --margen:1.25rem;
  --radio:6px;
  --alto-cabecera:4.25rem;
  --alto-barra:4.5rem;

  /* Variables de tema (oscuro por defecto) */
  --fondo:var(--verde);
  --texto:var(--crema);
  --texto-suave:rgba(244,238,219,.84);
  --rotulo:var(--oro);
  --acento:var(--oro);
  --enlace:var(--oro);
  --linea:rgba(201,168,92,.38);
  --foco:var(--oro);

  color-scheme:dark;
}

.tema-oscuro{--fondo:var(--verde);--texto:var(--crema);--texto-suave:rgba(244,238,219,.84);--rotulo:var(--oro);--acento:var(--oro);--enlace:var(--oro);--linea:rgba(201,168,92,.38);--foco:var(--oro);background-color:var(--fondo);color:var(--texto)}
.tema-sup{--fondo:var(--verde-sup);--texto:var(--crema);--texto-suave:rgba(244,238,219,.86);--rotulo:var(--oro);--acento:var(--oro);--enlace:var(--oro);--linea:rgba(201,168,92,.4);--foco:var(--oro);background-color:var(--fondo);color:var(--texto)}
.tema-crema{--fondo:var(--crema);--texto:var(--tinta);--texto-suave:#3B3A33;--rotulo:var(--verde);--acento:var(--oro-osc);--enlace:var(--verde);--linea:rgba(156,123,46,.45);--foco:var(--verde);background-color:var(--fondo);color:var(--texto);color-scheme:light}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--alto-cabecera) + 1rem)}
body{margin:0;background:var(--verde);color:var(--crema);font-family:var(--f-texto);font-weight:400;font-size:1.125rem;line-height:1.6;text-rendering:optimizeLegibility}
@media (max-width:600px){body{font-size:1.0625rem}}
img,svg{max-width:100%}
img{height:auto}
a{color:var(--enlace);text-decoration-thickness:1px;text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
strong{font-weight:600}
address{font-style:normal}
button{font:inherit}

h1,h2,h3{font-family:var(--f-titular);font-weight:600;text-transform:uppercase;letter-spacing:.07em;line-height:1.18;margin:0 0 .6em;text-wrap:balance}
h1{font-size:clamp(2rem,1.25rem + 3.4vw,3.6rem)}
h2{font-size:clamp(1.55rem,1.15rem + 1.7vw,2.35rem)}
h3{font-size:1.15rem;letter-spacing:.05em}

:focus-visible{outline:3px solid var(--foco);outline-offset:3px;border-radius:2px}
:focus:not(:focus-visible){outline:none}

.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.saltar{position:absolute;left:1rem;top:-10rem;z-index:100;background:var(--oro);color:var(--verde);padding:.75rem 1.1rem;border-radius:var(--radio);font-weight:600;text-decoration:none}
.saltar:focus{top:1rem}

.contenedor{width:min(100% - 2*var(--margen),var(--ancho));margin-inline:auto}
.icono{width:1.25em;height:1.25em;flex:none;vertical-align:-.2em}

/* ---------- Texto destacado y rótulos ---------- */
.destacado{font-family:var(--f-destacado);font-style:italic;font-size:1.15em;line-height:1.55}
.rotulo{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 .85rem;font-weight:600;font-size:1.0625rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rotulo)}
.rotulo .icono{color:var(--acento)}

/* Filete dorado con trébol (único ornamento) */
.filete{display:flex;align-items:center;gap:1rem;width:min(100%,15rem);margin:0 auto 1.4rem;color:var(--acento)}
.filete::before,.filete::after{content:"";flex:1;height:1px;background:currentColor;opacity:.75}
.filete .icono{width:1.5rem;height:1.5rem}

/* ---------- Botones ---------- */
.botones{display:flex;flex-wrap:wrap;gap:.75rem}
.botones.centrados{justify-content:center}
.boton{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:3rem;padding:.7em 1.35em;border-radius:var(--radio);border:2px solid transparent;font-family:var(--f-texto);font-weight:600;font-size:1.0625rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.boton-principal{background:var(--oro);color:var(--verde);border-color:var(--oro)}
.boton-principal:hover{background:var(--oro-claro);border-color:var(--oro-claro)}
.boton-secundario{background:transparent;color:var(--texto);border-color:var(--acento)}
.boton-secundario:hover{background:rgba(201,168,92,.14)}
.tema-crema .boton-secundario{border-color:var(--verde);color:var(--verde)}
.tema-crema .boton-secundario:hover{background:rgba(14,42,33,.07)}
.boton-grande{min-height:3.5rem;font-size:1.125rem;padding:.8em 1.6em}

/* ---------- Cabecera ---------- */
.cabecera{position:sticky;top:0;z-index:30;background:var(--verde);border-bottom:1px solid var(--linea)}
.cabecera-int{position:relative;display:flex;align-items:center;gap:1rem;min-height:var(--alto-cabecera)}
.logo{display:block;flex:none;border-radius:2px}
.logo img{display:block;height:2.5rem;width:auto}
.menu{margin-left:auto}
.menu ul{display:flex;align-items:center;gap:1.75rem;list-style:none;margin:0;padding:0}
.menu a:not(.boton){display:inline-block;padding:.55rem 0;color:var(--crema);text-decoration:none;font-weight:600;border-bottom:2px solid transparent}
.menu a:not(.boton):hover{color:var(--oro)}
.menu a[aria-current="page"]{border-bottom-color:var(--oro)}
.menu .boton{min-height:2.75rem;padding:.55em 1.1em}
.idiomas ul{display:flex;align-items:center;list-style:none;margin:0;padding:0}
.idiomas li+li::before{content:"/";color:rgba(244,238,219,.5);padding-inline:.1rem}
.idiomas a{display:inline-grid;place-items:center;min-width:2.75rem;min-height:2.75rem;color:var(--crema);text-decoration:none;font-weight:600;letter-spacing:.08em;border-radius:var(--radio)}
.idiomas a:hover{color:var(--oro)}
.idiomas a[aria-current="true"]{color:var(--oro);text-decoration:underline;text-underline-offset:.3em}
.menu-boton{display:none}
.menu-boton .ic-cerrar{display:none}
.menu-boton[aria-expanded="true"] .ic-cerrar{display:block}
.menu-boton[aria-expanded="true"] .ic-menu{display:none}

@media (max-width:899.98px){
  :root{--alto-cabecera:4rem}
  .logo img{height:2.125rem}
  .idiomas{order:2;margin-left:auto}
  .menu-boton{order:3;display:inline-grid;place-items:center;width:3rem;height:3rem;padding:0;background:none;border:1px solid var(--linea);border-radius:var(--radio);color:var(--crema);cursor:pointer}
  .menu{position:absolute;left:calc(-1*var(--margen));right:calc(-1*var(--margen));top:100%;margin:0;background:var(--verde-sup);border-bottom:1px solid var(--linea);box-shadow:0 18px 30px rgba(0,0,0,.35);display:none}
  .menu.abierto{display:block}
  .menu ul{flex-direction:column;align-items:stretch;gap:0;padding:.25rem var(--margen) 1.25rem}
  .menu li a:not(.boton){display:block;padding:.95rem 0;border-bottom:1px solid rgba(201,168,92,.2)}
  .menu a[aria-current="page"]{color:var(--oro);border-bottom-color:rgba(201,168,92,.2)}
  .menu .boton{width:100%;margin-top:1.1rem;min-height:3rem}
}

/* ---------- Texturas solo CSS (vetas y grano suaves) ---------- */
.textura{background-color:var(--verde);background-image:
  radial-gradient(120% 75% at 50% 0%,rgba(201,168,92,.13) 0%,rgba(201,168,92,0) 58%),
  radial-gradient(110% 70% at 50% 100%,rgba(0,0,0,.38) 0%,rgba(0,0,0,0) 62%),
  repeating-linear-gradient(91deg,rgba(244,238,219,.022) 0 1px,transparent 1px 7px),
  repeating-linear-gradient(88.5deg,rgba(0,0,0,.09) 0 2px,transparent 2px 19px),
  repeating-linear-gradient(90deg,rgba(201,168,92,.025) 0 1px,transparent 1px 43px)}
.textura-sup{background-color:var(--verde-sup);background-image:
  radial-gradient(90% 90% at 50% 50%,rgba(201,168,92,.08) 0%,rgba(201,168,92,0) 65%),
  repeating-linear-gradient(91deg,rgba(244,238,219,.02) 0 1px,transparent 1px 8px),
  repeating-linear-gradient(88deg,rgba(0,0,0,.08) 0 2px,transparent 2px 21px)}

/* ---------- Hero ---------- */
.hero{display:grid;align-items:center;min-height:min(calc(92vh - var(--alto-cabecera)),56rem);padding-block:3rem 4rem;text-align:center}
.hero-logo{display:block;width:clamp(11rem,8rem + 9vw,16.5rem);height:auto;margin:0 auto 1.75rem}
.hero h1{max-width:21ch;margin-inline:auto;margin-bottom:.5em}
.hero-sub{max-width:36rem;margin:0 auto 2rem;color:var(--texto-suave)}
.hero .nota{margin-top:1.1rem;color:var(--texto-suave)}
@media (max-width:600px){
  .hero{min-height:calc(88svh - var(--alto-cabecera) - var(--alto-barra));padding-block:2rem 2.75rem}
  .hero-logo{margin-bottom:1.25rem}
  .hero-sub{margin-bottom:1.5rem}
  .hero .botones .boton{flex:1 1 100%}
}

/* ---------- Secciones ---------- */
.seccion{padding-block:clamp(3.25rem,2rem + 4vw,5.75rem)}
.seccion-cabecera{max-width:44rem;margin-bottom:2.5rem}
.seccion-cabecera.centrada{margin-inline:auto;text-align:center}
.seccion-cabecera p{color:var(--texto-suave)}
.mas{margin-top:2rem}
.seccion-cabecera.centrada + .mas,.mas.centrado{text-align:center}

/* Tarjetas «Qué puedes celebrar» */
.tarjetas{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));list-style:none;margin:0;padding:0}
.tarjeta{padding:1.6rem 1.5rem;border:1px solid var(--linea);border-radius:var(--radio);background:rgba(255,255,255,.55)}
.tarjeta h3{margin-bottom:.45rem}
.tarjeta p{color:var(--texto-suave)}
.icono-caja{display:inline-grid;place-items:center;width:3rem;height:3rem;margin-bottom:1rem;border:1px solid var(--linea);border-radius:50%;color:var(--acento)}
.icono-caja .icono{width:1.5rem;height:1.5rem}
.tarjeta.tarjeta-destacada{background:var(--verde);border-color:var(--oro);box-shadow:inset 0 0 0 1px rgba(201,168,92,.35)}
.tarjeta-destacada .enlace-flecha{display:inline-flex;align-items:center;gap:.45rem;margin-top:.9rem;font-weight:600}

/* Pasos */
.pasos{counter-reset:paso;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));list-style:none;margin:0;padding:0}
.paso{counter-increment:paso;padding:1.75rem 1.5rem;border:1px solid var(--linea);border-radius:var(--radio);background:rgba(10,32,25,.45)}
.paso::before{content:counter(paso);display:grid;place-items:center;width:3.25rem;height:3.25rem;margin-bottom:1.1rem;border:1px solid var(--oro);border-radius:50%;font-family:var(--f-titular);font-size:1.6rem;line-height:1;color:var(--oro)}
.paso p{color:var(--texto-suave)}
.pasos-pie{margin-top:2.25rem;text-align:center}
.pasos-pie .destacado{margin-bottom:1.25rem;color:var(--texto)}

/* Datos (dirección, horario…) */
.datos{display:grid;gap:1.5rem 2rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))}
.dato{display:flex;gap:1rem;align-items:flex-start}
.dato .icono-caja{margin:0}
.dato h3{margin-bottom:.35rem}
.dato p{color:var(--texto-suave)}
.dato p strong{color:var(--texto)}

/* Opiniones */
.opiniones .botones{justify-content:center}

/* Preguntas (inicio, desplegables) */
.faq{max-width:48rem;margin-inline:auto;border-top:1px solid var(--linea)}
.faq details{border-bottom:1px solid var(--linea)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 0;cursor:pointer;list-style:none;font-weight:600;font-size:1.15rem;line-height:1.35}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--linea);border-radius:50%;font-family:var(--f-titular);font-size:1.25rem;line-height:1;color:var(--acento);transition:transform .2s ease}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .respuesta{padding:0 3rem 1.35rem 0;color:var(--texto-suave)}

/* Preguntas (página completa) */
.faq-lista{display:grid;gap:1rem;max-width:50rem}
.pregunta{padding:1.5rem;border:1px solid var(--linea);border-radius:var(--radio);background:rgba(255,255,255,.55)}
.pregunta h2{margin:0 0 .5rem;font-family:var(--f-texto);font-size:1.25rem;font-weight:600;text-transform:none;letter-spacing:0;line-height:1.35}
.pregunta p{color:var(--texto-suave)}

/* CTA final */
.cta-final{text-align:center;border-block:1px solid var(--linea)}
.cta-final h2{margin-bottom:.4em}
.cta-final p{max-width:36rem;margin-inline:auto;color:var(--texto-suave)}
.cta-final .botones{margin-top:1.75rem;justify-content:center}

/* ---------- Páginas interiores ---------- */
.cabecera-pagina{padding-block:2.25rem 3rem;border-bottom:1px solid var(--linea)}
.cabecera-pagina h1{max-width:22ch;margin-bottom:.45em}
.entradilla{max-width:40rem;color:var(--texto-suave)}
.cabecera-pagina .botones{margin-top:1.75rem}
.migas ol{display:flex;flex-wrap:wrap;gap:.25rem .5rem;list-style:none;margin:0 0 1.5rem;padding:0;font-size:1.0625rem}
.migas li+li::before{content:"›";margin-right:.5rem;color:var(--oro)}
.migas a{color:var(--crema)}
.migas [aria-current]{color:var(--texto-suave)}

/* Cómo llegar */
.llegar-rejilla{display:grid;gap:2.5rem;align-items:start}
@media (min-width:900px){.llegar-rejilla{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}}
.llegar-datos{display:grid;gap:2rem}
.llegar-datos .botones{margin-top:1rem}
.horario{width:100%;border-collapse:collapse;margin:.25rem 0 .75rem}
.horario th,.horario td{padding:.55rem 0;border-bottom:1px solid var(--linea);text-align:left;vertical-align:top}
.horario th{font-weight:600;padding-right:1rem}
.mapa{position:relative;display:grid;min-height:22rem;border:1px solid var(--linea);border-radius:var(--radio);overflow:hidden;background:var(--verde-sup)}
@media (min-width:900px){.mapa{min-height:30rem}}
.mapa-aviso{display:grid;align-content:center;justify-items:center;gap:.25rem;padding:2rem 1.5rem;text-align:center;color:var(--crema)}
.mapa-aviso .icono-caja{margin-bottom:.75rem}
.mapa-aviso p{max-width:28rem;color:rgba(244,238,219,.86)}
.mapa-aviso .mapa-dir{font-weight:600;color:var(--crema)}
.mapa-aviso .botones{justify-content:center;margin-top:1rem}
.mapa iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapa.cargado .mapa-aviso{visibility:hidden}

/* Textos legales */
.texto-legal{max-width:46rem}
.texto-legal h2{margin-top:2.5rem;font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem)}
.texto-legal h2:first-child{margin-top:0}
.texto-legal ul{padding-left:1.25rem}
.texto-legal li{margin-bottom:.45rem}
.texto-legal dl{display:grid;gap:.15rem 1.5rem;margin:0 0 1.25rem}
.texto-legal dt{font-weight:600}
.texto-legal dd{margin:0 0 .75rem}
@media (min-width:700px){.texto-legal dl{grid-template-columns:minmax(10rem,auto) 1fr}.texto-legal dd{margin:0}}
.ficha{padding:1.25rem 1.5rem;margin:0 0 1rem;border:1px solid var(--linea);border-radius:var(--radio);background:rgba(255,255,255,.55)}
.ficha h3{margin-bottom:.75rem;font-family:var(--f-texto);font-size:1.15rem;font-weight:600;text-transform:none;letter-spacing:0}
.ficha dl{margin:0}
.actualizado{margin-top:2.5rem;color:var(--texto-suave)}

/* 404 */
.error-bloque{max-width:42rem}
.error-bloque + .error-bloque{margin-top:3rem;padding-top:3rem;border-top:1px solid var(--linea)}
.error-bloque h2{font-size:clamp(1.6rem,1.2rem + 2vw,2.6rem)}
.enlaces-utiles{display:grid;gap:.6rem;list-style:none;margin:1.5rem 0 0;padding:0}

/* ---------- Pie ---------- */
.pie{padding-block:3.5rem 6rem;background:var(--verde-hondo);border-top:1px solid var(--linea);color:var(--texto-suave)}
.pie-rejilla{display:grid;gap:2.25rem 2.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}
.pie-logo{display:inline-block;margin-bottom:1.1rem}
.pie-logo img{display:block;width:13.5rem;height:auto}
.pie-titulo{margin:0 0 .9rem;font-family:var(--f-titular);font-size:1.0625rem;letter-spacing:.12em;color:var(--oro)}
.pie p{margin-bottom:.6rem}
.pie ul{display:grid;gap:.55rem;list-style:none;margin:0;padding:0}
.pie a,.enlace-boton{color:var(--crema)}
.pie-contacto{display:grid;gap:.45rem;margin-top:1rem}
.pie-contacto a{display:inline-flex;align-items:center;gap:.5rem}
.pie-contacto .icono{color:var(--oro)}
.enlace-boton{padding:0;background:none;border:0;font:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;cursor:pointer}
.enlace-boton:hover{text-decoration-thickness:2px}
.pie-base{margin-top:2.75rem;padding-top:1.5rem;border-top:1px solid rgba(201,168,92,.22);font-size:1.0625rem}

/* ---------- Barra fija en móvil ---------- */
.barra-movil{display:none}
@media (max-width:899.98px){
  body{padding-bottom:calc(var(--alto-barra) + env(safe-area-inset-bottom))}
  .barra-movil{position:fixed;z-index:40;left:0;right:0;bottom:0;display:grid;grid-template-columns:1.55fr 1fr;gap:.6rem;align-items:center;height:calc(var(--alto-barra) + env(safe-area-inset-bottom));padding:0 .75rem env(safe-area-inset-bottom);background:var(--verde);border-top:1px solid var(--oro);box-shadow:0 -10px 24px rgba(0,0,0,.3)}
  .barra-movil .boton{min-height:3rem;padding-inline:.75rem}
  .pie{padding-bottom:5.5rem}
}

/* ---------- Cookies ---------- */
.boton-cookies{position:fixed;z-index:35;left:1rem;bottom:1rem;display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:1px solid var(--oro);border-radius:50%;background:var(--verde-sup);color:var(--oro);box-shadow:0 6px 18px rgba(0,0,0,.4);cursor:pointer}
.boton-cookies:hover{background:var(--verde)}
.boton-cookies .icono{width:1.5rem;height:1.5rem}
.boton-cookies[hidden]{display:none}
.aviso-cookies{position:fixed;z-index:50;right:1rem;bottom:1rem;width:min(calc(100% - 2rem),29rem);max-height:calc(100vh - 2rem);overflow:auto;padding:1.5rem;background:var(--verde-sup);color:var(--crema);border:1px solid var(--oro);border-radius:var(--radio);box-shadow:0 18px 50px rgba(0,0,0,.5)}
.aviso-cookies[hidden]{display:none}
.aviso-cookies h2{font-size:1.3rem;margin-bottom:.6rem}
.aviso-cookies h2:focus{outline:none}
.aviso-cookies p{color:rgba(244,238,219,.88)}
.cookies-config{margin-top:1rem}
.cookies-config[hidden]{display:none}
.cookies-opcion{display:flex;gap:.8rem;align-items:flex-start;padding:.9rem 0;border-top:1px solid var(--linea)}
.cookies-opcion input{flex:none;width:1.3rem;height:1.3rem;margin:.2rem 0 0;accent-color:var(--oro)}
.cookies-opcion label,.cookies-opcion .cookies-nombre{display:block;font-weight:600;color:var(--crema)}
.cookies-opcion span.detalle{display:block;color:rgba(244,238,219,.84)}
.cookies-botones{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}
.cookies-botones .boton{flex:1 1 8rem}
.cookies-botones .boton-claro{background:var(--crema);color:var(--verde);border-color:var(--crema)}
.cookies-botones .boton-claro:hover{background:#fff;border-color:#fff}
.cookies-botones [hidden]{display:none}
@media (max-width:899.98px){
  .boton-cookies{left:.75rem;bottom:calc(var(--alto-barra) + env(safe-area-inset-bottom) + .75rem)}
  .aviso-cookies{left:.75rem;right:.75rem;width:auto;bottom:calc(var(--alto-barra) + env(safe-area-inset-bottom) + .5rem);max-height:calc(100svh - var(--alto-barra) - var(--alto-cabecera) - 1rem);padding:1.25rem}
}

/* ---------- Movimiento mínimo ---------- */
.con-animacion .revelar{transition:opacity .7s ease,transform .7s ease}
.con-animacion .revelar:not(.visible){opacity:0;transform:translateY(18px)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .con-animacion .revelar:not(.visible){opacity:1;transform:none}
}

/* ---------- Impresión ---------- */
@media print{
  .cabecera,.barra-movil,.boton-cookies,.aviso-cookies,.mapa{display:none!important}
  body{background:#fff;color:#000;padding:0}
}

/* ---------- Utilidades ---------- */
.h3{font-size:1.15rem;letter-spacing:.05em}
.botones.separados{margin-top:1.5rem}
.dato .icono-caja{flex:none}
.mapa{--foco:var(--oro)}
.mapa .boton-secundario{border-color:var(--oro);color:var(--crema)}
.mapa .boton-secundario:hover{background:rgba(201,168,92,.14)}
