body {
    margin: 0;
    font-family: Arial, sans-serif;
    color: #222;
    background-color: white;
}
section p {
    color: #333333;
}

header {
    background-color: #001C42;
    color: white;
    padding: 25px;
    text-align: center;
}

header h1 {
    margin: 0;
    font-size: 75px !important;
    font-family: "Cormorant Garamond", serif;
    font-weight: 100;
}

nav a {
    color: white;
    text-decoration: none;
    margin: 0 15px;
    font-size: 18px;
}

nav a:hover {
    text-decoration: underline;
}

section {
    background-color: white;
    padding: 70px 10%;
    text-align: center;
}

#about p {
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.8;
}

h1 {
    font-size: 36px;
}

h2 {
    font-family: Georgia, serif;
    font-size: 34px;
    font-weight: 500;
    color: #001C42;
    margin-bottom: 25px;
}

h3 {
    font-family: Georgia, serif;
    font-size: 28px;
    font-weight: 600;
    margin-top: 40px;
    margin-bottom: 15px;
}
#services p {
    max-width: 800px;
    margin: 0 auto;
}

p {
    font-family: Arial, sans-serif;
    font-size: 17px;
    line-height: 1.8;
    color: #333333;
}

button {
    background-color: #FFC84A;
    color: #001C42;
    border: none;
    padding: 15px 32px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    border-radius: 6px;
    transition: 0.3s;
}

button:hover {
    background-color: #e6ae32;
    color: #001C42;
}

header img {
    width: 170px;
    height: auto;
    display: block;
    margin: 0 auto 15px auto;
}#contact {
    background-color: #f5f7fa;
    padding: 70px 10%;
    text-align: center;
}

#contact p {
    max-width: 800px;
    margin: 15px auto;
}

#contact button {
    margin-top: 15px;
}
#home {
    background-color: #f5f7fa;
    padding: 90px 10%;
    text-align: center;
}

#home p {
    max-width: 750px;
    margin: 0 auto 20px auto;
}
#home h2 {
    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    font-weight: 600;
    color: #001C42;
    margin-bottom: 20px;
}
.button {
    display: inline-block;
    background-color: #FFC84A;
    color: #001C42;
    text-decoration: none;
    padding: 15px 32px;
    font-size: 16px;
    font-weight: bold;
    border-radius: 6px;
    transition: 0.3s;
}

.button:hover {
    background-color: #001C42;
    color: white;
}
#services h3 {
    max-width: 800px;
    margin: 40px auto 15px auto;
}
.service-card {
    background-color: #ffffff;
    max-width: 800px;
    margin: 30px auto;
    padding: 30px;
    border: 1px solid #e1e5ea;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}
.service-card h3 {
    color: #001C42;
    border-bottom: 2px solid #FFC84A;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

.service-card:hover {
    transform: translateY(-5px);
}
#contact h2 {
    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    font-weight: 600;
    color: #001C42;
    margin-bottom: 20px;
}
#quote-form {
    background-color: white;
    padding: 70px 10%;
    text-align: center;
}

#quote-form form {
    max-width: 650px;
    margin: 30px auto 0 auto;
    text-align: left;
}

#quote-form label {
    display: block;
    margin-top: 20px;
    margin-bottom: 8px;
    font-weight: 600;
    color: #001C42;
}

#quote-form input,
#quote-form select,
#quote-form textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #d5dbe1;
    border-radius: 5px;
    font-size: 16px;
    font-family: Arial, sans-serif;
    box-sizing: border-box;
}

#quote-form textarea {
    resize: vertical;
}

#quote-form button {
    margin-top: 25px;
}
#quote-form h2 {
    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    font-weight: 600;
    color: #001C42;
    margin-bottom: 20px;
}
#quote-form input:focus,
#quote-form select:focus,
#quote-form textarea:focus {
    outline: none;
    border-color: #001C42;
    box-shadow: 0 0 0 2px rgba(255, 200, 74, 0.35);
}
#quote-form button {
    background-color: #FFC84A;
    color: #001C42;
    border: none;
    padding: 15px 32px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    border-radius: 6px;
    transition: 0.3s;
}

#quote-form button:hover {
    background-color: #001C42;
    color: white;
}
#quote-form form {
    background-color: #f5f7fa;
    padding: 35px;
    border-radius: 8px;
    border: 1px solid #e1e5ea;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
header {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

header img {
    width: 90px;
    margin: 0;
}

header nav {
    width: 100%;
}

@media (max-width: 600px) {
    header h1 {
        font-size: 32px !important;
    }

    nav a {
        display: block;
        margin: 10px 0;
        font-size: 16px;
    }

    section {
        padding: 50px 20px;
    }

    #home h2,
    #contact h2,
    #quote-form h2 {
        font-size: 34px;
    }

    .service-card {
        padding: 20px;
    }
}
@media (max-width: 600px) {
    .header-top {
        flex-direction: column;
        gap: 15px;
    }

    .header-actions {
        flex-direction: column;
    }

    header nav {
        flex-direction: column;
        gap: 15px;
    }

    .dropdown-menu {
        position: static;
        width: 100%;
        box-shadow: none;
    }

    .dropdown:hover .dropdown-menu {
        display: block;
    }
}
.home-tagline {
    color: #001C42;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
#why-us {
    background-color: #f5f7fa;
    padding: 70px 10%;
    text-align: center;
}

#why-us h2 {
    margin-bottom: 40px;
}

.why-card {
    background-color: white;
    max-width: 800px;
    margin: 25px auto;
    padding: 25px 30px;
    border: 1px solid #e1e5ea;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.why-card h3 {
    color: #001C42;
    margin-top: 0;
    border-bottom: 2px solid #FFC84A;
    padding-bottom: 10px;
}

.why-card p {
    max-width: 650px;
    margin: 0 auto;
}
footer {
    background-color: #001C42;
    color: white;
    text-align: center;
    padding: 25px;
}

footer p {
    color: white;
    margin: 0;
    font-size: 15px;
}

#mission {
    background-color: white;
    padding: 70px 10%;
    text-align: center;
}

#mission h2 {
    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    font-weight: 600;
    color: #001C42;
    margin-bottom: 20px;
}

#mission p {
    max-width: 750px;
    margin: 0 auto;
    line-height: 1.8;
}
.back-to-top {
    display: inline-block;
    background-color: #FFC84A;
    color: #001C42;
    text-decoration: none;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: bold;
    border-radius: 6px;
    margin: 20px auto;
    transition: 0.3s;
}

.back-to-top:hover {
    background-color: #001C42;
    color: white;
}
/* New Header Navigation */

.header-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.header-top img {
    width: 90px;
    height: auto;
    margin: 0;
}

.header-top h1 {
    margin: 0;
    font-size: 32px;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

.header-actions a {
    color: white;
    text-decoration: none;
    font-weight: 600;
}

.talk-button {
    background-color: #FFC84A;
    color: #001C42 !important;
    padding: 12px 24px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
}

header nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    margin-top: 20px;
}

header nav a {
    color: white;
    text-decoration: none;
    font-size: 17px;
}

.dropdown {
    position: relative;
}

.dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #001C42;
    min-width: 240px;
    padding: 10px 0;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    z-index: 1000;
}

.dropdown-menu a {
    display: block;
    padding: 12px 18px;
    font-size: 15px;
    text-align: left;
}

.dropdown-menu a:hover {
    background-color: #FFC84A;
    color: #001C42;
}

.dropdown:hover .dropdown-menu {
    display: block;
}
/* Polished Solution Cards */

#services,
#solutions {
    text-align: center;
}

#services > p,
#solutions > p {
    max-width: 700px;
    margin: 0 auto 35px auto;
}

#services .service-card,
#solutions .service-card {
    display: inline-block;
    vertical-align: top;
    width: 42%;
    min-height: 200px;
    margin: 12px;
    padding: 25px;
    box-sizing: border-box;
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

#services .service-card h3,
#solutions .service-card h3 {
    color: #001C42;
    margin-top: 0;
}

#services .service-card p,
#solutions .service-card p {
    line-height: 1.6;
}
#services .service-card,
#solutions .service-card {
    height: 200px;
    min-height: 200px;
    overflow: hidden;
}
@media (max-width: 600px) {

    #services .service-card,
    #solutions .service-card {
        width: 90%;
        height: auto;
        min-height: 0;
        margin: 10px auto;
    }

}
button,
.button {
    display: inline-block;
    background-color: #FFC84A;
    color: #001C42;
    padding: 12px 24px;
    border: none;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: 0.2s ease;
}

button:hover,
.button:hover {
    background-color: #e6ae32;
    color: #001C42;
}
#services .service-card,
#solutions .service-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#services .service-card:hover,
#solutions .service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}
section > h2 {
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

section > h2::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 45px;
    height: 3px;
    background-color: #FFC84A;
    transform: translateX(-50%);
    border-radius: 2px;
}
#home {
    padding: 90px 20px;
}

#home .home-tagline {
    color: #FFC84A;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

#home h2 {
    font-size: 48px;
    margin-bottom: 20px;
}

#home p:not(.home-tagline) {
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.7;
}
html {
    min-height: 100%;
}

body {
    min-height: 100vh;
    margin: 0;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
}

#mission {
    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.82),
            rgba(255, 255, 255, 0.82)
        ),
        url("https://images.unsplash.com/photo-1763631032301-ae3cd9a2212e?auto=format&fit=crop&fm=jpg&q=80&w=2000");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    text-align: center;
}
body .tools-page header .header-top h1 {
    font-size: 75px !important;
    font-family: "Cormorant Garamond", serif;
    font-weight: 500;
    margin: 0;
}

/* Tools for Life Page Sections */

.tools-page main section {
    padding: 70px 10%;
    text-align: center;
}

.tools-page main section:nth-child(even) {
    background-color: #f5f7fa;
}

.tools-page main section:nth-child(odd) {
    background-color: #ffffff;
}

.tools-page main section h2 {
    color: #001C42;
    margin-bottom: 20px;
}

.tools-page main section h3 {
    color: #001C42;
    margin-top: 30px;
}

/* Tools for Life - Content Cards */

.tools-page .tools-card {
    background-color: #ffffff;
    max-width: 900px;
    margin: 0 auto;
    padding: 35px;
    border: 1px solid #e1e5ea;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    box-sizing: border-box;
}

.tools-page .tools-card h2 {
    color: #001C42;
    margin-top: 0;
    margin-bottom: 20px;
}

.tools-page .tools-card p {
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.8;
    padding-bottom: 20px;
    border-bottom: 2px solid #FFC84A;
}

.tools-page .tools-card p {
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.8;
}

@media (max-width: 600px) {
    .tools-page .tools-card {
        padding: 24px 18px;
    }
}
/* Solutions Page Styling */

.solutions-page main section {
    padding: 35px;
    text-align: center;
    background-color: #ffffff;
    max-width: 900px;
    margin: 40px auto;
    border: 1px solid #e1e5ea;
    border-bottom: 3px solid #FFC84A;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    box-sizing: border-box;
}

.solutions-page main section h2 {
    color: #001C42;
    margin-top: 0;
    margin-bottom: 20px;
}

.solutions-page main section p {
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.8;
}

@media (max-width: 600px) {
    .solutions-page main section {
        margin: 25px 6%;
        padding: 24px 18px;
    }
}
/* Learn More Page Styling */
.learn-more-page {
    width: 100%;
    overflow: hidden;
    background-color: #f5f7fa;
}

.learn-more-page .learn-more-header {
    background-color: #001C42;
    padding: 20px 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    flex-wrap: wrap;
    box-sizing: border-box;
}

.learn-more-page .learn-more-brand {
    display: flex;
    align-items: center;
    gap: 15px;
    color: #FFC84A;
    text-decoration: none;
    font-family: "Cormorant Garamond", serif;
    font-size: 28px;
}

.learn-more-page .learn-more-brand img {
    width: 65px;
    height: auto;
}

.learn-more-page .learn-more-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    flex-wrap: wrap;
}

.learn-more-page .learn-more-nav a {
    color: white;
    text-decoration: none;
    font-size: 15px;
}

.learn-more-page .learn-more-nav a:hover {
    color: #FFC84A;
}

.learn-more-page .learn-more-intro {
    padding: 60px 8%;
    text-align: center;
    background-color: #001C42;
    color: white;
    box-sizing: border-box;
}

.learn-more-page .learn-more-intro h1 {
    color: #FFC84A;
    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    margin-top: 0;
}
.learn-more-page .learn-more-intro p {
    max-width: 750px;
    margin: 0 auto;
    line-height: 1.8;
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 500;
}

.learn-more-page .learn-more-section {
    max-width: 900px;
    margin: 35px auto;
    padding: 35px;
    background-color: white;
    border: 1px solid #e1e5ea;
    border-bottom: 3px solid #FFC84A;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    text-align: center;
    box-sizing: border-box;
}

.learn-more-page .learn-more-section h2,
.learn-more-page .learn-more-contact h2 {
    color: #001C42;
    margin-top: 0;
    margin-bottom: 20px;
}

.learn-more-page .learn-more-section p,
.learn-more-page .learn-more-contact p {
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.8;
}

.learn-more-page .learn-more-contact {
    padding: 50px 8%;
    background-color: #ffffff;
    text-align: center;
    box-sizing: border-box;
}

.learn-more-page .learn-more-button {
    display: inline-block;
    margin-top: 25px;
    padding: 12px 28px;
    background-color: #001C42;
    color: white;
    text-decoration: none;
    border: 2px solid #001C42;
    border-radius: 6px;
    font-weight: bold;
}

.learn-more-page .learn-more-button:hover {
    background-color: #FFC84A;
    border-color: #FFC84A;
    color: #001C42;
}

.learn-more-page .learn-more-footer {
    padding: 20px;
    background-color: #001C42;
    color: white;
    text-align: center;
}

.learn-more-page .learn-more-footer p {
    margin: 0;
    font-size: 14px;
}

@media (max-width: 600px) {
    .learn-more-page .learn-more-header {
        flex-direction: column;
        padding: 20px;
    }

    .learn-more-page .learn-more-brand {
        font-size: 24px;
    }

    .learn-more-page .learn-more-nav {
        gap: 15px;
    }

    .learn-more-page .learn-more-intro {
        padding: 40px 20px;
    }

    .learn-more-page .learn-more-intro h1 {
        font-size: 32px;
    }

    .learn-more-page .learn-more-section {
        margin: 25px 6%;
        padding: 24px 18px;
    }
}
/* Remove extra space below Learn More footer */

html:has(.learn-more-page),
body:has(.learn-more-page) {
    margin: 0;
    min-height: 100%;
}

body:has(.learn-more-page) .learn-more-page {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

body:has(.learn-more-page) .learn-more-page main {
    flex: 1;
}

/* Compact mobile layout: new pages only */
@media screen and (max-width: 600px) {

    /* Shared mobile typography */
    .tools-page h1,
    .solutions-page h1 {
        font-size: 30px !important;
        line-height: 1.2;
    }

    .tools-page h2,
    .solutions-page h2,
    .learn-more-page h2 {
        font-size: 26px;
        line-height: 1.25;
        margin-bottom: 16px;
    }

    .tools-page h3,
    .solutions-page h3,
    .learn-more-page h3 {
        font-size: 20px;
        line-height: 1.3;
        margin-top: 22px;
    }

    .tools-page p,
    .solutions-page p,
    .learn-more-page p {
        font-size: 15px;
        line-height: 1.65;
    }

    /* Tools for Life header */
    .tools-page header {
        padding: 16px 12px;
        gap: 12px;
    }

    .tools-page header .header-top {
        flex-direction: column;
        gap: 10px;
        width: 100%;
    }

    .tools-page header .header-top img {
        width: 55px;
    }

    .tools-page header .header-top h1 {
        font-size: 30px !important;
        line-height: 1.15;
        text-align: center;
    }

    /* Compact navigation on Tools and Solutions */
    .tools-page header nav,
    .solutions-page header nav {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 14px;
        margin-top: 12px;
    }

    .tools-page header nav a,
    .solutions-page header nav a {
        font-size: 13px;
        margin: 0;
    }

    /* Tools for Life content */
    .tools-page main section {
        padding: 30px 14px;
    }

    .tools-page .tools-card {
        width: 100%;
        padding: 18px 14px;
        margin: 0 auto;
    }

    /* Solutions content cards */
    .solutions-page main {
        padding: 0 12px;
        box-sizing: border-box;
    }

    .solutions-page main section {
        width: 100%;
        max-width: 100%;
        margin: 16px auto;
        padding: 20px 14px;
    }

    /* Learn More header */
    .learn-more-page .learn-more-header {
        padding: 14px 12px;
        gap: 12px;
    }

    .learn-more-page .learn-more-brand {
        font-size: 21px;
        line-height: 1.2;
        gap: 8px;
    }

    .learn-more-page .learn-more-brand img {
        width: 45px;
    }

    .learn-more-page .learn-more-nav {
        gap: 8px 12px;
    }

    .learn-more-page .learn-more-nav a {
        font-size: 13px;
    }

    .learn-more-page .learn-more-intro {
        padding: 28px 16px;
    }

    .learn-more-page .learn-more-intro h1 {
        font-size: 28px;
        line-height: 1.2;
    }

    .learn-more-page .learn-more-intro p {
        font-size: 15px;
    }

    .learn-more-page .learn-more-section {
        width: calc(100% - 24px);
        max-width: 100%;
        margin: 16px auto;
        padding: 20px 14px;
    }

    .learn-more-page .learn-more-section p {
        padding-bottom: 0;
    }

    .learn-more-page .learn-more-button {
        max-width: 100%;
        padding: 11px 14px;
        font-size: 14px;
        box-sizing: border-box;
    }

    .learn-more-page .learn-more-contact {
        padding: 30px 16px;
    }
}
/* Tools for Life: smaller mobile layout */
@media screen and (max-width: 600px) {

    body .tools-page header .header-top h1 {
        font-size: 28px !important;
        line-height: 1.2;
    }

    body .tools-page header {
        padding: 12px 10px;
    }

    body .tools-page header .header-top {
        gap: 8px;
    }

    body .tools-page header .header-top img {
        width: 45px;
        height: auto;
    }

    body .tools-page header nav a {
        font-size: 12px;
    }

    body .tools-page main h2 {
        font-size: 23px !important;
        line-height: 1.25;
    }

    body .tools-page main h3 {
        font-size: 19px !important;
        line-height: 1.3;
    }

    body .tools-page main p {
        font-size: 14px !important;
        line-height: 1.55;
    }

    body .tools-page main section {
        padding: 24px 12px;
    }

    body .tools-page .tools-card {
        padding: 16px 12px;
    }
}

/* Solutions Page: Match Tools for Life on Mobile */
@media screen and (max-width: 600px) {

    /* Match the Tools for Life header */
    body .solutions-page header {
        padding: 12px 10px;
        gap: 8px;
    }

    body .solutions-page header .header-top {
        flex-direction: column;
        align-items: center;
        gap: 8px;
        width: 100%;
    }

    body .solutions-page header .header-top img {
        width: 45px;
        height: auto;
    }

    body .solutions-page header .header-top h1 {
        font-size: 28px !important;
        line-height: 1.2;
        text-align: center;
    }

    /* Match the Tools for Life navigation */
    body .solutions-page header nav {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 14px;
        margin-top: 12px;
        width: 100%;
    }

    body .solutions-page header nav a {
        font-size: 12px;
        margin: 0;
    }

    /* Match mobile headings and paragraph text */
    body .solutions-page main h2 {
        font-size: 23px !important;
        line-height: 1.25;
    }

    body .solutions-page main h3 {
        font-size: 19px !important;
        line-height: 1.3;
    }

    body .solutions-page main p {
        font-size: 14px !important;
        line-height: 1.55;
    }

    /* Match the Tools for Life section spacing */
    body .solutions-page main section {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        padding: 24px 12px;
        box-sizing: border-box;
    }

}

/* Compact Navy Header on Mobile Only */
@media screen and (max-width: 600px) {

    body .tools-page header,
    body .solutions-page header {
        padding: 8px 10px;
        gap: 5px;
    }

    body .tools-page header .header-top,
    body .solutions-page header .header-top {
        gap: 5px;
    }

    body .tools-page header .header-top img,
    body .solutions-page header .header-top img {
        width: 38px;
    }

    body .tools-page header .header-top h1,
    body .solutions-page header .header-top h1 {
        font-size: 25px !important;
        line-height: 1.1;
    }

    body .tools-page header nav,
    body .solutions-page header nav {
        margin-top: 6px;
        gap: 5px 12px;
    }

    body .tools-page header nav a,
    body .solutions-page header nav a {
        font-size: 12px;
    }

}

/* About Us: Add space between paragraph text and gold underline */
.tools-page #about .tools-card p,
.tools-page #tupelo-story .tools-card p,
.tools-page #team .tools-card p {
    padding-bottom: 28px;
}

/* About Us: Keep the gold underline directly below each paragraph */
.tools-page #about .tools-card p,
.tools-page #tupelo-story .tools-card p,
.tools-page #team .tools-card p {
    padding-bottom: 12px;
    margin-bottom: 20px;
    border-bottom: 2px solid #FFC84A;
}

/* About Us: Remove the underline from the final paragraph in each box */
.tools-page #about .tools-card p:last-of-type,
.tools-page #tupelo-story .tools-card p:last-of-type,
.tools-page #team .tools-card p:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

/* Insights page: Fix heading styles without changing other pages */
.insights-page main h1,
.insights-page main h2 {
    font-family: 'Cormorant Garamond', serif;
    color: #001C42;
    text-align: center;
    line-height: 1.2;
}

.insights-page main h1 {
    font-size: 42px;
    margin: 0 0 24px;
}

.insights-page main h2 {
    font-size: 32px;
    margin: 0 0 24px;
}

@media screen and (max-width: 600px) {
    .insights-page main h1 {
        font-size: 32px;
    }

    .insights-page main h2 {
        font-size: 26px;
    }
}

/* Insights Page: Restore the navigation layout */
body .tools-page.insights-page header {
    display: block;
    background-color: #001C42;
    color: white;
    padding: 20px 25px;
    text-align: center;
}

body .tools-page.insights-page .header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
}

body .tools-page.insights-page .brand {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #FFC84A;
    text-decoration: none;
    font-family: "Cormorant Garamond", serif;
    font-size: 28px;
}

body .tools-page.insights-page .brand img {
    width: 65px;
    height: auto;
    margin: 0;
}

body .tools-page.insights-page .header-phone,
body .tools-page.insights-page .header-cta {
    color: white;
    text-decoration: none;
    font-size: 15px;
    margin: 0;
}

body .tools-page.insights-page .header-cta {
    background-color: #FFC84A;
    color: #001C42;
    padding: 10px 18px;
    border-radius: 6px;
    font-weight: bold;
}

body .tools-page.insights-page .main-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 24px;
    margin-top: 18px;
    width: 100%;
}

body .tools-page.insights-page .main-nav .nav-item {
    position: relative;
}

body .tools-page.insights-page .main-nav .nav-item > a {
    display: inline-block;
    color: white;
    text-decoration: none;
    font-size: 15px;
    margin: 0;
    padding: 10px 0;
    white-space: nowrap;
}

body .tools-page.insights-page .main-nav .dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 230px;
    background-color: #001C42;
    padding: 8px 0;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    z-index: 1000;
    text-align: left;
}

body .tools-page.insights-page .main-nav .dropdown a {
    display: block;
    color: white;
    text-decoration: none;
    font-size: 14px;
    margin: 0;
    padding: 10px 16px;
    white-space: normal;
}

body .tools-page.insights-page .main-nav .dropdown a:hover {
    background-color: #FFC84A;
    color: #001C42;
}

body .tools-page.insights-page .main-nav .nav-item:hover .dropdown,
body .tools-page.insights-page .main-nav .nav-item:focus-within .dropdown {
    display: block;
}

/* Insights & Education - Match Content Heading Sizes */
.tools-page.insights-page main .tools-card h1 {
    font-size: 42px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.tools-page.insights-page main .tools-card h2 {
    font-size: 32px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}


@media screen and (max-width: 600px) {
    body .tools-page.insights-page header {
        padding: 10px;
    }

    body .tools-page.insights-page .header-inner {
        flex-direction: column;
        gap: 8px;
    }

    body .tools-page.insights-page .brand {
        flex-direction: column;
        gap: 5px;
        font-size: 24px;
    }

    body .tools-page.insights-page .brand img {
        width: 38px;
    }

    body .tools-page.insights-page .main-nav {
        gap: 4px 12px;
        margin-top: 8px;
    }

    body .tools-page.insights-page .main-nav .nav-item > a {
        font-size: 12px;
        padding: 5px 0;
    }

    body .tools-page.insights-page main h1 {
        font-size: 30px !important;
    }

    body .tools-page.insights-page main h2 {
        font-size: 23px !important;
    }
}

/* Insights page: Keep Call Us and Let's Talk together */
body .tools-page.insights-page .header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    margin-left: auto;
}

body .tools-page.insights-page .header-phone,
body .tools-page.insights-page .header-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

@media screen and (max-width: 600px) {
    body .tools-page.insights-page .header-actions {
        justify-content: center;
        margin: 0;
        gap: 12px;
    }
}

/* Insights page: Move gold underlines directly under the first paragraph */
body .tools-page.insights-page .tools-card p {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}

body .tools-page.insights-page .tools-card p:first-of-type {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 2px solid #FFC84A;
}

/* Tupelo: Contact section email */
.contact-email {
    text-align: center;
    margin: 0 0 24px;
    color: #001C42;
}

.contact-email a {
    color: #001C42;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: #FFC84A;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}

.contact-email a:hover {
    color: #8A6410;
}

/* Tupelo: Footer email */
.site-footer .footer-email {
    margin: 0 0 12px;
    color: white;
}

.site-footer .footer-email a {
    color: #FFC84A;
    text-decoration: none;
}

.site-footer .footer-email a:hover {
    text-decoration: underline;
}

/* Mortgage Protection: Remove the unwanted paragraph underline */
.tools-page #mortgage-protection p {
    border-bottom: none;
}

/* Tupelo Financial Group - Warm Accent Color */
:root {
    --tupelo-navy: #001C42;
    --tupelo-gold: #FFC84A;
    --tupelo-sage: #A8B5A0;
}


/* Homepage - Soft Sage Accent for Conversation Form */
body:has(#quote-form) #quote-form {
    background-color: #F0F3ED;
}

/* Homepage - Soft Sage Accent Across Main Sections */
body:has(#home) main section:not(#mission) {
    background-color: #F0F3ED;
}

/* Solutions Page - Soft Sage Green Background */
body:has(.solutions-page) .solutions-page {
    background-color: #F0F3ED;
}


/* About Us Page - Sage Green Section Backgrounds */
body:has(#tupelo-story) .tools-page main section {
    background-color: #F0F3ED !important;
}

/* Insights Page - Soft Sage Green Background */
body .tools-page.insights-page main section.tools-section {
    background-color: #F0F3ED !important;
}


/* Tupelo Financial Group - Washed-Out Tupelo Tree */
body:has(#tupelo-story) #tupelo-story {
    position: relative;
    overflow: hidden;
    background-color: #F0F3ED !important;

    background-image:
        linear-gradient(
            rgba(240, 243, 237, 0.78),
            rgba(240, 243, 237, 0.78)
        ),
        url("https://upload.wikimedia.org/wikipedia/commons/6/6d/Nyssa_sylvatica_tree.jpg");

    background-size: cover;
    background-position: center 40%;
    background-repeat: no-repeat;
}

/* Keep the story card readable above the image */
body:has(#tupelo-story) #tupelo-story .tools-card {
    position: relative;
    z-index: 1;
}

/* Tools for Life - Soft Sage Green Accent */
body:has(#family-protection) .tools-page main section {
    background-color: #F0F3ED !important;
}

/* Tools for Life - Restore Sage Background and White Cards */
body:has(#family-protection) .tools-page {
    background-color: #F0F3ED !important;
}

body:has(#family-protection) .tools-page main section {
    background-color: #F0F3ED !important;
}

body:has(#family-protection) .tools-page .tools-card {
    background-color: #FFFFFF !important;
    max-width: 900px;
    margin: 0 auto;
    padding: 35px;
    border: 1px solid #e1e5ea;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    box-sizing: border-box;
}

/* Insights & Education - Bolder Headings */
.insights-page main h1,
.insights-page main h2,
.insights-page main h3,
.insights-page main h4 {
    font-weight: 700;
}

/* Insights Page - Make All Three Headings Match */
.insights-page main .tools-card h1,
.insights-page main .tools-card h2 {
    font-size: 23px !important;
    font-weight: 700 !important;
}


/* Landing Page - Soft Sage Green Section Backgrounds */
body:has(#home) > #home,
body:has(#home) > #about,
body:has(#home) > #contact {
    background-color: #F0F3ED !important;
}

/* Keep Our Mission and Request a Quote unchanged */
body:has(#home) > #mission {
    background-color: white;
}

body:has(#home) > #quote-form {
    background-color: #F0F3ED !important;
}

/* Homepage - About Section Spacing */
body:has(#home) #about {
    padding-top: 90px;
    padding-bottom: 90px;
}

body:has(#home) #about h2 {
    margin-bottom: 30px;
}

body:has(#home) #about p {
    margin-bottom: 24px;
}
/* Insights & Education - Match All Mobile Heading Sizes */
@media screen and (max-width: 600px) {
    body .tools-page.insights-page main h1,
    body .tools-page.insights-page main h2 {
        font-size: 30px !important;
        line-height: 1.25;
        font-weight: 700 !important;
    }
}

/* Landing Page Footer - Improve Text Contrast */
body:has(#home) footer a,
body:has(#home) footer a:visited,
body:has(#home) footer p,
body:has(#home) footer span {
    color: #FFC84A !important;
}

/* Tupelo Financial Group - Consistent Gold Footer on Every Page */
footer a,
footer a:visited,
footer p,
footer span {
    color: #FFC84A !important;
}
/* Insights Page - Center Logo and Business Name Without Overlapping Buttons */

body .tools-page.insights-page .header-inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 75px;
}

body .tools-page.insights-page .header-inner .brand {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 0 auto;
    text-align: center;
}

body .tools-page.insights-page .header-inner .brand img {
    width: 65px;
    height: auto;
    margin: 0;
    flex-shrink: 0;
}

body .tools-page.insights-page .header-inner .header-actions {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0;
}

@media screen and (max-width: 900px) {
    body .tools-page.insights-page .header-inner {
        flex-direction: column;
        gap: 12px;
    }

    body .tools-page.insights-page .header-inner .brand {
        margin: 0;
    }

    body .tools-page.insights-page .header-inner .header-actions {
        position: static;
        transform: none;
        justify-content: center;
    }
}

/* Insights & Education — Align logo and business name */

body .tools-page.insights-page header .header-top {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 15px;
    width: 100%;
    box-sizing: border-box;
}

body .tools-page.insights-page header .header-top img {
    width: 65px;
    height: auto;
    display: block;
    margin: 0;
    flex-shrink: 0;
}

body .tools-page.insights-page header .header-top h1 {
    font-family: "Cormorant Garamond", serif;
    font-size: 75px !important;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
    text-align: left;
}

body .tools-page.insights-page header .header-actions {
    display: flex;
    align-items: center;
    margin-left: 20px;
    flex-shrink: 0;
}

/* Insights header on mobile */
@media screen and (max-width: 600px) {
    body .tools-page.insights-page header .header-top {
        flex-direction: column;
        gap: 8px;
    }

    body .tools-page.insights-page header .header-top img {
        width: 45px;
    }

    body .tools-page.insights-page header .header-top h1 {
        font-size: 28px !important;
        line-height: 1.2;
        text-align: center;
    }

    body .tools-page.insights-page header .header-actions {
        margin-left: 0;
        justify-content: center;
    }
}

/* Tupelo Financial Group — Consistent Business Name Across Main Pages */

body .tools-page header .header-top h1,
body .solutions-page header .header-top h1,
body header .header-top h1 {
    font-family: "Cormorant Garamond", serif;
    font-size: 75px !important;
    font-weight: 500;
    line-height: 1.15;
}

/* Keep business name readable on mobile across all main pages */
@media screen and (max-width: 600px) {
    body .tools-page header .header-top h1,
    body .solutions-page header .header-top h1,
    body header .header-top h1 {
        font-size: 28px !important;
        line-height: 1.2;
        text-align: center;
    }
}

/* Match Main Page Header Height to Insights & Education */

body .tools-page:not(.insights-page) header,
body .solutions-page header {
    padding-top: 20px;
    padding-bottom: 20px;
}

/* Keep the business name and logo aligned */
body .tools-page:not(.insights-page) header .header-top,
body .solutions-page header .header-top {
    align-items: center;
}

/* Keep the navigation spacing consistent */
body .tools-page:not(.insights-page) header nav,
body .solutions-page header nav {
    margin-top: 20px;
}
/* Match Main Page Headers to Insights & Education */

body .tools-page:not(.insights-page) header,
body .solutions-page header,
body > header {
    display: block;
    background-color: #001C42;
    color: white;
    padding: 20px 25px;
    text-align: center;
    gap: 0;
}
/* Main Pages — Align Logo and Business Name */

body .tools-page:not(.insights-page) header .header-top,
body .solutions-page header .header-top {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    box-sizing: border-box;
}

body .tools-page:not(.insights-page) header .header-top img,
body .solutions-page header .header-top img {
    width: 65px;
    height: auto;
    display: block;
    margin: 0;
    flex-shrink: 0;
}

body .tools-page:not(.insights-page) header .header-top h1,
body .solutions-page header .header-top h1 {
    margin: 0;
    text-align: left;
    line-height: 1.15;
}

@media screen and (max-width: 600px) {
    body .tools-page:not(.insights-page) header .header-top,
    body .solutions-page header .header-top {
        flex-direction: column;
        gap: 8px;
    }

    body .tools-page:not(.insights-page) header .header-top img,
    body .solutions-page header .header-top img {
        width: 45px;
    }

    body .tools-page:not(.insights-page) header .header-top h1,
    body .solutions-page header .header-top h1 {
        font-size: 28px !important;
        text-align: center;
        line-height: 1.2;
    }
}

/* Fine-tune Insights & Education Business Name */
body .tools-page.insights-page header .header-top h1 {
    letter-spacing: -0.5px !important;
    word-spacing: 0 !important;
}

/* Bring Let's Talk Closer to the Business Name on Insights */
body .tools-page.insights-page header .header-top {
    column-gap: 0;
}

body .tools-page.insights-page header .header-actions {
    margin-left: 8px;
}

/* Match Insights Heading Size to Other Main Pages */
body .tools-page.insights-page header .header-top h1 {
    font-size: 76px !important;
}

@media screen and (max-width: 600px) {
    body .tools-page.insights-page header .header-top h1 {
        font-size: 28px !important;
    }
}

/* Landing Page — Match Main Page Headers */
body > header {
    background-color: #001C42;
    color: white;
    padding: 20px 25px;
    text-align: center;
    display: block;
}

body > header .header-top {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    box-sizing: border-box;
}

body > header .header-top img {
    width: 65px;
    height: auto;
    display: block;
    margin: 0;
    flex-shrink: 0;
}

body > header .header-top h1 {
    font-family: "Cormorant Garamond", serif;
    font-size: 75px !important;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

body > header .header-actions {
    display: flex;
    align-items: center;
    margin-left: 8px;
    flex-shrink: 0;
}

@media screen and (max-width: 600px) {
    body > header {
        padding: 10px;
    }

    body > header .header-top {
        flex-direction: column;
        gap: 8px;
    }

    body > header .header-top img {
        width: 45px;
    }

    body > header .header-top h1 {
        font-size: 28px !important;
        line-height: 1.2;
        text-align: center;
    }

    body > header .header-actions {
        margin-left: 0;
        justify-content: center;
    }
}

/* Match Logo-to-Heading Spacing on Home and Insights */
body > header .header-top {
    column-gap: 15px;
}

body .tools-page.insights-page header .header-top {
    column-gap: 15px;
}

/* Gold Let's Talk Box — Shared Main Pages */
.learn-more-contact {
    background-color: #FFC84A;
    color: #001C42;
    padding: 35px 25px;
    margin: 40px auto;
    max-width: 1000px;
    border-radius: 10px;
    text-align: center;
    box-sizing: border-box;
}

.learn-more-contact h2 {
    color: #001C42;
    margin-top: 0;
}

.learn-more-contact p {
    color: #001C42;
    max-width: 700px;
    margin: 0 auto 20px;
    line-height: 1.7;
}

.learn-more-contact .learn-more-button {
    display: inline-block;
    background-color: #001C42;
    color: white;
    padding: 12px 25px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.2s ease;
}

.learn-more-contact .learn-more-button:hover {
    background-color: #123761;
}

/* Final Fix: Match Insights Header Button Spacing */
body .tools-page.insights-page header .header-top {
    column-gap: 12px !important;
}

body .tools-page.insights-page header .header-actions {
    margin-left: 0 !important;
}

/* Match Homepage Header Button Spacing */
body > header .header-top {
    column-gap: 15px !important;
}

body > header .header-actions {
    margin-left: -3px !important;
}

/* Gold Contact Boxes Across All Pages */
.learn-more-contact {
    background-color: #FFC84A !important;
    color: #001C42 !important;
}

.learn-more-contact h2,
.learn-more-contact p {
    color: #001C42 !important;
}

.learn-more-contact .learn-more-button {
    background-color: #001C42 !important;
    color: #FFC84A !important;
    border: 2px solid #001C42;
}

.learn-more-contact .learn-more-button:hover {
    background-color: transparent !important;
    color: #001C42 !important;
}

/* Tools for Life - Gold Contact Box */
.tools-page .learn-more-contact {
    background-color: #FFC84A !important;
    color: #001C42 !important;
    max-width: 1000px;
    width: 85%;
    margin: 40px auto;
    padding: 35px;
    border-radius: 12px;
    box-sizing: border-box;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

.tools-page .learn-more-contact h2,
.tools-page .learn-more-contact p {
    color: #001C42 !important;
}

.tools-page .learn-more-contact .learn-more-button {
    background-color: #001C42 !important;
    color: #FFC84A !important;
    border: 2px solid #001C42;
}

.tools-page .learn-more-contact .learn-more-button:hover {
    background-color: transparent !important;
    color: #001C42 !important;
}
/* Tools for Life - Match Solutions Contact Box */
.tools-page .learn-more-contact {
    background-color: #FFC84A !important;
    color: #001C42 !important;
}

.tools-page .learn-more-contact h2,
.tools-page .learn-more-contact p {
    color: #001C42 !important;
}

.tools-page .learn-more-contact .learn-more-button {
    background-color: #001C42 !important;
    color: #FFC84A !important;
    border: 2px solid #001C42 !important;
}

.tools-page .learn-more-contact .learn-more-button:hover {
    background-color: transparent !important;
    color: #001C42 !important;
}
/* Tools for Life - Gold Contact Box Override */
body:has(#family-protection) .tools-page main section.learn-more-contact {
    background: #FFC84A !important;
    background-color: #FFC84A !important;
    color: #001C42 !important;
    border: 1px solid #FFC84A !important;
    border-radius: 12px;
    max-width: 1000px;
    width: 85%;
    margin: 40px auto;
    padding: 35px;
    box-sizing: border-box;
    text-align: center;
}

body:has(#family-protection) .tools-page main section.learn-more-contact h2,
body:has(#family-protection) .tools-page main section.learn-more-contact p {
    color: #001C42 !important;
}

body:has(#family-protection) .tools-page main section.learn-more-contact .learn-more-button {
    background-color: #001C42 !important;
    color: #FFC84A !important;
    border: 2px solid #001C42 !important;
}

body:has(#family-protection) .tools-page main section.learn-more-contact .learn-more-button:hover {
    background-color: transparent !important;
    color: #001C42 !important;
}
/* About Us - Gold Contact Box */
body:has(#tupelo-story) .tools-page main section.learn-more-contact {
    background-color: #FFC84A !important;
    color: #001C42 !important;
}

body:has(#tupelo-story) .tools-page main section.learn-more-contact h2,
body:has(#tupelo-story) .tools-page main section.learn-more-contact p {
    color: #001C42 !important;
}

body:has(#tupelo-story) .tools-page main section.learn-more-contact .learn-more-button {
    background-color: #001C42 !important;
    color: #FFC84A !important;
    border: 2px solid #001C42 !important;
}

body:has(#tupelo-story) .tools-page main section.learn-more-contact .learn-more-button:hover {
    background-color: transparent !important;
    color: #001C42 !important;
}
/* About Us - Restore Sage Background Behind Gold Box */
body:has(#tupelo-story) .tools-page {
    background-color: #F0F3ED !important;
}

/* Insights & Education - Restore Sage Background */
.insights-page {
    background-color: #F0F3ED !important;
}

.insights-page main {
    background-color: #F0F3ED !important;
}

/* Homepage - Keep Logo Aligned with Business Name */
body > header .header-top {
    justify-content: center;
    column-gap: 15px !important;
}

body > header .header-top img {
    width: 75px !important;
    height: auto;
    margin: 0;
    flex-shrink: 0;
}

body > header .header-top h1 {
    margin: 0;
    text-align: left;
}

@media screen and (max-width: 600px) {
    body > header .header-top {
        flex-direction: column;
        gap: 8px;
    }

    body > header .header-top img {
        width: 50px !important;
    }

    body > header .header-top h1 {
        text-align: center;
    }
}

/* Match Logo Size and Position on Every Page */
body > header .header-top,
body .tools-page header .header-top {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    column-gap: 15px !important;
}

body > header .header-top img,
body .tools-page header .header-top img {
    width: 75px !important;
    height: auto;
    margin: 0;
    display: block;
    flex-shrink: 0;
}

body > header .header-top h1,
body .tools-page header .header-top h1 {
    margin: 0;
    text-align: left;
}

/* Keep Logo Layout Consistent on Mobile */
@media screen and (max-width: 600px) {
    body > header .header-top,
    body .tools-page header .header-top {
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }

    body > header .header-top img,
    body .tools-page header .header-top img {
        width: 50px !important;
    }

    body > header .header-top h1,
    body .tools-page header .header-top h1 {
        text-align: center;
    }
}

/* Match Solutions Page Logo to All Other Pages */
body .solutions-page header .header-top {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    column-gap: 15px !important;
}

body .solutions-page header .header-top img {
    width: 75px !important;
    height: auto;
    margin: 0;
    display: block;
    flex-shrink: 0;
}

body .solutions-page header .header-top h1 {
    margin: 0;
    text-align: left;
}

@media screen and (max-width: 600px) {
    body .solutions-page header .header-top {
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }

    body .solutions-page header .header-top img {
        width: 50px !important;
    }

    body .solutions-page header .header-top h1 {
        text-align: center;
    }
}

/* Match Insights Logo Spacing to All Other Pages */
body .tools-page.insights-page header .header-top {
    column-gap: 15px !important;
}

body .tools-page.insights-page header .header-top img {
    width: 75px !important;
    height: auto;
    margin: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 600px) {
    body .tools-page.insights-page header .header-top {
        gap: 8px !important;
    }

    body .tools-page.insights-page header .header-top img {
        width: 50px !important;
    }
}

/* Homepage Family Photo Hero */
#home.home-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 65px 8%;
    background-color: #F0F3ED;
    box-sizing: border-box;
}

#home .home-hero-content {
    flex: 1 1 52%;
    min-width: 0;
}

#home .home-hero-content h2 {
    color: #001C42;
    font-size: 42px;
    line-height: 1.2;
    margin-top: 10px;
    margin-bottom: 20px;
}

#home .home-hero-content p {
    line-height: 1.8;
}

#home .home-hero-content .home-tagline {
    color: #001C42;
    font-weight: bold;
    letter-spacing: 1px;
    text-transform: uppercase;
}

#home .home-hero-image {
    flex: 1 1 48%;
    min-width: 0;
}

#home .home-hero-image img {
    display: block;
    width: 100%;
    height: 390px;
    object-fit: cover;
    object-position: center;
    border-radius: 8px;
}

/* Homepage Hero on Mobile */
@media screen and (max-width: 700px) {
    #home.home-hero {
        flex-direction: column;
        gap: 25px;
        padding: 35px 20px;
    }

    #home .home-hero-content,
    #home .home-hero-image {
        width: 100%;
        flex-basis: auto;
    }

    #home .home-hero-content h2 {
        font-size: 32px;
    }

    #home .home-hero-image img {
        height: 260px;
    }
}


/* Fix business name spacing on desktop */
@media screen and (min-width: 701px) {
    header h1 {
        font-size: 60px !important;
        line-height: 1.2;
        overflow-wrap: normal;
        max-width: 100%;
    }
}


/* Desktop header spacing fix */
@media screen and (min-width: 701px) {
    .header-top {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 15px;
        flex-wrap: nowrap;
    }

    .header-top img {
        flex: 0 0 auto;
        width: 75px;
        height: auto;
    }

    .header-top h1 {
        flex: 0 1 auto;
        min-width: 0;
        font-size: 46px !important;
        line-height: 1.15;
        white-space: nowrap;
        margin: 0;
    }

    
.header-actions {
    flex: 0 0 auto;
    margin-left: 20px;
    position: relative;
    z-index: 2;
}

}


/* Center Homepage Header on Desktop */
@media screen and (min-width: 701px) {
    body > header .header-top {
        display: grid;
        grid-template-columns: 75px auto auto;
        align-items: center;
        justify-content: center;
        column-gap: 18px;
        width: 100%;
        box-sizing: border-box;
    }

    body > header .header-top img {
        width: 75px !important;
        max-width: 100%;
        height: auto;
        margin: 0;
    }

    body > header .header-top h1 {
        font-size: clamp(32px, 4vw, 52px) !important;
        line-height: 1.1;
        text-align: left;
        white-space: normal;
        min-width: 0;
        margin: 0;
    }

    body > header .header-actions {
        margin: 0;
        justify-self: start;
        position: static;
        transform: none;
    }
}

/* Keep Header Centered on Mobile */
@media screen and (max-width: 700px) {
    body > header .header-top {
        justify-content: center;
        margin-left: auto;
        margin-right: auto;
    }
}


/* =========================================
   INNER PAGE HEADERS — MATCH HOMEPAGE
   Homepage remains unchanged
   ========================================= */

@media screen and (min-width: 701px) {
    body .tools-page header .header-top,
    body .solutions-page header .header-top,
    body header .header-top {
        display: grid !important;
        grid-template-columns: 75px auto auto !important;
        align-items: center !important;
        justify-content: center !important;
        column-gap: 18px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    body .tools-page header .header-top img,
    body .solutions-page header .header-top img,
    body header .header-top img {
        width: 75px !important;
        height: auto !important;
        margin: 0 !important;
        justify-self: end !important;
    }

    body .tools-page header .header-top h1,
    body .solutions-page header .header-top h1,
    body header .header-top h1 {
        font-family: "Cormorant Garamond", serif !important;
        font-size: clamp(32px, 4vw, 52px) !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        text-align: left !important;
        white-space: normal !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body .tools-page header .header-actions,
    body .solutions-page header .header-actions,
    body header .header-actions {
        display: flex !important;
        align-items: center !important;
        justify-self: start !important;
        margin: 0 !important;
        position: static !important;
        transform: none !important;
    }
}

/* Mobile header layout */
@media screen and (max-width: 700px) {
    body .tools-page header .header-top,
    body .solutions-page header .header-top,
    body header .header-top {
        display: flex !important;
        justify-content: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media screen and (max-width: 600px) {
    body .tools-page header .header-top,
    body .solutions-page header .header-top,
    body header .header-top {
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
    }

    body .tools-page header .header-top img,
    body .solutions-page header .header-top img,
    body header .header-top img {
        width: 50px !important;
        justify-self: auto !important;
    }

    body .tools-page header .header-top h1,
    body .solutions-page header .header-top h1,
    body header .header-top h1 {
        font-size: 28px !important;
        text-align: center !important;
        line-height: 1.2 !important;
    }

    body .tools-page header .header-actions,
    body .solutions-page header .header-actions,
    body header .header-actions {
        justify-content: center !important;
        margin: 0 !important;
    }
}

/* Insights & Education: Match the other page headers */
@media screen and (min-width: 701px) {
    body .tools-page.insights-page header .header-top {
        display: grid !important;
        grid-template-columns: 75px auto auto !important;
        align-items: center !important;
        justify-content: center !important;
        column-gap: 18px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    body .tools-page.insights-page header .header-top img {
        width: 75px !important;
        height: auto !important;
        margin: 0 !important;
        justify-self: end !important;
    }

    body .tools-page.insights-page header .header-top h1 {
        font-family: "Cormorant Garamond", serif !important;
        font-size: clamp(32px, 4vw, 52px) !important;
        font-weight: 500 !important;
        line-height: 1.1 !important;
        text-align: left !important;
        white-space: normal !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body .tools-page.insights-page header .header-actions {
        display: flex !important;
        align-items: center !important;
        justify-self: start !important;
        gap: 0 !important;
        margin: 0 !important;
        position: static !important;
        transform: none !important;
    }
}

@media screen and (max-width: 700px) {
    body .tools-page.insights-page header .header-top {
        display: flex !important;
        justify-content: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media screen and (max-width: 600px) {
    body .tools-page.insights-page header .header-top {
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
    }

    body .tools-page.insights-page header .header-top img {
        width: 50px !important;
    }

    body .tools-page.insights-page header .header-top h1 {
        font-size: 28px !important;
        text-align: center !important;
        line-height: 1.2 !important;
    }

    body .tools-page.insights-page header .header-actions {
        justify-content: center !important;
        margin: 0 !important;
    }
}
/* FINAL FIX: Match Insights & Education Content Headings */
body.tools-page.insights-page main h1,
body.tools-page.insights-page main h2,
body.tools-page.insights-page main .tools-card h1,
body.tools-page.insights-page main .tools-card h2 {
    font-size: 34px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

@media screen and (max-width: 600px) {
    body.tools-page.insights-page main h1,
    body.tools-page.insights-page main h2,
    body.tools-page.insights-page main .tools-card h1,
    body.tools-page.insights-page main .tools-card h2 {
        font-size: 23px !important;
    }
}
/* Insights Header - Match Homepage Business Name */
.tools-page.insights-page > header .header-top h1 {
    font-size: clamp(32px, 4vw, 52px) !important;
    line-height: 1.1;
    text-align: left;
    white-space: normal;
    min-width: 0;
    margin: 0;
}

/* Mobile Readability Fixes */
@media screen and (max-width: 768px) {
    body {
        font-size: 16px;
        line-height: 1.6;
    }
    main {
        padding: 15px !important;
    }
    .review-container, .team-member {
        padding: 20px !important;
        margin: 15px auto !important;
    }
    h2 {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }
    p, li, label {
        font-size: 16px !important;
    }
    input[type="text"], select, textarea {
        font-size: 16px !important; /* Prevents auto-zoom on iOS */
    }
}


