/* Targeted migration corrections; original visual styling remains in each page. */
.cards-3 > .plan { min-width: 0; }
.plan .btn { max-width: 100%; white-space: normal; text-align: center; }
.contact-options { max-width: 640px; margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
.contact-options .btn { max-width: 100%; white-space: normal; overflow-wrap: anywhere; text-align: center; }
.contact-options a[href^="mailto:"] { text-transform: none; letter-spacing: 0; font-size: 14px; padding: 15px 18px; }
.faq-body[hidden] { display: none; }
.nav .logo { flex-shrink: 0; }
/* Preserve the original white PNG over the hero; darken it only on pale surfaces. */
.nav.scrolled .logo img,
.mobile-menu-logo img { filter: brightness(0) saturate(100%); }
:focus-visible { outline: 3px solid #65801b; outline-offset: 4px; }
@media (max-width: 1100px) {
  .nav .nav-links { display: none !important; }
  .nav .menu-toggle { display: inline-flex !important; flex-shrink: 0; }
}
@media (max-width: 360px) {
  .plan { padding-left: 22px; padding-right: 22px; }
  .contact-options .btn { padding-left: 18px; padding-right: 18px; font-size: 11px; letter-spacing: 1px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
