/* EBBI Design 1.0.5 — approved homepage design + subtle hero eyebrow accent */

body.home main h1,
body.home .wp-block-post-content h1 {
    font-family: "Roboto Slab", Georgia, serif !important;
    font-size: clamp(2.35rem, 2.9vw, 2.85rem) !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
}

body.home main h2,
body.home .wp-block-post-content h2 {
    font-family: "Roboto Slab", Georgia, serif !important;
    font-size: clamp(1.75rem, 2.05vw, 2.05rem) !important;
    font-weight: 500 !important;
    line-height: 1.17 !important;
    letter-spacing: -0.015em !important;
}

body.home main h3,
body.home .wp-block-post-content h3 {
    font-family: var(--wp--preset--font-family--manrope), Manrope, Arial, sans-serif !important;
    font-size: clamp(1.35rem, 1.6vw, 1.55rem) !important;
    font-weight: 600 !important;
    line-height: 1.22 !important;
    letter-spacing: -0.01em !important;
}

@media (max-width: 782px) {
    body.home main h1,
    body.home .wp-block-post-content h1 {
        font-size: 2.05rem !important;
        line-height: 1.12 !important;
    }

    body.home main h2,
    body.home .wp-block-post-content h2 {
        font-size: 1.6rem !important;
        line-height: 1.18 !important;
    }

    body.home main h3,
    body.home .wp-block-post-content h3 {
        font-size: 1.3rem !important;
        line-height: 1.22 !important;
    }
}


/* Subtle accent for the small homepage eyebrow immediately above the H1. */
body.home main p:has(+ h1),
body.home .wp-block-post-content p:has(+ h1) {
    color: #246f9f !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

body.home main p:has(+ h1)::before,
body.home .wp-block-post-content p:has(+ h1)::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 2px;
    flex: 0 0 24px;
    border-radius: 999px;
    background: #2f78a8;
}


/* Homepage service cards only. The :has() scope keeps these rules limited to
   the two card containers whose direct heading is an H3. */
body.home main :is(.wp-block-group, .wp-block-column):has(> h3),
body.home .wp-block-post-content :is(.wp-block-group, .wp-block-column):has(> h3) {
    background: #fbfdff !important;
    border: 1px solid #d8e4ec !important;
    border-top: 3px solid #2f78a8 !important;
    border-radius: 18px !important;
    padding: 28px 28px 24px !important;
    box-shadow: 0 10px 28px rgba(34, 74, 104, 0.07) !important;
}

body.home main :is(.wp-block-group, .wp-block-column):has(> h3) > h3,
body.home .wp-block-post-content :is(.wp-block-group, .wp-block-column):has(> h3) > h3 {
    margin-top: 0 !important;
}

body.home main :is(.wp-block-group, .wp-block-column):has(> h3) a,
body.home .wp-block-post-content :is(.wp-block-group, .wp-block-column):has(> h3) a {
    color: #246f9f !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    text-underline-offset: 0 !important;
}

body.home main :is(.wp-block-group, .wp-block-column):has(> h3) a:hover,
body.home main :is(.wp-block-group, .wp-block-column):has(> h3) a:focus-visible,
body.home .wp-block-post-content :is(.wp-block-group, .wp-block-column):has(> h3) a:hover,
body.home .wp-block-post-content :is(.wp-block-group, .wp-block-column):has(> h3) a:focus-visible {
    color: #174f72 !important;
    text-decoration: none !important;
}

@media (max-width: 782px) {
    body.home main :is(.wp-block-group, .wp-block-column):has(> h3),
    body.home .wp-block-post-content :is(.wp-block-group, .wp-block-column):has(> h3) {
        border-radius: 16px !important;
        padding: 22px 22px 20px !important;
        box-shadow: 0 8px 22px rgba(34, 74, 104, 0.06) !important;
    }
}
