.nav .wrap { height: auto; min-height: 84px; }
.navlinks { gap: 18px; }
.navlinks a { display: inline-flex; align-items: center; min-height: 44px; }
.navlinks a[aria-current="page"] { text-decoration: underline; text-underline-offset: 7px; text-decoration-thickness: 2px; }
.nav a:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.stay-teaser { padding: 70px 0; background: var(--canvas); }
.stay-teaser-inner { display: flex; align-items: center; justify-content: space-between; gap: 45px; }
.stay-teaser h2 { font-size: clamp(2.16rem, 4.32vw, 3.24rem); }
.stay-teaser p:not(.eyebrow) { max-width: 750px; margin-top: 22px; color: var(--muted); }
.stay-teaser .btn { flex: none; }
@media (max-width: 1000px) {
  .nav .wrap { flex-direction: column; align-items: stretch; justify-content: center; gap: 6px; padding-block: 12px 6px; }
  .nav .brand { align-self: flex-start; }
  .nav .navlinks { display: grid; grid-template-columns: .8fr 1.8fr .8fr .8fr .8fr; gap: 8px; width: 100%; }
  .nav .navlinks a:not(.btn) { display: flex; justify-content: center; text-align: center; line-height: 1.3; font-size: .875rem; padding: 8px 2px; }
  .stay-teaser-inner { align-items: flex-start; flex-direction: column; gap: 25px; }
}
@media (max-width: 600px) {
  .nav .navlinks { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 16px; }
  .nav .navlinks a:not(.btn) { font-size: .875rem; padding-inline: 2px; }
  .stay-teaser { padding: 50px 0; }
}

/* Direct social links, shared by the contact panel and all page footers. */
.social-links { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.social-links a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 9px 12px; border: 1px solid currentColor; border-radius: 3px; color: inherit; font-size: .875rem; font-weight: 600; line-height: 1.2; text-decoration: none; }
.social-links svg { flex: none; }
.social-links a:hover { background: rgba(185,155,114,.15); }
.social-links a:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.contact-social { margin: 22px 0; }
.contact-social > p { margin: 0 0 10px; font-size: .875rem; font-weight: 600; }
footer .wrap { flex-wrap: wrap; align-items: center; }
footer .social-links { color: #fbfaf8; }
@media (max-width: 900px) { footer .wrap { align-items: flex-start; } }
