/*
 * Shared interaction and spacing standards.
 * Responsive tiers: navigation <=1240, tablet <=980, mobile <=600,
 * compact mobile <=390.
 */
:root{
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:24px;
  --space-6:32px;
  --control-min:44px;
  --focus-ring:#ad6d2f;
}
:where(a,button,summary,[tabindex]):focus-visible{
  outline:3px solid var(--focus-ring);
  outline-offset:3px;
}
.btn,.menu-btn,.nav-call,.nav-book{
  min-height:var(--control-min);
}
.btn{
  padding-block:12px;
  padding-inline:28px;
}
.nav ul.menu .drawer-cta a{
  min-height:52px;
}
@media(max-width:600px){
  .wrap{padding-inline:20px}
  .btn{padding-inline:22px}
}
@media(max-width:390px){
  .wrap{padding-inline:16px}
  .btn{padding-inline:18px}
}
.related-content{padding:clamp(2.5rem,5vw,4.5rem) 0;background:#f5f2ea}
.related-content h2{margin:0 0 1rem}
.related-content ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 2rem;margin:0;padding-left:1.25rem}
.related-content a{color:var(--spruce-deep);font-weight:650;text-underline-offset:.2em}
.related-content a:hover{text-decoration-thickness:2px}
@media(max-width:700px){.related-content ul{grid-template-columns:1fr}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
