/* /Layout/Footer.razor.rz.scp.css */
/* Footer.razor.css
   Page-specific footer overrides.
   Base footer styles live in site.css.
   This file contains only Footer.razor specifics. */

/* If you need any page-specific footer overrides, add them here.
   Currently, all footer styling is handled by site.css, so this
   file can remain minimal or empty. */

/* Example override (remove if not needed):
footer {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
*/
/* /Layout/MainLayout.razor.rz.scp.css */
/* /Layout/NavMenu.razor.rz.scp.css */
/* NavMenu.razor.css */

/* -----------------------------------------------
   NAVBAR SHELL
   Restore moderate padding for text brand.
   ----------------------------------------------- */

.navbar-custom[b-u498kqe91x] {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* -----------------------------------------------
   BRAND — DESKTOP VS MOBILE SIZING
   Desktop centered brand is slightly larger.
   ----------------------------------------------- */

.navbar-brand.d-none.d-lg-block .brand-honey[b-u498kqe91x] {
    font-size: 1.6rem;
    letter-spacing: 0.02em;
}

.navbar-brand.d-none.d-lg-block .brand-doula[b-u498kqe91x] {
    font-size: 1.1rem;
    letter-spacing: 0.22em;
    margin-top: -2px;
}

.navbar-brand.d-none.d-lg-block .brand-icon[b-u498kqe91x] {
    font-size: 1.6rem;
}

/* -----------------------------------------------
   BRAND HOVER
   ----------------------------------------------- */

.brand-styling:hover .brand-honey[b-u498kqe91x] {
    color: var(--sage-dark);
    transition: color var(--transition-base);
}

.brand-styling:hover .brand-icon[b-u498kqe91x] {
    filter: drop-shadow(0 2px 4px rgba(156, 175, 136, 0.4));
    transition: filter var(--transition-base);
}

/* -----------------------------------------------
   ACTIVE NAV LINK
   ----------------------------------------------- */

.navbar-custom .nav-link.active[b-u498kqe91x] {
    font-weight: 600;
}

/* -----------------------------------------------
   MOBILE COLLAPSE PANEL
   ----------------------------------------------- */

@media (max-width: 991.98px) {

    .navbar-collapse.show[b-u498kqe91x],
    .navbar-collapse.collapsing[b-u498kqe91x] {
        background-color: var(--sand);
        border-top: 1px solid var(--sand-dark);
        padding: var(--space-md) 0;
        margin-top: var(--space-sm);
    }

    .navbar-custom .nav-link[b-u498kqe91x] {
        padding: 0.625rem var(--space-md);
        margin: 0;
        font-size: 1rem;
        border-left: 3px solid transparent;
        transition: color var(--transition-base), border-color var(--transition-base), background-color var(--transition-base);
    }

        .navbar-custom .nav-link[b-u498kqe91x]::after {
            display: none;
        }

        .navbar-custom .nav-link:hover[b-u498kqe91x] {
            border-left-color: var(--sage-light);
            background-color: var(--sage-10);
            border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
        }

        .navbar-custom .nav-link.active[b-u498kqe91x] {
            border-left-color: var(--sage);
            color: var(--sage-dark);
            background-color: var(--sage-10);
            border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
        }

    .navbar-nav.me-auto[b-u498kqe91x] {
        margin-right: 0 !important;
    }

    .navbar-nav.ms-auto[b-u498kqe91x] {
        margin-left: 0 !important;
        border-top: 1px solid var(--sand-dark);
        padding-top: var(--space-sm);
        margin-top: var(--space-sm);
    }
}
/* /Pages/About.razor.rz.scp.css */
/* About.razor.css
   Page-specific styles for the About page.
   Most styling comes from site.css components. */

/* Ensure proper spacing for the hero intro */
.about-intro[b-57rns1fsgo] {
    max-width: 800px;
}

/* Values section stat numbers get sage color */
.stat-number[b-57rns1fsgo] {
    color: var(--sage);
}

/* Credentials grid uses site.css .credentials-grid
   and .credential-card — no overrides needed */
/* /Pages/Contact.razor.rz.scp.css */
/* =============================================
   Contact.razor.css
   Page-specific overrides for Contact.razor.
   Base contact styles live in site.css.
   This file handles only contact-page specifics.
   ============================================= */

/* -----------------------------------------------
   CONTACT SECTION WRAPPER
   Base .contact-section is in site.css.
   This overrides the min-height for the contact
   page specifically to ensure graceful scaling
   with a long form.
   ----------------------------------------------- */

.contact-section[b-0w06d2c12u] {
    padding-top: var(--space-xl);
    padding-bottom: var(--space-xl);
    min-height: auto;
    align-items: flex-start;
}

/* -----------------------------------------------
   FORM CARD
   Base .contact-form-card styles are in site.css.
   ----------------------------------------------- */

/* The "Optional" label inline with form-label */
.contact-optional[b-0w06d2c12u] {
    font-family: var(--font-body);
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--clay);
    text-transform: none;
    letter-spacing: 0;
    margin-left: 0.25rem;
}

/* Footnote below submit button */
.contact-footnote[b-0w06d2c12u] {
    font-family: var(--font-body);
    font-size: 0.9375rem;
    color: var(--clay);
    font-style: italic;
    margin-bottom: 0;
}

/* Checkbox group — ensure consistent spacing */
.contact-check-group .form-check[b-0w06d2c12u] {
    padding-left: 1.75rem;
}

.contact-check-group .form-check-label[b-0w06d2c12u] {
    font-family: var(--font-body);
    font-size: 1rem;
    color: var(--ink);
    text-transform: none;
    letter-spacing: 0;
    font-weight: 400;
}

/* Select element — match form-control styling */
.contact-form-card select.form-control[b-0w06d2c12u] {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239CAF88' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    padding-right: 2.5rem;
    cursor: pointer;
}

/* -----------------------------------------------
   INFO CARD
   Base .info-card styles are in site.css.
   These are contact-page specific additions.
   ----------------------------------------------- */

/* h4 inside info-card on this page */
.info-card h4[b-0w06d2c12u] {
    font-size: 1.5rem;
    border-bottom: 1px solid var(--sand);
    padding-bottom: var(--space-md);
    margin-bottom: 0;
}

/* Serving area block at the bottom of info card */
.contact-serving-area[b-0w06d2c12u] {
    border-top: 1px solid var(--sand);
}

    .contact-serving-area p[b-0w06d2c12u] {
        font-family: var(--font-body);
        font-size: 0.9375rem;
        color: var(--clay);
        font-style: italic;
        line-height: 1.6;
    }

.contact-serving-label[b-0w06d2c12u] {
    font-family: var(--font-ui);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--sage-dark);
    display: block;
    margin-bottom: 0.25rem;
    font-style: normal;
}

/* -----------------------------------------------
   CONTACT IMAGE CARD
   Base .contact-image-card styles are in site.css.
   Page-specific: image height on large screens.
   ----------------------------------------------- */

.contact-image-card[b-0w06d2c12u] {
    max-height: 440px;
}

    .contact-image-card img[b-0w06d2c12u] {
        height: 100%;
        object-fit: cover;
        object-position: center top;
    }

/* -----------------------------------------------
   RESPONSIVE
   ----------------------------------------------- */

@media (max-width: 991.98px) {
    .contact-section[b-0w06d2c12u] {
        padding-top: var(--space-lg);
        padding-bottom: var(--space-lg);
    }

    .contact-image-card[b-0w06d2c12u] {
        max-height: 320px;
    }
}

@media (max-width: 767.98px) {
    .contact-form-card[b-0w06d2c12u] {
        padding: var(--space-lg) !important;
    }

    .contact-check-group[b-0w06d2c12u] {
        flex-wrap: wrap;
        gap: var(--space-md) !important;
    }

    .contact-image-card[b-0w06d2c12u] {
        max-height: 260px;
    }
}

@media (max-width: 575.98px) {
    .contact-form-card[b-0w06d2c12u] {
        padding: var(--space-md) !important;
        border-radius: var(--radius-lg);
    }

    .info-card[b-0w06d2c12u] {
        padding: var(--space-md) !important;
    }
}
/* /Pages/Home.razor.rz.scp.css */
/* =============================================
   Home.razor.css
   Page-specific overrides for Home.razor.
   The design system (theme.css + site.css)
   handles base styles. This file contains
   only what's unique to the home page.
   ============================================= */

/* -----------------------------------------------
   HERO SECTION
   Uses .hero-section, .hero-image, .hero-overlay,
   .hero-content, .scroll-indicator from site.css.
   Only override what's specific to this page.
   ----------------------------------------------- */

.hero-content h1[b-rrz6mw9yss] {
    /* Cormorant Garamond at large size needs
       slightly looser shadow for legibility */
    text-shadow: 2px 4px 16px rgba(0, 0, 0, 0.45);
    letter-spacing: -0.03em;
}

.hero-content p[b-rrz6mw9yss] {
    font-size: clamp(1.25rem, 2.5vw, 1.75rem);
    font-weight: 400;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* -----------------------------------------------
   WHO WE ARE SECTION (.wwa-section)
   ----------------------------------------------- */

.wwa-section[b-rrz6mw9yss] {
    background-color: var(--soft-white);
    color: var(--ink);
}

/* -----------------------------------------------
   WHAT WE OFFER SECTION (.section-sand)
   Uses the .section-sand utility from theme.css.
   No overrides needed — handled by the system.
   ----------------------------------------------- */

/* -----------------------------------------------
   TESTIMONIALS SECTION (.wcas-section)
   Base testimonial-card styles are in site.css.
   ----------------------------------------------- */

.wcas-section[b-rrz6mw9yss] {
    background-color: var(--sage-pale);
    color: var(--ink);
}

/* -----------------------------------------------
   CALL TO ACTION SECTION (.cta-section)
   Base styles are in site.css. These are 
   home-page-specific refinements only.
   ----------------------------------------------- */

/* Ensure CTA image has a warm tint on hover */
.cta-section img[b-rrz6mw9yss] {
    transition: transform var(--transition-base), box-shadow var(--transition-base);
    will-change: transform;
}

    .cta-section img:hover[b-rrz6mw9yss] {
        transform: scale(1.015);
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
    }

/* -----------------------------------------------
   SECTION IMAGES (Who We Are / What We Offer)
   ----------------------------------------------- */

/* Ensure all content-section images have
   consistent shadow and rounding */
.wwa-section img[b-rrz6mw9yss],
.section-sand img[b-rrz6mw9yss] {
    transition: transform var(--transition-base), box-shadow var(--transition-base);
    will-change: transform;
}

    .wwa-section img:hover[b-rrz6mw9yss],
    .section-sand img:hover[b-rrz6mw9yss] {
        transform: scale(1.01);
        box-shadow: var(--shadow-xl);
    }

/* -----------------------------------------------
   RESPONSIVE
   ----------------------------------------------- */

@media (max-width: 991.98px) {
    /* On tablet, reverse "What We Offer" so image
       appears below text (matching column order) */
    .section-sand .row[b-rrz6mw9yss] {
        flex-direction: column-reverse;
    }
}

@media (max-width: 767.98px) {
    .hero-content p[b-rrz6mw9yss] {
        font-size: 1.2rem;
    }
}
 
/* /Pages/Services.razor.rz.scp.css */
/* Services.razor.css
   Page-specific styles for Services page.
   Most styling comes from site.css and theme.css. */

/* Service cards use .service-card from site.css
   No overrides needed */

/* Price display styling */
.service-card .price-tag[b-jsxo3o7elh] {
    font-size: 2rem;
    font-weight: 600;
    color: var(--sage);
    font-family: var(--font-display);
}

/* Custom list styling for included items */
.service-card ul[b-jsxo3o7elh] {
    /* Inherits from site.css service-card ul styles */
}
