/* ==========================================================================
   links.tarracoapplab.com — hoja de estilos del hub de enlaces
   Las variables de color las inyecta scripts/build.mjs en el <head>.
   Las variantes se activan con atributos data-* en <body>.

   La geometría del formato `linktree` está medida sobre el original:
   botón de 64 px, esquinas de 8 px, miniatura de 48 px a hueso con radio 4 px
   y título de 14 px / peso 500 centrado sobre todo el ancho del botón.
   ========================================================================== */

@font-face{font-family:Montserrat;src:url(../fonts/montserrat-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(../fonts/montserrat-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(../fonts/montserrat-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(../fonts/montserrat-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Montserrat;src:url(../fonts/montserrat-800.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}

:root{
  --montserrat: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono: ui-monospace, "SFMono-Regular", "JetBrains Mono", "Cascadia Mono", Menlo, Consolas, monospace;
  --fuente: var(--montserrat);
  --ancho: 36rem;
  --radio: .5rem;
  --alto-boton: 4rem;
  --mini: 3rem;
  --hueco: .5rem;
}

[data-fuente="mono"]{--fuente:var(--mono)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body,h1,h2,p,ul,figure{margin:0}
ul{padding:0;list-style:none}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:3px solid var(--acento);outline-offset:3px;border-radius:.35rem}

.salto{position:absolute;left:-9999px;top:0;padding:.6rem 1rem;background:var(--acento);color:#fff;z-index:60;border-radius:0 0 .5rem 0}
.salto:focus{left:0}

/* ─────────────────────────────  ESTRUCTURA  ───────────────────────────── */

body{
  min-height:100dvh;
  font-family:var(--fuente);
  color:var(--tinta);
  background-color:var(--fondo1);
  -webkit-font-smoothing:antialiased;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:clamp(1rem,4vw,2.5rem) 1rem clamp(2rem,6vw,3.5rem);
  overflow-x:hidden;
}

.envoltorio{width:100%;max-width:var(--ancho);display:flex;flex-direction:column;gap:clamp(1.15rem,3.2vw,1.75rem);flex:1}

/* ───────────────────────────────  FONDOS  ─────────────────────────────── */

.fondo{position:fixed;inset:0;z-index:-1;pointer-events:none}

[data-fondo="solido"] .fondo{background:var(--fondo1)}
[data-fondo="degradado"] .fondo{background:linear-gradient(165deg,var(--fondo1) 0%,var(--fondo2) 100%)}

[data-fondo="aurora"] .fondo{background:linear-gradient(165deg,var(--fondo1) 0%,var(--fondo2) 100%)}
[data-fondo="aurora"] .fondo::before,
[data-fondo="aurora"] .fondo::after{content:"";position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}
[data-fondo="aurora"] .fondo::before{
  width:60vmax;height:60vmax;top:-22vmax;left:-18vmax;background:var(--acento);
  animation:deriva-a 26s ease-in-out infinite alternate;
}
[data-fondo="aurora"] .fondo::after{
  width:52vmax;height:52vmax;bottom:-20vmax;right:-16vmax;background:var(--fondo2);
  animation:deriva-b 32s ease-in-out infinite alternate;
}
@keyframes deriva-a{to{transform:translate3d(14vmax,10vmax,0) scale(1.18)}}
@keyframes deriva-b{to{transform:translate3d(-12vmax,-8vmax,0) scale(1.1)}}

[data-fondo="malla"] .fondo{
  background:
    radial-gradient(48vmax 48vmax at 12% 8%, color-mix(in srgb, var(--acento) 55%, transparent) 0%, transparent 62%),
    radial-gradient(42vmax 42vmax at 88% 22%, color-mix(in srgb, var(--fondo2) 90%, transparent) 0%, transparent 60%),
    radial-gradient(46vmax 46vmax at 50% 100%, color-mix(in srgb, var(--acento) 32%, transparent) 0%, transparent 65%),
    var(--fondo1);
}

[data-fondo="patron"] .fondo{background:linear-gradient(165deg,var(--fondo1) 0%,var(--fondo2) 100%)}
[data-fondo="patron"] .fondo::before{content:"";position:absolute;inset:0;opacity:.09;background-image:var(--patron-arcos)}
[data-modo="claro"][data-fondo="patron"] .fondo::before{opacity:.06;filter:invert(1)}

[data-fondo="imagen"] .fondo{background:var(--portada, linear-gradient(165deg,var(--fondo1),var(--fondo2))) center/cover no-repeat}
[data-fondo="imagen"] .fondo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, color-mix(in srgb, var(--fondo1) 55%, transparent), color-mix(in srgb, var(--fondo1) 88%, transparent));
}

/* ───────────────────────────────  CABECERA  ──────────────────────────── */

.hero{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.8rem}
/* El selector encabeza la cabecera, pegado al margen derecho y sin separarse
   del clip más de lo justo. */
.hero > .idiomas{margin-bottom:-.35rem;margin-right:7.5rem}
.hero__avatar{
  width:clamp(6rem,22vw,7.5rem);aspect-ratio:1;border-radius:50%;
  object-fit:cover;
  background:var(--botonFondo);border:1px solid var(--botonBorde);
  box-shadow:0 10px 34px rgb(0 0 0 / .18);
}
.hero__nombre{font-size:clamp(1.4rem,5vw,1.75rem);font-weight:700;letter-spacing:-.02em;line-height:1.2}
.hero__arroba{font-size:.78rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--acento)}
.hero__bio{font-size:.875rem;font-weight:500;line-height:1.55;color:var(--tinta);max-width:30rem;text-wrap:pretty}
.hero__lugar{font-size:.76rem;font-weight:500;color:var(--tintaSuave);display:inline-flex;align-items:center;gap:.3rem}
.hero__lugar svg{width:.85rem;height:.85rem;fill:currentColor}
.hero__logo{width:min(15rem,66%);height:auto;display:none}
.hero__portada{
  display:none;position:relative;width:100%;
  background:var(--portada) center/cover no-repeat;
}
/* Absoluto: el contenedor fija la proporción y el porcentaje de altura no se
   resuelve contra un `aspect-ratio`, así que el clip se quedaría a cero. */
.hero__medio{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* El título como logotipo: el nombre escrito queda para lectores de pantalla. */
[data-titulo="logo"] .hero__logo{display:block}
[data-titulo="logo"] .hero__nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* hero — el clip a lo ancho y el logotipo DEBAJO, sin fondo ni recuadro */
[data-hero="hero"] .hero{gap:1rem}
[data-hero="hero"] .hero__portada{
  display:block;border-radius:var(--radio);overflow:hidden;
  /* La misma proporción que el clip (1764x1176): encaja entero, sin recortar. */
  aspect-ratio:3/2;background-color:var(--fondo2);
}
[data-hero="hero"] .hero__avatar{display:none}
[data-hero="hero"] .hero__logo{margin-top:.25rem}
[data-hero="hero"] .hero__nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* banner — portada arriba, avatar superpuesto */
[data-hero="banner"] .hero{gap:0}
[data-hero="banner"] .hero__portada{display:block;border-radius:var(--radio);overflow:hidden;height:clamp(7rem,26vw,10.5rem)}
[data-hero="banner"] .hero__avatar{margin-top:-3.25rem;position:relative;z-index:1;border:3px solid var(--fondo1);background:var(--fondo1)}
[data-hero="banner"] .hero__logo{margin-top:.7rem}
[data-hero="banner"] .hero__nombre{margin-top:.7rem}
[data-hero="banner"] .hero__bio{margin-top:.55rem}
[data-hero="banner"] .hero__lugar{margin-top:.5rem}

/* cover — imagen a sangre con el texto encima */
[data-hero="cover"] .hero{
  position:relative;padding:clamp(2rem,7vw,3.25rem) 1.5rem;border-radius:var(--radio);
  overflow:hidden;isolation:isolate;color:#fff;
}
[data-hero="cover"] .hero__portada{display:block;position:absolute;inset:0;z-index:-1;height:100%}
[data-hero="cover"] .hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg, rgb(0 0 0 / .3), rgb(0 0 0 / .7))}
[data-hero="cover"] .hero__bio,
[data-hero="cover"] .hero__lugar{color:rgb(255 255 255 / .85)}
[data-hero="cover"] .hero__avatar{display:none}

/* tarjeta acristalada */
[data-hero="tarjeta"] .hero{
  padding:clamp(1.75rem,5vw,2.5rem) clamp(1.25rem,4vw,2rem);border-radius:var(--radio);
  background:var(--botonFondo);border:1px solid var(--botonBorde);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  box-shadow:0 18px 48px rgb(0 0 0 / .14);
}
[data-hero="tarjeta"] .hero__avatar,
[data-hero="tarjeta"] .hero__portada{display:none}
[data-hero="tarjeta"] .hero__logo{display:block}
[data-hero="tarjeta"] .hero__nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* mínimo */
[data-hero="minimo"] .hero__avatar,
[data-hero="minimo"] .hero__portada,
[data-hero="minimo"] .hero__lugar,
[data-hero="minimo"] .hero__arroba{display:none}
[data-hero="minimo"] .hero__logo{display:block;width:min(13rem,58%)}
[data-hero="minimo"] .hero__nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ─────────────────────────────  REDES  ───────────────────────────────── */

.redes{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}
.redes__enlace{
  width:2.5rem;height:2.5rem;border-radius:50%;display:grid;place-items:center;
  color:var(--tinta);
  transition:transform .18s ease, opacity .18s ease;
}
.redes__enlace svg{width:1.4rem;height:1.4rem;fill:currentColor}
.redes__enlace:hover{transform:translateY(-2px);opacity:.7}

/* ────────────────────────────  BLOQUES  ──────────────────────────────── */

.bloques{display:grid;gap:1rem}

[data-layout="mosaico"] .bloques{grid-template-columns:1fr}
@media (min-width:44rem){
  [data-layout="mosaico"]{--ancho:52rem}
  [data-layout="mosaico"] .bloques{grid-template-columns:1fr 1fr}
  [data-layout="mosaico"] .bloque--ancho{grid-column:1/-1}
}

.seccion{
  margin-top:.5rem;text-align:center;
  font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tintaSuave);
}

/* ── Botón de enlace ── */

.enlace{
  position:relative;display:flex;align-items:center;
  min-height:var(--alto-boton);height:100%;
  padding:.5rem calc(var(--mini) + var(--hueco) * 2);
  color:var(--botonTinta);background:var(--botonFondo);
  border:1px solid var(--botonBorde);border-radius:var(--radio);
  transition:transform .18s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, color .2s ease;
}
.enlace:hover{transform:scale(1.01);background:var(--botonFondoHover)}

.enlace__texto{flex:1;min-width:0;text-align:center}
.enlace__titulo{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;
  font-size:.875rem;font-weight:500;line-height:1.2;text-wrap:pretty;
}
.enlace__desc{display:block;margin-top:.15rem;font-size:.75rem;line-height:1.35;opacity:.65}
.enlace__flecha{display:none}
.enlace__etiqueta{
  position:absolute;top:-.55rem;left:1rem;
  padding:.15rem .55rem;border-radius:999px;
  font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  background:var(--acento);color:#fff;box-shadow:0 4px 12px rgb(0 0 0 / .18);
}

/* Miniatura: pegada al borde, sin relleno, ocupando el hueco entero. */
.enlace__mini{
  position:absolute;left:var(--hueco);top:50%;transform:translateY(-50%);
  width:var(--mini);height:var(--mini);
  border-radius:calc(var(--radio) - .25rem);overflow:hidden;
  display:grid;place-items:center;
}
.enlace__mini img{width:100%;height:100%;object-fit:cover}
/* Para logotipos con texto: se ve entero, con un respiro alrededor. */
.enlace__mini--contener{padding:.3rem;background:color-mix(in srgb, var(--tinta) 5%, transparent)}
.enlace__mini--contener img{object-fit:contain}
.enlace__mini--glifo{background:var(--acento)}
.enlace__mini--glifo svg{width:1.4rem;height:1.4rem;fill:#fff}

[data-miniatura="ninguna"] .enlace__mini:not(.enlace__mini--glifo){display:none}
[data-miniatura="ninguna"] .enlace{padding-inline:1rem}
[data-miniatura="icono"]{--mini:1.75rem}
[data-miniatura="icono"] .enlace__mini{border-radius:.35rem}

/* Formato de dos líneas: el texto se alinea a la izquierda junto a la miniatura. */
[data-formato="dos-lineas"] .enlace{padding-right:1rem}
[data-formato="dos-lineas"] .enlace__texto{text-align:left}
[data-formato="dos-lineas"] .enlace__titulo{font-size:.95rem;font-weight:700;-webkit-line-clamp:2}
[data-formato="dos-lineas"] .enlace__flecha{
  display:block;flex:none;width:1.05rem;height:1.05rem;fill:currentColor;opacity:.4;
  transition:transform .18s ease,opacity .18s ease;
}
[data-formato="dos-lineas"] .enlace:hover .enlace__flecha{opacity:1;transform:translateX(3px)}

/* En formato Linktree la descripción del correo va bajo el título, centrada. */
.enlace--correo .enlace__desc{opacity:.6}

/* estilos de botón */
[data-boton-estilo="contorno"] .enlace{background:var(--botonFondo);border-color:var(--botonBorde)}
[data-boton-estilo="contorno"] .enlace:hover{border-color:color-mix(in srgb, var(--botonTinta) 45%, transparent)}

[data-boton-estilo="relleno"] .enlace{background:var(--botonTinta);color:var(--fondo1);border-color:transparent}
[data-boton-estilo="relleno"] .enlace:hover{background:color-mix(in srgb, var(--botonTinta) 85%, var(--fondo1))}

[data-boton-estilo="suave"] .enlace{background:color-mix(in srgb, var(--acento) 12%, transparent);border-color:transparent}
[data-boton-estilo="suave"] .enlace:hover{background:color-mix(in srgb, var(--acento) 22%, transparent)}

[data-boton-estilo="cristal"] .enlace{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px rgb(0 0 0 / .12)}

[data-boton-estilo="sombra-dura"] .enlace{background:var(--botonFondo);border:2px solid var(--botonTinta);box-shadow:5px 5px 0 var(--botonTinta)}
[data-boton-estilo="sombra-dura"] .enlace:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--botonTinta)}

/* formas */
[data-boton-forma="linktree"]{--radio:.5rem}
[data-boton-forma="recto"]{--radio:0}
[data-boton-forma="redondeado"]{--radio:1rem}
[data-boton-forma="pildora"]{--radio:999px}
[data-boton-forma="pildora"] .enlace__mini{border-radius:50%}
[data-boton-forma="pildora"] .hero,
[data-boton-forma="pildora"] .qr__panel{border-radius:1.5rem}

/* destacado */
[data-layout="destacado"] .enlace--destacado{
  flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.5rem;min-height:0;
  background:linear-gradient(140deg, color-mix(in srgb, var(--acento) 20%, transparent), var(--botonFondo));
  border-color:color-mix(in srgb, var(--acento) 40%, transparent);
}
[data-layout="destacado"] .enlace--destacado .enlace__mini{position:static;transform:none;width:3.4rem;height:3.4rem}
[data-layout="destacado"] .enlace--destacado .enlace__texto{text-align:left}
[data-layout="destacado"] .enlace--destacado .enlace__titulo{font-size:1.2rem;font-weight:700}

/* ────────────────────  PUBLICACIONES DE UNA RED  ─────────────────────── */

.social{
  overflow:hidden;border-radius:var(--radio);
  border:1px solid var(--botonBorde);background:var(--botonFondo);
}
.social__rejilla{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--botonBorde)}
.social__rejilla a{display:block;position:relative;background:var(--fondo2);overflow:hidden}
.social__rejilla img{
  width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;
  transition:opacity .2s ease, transform .35s cubic-bezier(.22,1,.36,1);
}
.social__rejilla a:hover img{opacity:.85;transform:scale(1.03)}

/* Marca de la red sobre cada publicación, para saber de dónde sale. */
.social__marca{
  position:absolute;right:.35rem;bottom:.35rem;
  width:1.5rem;height:1.5rem;border-radius:.4rem;
  display:grid;place-items:center;color:#fff;
  background:rgb(0 0 0 / .55);
}
.social__marca svg{width:.85rem;height:.85rem;fill:currentColor}
.social--youtube .social__marca{background:#FF0000}
.social--tiktok .social__marca{background:#000}
.social--instagram .social__marca{background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF)}
.social--facebook .social__marca{background:#1877F2}
.social--x .social__marca{background:#000}
.social--whatsapp .social__marca{background:#25D366}

/* ───────────────────────────  GALERÍA SUELTA  ────────────────────────── */

.galeria{display:flex;flex-direction:column;gap:.6rem}
.galeria__titulo{
  text-align:center;font-size:.72rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--tintaSuave);
}
.galeria__rejilla{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}
.galeria__rejilla li{border-radius:calc(var(--radio) - .125rem);overflow:hidden;background:var(--fondo2)}
.galeria__rejilla img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.galeria__rejilla li:hover img{transform:scale(1.06)}

/* ──────────────────────────────  PIE  ────────────────────────────────── */

/* El pie iba al 51 % de opacidad efectiva: 3,38 de contraste, por debajo del
   mínimo accesible de 4,5. Al 82 % sube a 9,42 y se lee sin esfuerzo. */
.pie{
  margin-top:auto;padding-top:1.75rem;text-align:center;font-size:.72rem;
  color:color-mix(in srgb, var(--tinta) 82%, transparent);
  display:flex;flex-direction:column;gap:.6rem;align-items:center;
}
.pie__legal{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1rem}
.pie__legal a:hover{color:var(--acento);text-decoration:underline}
.pie__marca{display:inline-flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:center}
.pie__bandera{
  width:1.1rem;height:.83rem;border-radius:.125rem;object-fit:cover;
  box-shadow:0 0 0 1px rgb(0 0 0 / .1);
}

/* ─────────────────────────  SELECTOR DE IDIOMA  ──────────────────────── */

.idiomas{position:relative;align-self:flex-start;z-index:20}
.idiomas__boton{
  display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;
  padding:.38rem .8rem;border-radius:999px;font-size:.72rem;font-weight:600;
  background:var(--botonFondo);border:1px solid var(--botonBorde);color:var(--tinta);
}
.idiomas__boton svg{width:.65rem;height:.65rem;fill:currentColor;transition:transform .2s ease}
.idiomas[open] .idiomas__boton svg{transform:rotate(180deg)}
.idiomas__lista{
  position:absolute;top:calc(100% + .35rem);left:0;
  min-width:9rem;padding:.3rem;border-radius:.75rem;z-index:20;
  background:var(--fondo1);border:1px solid var(--botonBorde);
  box-shadow:0 14px 38px rgb(0 0 0 / .22);
}
.idiomas__lista a{
  display:flex;align-items:center;gap:.5rem;
  padding:.42rem .7rem;border-radius:.5rem;font-size:.76rem;font-weight:500;white-space:nowrap;
}
.idiomas__bandera{
  flex:none;width:1.25rem;height:.94rem;border-radius:.125rem;object-fit:cover;
  box-shadow:0 0 0 1px rgb(0 0 0 / .1);
}
.idiomas__lista a:hover{background:var(--botonFondoHover);color:var(--acento)}
.idiomas summary{list-style:none}
.idiomas summary::-webkit-details-marker{display:none}

/* ────────────────────────────────  QR  ───────────────────────────────── */

.qr__abrir{
  position:fixed;top:1rem;right:1rem;z-index:15;
  display:inline-flex;align-items:center;gap:.4rem;
  height:2.25rem;padding:0 .75rem;border-radius:999px;
  font-size:.75rem;font-weight:600;line-height:1;
  background:var(--botonFondo);border:1px solid var(--botonBorde);color:var(--tinta);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:0 4px 14px rgb(0 0 0 / .08);
  transition:background-color .2s ease, border-color .2s ease;
}
.qr__abrir:hover{background:var(--acento);border-color:var(--acento);color:#fff}
.qr__abrir svg{flex:none;width:1rem;height:1rem;fill:currentColor}
.qr[hidden]{display:none}
.qr{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1.5rem;background:rgb(0 0 0 / .62);backdrop-filter:blur(6px)}
.qr__panel{
  width:min(20rem,100%);padding:1.75rem;border-radius:1rem;text-align:center;
  background:var(--fondo1);border:1px solid var(--botonBorde);
  display:flex;flex-direction:column;align-items:center;gap:1rem;
}
.qr__codigo{width:12rem;height:12rem;background:#fff;border-radius:.6rem;padding:.6rem}
.qr__url{font-size:.78rem;font-weight:600;color:var(--tintaSuave);word-break:break-all}
.qr__acciones{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}
.qr__accion{padding:.5rem .9rem;border-radius:999px;font-size:.76rem;font-weight:600;background:var(--botonFondo);border:1px solid var(--botonBorde);color:var(--tinta)}
.qr__accion:hover{background:var(--acento);color:#fff}

/* ────────────────────────────  ANIMACIÓN  ────────────────────────────── */

[data-animacion="suave"] .anima,
[data-animacion="cascada"] .anima{animation:entrar .55s cubic-bezier(.22,1,.36,1) both}
[data-animacion="cascada"] .anima{animation-delay:calc(var(--i,0) * 55ms)}
@keyframes entrar{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .anima{animation:none!important}
}

@media print{
  .fondo,.qr,.qr__abrir,.idiomas,.galeria,.social__rejilla{display:none!important}
  body{background:#fff;color:#000}
  .enlace,.social{border:1px solid #999;background:#fff;color:#000}
  .enlace::after{content:" (" attr(href) ")";font-size:.7rem;opacity:.7}
}
