
@font-face{font-family:"Playfair Display";src:url(/estatico/playfair.woff2) format("woff2");font-weight:400 600;font-display:swap}
@font-face{font-family:"DM Sans";src:url(/estatico/dmsans.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Caveat";src:url(/estatico/caveat.woff2) format("woff2");font-weight:500;font-display:swap}
/* Tipografías y colores de José María (30/10/2026): Playfair Display para los títulos (peso 400, interlineado 1.08,
   -0.025em), DM Sans para el texto (16 px, 1.55) y los botones y el menú (14 px, 600); texto #20272A, acento #A95135,
   fondo #FAF8F3. Las letras, en el servidor (sin Google Fonts) */
:root{--crema:#FAF8F3;--crema-2:#F3EEE4;--papel:#FFFFFF;--tinta:#20272A;--suave:#646C6F;--linea:#E7E0D3;
  --terracota:#A95135;--terracota-2:#8F4229;--oliva:#7C8763;--dorado:#E0A33A;
  --serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif;--mano:"Caveat",cursive;
  --radio:14px;--sombra:0 6px 24px rgba(60,40,20,.10)}
*{box-sizing:border-box}
html,body{margin:0}
html{scroll-behavior:smooth}
body{background:var(--crema);color:var(--tinta);font-family:var(--sans);font-size:16px;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.envoltura{width:min(1240px,100% - 48px);margin-inline:auto}
.kicker{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--suave);margin:0 0 6px}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;line-height:1.08;letter-spacing:-.025em}
h2{font-size:clamp(32px,3.5vw,44px)}
.boton{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:12px 22px;font-weight:600;font-size:14px;cursor:pointer;border:0;font-family:var(--sans)}
button{font-family:var(--sans);font-size:14px;font-weight:600}
.boton-lleno{background:var(--terracota);color:#fff}
.boton-lleno:hover{background:var(--terracota-2)}
.boton-borde{border:1.5px solid var(--terracota);color:var(--tinta);background:transparent}
.boton-borde:hover{background:var(--terracota);color:#fff}
.flecha::after{content:"→";font-weight:400}
.enlace{color:var(--terracota);font-size:14px;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:1px}
svg.ico{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.simbolos{position:absolute}
.texto.mas{margin-top:14px}
.mapa{margin:16px 0 0}
.solo-lector{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* cabecera */
/* La cabecera, siempre de color sólido (José María, 01/11/2026: «que sea de color sólido, y que el banner del castillo
   empiece a partir de ese header»): el crema de la web, opaco y con su raya; en la portada ya no va encima de la foto. */
.cabecera{position:relative;z-index:10;padding:16px 0;background:var(--crema);border-bottom:1px solid var(--linea)}
.cabecera .envoltura{display:flex;align-items:center;gap:28px}
.logo{display:flex;flex-direction:column;line-height:1;color:var(--tinta)}
.logo b{font-family:var(--serif);font-weight:400;font-size:34px;letter-spacing:-.01em}
.logo span{font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;margin-top:4px;color:var(--suave)}
.menu{display:flex;gap:30px;margin-left:auto;font-size:14px;font-weight:600}
.menu a:hover{color:var(--terracota)}
.herramientas{display:flex;align-items:center;gap:16px}
.idiomas{display:flex;align-items:center;gap:4px}
.idioma{position:relative;display:inline-flex;padding:5px;border-radius:7px;line-height:0;opacity:.6;transition:opacity .15s}
.idioma .bandera{display:block;width:20px;height:14px;border-radius:3px;box-shadow:0 0 0 1px rgba(32,39,42,.22)}
a.idioma:hover,a.idioma:focus-visible{opacity:1}
.idioma.activo{opacity:1;box-shadow:inset 0 0 0 1.5px var(--terracota)}
.cabecera .boton{padding:10px 20px}

/* portada */
#alojamientos{scroll-margin-top:12px}
.portada{position:relative;min-height:560px;padding:96px 0 130px;color:#fff;overflow:hidden;background-color:#5b3a24;background-size:cover;background-position:center}
.portada::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,26,14,.74) 0%,rgba(40,26,14,.45) 40%,rgba(40,26,14,.05) 75%)}
.portada::after{content:"";position:absolute;inset:auto 0 0 0;height:120px;background:linear-gradient(180deg,rgba(247,242,233,0),var(--crema))}
.portada .fondo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:0}
.portada::before,.portada::after{z-index:1}
.portada .envoltura{position:relative;z-index:2}
.portada .kicker{color:rgba(255,255,255,.88)}
.portada h1{font-size:clamp(38px,5vw,68px);line-height:1.05;max-width:640px}
.portada .entradilla{font-size:17px;max-width:520px;margin:18px 0 30px;color:rgba(255,255,255,.94)}
/* las ventajas, sobre un velo oscuro propio: se leen igual con una foto clara (contraste ≥ 4,5:1 sobre blanco) */
/* (02/11/2026) una franja de lado a lado de la pantalla: el fondo se alarga con la sombra y clip-path, el texto sigue en su sitio */
.ventajas{display:flex;flex-wrap:wrap;gap:16px 34px;padding:18px 0;background:rgba(20,24,26,.66);box-shadow:0 0 0 100vmax rgba(20,24,26,.66);clip-path:inset(0 -100vmax)}
.ventaja{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:500;line-height:1.3;max-width:180px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.ventaja svg.ico{flex:none;width:28px;height:28px;stroke-width:1.4;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}
.a-mano{position:absolute;right:5%;top:70px;z-index:2;font-family:var(--mano);font-size:28px;line-height:1.05;color:#fff;transform:rotate(-10deg);text-align:center;text-shadow:0 1px 8px rgba(0,0,0,.35)}

/* buscador */
.buscador{position:relative;z-index:5;margin-top:-62px}
.velo-bajo{display:none}
/* Escritorio (José María, 06/11/2026): el hero más largo, con el buscador y «Reserva con tranquilidad» flotando sobre la foto,
   más cerca de los textos; la capa oscura de las ventajas sigue hasta abajo (entra con un degradado y se funde con el
   crema como la foto) en vez de ser una franja con corte */
@media (min-width:761px){
  /* (06/11/2026, segunda vuelta: «hasta que choque con el fondo siguiente, sin degradado») la foto y la capa oscura llegan
     hasta donde empieza la sección siguiente, que tapa lo que sobra con su crema (el buscador marca dónde empieza) */
  .portada{padding-bottom:320px}
  .portada::after{display:none}
  .ventajas{background:none;box-shadow:none;clip-path:none}
  .velo-bajo{display:block;position:absolute;inset:auto 0 0 0;height:520px;z-index:1;pointer-events:none;
    background:linear-gradient(180deg,rgba(20,24,26,0) 0,rgba(20,24,26,.62) 100px,rgba(20,24,26,.7) 150px)}
  .buscador{margin-top:-282px;padding-bottom:36px}
  .buscador+.alojamientos{background-color:var(--crema);z-index:2}
}
.buscador form{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr auto;align-items:center;background:var(--papel);border-radius:22px;box-shadow:var(--sombra);padding:10px 10px 10px 8px}
.campo{display:flex;align-items:center;gap:12px;padding:8px 18px;border-right:1px solid var(--linea);min-width:0}
.campo:nth-child(4){border-right:0}
.campo svg.ico{color:var(--terracota);width:22px;height:22px}
.campo>div{flex:1;min-width:0}
.campo label{display:block;font-size:12px;font-weight:600;color:var(--terracota)}
.campo input,.campo select{border:0;background:transparent;font:inherit;font-size:14px;color:var(--tinta);padding:2px 0;width:100%;outline:none;min-height:24px}
.buscador .boton{padding:16px 24px;font-size:14.5px;border-radius:16px}
.tranquilo{display:flex;gap:14px;align-items:center;background:linear-gradient(135deg,#EEF4E8 0%,#F7F9F3 60%,var(--papel) 100%);border:1px solid #D9E5CD;border-radius:18px;padding:14px 20px;margin-top:16px;box-shadow:0 4px 18px rgba(79,107,58,.08)}
.tranq-ico{width:46px;height:46px;border-radius:50%;background:#5E7E46;color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 0 0 5px #E1EBD6}
.tranq-ico svg.ico{width:23px;height:23px}
.tranquilo b{display:block;font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.2;color:var(--tinta)}
.tranquilo ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 22px;font-size:14px;color:#3D4548}
.tranquilo li{display:flex;gap:7px;align-items:flex-start}
.tranquilo li svg.ico{width:16px;height:16px;color:#5E7E46;flex:none;margin-top:2px}
.buscador .tranquilo{max-width:860px;margin:16px auto 0;justify-content:center}

/* secciones */
section{padding:64px 0}
/* el texto de la derecha, en la línea de la última del título (02/11/2026: se quedaba flotando a media altura) */
.cabeza{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;align-items:last baseline;margin-bottom:28px}
.cabeza p{margin:0;color:var(--suave)}
.cabeza>p{max-width:460px;justify-self:end}
.cabeza>div:only-child{grid-column:1/-1}
/* en los apartamentos (al buscar: «Libres del…» y «N apartamentos libres…»), el título y el texto, uno debajo del otro, a la izquierda */
.alojamientos .cabeza{grid-template-columns:minmax(0,1fr);gap:8px;align-items:start}
.alojamientos .cabeza>p{justify-self:start;max-width:none}
.tarjetas{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.tarjeta{background:var(--papel);border-radius:var(--radio);overflow:hidden;box-shadow:0 2px 12px rgba(60,40,20,.06);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.tarjeta:hover{transform:translateY(-3px);box-shadow:var(--sombra)}
.foto{position:relative;aspect-ratio:4/3;background:var(--crema-2)}
.foto img{width:100%;height:100%;object-fit:cover}
.foto .sin{position:absolute;inset:0;display:grid;place-items:center;color:var(--suave);font-size:13px}
.tarjeta .cuerpo{padding:12px 14px 14px}
.tarjeta h3{font-size:20px}
.meta{display:flex;align-items:flex-start;gap:5px;font-size:12.5px;line-height:1.35;color:var(--suave);margin:3px 0 6px}
.meta svg.ico{width:14px;height:14px;color:var(--terracota);margin-top:1px}
.meta span{min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tarjeta .titulo{font-size:13.5px;color:var(--tinta);margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.datos{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--suave)}
.datos span{display:flex;align-items:center;gap:4px}
.datos svg.ico{width:16px;height:16px}
.tarjeta .cuerpo{display:flex;flex-direction:column;flex:1}
.ver-apto{align-self:flex-start;margin-top:auto;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1.5px solid var(--terracota);border-radius:999px;color:var(--terracota);font-size:13px;font-weight:600;line-height:1.2;transition:background .15s,color .15s}
.ver-apto svg.ico{width:15px;height:15px;stroke-width:2;transition:transform .15s}
.tarjeta .precio+.ver-apto,.tarjeta .datos+.ver-apto{margin-top:12px}
.tarjeta:hover .ver-apto,.tarjeta:focus-visible .ver-apto{background:var(--terracota);color:#fff}
.tarjeta:hover .ver-apto svg.ico{transform:translateX(3px)}
.vacio{color:var(--suave);padding:20px 0}

.franja{border-block:1px solid var(--linea);background:var(--crema-2);padding:22px 0}
.franja .envoltura{display:grid;grid-template-columns:repeat(4,1fr)}
.beneficio{display:flex;gap:14px;align-items:center;padding:0 22px;border-right:1px solid var(--linea)}
.beneficio:last-child{border-right:0}
.beneficio .circulo{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--terracota);display:grid;place-items:center;color:var(--terracota);flex:none}
.beneficio b{display:block;font-size:13.5px}
.beneficio span{font-size:12.5px;color:var(--suave);line-height:1.35}

.opiniones .cabeza{grid-template-columns:1fr auto}
.notas-sitios{display:flex;flex-wrap:wrap;gap:14px 26px;background:var(--papel);border-radius:var(--radio);padding:14px 22px;box-shadow:0 2px 12px rgba(60,40,20,.06)}
.sitio{display:flex;align-items:center;gap:10px}
.logo-sitio{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;font-weight:700;color:#fff;background:var(--suave)}
.logo-sitio.con-logo{background:#fff;border:1px solid var(--linea);padding:6px}.logo-sitio.con-logo svg{width:100%;height:100%;display:block}
.p-booking{background:#0C3B7C}.p-airbnb{background:#FF5A5F}.p-google{background:#4285F4}.p-tripadvisor{background:#00AA6C}.p-vrbo{background:#245ABC}
.sitio b{display:block;font-size:17px}
.sitio small{display:block;font-size:11px;color:var(--suave)}
.resenas{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 10px}
/* Las flechas de las opiniones (web.js las pone; 04/11/2026): solo en pantallas con ratón y si no caben todas */
.carril{position:relative}
.carril-flecha{display:none;position:absolute;top:calc(50% - 5px);transform:translateY(-50%);z-index:1;width:44px;height:44px;border-radius:50%;border:1px solid var(--linea);background:var(--papel);color:var(--tinta);font:inherit;font-size:26px;line-height:1;padding:0 0 3px;cursor:pointer;box-shadow:0 4px 14px rgba(60,40,20,.14);transition:opacity .2s}
.carril-flecha.ant{left:-22px}.carril-flecha.sig{right:-22px}
.carril-flecha:hover{border-color:var(--terracota);color:var(--terracota)}
.carril-flecha:disabled{opacity:0;pointer-events:none}
@media (hover:hover) and (pointer:fine) and (min-width:761px){.carril.con-flechas .carril-flecha{display:block}.carril.con-flechas .resenas{scrollbar-width:none}.carril.con-flechas .resenas::-webkit-scrollbar{display:none}}
.resena{flex:0 0 min(380px,86%);scroll-snap-align:start;background:var(--papel);border-radius:var(--radio);padding:20px 22px;box-shadow:0 2px 12px rgba(60,40,20,.06)}
.resena header{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:600;font-family:var(--serif);font-size:18px}
.avatar{flex:none}.avatar.c0{background:#B07D62}.avatar.c1{background:#6B7B4F}.avatar.c2{background:#A4532F}.avatar.c3{background:#5E7A8A}.avatar.c4{background:#8A6A8E}.avatar.c5{background:#4F7A6E}
img.avatar{object-fit:cover;background:var(--crema-2)}
.resena .origen{display:flex;align-items:center;gap:6px}
.logo-mini{width:18px;height:18px;flex:none;border-radius:4px;background:#fff;border:1px solid var(--linea);padding:2px;display:inline-grid}.logo-mini svg{width:100%;height:100%;display:block}
.resena .puntos small{font-weight:500;font-size:12px;color:var(--suave)}
.resena header b{display:block;font-size:14.5px}
.resena header small{color:var(--suave);font-size:12px}
.resena .puntos{margin-left:auto;font-weight:700;font-size:16px}
.resena p{margin:0 0 12px;color:#4a443d;font-size:14px}
.resena time{font-size:12px;color:var(--suave)}
.destinos .envoltura,.experiencias .envoltura{display:grid;grid-template-columns:280px 1fr;gap:34px;align-items:center}
.destinos p,.experiencias p{color:var(--suave);margin:14px 0 0}
.fila-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.destino{position:relative;aspect-ratio:3/4.2;border-radius:var(--radio);overflow:hidden;background:var(--crema-2)}
.destino img{width:100%;height:100%;object-fit:cover}
/* (02/11/2026: «el texto apenas se ve») un degradado más alto y más oscuro abajo, sombra en las letras y la frase compacta (3 líneas como mucho) */
.destino::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.35) 55%,rgba(10,8,6,.82) 100%)}
.destino div{position:absolute;left:14px;right:12px;bottom:14px;z-index:1;color:#fff;line-height:1.3;text-shadow:0 1px 3px rgba(0,0,0,.55),0 0 12px rgba(0,0,0,.35)}
.destino b{display:block;font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.12}
.destino small{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:5px;font-size:12.5px;line-height:1.35;opacity:.95}
.destino.con-guia{display:block;color:inherit;text-decoration:none}
.destino.con-guia img{transition:transform .5s ease}
.destino.con-guia:hover img{transform:scale(1.04)}
.destino.con-guia:focus-visible{outline:3px solid var(--terracota);outline-offset:3px}
.destino-guia{position:absolute;top:12px;left:12px;z-index:1;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--tinta);font-size:12px;font-weight:600}
.destino-guia svg{width:14px;height:14px}
/* experiencias (31/10/2026): foto, icono en un círculo, título, frase y flecha */
.fila-exp{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;scrollbar-width:thin}
.exp{position:relative;flex:0 0 230px;scroll-snap-align:start;display:flex;flex-direction:column;background:var(--papel);border-radius:18px;overflow:hidden;box-shadow:0 4px 18px rgba(60,40,20,.08);transition:transform .2s,box-shadow .2s}
a.exp:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(60,40,20,.14)}
.exp-foto{aspect-ratio:4/3.4;overflow:hidden;background:var(--crema-2)}
.exp-foto img{width:100%;height:100%;object-fit:cover}
.exp-ico{position:absolute;left:16px;top:calc(230px * 3.4 / 4 - 26px);width:52px;height:52px;border-radius:50%;background:var(--papel);display:grid;place-items:center;box-shadow:0 2px 10px rgba(60,40,20,.12)}
.exp-ico svg.ico{width:26px;height:26px;color:var(--terracota)}
.exp-cuerpo{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:34px 16px 16px;flex:1}
.exp-cuerpo b{display:block;font-size:15.5px;font-weight:600;line-height:1.25}
.exp-cuerpo small{display:block;font-size:13px;color:var(--suave);margin-top:3px}
.exp-ir{flex:none;width:34px;height:34px;border-radius:50%;background:#F6E9E1;display:grid;place-items:center}
.exp-ir svg.ico{width:16px;height:16px;color:var(--terracota)}
.exp-bloque .kicker{margin:0 0 6px}
.exp-intro{color:var(--suave);margin:0 0 16px;max-width:560px}
.exp-todas{margin-top:8px;gap:10px}
.exp-todas svg.ico{width:16px;height:16px}
.experiencia{background:var(--papel);border-radius:var(--radio);overflow:hidden;box-shadow:0 2px 12px rgba(60,40,20,.06)}
.experiencia .foto{aspect-ratio:4/3.3}
.experiencia .cuerpo{padding:12px 14px 14px}
.experiencia b{display:block;font-size:14px}
.experiencia small{font-size:12px;color:var(--suave)}
.anfitrion{position:relative;overflow:hidden}
.anfitrion.con-foto .envoltura{display:grid;grid-template-columns:360px 1fr;gap:44px;align-items:center;max-width:1240px}
.foto-jm{width:100%;aspect-ratio:4/5;max-height:80vh;object-fit:cover;border-radius:22px}
.pre{white-space:pre-line}
.anfitrion .envoltura{position:relative;max-width:760px}
.anfitrion p{color:var(--suave);margin:14px 0 0;font-size:16px}
.anfitrion .a-mano{position:static;display:block;color:var(--terracota);text-shadow:none;font-size:26px;margin-top:18px;transform:rotate(-3deg);text-align:left}
/* El fondo ilustrado (José María, 30/10/2026): detrás de opiniones, destinos y anfitrión, cada uno con otro trozo
   (las ramas de olivo arriba, el pueblo abajo y, en destinos, dado la vuelta) y un velo crema para que se lea. */
.con-fondo{position:relative;isolation:isolate;overflow:hidden}
.con-fondo::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(rgba(250,248,243,.30),rgba(250,248,243,.30)),url(/estatico/fondo-a08a176a528c.webp) center/cover no-repeat}
.opiniones.con-fondo::before{background-position:center,center 18%}
.alojamientos.con-fondo::before{transform:scaleX(-1);background:linear-gradient(rgba(250,248,243,.45),rgba(250,248,243,.45)),url(/estatico/fondo-a08a176a528c.webp) left 38%/max(130%,1500px) auto no-repeat}
.destinos.con-fondo::before{background:linear-gradient(90deg,rgba(250,248,243,.82),rgba(250,248,243,.6) 28%,rgba(250,248,243,.2) 60%),url(/estatico/fondo-a08a176a528c.webp) left bottom/max(200%,1700px) auto no-repeat}
.anfitrion.con-fondo::before{background:radial-gradient(ellipse 42% 75% at 36% 45%,rgba(250,248,243,.85),rgba(250,248,243,0)),url(/estatico/fondo-a08a176a528c.webp) right 85%/cover no-repeat}
.anfitrion.con-fondo:not(.con-foto) .texto{max-width:560px}
.pie{padding:34px 0;border-top:1px solid var(--linea);font-size:13px;color:var(--suave);text-align:center}
.pie a{text-decoration:underline}

/* página de un apartamento */
.apto{padding:24px 0 64px}
.miga{font-size:13px;color:var(--suave);margin-bottom:14px}
.miga a:hover{color:var(--terracota)}
.apto h1{font-size:clamp(32px,4.2vw,50px);font-weight:600;line-height:1.08}
.sub{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;color:var(--suave);font-size:14px;margin:8px 0 18px}
.sub svg.ico{width:16px;height:16px;color:var(--terracota)}
.val-apto{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:-6px 0 18px}
.val-chip{display:flex;align-items:center;gap:10px;background:var(--papel);border:1px solid var(--linea);border-radius:14px;padding:7px 14px 7px 8px}
a.val-chip:hover{border-color:var(--terracota)}
.val-chip .logo-sitio{width:30px;height:30px;border-radius:8px}
.val-num b{font-size:17px}.val-num small{font-size:12px;color:var(--suave)}
.val-txt{display:flex;flex-direction:column;font-size:12.5px;line-height:1.25;color:var(--suave)}
.val-txt small{font-size:11.5px}
.compartir{margin-left:auto;display:inline-flex;align-items:center;gap:8px;background:none;border:1px solid var(--tinta);border-radius:999px;padding:9px 16px;font-size:14px;cursor:pointer;color:var(--tinta)}
.compartir:hover{border-color:var(--terracota);color:var(--terracota)}
.compartir[hidden]{display:none}
.compartir svg.ico{width:18px;height:18px}
.galeria{position:relative;display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:8px;border-radius:18px;overflow:hidden}
.galeria a{position:relative;display:block;background:var(--crema-2)}
.galeria a:first-child{grid-row:span 2}
.galeria img{width:100%;height:100%;object-fit:cover;transition:filter .2s}
.galeria a:hover img{filter:brightness(.92)}
.galeria.n1{grid-template-columns:1fr}
.galeria.n2{grid-template-columns:1fr 1fr}.galeria.n2 a:first-child{grid-row:span 2}.galeria.n2 a:nth-child(2){grid-row:span 2}
.galeria.n3{grid-template-columns:2fr 1fr}
.galeria.n4 a:nth-child(4){grid-column:span 2}
.galeria .ver-todas{position:absolute;right:14px;bottom:14px;background:var(--papel);border:1px solid var(--tinta);border-radius:10px;padding:8px 14px;font-size:13.5px;font-weight:600;display:flex;gap:8px;align-items:center}
.cuerpo-apto{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px;margin-top:32px;align-items:start}
.cuerpo-apto>div{min-width:0}
.bloque{padding:28px 0;border-bottom:1px solid var(--linea)}
.bloque:first-child{padding-top:0}
.bloque h2{font-size:24px;margin-bottom:14px}
.resumen{font-size:17px;margin:0 0 6px}
.chips{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.chips li{display:flex;align-items:center;gap:8px;background:var(--papel);border:1px solid var(--linea);border-radius:999px;padding:8px 14px 8px 10px;font-size:14.5px}
.chips svg.ico{color:var(--terracota);width:20px;height:20px}
/* valoraciones y anfitrión */
.reputacion{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:22px;background:linear-gradient(135deg,#FFFFFF,#F6EFE6);border:1px solid var(--linea);border-radius:20px;padding:22px;box-shadow:0 4px 18px rgba(60,40,20,.06)}
.rep-anf{display:flex;gap:16px;align-items:flex-start}
.rep-anf img,.rep-inicial{flex:none;width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid var(--papel);box-shadow:0 2px 10px rgba(60,40,20,.15)}
.rep-inicial{display:grid;place-items:center;background:var(--terracota);color:#fff;font-family:var(--serif);font-size:28px}
.rep-anf small{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--terracota);font-weight:600}
.rep-anf b{display:block;font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.15;margin:2px 0 6px}
.rep-anf p{margin:0;font-size:14px;color:var(--suave);line-height:1.5}
.contacto-anf{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.contacto-anf a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px 9px 12px;border-radius:999px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s}
.contacto-anf a:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(60,40,20,.18)}
.contacto-anf svg{width:20px;height:20px;flex:none}
.contacto-anf .c-wa{background:#25D366;color:#fff}
.contacto-anf .c-correo{background:var(--papel,#fff);color:var(--terracota);border:1.5px solid var(--terracota)}
.contacto-anf .c-correo svg.ico{stroke-width:1.8}
.anfitrion .contacto-anf{margin-top:22px}
@media (min-width:761px){.anfitrion .contacto-anf{margin-top:38px}}
.rep-tit{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 12px;font-weight:600;font-size:14.5px}
.rep-tit svg.ico{color:var(--dorado);fill:var(--dorado);width:18px;height:18px}
.rep-tit span{color:var(--suave);font-weight:400}
.rep-lista{display:grid;gap:10px}
.rep-nota{display:flex;gap:12px;align-items:center;background:var(--papel);border-radius:14px;padding:10px 12px;border:1px solid var(--linea)}
a.rep-nota:hover{border-color:var(--terracota)}
.rep-dato{flex:1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;font-size:13px}
.rep-dato>span:first-child{color:var(--suave)}
.rep-dato b{font-size:17px;text-align:right}.rep-dato b small{font-size:12px;color:var(--suave);font-weight:400}
.rep-dato small{grid-column:1/-1;color:var(--suave);font-size:12px}
.rep-barra{grid-column:1/-1;width:100%;height:6px;border:0;border-radius:6px;background:var(--crema-2);overflow:hidden;-webkit-appearance:none;appearance:none}
.rep-barra::-webkit-progress-bar{background:var(--crema-2);border-radius:6px}
.rep-barra::-webkit-progress-value{background:var(--oliva);border-radius:6px}
.rep-barra::-moz-progress-bar{background:var(--oliva);border-radius:6px}
/* servicios por estancias */
.serv-grupos{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.serv-grupo{background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:16px 18px}
.serv-cab{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.serv-cab span{width:40px;height:40px;border-radius:50%;background:#F6E9E1;display:grid;place-items:center}
.serv-cab svg.ico{color:var(--terracota);width:22px;height:22px}
.serv-cab b{font-size:15.5px;font-weight:600}
.serv-grupo ul{list-style:none;margin:0;padding:0}
.serv-grupo li{display:flex;gap:8px;align-items:flex-start;padding:4px 0;font-size:14.5px}
.serv-grupo li svg.ico{width:16px;height:16px;color:var(--oliva);margin-top:3px}
.serv-grupo li.serv-aviso svg.ico{color:var(--terracota)}
.texto{white-space:pre-line;color:#3d3832;margin:0}
.texto+.texto{margin-top:14px}
.subt{font-family:var(--sans);font-size:15px;font-weight:600;margin:18px 0 6px}
.camas{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.cama{border:1px solid var(--linea);border-radius:12px;padding:16px;background:var(--papel)}
.cama svg.ico{width:28px;height:28px;color:var(--terracota);margin-bottom:10px}
.cama b{display:block;font-size:15px;margin-bottom:2px}
.cama span{display:block;font-size:13.5px;color:var(--suave)}
.servicios{columns:2;column-gap:32px}
.servicios h3{font-family:var(--sans);font-size:14px;font-weight:600;margin:0 0 8px;break-after:avoid}
.servicios ul{list-style:none;margin:0 0 18px;padding:0;break-inside:avoid}
.servicios li{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:15px}
.servicios li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--oliva);flex:none}
/* Sobre el alojamiento, el barrio y las normas, en tarjetas como «Qué ofrece» (02/11/2026) */
.info-tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:22px 24px}
.entradilla{font-family:var(--serif);font-size:21px;line-height:1.4;color:var(--tinta);margin:0 0 12px}
.info-sub{margin-top:18px;padding-top:16px;border-top:1px solid var(--linea)}
.info-tarjeta h3{display:flex;align-items:center;gap:8px;font-family:var(--sans);font-size:15px;font-weight:600;margin:0 0 6px}
.info-tarjeta h3 svg.ico{width:18px;height:18px;color:var(--terracota)}
.leer{position:relative}
.plegado .leer{max-height:230px;overflow:hidden}
.plegado .leer::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(rgba(255,255,255,0),var(--papel))}
.leer-boton{margin-top:12px;background:none;border:0;padding:0;font:inherit;font-weight:600;font-size:14.5px;color:var(--tinta);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.barrio.dos{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px}
.barrio-lado h3{margin-bottom:8px}
.barrio.dos .barrio-lado{border-left:1px solid var(--linea);padding-left:26px}
.cercanos{list-style:none;margin:0;padding:0}
.cercanos li{padding:9px 0;display:flex;gap:10px;align-items:center;font-size:14.5px;border-bottom:1px dashed var(--linea)}
.cercanos li:last-child{border-bottom:0}
.cercanos li span{flex:1;min-width:0}
.cercanos em{font-style:normal;font-size:12.5px;font-weight:600;white-space:nowrap;background:#F6E9E1;color:var(--terracota-2);border-radius:999px;padding:3px 10px}
.cercanos svg.ico{width:16px;height:16px;color:var(--terracota)}
.mapa-boton{margin-top:16px;padding:10px 18px}
.mapa-boton svg.ico{width:18px;height:18px}
.horas{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.hora{display:flex;gap:14px;align-items:center;background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:16px 20px}
.hora>svg.ico{width:44px;height:44px;padding:10px;border-radius:50%;background:#F6E9E1;color:var(--terracota);box-sizing:border-box}
.hora small{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--suave)}
.hora b{display:block;font-family:var(--serif);font-weight:500;font-size:30px;line-height:1.1}
.hora span{display:block;font-size:13px;line-height:1.3;color:var(--suave)}
.normas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.normas li{display:flex;gap:16px;align-items:center;font-size:14.5px;background:var(--papel);border:1px solid var(--linea);border-radius:14px;padding:12px 14px}
.normas li>span{position:relative;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:none;background:#F6E9E1;color:var(--terracota)}
.normas li>span svg.ico{width:21px;height:21px}
/* el ✓ o el ✕ en la esquina del icono */
.normas li.si>span::after,.normas li.no>span::after{position:absolute;right:-7px;bottom:-6px;width:15px;height:15px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;line-height:1;color:#fff;border:2px solid var(--papel)}
.normas li.si>span::after{content:"✓";background:#5E7E46;border-color:#F1F5EC}
.normas li.no>span::after{content:"✕";background:#B5533A;border-color:#FBF1EE}
.normas li.si{background:#F1F5EC;border-color:#DCE6D2}
.normas li.si>span{background:#E1EBD6;color:#4F6B3A}
.normas li.no{background:#FBF1EE;border-color:#F0DCD5}
.normas li.no>span{background:#F5DED6;color:#A7452C}
.normas li.otras{align-items:flex-start;line-height:1.45}.normas li.otras>span{margin-top:1px}.normas li.ancha{grid-column:1/-1}
@media (max-width:700px){
  .barrio.dos{grid-template-columns:minmax(0,1fr);gap:18px}
  .barrio.dos .barrio-lado{border-left:0;padding-left:0;border-top:1px solid var(--linea);padding-top:16px}
  .normas{grid-template-columns:minmax(0,1fr)}
  .info-tarjeta{padding:18px}
  .entradilla{font-size:19px}
  .hora{padding:14px;gap:10px}
  .hora>svg.ico{width:38px;height:38px;padding:8px}
  .hora b{font-size:26px}
}
.registros{font-size:13.5px;color:var(--suave)}
.registros b{color:var(--tinta);font-weight:600}
.caja{position:sticky;top:20px;background:var(--papel);border:1px solid var(--linea);border-radius:18px;box-shadow:var(--sombra);padding:24px}
.caja h3{font-size:22px;margin-bottom:10px}
.caja p{font-size:14px;color:var(--suave);margin:0 0 10px}
.caja .boton{width:100%;justify-content:center;margin-top:8px}
.caja ul{list-style:none;padding:0;margin:14px 0 0;border-top:1px solid var(--linea)}
.caja li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;padding:10px 0 0}
.caja li svg.ico{width:18px;height:18px;color:var(--oliva)}
.todas{columns:2;column-gap:10px;margin-top:10px}
.todas figure{margin:0 0 10px;break-inside:avoid}
.todas img{display:block;width:100%;height:auto;border-radius:10px;background:var(--crema-2)}
.todas figcaption{font-size:12.5px;color:var(--suave);margin-top:4px}
.precio{margin-top:10px;font-size:13.5px;color:var(--suave)}
.precio b{color:var(--tinta);font-size:16px}
.caja h3 small{font-family:var(--sans);font-size:13px;color:var(--suave);font-weight:400}
.caja-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.caja-form label{display:flex;flex-direction:column;gap:3px;border:1px solid var(--linea);border-radius:10px;padding:8px 10px;font-size:11.5px;font-weight:600;color:var(--terracota)}
.caja-form .ancho{grid-column:1/-1}
.caja-form input,.caja-form select{border:0;background:transparent;font:inherit;font-size:14px;font-weight:400;color:var(--tinta);padding:0;outline:none;min-height:22px;width:100%}
.caja-form .boton{justify-content:center;margin-top:0}
.desglose{margin:14px 0 6px;font-size:14px}
.desglose div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}
.desglose dt{color:var(--suave)} .desglose dd{margin:0;white-space:nowrap}
.desglose .total{border-top:1px solid var(--linea);margin-top:6px;padding-top:10px;font-weight:600;font-size:15.5px}
.desglose .total dt{color:var(--tinta)}
.no-libre{color:var(--terracota-2);font-size:14px;margin:10px 0}
.aviso-res{font-size:13px}
/* El precio debajo del calendario (04/11/2026): solo hasta 1080 px; más ancho, la caja de la derecha ya se ve */
.cal-resumen,.barra-precio{display:none}
@media (max-width:1080px){
  .cal-resumen:not([hidden]){display:block;margin-top:16px;background:var(--papel);border:1px solid var(--linea);border-radius:18px;box-shadow:var(--sombra);padding:20px 22px;animation:aparece .25s ease-out}
  .cal-resumen h3{font-size:22px;margin:0 0 4px}
  .cal-resumen h3 small{font-family:var(--sans);font-size:13px;color:var(--suave);font-weight:400}
  .cal-resumen p{font-size:14px;color:var(--suave);margin:0 0 10px}
  .cal-resumen .boton{width:100%;justify-content:center;margin-top:8px}
  .cal-resumen[aria-busy=true]{opacity:.6}
  /* y en el móvil y la tableta, abajo: la hoja con el precio entero y su ✕ (abierta) o la barra con el total y «Reservar» */
  .barra-precio:not([hidden]){display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--papel);border-top:1px solid var(--linea);
    box-shadow:0 -8px 28px rgba(60,40,20,.16);animation:sube .28s ease-out}
  .barra-precio.sin-mini:not(.abierta){display:none}
  .barra-mini{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
  .barra-precio.abierta .barra-mini{display:none}
  .barra-hoja{display:none;position:relative;max-height:min(78vh,620px);overflow-y:auto;padding:22px 20px calc(18px + env(safe-area-inset-bottom))}
  .barra-precio.abierta{border-radius:20px 20px 0 0}
  .barra-precio.abierta .barra-hoja{display:block}
  .barra-hoja::before{content:"";position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:4px;background:var(--linea)}
  .barra-hoja h3{font-size:24px;margin:0 40px 2px 0}
  .barra-hoja h3 small{font-family:var(--sans);font-size:13px;color:var(--suave);font-weight:400}
  .barra-fechas{font-size:13.5px;color:var(--suave);margin:0 0 4px}
  .barra-hoja p{font-size:14px;color:var(--suave)}
  .barra-hoja .boton{width:100%;justify-content:center;margin-top:8px}
  .barra-cerrar{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:1px solid var(--linea);background:var(--papel);color:var(--tinta);font:inherit;font-size:22px;line-height:1;padding:0 0 2px;cursor:pointer}
  .barra-total{display:flex;flex-direction:column;min-width:0;color:var(--tinta);text-decoration:none}
  .barra-total b{font-family:var(--serif);font-size:20px;font-weight:500}
  .barra-total small{font-size:12.5px;color:var(--suave);text-decoration:underline;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .barra-mini .boton{flex:none;margin:0;padding:12px 26px}
  /* con el script, el precio va en la hoja: el de debajo del calendario sobra */
  .con-hoja .cal-resumen{display:none!important}
  .apto:has(.barra-precio:not([hidden])){padding-bottom:84px}
}
@keyframes sube{from{transform:translateY(100%)}to{transform:none}}
@keyframes aparece{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.cal-resumen,.barra-precio{animation:none!important}}
.calendario{background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:18px}
.cal-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.cal-nav b{font-family:var(--serif);font-weight:500;font-size:22px}
.cal-nav a,.cal-nav span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:20px}
.cal-nav a{border:1px solid var(--linea)} .cal-nav a:hover{border-color:var(--terracota);color:var(--terracota)}
.cal-meses{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.cal-titulo{font-weight:600;text-align:center;margin-bottom:8px}
.cal-rejilla{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}
.cal-dsem{font-size:11px;color:var(--suave);padding:4px 0}
.cal-dia{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:42px;border-radius:8px;font-size:13px}
.cal-dia i{font-style:normal}
.cal-dia small{font-size:10px;color:var(--oliva);line-height:1}
.cal-dia.libre{background:var(--crema)}
.cal-dia.ocupado i{color:#b9ada0;text-decoration:line-through}
.cal-dia.pasado i{color:#cfc5b8}
.cal-dia.elegido{background:var(--terracota);color:#fff} .cal-dia.elegido small{color:#fbe9de}
.cal-ley{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--suave);margin:12px 0 0}
.cal-ley .cal-dia{min-height:20px;width:22px;display:inline-flex}
.cal-ley .cal-dia.ocupado{border:1px solid var(--linea)}
.cal-ley .cal-dia+.cal-dia,.cal-ley span.ocupado{margin-left:10px}
.form-res{display:flex;flex-direction:column;gap:14px;max-width:620px}
.form-res h2{font-size:24px;margin:0 0 4px}
.dos-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.campo-res{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}
.campo-res input,.campo-res textarea{border:1px solid var(--linea);border-radius:10px;padding:11px 12px;font:inherit;font-size:15px;font-weight:400;background:var(--papel);color:var(--tinta)}
.campo-res input:focus,.campo-res textarea:focus{outline:2px solid var(--terracota);outline-offset:1px}
.campo-res.err input{border-color:var(--terracota-2)} .campo-res small{color:var(--terracota-2);font-weight:500}
/* El cupón (050): el código y «Aplicar» en una fila; aplicado, en verde; si no vale, el motivo */
.cupon-res{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;border:1px dashed var(--linea);border-radius:12px;padding:12px 14px;background:var(--crema)}
.cupon-fila{display:flex;gap:8px}
.cupon-fila input{flex:1;min-width:0;border:1px solid var(--linea);border-radius:10px;padding:10px 12px;font:inherit;font-size:15px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;background:var(--papel);color:var(--tinta)}
.cupon-fila input:focus{outline:2px solid var(--terracota);outline-offset:1px}
.cupon-fila .boton{padding:10px 18px}
.cupon-res small{font-weight:500;color:var(--terracota-2)}
.cupon-res small.ok-cupon{color:#4F6B3A}
.cupon-res.err .cupon-fila input{border-color:var(--terracota-2)}
.desglose .descuento-res dd,.desglose .descuento-res dt{color:#4F6B3A}
.acepto{display:flex;gap:10px;align-items:flex-start;font-size:14px} .acepto input{width:18px;height:18px;margin-top:2px;accent-color:var(--terracota)}
.acepto a,.seguro a{color:var(--terracota);text-decoration:underline} .acepto.err{color:var(--terracota-2)}
.ancho-boton{justify-content:center;padding:15px 22px;font-size:15px}
.seguro{font-size:13px;color:var(--suave);margin:0}
.resumen-res .res-foto{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin-bottom:12px}
.resumen-res h3{font-size:19px} .resumen-res>p{margin:2px 0 0}
.resumen-res .desglose .fechas{flex-direction:column;gap:2px} .resumen-res .desglose .fechas dd{white-space:normal;font-weight:600}
.cobro-est{font-weight:600}
.ok-res{background:#EEF2E6;border-radius:10px;padding:12px 14px}
.cancelar-res{margin-top:22px} .cancelar-res summary{list-style:none;display:inline-flex;cursor:pointer} .cancelar-res summary::-webkit-details-marker{display:none}
.cancelar-res form{margin-top:12px;padding:16px;border:1px solid var(--linea);border-radius:12px;background:var(--papel)}
.texto-legal{max-width:760px} .texto-legal h2{font-size:22px;margin:26px 0 8px} .texto-legal p{color:#3d3832}
.aviso-pag{padding:120px 0;text-align:center}
.aviso-pag p{color:var(--suave);margin:14px 0 24px}

/* la galería (script): collage y carrusel */
html.sin-scroll{overflow:hidden}
.visor{position:fixed;inset:0;z-index:100;background:var(--crema);display:flex;flex-direction:column}
.visor[hidden]{display:none}
.visor-cab{display:flex;align-items:center;gap:14px;padding:12px 20px;border-bottom:1px solid var(--linea);background:var(--papel)}
.visor-tit{flex:1;text-align:center;font-family:var(--serif);font-weight:500;font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.visor-volver,.visor-x{background:none;border:0;font:inherit;font-size:15px;font-weight:600;color:var(--tinta);cursor:pointer;padding:8px}
.visor-x{font-size:28px;line-height:1;padding:0 6px}
.visor-reservar{padding:10px 18px}
.visor-collage{flex:1;overflow-y:auto;padding:20px}
.visor-mosaico{columns:3 260px;column-gap:14px;max-width:1500px;margin:0 auto}
.visor-collage[hidden],.visor-carrusel[hidden],.visor-volver[hidden]{display:none}
.visor-pieza{display:block;width:100%;margin:0 0 14px;padding:0;border:0;background:var(--crema-2);border-radius:14px;overflow:hidden;cursor:zoom-in;break-inside:avoid}
.visor-pieza img{display:block;width:100%;height:auto;transition:transform .3s}
.visor-pieza:hover img{transform:scale(1.03)}
.visor-carrusel{flex:1;display:flex;flex-direction:column;min-height:0;padding:16px 0 12px}
.visor-marco{position:relative;flex:1;min-height:0;display:flex;align-items:center}
.visor-pista{flex:1;height:100%;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.visor-pista::-webkit-scrollbar{display:none}
.visor-diapo{flex:0 0 100%;height:100%;scroll-snap-align:center;display:flex;align-items:center;justify-content:center;padding:0 72px}
.visor-diapo img{width:100%;height:100%;object-fit:contain}
.visor-flecha{position:absolute;top:50%;transform:translateY(-50%);z-index:1;width:46px;height:46px;border-radius:50%;border:1px solid var(--linea);background:var(--papel);font-size:26px;line-height:1;cursor:pointer;box-shadow:var(--sombra)}
.visor-flecha.ant{left:14px}.visor-flecha.sig{right:14px}
.visor-cuenta{text-align:center;font-size:14px;color:var(--suave);margin:10px 0}
.visor-minis{display:flex;gap:8px;overflow-x:auto;padding:4px 20px;scrollbar-width:thin}
.visor-mini{flex:0 0 92px;height:68px;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:var(--crema-2);cursor:pointer;opacity:.7}
.visor-mini.activa{border-color:var(--terracota);opacity:1}
.visor-mini img{width:100%;height:100%;object-fit:cover}

/* el selector de fechas (script) y el calendario del apartamento con el script */
form[data-fechas]{position:relative}
.fc-campo{display:block;width:100%;text-align:left;background:none;border:0;padding:0;font:inherit;font-size:14px;font-weight:400;color:var(--tinta);min-height:22px;cursor:pointer}
.fc-campo.vacio{color:var(--suave)}
.fc-campo.activo{color:var(--terracota);font-weight:600}
.fc-pop{position:absolute;z-index:40;top:calc(100% + 8px);right:0;width:min(680px,92vw);background:var(--papel);border:1px solid var(--linea);border-radius:22px;box-shadow:0 18px 50px rgba(40,25,10,.22);padding:18px 20px 14px}
.fc-pop[hidden]{display:none}
.buscador .fc-pop{left:50%;right:auto;transform:translateX(-50%)}
.fc-cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:-28px;position:relative;z-index:1;pointer-events:none}
.fc-flecha,.cal-flecha{pointer-events:auto;width:36px;height:36px;border-radius:50%;border:1px solid var(--linea);background:var(--papel);font-size:20px;line-height:1;cursor:pointer;color:var(--tinta)}
.fc-flecha:hover:not(:disabled),.cal-flecha:hover:not(:disabled){border-color:var(--terracota);color:var(--terracota)}
.fc-flecha:disabled,.cal-flecha:disabled{opacity:.3;cursor:default}
.fc-meses{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:26px}
.fc-titulo{text-align:center;font-weight:600;font-size:15px;line-height:36px;margin-bottom:8px}
.fc-rejilla{display:grid;grid-template-columns:repeat(7,1fr);gap:4px 0;text-align:center}
.fc-dsem{font-size:11.5px;color:var(--suave);padding:4px 0}
.fc-dia{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;padding:0;border:0;background:none;font:inherit;font-size:14px;color:var(--tinta);border-radius:12px;cursor:pointer}
.fc-dia i{font-style:normal;font-weight:500}
.fc-dia small{font-size:10px;color:var(--oliva);line-height:1.1}
.fc-dia:hover:not(:disabled){background:var(--crema-2)}
.fc-dia:disabled{cursor:default}
.fc-dia.pasado i,.fc-dia.ocupado i{color:#c9beb1}
.fc-dia.ocupado i{text-decoration:line-through}
.fc-dia:disabled:not(.pasado):not(.ocupado) i{color:#b9ada0}
.fc-dia.rango{background:#F6E9E1;border-radius:0}
.fc-dia.inicio,.fc-dia.fin,.fc-dia.inicio:hover:not(:disabled),.fc-dia.fin:hover:not(:disabled){background:var(--terracota);color:#fff}   /* también con el ratón encima (04/11/2026: salía claro con el número en blanco) */
.fc-dia.inicio i,.fc-dia.fin i{color:#fff}.fc-dia.inicio small,.fc-dia.fin small{color:#fbe9de}
.fc-dia.inicio{border-radius:12px 0 0 12px}.fc-dia.fin{border-radius:0 12px 12px 0}
.fc-dia.inicio:not(.rango)+.fc-dia:not(.rango):not(.fin),.fc-dia.inicio:last-child{border-radius:12px}
.fc-pie{display:flex;align-items:center;gap:12px;border-top:1px solid var(--linea);margin-top:12px;padding-top:12px}
.fc-ayuda{flex:1;font-size:13.5px;color:var(--suave)}
.fc-borrar{background:none;border:0;font:inherit;font-size:13.5px;text-decoration:underline;cursor:pointer;color:var(--tinta)}
.fc-listo{background:var(--tinta);color:#fff;border:0;border-radius:999px;padding:9px 18px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}
.calendario.con-js .cal-nav{position:relative}
.calendario.con-js .fc-meses{gap:28px}
.calendario.con-js .cal-ley{display:none}

@media (max-width:1080px){
  .menu{display:none}
  .franja .envoltura{grid-template-columns:1fr 1fr;gap:18px 0}
  .beneficio:nth-child(2){border-right:0}
  .cabeza,.opiniones .cabeza{grid-template-columns:1fr}
  .destinos .envoltura,.experiencias .envoltura{grid-template-columns:1fr}
  /* La foto del anfitrión entre móvil y escritorio (tabletas, Surface Duo, el navegador del Tesla; 04/11/2026): con una
     sola columna llenaba todo el ancho; ahora sigue al lado del texto, más pequeña */
  .anfitrion.con-foto .envoltura{grid-template-columns:minmax(220px,300px) 1fr;gap:32px}
  .cuerpo-apto{grid-template-columns:minmax(0,1fr);gap:0}
  .caja{position:static;margin-top:28px}
}
@media (max-width:760px){
  .envoltura{width:calc(100% - 32px)}
  .logo b{font-size:26px}
  .cabecera .boton{display:none}
  .portada{min-height:0;padding:56px 0 110px}
  .a-mano{display:none}
  .ventajas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px;padding:14px 0}
  /* móvil (José María, 06/11/2026): la capa oscura de las ventajas, con degradado arriba y abajo, hasta donde acaba la foto */
  .ventajas{background:none;box-shadow:none;clip-path:none}
  .velo-bajo{display:block;position:absolute;inset:auto 0 0 0;height:340px;z-index:1;pointer-events:none;
    background:linear-gradient(180deg,rgba(20,24,26,0) 0,rgba(20,24,26,.66) 80px,rgba(20,24,26,.66) calc(100% - 100px),rgba(20,24,26,0) 100%)}
  .portada::after{height:80px}
  .buscador form{grid-template-columns:1fr 1fr;padding:8px;row-gap:4px}
  .tranquilo{align-items:flex-start;padding:14px 16px;gap:12px}.tranquilo b{font-size:17px}.tranquilo ul{flex-direction:column;gap:5px}.tranq-ico{width:40px;height:40px}.buscador .tranquilo{justify-content:flex-start}
  .campo{border-right:0;border-bottom:1px solid var(--linea);padding:10px 12px}
  .campo:first-child,.campo:nth-child(4){grid-column:1/-1}
  .campo:nth-child(4){border-bottom:0}
  .buscador .boton{grid-column:1/-1;justify-content:center}
  .tarjetas{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
  .tarjetas>*{flex:0 0 min(270px,80%);scroll-snap-align:start}
  .franja .envoltura{grid-template-columns:1fr}
  .beneficio{border-right:0;padding:0}
  section{padding:48px 0}
  .con-fondo::before{background-size:auto,230% auto;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent);bottom:auto;height:150vw}
  .opiniones.con-fondo::before{background-position:center,left top}
  .destinos.con-fondo::before,.anfitrion.con-fondo::before{top:auto;bottom:0;-webkit-mask-image:linear-gradient(transparent,#000 45%);mask-image:linear-gradient(transparent,#000 45%)}
  /* «Lo que opinan nuestros huéspedes» del apartamento (José María, 04/11/2026: «más compactas y que quepan las 3 en
     una sola fila»): cada plataforma en una columna, con el logo arriba, la nota, la barra y las reseñas */
  .rep-lista{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
  .rep-nota{flex-direction:column;gap:6px;padding:10px 6px 9px;text-align:center;min-width:0}
  .rep-nota .logo-sitio{width:26px;height:26px;border-radius:7px}
  .rep-nota .logo-sitio.con-logo{padding:4px}
  .rep-dato{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;font-size:11px}
  .rep-dato b{font-size:16px;text-align:center;white-space:nowrap}.rep-dato b small{font-size:10.5px}
  .rep-dato small{font-size:10.5px;white-space:nowrap}
  .rep-barra{width:78%;height:4px}
  .rep-nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .rep-tit{display:block}.rep-tit svg.ico{vertical-align:-3px;margin-right:6px}
  .rep-sep{display:none}.rep-total{display:block;margin-top:2px;font-size:13.5px}
  /* Las notas del apartamento (José María, 04/11/2026: «más compactas y que quepan las 3 en una sola fila»): una al lado
     de otra, a partes iguales; el logo ya dice de dónde es (el nombre queda para los lectores de pantalla) */
  .val-apto{flex-wrap:wrap;gap:8px}
  .val-chip{flex:1 1 0;min-width:0;display:grid;grid-template-columns:auto auto;grid-template-areas:"logo num" "txt txt";justify-content:center;align-items:center;column-gap:6px;row-gap:3px;padding:8px 6px;border-radius:12px;text-align:center}
  .val-chip .logo-sitio{grid-area:logo;width:22px;height:22px;border-radius:6px}
  .val-chip .logo-sitio.con-logo{padding:3px}
  .val-num{grid-area:num;white-space:nowrap}.val-num b{font-size:15px}.val-num small{font-size:10.5px}
  .val-txt{grid-area:txt;font-size:11px;white-space:nowrap}.val-txt small{font-size:10.5px}
  .val-nombre{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .val-apto .compartir{flex-basis:100%;justify-content:center;margin-left:0}
  .alojamientos.con-fondo::before{background:linear-gradient(rgba(250,248,243,.35),rgba(250,248,243,.35)),url(/estatico/fondo-a08a176a528c.webp) left 40%/260% auto no-repeat;top:auto;bottom:0;height:120vw;-webkit-mask-image:linear-gradient(transparent,#000 40%);mask-image:linear-gradient(transparent,#000 40%)}
  .destinos.con-fondo::before{background:linear-gradient(rgba(250,248,243,.3),rgba(250,248,243,.3)),url(/estatico/fondo-a08a176a528c.webp) left bottom/260% auto no-repeat}
  .anfitrion.con-fondo{padding-bottom:58vw}
  .anfitrion.con-fondo::before{background:url(/estatico/fondo-a08a176a528c.webp) 80% bottom/190% auto no-repeat;height:100vw}
  .fila-fotos{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}
  .fila-fotos>*{flex:0 0 min(220px,62%);scroll-snap-align:start}
  .foto-jm{max-width:min(320px,100%);max-height:70vh;margin:0 auto;display:block}
  .anfitrion.con-foto .envoltura{grid-template-columns:1fr;gap:26px}
  .anfitrion.con-foto .texto{max-width:320px;margin:0 auto;width:100%}
  .galeria{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:14px;grid-template-rows:none}
  .galeria a{flex:0 0 100%;aspect-ratio:4/3;scroll-snap-align:start}
  .galeria .ver-todas{display:none}
  .galeria a:first-child{grid-row:auto}
  .servicios{columns:1}
  .normas{grid-template-columns:1fr}
  .todas{grid-template-columns:1fr}
  .dos-col{grid-template-columns:1fr}
  .cal-meses{grid-template-columns:1fr;gap:18px}
  .reputacion{grid-template-columns:1fr;padding:18px}
  .chips li{font-size:13.5px;padding:7px 12px 7px 9px}
  .exp{flex-basis:205px}.exp-ico{top:calc(205px * 3.4 / 4 - 26px)}
  .fc-pop,.buscador .fc-pop{position:fixed;left:0;right:0;bottom:0;top:auto;transform:none;width:auto;border-radius:22px 22px 0 0;max-height:88vh;overflow-y:auto;padding:16px 16px calc(14px + env(safe-area-inset-bottom))}
  .visor-cab{padding:10px 12px;gap:8px}.visor-tit{font-size:16px}.visor-reservar{display:none}
  .visor-collage{padding:10px}.visor-mosaico{columns:2;column-gap:8px}.visor-pieza{margin-bottom:8px;border-radius:10px}
  .visor-diapo{padding:0 8px}.visor-flecha{display:none}
  .visor-mini{flex-basis:64px;height:48px}
  .todas{columns:2;column-gap:8px}
  .calendario{padding:12px}
}

/* La guía de una zona (05/11/2026; publica/vistas-guia.mjs): la portada con su foto, el índice pegado arriba, cada apartado con
   su icono en un círculo, las tarjetas de los sitios, los teléfonos, los paneles y el clima, con las piezas de la web */
.g-portada{position:relative;min-height:440px;display:flex;align-items:flex-end;padding:80px 0 56px;color:#fff;overflow:hidden;background:#2b3a44}
.g-portada img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.g-portada::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,24,26,.15) 0%,rgba(20,24,26,.35) 45%,rgba(20,24,26,.78) 100%);z-index:1}
.g-portada .envoltura{position:relative;z-index:2}
.g-portada .kicker{color:#F3C9A6}
.g-portada h1{font-size:clamp(46px,8vw,92px);line-height:1;margin:6px 0 12px;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.g-portada p:last-child{max-width:640px;font-size:17px;color:rgba(255,255,255,.94);margin:0}
.g-indice{position:sticky;top:0;z-index:20;background:rgba(250,248,243,.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--linea)}
.g-indice .envoltura{display:flex;gap:8px;overflow-x:auto;padding:10px 0;scrollbar-width:none}
.g-indice .envoltura::-webkit-scrollbar{display:none}
.g-indice a{white-space:nowrap;padding:7px 14px;border-radius:999px;border:1px solid var(--linea);background:var(--papel);font-weight:600;font-size:13.5px}
.g-indice a:hover{border-color:var(--terracota);color:var(--terracota)}
.g-sec{padding:56px 0 8px;scroll-margin-top:60px}
.g-cab{display:flex;align-items:center;gap:14px}
.g-ico{width:48px;height:48px;border-radius:50%;border:1.5px solid var(--terracota);display:grid;place-items:center;color:var(--terracota);background:var(--papel);flex:none}
.g-ico svg.ico{width:24px;height:24px}
.g-cab h2{font-size:clamp(30px,3.5vw,42px);margin:0}
.g-lead{color:var(--suave);max-width:760px;margin:12px 0 22px}
.g-rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;margin-top:20px}
.g-tarjeta{display:flex;flex-direction:column;background:var(--papel);border:1px solid var(--linea);border-radius:18px;overflow:hidden;box-shadow:var(--sombra)}
.g-rejilla.pequenas .g-tarjeta{box-shadow:0 2px 12px rgba(60,40,20,.06)}
.g-foto{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--crema-2)}
.g-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.g-etiqueta{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.94);color:var(--terracota);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.g-ilus{position:absolute;bottom:10px;right:10px;background:rgba(20,24,26,.55);color:#fff;font-size:10.5px;padding:2px 8px;border-radius:999px}
.g-cuerpo{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px}
.g-cuerpo h3{font-size:23px;margin:0 0 6px}
.g-cuerpo p{margin:10px 0 14px;font-size:14.5px;color:#3d4548;flex:1}
.g-nota{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:13.5px;color:var(--suave);margin-bottom:6px}.g-nota b{color:var(--tinta);font-size:15px}
.g-estrellas{position:relative;display:inline-block;color:#E2D9C9;letter-spacing:1px;font-size:15px;line-height:1}
.g-estrellas-on{position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;color:var(--dorado)}
.e0{width:0}.e1{width:10%}.e2{width:20%}.e3{width:30%}.e4{width:40%}.e5{width:50%}.e6{width:60%}.e7{width:70%}.e8{width:80%}.e9{width:90%}.e10{width:100%}
.g-datos{list-style:none;padding:0;margin:4px 0 0;font-size:14px}
.g-datos li{display:flex;gap:10px;align-items:flex-start;padding:7px 0;border-bottom:1px solid var(--crema-2)}.g-datos li:last-child{border-bottom:0}
.g-datos svg.ico{width:17px;height:17px;color:var(--terracota);margin-top:2px}
.g-datos a{color:var(--terracota);font-weight:600}
.g-botones{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px}
.g-boton{padding:9px 16px;font-size:13.5px;gap:8px}.g-boton svg.ico{width:16px;height:16px}
.g-aviso{background:#F6E9E1;border-left:4px solid var(--terracota);border-radius:12px;padding:14px 16px;margin-top:18px;font-size:14.5px}
.g-aviso a,.g-panel a{color:var(--terracota);font-weight:600}
.g-telefonos{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:20px}
.g-tel{display:flex;gap:14px;align-items:center;background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:14px 16px}
.g-tel:hover{border-color:var(--terracota)}
.g-tel-ico svg.ico{width:42px;height:42px;padding:9px;border-radius:50%;background:#F6E9E1;color:var(--terracota)}
.g-tel b{display:block;font-size:13.5px}.g-num{display:block;font-family:var(--serif);font-size:21px;color:var(--terracota)}.g-tel small{color:var(--suave);font-size:12px}
.g-tel.sos{background:var(--terracota);border-color:var(--terracota);color:#fff}.g-tel.sos .g-num,.g-tel.sos small{color:#fff}
.g-tel.sos .g-tel-ico svg.ico{background:rgba(255,255,255,.18);color:#fff}
.g-paneles{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:20px}
.g-panel{background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:20px 22px}
.g-panel h3{display:flex;align-items:center;gap:10px;font-size:21px;margin:0 0 8px}.g-panel h3 svg.ico{width:22px;height:22px;color:var(--terracota)}
.g-panel ul{margin:0;padding-left:18px}.g-panel li{margin:7px 0;font-size:14.5px}.g-panel li::marker{color:var(--terracota)}
.g-clima{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:20px}
.g-clima div{background:var(--papel);border:1px solid var(--linea);border-radius:16px;padding:16px;color:var(--suave);font-size:14px}
.g-clima b{display:block;font-family:var(--serif);font-weight:400;font-size:32px;color:var(--terracota);line-height:1.1}
.g-nota-pie{font-size:12.5px;color:var(--suave);margin:14px 0 0;line-height:1.5}
.g-alojate{padding-bottom:30px}.g-alojate h2{margin-bottom:20px}
.g-fuentes{padding:30px 0 50px;font-size:13px;color:var(--suave)}.g-fuentes p{margin:0 0 10px}.g-fuentes a{text-decoration:underline}
.g-creditos{font-size:11.5px;line-height:1.55}
.guia-zona{display:flex;align-items:center;gap:14px;margin-top:18px;padding:16px 18px;border-radius:16px;background:var(--papel);border:1px solid var(--linea);color:var(--tinta)}
.guia-zona:hover{border-color:var(--terracota)}
.guia-zona>svg.ico{width:42px;height:42px;padding:9px;border-radius:50%;background:#F6E9E1;color:var(--terracota)}
.guia-zona b{display:block;font-family:var(--serif);font-weight:400;font-size:19px}.guia-zona span{color:var(--suave);font-size:13.5px}
.guia-zona .flecha-g{margin-left:auto;color:var(--terracota)}
/* con la foto de la portada de su guía de fondo, oscurecida a la izquierda para el texto en blanco (05/11/2026) */
.guia-zona.con-foto{position:relative;overflow:hidden;isolation:isolate;min-height:150px;padding:22px 24px;border:0;color:#fff;box-shadow:0 10px 26px rgba(32,39,42,.18)}
.guia-zona-foto{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 40%;transition:transform .6s ease}
.guia-zona.con-foto::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,12,10,.78) 0%,rgba(14,12,10,.5) 55%,rgba(14,12,10,.15) 100%)}
.guia-zona.con-foto:hover .guia-zona-foto{transform:scale(1.04)}
.guia-zona.con-foto>svg.ico{background:rgba(255,255,255,.95)}
.guia-zona.con-foto b{font-size:24px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.guia-zona.con-foto span{color:rgba(255,255,255,.92)}
.guia-zona.con-foto .flecha-g{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--terracota);color:#fff}
.guia-zona.con-foto:focus-visible{outline:3px solid var(--terracota);outline-offset:3px}
/* La reserva confirmada (06/11/2026): foto de la población, lo básico en tarjetas, el pago, la guía y el recibo */
.rc-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--crema-2);padding:84px 0 70px}
.rc-hero.con-foto{color:#fff;min-height:420px;display:flex;align-items:flex-end}
.rc-hero-foto{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.rc-hero.con-foto::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,12,10,.25) 0%,rgba(14,12,10,.45) 45%,rgba(14,12,10,.78) 100%)}
.rc-hero h1{font-size:clamp(36px,5vw,60px);margin:10px 0 8px}
.rc-hero.con-foto h1{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.rc-sub{font-size:18px;margin:0;max-width:640px}.rc-hero.con-foto .rc-sub{color:rgba(255,255,255,.93)}
.rc-sello{display:inline-flex;align-items:center;gap:8px;margin:0;padding:7px 14px 7px 10px;border-radius:999px;background:#E3EEDB;color:#3F5A2E;font-size:13.5px;font-weight:600}
.rc-hero.con-foto .rc-sello{background:rgba(255,255,255,.93)}
.rc-sello svg.ico{width:18px;height:18px;stroke-width:2.2}
.rc{padding:34px 0 70px}
.rc-cuerpo{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:34px;align-items:start}
.rc-main{display:grid;gap:18px;min-width:0}
.rc-datos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.rc-dato,.rc-pago,.rc-recibo,.rc-caja{background:var(--papel);border:1px solid var(--linea);border-radius:18px}
.rc-dato{display:flex;flex-direction:column;gap:10px;padding:16px}
.rc-dato svg.ico,.rc-pago>svg.ico,.rc-recibo>svg.ico{width:40px;height:40px;padding:9px;border-radius:50%;background:#F6E9E1;color:var(--terracota);box-sizing:border-box}
.rc-dato small,.rc-pago small{display:block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--terracota);font-weight:600}
.rc-dato b{display:block;font-family:var(--serif);font-weight:400;font-size:19px;line-height:1.2;margin-top:3px}
.rc-dato span{display:block;color:var(--suave);font-size:13.5px;margin-top:3px}
.rc-pago,.rc-recibo{display:flex;align-items:center;gap:16px;padding:18px 20px}
.rc-pago b,.rc-recibo b{display:block;font-family:var(--serif);font-weight:400;font-size:19px;margin-top:2px}
.rc-pago p,.rc-recibo p{margin:4px 0 0;color:var(--suave);font-size:14.5px}
.rc-recibo .boton{margin-left:auto;flex:none}
.rc-guia{margin-top:0}
.rc-guia.con-foto{min-height:170px}
.rc-ir{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--terracota);color:#fff!important;font-weight:600;font-size:14px}
.rc-ir svg.ico{width:16px;height:16px;stroke-width:2}
.rc-guia:not(.con-foto) .rc-ir{color:#fff}
.rc-caja{padding:20px 22px}.rc-caja h2{font-size:24px;margin:0 0 12px}.rc-caja p{margin:6px 0}
.rc-tus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin:0}
.rc-tus dt{font-size:12px;color:var(--suave);text-transform:uppercase;letter-spacing:.08em}.rc-tus dd{margin:2px 0 0;overflow-wrap:anywhere}
.rc-sello-gris{background:#EEE9E1;color:var(--tinta)}.rc-hero.con-foto .rc-sello-gris{background:rgba(255,255,255,.93)}
.rc-cancelada .rc-hero-foto{filter:saturate(.55)}
.rc-dinero{background:#F6E9E1;border-color:#EBD3C6}.rc-dinero>svg.ico{background:var(--papel)}
.rc-tachado .rc-dato{background:var(--crema);opacity:.85}.rc-tachado .rc-dato b{text-decoration:line-through;text-decoration-color:rgba(169,81,53,.55)}
.rc-caja .contacto-anf{margin-top:12px}
@media (max-width:900px){.rc-cuerpo{grid-template-columns:1fr}.rc-datos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.rc-hero{padding:56px 0 34px}.rc-hero.con-foto{min-height:300px}.rc-recibo{flex-wrap:wrap}.rc-recibo .boton{margin-left:0;width:100%}
  .rc-guia{flex-wrap:wrap}.rc-ir{margin-left:0}.rc-tus{grid-template-columns:1fr}.rc-dato b{font-size:17px}}
@media (max-width:760px){
  .g-portada{min-height:380px;padding:60px 0 40px}
  .g-sec{padding-top:44px}
  .g-rejilla{grid-template-columns:minmax(0,1fr)}
}
