/* ============================
   Site-wide Georgia Font System + Mobile Menu Fix
   ============================ */
@import url('https://fonts.googleapis.com/css2?family=Georgia,opsz,wght@0,6..96,400;0,6..96,500;0,6..96,600;0,6..96,700;0,6..96,800;0,6..96,900;1,6..96,400;1,6..96,500;1,6..96,600;1,6..96,700;1,6..96,800;1,6..96,900&display=swap');

/* Base font for entire site */
body,
.main,
p,
div {
    font-family: 'Georgia', serif !important;
    font-weight: 500 !important;
}

/* Header elements - FORCE Georgia on everything in header */
#header,
#header *,
.header,
.header *,
#header .phone,
#header .contact-info,
#header span,
#header div,
#header p {
    font-family: 'Georgia', serif !important;
}

/* Navigation - uniform weight and size - FORCE Georgia */
#header .navigation a,
#header .navigation li a,
#header .navigation ul li a,
.header .navigation a,
.header .navigation li a,
.primary-menu a,
.main-navigation a,
.list-unstyled a,
.menu-main-menu-container a {
    font-family: 'Georgia', serif !important;
    font-size: 18px !important;
    font-weight: 550!important;
    text-transform: none !important;
    line-height: 1.2 !important;
}

/* Navigation responsive sizes */
@media (max-width: 1023px) {
    #header .navigation a,
    #header .navigation li a,
    #header .navigation ul li a {
        font-size: 17px !important;
    }
}

@media (max-width: 767px) {
    #header .navigation a,
    #header .navigation li a,
    #header .navigation ul li a {
        font-size: 15px !important;
    }
}

/* Headings - match Elementor Primary font exactly */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Georgia', serif !important;
    font-weight: 700 !important;
}

/* H1 specific - match Elementor Primary font sizes */
h1 {
    font-size: 35px !important;
    font-weight: 700 !important;
}

@media (max-width: 1023px) {
    h1 {
        font-size: 24px !important;
    }
}

@media (max-width: 767px) {
    h1 {
        font-size: 21px !important;
    }
}

/* Banner descriptions */
#page-banner .description,
#banner-home p {
    font-family: 'Georgia', serif !important;
    font-weight: 800 !important;
}

/* Footer */
#footer,
#footer a,
#footer .text-block,
#footer .text-item,
#footer .copy,
#footer-contact,
#footer-contact a {
    font-family: 'Georgia', serif !important;
    text-transform: none !important;
    font-variant-caps: normal !important;
    font-weight: 400 !important;
    font-size: 18px !important;
}

@media (max-width: 1023px) {
    #footer,
    #footer a,
    #footer .text-block,
    #footer .text-item,
    #footer .copy,
    #footer-contact,
    #footer-contact a {
        font-size: 17px !important;
    }
}

@media (max-width: 767px) {
    #footer,
    #footer a,
    #footer .text-block,
    #footer .text-item,
    #footer .copy,
    #footer-contact,
    #footer-contact a {
        font-size: 17px !important;
    }
}

/* ============================
   Banner Taglines
   ============================ */
@media (min-width: 1024px) {
    #banner-home p {
        max-width: none !important;
        white-space: nowrap;
    }
    #page-banner .description {
        white-space: nowrap;
        max-width: none !important;
        padding-left: 0px;
        padding-right: 40px;
    }
}

@media (max-width: 1023px) {
    #banner-home p {
        max-width: 100% !important;
        white-space: normal;
    }
    #page-banner .description {
        white-space: normal;
        max-width: 100% !important;
        padding-left: 20px;
        padding-right: 20px;
    }
}
/* Add space between banner heading and subtitle */
#banner-home .text-block h1 {
    margin-bottom: 40px !important;
}