/*
Theme Name: Jordan Preserve Child
Theme URI: https://www.thepreserveatjordanlakehomes.com/
Description: Child theme for The Preserve at Jordan Lake Homes using Blocksy.
Author: Durgesh
Template: blocksy
Version: 1.0.0
Text Domain: jordan-preserve-child
*/

/* ── Mobile menu — full viewport height fix for iOS Safari ───────────────── */
/* fixed inset-0 uses 100vh which excludes iOS browser chrome on some devices */

#mobile-menu {
    height: 100vh;                  /* fallback */
    height: -webkit-fill-available; /* iOS Safari */
    height: 100dvh;                 /* modern browsers */
}

/* ── Sticky header — overrides any Blocksy wrapper that breaks sticky ─────── */

#header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
}

/* ── Global Button Overrides (prevent Blocksy from recolouring buttons) ─── */

/* Green solid buttons — white text always */
a[class*="bg-[#007a55]"],
a[class*="bg-[#124336]"],
a[class*="bg-brand-green"],
a[class*="bg-brand-accent"] {
    color: #ffffff !important;
    text-decoration: none !important;
}

a[class*="bg-[#007a55]"]:hover,
a[class*="bg-[#124336]"]:hover,
a[class*="bg-brand-green"]:hover,
a[class*="bg-brand-accent"]:hover {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* White solid buttons (on dark bg) — green text */
/* ~= matches exact whole word "bg-white", not "hover:bg-white/10" */
a[class~="bg-white"] {
    color: #007a55 !important;
    text-decoration: none !important;
}

a[class~="bg-white"]:hover {
    color: #007a55 !important;
}

/* Outline buttons on dark background — white text */
#cta a {
    color: #ffffff !important;
    text-decoration: none !important;
}

#cta a[class~="bg-white"] {
    color: #007a55 !important;
}

/* Outline buttons on light background — slate text */
a[class*="border-gray"] {
    color: #374151 !important;
    text-decoration: none !important;
}

a[class*="border-gray"]:hover {
    color: #374151 !important;
}

/* Remove underline from all anchor buttons */
a[class*="rounded"],
a[class*="px-6"],
a[class*="px-8"] {
    text-decoration: none !important;
}

/* ── Listing Detail Section ─────────────────────────────────────────────── */

/* Green-border outline button — green text, white on hover */
#listing-detail a[class*="border-[#007a55]"] {
    color: #007a55 !important;
    text-decoration: none !important;
}

#listing-detail a[class*="border-[#007a55]"]:hover {
    color: #ffffff !important;
}

/* Gray-border outline button — gray text */
#listing-detail a[class*="border-gray"] {
    color: #4b5563 !important;
    text-decoration: none !important;
}

/* Listing description content typography */
.listing-detail-content p { color: #4b5563; font-size: 1rem; line-height: 1.75; margin-bottom: 1.25rem; }
.listing-detail-content p:last-child { margin-bottom: 0; }
.listing-detail-content h2, .listing-detail-content h3 { font-family: 'Playfair Display', serif; color: #111827; margin-bottom: 1rem; }
.listing-detail-content ul { list-style: disc; padding-left: 1.5rem; margin-bottom: 1.25rem; color: #4b5563; }
.listing-detail-content ul li { margin-bottom: .375rem; }


/* ── Suppress Blocksy page hero / breadcrumbs on custom templates ───────── */
/* WordPress adds page-template-{file} to body when a template is assigned.  */

.page-template-page-about .hero-section,
.page-template-page-about .entry-header,
.page-template-page-about .ct-page-header,
.page-template-page-about .ct-breadcrumbs,
.page-template-page-about .site-breadcrumb,
.page-template-page-about .breadcrumbs,
.page-template-page-community-amenities .hero-section,
.page-template-page-community-amenities .entry-header,
.page-template-page-community-amenities .ct-page-header,
.page-template-page-community-amenities .ct-breadcrumbs,
.page-template-page-community-amenities .site-breadcrumb,
.page-template-page-community-amenities .breadcrumbs,
.page-template-page-contact .hero-section,
.page-template-page-contact .entry-header,
.page-template-page-contact .ct-page-header,
.page-template-page-contact .ct-breadcrumbs,
.page-template-page-contact .site-breadcrumb,
.page-template-page-contact .breadcrumbs {
    display: none !important;
}

/* ── Introduction Section ───────────────────────────────────────────────── */

.introduction-content h1,
.introduction-content h2,
.introduction-content h3 {
    font-family: 'Playfair Display', serif;
    color: #111827;
    line-height: 1.25;
    margin-bottom: 2rem;
    font-size: 1.875rem;
}

@media (min-width: 1024px) {
    .introduction-content h1,
    .introduction-content h2,
    .introduction-content h3 {
        font-size: 2.25rem;
    }
}

.introduction-content p {
    color: #4b5563;
    font-size: 1rem;
    line-height: 1.75;
    margin-bottom: 1.5rem;
}

.introduction-content p:last-child {
    margin-bottom: 0;
}