html{scroll-behavior:smooth;scroll-padding-top:110px}header{position:sticky;top:0;z-index:20;background:#fffffff5;border-bottom:1px solid var(--border)}.site-nav{max-width:1200px;margin:auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:20px;white-space:nowrap}.brand img{object-fit:contain}#navlinks{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:600}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #0284c7;outline-offset:4px}.room-dropdown{position:relative}.room-dropdown summary{cursor:pointer}.room-dropdown>div{position:absolute;top:32px;left:-15px;min-width:180px;background:white;padding:12px;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px}.room-dropdown a{display:block;padding:9px}.reservationMain{background:var(--primary2);color:white;padding:12px 18px;border-radius:999px;white-space:nowrap}.language{color:#0369a1}.menu-button{display:none}.main-page__image{min-height:390px;display:flex;align-items:center;justify-content:center}.main-page__info{margin:70px 5%;width:90%;color:#102536}.main-page__info h1{font-size:clamp(28px,3.1vw,44px);line-height:1.3;text-shadow:0 1px 12px #ffffff60;margin-bottom:24px}.main-page__description{display:block;max-width:650px;width:auto;margin:60px auto;padding:0 24px}.main-page__description h2{font-size:28px;margin-bottom:22px}.room-collection{background:#eee;padding:55px 0;text-align:center}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}.room-card{background:white;overflow:hidden;border-radius:8px;text-align:left;box-shadow:var(--shadow)}.room-card img{width:100%;height:215px;object-fit:cover;display:block}.room-card>div{padding:20px}.room-card span{color:#0369a1;font-size:14px}footer{padding:50px 0;background:white;text-align:center}footer a{color:#0369a1}.note{font-size:13px;color:var(--muted);margin-top:18px}.room-page{padding:35px 0 60px}.breadcrumb{font-size:14px;color:var(--muted);margin-bottom:24px}.room-page h1{font-size:34px}.room-page h2{font-size:22px;font-weight:400;margin-bottom:28px}.room-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(170px,1fr);gap:45px;margin-top:28px}.gallery-view{background:#f1f5f9;border-radius:8px;overflow:hidden}.gallery-view figure{margin:0;position:relative}.gallery-view figure[hidden]{display:none}.gallery-view img{display:block;width:100%;height:480px;object-fit:contain}.gallery-view figcaption{position:absolute;bottom:12px;right:14px;background:#102536c9;color:white;border-radius:30px;padding:4px 12px;font-size:13px}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin:15px 0 30px}button{font:inherit;cursor:pointer;border:1px solid var(--border);border-radius:8px;padding:8px 16px;background:white;color:#075985}.room-layout h3{font-size:18px;line-height:1.6}.room-links{display:flex;flex-direction:column;gap:10px}.room-links a{padding:12px 16px;border-radius:8px;background:#f1f5f9}.room-links [aria-current]{background:#0284c7;color:white}.room-layout aside{border-left:1px solid var(--border);padding-left:25px}.room-layout aside h3{margin-bottom:16px}@media(max-width:1000px){.site-nav{flex-wrap:wrap;gap:10px}#navlinks{gap:16px}.brand{font-size:18px}}@media(max-width:760px){.menu-button{display:block}.site-nav{padding:8px 18px}.brand img{width:48px;height:48px}#navlinks{display:none;width:100%;flex-direction:column;align-items:stretch;padding:12px 0;gap:4px}#navlinks.open{display:flex}#navlinks>a,.room-dropdown summary{padding:12px}.room-dropdown>div{position:static;box-shadow:none;margin:6px}.main-page__image{min-height:350px}.main-page__info{margin:60px 5%}.main-page__description{margin:40px auto}.room-grid{grid-template-columns:1fr 1fr;gap:16px}.room-card img{height:180px}.room-layout{grid-template-columns:1fr;gap:30px}.gallery-view img{height:340px}.room-layout aside{border-left:0;padding:0}.room-links{flex-direction:row;flex-wrap:wrap}.room-page h1{font-size:28px}.room-page{padding-top:24px}}@media(max-width:450px){.room-grid{grid-template-columns:1fr}.room-card img{height:230px}.gallery-view img{height:280px}.main-page__info h1{font-size:28px}.link_buttom{font-size:13px}footer p{overflow-wrap:anywhere}}


/* ===== Hostal Terito palette v1.1 =====
   Recupera el azul de la web antigua y conserva el rosa del logo solo como acento. */
header{
  background:rgba(0,80,111,.97);
  border-bottom:3px solid var(--accent);
  box-shadow:0 5px 18px rgba(0,54,74,.14);
}
.brand,
#navlinks > a,
.room-dropdown > summary{
  color:#fff;
}
.brand:hover,
#navlinks > a:hover,
.room-dropdown > summary:hover{
  text-decoration:none;
}
#navlinks > a:not(.reservationMain):hover,
.room-dropdown > summary:hover{
  background:rgba(255,255,255,.10);
  border-radius:999px;
}
.language{color:#fff;}
.room-dropdown > div{background:#fff;}
.room-dropdown > div a{color:var(--text);}
.room-dropdown > div a:hover{
  color:var(--primary-dark);
  background:#eef6f8;
  text-decoration:none;
  border-radius:8px;
}
.reservationMain{
  background:var(--primary);
  border:1px solid rgba(255,255,255,.38);
  color:#fff;
}
.reservationMain:hover{
  background:var(--primary2);
  text-decoration:none;
}
.menu-button{
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.45);
}
.room-collection{background:#eef5f7;}
.room-card span,
footer a{color:var(--primary2);}
.room-links [aria-current]{background:var(--primary2);}
button{color:var(--primary-dark);}

footer{
  background:var(--primary-deep);
  color:#fff;
  border-top:3px solid var(--accent);
}
footer h2,
footer h3,
footer p,
footer a{color:#fff;}
footer .note{color:#d8e7ec;}

@media(max-width:760px){
  #navlinks{background:rgba(0,80,111,.98);}
  .room-dropdown > div{background:#f8fbfc;}
}

/* ===== Ajustes v1.2 =====
   CTA principal en rosa de marca y footer mas compacto. */
.main-page__info .link_buttom,
.main-page__info .link_buttom:link,
.main-page__info .link_buttom:visited {
  background: var(--accent);
  color: #fff;
  box-shadow: 0 10px 24px rgba(231, 95, 100, 0.28);
}

.main-page__info .link_buttom:hover,
.main-page__info .link_buttom:active {
  background: #c94b51;
  text-decoration: none;
}

footer {
  padding: 28px 0;
  line-height: 1.35;
}

footer h2 {
  font-size: 24px;
  margin-bottom: 5px;
}

footer h3 {
  font-size: 17px;
  margin-bottom: 7px;
}

footer p {
  margin-bottom: 5px;
  line-height: 1.35;
}

footer .note {
  margin-top: 7px;
  margin-bottom: 0;
}

/* ===== Ajustes v1.3 launch ===== */
.availability-label {
  margin-top: 20px;
  margin-bottom: 10px;
  font-weight: 600;
  color: var(--text);
}

.booking-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 8px;
}

.booking-primary,
.booking-secondary {
  display: inline-block;
  padding: 11px 17px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: transform .15s ease, background .15s ease, color .15s ease;
}

.booking-primary {
  background: var(--primary2);
  color: #fff;
  border: 1px solid var(--primary2);
}

.booking-primary:hover {
  background: var(--primary-dark);
  border-color: var(--primary-dark);
  text-decoration: none;
  transform: translateY(-1px);
}

.booking-secondary {
  background: #fff;
  color: var(--primary-dark);
  border: 1px solid #9db7c1;
}

.booking-secondary:hover {
  background: #eef5f7;
  text-decoration: none;
  transform: translateY(-1px);
}

.footer-booking-actions {
  justify-content: center;
  margin-top: 9px;
  margin-bottom: 0;
}

footer .booking-primary {
  background: #fff;
  color: var(--primary-deep);
  border-color: #fff;
}

footer .booking-primary:hover {
  background: #eef5f7;
  color: var(--primary-deep);
}

footer .booking-secondary {
  background: transparent;
  color: #fff;
  border-color: rgba(255,255,255,.6);
}

footer .booking-secondary:hover {
  background: rgba(255,255,255,.10);
  color: #fff;
}

.main-page__description {
  max-width: 760px;
}

.main-page__description p {
  line-height: 1.7;
}

@media(max-width:450px){
  .booking-actions {
    flex-direction: column;
  }
  .booking-primary,
  .booking-secondary {
    text-align: center;
  }
}
