/*
 | Overrides for PPC city-guide landing pages inside layouts.public.
 | Counteracts custom.css global h1–h6 { color:#000 !important } and Poppins font.
 */

.ppc-landing-page {
    font-family: 'Outfit', sans-serif !important;
    color: var(--tx, #2a2338);
    background: var(--cream, #fdfcfb);
}

.ppc-landing-page .dh,
.ppc-landing-page h2.dh,
.ppc-landing-page h3,
.ppc-landing-page .wstep h3,
.ppc-landing-page .about-tx h2,
.ppc-landing-page .nectar-tx h2,
.ppc-landing-page .avcard-body h3,
.ppc-landing-page .lcard-body h3,
.ppc-landing-page .ss-card h3,
.ppc-landing-page .formcard h4,
.ppc-landing-page .palcard h4,
.ppc-landing-page .spcard h4,
.ppc-landing-page .lcnode h4,
.ppc-landing-page .segnode h4,
.ppc-landing-page .wlcard h4,
.ppc-landing-page .acard h4,
.ppc-landing-page .wfi-tx h4,
.ppc-landing-page .cfact-tx h5,
.ppc-landing-page .plant-group h5,
.ppc-landing-page .spill-tx h5 {
    font-family: 'Fraunces', serif !important;
    color: var(--ink, #161022) !important;
}

.ppc-landing-page .about-tx h2,
.ppc-landing-page .nectar-tx h2 {
    color: var(--ink, #161022) !important;
}

/* Full-bleed image hero (bird park, butterfly, etc.) */
.ppc-landing-page section.hero:has(.hero-img) .hero-h,
.ppc-landing-page section.hero:has(.hero-img) h1.hero-h {
    color: #fff !important;
    font-family: 'Fraunces', serif !important;
}

.ppc-landing-page section.hero:has(.hero-img) .hero-sub {
    color: rgba(255, 255, 255, .72) !important;
}

.ppc-landing-page section.hero:has(.hero-img) .hero-sub b {
    color: #fff !important;
}

.ppc-landing-page section.hero:has(.hero-img) .hero-tag {
    color: #fff !important;
}

.ppc-landing-page section.hero:has(.hero-img) .hmeta {
    color: rgba(255, 255, 255, .75) !important;
}

/* Terraced garden — light hero */
.ppc-landing-page section.hero:has(.hero-top) .hero-h,
.ppc-landing-page section.hero:has(.hero-top) h1.hero-h {
    color: var(--ink, #161022) !important;
}

.ppc-landing-page section.hero:has(.hero-top) .hero-sub {
    color: var(--mu, #726b84) !important;
}

.ppc-landing-page section.hero:has(.hero-top) .hero-sub b {
    color: var(--ink, #161022) !important;
}

.ppc-landing-page section.hero:has(.hero-top) .hero-tag {
    color: var(--td, #3a9e96) !important;
}

.ppc-landing-page section.hero:has(.hero-top) .hm {
    color: var(--ink, #161022) !important;
}

/* Dark panel headings */
.ppc-landing-page .tips-l h2,
.ppc-landing-page .fountain-tx h2,
.ppc-landing-page .fcta h2,
.ppc-landing-page .ecard-tx h3,
.ppc-landing-page .tb-step-tx h4 {
    color: #fff !important;
}

.ppc-landing-page .pass-right h3 {
    color: #fff !important;
}

/* CTA buttons — must beat Bootstrap / template btn styles */
.ppc-landing-page a.bg,
.ppc-landing-page .bg {
    background: var(--g) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 100px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
}

.ppc-landing-page a.bo,
.ppc-landing-page .bo {
    background: #fff !important;
    color: var(--ink, #161022) !important;
    border: 1.5px solid var(--line, #ece9f2) !important;
    border-radius: 100px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
}

.ppc-landing-page a.bod,
.ppc-landing-page .bod {
    background: transparent !important;
    color: var(--ink, #161022) !important;
    border: 1.5px solid var(--line, #ece9f2) !important;
    border-radius: 100px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 700 !important;
}

.ppc-landing-page .fcta-btns .bw {
    background: #fff !important;
    color: var(--ink, #161022) !important;
}

.ppc-landing-page .fcta-btns .bgh {
    color: rgba(255, 255, 255, .9) !important;
}

/* Hero divider SVG stays at bottom */
.ppc-landing-page .hero-peaks,
.ppc-landing-page .hero-wings,
.ppc-landing-page .hero-stream {
    position: absolute !important;
    bottom: -2px !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 4 !important;
    line-height: 0 !important;
    pointer-events: none !important;
}

.ppc-landing-page .hero-float {
    z-index: 5 !important;
}

.ppc-landing-page .hero-meta {
    position: relative !important;
    z-index: 3 !important;
}

.ppc-landing-page .hero-cta {
    position: relative !important;
    z-index: 3 !important;
}
