/* --- GLOBAL DESKTOP STYLES --- */
#masthead {
    padding: 10px 0; /* Adjust top/bottom padding */
}

/* --- UNIFIED MOBILE STYLES (768px and below) --- */
@media screen and (max-width: 768px) {
    
    /* 1. Visibility Utility */
    .hide-on-mobile {
        display: none !important;
    }

    /* 2. Global WordPress Inner Content Containers */
    .wp-block-group, 
    .wp-block-group__inner-container,
    .entry-content > *,
    .post-content > * {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Global Block Editor Constraints Reset */
    .wp-site-blocks, 
    .is-layout-constrained > * {
        max-width: 100% !important;
        width: 100% !important;
    }

    /* 3. Specific Component: Mobile Background Grey Block */
    .mobile-background-grey {
        background-image: none !important; 
        background-color: #eeeeee !important; 
        color: #222222 !important; 
    }
    .mobile-background-grey h1,
    .mobile-background-grey h2,
    .mobile-background-grey h3,
    .mobile-background-grey p,
    .mobile-background-grey a {
        color: #000000 !important;
    }

    /* 4. Specific Component: Parent wrappers containing your Form Hero */
    /* Positioned down here to cleanly override global container styles above */
    .wp-block-columns:has(.form-hero-block),
    .is-layout-constrained:has(.form-hero-block),
    .wp-block-group:has(.form-hero-block) {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        background: transparent !important; 
    }

    /* 5. Specific Component: Main Form Hero Block Container */
    .form-hero-block {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        background-image: none !important;
        background: #eeeeee !important; 
        background-color: #eeeeee !important; 
        padding-left: 5px !important;
        padding-right: 5px !important;
        padding-top: 40px !important;
        padding-bottom: 40px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 0px !important; 
    }

    /* Flatten internal elements inside Form Hero */
    .form-hero-block p,
    .form-hero-block ul,
    .form-hero-block ol,
    .form-hero-block h1,
    .form-hero-block h2,
    .form-hero-block h3,
    .form-hero-block h4 {
        margin-bottom: 0px !important;
        padding-bottom: 0px !important;
    }
    .form-hero-block > * {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Flatten HubSpot element defaults inside Form Hero */
    .form-hero-block .hs-form,
    .form-hero-block .hs-form-iframe,
    .form-hero-block iframe {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}
