/*
 Theme Name:   Picostrap5 Divorce Child
 Theme URI:    http://divorce-credibility.local
 Description:  Child theme for Divorce Real Estate Guide site. Built on Picostrap5 with LiveCanvas.
 Author:       Artificial Automation House
 Author URI:   https://artificialautomation.house
 Template:     picostrap5
 Version:      2.0.0
 License:      GPL-2.0+
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  picostrap5-divorce-child
*/

/* ==========================================================================
   CSS Custom Properties, Warm Divorce Palette
   ========================================================================== */

:root, [data-bs-theme=light] {
    /* =====================================================================
       Bootstrap Variable Mappings, enables interchangeable headers/footers
       ===================================================================== */
    --bs-primary: #4A6B8A !important;
    --bs-primary-rgb: 74, 107, 138 !important;
    --bs-secondary: #5A8E7D !important;
    --bs-secondary-rgb: 90, 142, 125 !important;
    --bs-success: #5A8E7D !important;
    --bs-info: #B8A9C9 !important;
    --bs-info-rgb: 184, 169, 201 !important;
    --bs-warning: #B8766A !important;
    --bs-warning-rgb: 184, 118, 106 !important;
    --bs-danger: #A06558 !important;
    --bs-dark: #3A5570 !important;
    --bs-dark-rgb: 58, 85, 112 !important;
    --bs-light: #FFF8F0 !important;
    --bs-body-bg: #FFFFFF !important;
    --bs-body-color: #2D3436 !important;
    --bs-link-color: var(--bs-warning) !important;
    --bs-link-hover-color: var(--bs-danger) !important;

    /* Backward-compatible aliases, page content still uses these */
    --divorce-slate: var(--bs-primary);
    --divorce-slate-dark: var(--bs-dark);
    --divorce-sage: var(--bs-secondary);
    --divorce-copper: var(--bs-warning);
    --divorce-copper-hover: var(--bs-danger);
    --divorce-lavender: var(--bs-info);
    --divorce-lavender-light: rgba(var(--bs-info-rgb), 0.1);
    --divorce-cream: var(--bs-light);
    --divorce-light-bg: var(--bs-light);
    --divorce-white: #FFFFFF;
    --divorce-dark-text: var(--bs-body-color);
    --divorce-border-muted: #E0D8CC;

    /* Footer-specific (used by LiveCanvas footer partial) */
    --divorce-footer-text: #E0E0E0;
    --divorce-footer-muted: #999999;
    --divorce-footer-copyright-bg: var(--bs-dark);

    /* Typography */
    --font-display: "Playfair Display", Georgia, "Times New Roman", serif;
    --font-heading: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-body: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    /* Shadows */
    --shadow-card: 0 4px 20px rgba(var(--bs-primary-rgb), 0.08);
    --shadow-card-hover: 0 8px 30px rgba(var(--bs-primary-rgb), 0.12);
    --shadow-elevated: 0 12px 40px rgba(var(--bs-primary-rgb), 0.15);

    /* Radii */
    --radius-card: 16px;
    --radius-pill: 50px;
    --radius-image: 20px;

    /* Transitions */
    --transition-base: 0.3s ease;
    --transition-fast: 0.2s ease;
}

/* LiveCanvas partial reset, ensure header/footer start flush */
#lc-header { margin: 0 !important; padding: 0 !important; }
#lc-footer { margin: 0 !important; }
body.lc-custom-header { padding-top: 0 !important; margin-top: 0 !important; }

/* ==========================================================================
   Base Typography
   ========================================================================== */

body {
    font-family: var(--font-body);
    color: var(--divorce-dark-text);
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3 {
    font-family: var(--font-display);
    color: var(--divorce-slate-dark);
    line-height: 1.3;
    letter-spacing: -0.01em;
}

h4, h5, h6 {
    font-family: var(--font-heading);
    color: var(--divorce-slate-dark);
    font-weight: 600;
    line-height: 1.4;
}

h1 { font-size: 2.75rem; font-weight: 700; }
h2 { font-size: 2.1rem; font-weight: 600; }
h3 { font-size: 1.65rem; font-weight: 600; }
h4 { font-size: 1.25rem; }
h5 { font-size: 1.1rem; }
h6 { font-size: 0.95rem; text-transform: uppercase; letter-spacing: 0.05em; }

p {
    margin-bottom: 1.25rem;
    color: var(--divorce-dark-text);
}

a {
    color: var(--divorce-sage);
    text-decoration: underline;
    text-decoration-color: rgba(var(--bs-secondary-rgb), 0.3);
    text-underline-offset: 3px;
    transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
}

a:hover {
    color: var(--divorce-copper);
    text-decoration-color: var(--divorce-copper);
}

a:visited {
    color: var(--divorce-sage);
    opacity: 0.85;
}

a:focus {
    outline: 2px solid var(--divorce-copper);
    outline-offset: 2px;
}

a:active {
    color: var(--divorce-copper-hover);
}

/* ==========================================================================
   Skip-to-Content Link
   ========================================================================== */

.divorce-skip-link {
    position: fixed;
    top: -100px;
    left: 10px;
    z-index: 100000;
    padding: 12px 24px;
    background: var(--divorce-sage);
    color: #fff;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    outline: 3px solid var(--divorce-slate);
    outline-offset: 2px;
    transition: top var(--transition-fast);
}

.divorce-skip-link:focus {
    top: 10px;
}

/* ==========================================================================
   Picostrap Footer / Colophon, Hide Default
   ========================================================================== */

.site-footer .colophon,
#colophon,
#wrapper-footer-colophon {
    display: none !important;
}

/* ==========================================================================
   DESIGN SYSTEM, Hero Section
   ========================================================================== */

.hero-section {
    position: relative;
    background: linear-gradient(160deg, var(--divorce-slate), var(--divorce-slate-dark));
    color: #fff;
    overflow: hidden;
    padding: 5rem 0 6rem;
}

.hero-section .hero-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

@media (min-width: 992px) {
    .hero-section .hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
    }
}

.hero-section .hero-text {
    text-align: left;
}

.hero-section .hero-text h1 {
    font-family: var(--font-display);
    color: #fff;
    font-size: 2.75rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1.25rem;
}

.hero-section .hero-text p {
    color: rgba(255, 255, 255, 0.85);
    font-size: 1.15rem;
    line-height: 1.7;
    margin-bottom: 2rem;
}

.hero-section .hero-visual {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-section .hero-visual::before {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(var(--bs-info-rgb), 0.2) 0%, transparent 70%);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.hero-section .hero-visual::after {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 248, 240, 0.12) 0%, transparent 70%);
    top: 30%;
    left: 60%;
    transform: translate(-50%, -50%);
}

/* Hero wave bottom divider */
.hero-section > .wave-divider-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60px;
    overflow: hidden;
    line-height: 0;
}

.hero-section > .wave-divider-bottom::after {
    content: "";
    display: block;
    width: 100%;
    height: 60px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,80 Q600,0 1200,80 L1200,120 L0,120 Z' fill='%23FFF8F0'/%3E%3C/svg%3E");
    background-size: cover;
    background-position: center;
}

/* ==========================================================================
   DESIGN SYSTEM, Wave Dividers (Reusable)
   ========================================================================== */

.wave-divider-top {
    position: relative;
}

.wave-divider-top::before {
    content: "";
    display: block;
    width: 100%;
    height: 60px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,40 Q600,120 1200,40 L1200,0 L0,0 Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.wave-divider-bottom {
    position: relative;
}

.wave-divider-bottom::after {
    content: "";
    display: block;
    width: 100%;
    height: 60px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,80 Q600,0 1200,80 L1200,120 L0,120 Z' fill='%23FFFFFF'/%3E%3C/svg%3E");
    background-size: cover;
    background-position: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

/* Cream-to-white variant */
.wave-divider-top.wave-cream::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,40 Q600,120 1200,40 L1200,0 L0,0 Z' fill='%23FFF8F0'/%3E%3C/svg%3E");
}

.wave-divider-bottom.wave-cream::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,80 Q600,0 1200,80 L1200,120 L0,120 Z' fill='%23FFF8F0'/%3E%3C/svg%3E");
}

/* ==========================================================================
   DESIGN SYSTEM, Section Ornament (replaces old "Two Paths" dividers)
   ========================================================================== */

.section-ornament {
    text-align: center;
    padding: 1.5rem 0;
}
.section-ornament span {
    display: inline-block;
    color: var(--divorce-lavender);
    font-size: 1.2rem;
    position: relative;
}
.section-ornament span::before,
.section-ornament span::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 60px;
    height: 1px;
    background: var(--divorce-lavender);
}
.section-ornament span::before { right: 100%; margin-right: 12px; }
.section-ornament span::after { left: 100%; margin-left: 12px; }

/* ==========================================================================
   DESIGN SYSTEM, Cards
   ========================================================================== */

.divorce-card {
    background: var(--divorce-white);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-card);
    padding: 2rem;
    transition: transform var(--transition-base), box-shadow var(--transition-base);
    border: 1px solid transparent;
}

.divorce-card:hover {
    transform: scale(1.02);
    box-shadow: var(--shadow-card-hover);
}

.divorce-card h3,
.divorce-card h4 {
    margin-bottom: 0.75rem;
}

.divorce-card p:last-child {
    margin-bottom: 0;
}

/* Card with top image */
.divorce-card .card-image {
    border-radius: var(--radius-card) var(--radius-card) 0 0;
    overflow: hidden;
    margin: -2rem -2rem 1.5rem;
}

.divorce-card .card-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* ==========================================================================
   DESIGN SYSTEM, Horizontal Cards
   ========================================================================== */

.card-horizontal {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    background: var(--divorce-white);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-card);
    padding: 2rem;
    transition: transform var(--transition-base), box-shadow var(--transition-base);
}

.card-horizontal:hover {
    transform: scale(1.02);
    box-shadow: var(--shadow-card-hover);
}

.card-horizontal .card-horizontal-body {
    flex: 1;
}

.card-horizontal .card-horizontal-body h4 {
    margin-bottom: 0.5rem;
}

.card-horizontal .card-horizontal-body p:last-child {
    margin-bottom: 0;
}

@media (max-width: 575.98px) {
    .card-horizontal {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

/* ==========================================================================
   DESIGN SYSTEM, Icon Circles
   ========================================================================== */

.icon-circle {
    background: var(--divorce-lavender-light);
    border-radius: 50%;
    width: 60px;
    height: 60px;
    min-width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--divorce-sage);
    transition: background var(--transition-fast);
}

.icon-circle:hover {
    background: rgba(var(--bs-info-rgb), 0.2);
}

.icon-circle.icon-circle-lg {
    width: 80px;
    height: 80px;
    min-width: 80px;
    font-size: 2rem;
}

.icon-circle.icon-circle-sm {
    width: 44px;
    height: 44px;
    min-width: 44px;
    font-size: 1.1rem;
}

/* ==========================================================================
   DESIGN SYSTEM, Zigzag Content Sections
   ========================================================================== */

.content-zigzag .zigzag-row {
    display: flex;
    gap: 3rem;
    align-items: center;
    margin-bottom: 3rem;
}

.content-zigzag .zigzag-row:last-child {
    margin-bottom: 0;
}

.content-zigzag .zigzag-row:nth-child(even) {
    flex-direction: row-reverse;
}

.content-zigzag .zigzag-text {
    flex: 1;
}

.content-zigzag .zigzag-image {
    flex: 1;
    border-radius: var(--radius-image);
    overflow: hidden;
    border: 2px solid var(--divorce-lavender-light);
    background: var(--divorce-lavender-light);
    min-height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.content-zigzag .zigzag-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: calc(var(--radius-image) - 2px);
}

@media (max-width: 767.98px) {
    .content-zigzag .zigzag-row,
    .content-zigzag .zigzag-row:nth-child(even) {
        flex-direction: column;
        gap: 1.5rem;
    }
}

/* ==========================================================================
   DESIGN SYSTEM, FAQ Cards
   ========================================================================== */

.faq-card {
    background: var(--divorce-white);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-card);
    margin-bottom: 1rem;
    overflow: hidden;
    transition: border-color var(--transition-fast);
    border: 1px solid transparent;
    border-left: 3px solid transparent;
}

.faq-card.active {
    border-left-color: var(--divorce-lavender);
}

.faq-card .faq-question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    cursor: pointer;
    user-select: none;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 1rem;
    color: var(--divorce-slate-dark);
    background: none;
    border: none;
    width: 100%;
    text-align: left;
    transition: color var(--transition-fast);
}

.faq-card .faq-question:hover {
    color: var(--divorce-sage);
}

.faq-card .faq-toggle-icon {
    font-size: 1.25rem;
    color: var(--divorce-lavender);
    transition: transform var(--transition-base);
    flex-shrink: 0;
}

.faq-card.active .faq-toggle-icon {
    transform: rotate(45deg);
}

.faq-card .faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.3s ease;
    padding: 0 1.5rem;
}

.faq-card.active .faq-answer {
    max-height: 500px;
    padding: 0 1.5rem 1.25rem;
}

.faq-card .faq-answer p {
    color: var(--divorce-dark-text);
    line-height: 1.7;
}

/* ==========================================================================
   DESIGN SYSTEM, CTA Sections
   ========================================================================== */

.cta-divorce {
    position: relative;
    background: linear-gradient(135deg, var(--divorce-lavender-light), var(--divorce-cream));
    padding: 4rem 0;
    text-align: center;
}

.cta-divorce h2,
.cta-divorce h3 {
    color: var(--divorce-slate-dark);
}

.cta-divorce p {
    color: var(--divorce-dark-text);
    font-size: 1.1rem;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
}

/* ==========================================================================
   DESIGN SYSTEM, Lead Magnet Section
   ========================================================================== */

.lead-magnet-section {
    background: linear-gradient(135deg, var(--divorce-lavender-light), var(--divorce-cream));
    padding: 4rem 0;
}

.lead-magnet-section .lead-magnet-card {
    background: var(--divorce-white);
    border: 1px solid rgba(var(--bs-info-rgb), 0.25);
    border-radius: var(--radius-card);
    padding: 2.5rem;
    max-width: 600px;
    margin: 0 auto;
    box-shadow: var(--shadow-card);
}

.lead-magnet-section .lead-magnet-card h3 {
    margin-bottom: 0.75rem;
}

.lead-magnet-section .lead-magnet-card p {
    margin-bottom: 1.5rem;
}

.lead-magnet-section input[type="email"],
.lead-magnet-section input[type="text"] {
    border: 1px solid var(--divorce-border-muted);
    border-radius: 8px;
    padding: 0.75rem 1rem;
    font-family: var(--font-body);
    font-size: 1rem;
    width: 100%;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.lead-magnet-section input[type="email"]:focus,
.lead-magnet-section input[type="text"]:focus {
    border-color: var(--divorce-lavender);
    box-shadow: 0 0 0 3px rgba(var(--bs-info-rgb), 0.2);
    outline: none;
}

/* ==========================================================================
   DESIGN SYSTEM, Buttons
   ========================================================================== */

.btn-rose,
.btn-copper {
    display: inline-block;
    background: var(--divorce-copper);
    border-color: var(--divorce-copper);
    color: #fff;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.75rem 2rem;
    border-radius: var(--radius-pill);
    border: none;
    text-decoration: none;
    cursor: pointer;
    transition: background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
    letter-spacing: 0.02em;
}

.btn-rose:hover,
.btn-rose:focus,
.btn-copper:hover,
.btn-copper:focus {
    background: var(--divorce-copper-hover);
    border-color: var(--divorce-copper-hover);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(var(--bs-warning-rgb), 0.35);
    text-decoration: none;
}

.btn-rose:active,
.btn-copper:active {
    transform: translateY(0);
}

.btn-outline-lavender {
    display: inline-block;
    background: transparent;
    color: var(--divorce-lavender);
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.7rem 1.75rem;
    border-radius: var(--radius-pill);
    border: 2px solid var(--divorce-lavender);
    text-decoration: none;
    cursor: pointer;
    transition: background var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);
}

.btn-outline-lavender:hover,
.btn-outline-lavender:focus {
    background: var(--divorce-lavender);
    color: #fff;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(var(--bs-info-rgb), 0.3);
}

.btn-outline-sage {
    display: inline-block;
    background: transparent;
    color: var(--divorce-sage);
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.7rem 1.75rem;
    border-radius: var(--radius-pill);
    border: 2px solid var(--divorce-sage);
    text-decoration: none;
    cursor: pointer;
    transition: background var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast);
}

.btn-outline-sage:hover,
.btn-outline-sage:focus {
    background: var(--divorce-sage);
    color: #fff;
    text-decoration: none;
    box-shadow: 0 4px 15px rgba(var(--bs-secondary-rgb), 0.3);
}

/* ==========================================================================
   DESIGN SYSTEM, Section Background Utilities
   ========================================================================== */

.section-cream {
    background-color: var(--divorce-cream);
}

.section-white {
    background-color: var(--divorce-white);
}

.section-slate {
    background-color: var(--divorce-slate);
    color: #fff;
}

.section-slate h1,
.section-slate h2,
.section-slate h3,
.section-slate h4,
.section-slate h5,
.section-slate h6 {
    color: #fff;
}

.section-slate p {
    color: rgba(255, 255, 255, 0.85);
}

.section-slate a {
    color: var(--divorce-lavender);
}

.section-slate a:hover {
    color: #fff;
}

/* Standard section spacing */
.section-padding {
    padding: 4.5rem 0;
}

.section-padding-sm {
    padding: 3rem 0;
}

@media (max-width: 767.98px) {
    .section-padding {
        padding: 3rem 0;
    }
    .section-padding-sm {
        padding: 2rem 0;
    }
}

/* ==========================================================================
   DESIGN SYSTEM, Testimonial / Quote Block
   ========================================================================== */

.divorce-quote {
    position: relative;
    background: var(--divorce-white);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-card);
    padding: 2rem 2rem 2rem 3.5rem;
    margin: 1.5rem 0;
    border-left: 4px solid var(--divorce-lavender);
}

.divorce-quote::before {
    content: "\201C";
    position: absolute;
    top: 0.5rem;
    left: 1rem;
    font-family: var(--font-display);
    font-size: 3rem;
    color: var(--divorce-lavender);
    line-height: 1;
}

.divorce-quote p {
    font-style: italic;
    font-size: 1.05rem;
    line-height: 1.7;
    margin-bottom: 0.75rem;
}

.divorce-quote .quote-author {
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--divorce-slate);
    font-style: normal;
}

/* ==========================================================================
   DESIGN SYSTEM, Stats / Numbers Row
   ========================================================================== */

.stats-row {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    padding: 2rem 0;
}

.stat-item {
    flex: 1;
    min-width: 150px;
    max-width: 220px;
}

.stat-item .stat-number {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--divorce-sage);
    line-height: 1.2;
}

.stat-item .stat-label {
    font-family: var(--font-heading);
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--divorce-slate);
    margin-top: 0.25rem;
}

/* ==========================================================================
   DESIGN SYSTEM, Badge / Tag
   ========================================================================== */

.divorce-badge {
    display: inline-block;
    font-family: var(--font-heading);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 0.3rem 0.85rem;
    border-radius: var(--radius-pill);
    background: var(--divorce-lavender-light);
    color: var(--divorce-slate-dark);
}

.divorce-badge-sage {
    background: rgba(var(--bs-secondary-rgb), 0.12);
    color: var(--divorce-sage);
}

/* ==========================================================================
   DESIGN SYSTEM, Content Section Spacing for LiveCanvas
   ========================================================================== */

section {
    position: relative;
}

section + section {
    margin-top: 0;
}

/* LiveCanvas compatibility, ensure sections have proper z-index */
.lc-block {
    position: relative;
    z-index: 2;
}

/* ==========================================================================
   DESIGN SYSTEM, Card Grid Layouts
   ========================================================================== */

.card-grid {
    display: grid;
    gap: 1.5rem;
}

.card-grid-2 {
    grid-template-columns: repeat(1, 1fr);
}

.card-grid-3 {
    grid-template-columns: repeat(1, 1fr);
}

@media (min-width: 768px) {
    .card-grid-2 {
        grid-template-columns: repeat(2, 1fr);
    }
    .card-grid-3 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {
    .card-grid-3 {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* ==========================================================================
   DESIGN SYSTEM, Footer (Custom)
   ========================================================================== */

.divorce-footer {
    background: var(--divorce-slate-dark);
    color: rgba(255, 255, 255, 0.75);
    padding: 3rem 0 1.5rem;
    font-size: 0.9rem;
}

.divorce-footer h5,
.divorce-footer h6 {
    color: #fff;
    font-family: var(--font-display);
    margin-bottom: 1rem;
}

.divorce-footer a {
    color: rgba(255, 255, 255, 0.75);
    text-decoration: none;
    transition: color var(--transition-fast);
}

.divorce-footer a:hover {
    color: var(--divorce-lavender);
}

.divorce-footer .footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    margin-top: 2rem;
    padding-top: 1.5rem;
    text-align: center;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
}

/* ==========================================================================
   DESIGN SYSTEM, List Styles (Checkmark, Arrow)
   ========================================================================== */

.list-check {
    list-style: none;
    padding-left: 0;
}

.list-check li {
    position: relative;
    padding-left: 2rem;
    margin-bottom: 0.75rem;
}

.list-check li::before {
    content: "\F272";
    font-family: "bootstrap-icons";
    position: absolute;
    left: 0;
    top: 0.15em;
    color: var(--divorce-sage);
    font-size: 1rem;
}

.list-arrow {
    list-style: none;
    padding-left: 0;
}

.list-arrow li {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 0.6rem;
}

.list-arrow li::before {
    content: "\F285";
    font-family: "bootstrap-icons";
    position: absolute;
    left: 0;
    top: 0.15em;
    color: var(--divorce-copper);
    font-size: 0.85rem;
}

/* ==========================================================================
   DESIGN SYSTEM, Responsive Image Utility
   ========================================================================== */

.img-rounded {
    border-radius: var(--radius-image);
    overflow: hidden;
}

.img-bordered {
    border: 2px solid var(--divorce-border-muted);
    border-radius: var(--radius-image);
}

.img-shadow {
    box-shadow: var(--shadow-card);
    border-radius: var(--radius-image);
}

/* ==========================================================================
   HOMEPAGE, Hero Content & Decorative
   ========================================================================== */

.hero-section .hero-content {
    text-align: left;
}

.hero-section .hero-title {
    font-family: var(--font-display);
    color: #fff;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1.25rem;
}

@media (min-width: 992px) {
    .hero-section .hero-title {
        font-size: 3rem;
    }
}

.hero-section .hero-subtitle {
    color: rgba(255, 255, 255, 0.85);
    font-size: 1.1rem;
    line-height: 1.75;
    margin-bottom: 2rem;
    max-width: 540px;
}

.hero-section .hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

/* Hero outline button override for white context */
.hero-section .btn-outline-lavender {
    color: rgba(255, 255, 255, 0.9);
    border-color: rgba(255, 255, 255, 0.5);
}

.hero-section .btn-outline-lavender:hover,
.hero-section .btn-outline-lavender:focus {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.8);
}

/* Hero Decorative Panel */
.hero-decorative {
    position: relative;
    min-height: 320px;
    display: none;
}

@media (min-width: 992px) {
    .hero-decorative {
        display: block;
    }
}

.deco-circle {
    position: absolute;
    border-radius: 50%;
}

.deco-circle-1 {
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(var(--bs-info-rgb), 0.2) 0%, transparent 70%);
    top: 10%;
    right: 5%;
}

.deco-circle-2 {
    width: 160px;
    height: 160px;
    background: radial-gradient(circle, rgba(255, 248, 240, 0.12) 0%, transparent 70%);
    bottom: 15%;
    right: 35%;
}

.deco-line {
    position: absolute;
    background: rgba(var(--bs-info-rgb), 0.3);
    border-radius: 2px;
}

.deco-line-1 {
    width: 2px;
    height: 100px;
    top: 20%;
    right: 40%;
    transform: rotate(15deg);
}

.deco-line-2 {
    width: 80px;
    height: 2px;
    bottom: 30%;
    right: 10%;
    transform: rotate(-10deg);
}

.deco-dot-grid {
    position: absolute;
    width: 80px;
    height: 80px;
    bottom: 10%;
    right: 50%;
    background-image: radial-gradient(rgba(255, 255, 255, 0.2) 2px, transparent 2px);
    background-size: 12px 12px;
}

/* Hero wave override, use inline SVG instead of pseudo-element */
.hero-section > .wave-divider-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    line-height: 0;
    z-index: 2;
}

.hero-section > .wave-divider-bottom::after {
    display: none;
}

.hero-section > .wave-divider-bottom svg {
    display: block;
    width: 100%;
    height: 80px;
}

/* ==========================================================================
   HOMEPAGE, Section Headers
   ========================================================================== */

.section-header {
    text-align: center;
    max-width: 680px;
    margin: 0 auto 3rem;
}

.section-header h2 {
    font-family: var(--font-display);
    font-size: 2rem;
    color: var(--divorce-slate-dark);
    margin-bottom: 1rem;
}

.section-header p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--divorce-dark-text);
}

/* ==========================================================================
   HOMEPAGE, Section Spacing (wave-aware)
   ========================================================================== */

.section-cream,
.section-white {
    position: relative;
    padding: 5rem 0 6rem;
}

/* Wave divider inside sections, inline SVG approach */
.section-cream > .wave-divider-bottom,
.section-white > .wave-divider-bottom,
.lead-magnet-section > .wave-divider-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    line-height: 0;
    z-index: 2;
}

.section-cream > .wave-divider-bottom::after,
.section-white > .wave-divider-bottom::after,
.lead-magnet-section > .wave-divider-bottom::after {
    display: none;
}

.section-cream > .wave-divider-bottom svg,
.section-white > .wave-divider-bottom svg,
.lead-magnet-section > .wave-divider-bottom svg {
    display: block;
    width: 100%;
    height: 80px;
}

/* ==========================================================================
   HOMEPAGE, Decorative Frames (zigzag media)
   ========================================================================== */

.zigzag-media {
    flex: 1;
    min-width: 0;
}

.decorative-frame {
    background: var(--divorce-lavender-light);
    border: 2px solid var(--divorce-lavender);
    border-radius: var(--radius-image);
    min-height: 280px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.decorative-frame-alt {
    border-color: var(--divorce-sage);
    background: rgba(var(--bs-secondary-rgb), 0.06);
}

.decorative-frame .frame-inner {
    text-align: center;
    color: var(--divorce-slate);
}

.decorative-frame .frame-inner i {
    font-size: 3rem;
    display: block;
    margin-bottom: 0.75rem;
    color: var(--divorce-lavender);
}

.decorative-frame-alt .frame-inner i {
    color: var(--divorce-sage);
}

.decorative-frame .frame-inner span {
    font-family: var(--font-heading);
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--divorce-slate-dark);
    opacity: 1;
}

/* ==========================================================================
   HOMEPAGE, Question List & Check List
   ========================================================================== */

.question-list {
    list-style: none;
    padding-left: 0;
    margin: 1.5rem 0;
}

.question-list li {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    padding: 0.6rem 0;
    border-bottom: 1px solid var(--divorce-border-muted);
    font-size: 1rem;
    line-height: 1.6;
}

.question-list li:last-child {
    border-bottom: none;
}

.question-list li i {
    color: var(--divorce-copper);
    font-size: 0.9rem;
    flex-shrink: 0;
}

.zigzag-lead {
    font-weight: 600;
    font-family: var(--font-heading);
    color: var(--divorce-slate);
    font-size: 1.05rem;
    margin-bottom: 0.5rem;
}

.check-list {
    list-style: none;
    padding-left: 0;
    margin: 1.25rem 0 1.5rem;
}

.check-list li {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    padding: 0.5rem 0;
    font-size: 1rem;
    line-height: 1.6;
}

.check-list li i {
    color: var(--divorce-sage);
    font-size: 1.1rem;
    flex-shrink: 0;
}

/* ==========================================================================
   HOMEPAGE, Services Stack (Horizontal Cards)
   ========================================================================== */

.services-stack {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    max-width: 800px;
    margin: 0 auto;
}

.services-stack .card-horizontal {
    border-left: 3px solid var(--divorce-lavender);
}

.services-stack .card-horizontal:nth-child(even) {
    border-left-color: var(--divorce-sage);
}

.card-icon-circle {
    width: 56px;
    height: 56px;
    min-width: 56px;
    border-radius: 50%;
    background: var(--divorce-lavender-light);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    color: var(--divorce-sage);
}

.services-stack .card-horizontal:nth-child(even) .card-icon-circle {
    background: rgba(var(--bs-secondary-rgb), 0.08);
    color: var(--divorce-sage);
}

.card-body-text {
    flex: 1;
}

.card-body-text h3 {
    font-family: var(--font-heading);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--divorce-slate-dark);
    margin-bottom: 0.4rem;
}

.card-body-text p {
    font-size: 0.95rem;
    line-height: 1.7;
    color: var(--divorce-dark-text);
    margin-bottom: 0;
}

/* ==========================================================================
   HOMEPAGE, Lead Magnet (Centered)
   ========================================================================== */

.lead-magnet-section {
    position: relative;
    padding: 5rem 0 6rem;
}

.lead-magnet-inner {
    text-align: center;
    max-width: 620px;
    margin: 0 auto;
}

.lead-magnet-inner h2 {
    font-family: var(--font-display);
    font-size: 2rem;
    color: var(--divorce-slate-dark);
    margin-bottom: 1rem;
}

.lead-magnet-inner p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--divorce-dark-text);
    margin-bottom: 2rem;
}

.lead-magnet-form {
    background: var(--divorce-white);
    border: 1px solid var(--divorce-border-muted);
    border-radius: var(--radius-card);
    padding: 2rem;
    box-shadow: var(--shadow-card);
}

/* ==========================================================================
   HOMEPAGE, FAQ Cards (Bootstrap Collapse)
   ========================================================================== */

.faq-cards-container {
    max-width: 720px;
    margin: 0 auto;
}

.faq-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    width: 100%;
    padding: 1.25rem 1.5rem;
    background: none;
    border: none;
    cursor: pointer;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 1rem;
    color: var(--divorce-slate-dark);
    text-align: left;
    transition: color var(--transition-fast);
}

.faq-card-header:hover {
    color: var(--divorce-sage);
}

.faq-card-header .faq-toggle-icon {
    font-size: 1.25rem;
    color: var(--divorce-lavender);
    flex-shrink: 0;
    transition: transform var(--transition-base);
}

.faq-card-body {
    padding: 0 1.5rem 1.25rem;
}

.faq-card-body p {
    color: var(--divorce-dark-text);
    line-height: 1.7;
    font-size: 0.95rem;
    margin-bottom: 0;
}

.faq-footer {
    text-align: center;
    margin-top: 2.5rem;
}

/* ==========================================================================
   HOMEPAGE, CTA Section (Override)
   ========================================================================== */

.cta-divorce {
    padding: 3rem 0 4.5rem;
}

.cta-divorce .section-ornament {
    margin-bottom: 1.5rem;
}

.cta-inner {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
}

.cta-inner h2 {
    font-family: var(--font-display);
    font-size: 2rem;
    color: var(--divorce-slate-dark);
    margin-bottom: 1rem;
}

.cta-inner p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--divorce-dark-text);
    margin-bottom: 2rem;
}

/* Zigzag reverse for section 4 */
.content-zigzag .zigzag-row.zigzag-reverse {
    flex-direction: row-reverse;
}

@media (max-width: 767.98px) {
    .content-zigzag .zigzag-row.zigzag-reverse {
        flex-direction: column;
    }
}

/* ==========================================================================
   Accessibility, Reduced Motion
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }

    .divorce-card:hover,
    .card-horizontal:hover {
        transform: none;
    }

    .btn-rose:hover {
        transform: none;
    }

    .faq-card .faq-answer {
        transition: none;
    }

    .faq-card .faq-toggle-icon {
        transition: none;
    }
}

/* ==========================================================================
   Print Styles
   ========================================================================== */

@media print {
    .hero-section {
        background: #fff !important;
        color: #000 !important;
    }
    .hero-section .hero-visual {
        display: none;
    }
    .wave-divider-top::before,
    .wave-divider-bottom::after,
    .hero-section > .wave-divider-bottom::after {
        display: none;
    }
    .divorce-card,
    .card-horizontal {
        box-shadow: none;
        border: 1px solid #ccc;
    }
}

/* Links are now fully controlled by CSS variables above (a, a:hover, a:visited, a:focus, a:active).
   Theme Studio color picker changes propagate via --divorce-sage, --divorce-copper, etc. */

/* =============================================
   LiveCanvas Partial CSS Backup
   (duplicated from partial inline styles for
   environments that may strip <style> from
   partial content)
   ============================================= */

/* === ACTIVE FOOTER CSS (ID: 85, Footer - Dark Professional) === */
#lc-footer .fdp *{box-sizing:border-box;margin:0;padding:0}
#lc-footer .fdp{background:var(--divorce-slate-dark, #2D4460);color:#E0E0E0;font-family:"Open Sans",sans-serif;padding:60px 20px 0;text-align:center}
#lc-footer .fdp-logo{font-family:"Montserrat",sans-serif;font-weight:700;font-size:1.6rem;color:#fff;margin-bottom:8px}
#lc-footer .fdp-logo a{color:inherit;text-decoration:none}
#lc-footer .fdp-logo a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fdp-tagline{font-size:.9rem;color:#999999;max-width:500px;margin:0 auto 28px;font-style:italic;line-height:1.6}
#lc-footer .fdp-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:0;margin-bottom:28px}
#lc-footer .fdp-nav a{color:rgba(255,255,255,.8);text-decoration:none;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:6px 14px;transition:color .2s}
#lc-footer .fdp-nav a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fdp-social{display:flex;justify-content:center;gap:18px;margin-bottom:32px}
#lc-footer .fdp-social a{color:#999999;text-decoration:none;transition:color .2s;display:flex;align-items:center}
#lc-footer .fdp-social a svg{width:20px;height:20px}
#lc-footer .fdp-social a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fdp-divider{width:60px;height:2px;background:var(--divorce-copper, #B8766A);margin:0 auto 32px;border-radius:1px}
#lc-footer .fdp-copy{font-size:.78rem;color:#999999;padding:20px 0;border-top:1px solid rgba(255,255,255,.06);max-width:600px;margin:0 auto}
@media(max-width:575.98px){#lc-footer .fdp{padding:40px 20px 0}#lc-footer .fdp-logo{font-size:1.3rem}}

/* === ACTIVE FOOTER CSS (ID: 84, Footer - Magazine Style) === */
#lc-footer .fmag *{box-sizing:border-box;margin:0;padding:0}
#lc-footer .fmag{background:var(--divorce-slate-dark, #2D4460);color:#E0E0E0;font-family:"Open Sans",sans-serif;padding:0}
#lc-footer .fmag-header{max-width:1200px;margin:0 auto;padding:48px 20px 0;text-align:center;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:0;padding-bottom:24px}
#lc-footer .fmag-logo{font-family:"Montserrat",sans-serif;font-weight:700;font-size:1.5rem;color:#fff;margin-bottom:4px}
#lc-footer .fmag-logo a{color:inherit;text-decoration:none}
#lc-footer .fmag-logo a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fmag-tagline{font-size:.85rem;color:#999999;font-style:italic}
#lc-footer .fmag-cols{max-width:1200px;margin:0 auto;padding:32px 20px;display:grid;grid-template-columns:1.3fr .9fr .8fr 1fr;gap:32px}
#lc-footer .fmag h4{font-family:"Montserrat",sans-serif;font-weight:700;font-size:.95rem;color:#fff;margin-bottom:14px;text-transform:uppercase;letter-spacing:.04em}
#lc-footer .fmag p{font-size:.88rem;line-height:1.7;margin-bottom:8px}
#lc-footer .fmag-links{list-style:none;padding:0;margin:0}
#lc-footer .fmag-links li{margin-bottom:6px}
#lc-footer .fmag-links a{color:#E0E0E0;text-decoration:none;font-size:.88rem;display:inline-flex;align-items:center;gap:6px;transition:color .2s}
#lc-footer .fmag-links a svg{color:var(--divorce-copper, #B8766A);width:12px;height:12px;transition:transform .2s}
#lc-footer .fmag-links a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fmag-links a:hover svg{transform:translateX(3px)}
#lc-footer .fmag-feat{list-style:none;padding:0;margin:0}
#lc-footer .fmag-feat li{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.06)}
#lc-footer .fmag-feat a{color:#E0E0E0;text-decoration:none;font-size:.88rem;transition:color .2s}
#lc-footer .fmag-feat a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fmag-feat .fmag-feat-cat{font-size:.7rem;text-transform:uppercase;color:var(--divorce-copper, #B8766A);font-weight:600;letter-spacing:.06em;display:block;margin-bottom:2px}
#lc-footer .fmag-nl input[type=email]{width:100%;padding:10px 14px;border:1px solid rgba(255,255,255,.15);border-radius:4px;background:rgba(255,255,255,.06);color:#fff;font-size:.88rem;margin-bottom:8px}
#lc-footer .fmag-nl input::placeholder{color:rgba(255,255,255,.4)}
#lc-footer .fmag-nl button{display:inline-block;background:var(--divorce-copper, #B8766A);color:#fff;border:none;padding:10px 22px;border-radius:4px;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.85rem;cursor:pointer;transition:filter .2s,transform .15s}
#lc-footer .fmag-nl button:hover{filter:brightness(.85);transform:translateY(-1px)}
#lc-footer .fmag-social{max-width:1200px;margin:0 auto;padding:20px;display:flex;justify-content:center;gap:16px;border-top:1px solid rgba(255,255,255,.08)}
#lc-footer .fmag-social a{color:#999999;text-decoration:none;transition:color .2s;display:flex;align-items:center}
#lc-footer .fmag-social a svg{width:18px;height:18px}
#lc-footer .fmag-social a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fmag-copy{text-align:center;font-size:.75rem;color:#999999;padding:0 20px 20px}
@media(max-width:991.98px){#lc-footer .fmag-cols{grid-template-columns:1fr 1fr;gap:24px}}
@media(max-width:575.98px){#lc-footer .fmag-cols{grid-template-columns:1fr;gap:20px}#lc-footer .fmag-header{padding:32px 20px 16px}}

/* === ACTIVE FOOTER CSS (ID: 83, Footer - CTA-Focused) === */
#lc-footer .fcta *{box-sizing:border-box;margin:0;padding:0}
#lc-footer .fcta-banner{background:var(--divorce-copper, #B8766A);padding:48px 20px;text-align:center;font-family:"Montserrat",sans-serif}
#lc-footer .fcta-banner h2{color:#fff;font-size:1.6rem;font-weight:700;margin-bottom:10px}
#lc-footer .fcta-banner p{color:rgba(255,255,255,.9);font-size:1rem;font-family:"Open Sans",sans-serif;margin-bottom:20px;max-width:600px;margin-left:auto;margin-right:auto}
#lc-footer .fcta-btn{display:inline-block;background:#fff;color:var(--divorce-copper, #B8766A)!important;font-family:"Montserrat",sans-serif;font-weight:700;font-size:.95rem;padding:14px 36px;border-radius:50px;text-decoration:none;transition:transform .2s,box-shadow .2s}
#lc-footer .fcta-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.2);color:var(--divorce-copper, #B8766A)!important}
#lc-footer .fcta-info{background:var(--divorce-slate-dark, #2D4460);padding:20px;font-family:"Open Sans",sans-serif}
#lc-footer .fcta-info-wrap{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
#lc-footer .fcta-info-brand{color:#fff;font-family:"Montserrat",sans-serif;font-weight:700;font-size:.95rem}
#lc-footer .fcta-info-links{font-size:.82rem;display:flex;flex-wrap:wrap;gap:0;align-items:center}
#lc-footer .fcta-info-links a{color:rgba(255,255,255,.65);text-decoration:none;transition:color .2s;padding:2px 6px}
#lc-footer .fcta-info-links a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fcta-info-links .fcta-sep{color:rgba(255,255,255,.25);font-size:.6rem}
#lc-footer .fcta-copy{color:rgba(255,255,255,.45);font-size:.75rem}
@media(max-width:767.98px){
#lc-footer .fcta-banner{padding:36px 20px}
#lc-footer .fcta-banner h2{font-size:1.3rem}
#lc-footer .fcta-info-wrap{flex-direction:column;text-align:center}
#lc-footer .fcta-info-links{justify-content:center}
}

/* === ACTIVE FOOTER CSS (ID: 82, Footer - Minimal Strip) === */
#lc-footer .fms *{box-sizing:border-box;margin:0;padding:0}
#lc-footer .fms{background:#f5f5f5;padding:24px 20px;font-family:"Open Sans",sans-serif}
#lc-footer .fms-wrap{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
#lc-footer .fms-brand{font-family:"Montserrat",sans-serif;font-weight:700;font-size:1rem;color:var(--divorce-slate, #4A6B8A)}
#lc-footer .fms-brand a{color:inherit;text-decoration:none}
#lc-footer .fms-brand a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fms-links{font-size:.85rem;display:flex;flex-wrap:wrap;gap:0;align-items:center}
#lc-footer .fms-links a{color:#555;text-decoration:none;transition:color .2s;padding:2px 8px}
#lc-footer .fms-links a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fms-links .fms-sep{color:#ccc;font-size:.75rem}
#lc-footer .fms-social{display:flex;gap:12px;align-items:center}
#lc-footer .fms-social a{color:#888;text-decoration:none;transition:color .2s;display:flex;align-items:center}
#lc-footer .fms-social a svg{width:16px;height:16px}
#lc-footer .fms-social a:hover{color:var(--divorce-copper, #B8766A)}
#lc-footer .fms-copy{max-width:1200px;margin:0 auto;padding:12px 20px 0;text-align:center;font-size:.75rem;color:#aaa;border-top:1px solid var(--divorce-border-muted, #E0D8CC)}
@media(max-width:767.98px){
#lc-footer .fms-wrap{flex-direction:column;text-align:center}
#lc-footer .fms-links{justify-content:center}
#lc-footer .fms-social{justify-content:center}
}

/* === ACTIVE FOOTER CSS (ID: 81, Footer - 4-Column Extended) === */
#lc-footer .f4c *{box-sizing:border-box;margin:0;padding:0}
#lc-footer .f4c{max-width:1200px;margin:0 auto;padding:50px 20px 30px;display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:30px;font-family:"Open Sans",sans-serif;color:#E0E0E0}
#lc-footer .f4c h3{font-family:"Montserrat",sans-serif;font-weight:700;font-size:1.05rem;color:#fff;margin-bottom:14px}
#lc-footer .f4c p{font-size:.88rem;line-height:1.65;margin-bottom:10px}
#lc-footer .f4c-links{list-style:none;padding:0;margin:0}
#lc-footer .f4c-links li{margin-bottom:6px}
#lc-footer .f4c-links a{color:#E0E0E0;text-decoration:none;font-size:.88rem;transition:color .2s,padding-left .2s}
#lc-footer .f4c-links a:hover{color:var(--divorce-copper, #B8766A);padding-left:4px}
#lc-footer .f4c-disc{font-size:.78rem;color:#999999;font-style:italic;margin-top:10px;line-height:1.5}
#lc-footer .f4c-contact{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:.88rem}
#lc-footer .f4c-contact svg{width:14px;height:14px;color:var(--divorce-copper, #B8766A);flex-shrink:0}
#lc-footer .f4c-nl input[type=email]{width:100%;padding:10px 14px;border:1px solid rgba(255,255,255,.15);border-radius:4px;background:rgba(255,255,255,.06);color:#fff;font-size:.88rem;margin-bottom:8px}
#lc-footer .f4c-nl input[type=email]::placeholder{color:rgba(255,255,255,.4)}
#lc-footer .f4c-nl button{display:inline-block;background:var(--divorce-copper, #B8766A);color:#fff;border:none;padding:10px 22px;border-radius:4px;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.85rem;cursor:pointer;transition:filter .2s,transform .15s}
#lc-footer .f4c-nl button:hover{filter:brightness(.85);transform:translateY(-1px)}
#lc-footer .f4c-copy{max-width:1200px;margin:0 auto;padding:16px 20px;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:.78rem;color:#999999}
@media(max-width:991.98px){#lc-footer .f4c{grid-template-columns:1fr 1fr}}
@media(max-width:575.98px){#lc-footer .f4c{grid-template-columns:1fr}}

/* === ACTIVE HEADER CSS (ID: 80, Header - Bold Statement) === */
.lch-bs *{box-sizing:border-box;margin:0;padding:0}
.lch-bs-contact{background:var(--divorce-slate-dark, #2D4460);padding:6px 0;font-family:"Open Sans",sans-serif;font-size:.75rem;color:rgba(255,255,255,.8)}
.lch-bs-contact .bs-wrap{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}
.lch-bs-contact .bs-info{display:flex;gap:20px;align-items:center}
.lch-bs-contact .bs-info-item{display:flex;align-items:center;gap:5px}
.lch-bs-contact .bs-info-item svg{width:12px;height:12px;color:var(--divorce-copper, #B8766A)}
.lch-bs-contact .bs-cta-top{display:inline-block;background:var(--divorce-copper, #B8766A);color:#fff!important;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.7rem;padding:5px 16px;border-radius:3px;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;transition:filter .2s}
.lch-bs-contact .bs-cta-top:hover{filter:brightness(.85);color:#fff!important}
.lch-bs-brand{background:#fff;padding:16px 0;text-align:center;border-bottom:1px solid var(--divorce-border-muted, #E0D8CC);font-family:"Montserrat",sans-serif}
.lch-bs-brand .bs-name{font-size:1.8rem;font-weight:700;color:var(--divorce-slate, #4A6B8A)}
.lch-bs-brand .bs-name a{color:inherit;text-decoration:none}
.lch-bs-brand .bs-name a:hover{color:var(--divorce-copper, #B8766A)}
.lch-bs-brand .bs-sub{font-size:.75rem;color:#999;margin-top:2px;font-family:"Open Sans",sans-serif}
.lch-bs-navbar{background:var(--divorce-slate, #4A6B8A);padding:0}
.lch-bs-navbar .bs-wrap{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:center;position:relative;min-height:44px}
.lch-bs .bs-nav{display:flex;list-style:none;align-items:center;justify-content:center}
.lch-bs .bs-item{position:relative}
.lch-bs .bs-link{color:rgba(255,255,255,.92)!important;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;padding:12px 14px;text-decoration:none;display:flex;align-items:center;gap:4px;white-space:nowrap;transition:color .2s}
.lch-bs .bs-link:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-bs .bs-dd{display:none;position:absolute;top:100%;left:0;background:var(--divorce-slate, #4A6B8A);border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 8px 25px rgba(0,0,0,.25);min-width:210px;padding:6px 0;z-index:1031;list-style:none;margin:0}
.lch-bs .bs-has-dd.open .bs-dd,.lch-bs .bs-has-dd:hover .bs-dd{display:block}
.lch-bs .bs-dd a{color:rgba(255,255,255,.85);font-size:.85rem;padding:8px 18px;display:block;text-decoration:none;font-weight:500;transition:background .2s,color .2s}
.lch-bs .bs-dd a:hover{background:rgba(255,255,255,.1);color:var(--divorce-copper, #B8766A)}
.lch-bs .bs-burger{display:none;position:absolute;right:20px;top:50%;transform:translateY(-50%);background:0 0;border:2px solid rgba(255,255,255,.5);border-radius:4px;color:#fff;padding:4px 8px;cursor:pointer;line-height:0}
.lch-bs .bs-burger:hover{border-color:var(--divorce-copper, #B8766A);color:var(--divorce-copper, #B8766A)}
@media(max-width:991.98px){
.lch-bs .bs-burger{display:flex}
.lch-bs .bs-nav{display:none;flex-direction:column;width:100%}
.lch-bs .bs-nav.show{display:flex}
.lch-bs .bs-link{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);width:100%;justify-content:flex-start}
.lch-bs .bs-dd{position:static;box-shadow:none;border:none;background:rgba(0,0,0,.15);border-radius:0}
.lch-bs .bs-has-dd:hover .bs-dd{display:none}
.lch-bs .bs-has-dd.open .bs-dd{display:block}
.lch-bs-brand .bs-name{font-size:1.4rem}
}
@media(max-width:575.98px){
.lch-bs-contact .bs-wrap{flex-direction:column;gap:6px;text-align:center}
.lch-bs-contact .bs-info{flex-wrap:wrap;justify-content:center}
}

/* === ACTIVE HEADER CSS (ID: 79, Header - Transparent Overlay) === */
.lch-to *{box-sizing:border-box;margin:0;padding:0}
.lch-to{background:transparent;position:absolute;top:0;left:0;right:0;z-index:1030;padding:0;font-family:"Montserrat",sans-serif}
.lch-to .to-wrap{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;flex-wrap:wrap}
.lch-to .to-brand{font-weight:300;font-size:1.4rem;color:#fff;text-decoration:none;letter-spacing:.02em}
.lch-to .to-brand:hover{color:var(--divorce-copper, #B8766A)}
.lch-to .to-nav{display:flex;list-style:none;align-items:center;gap:0}
.lch-to .to-item{position:relative}
.lch-to .to-link{color:rgba(255,255,255,.92)!important;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;padding:10px 14px;text-decoration:none;display:flex;align-items:center;gap:4px;white-space:nowrap;transition:color .2s}
.lch-to .to-link:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-to .to-dd{display:none;position:absolute;top:100%;left:0;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 12px 30px rgba(0,0,0,.3);min-width:210px;padding:6px 0;z-index:1031;list-style:none;margin:0}
.lch-to .to-has-dd.open .to-dd,.lch-to .to-has-dd:hover .to-dd{display:block}
.lch-to .to-dd a{color:rgba(255,255,255,.85);font-size:.85rem;padding:10px 18px;display:block;text-decoration:none;font-weight:500;transition:background .2s,color .2s}
.lch-to .to-dd a:hover{background:rgba(255,255,255,.08);color:var(--divorce-copper, #B8766A)}
.lch-to .to-cta{display:inline-block;border:2px solid rgba(255,255,255,.6);color:#fff!important;font-weight:600;font-size:.8rem;padding:8px 22px;border-radius:50px;text-decoration:none;transition:all .2s;letter-spacing:.04em}
.lch-to .to-cta:hover{background:var(--divorce-copper, #B8766A);border-color:var(--divorce-copper, #B8766A);color:#fff!important}
.lch-to .to-burger{display:none;background:0 0;border:2px solid rgba(255,255,255,.5);border-radius:4px;color:#fff;padding:5px 8px;cursor:pointer;line-height:0}
.lch-to .to-burger:hover{border-color:var(--divorce-copper, #B8766A);color:var(--divorce-copper, #B8766A)}
@media(max-width:991.98px){
.lch-to .to-burger{display:flex}
.lch-to .to-nav,.lch-to .to-cta{display:none}
.lch-to .to-nav.show{display:flex;flex-direction:column;width:100%;background:rgba(0,0,0,.9);backdrop-filter:blur(12px);border-radius:8px;margin-top:12px;padding:8px 0}
.lch-to .to-link{padding:12px 18px;border-bottom:1px solid rgba(255,255,255,.06);width:100%}
.lch-to .to-dd{position:static;box-shadow:none;border:none;background:rgba(255,255,255,.05);backdrop-filter:none;border-radius:0}
.lch-to .to-has-dd:hover .to-dd{display:none}
.lch-to .to-has-dd.open .to-dd{display:block}
}

/* === ACTIVE HEADER CSS (ID: 78, Header - Modern Split) === */
.lch-ms *{box-sizing:border-box;margin:0;padding:0}
.lch-ms-bar{display:flex;justify-content:space-between;align-items:center;padding:0 24px;background:#fff;border-bottom:1px solid var(--divorce-border-muted, #E0D8CC);font-family:"Montserrat",sans-serif;min-height:56px}
.lch-ms .ms-left{display:flex;align-items:center;gap:24px}
.lch-ms .ms-brand{font-weight:700;font-size:1.2rem;color:var(--divorce-slate, #4A6B8A)}
.lch-ms .ms-brand a{color:inherit;text-decoration:none}
.lch-ms .ms-brand a:hover{color:var(--divorce-copper, #B8766A)}
.lch-ms .ms-desk-nav{display:flex;list-style:none;align-items:center}
.lch-ms .ms-item{position:relative}
.lch-ms .ms-link{color:var(--divorce-slate, #4A6B8A)!important;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;padding:16px 10px;text-decoration:none;display:flex;align-items:center;gap:4px;white-space:nowrap;transition:color .2s}
.lch-ms .ms-link:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-ms .ms-dd{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--divorce-border-muted, #E0D8CC);border-radius:6px;box-shadow:0 8px 20px rgba(0,0,0,.1);min-width:200px;padding:6px 0;z-index:1031;list-style:none;margin:0}
.lch-ms .ms-has-dd.open .ms-dd,.lch-ms .ms-has-dd:hover .ms-dd{display:block}
.lch-ms .ms-dd a{color:#333;font-size:.85rem;padding:8px 18px;display:block;text-decoration:none;font-weight:500;transition:background .2s,color .2s}
.lch-ms .ms-dd a:hover{background:var(--divorce-cream, #FFF8F0);color:var(--divorce-copper, #B8766A)}
.lch-ms .ms-toggle{width:42px;height:42px;border:2px solid var(--divorce-slate, #4A6B8A);border-radius:8px;cursor:pointer;display:none;align-items:center;justify-content:center;background:0 0;color:var(--divorce-slate, #4A6B8A);line-height:0;transition:border-color .2s,color .2s}
.lch-ms .ms-toggle:hover{border-color:var(--divorce-copper, #B8766A);color:var(--divorce-copper, #B8766A)}
.lch-ms .ms-cta{display:inline-block;background:var(--divorce-copper, #B8766A);color:#fff!important;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.8rem;padding:8px 18px;border-radius:4px;text-decoration:none;white-space:nowrap;transition:filter .2s,transform .15s}
.lch-ms .ms-cta:hover{filter:brightness(.85);transform:translateY(-1px);color:#fff!important}
.lch-ms-drawer{position:fixed;top:0;right:-340px;width:320px;height:100vh;background:var(--divorce-slate-dark, #2D4460);color:#fff;z-index:9999;transition:right .3s ease;padding:60px 30px 30px;overflow-y:auto;font-family:"Montserrat",sans-serif}
.lch-ms-drawer.open{right:0}
.lch-ms-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:9998}
.lch-ms-overlay.open{display:block}
.lch-ms .ms-close{position:absolute;top:16px;right:16px;background:0 0;border:none;color:#fff;cursor:pointer;padding:4px;line-height:0}
.lch-ms .ms-close:hover{color:var(--divorce-copper, #B8766A)}
.lch-ms .ms-drawer-link{display:block;padding:14px 0;color:#fff;text-decoration:none;font-size:1.05rem;border-bottom:1px solid rgba(255,255,255,.1);transition:padding-left .2s}
.lch-ms .ms-drawer-link:hover{padding-left:6px;color:var(--divorce-copper, #B8766A)}
.lch-ms .ms-drawer-sub{display:block;padding:10px 0 10px 20px;color:rgba(255,255,255,.7);text-decoration:none;font-size:.9rem;border-bottom:1px solid rgba(255,255,255,.05)}
.lch-ms .ms-drawer-sub:hover{color:var(--divorce-copper, #B8766A)}
.lch-ms .ms-drawer-cta{display:block;margin-top:24px;padding:14px 24px;background:var(--divorce-copper, #B8766A);color:#fff!important;text-align:center;border-radius:6px;text-decoration:none;font-weight:600;font-size:.95rem;transition:filter .2s,transform .15s}
.lch-ms .ms-drawer-cta:hover{filter:brightness(.85);transform:translateY(-1px);color:#fff!important}
@media(max-width:991.98px){
.lch-ms .ms-desk-nav,.lch-ms .ms-cta{display:none!important}
.lch-ms .ms-toggle{display:flex}
}

/* === ACTIVE HEADER CSS (ID: 77, Header - Centered Brand) === */
.lch-cb *{box-sizing:border-box;margin:0;padding:0}
.lch-cb{background:#fff;border-bottom:1px solid var(--divorce-border-muted, #E0D8CC);text-align:center;padding:14px 0 0;font-family:"Montserrat",sans-serif}
.lch-cb .cb-logo{font-size:1.5rem;font-weight:700;color:var(--divorce-slate, #4A6B8A)}
.lch-cb .cb-logo a{color:inherit;text-decoration:none}
.lch-cb .cb-logo a:hover{color:var(--divorce-copper, #B8766A)}
.lch-cb .cb-tagline{font-size:.75rem;color:#999;margin-top:2px;font-family:"Open Sans",sans-serif;font-style:italic}
.lch-cb .cb-burger{display:none;background:0 0;border:2px solid var(--divorce-slate, #4A6B8A);border-radius:4px;color:var(--divorce-slate, #4A6B8A);padding:4px 8px;cursor:pointer;margin:8px auto 0;line-height:0}
.lch-cb .cb-burger:hover{border-color:var(--divorce-copper, #B8766A);color:var(--divorce-copper, #B8766A)}
.lch-cb .cb-nav{display:flex;justify-content:center;align-items:center;padding:10px 0;flex-wrap:wrap}
.lch-cb .cb-link{color:var(--divorce-slate, #4A6B8A);font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;padding:6px 14px;text-decoration:none;transition:color .2s;display:inline-flex;align-items:center;gap:4px}
.lch-cb .cb-link:hover{color:var(--divorce-copper, #B8766A)}
.lch-cb .cb-dd-wrap{position:relative;display:inline-block}
.lch-cb .cb-dd{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--divorce-border-muted, #E0D8CC);border-radius:6px;box-shadow:0 8px 20px rgba(0,0,0,.1);min-width:200px;padding:6px 0;z-index:1031;text-align:left}
.lch-cb .cb-dd-wrap.open .cb-dd,.lch-cb .cb-dd-wrap:hover .cb-dd{display:block}
.lch-cb .cb-dd a{display:block;padding:8px 18px;color:#333;font-size:.85rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s}
.lch-cb .cb-dd a:hover{background:var(--divorce-cream, #FFF8F0);color:var(--divorce-copper, #B8766A)}
@media(max-width:767.98px){
.lch-cb .cb-nav{display:none;flex-direction:column}
.lch-cb .cb-nav.show{display:flex}
.lch-cb .cb-burger{display:flex;justify-content:center}
.lch-cb .cb-link{padding:10px 16px;border-bottom:1px solid var(--divorce-border-muted, #E0D8CC);width:100%}
.lch-cb .cb-dd{position:static;transform:none;box-shadow:none;border:none;border-radius:0}
.lch-cb .cb-dd-wrap.open .cb-dd{display:block}
.lch-cb .cb-dd-wrap:hover .cb-dd{display:none}
}

/* === ACTIVE HEADER CSS (ID: 76, Header - Business Elite) === */
.lch-be *{box-sizing:border-box;margin:0;padding:0}
.lch-be-top{background:var(--divorce-slate-dark, #2D4460);padding:5px 0;font-size:.75rem;font-family:"Open Sans",sans-serif;color:rgba(255,255,255,.8)}
.lch-be-top .be-wrap{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 20px}
.lch-be-top a{color:rgba(255,255,255,.8);text-decoration:none;transition:color .2s}
.lch-be-top a:hover{color:var(--divorce-copper, #B8766A)}
.lch-be-top .be-contact{display:flex;gap:16px;align-items:center}
.lch-be-top .be-contact-item{display:flex;align-items:center;gap:5px}
.lch-be-top .be-contact-item svg{width:12px;height:12px}
.lch-be-top .be-socials{display:flex;gap:10px;align-items:center}
.lch-be-top .be-socials a{display:flex;align-items:center}
.lch-be-top .be-socials svg{width:14px;height:14px}
.lch-be-main{background:var(--divorce-slate, #4A6B8A);padding:0}
.lch-be-main .be-wrap{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 20px;min-height:54px}
.lch-be .be-brand{font-family:"Montserrat",sans-serif;font-weight:700;font-size:1.3rem;color:#fff!important;text-decoration:none;white-space:nowrap}
.lch-be .be-brand:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-be .be-nav{display:flex;list-style:none;align-items:center}
.lch-be .be-item{position:relative}
.lch-be .be-link{color:rgba(255,255,255,.9)!important;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;padding:16px 12px;text-decoration:none;display:flex;align-items:center;gap:4px;white-space:nowrap;transition:color .2s}
.lch-be .be-link:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-be .be-dd{display:none;position:absolute;top:100%;left:0;background:var(--divorce-slate, #4A6B8A);border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 8px 25px rgba(0,0,0,.25);min-width:210px;padding:6px 0;z-index:1031;list-style:none;margin:0}
.lch-be .be-has-dd.open .be-dd,.lch-be .be-has-dd:hover .be-dd{display:block}
.lch-be .be-dd a{color:rgba(255,255,255,.85);font-size:.85rem;padding:8px 18px;display:block;text-decoration:none;font-weight:500;transition:background .2s,color .2s}
.lch-be .be-dd a:hover{background:rgba(255,255,255,.1);color:var(--divorce-copper, #B8766A)}
.lch-be .be-cta{display:inline-block;background:var(--divorce-copper, #B8766A);color:#fff!important;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.8rem;padding:8px 20px;border-radius:4px;text-decoration:none;white-space:nowrap;transition:filter .2s,transform .15s}
.lch-be .be-cta:hover{filter:brightness(.85);transform:translateY(-1px);color:#fff!important}
.lch-be .be-hamburger{display:none;background:0 0;border:2px solid rgba(255,255,255,.5);border-radius:4px;color:#fff;padding:5px 8px;cursor:pointer;line-height:0}
.lch-be .be-hamburger:hover{border-color:var(--divorce-copper, #B8766A);color:var(--divorce-copper, #B8766A)}
@media(max-width:991.98px){
.lch-be .be-hamburger{display:flex}
.lch-be .be-nav{display:none;flex-direction:column;width:100%;order:10;padding-top:8px}
.lch-be .be-nav.show{display:flex}
.lch-be .be-cta{display:none}
.lch-be .be-link{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08);width:100%}
.lch-be .be-dd{position:static;box-shadow:none;border:none;background:rgba(0,0,0,.15);border-radius:0}
.lch-be .be-has-dd:hover .be-dd{display:none}
.lch-be .be-has-dd.open .be-dd{display:block}
.lch-be-main .be-wrap{flex-wrap:wrap}
}
@media(max-width:575.98px){
.lch-be-top .be-wrap{flex-direction:column;gap:4px;text-align:center}
.lch-be-top .be-socials{justify-content:center}
}

/* === ACTIVE HEADER CSS (ID: 61, Header - Minimal Clean) === */
.lch-mc{background:var(--divorce-slate, #4A6B8A);padding:0;font-family:"Montserrat",-apple-system,BlinkMacSystemFont,sans-serif;position:sticky;top:0;z-index:1030;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.lch-mc .mc-wrap{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:0 1rem;min-height:52px}
.lch-mc .mc-brand{font-weight:700;font-size:1.1rem;color:#fff!important;text-decoration:none;white-space:nowrap}
.lch-mc .mc-brand:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-mc .mc-toggle{display:none;background:0 0;border:2px solid rgba(255,255,255,.5);border-radius:4px;padding:6px 8px;cursor:pointer;color:rgba(255,255,255,.9);line-height:0}
.lch-mc .mc-toggle:hover{border-color:var(--divorce-copper, #B8766A);color:var(--divorce-copper, #B8766A)}
.lch-mc .mc-nav{display:flex;list-style:none;margin:0;padding:0;align-items:center}
.lch-mc .mc-item{position:relative}
.lch-mc .mc-link{color:rgba(255,255,255,.88)!important;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;padding:16px 10px;text-decoration:none;display:flex;align-items:center;gap:4px;white-space:nowrap;transition:color .2s}
.lch-mc .mc-link:hover{color:var(--divorce-copper, #B8766A)!important}
.lch-mc .mc-link svg{opacity:.7}
.lch-mc .mc-dd{display:none;position:absolute;top:100%;left:0;background:var(--divorce-slate, #4A6B8A);border:1px solid rgba(255,255,255,.1);border-radius:6px;box-shadow:0 8px 25px rgba(0,0,0,.2);min-width:200px;padding:6px 0;z-index:1031;list-style:none;margin:0}
.lch-mc .mc-has-dd.open .mc-dd,.lch-mc .mc-has-dd:hover .mc-dd{display:block}
.lch-mc .mc-dd a{color:rgba(255,255,255,.85);font-size:.85rem;padding:8px 18px;display:block;text-decoration:none;font-weight:500;transition:background .2s,color .2s}
.lch-mc .mc-dd a:hover{background:rgba(255,255,255,.1);color:var(--divorce-copper, #B8766A)}
@media(max-width:1199.98px){
.lch-mc .mc-toggle{display:flex}
.lch-mc .mc-nav{display:none;flex-direction:column;width:100%;padding:8px 0}
.lch-mc .mc-nav.show{display:flex}
.lch-mc .mc-link{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);width:100%}
.lch-mc .mc-item:last-child .mc-link{border-bottom:0}
.lch-mc .mc-dd{position:static;box-shadow:none;border:none;background:rgba(0,0,0,.15);border-radius:0}
.lch-mc .mc-has-dd:hover .mc-dd{display:none}
.lch-mc .mc-has-dd.open .mc-dd{display:block}
}

/* === ACTIVE FOOTER CSS (ID: 60, Footer - 3-Column Business) === */
#lc-footer{background-color:var(--divorce-slate-dark, #2D4460);color:#E0E0E0;font-family:"Open Sans",-apple-system,BlinkMacSystemFont,sans-serif;padding:3rem 0 0;margin:0;line-height:1.7}
#lc-footer *,#lc-footer *::before,#lc-footer *::after{box-sizing:border-box}
#lc-footer a{color:#E0E0E0;text-decoration:none;transition:color .2s}
#lc-footer a:hover{color:var(--divorce-copper, #B8766A);text-decoration:underline}
#lc-footer .f3c-wrap{max-width:1140px;margin:0 auto;padding:0 1rem;display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:2.5rem}
#lc-footer h3{font-family:"Montserrat",-apple-system,BlinkMacSystemFont,sans-serif;font-weight:700;font-size:1.125rem;color:#FFFFFF;margin-bottom:1rem;letter-spacing:-.01em}
#lc-footer p{font-size:.9rem;margin-bottom:.75rem}
#lc-footer .f3c-links{list-style:none;padding:0;margin:0}
#lc-footer .f3c-links li{margin-bottom:.5rem}
#lc-footer .f3c-links a{font-size:.9rem;display:inline-flex;align-items:center;gap:6px;padding:2px 0;text-decoration:none}
#lc-footer .f3c-links a svg{color:var(--divorce-copper, #B8766A);transition:transform .2s}
#lc-footer .f3c-links a:hover svg{transform:translateX(3px)}
#lc-footer .f3c-links a:hover{text-decoration:none}
#lc-footer .f3c-disc{font-size:.8rem;color:#999999;margin-top:1rem;font-style:italic;line-height:1.5}
#lc-footer .f3c-cta{display:inline-block;background:var(--divorce-copper, #B8766A);color:#FFFFFF!important;font-family:"Montserrat",sans-serif;font-weight:600;font-size:.9rem;padding:.625rem 1.5rem;border-radius:.375rem;text-decoration:none!important;transition:filter .2s,transform .15s;margin-top:.75rem}
#lc-footer .f3c-cta:hover{filter:brightness(.85);transform:translateY(-1px);text-decoration:none!important;color:#FFFFFF!important}
#lc-footer .f3c-contact{display:flex;align-items:flex-start;gap:8px;margin-bottom:.5rem;font-size:.9rem}
#lc-footer .f3c-contact svg{flex-shrink:0;width:16px;height:16px;margin-top:3px;color:var(--divorce-copper, #B8766A)}
#lc-footer .f3c-copy{background:var(--divorce-slate-dark, #3A5570);color:#999999;font-size:.8rem;text-align:center;padding:1rem;margin-top:2.5rem;line-height:1.5}
@media(max-width:991.98px){#lc-footer .f3c-wrap{grid-template-columns:1fr 1fr;gap:2rem}}
@media(max-width:575.98px){#lc-footer .f3c-wrap{grid-template-columns:1fr;gap:1.5rem}#lc-footer{padding:2rem 0 0}}


/* === customizer-aligned buttons (2026-07-08), .btn-primary/.btn-secondary track --bs-* at runtime. !important because child style.css loads BEFORE bundle.css. See brain/20-system-frameworks/atl-theme-customizer-mechanism.md === */
.btn-primary{--bs-btn-bg:var(--bs-primary)!important;--bs-btn-border-color:var(--bs-primary)!important;--bs-btn-hover-bg:var(--bs-dark)!important;--bs-btn-hover-border-color:var(--bs-dark)!important;--bs-btn-active-bg:var(--bs-dark)!important;--bs-btn-active-border-color:var(--bs-dark)!important;--bs-btn-disabled-bg:var(--bs-primary)!important;--bs-btn-disabled-border-color:var(--bs-primary)!important;}
.btn-secondary{--bs-btn-bg:var(--bs-secondary)!important;--bs-btn-border-color:var(--bs-secondary)!important;--bs-btn-hover-bg:var(--bs-dark)!important;--bs-btn-hover-border-color:var(--bs-dark)!important;--bs-btn-active-bg:var(--bs-dark)!important;--bs-btn-active-border-color:var(--bs-dark)!important;}


/* ==========================================================================
   HERO — feathered scrim blur (2026-08-06)
   general-flare paints a flat 105deg tint on .gf-hero-slide::after. A
   backdrop-filter on that same element blurs the WHOLE slide, because the
   filter region is the element's box and the gradient's alpha has no bearing
   on it. The only thing that clips a backdrop-filter is a mask, so the blur
   rides a second layer (::before) whose mask-image repeats the tint's angle
   and ramp. Net effect: soft under the headline, photo stays sharp on the
   right. This file is the last stylesheet on the page (child style.css is
   enqueued at priority 20, general-flare at 10), so no !important needed.
   ========================================================================== */

/* Explicit paint order inside the slide: photo -> blur -> tint -> (content
   sits at z-index 3 on .gf-hero-content, outside the slide). Without this the
   ::before generates BEFORE .gf-hero-img in DOM order and would have nothing
   to blur. */
.gf-hero-slide .gf-hero-img { z-index: 0; }
.gf-hero-slide::after       { z-index: 2; }

.gf-hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    /* Alpha ramp only — same 105deg as the tint so the two stay in register.
       Full blur through the headline column, gone by 64% where the tint has
       thinned to the primary wash and the photo should read sharp. */
    -webkit-mask-image: linear-gradient(105deg,
        rgba(0,0,0,1)   0%,
        rgba(0,0,0,1)   38%,
        rgba(0,0,0,.55) 52%,
        rgba(0,0,0,0)   64%);
            mask-image: linear-gradient(105deg,
        rgba(0,0,0,1)   0%,
        rgba(0,0,0,1)   38%,
        rgba(0,0,0,.55) 52%,
        rgba(0,0,0,0)   64%);
}

/* Mobile: the tint alone carries legibility, and a full-bleed backdrop-filter
   under an autoplaying carousel is the most expensive thing on the page. */
@media (max-width: 767.98px) {
    .gf-hero-slide::before {
        -webkit-backdrop-filter: none;
                backdrop-filter: none;
    }
}

/* Deepened hero scrim (2026-08-06). general-flare's tint is
   rgba(--bs-dark,.86) -> .62 -> rgba(--bs-primary,.30), but --bs-dark on this
   site is #3A5570, a MID slate, so at .86 a bright sky still reads through and
   the white subhead sat at 2.7:1. Two stacked layers: a neutral charcoal anchor
   on the far left, over a deepened brand ramp that still tracks --bs-dark /
   --bs-primary so the customizer keeps recolouring it.
   NOTE: the #333 stops are deliberately palette-independent (there is no
   neutral token in this palette) — that corner will NOT recolour. */
.gf-hero-slide::after {
    background:
        linear-gradient(105deg,
            rgba(51,51,51,.88) 0%,
            rgba(51,51,51,.42) 34%,
            rgba(51,51,51,0)   60%),
        linear-gradient(105deg,
            rgba(var(--bs-dark-rgb),.88)     0%,
            rgba(var(--bs-dark-rgb),.76)     46%,
            rgba(var(--bs-primary-rgb),.32) 100%);
}

/* Mobile: the 105deg ramp completes before it reaches the copy on a narrow box,
   so the angled version leaves the subhead uncovered. Go vertical instead. */
@media (max-width: 767.98px) {
    .gf-hero-slide::after {
        background:
            linear-gradient(180deg,
                rgba(51,51,51,.34) 0%,
                rgba(51,51,51,.52) 100%),
            linear-gradient(180deg,
                rgba(var(--bs-dark-rgb),.58) 0%,
                rgba(var(--bs-primary-rgb),.52) 100%);
    }
}

/* ==========================================================================
   Interaction-state AA (2026-09-16, gates/interaction-state-audit.cjs)

   Two focus/hover states flipped the label to something unreadable:

     .gf-btn-primary  rest = #141414 on the warning fill (fine), but hover and
                      focus flipped it to WHITE on that same fill -> 3.60:1.
     .navbar-brand    rest = white on the dark bar (fine), but focus flipped it
                      to a dark slate on that same dark bar -> 1.49:1.

   Both are label-only corrections: the fills are untouched, so nothing about the
   resting page changes. The gf-* styles come from the general-flare mu-plugin
   whose sheet the CSSOM would not expose here, so this overrides by specificity
   rather than editing an unlocatable source rule — same `html body` idiom the
   late-mortgage and probate child themes already use for this purpose.
   ========================================================================== */
/* .gf-btn-primary renders on TWO fills and both are CORRECT at rest:
     clay  rgb(184,118,106) with a dark  #141414 label (5.12:1)
     blue  rgb(74,107,138)  with a white label         (5.58:1)
   Only :hover/:focus broke them, in opposite directions. The label genuinely has
   to differ per fill — white on the clay is 3.60:1 and the dark ink on the blue
   is 3.30:1, so neither single value works.

   The discriminator is `.gf-feature`, NOT the section: --bs-warning is the clay
   for every one of these buttons, and the blue ones are the instances inside
   .gf-feature, whose own rule overrides both fill and label. An earlier attempt
   scoped this as `.gf-section:not(.gf-niche)`, which happened to fit the home
   page and then painted a CLAY button white on /divorce-real-estate/ (3.60:1).

   Default (clay) keeps the dark label the general-flare mu-plugin already sets;
   only the .gf-feature instances take white. Hover/focus only. */
html body .gf-btn.gf-btn-primary:hover,
html body .gf-btn.gf-btn-primary:focus,
html body .gf-btn.gf-btn-primary:focus-visible { color: #141414 !important; }

html body .gf-feature .gf-btn.gf-btn-primary:hover,
html body .gf-feature .gf-btn.gf-btn-primary:focus,
html body .gf-feature .gf-btn.gf-btn-primary:focus-visible { color: #fff !important; }

html body .navbar-brand:hover,
html body .navbar-brand:focus,
html body .navbar-brand:focus-visible,
html body .navbar-brand:visited,
html body .navbar-brand:visited:hover { color: #fff !important; }

/* Interaction-state AA (2026-09-16, gates/interaction-state-audit.cjs).
   `.btn-outline-sage` fills with the sage on hover/focus, and NO label passes on
   that sage: white is 3.75:1 and the darkest sensible ink only reaches 3.90:1.
   So the fill has to move — 84% toward black gives #507E6F, where white clears
   4.61:1. Hover/focus only; the resting outline button is untouched. */
html body .btn-outline-sage:hover,
html body .btn-outline-sage:focus,
html body .btn-outline-sage:focus-visible,
html body a.btn-outline-sage:hover,
html body a.btn-outline-sage:focus {
    background: color-mix(in srgb, var(--divorce-sage, #5A8E7D) 84%, #000) !important;
    border-color: color-mix(in srgb, var(--divorce-sage, #5A8E7D) 84%, #000) !important;
    color: #fff !important;
}
