/* Derrick's Guest House. The pages carry their own styles inline, straight from the
   approved designs; this file only adds what inline styles cannot do. */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; background: #FFFFFF; color: #2B1D16; font-family: 'Figtree', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; }
[hidden] { display: none !important; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #0E6F87; outline-offset: 3px;
}
.skip { position: absolute; left: 12px; top: -80px; z-index: 100; padding: 12px 18px; border-radius: 999px;
  background: #1E2B25; color: #FFFFFF; font-weight: 700; text-decoration: none; }
.skip:focus { top: 12px; }

/* Header: the full menu on wide screens, a menu button below 960px. */
.nav-phone { display: none !important; }
.sub-short { display: none; }
@media (max-width: 959px) {
  .nav-desktop { display: none !important; }
  .nav-phone { display: flex !important; }
  .sub-long { display: none; }
  .sub-short { display: inline; }
}
@media (min-width: 960px) {
  .site-menu { display: none !important; }
}

/* The WhatsApp bar along the bottom, on phones only. */
@media (min-width: 720px) {
  .mobile-bar { display: none !important; }
}

/* Questions open and close; a plus and minus show which. */
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
summary::after { content: "+"; margin-left: auto; padding-left: 16px; font-size: 26px; font-weight: 500; line-height: 1; color: #9F4A40; }
details[open] > summary::after { content: "\2212"; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
