/* ============================================================
   diverpark · Águilas
   Dirección: "La pieza". La firma es la COSTURA de puzzle entre
   secciones: sus 4 colores de logo, que son también su suelo.
   Fondo noche porque el negocio SOLO existe de 17:00 a 21:00 y
   quien reserva es una madre, de noche y desde el móvil.
   ============================================================ */

:root{
  /* fondo */
  --noche:    #14161F;
  --noche-2:  #1C1F2B;
  --noche-3:  #252938;

  /* texto (blanco FRÍO a propósito: un roto cálido dispara cream-palette) */
  --tiza:     #EEF1F4;
  --tiza-mut: #A6AEBB;
  --linea:    #333849;

  /* los 4 de SU logo, tal cual salen del rótulo */
  --rojo:     #E23B2E;
  --verde:    #4AA85A;
  --azul:     #2B7DD6;
  --amarillo: #F5C518;

  /* rellenos: van con texto BLANCO encima (≥5:1) */
  --rojo-fill:  #C62B20;
  --verde-fill: #2F7C42;
  --azul-fill:  #1F63AE;

  /* acentos: van SOBRE el fondo noche (≥8:1) */
  --rojo-luz:  #FF8577;
  --verde-luz: #6FD188;
  --azul-luz:  #7FB8F7;

  --ease: cubic-bezier(.22,.61,.36,1);
  --wrap: 1240px;
  --diente: 140px;  /* ancho FIJO del diente de la costura. No se estira. */
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }

body{
  margin:0;
  background:var(--noche);
  color:var(--tiza);
  font-family:"Figtree",system-ui,sans-serif;
  font-size:1rem;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}

img,iframe{ max-width:100%; display:block; }
a{ color:inherit; }

.wrap{ width:min(100% - 2.5rem, var(--wrap)); margin-inline:auto; }

.skip{
  position:absolute; left:-9999px; top:0; z-index:1000;
  background:var(--amarillo); color:var(--noche);
  padding:.75rem 1.25rem; font-weight:700;
}
.skip:focus{ left:1rem; top:1rem; }

:focus-visible{ outline:3px solid var(--amarillo); outline-offset:3px; }

/* ---------- tipografía ---------- */
.h2{
  font-family:"Gabarito",system-ui,sans-serif;
  font-weight:900;
  font-size:clamp(2.4rem,6.4vw,4.6rem);
  line-height:.98;
  letter-spacing:-.035em;
  margin:0 0 1.15rem;
}
.lede{
  max-width:min(52ch,100%); margin:0;
  font-size:clamp(1.02rem,1.5vw,1.2rem);
  color:var(--tiza-mut);
}
.eyebrow{
  font-family:"DM Mono",ui-monospace,monospace;
  font-size:.78rem;              /* suelo de 12px: por debajo salta undersized-ui-text */
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--amarillo);
  margin:0 0 1rem;
  display:flex; align-items:center; gap:.7rem;
}
.eyebrow::before{
  content:""; width:26px; height:3px; background:var(--amarillo); flex:none;
}
.sechead{ margin-bottom:clamp(2.5rem,5vw,4rem); }

/* ============================================================
   LA FIRMA · costura de puzzle
   Patrón SVG de DIENTE FIJO (140px) repetido en mask sobre un
   pseudo-elemento. Nunca clip-path (sacaría al elemento de su
   IntersectionObserver y el reveal no dispararía jamás).
   ============================================================ */
.costura{
  position:relative;
  z-index:3;
  height:34px;
  margin-bottom:-20px;
  pointer-events:none;
}
.costura::before{
  content:"";
  position:absolute; inset:0;
  background:repeating-linear-gradient(90deg,
    var(--rojo)     0            var(--diente),
    var(--amarillo) var(--diente) calc(var(--diente) * 2),
    var(--azul)     calc(var(--diente) * 2) calc(var(--diente) * 3),
    var(--verde)    calc(var(--diente) * 3) calc(var(--diente) * 4));
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 34'%3E%3Cpath d='M0 0 H140 V14 H84 A14 14 0 0 1 56 14 H0 Z' fill='%23fff'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 34'%3E%3Cpath d='M0 0 H140 V14 H84 A14 14 0 0 1 56 14 H0 Z' fill='%23fff'/%3E%3C/svg%3E");
  -webkit-mask-size:var(--diente) 34px;  mask-size:var(--diente) 34px;
  -webkit-mask-repeat:repeat-x;          mask-repeat:repeat-x;
}
/* la misma costura, con el diente mordiendo hacia arriba */
.costura--up{ margin-bottom:0; margin-top:-20px; }
.costura--up::before{ transform:scaleY(-1); }

/* ---------- header ---------- */
.hd{
  position:fixed; inset:0 0 auto; z-index:50;
  /* sin backdrop-filter: convierte el header en bloque contenedor y
     colapsa el nav fixed del móvil a la altura de la barra */
  background:transparent;
}
.hd.scrolled{ background:rgba(20,22,31,.94); box-shadow:0 1px 0 var(--linea); }
.hd__in{
  width:min(100% - 2.5rem, var(--wrap)); margin-inline:auto;
  height:68px; display:flex; align-items:center; gap:1.5rem;
}
.brand{ display:flex; align-items:center; gap:.6rem; text-decoration:none; margin-right:auto; }
.brand__mark{ display:grid; grid-template:repeat(2,9px)/repeat(2,9px); gap:2px; flex:none; }
.brand__mark i{ display:block; }
.brand__mark i:nth-child(1){ background:var(--rojo); }
.brand__mark i:nth-child(2){ background:var(--verde); }
.brand__mark i:nth-child(3){ background:var(--azul); }
.brand__mark i:nth-child(4){ background:var(--amarillo); }
.brand__word{
  font-family:"Gabarito",sans-serif; font-weight:800;
  font-size:1.35rem; letter-spacing:-.03em;
}
.nav{ display:flex; gap:1.75rem; }
.nav a{
  text-decoration:none; font-size:.95rem; font-weight:500; color:var(--tiza);
  padding-block:.35rem; border-bottom:2px solid transparent;
  transition:border-color .2s var(--ease), color .2s var(--ease);
}
.nav a.active{ border-bottom-color:var(--amarillo); }
.hd__call{
  font-family:"DM Mono",monospace; font-size:.9rem; font-weight:500;
  text-decoration:none; padding:.5rem .95rem;
  border:1.5px solid var(--linea);
  transition:border-color .2s var(--ease), background-color .2s var(--ease);
}
.burger{
  display:none; width:44px; height:44px; background:none; border:0; padding:0;
  cursor:pointer; flex-direction:column; justify-content:center; gap:6px; align-items:center;
}
.burger span{ display:block; width:24px; height:2px; background:var(--tiza); }

/* ============================================================
   PORTADA · foto a sangre 100svh (el gate mide ≥70% del viewport)
   ============================================================ */
.hero{
  position:relative; min-height:100svh;
  display:flex; align-items:flex-end;
  padding:7rem 0 3rem;
  overflow:hidden;
}
.hero__media{ position:absolute; inset:0; }
.hero__media img{ width:100%; height:100%; object-fit:cover; object-position:center 38%; }
.hero__veil{
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(20,22,31,.30) 0%, rgba(20,22,31,.14) 26%, rgba(20,22,31,.60) 60%, rgba(20,22,31,.93) 85%, var(--noche) 100%),
    linear-gradient(90deg, rgba(20,22,31,.44) 0%, rgba(20,22,31,.04) 58%);
}
.hero__grain{
  position:absolute; inset:0; opacity:.28; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}
.hero__in{
  position:relative; z-index:2;
  width:min(100% - 2.5rem, var(--wrap)); margin-inline:auto;
}
.eyebrow--hero{ color:var(--amarillo); text-shadow:0 1px 10px rgba(20,22,31,.95); }

.hero__h1{
  font-family:"Gabarito",sans-serif; font-weight:900;
  font-size:clamp(3rem,12.5vw,9.5rem);   /* ≥90px en escritorio, salto ≥8× */
  line-height:.88;
  letter-spacing:-.045em;
  margin:0 0 1.4rem;
  max-width:min(14ch,100%);
  overflow-wrap:break-word;
}
/* subida por línea: overflow en un envoltorio, NUNCA clip-path */
.hero__h1 .ln{ display:block; overflow:hidden; padding-bottom:.06em; }
.hero__h1 .ln > span{
  display:block;
  transform:translateY(105%);
  animation:sube .85s var(--ease) forwards;
}
.hero__h1 .ln:nth-child(1) > span{ animation-delay:.10s; }
.hero__h1 .ln:nth-child(2) > span{ animation-delay:.20s; }
.hero__h1 .ln:nth-child(3) > span{ animation-delay:.30s; }
@keyframes sube{ to{ transform:none; } }

.pill{
  display:inline-block; font-weight:900; font-style:normal;
  background:var(--amarillo); color:var(--noche);
  padding:.02em .28em .1em;
  letter-spacing:-.05em;
}

.hero__sub{
  max-width:min(46ch,100%); margin:0 0 1.9rem;
  font-size:clamp(1.02rem,1.55vw,1.22rem);
  color:var(--tiza);
  text-shadow:0 1px 12px rgba(20,22,31,.9);
}

/* el mostrador: teléfono + horario, visibles SIN scroll incluso a 390px */
.hero__desk{
  display:flex; flex-wrap:wrap; align-items:stretch; gap:0;
  border:1.5px solid var(--linea);
  background:rgba(20,22,31,.72);
  margin-bottom:1.6rem;
  width:fit-content; max-width:100%;
}
.tel{
  display:block; text-decoration:none; padding:.85rem 1.3rem;
  border-right:1.5px solid var(--linea);
}
.tel__lbl{
  display:block; font-family:"DM Mono",monospace; font-size:.75rem;
  letter-spacing:.14em; text-transform:uppercase; color:var(--tiza-mut);
}
.tel__num{
  display:block; font-family:"Gabarito",sans-serif; font-weight:800;
  font-size:clamp(1.5rem,3.4vw,2.1rem); letter-spacing:-.03em; line-height:1.15;
}
.desk__when{ padding:.85rem 1.3rem; display:flex; flex-direction:column; justify-content:center; }
.desk__days{ margin:0; font-weight:600; font-size:1rem; }
.desk__live{
  margin:.15rem 0 0; font-family:"DM Mono",monospace; font-size:.8rem;
  color:var(--tiza-mut); display:flex; align-items:center; gap:.5rem;
}
.dot{ width:9px; height:9px; flex:none; background:var(--tiza-mut); border-radius:50%; }
.dot.open{ background:var(--verde-luz); box-shadow:0 0 0 4px rgba(111,209,136,.2); }
.dot.closed{ background:var(--rojo-luz); }

.hero__acts{ display:flex; flex-wrap:wrap; gap:.75rem; }

/* ---------- botones ---------- */
.btn{
  display:inline-block; text-decoration:none;
  font-weight:700; font-size:.98rem;
  padding:.85rem 1.5rem;
  border:1.5px solid transparent;
  transition:background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
}
.btn--wa{ background:var(--verde-fill); color:#fff; }
.btn--ghost{ border-color:var(--tiza); color:var(--tiza); }
.btn:active{ transform:scale(.97); }

@media (hover:hover){
  .nav a:hover{ color:var(--amarillo); }
  .hd__call:hover{ border-color:var(--amarillo); }
  .btn--wa:hover{ background:var(--verde); color:var(--noche); }
  .btn--ghost:hover{ background:var(--tiza); color:var(--noche); }
  .shot:hover img{ transform:scale(1.04); }
  .datos a:hover{ color:var(--amarillo); }
  .ft__cols a:hover{ color:var(--amarillo); }
  .fiestas__nota a:hover{ color:var(--verde-luz); }
}

/* ---------- secciones ---------- */
.sec{ padding:clamp(4.5rem,9vw,8rem) 0; position:relative; }
.sec--dentro{ background:var(--noche); padding-top:clamp(5.5rem,10vw,9rem); }
.sec--fiestas{ background:var(--noche-2); }
.sec--gente{ background:var(--noche); }
.sec--donde{ background:var(--noche-2); }

/* ============================================================
   BENTO · tarjetas de color plano con DIENTE de tamaño fijo.
   El diente es un círculo posicionado, no una máscara estirada:
   así no se deforma a ningún ancho y sobresale hacia el hueco
   de la rejilla, nunca hacia la caja de texto.
   ============================================================ */
.bento{
  display:grid; gap:14px;
  grid-template-columns:repeat(4,1fr);
}
.tile{
  position:relative; padding:1.6rem 1.5rem; min-height:170px;
  display:flex; flex-direction:column; justify-content:flex-end;
}
.tile h3{
  font-family:"Gabarito",sans-serif; font-weight:800;
  font-size:1.32rem; letter-spacing:-.025em; line-height:1.12;
  margin:0 0 .45rem; position:relative; z-index:2;
}
.tile p{ margin:0; font-size:.94rem; line-height:1.5; position:relative; z-index:2; }

.tile--big{ grid-column:span 2; grid-row:span 2; min-height:360px; }
.tile--wide{ grid-column:span 2; }

/* el fondo de color va en un pseudo-elemento: el .reveal del padre
   sigue siendo un elemento limpio para el IntersectionObserver */
.tile--pza::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:var(--c);
}
/* diente que sobresale por la derecha, tamaño FIJO */
.tile--pza::after{
  content:""; position:absolute; z-index:1;
  right:-13px; top:50%; width:26px; height:26px;
  transform:translateY(-50%);
  background:var(--c);
  border-radius:50%;
}
.tile--rojo    { --c:var(--rojo-fill);  color:#fff; }
.tile--azul    { --c:var(--azul-fill);  color:#fff; }
.tile--verde   { --c:var(--verde-fill); color:#fff; }
.tile--amarillo{ --c:var(--amarillo);   color:var(--noche); }
.tile--rojo p, .tile--azul p, .tile--verde p{ color:rgba(255,255,255,.9); }
.tile--amarillo p{ color:rgba(20,22,31,.82); }

.tile--foto{ padding:0; overflow:hidden; background:var(--noche-3); min-height:170px; }
.tile--foto img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.tile--foto h3{
  position:relative; z-index:2; margin:auto 1.3rem 1.2rem;
  text-shadow:0 2px 14px rgba(20,22,31,.95);
}
.tile--come{
  background:var(--noche-3); border:1.5px solid var(--linea);
}
.tile--come p{ color:var(--tiza-mut); }
.quote-min{ color:var(--amarillo); font-style:italic; }

/* ---------- franja del suelo real ---------- */
.suelo{ position:relative; padding:clamp(5rem,10vw,8.5rem) 0; overflow:hidden; }
.suelo__img{
  position:absolute; inset:-12% 0;
  background:url("assets/suelo-puzzle.jpg") center/cover no-repeat;
  opacity:.85;
}
.suelo::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, rgba(20,22,31,.93) 0%, rgba(20,22,31,.74) 48%, rgba(20,22,31,.16) 100%);
}
.suelo__in{ position:relative; z-index:2; }
.h2--suelo{ max-width:16ch; }
.suelo__p{ max-width:min(44ch,100%); margin:0; font-size:1.1rem; color:var(--tiza); }

/* ---------- fiestas ---------- */
.fiestas{ display:grid; gap:14px; grid-template-columns:repeat(4,1fr); }
.fst{
  position:relative; padding:2rem 1.6rem 1.9rem;
  background:var(--noche); border-top:5px solid var(--cf);
}
.fst--rojo{ --cf:var(--rojo); }
.fst--amarillo{ --cf:var(--amarillo); }
.fst--azul{ --cf:var(--azul); }
.fst--verde{ --cf:var(--verde); }
.fst__n{
  font-family:"DM Mono",monospace; font-size:.8rem; letter-spacing:.16em;
  color:var(--cf); margin:0 0 1.6rem;
}
.fst h3{
  font-family:"Gabarito",sans-serif; font-weight:800; font-size:1.3rem;
  letter-spacing:-.025em; line-height:1.15; margin:0 0 .6rem;
}
.fst p{ margin:0; font-size:.94rem; color:var(--tiza-mut); }
.fiestas__nota{
  margin:2.5rem 0 0; font-size:1.05rem; color:var(--tiza-mut); max-width:min(58ch,100%);
}
.fiestas__nota a{
  color:var(--verde-luz); font-family:"DM Mono",monospace; font-weight:500;
  text-decoration:none; border-bottom:1.5px solid currentColor;
  transition:color .2s var(--ease);
}

/* ---------- reseñas ---------- */
.opis{ display:grid; gap:14px; grid-template-columns:repeat(3,1fr); }
.opi{
  margin:0; padding:1.9rem 1.7rem;
  background:var(--noche-2); border-left:4px solid var(--amarillo);
}
.opi p{ margin:0 0 1.2rem; font-size:1rem; line-height:1.6; }
.opi footer{ display:flex; align-items:center; gap:.85rem; flex-wrap:wrap; }
.opi__a{ font-weight:700; font-size:.92rem; }
.opi__s{ color:var(--amarillo); font-size:.9rem; letter-spacing:.1em; }

/* ---------- galería ---------- */
.galh{
  font-family:"Gabarito",sans-serif; font-weight:800;
  font-size:clamp(1.4rem,2.6vw,1.9rem); letter-spacing:-.025em;
  margin:clamp(3.5rem,6vw,5rem) 0 1.5rem;
}
.gal{ display:grid; gap:14px; grid-template-columns:repeat(3,1fr); grid-auto-rows:230px; }
.shot{ margin:0; overflow:hidden; cursor:zoom-in; background:var(--noche-3); }
.shot img{ width:100%; height:100%; object-fit:cover; transition:transform .4s var(--ease); }
.shot--tall{ grid-row:span 2; }
.shot--wide{ grid-column:span 2; }

/* ---------- dónde ---------- */
.donde{ display:grid; gap:clamp(2rem,4vw,3.5rem); grid-template-columns:1fr 1.05fr; align-items:start; }
.hrs{ border:1.5px solid var(--linea); padding:1.4rem 1.5rem; margin-bottom:2rem; }
.hrs__live{
  margin:0 0 1rem; padding-bottom:.9rem; border-bottom:1.5px solid var(--linea);
  font-family:"DM Mono",monospace; font-size:.85rem;
  display:flex; align-items:center; gap:.6rem;
}
.hrs .row{
  display:flex; justify-content:space-between; gap:1rem;
  padding:.42rem 0; font-size:.95rem; color:var(--tiza-mut);
}
.hrs .row.today{ color:var(--tiza); font-weight:700; }
.hrs .row.today span:last-child{ color:var(--amarillo); }

.datos{ margin:0 0 1.8rem; display:grid; gap:1.15rem; }
.datos div{ display:grid; gap:.2rem; }
.datos dt{
  font-family:"DM Mono",monospace; font-size:.75rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--tiza-mut);
}
.datos dd{ margin:0; font-size:1.02rem; }
.datos a{ text-decoration:none; border-bottom:1.5px solid var(--linea); transition:color .2s var(--ease); }
.donde__acts{ display:flex; gap:.75rem; flex-wrap:wrap; }
.mapa{ border:1.5px solid var(--linea); }
.mapa iframe{ width:100%; height:min(74vh,540px); border:0; filter:grayscale(.35) contrast(1.05); }

/* ---------- footer ---------- */
.ft{ background:var(--noche-2); padding:clamp(3.5rem,6vw,5rem) 0 0; border-top:1.5px solid var(--linea); }
.ft__in{ display:grid; gap:2.5rem; grid-template-columns:1fr 1.6fr; padding-bottom:3rem; }
.brand__mark--ft{ grid-template:repeat(2,13px)/repeat(2,13px); gap:3px; margin-bottom:.9rem; }
.ft__word{
  font-family:"Gabarito",sans-serif; font-weight:800; font-size:1.7rem;
  letter-spacing:-.03em; margin:0 0 .3rem;
}
.ft__cl{ margin:0; color:var(--tiza-mut); font-size:.95rem; }
.ft__cols{ display:grid; gap:2rem; grid-template-columns:repeat(3,1fr); }
.ft__h{
  font-family:"DM Mono",monospace; font-size:.75rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--tiza-mut);
  margin:0 0 .95rem; font-weight:500;
}
.ft__cols a{
  display:block; text-decoration:none; font-size:.97rem; margin-bottom:.55rem;
  transition:color .2s var(--ease);
}
.ft__txt{ margin:0; font-size:.97rem; color:var(--tiza-mut); }

.ft__bar{
  border-top:1.5px solid var(--linea); padding:1.4rem 0 2rem;
  display:flex; flex-wrap:wrap; gap:.6rem 1.5rem;
  align-items:center; justify-content:space-between;
}
.ft__legal{
  margin:0; display:flex; flex-wrap:wrap; gap:.5rem 1.25rem;
  font-size:.88rem; color:var(--tiza-mut);
}
.ft__legal a{ text-decoration:none; border-bottom:1px solid var(--linea); }
.demo-aviso{ margin:0; font-size:.82rem; color:var(--tiza-mut); opacity:.75; }

/* ---------- barra de llamada móvil ---------- */
.callbar{
  display:none; position:fixed; left:0; right:0; bottom:0; z-index:60;
  background:var(--verde-fill); color:#fff; text-decoration:none;
  text-align:center; padding:.95rem; font-weight:700;
}

/* ---------- lightbox ---------- */
.lightbox__close{
  position:absolute; top:1rem; right:1.25rem; z-index:2;
  width:48px; height:48px; font-size:2rem; line-height:1;
  background:none; border:0; color:#fff; cursor:pointer;
}
.lightbox img{ max-width:92vw; max-height:88vh; object-fit:contain; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1080px){
  .bento{ grid-template-columns:repeat(2,1fr); }
  .tile--big{ grid-column:span 2; grid-row:auto; min-height:230px; }
  .fiestas{ grid-template-columns:repeat(2,1fr); }
  .opis{ grid-template-columns:1fr; }
  .gal{ grid-template-columns:repeat(2,1fr); }
  .shot--wide{ grid-column:span 2; }
  .donde{ grid-template-columns:1fr; }
  .ft__in{ grid-template-columns:1fr; }
}

@media (max-width:860px){
  .nav{
    position:fixed; inset:68px 0 auto; flex-direction:column; gap:0;
    background:var(--noche); border-bottom:1.5px solid var(--linea);
    padding:.5rem 1.25rem 1.5rem;
    transform:translateY(-8px); opacity:0; visibility:hidden;
    transition:opacity .25s var(--ease), transform .25s var(--ease), visibility .25s;
  }
  .nav.open{ transform:none; opacity:1; visibility:visible; }
  .nav a{ padding:.85rem 0; border-bottom:1px solid var(--linea); }
  .burger{ display:flex; }
  .hd__call{ display:none; }
  .hd{ background:rgba(20,22,31,.9); }
  .callbar{ display:block; }
  .ft{ padding-bottom:3.5rem; }
  .ft__bar{ padding-bottom:4.5rem; }
}

@media (max-width:640px){
  :root{ --diente:104px; }
  .costura{ height:26px; margin-bottom:-15px; }
  .costura--up{ margin-bottom:0; margin-top:-15px; }
  .costura::before{
    -webkit-mask-size:var(--diente) 26px; mask-size:var(--diente) 26px;
  }
  .hero{ padding:5.5rem 0 2.5rem; align-items:center; }
  .hero__h1{ max-width:none; margin-bottom:1.1rem; }
  .hero__sub{ margin-bottom:1.5rem; font-size:1rem; }
  .hero__desk{ width:100%; }
  .tel{ flex:1 1 100%; border-right:0; border-bottom:1.5px solid var(--linea); }
  .desk__when{ flex:1 1 100%; }
  .hero__acts .btn{ flex:1 1 100%; text-align:center; }
  .bento{ grid-template-columns:1fr; }
  .tile--big,.tile--wide{ grid-column:span 1; }
  .tile--pza::after{ right:auto; left:50%; top:auto; bottom:-13px; transform:translateX(-50%); }
  .fiestas{ grid-template-columns:1fr; }
  .gal{ grid-template-columns:1fr; grid-auto-rows:230px; }
  .shot--wide,.shot--tall{ grid-column:span 1; grid-row:span 1; }
  .ft__cols{ grid-template-columns:1fr; }
  .suelo::after{ background:linear-gradient(180deg, rgba(20,22,31,.90) 0%, rgba(20,22,31,.62) 100%); }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .hero__h1 .ln > span{ animation:none; transform:none; }
  .shot img{ transition:none; }
}
