/* Hostal Verónica Centro — estilos propios (réplica del diseño anterior) */
:root{--navy:#000d58;--gold:#d7bc0d;--yellow:#ffdd02;--sky:#c2d4ff;--paper:#f8fbfe;
  --f-body:Raleway,system-ui,sans-serif;--f-head:"DM Serif Display",Georgia,serif;--f-ui:Montserrat,system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
@media (min-width:769px){html{zoom:.85}}   /* la web anterior se mostraba al 85 % en escritorio */
body{margin:0;background:var(--paper);color:#000;font-family:var(--f-body);font-size:16px;line-height:1.72;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--navy)}
.wp-site-blocks{padding:0}
main.hv-main{display:block}
.hv-main > .wp-block-post-content{display:block}
.hv-main .wp-block-post-content>*{margin-block:0}
/* ---------- secciones ---------- */
.hv-sec{padding-inline:40px;margin-block:0}
.hv-sec.hv-wide{padding-inline:4%}
.hv-sec.hv-wide:not(.wp-block-cover)>*{max-width:none!important}
.hv-sec:not(.wp-block-cover)>*{max-width:1400px;margin-inline:auto}
.hv-sec .hv-cols{gap:3.5%;margin:0 auto;align-items:flex-start}
.hv-sec.cards-servicios{max-width:1400px;margin-inline:auto}
.hv-col{min-width:0}
.hv-col>*{margin-block:0}
.hv-col>.wp-block-image{margin:0}
.hv-img{text-align:center}
.hv-img.is-center{display:flex;justify-content:center}
.wp-block-image img{display:block;height:auto}
/* ---------- tipografía ---------- */
.hv-main .wp-block-heading{font-family:var(--f-ui);font-weight:700;color:var(--navy);margin:0}
.hv-main .wp-block-heading.titulo-veronica{font-family:var(--f-head);font-weight:400;line-height:.7}
.hv-main h1.wp-block-heading{letter-spacing:-.015em}
.hv-text{font-family:var(--f-ui);margin-block:0}
.hv-text a{color:inherit}
.hv-label{font-family:var(--f-ui);margin:0;line-height:1.72}
.hv-eyebrow{font-family:var(--f-ui);font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.titulo-bienvenida{font-weight:700;text-transform:uppercase}
.hv-main .titulo-veronica{margin-block:0}
/* ---------- hero ---------- */
.hv-hero.wp-block-cover{padding:0;min-height:650px;align-items:center;justify-content:flex-start}
.hv-hero .wp-block-cover__inner-container{width:100%;max-width:1400px;margin-inline:auto;padding:160px 40px 90px;color:#fff}
.hv-hero .hv-cols{gap:0;margin:0}
.hv-hero .hv-col{padding:0!important;background:none!important}
.hv-hero .wp-block-cover__image-background{object-fit:cover;object-position:center}
.hv-hero h1.wp-block-heading{color:#fff;margin-bottom:22px!important}
/* ---------- botones ---------- */
.hv-buttons{display:flex;gap:16px;flex-wrap:wrap;margin:10px 0 0}
.hv-btn .wp-block-button__link{display:inline-block;font-family:var(--f-ui);font-weight:700;text-transform:uppercase;line-height:17px;color:var(--navy);background:var(--yellow);border-radius:10px;padding:13px 29px;text-decoration:none;border:0;transition:filter .2s,background .2s}
.hv-btn .wp-block-button__link:hover{filter:brightness(.95)}
.hv-btn-arrow .wp-block-button__link{background:transparent;border-radius:0;padding:13px 29px 13px 29px;color:var(--navy)}
.hv-btn-arrow .wp-block-button__link::after{content:"";display:inline-block;width:.9em;height:.9em;margin-left:.6em;vertical-align:-.1em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M13 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M13 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat}
.hv-btn-arrow .wp-block-button__link:hover{background:rgba(0,13,88,.06);filter:none}
/* ---------- tarjetas ---------- */
.hv-col.has-background{border-radius:10px;box-shadow:3px 5px 8px rgba(0,0,0,.28);overflow:hidden}
.hv-col.has-background>.wp-block-image{margin:0}
.hv-col.has-background>.wp-block-image img{width:100%}
.hv-col.has-background .hv-col{padding-inline:24px}
.hv-sep{border:0;height:1px;margin:10px 0;opacity:1}
/* ---------- listas ---------- */
.hv-check{list-style:none;padding:0;margin:0}
.hv-check li{position:relative;padding:6px 0 6px 30px;font-family:var(--f-ui);font-size:18px;line-height:1.5;color:#4a4a4a}
.hv-check li::before{content:"";position:absolute;left:0;top:.85em;width:18px;height:18px;background:var(--gold);border-radius:50%;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.5 17 4 11.5l1.8-1.8 3.7 3.7 8.7-8.7L20 6.5z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.5 17 4 11.5l1.8-1.8 3.7 3.7 8.7-8.7L20 6.5z'/%3E%3C/svg%3E") center/contain no-repeat}
/* ---------- iconos ---------- */
.hv-icon{color:var(--navy);display:flex;justify-content:center}
.hv-icon svg{display:block;max-width:100%}
.hv-col .hv-icon{margin-bottom:12px}
/* ---------- galería ---------- */
.hv-gallery.wp-block-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:5px 0 0;padding:0}
.hv-gallery.wp-block-gallery>.wp-block-image{margin:0!important;width:auto!important}
.hv-gallery.wp-block-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block}
/* ---------- acordeón ---------- */
.hv-toggle{border:0;border-bottom:1px solid rgba(0,13,88,.25);background:rgba(255,255,255,.55);margin:0;padding:0}
.hv-toggle summary{cursor:pointer;font-family:var(--f-ui);font-weight:700;color:var(--navy);padding:16px 18px;font-size:18px}
.hv-toggle-body{padding:4px 18px 18px;font-family:var(--f-ui)}
/* ---------- vídeo ---------- */
.hv-video video{width:100%;border-radius:10px;display:block}
/* ---------- carrusel (Granada) ---------- */
.hv-carousel{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:24px!important;padding-bottom:12px}
.hv-carousel>.wp-block-column{flex:0 0 min(420px,86%)!important;scroll-snap-align:start}
/* ---------- cabecera ---------- */
.hv-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:20px 0;background:transparent;transition:background .25s}
.admin-bar .hv-header{top:32px}
.hv-header.is-stuck,.hv-no-hero .hv-header{background:var(--navy)}
.hv-header__in{max-width:1400px;margin:0 auto;padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.hv-logo img{display:block;width:140px;height:auto}
.hv-nav{display:flex;align-items:center;gap:6px}
.hv-nav ul{display:flex;list-style:none;margin:0;padding:0;gap:0}
.hv-nav a{font-family:var(--f-ui);font-size:16px;color:#fcfcfc;text-decoration:none;padding:0 10px;line-height:1.7}
.hv-nav a:hover,.hv-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
.hv-nav .hv-reservar{margin-left:10px;border:2px solid #fff;border-radius:10px;padding:12px 24px;color:#fff;transition:all .3s}
.hv-nav .hv-reservar:hover{background:var(--gold);border-color:var(--gold);color:var(--navy);text-decoration:none}
.hv-burger{display:none;background:none;border:0;color:#fcfcfc;padding:10px;min-width:44px;min-height:44px;cursor:pointer}
.hv-burger svg{width:28px;height:28px}
.hv-no-hero .hv-main{padding-top:110px}
@media (max-width:1024px){
  .hv-burger{display:block}
  .hv-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:rgba(0,13,88,.98);padding:10px 0 20px;box-shadow:0 8px 20px rgba(0,0,0,.25)}
  .hv-header.is-open .hv-nav{display:flex}
  .hv-nav ul{flex-direction:column;width:100%;text-align:center}
  .hv-nav li a{display:block;padding:14px 10px}
  .hv-nav .hv-reservar{margin:10px 0 0}
  .hv-logo img{width:110px}
}
/* ---------- pie ---------- */
.hv-footer{background:var(--navy);color:#fff}
.hv-footer a{color:#fff}
.hv-footer .hv-sec{padding-block:50px}
.hv-social{display:flex;gap:18px;justify-content:center}
.hv-social a{color:#fff;display:inline-flex}
.hv-contactlist{list-style:none;padding:0;margin:6px 0}
.hv-contactlist li{padding:5px 0 5px 30px;position:relative;font-family:var(--f-ui);font-size:18px;overflow-wrap:anywhere;color:#fff}
.hv-contactlist li::before{content:"";position:absolute;left:0;top:.55em;width:18px;height:18px;background:var(--gold);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.hv-li-pin::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 0 0-14 0c0 5.8 7 12 7 12zm0-9a3 3 0 1 1 0-6 3 3 0 0 1 0 6z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 0 0-14 0c0 5.8 7 12 7 12zm0-9a3 3 0 1 1 0-6 3 3 0 0 1 0 6z'/%3E%3C/svg%3E")}
.hv-li-mail::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 4l20 8-20 8 3-8-3-8zm3 8h8'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 4l20 8-20 8 3-8-3-8zm3 8h8'/%3E%3C/svg%3E")}
.hv-li-phone::before,.hv-li-wa::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15 15 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11 11 0 0 0 3.5.55 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.2.2 2.4.55 3.5a1 1 0 0 1-.25 1z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8a15 15 0 0 0 6.6 6.6l2.2-2.2a1 1 0 0 1 1-.25 11 11 0 0 0 3.5.55 1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.2.2 2.4.55 3.5a1 1 0 0 1-.25 1z'/%3E%3C/svg%3E")}
/* ---------- formularios (Contact Form 7) ---------- */
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 textarea{width:100%;font:inherit;font-family:var(--f-ui);padding:12px 14px;border:1px solid rgba(0,13,88,.35);border-radius:8px;background:#fff}
.wpcf7 input[type=submit]{font-family:var(--f-ui);font-weight:700;text-transform:uppercase;background:var(--yellow);color:var(--navy);border:0;border-radius:10px;padding:13px 29px;cursor:pointer}
.hv-stub{padding:24px;border:2px dashed rgba(0,13,88,.35);border-radius:10px;text-align:center;font-family:var(--f-ui);color:var(--navy);background:rgba(255,255,255,.5)}
/* ---------- reservas (banner WhatsApp) ---------- */
.hvc-reservas-wrap{position:relative;width:100%}
.hvc-hero-banner{position:relative;width:100%;display:flex;align-items:center}
.hvc-hero-img{display:block;width:100%;height:auto;position:relative;z-index:2;margin-bottom:-8px}
.hvc-hero-btn-wrap{position:absolute;right:5%;top:72%;transform:translateY(-50%);z-index:10}
.hvc-btn-reserva{display:inline-block;background:var(--yellow);color:var(--navy)!important;font-family:var(--f-ui);font-weight:700;padding:14px 30px;border-radius:10px;text-decoration:none}
/* ---------- móvil ---------- */
@media (max-width:781px){
  .hv-sec{padding-inline:18px}
  .hv-hero .wp-block-cover__inner-container{padding:130px 20px 60px}
  .hv-main h1.wp-block-heading{font-size:clamp(40px,12vw,64px)!important;line-height:.95!important}
  .hv-main h2.wp-block-heading{font-size:clamp(28px,8vw,36px)!important;line-height:1.1!important}
  .hv-main .wp-block-heading.hv-h3{line-height:1.15!important}

  .hv-gallery.wp-block-gallery{grid-template-columns:repeat(2,1fr)}
  .hv-sec .hv-cols{gap:18px}
  .hv-col.has-background{margin-bottom:6px}
}
.hv-breadcrumb{background:var(--paper);padding:10px 40px;font-family:var(--f-ui);font-size:14px}.hv-breadcrumb ol{list-style:none;margin:0 auto;padding:0;display:flex;flex-wrap:wrap;gap:8px;max-width:1400px}.hv-breadcrumb li+li::before{content:"›";margin-right:8px;opacity:.6}.hv-breadcrumb a{text-decoration:none}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
/* carrusel de fotos de habitación */
.hv-slider{position:relative;border-radius:10px;overflow:hidden;background:#fff}
.hv-slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.hv-slides::-webkit-scrollbar{display:none}
.hv-slide{flex:0 0 100%;margin:0;scroll-snap-align:start}
.hv-slide img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.hv-prev,.hv-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:10px;border:0;background:#fff;color:#777;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.hv-prev{left:12px}.hv-next{right:12px}
.hv-cbox{font-family:var(--f-ui)}
.hv-cbox h3{font-family:var(--f-head);font-weight:400;color:#fff;margin:6px 0}

.hv-main .wp-block-heading.titulo-veronica:not(.hv-h1){margin-bottom:.5em!important}
.hv-main .wp-block-heading.titulo-veronica.hv-h2{margin-bottom:.45em!important}
.hv-main .wp-block-heading.hv-h3{line-height:1.1}
.hv-main .wp-block-heading.titulo-veronica.hv-h3{line-height:1.1}

/* Entradas y archivos */
.hv-post,.hv-archive{padding-left:4%;padding-right:4%;padding-bottom:60px}
.hv-post h1,.hv-archive h1{color:var(--navy);margin-bottom:.3em}
.hv-post-date{color:#555;font-family:Montserrat,sans-serif;font-size:14px;margin-bottom:1.2em}
.hv-post .wp-block-post-featured-image img{border-radius:8px;width:100%;height:auto}
.hv-archive .wp-block-post-title a{color:var(--navy);text-decoration:none}
.hv-archive .wp-block-post-template{list-style:none;padding:0}
.hv-archive .wp-block-post-template>li{border-bottom:1px solid #d9e2f5;padding:1.2em 0}
