/* seo.css — scoped SEO helpers only; do not edit main layout CSS */
.seo-breadcrumb { font-size: 0.875rem; padding: 0.75rem 0 0; color: #5a6a7a; }
.seo-breadcrumb a { color: #2C3E50; text-decoration: none; }
.seo-breadcrumb a:hover { text-decoration: underline; }
.seo-bc-sep { margin: 0 0.35rem; opacity: 0.55; }
.seo-page-content { max-width: 860px; margin: 0 auto; padding: 2rem 1.25rem 1rem; }
.answer-lead { font-size: 1.08rem; font-weight: 600; color: #2C3E50; margin: 0.5rem 0 0.75rem; }
.content-list { margin: 0.75rem 0 1.5rem 1.25rem; }
.content-faq-item, .seo-faq-item { margin: 0 0 1rem; }
.seo-related-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(220px,1fr)); gap: 0.75rem; margin: 1.25rem 0; }
.seo-related-card { border: 1px solid #dde3ea; padding: 0.85rem 1rem; border-radius: 4px; }
.seo-cta { margin: 1.5rem 0; }
.seo-cta a { font-weight: 700; }

/* Mobile-first scoped overrides — layout-safe */
@media (max-width: 768px) {
  html { -webkit-text-size-adjust: 100%; }
  body { overflow-x: hidden; }
  .main-nav a.btn,
  .mobile-nav a.btn,
  a.btn-gold,
  a.btn-outline {
    min-height: 48px;
    min-width: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }
  .booking-form input,
  .booking-form select,
  .booking-form textarea {
    font-size: 16px; /* prevent iOS zoom */
  }
  .seo-page-content,
  .seo-related-grid {
    max-width: 100%;
  }
  iframe[title*="map"],
  iframe[src*="maps.google"] {
    max-width: 100%;
  }
}
