/* =====================================================
   ROYAL CARRIAGE LIMOUSINE - MASTER STYLE SHEET v3
   ===================================================== */

/* ─────────────────────────────────────────────────────
   1. HOMEPAGE: Fix empty template gap + hide page title
   ───────────────────────────────────────────────────── */
.home main > .wp-block-group.has-global-padding:not(.entry-content):first-child {
  min-height: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  display: none !important;
}
.home .wp-block-post-title,
.home .entry-title,
.home h1.wp-block-post-title {
  display: none !important;
}

/* ─────────────────────────────────────────────────────
   2. HOMEPAGE: Full-viewport hero
   ───────────────────────────────────────────────────── */
.home .wp-block-cover:first-of-type {
  min-height: 100vh !important;
}

/* ─────────────────────────────────────────────────────
   3. INNER PAGES: Widen rc-x-hero and rc-x-section cards
   ───────────────────────────────────────────────────── */
/* Hero section on inner pages */
.page:not(.home) .rc-x-hero,
.page:not(.home) section.rc-x-hero {
  max-width: min(960px, 94vw) !important;
  width: 100% !important;
  border-radius: 16px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Content/section cards on inner pages */
.page:not(.home) .rc-x-section,
.page:not(.home) div.rc-x-section {
  max-width: min(960px, 94vw) !important;
  width: 100% !important;
  border-radius: 14px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* General content constraint fix */
.page:not(.home) .entry-content > * {
  max-width: min(960px, 94vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ─────────────────────────────────────────────────────
   4. NAVIGATION: Gold hover + clean typography
   ───────────────────────────────────────────────────── */
.wp-block-navigation a {
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
  font-size: 0.9rem !important;
  transition: color 0.2s ease !important;
}
.wp-block-navigation a:hover {
  color: #C9A84C !important;
  opacity: 1 !important;
}
.wp-block-site-title a {
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}
/* Sticky header shadow on scroll */
.wp-block-template-part[data-type="header"],
header.wp-block-template-part {
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
}

/* ─────────────────────────────────────────────────────
   5. BUTTONS: Gold hover effects + consistent styling
   ───────────────────────────────────────────────────── */
.wp-block-button__link {
  transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease !important;
  border-radius: 5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
}
.wp-block-button__link:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(201, 168, 76, 0.35) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  border-width: 2px !important;
}
/* Gold fill button */
a.wp-block-button__link[style*="background-color: rgb(201, 168, 76)"],
a.wp-block-button__link[style*="background-color:#c9a84c"],
a.wp-block-button__link[style*="background-color: #C9A84C"] {
  color: #1a1a1a !important;
}

/* ─────────────────────────────────────────────────────
   6. FOOTER: Gold border, hidden WordPress credit, hover
   ───────────────────────────────────────────────────── */
.wp-site-blocks > footer {
  border-top: 1px solid rgba(201, 168, 76, 0.25) !important;
}
.wp-site-blocks > footer p:has(a[href*="wordpress.org"]) {
  display: none !important;
}
.wp-site-blocks > footer a:hover {
  color: #C9A84C !important;
  text-decoration: none !important;
}
/* Footer heading labels */
.wp-site-blocks > footer h2,
.wp-site-blocks > footer h3,
.wp-site-blocks > footer .wp-block-heading {
  font-size: 0.7rem !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  opacity: 0.5 !important;
  margin-bottom: 1.2rem !important;
}

/* ─────────────────────────────────────────────────────
   7. TYPOGRAPHY: Tight headings, consistent scale
   ───────────────────────────────────────────────────── */
h1 { letter-spacing: -0.025em !important; line-height: 1.1 !important; }
h2 { letter-spacing: -0.015em !important; line-height: 1.2 !important; }
h3 { letter-spacing: -0.005em !important; line-height: 1.3 !important; }
p  { line-height: 1.7 !important; }

/* ─────────────────────────────────────────────────────
   8. SECTION SPACING: Consistent padding on content groups
   ───────────────────────────────────────────────────── */
.page:not(.home) .entry-content {
  padding: 2.5rem 1rem !important;
}
@media (min-width: 768px) {
  .page:not(.home) .entry-content {
    padding: 3rem 2rem !important;
  }
}

/* ─────────────────────────────────────────────────────
   9. HOMEPAGE: Services grid alignment
   ───────────────────────────────────────────────────── */
.home .wp-block-columns {
  align-items: start !important;
}
.home .wp-block-column {
  display: flex !important;
  flex-direction: column !important;
}

/* ─────────────────────────────────────────────────────
   10. ACCESSIBILITY + UX
   ───────────────────────────────────────────────────── */
html { scroll-behavior: smooth !important; }
a:focus-visible,
button:focus-visible {
  outline: 2px solid #C9A84C !important;
  outline-offset: 3px !important;
}

/* ─────────────────────────────────────────────────────
   11. POST-CONTENT: Remove extra top padding
   ───────────────────────────────────────────────────── */
.wp-block-post-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* ─────────────────────────────────────────────────────
   12. 404 & SEARCH: Clean centered layout
   ───────────────────────────────────────────────────── */
.error404 main,
.search main {
  max-width: 700px !important;
  margin: 4rem auto !important;
  padding: 0 2rem !important;
}

/* ─────────────────────────────────────────────────────
   13. IMAGES: Consistent rounded corners + lazy-load fade
   ───────────────────────────────────────────────────── */
.wp-block-image img {
  border-radius: 8px !important;
}

/* ─────────────────────────────────────────────────────
   14. RESPONSIVE: Mobile nav + touch targets
   ───────────────────────────────────────────────────── */
@media (max-width: 767px) {
  .home .wp-block-cover:first-of-type {
    min-height: 100svh !important;
  }
  .wp-block-navigation__responsive-container.is-menu-open {
    padding: 2rem !important;
  }
  .page:not(.home) .rc-x-hero,
  .page:not(.home) .rc-x-section {
    border-radius: 10px !important;
    margin: 0 0.75rem !important;
  }
}

/* ─────────────────────────────────────────────────────
   15. PRINT: Clean print styles
   ───────────────────────────────────────────────────── */
@media print {
  header, footer, .wp-block-button { display: none !important; }
  body { color: #000 !important; background: #fff !important; }
}