/*
Theme Name: MBA Financial Services Group
Theme URI: https://mbafinancial.com
Author: MBA Financial Services Group
Author URI: https://mbafinancial.com
Description: Editorial corporate theme for MBA Financial Services Group — vehicle protection plans across automotive, powersports, recreational vehicle, and watercraft markets.
Version: 3.6.2
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mba-financial
Tags: custom-menu, custom-logo, featured-images, one-column, accessibility-ready

=====================================================
MBA FINANCIAL SERVICES GROUP
Editorial Theme v3.1
Clean Architecture — mba-* components only
=====================================================
*/


/*====================================================
01. RESET
====================================================*/

/* Skip link — a11y */
.mba-skip-link{
    position:absolute;
    left:-9999px;
    top:0;
    z-index:100000;
    padding:12px 20px;
    background:#001f3f;
    color:#ffffff;
    font-weight:600;
}

.mba-skip-link:focus{
    left:16px;
    top:16px;
}

/* Visible focus for keyboard users */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.mba-button:focus-visible,
.nav-menu a:focus-visible{
    outline:2px solid #d4af37;
    outline-offset:3px;
}

html{
    scroll-behavior:smooth;

    /* Cleaner glyph rendering (avoids “heavier” optimizeLegibility look) */
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:geometricPrecision;
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

/* Don’t let the browser fake bold/light — use real variable-font weights */
html,
body,
button,
input,
select,
textarea{
    font-synthesis:none;
    font-synthesis-weight:none;
    font-synthesis-style:none;
}

html,
body{
    margin:0;
    padding:0;
}

body{

    /* Typography matched to CalTex Capital institutional system */
    background:#ffffff;

    color:#374151;

    /*
     * Variable Inter weights (same family as CalTex).
     * CalTex often uses ~325 for UI copy; static 400 reads heavier.
     */
    font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

    font-size:16px;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.75;

    overflow-x:hidden;

    /* Beat WP global-styles body padding reset
       30px top bar + 82px nav = 112px */
    padding-top:112px !important;

}

body.admin-bar{

    padding-top:144px !important;

}

/* Prevent Safari gap under fixed header / above hero */
#main-content{
    margin:0;
    padding:0;
    display:block;
}

#home.page-section,
.page-section.active{
    margin:0;
    padding:0;
}

img{

    display:block;
    max-width:100%;
    height:auto;

}

a{

    color:inherit;
    text-decoration:none;
    transition:.30s ease;

}

button,
input,
select,
textarea{

    font:inherit;

}



/*====================================================
02. TYPOGRAPHY (CalTex-aligned)
====================================================*/

h1,
h2,
h3,
h4,
h5,
h6{

    margin:0;

    color:#12365d;

    font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 28;

    line-height:1.2;

}

/* Large display headers — lighter than CalTex 300 for a cleaner airier look */
h1{

    font-size:clamp(2.7rem,4vw,3.7rem);

    letter-spacing:-.03em;

    font-weight:250;

    font-variation-settings:"wght" 250,"opsz" 32;

}

h2{

    font-size:clamp(2rem,3vw,2.55rem);

    letter-spacing:-.02em;

    font-weight:250;

    font-variation-settings:"wght" 250,"opsz" 28;

}

h3{

    font-size:1.30rem;

    font-weight:400;

    font-variation-settings:"wght" 400,"opsz" 18;

}

h4{

    font-size:1.05rem;

    font-weight:500;

    font-variation-settings:"wght" 500,"opsz" 16;

}

p{

    margin:0 0 1.35rem;

    color:#4b5563;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    /* inherits body line-height 1.75 — same as CalTex */

}

strong{

    color:#1f2937;

    font-weight:550;

    font-variation-settings:"wght" 550,"opsz" 16;

}



/*====================================================
03. LAYOUT
====================================================*/

.mba-container{

    width:min(1320px,92%);
    margin:0 auto;

}

.mba-section{

    padding:52px 0;

}

.mba-section+.mba-section{

    padding-top:0;

}

.mba-section-light{

    background:#fafafa;

}

.mba-band{

    background:#001f3f;
    color:#ffffff;

    /* ~12% shorter than previous 28px */
    padding:24px 0;

}



/*====================================================
04. EDITORIAL
====================================================*/

/* CalTex-style section kicker (small caps above H2) */
.mba-kicker{

    display:block;

    margin-bottom:16px;

    color:#14365d;

    font-family:'Inter',system-ui,sans-serif;

    font-size:.82rem;

    font-weight:550;

    font-variation-settings:"wght" 550,"opsz" 14;

    letter-spacing:.16em;

    text-transform:uppercase;

    line-height:1.4;

}

.mba-editorial{

    max-width:760px;

}

.mba-editorial h2{

    display:inline-block;

    position:relative;

    margin:0 0 22px;

    padding-bottom:18px;

    color:#001f3f;

    font-family:'Inter',system-ui,sans-serif;

    font-size:clamp(2rem,3vw,2.55rem);

    /* large section headers only — kickers stay as-is */
    font-weight:250;

    font-variation-settings:"wght" 250,"opsz" 28;

    letter-spacing:-.02em;

    line-height:1.2;

}

.mba-editorial h2::after{

    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:82px;
    height:2px;

    /* MBA logo blue-grey (matches nav underlines) */
    background:#173a67;

}

.mba-editorial p{

    max-width:690px;

    margin:0 0 18px;

    color:#4b5563;

    font-size:1rem;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 17;

    line-height:1.85;

}

.mba-editorial p:last-child{

    margin-bottom:0;

}



/*====================================================
05. PAGE SYSTEM
====================================================*/

.page-section{

    display:none;

}

.page-section.active{

    display:block;

}

body.page .page-section,
body.single .page-section,
body.archive .page-section,
body.error404 .page-section{

    display:block;

}



/*====================================================
06. BRAND UTILITIES
====================================================*/

.bg-navy{

    background:#001f3f;

}

.bg-navy-light{

    background:#14365d;

}

.bg-gold{

    background:#d4af37;

}

.text-navy{

    color:#001f3f;

}

.text-gold{

    color:#d4af37;

}

.text-center{

    text-align:center;

}

.text-left{

    text-align:left;

}

.text-right{

    text-align:right;

}

.hidden{

    display:none;

}



/*====================================================
07. TOP LOGIN BAR (small, right-aligned, above main nav)
====================================================*/

/* Hide legacy injected Media Relations anywhere */
a[href="#media-relations"],
a[href*="media-relations"],
.nav-menu a[href="#media-relations"]{
    display:none !important;
}

.top-login-bar{

    position:fixed !important;

    top:0 !important;
    left:0 !important;
    right:0 !important;

    width:100% !important;
    height:30px !important;

    z-index:10000 !important;

    background:#ffffff !important;

    border-bottom:1px solid rgba(15,23,42,.06);

    padding:0 !important;
    margin:0 !important;

    box-sizing:border-box;

    text-align:right !important;

}

.top-login-bar .mba-container{

    display:flex !important;

    justify-content:flex-end !important;

    align-items:center !important;

    height:100% !important;

    width:min(1320px,92%) !important;

    margin:0 auto !important;

    padding:0 !important;

}

.top-login-bar a,
.top-login-bar a.mba-client-login{

    display:inline-block !important;

    margin:0 !important;

    padding:0 !important;

    color:#6b7280 !important;

    font-size:11px !important;

    font-weight:500 !important;

    letter-spacing:.12em !important;

    text-transform:uppercase !important;

    line-height:1 !important;

    text-decoration:none !important;

    float:none !important;

    position:static !important;

}

.top-login-bar a:hover,
.top-login-bar a.mba-client-login:hover{

    color:#001f3f !important;

}

/* Never style Partner Login as a main nav item */
.nav-menu .mba-client-login,
.nav-menu a[href*="mbaprotection.net/login"]{
    /* login does not belong in main menu */
}



/*====================================================
08. HEADER
====================================================*/

nav{

    position:fixed;

    top:30px;
    left:0;

    width:100%;

    z-index:9998;

    background:#ffffff;

    border-bottom:1px solid rgba(15,23,42,.06);

    box-shadow:0 10px 30px rgba(15,23,42,.05);

}

nav .mba-container{

    display:flex;

    justify-content:space-between;

    align-items:flex-end;

    height:82px;

    padding-bottom:10px;

}



/*====================================================
09. LOGO
====================================================*/

.mba-logo{

    display:flex;
    align-items:center;

}

.mba-logo img{

    width:auto;
    height:auto;

    max-height:60px;

}

.logo-shift-left{

    margin-left:-36px;

}



/*====================================================
10. DESKTOP NAVIGATION (WordPress menus + fallback)
====================================================*/

.nav-menu{

    display:flex;

    align-items:flex-end;

    gap:42px;

    list-style:none;

    margin:0;

    padding:0;

}

.nav-menu > li{

    position:relative;

    display:flex;

    align-items:center;

}

/* invisible hover bridge for dropdowns */
.nav-menu > .menu-item-has-children::after{

    content:"";

    position:absolute;

    left:0;

    top:100%;

    width:100%;

    height:18px;

}

.nav-menu > li > a{

    position:relative;

    display:inline-flex;

    align-items:center;

    gap:6px;

    padding:4px 0;

    color:#374151;

    font-family:'Inter',system-ui,sans-serif;

    font-size:15px;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 14;

    line-height:1;

    letter-spacing:.01em;

    transition:.30s ease;

}

.nav-menu > li > a::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-8px;

    width:0;
    height:1px;

    /* MBA logo blue — replaces gold */
    background:#173a67;

    transition:width .30s ease;

}

.nav-menu > li:hover > a,
.nav-menu > li.focus > a,
.nav-menu > li.current-menu-item > a,
.nav-menu > li.current-menu-ancestor > a{

    color:#001f3f;

}

.nav-menu > li:hover > a::after,
.nav-menu > li.focus > a::after,
.nav-menu > li.current-menu-item > a::after,
.nav-menu > li.current-menu-ancestor > a::after{

    width:100%;

}

/* chevron for parent items */
.nav-menu > .menu-item-has-children > a::before{

    content:"\f078";

    font-family:"Font Awesome 6 Free";

    font-weight:900;

    font-size:.70rem;

    order:2;

    margin-left:6px;

    transition:transform .25s ease;

}

.nav-menu > .menu-item-has-children:hover > a::before{

    transform:rotate(180deg);

}


/*====================================================
11. DROPDOWNS (WP .sub-menu)
====================================================*/

.nav-menu .sub-menu{

    position:absolute;

    left:0;

    top:100%;

    margin:0;

    min-width:260px;

    padding:10px 0;

    list-style:none;

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:8px;

    box-shadow:0 20px 50px rgba(15,23,42,.12);

    z-index:99999;

    opacity:0;

    visibility:hidden;

    transform:translateY(8px);

    pointer-events:none;

    transition:
        opacity .22s ease,
        transform .22s ease,
        visibility .22s ease;

}

.nav-menu > .menu-item-has-children:hover > .sub-menu,
.nav-menu > .menu-item-has-children:focus-within > .sub-menu{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

    pointer-events:auto;

}

.nav-menu .sub-menu a{

    display:block;

    padding:13px 22px;

    color:#4b5563;

    font-size:.92rem;

    white-space:nowrap;

    transition:
        background .20s ease,
        color .20s ease,
        padding-left .20s ease;

}

.nav-menu .sub-menu a:hover,
.nav-menu .sub-menu a:focus{

    background:#f8fafc;

    color:#001f3f;

    padding-left:28px;

}

/*====================================================
12. MOBILE NAVIGATION
====================================================*/

.mba-mobile-toggle{

    display:none;

    align-items:center;
    justify-content:center;

    width:46px;
    height:46px;

    border:none;
    background:none;

    color:#001f3f;

    font-size:1.35rem;

    cursor:pointer;

}

.mba-mobile-menu{

    position:fixed;

    top:112px;
    left:0;

    width:100%;

    background:#ffffff;

    border-top:1px solid #e5e7eb;

    box-shadow:0 18px 40px rgba(15,23,42,.08);

    padding:24px;

    display:none;

    z-index:9997;

}

.mba-mobile-menu.active{

    display:block;

}

.mba-mobile-menu a{

    display:block;

    padding:14px 0;

    color:#374151;

    border-bottom:1px solid #f1f5f9;

}

.mba-mobile-menu a:hover{

    color:#001f3f;

}

/* When a WP menu is assigned to mobile */
.mba-mobile-menu .nav-menu-mobile,
.mba-mobile-menu ul{

    list-style:none;

    margin:0;

    padding:0;

}

.mba-mobile-menu .nav-menu-mobile > li > a,
.mba-mobile-menu .nav-menu-mobile a{

    display:block;

    padding:14px 0;

    color:#374151;

    border-bottom:1px solid #f1f5f9;

}

.mba-mobile-menu .sub-menu{

    list-style:none;

    margin:0;

    padding:0 0 0 16px;

}

.mba-mobile-menu .sub-menu a{

    font-size:.95rem;

}

.mba-mobile-group{

    margin:20px 0;

}

.mba-mobile-title{

    margin-bottom:10px;

    color:#001f3f;

    font-size:.78rem;

    font-weight:550;

    font-variation-settings:"wght" 550,"opsz" 14;

    letter-spacing:.10em;

    text-transform:uppercase;

}



/*====================================================
13. HERO (CalTex-aligned: full-bleed under fixed header)
====================================================*/

/*
 * Pull hero under the fixed chrome so the image meets the menu
 * (fixes Safari white gap). Header is 112px (30 top bar + 82 nav).
 */
.mba-hero{

    position:relative;

    overflow:hidden;

    height:620px;

    margin:0;
    margin-top:-112px !important;

    padding:0;

    display:block;

}

body.admin-bar .mba-hero{

    margin-top:-144px !important;

}

.mba-hero-image{

    position:absolute;

    inset:0;

    z-index:0;

}

.mba-hero-image img{

    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center;

}

.mba-hero-overlay{

    position:absolute;

    inset:0;

    z-index:1;

    /* Match CalTex overlay depth */
    background:

        linear-gradient(
            rgba(18,54,93,.22),
            rgba(18,54,93,.34)
        ),

        linear-gradient(
            to right,
            rgba(10,24,42,.48),
            rgba(10,24,42,.22),
            rgba(10,24,42,.05)
        );

}

.mba-hero-inner{

    position:relative;

    z-index:2;

    width:min(1320px,92%);

    height:100%;

    margin:0 auto;

    padding:0;

    display:block;

    box-sizing:border-box;

}

.mba-hero-content{

    /* CalTex: inset from frame, not flush left.
     * Header chrome ~112px over hero; former top was 175px.
     * Halfway toward header bottom edge ≈ 144px. */
    position:absolute;

    top:144px;
    left:35px;

    z-index:5;

    max-width:700px;

}

.mba-hero-title,
.mba-hero h1.mba-hero-title{

    margin:0 0 26px;

    color:#ffffff;

    font-family:'Inter',system-ui,sans-serif;

    font-size:clamp(2.7rem,4vw,3.7rem);

    /* main hero tagline */
    font-weight:250;

    font-variation-settings:"wght" 250,"opsz" 36;

    line-height:1.08;

    letter-spacing:-.03em;

}

.mba-hero-subtitle{

    max-width:620px;

    margin:0 0 28px;

    color:rgba(255,255,255,.92);

    font-family:'Inter',system-ui,sans-serif;

    font-size:1.12rem;

    /* second hero line */
    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 18;

    line-height:1.8;

}

.mba-hero-description{

    max-width:620px;

    margin:0 0 28px;

    color:rgba(255,255,255,.88);

    font-size:1.02rem;

    line-height:1.8;

}



/*====================================================
14. BUTTONS
====================================================*/

.mba-hero-actions{

    display:flex;

    flex-wrap:wrap;

    align-items:center;

    gap:18px;

    margin:0;

}

.mba-button{

    display:inline-block;

    padding:14px 34px;

    border-radius:4px;

    font-family:'Inter',system-ui,sans-serif;

    font-size:.84rem;

    font-weight:400;

    font-variation-settings:"wght" 400,"opsz" 14;

    letter-spacing:.12em;

    text-transform:uppercase;

    transition:
        background .30s ease,
        color .30s ease,
        transform .30s ease,
        box-shadow .30s ease;

}

.mba-button-gold{

    background:#d4af37;

    color:#001f3f;

    border:1px solid #d4af37;

}

.mba-button-gold:hover{

    background:#e0ba45;

    transform:translateY(-2px);

    box-shadow:0 12px 28px rgba(0,0,0,.18);

}

.mba-button-outline{

    background:transparent;

    color:#ffffff;

    border:1px solid rgba(255,255,255,.82);

}

.mba-button-outline:hover{

    background:#ffffff;

    color:#001f3f;

}

.mba-button-primary{

    background:#001f3f;

    color:#ffffff;

    border:1px solid #001f3f;

}

.mba-button-primary:hover{

    background:#14365d;

    border-color:#14365d;

    transform:translateY(-2px);

}



/*====================================================
15. HERO SIGNATURE
====================================================*/

.mba-hero-signature{

    /* CalTex: centered absolute strip near bottom */
    position:absolute;

    left:50%;
    bottom:38px;

    transform:translateX(-50%);

    display:flex;

    flex-wrap:nowrap;

    align-items:center;

    justify-content:center;

    gap:22px;

    width:auto;

    max-width:92%;

    margin:0;

    padding:0;

    border-top:none;

    white-space:nowrap;

    text-align:center;

    color:rgba(255,255,255,.82);

    font-family:'Inter',system-ui,sans-serif;

    font-size:.78rem;

    /* slightly bolder for legibility on photo */
    font-weight:400;

    font-variation-settings:"wght" 400,"opsz" 14;

    letter-spacing:.20em;

    text-transform:uppercase;

}

/* Bright photos (e.g. sunset): deepen overlay so white type stays readable */
.mba-hero-bright .mba-hero-overlay{

    background:

        linear-gradient(
            rgba(10,24,42,.42),
            rgba(10,24,42,.55)
        ),

        linear-gradient(
            to right,
            rgba(10,24,42,.58),
            rgba(10,24,42,.32),
            rgba(10,24,42,.18)
        );

}

/* Recreational Vehicles hero — tires in frame, minimal land under them */
.mba-hero-rv .mba-hero-image img,
.page-template-rv-php .mba-hero-image img,
body.page-template-rv .mba-hero-image img{

    object-fit:cover !important;
    object-position:center 88% !important;

}

.mba-hero-signature span:nth-child(even){

    color:#c6a85b;

}



/*====================================================
16. QUICK STATS
====================================================*/

.mba-stats-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:29px;

}

.mba-stat{

    text-align:center;

}

.mba-stat-value{

    margin-bottom:7px;

    color:#d4af37;

    /* another ~15% smaller than 1.84rem */
    font-size:1.56rem;

    font-weight:300;

    line-height:1;

}

.mba-stat-label{

    color:#ffffff;

    /* restored — only the large stat values were reduced */
    font-size:.85rem;

    line-height:1.5;

}



/*====================================================
17. CARD GRID
====================================================*/

/* Global card dimensions (defined early for all card rules) */
:root{
    --mba-card-height:320px;
    --mba-card-img-height:118px;
}

.mba-card-grid{

    display:grid;

    gap:32px;

    margin-top:42px;

    align-items:stretch;

}

.mba-card-grid-2{

    grid-template-columns:repeat(2,minmax(0,1fr));

}

.mba-card-grid-3{

    grid-template-columns:repeat(3,minmax(0,1fr));

}

.mba-card-grid-4{

    grid-template-columns:repeat(4,minmax(0,1fr));

}



/*====================================================
18. STANDARD CARD
====================================================*/

.mba-card{

    display:flex;

    flex-direction:column;

    height:100%;

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:10px;

    overflow:hidden;

    box-shadow:0 10px 28px rgba(15,23,42,.06);

    transition:
        transform .30s ease,
        box-shadow .30s ease;

}

.mba-card:hover{

    transform:translateY(-6px);

    box-shadow:0 22px 44px rgba(15,23,42,.12);

}

.mba-card-body{

    display:flex;

    flex-direction:column;

    flex:1;

    padding:32px;

}

.mba-card h3{

    margin-bottom:16px;

    color:#001f3f;

    font-size:1.32rem;

    font-weight:400;

}

.mba-card p{

    flex:1;

    margin-bottom:24px;

    color:#6b7280;

}



/*====================================================
19. CARD ICONS
====================================================*/

.mba-card-icon{

    display:flex;

    align-items:center;
    justify-content:center;

    width:auto;
    height:auto;

    margin:0 0 22px;

    border-radius:0;

    background:transparent;

    color:#12365d;

    font-size:2rem;

}

/* Icon cards (non-image) — CalTex focus-card model */
.mba-card:not(.mba-market-card){
    padding:34px 32px;
    height:var(--mba-card-height);
    min-height:var(--mba-card-height);
    max-height:var(--mba-card-height);
    box-shadow:0 10px 24px rgba(15,23,42,.06);
}

.mba-card:not(.mba-market-card):hover{
    transform:translateY(-4px);
    box-shadow:0 18px 36px rgba(15,23,42,.10);
}

.mba-card:not(.mba-market-card) h3{
    margin:0 0 14px;
    padding:0;
    color:#12365d;
    font-family:'Inter',system-ui,sans-serif;
    font-size:1.30rem;
    font-weight:400;
    font-variation-settings:"wght" 400,"opsz" 18;
    line-height:1.3;
    letter-spacing:0;
}

.mba-card:not(.mba-market-card) p{
    margin:0;
    padding:0;
    color:#6b7280;
    font-size:1rem;
    font-weight:375;
    font-variation-settings:"wght" 375,"opsz" 16;
    line-height:1.8;
    flex:0 1 auto;
}

.mba-card:not(.mba-market-card) .mba-text-link{
    margin-top:auto;
    padding-top:20px;
}

/* Photo market cards — previous 4-across style (not forced to product-card height) */
.mba-card.mba-market-card{

    display:flex;

    flex-direction:column;

    height:100%;

    min-height:0;

    max-height:none;

    padding:0;

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:10px;

    box-shadow:0 10px 28px rgba(15,23,42,.06);

    overflow:hidden;

    transition:
        transform .30s ease,
        box-shadow .30s ease;

}

.mba-card.mba-market-card:hover{

    transform:translateY(-6px);

    box-shadow:0 22px 44px rgba(15,23,42,.12);

}

.mba-market-card .mba-card-body{

    display:flex;

    flex-direction:column;

    flex:1 1 auto;

    padding:28px 28px 30px;

}

.mba-market-card h3{

    margin:0 0 12px;

    color:#12365d;

    font-family:'Inter',system-ui,sans-serif;

    font-size:1.30rem;

    font-weight:400;

    font-variation-settings:"wght" 400,"opsz" 18;

    line-height:1.3;

}

.mba-market-card p{

    margin:0 0 20px;

    color:#6b7280;

    font-size:1rem;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.75;

    flex:1;

    display:block;

    -webkit-line-clamp:unset;

    overflow:visible;

}

.mba-market-card .mba-text-link{

    margin-top:auto;

    padding-top:0;

}

.mba-card-icon + h3{

    margin-top:0;

    padding:0;

}

.mba-card-icon + h3 + p{

    padding:0;

}

.mba-card-icon + h3 + p + .mba-text-link{

    margin:auto 0 0;

    padding-top:20px;

}

/*
 * PRODUCT / ICON CARDS (Automotive standard)
 * Photo market cards are styled separately below (4-across, larger image).
 */
.mba-focus-card,
.mba-info-actions .mba-focus-card{

    display:flex;

    flex-direction:column;

    width:100%;

    height:var(--mba-card-height);

    min-height:var(--mba-card-height);

    max-height:var(--mba-card-height);

    padding:34px 32px;

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:10px;

    box-shadow:0 10px 24px rgba(15,23,42,.06);

    transition:.30s ease;

    box-sizing:border-box;

    overflow:hidden;

}

.mba-focus-card:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 36px rgba(15,23,42,.10);

}

.mba-focus-icon{

    font-size:2rem;

    color:#12365d;

    margin-bottom:18px;

    flex-shrink:0;

    line-height:1;

}

.mba-focus-card h3,
.mba-info-actions .mba-focus-card h3{

    margin:0 0 12px;

    color:#12365d;

    font-family:'Inter',system-ui,sans-serif;

    font-size:1.30rem;

    font-weight:400;

    font-variation-settings:"wght" 400,"opsz" 18;

    line-height:1.3;

    letter-spacing:0;

    flex-shrink:0;

}

.mba-focus-card p,
.mba-info-actions .mba-focus-card p{

    margin:0;

    color:#6b7280;

    font-size:1rem;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.7;

    flex:1 1 auto;

    min-height:0;

    display:-webkit-box;

    -webkit-box-orient:vertical;

    -webkit-line-clamp:3;

    overflow:hidden;

}

.mba-focus-card .mba-text-link,
.mba-info-actions .mba-info-toggle{

    margin-top:auto;

    padding-top:16px;

    flex-shrink:0;

}

.mba-focus-grid{

    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:32px;

    /* sit just under editorial body — match standard heading→content rhythm */
    margin-top:28px;

    align-items:stretch;

}



/*====================================================
20. IMAGE / MARKET CARDS
====================================================*/

.mba-market-card img{

    display:block;

    width:100%;

    height:200px;

    flex-shrink:0;

    object-fit:cover;

    object-position:center;

    transition:
        transform .45s ease,
        filter .35s ease;

}

.mba-market-card:hover img{

    transform:scale(1.04);

    filter:saturate(1.05);

}



/*====================================================
21. TEXT LINKS
====================================================*/

.mba-text-link{

    display:inline-flex;

    align-items:center;

    width:max-content;

    color:#14365d;

    font-size:.88rem;

    font-weight:600;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.mba-text-link::after{

    content:"→";

    margin-left:8px;

    transition:.25s ease;

}

.mba-text-link:hover{

    color:#d4af37;

}

.mba-text-link:hover::after{

    margin-left:14px;

}

/*====================================================
22. TWO COLUMN LAYOUTS
====================================================*/

.mba-two-column{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:72px;

    align-items:center;

}

.mba-content-column{

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.mba-image-column img{

    width:100%;

    border-radius:10px;

    box-shadow:0 18px 42px rgba(15,23,42,.10);

}



/*====================================================
23. FEATURE LIST
====================================================*/

.mba-feature-list{

    display:flex;

    flex-direction:column;

    gap:28px;

    margin-top:38px;

}

/* When bullets follow a section H2 with no intro paragraph — match normal body spacing */
.mba-editorial + .mba-feature-list,
.mba-feature-list-after-heading{

    margin-top:0;

}

.mba-feature{

    display:grid;

    grid-template-columns:34px 1fr;

    gap:18px;

    align-items:flex-start;

}

.mba-feature i{

    margin-top:4px;

    /* neutral professional — no green accent */
    color:#14365d;

    font-size:1.25rem;

}

.mba-feature h3{

    margin:0 0 8px;

    color:#12365d;

    font-family:'Inter',system-ui,sans-serif;

    font-size:1.08rem;

    font-weight:450;

    font-variation-settings:"wght" 450,"opsz" 16;

    line-height:1.3;

    letter-spacing:0;

}

.mba-feature p{

    margin:0 0 10px;

    color:#6b7280;

    font-size:1rem;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.85;

}

.mba-feature p:last-child{

    margin-bottom:0;

}



/*====================================================
24. SECTION ACTIONS
====================================================*/

.mba-section-action{

    margin-top:42px;

}



/*====================================================
25. FOOTER
====================================================*/

.mba-footer{

    margin-top:0;

    /* CalTex footer main band */
    background:#3a434b;

    color:#ffffff;

}

.mba-footer-inner{

    width:min(1320px,92%);

    margin:0 auto;

    padding:42px 0 32px;

}

.mba-footer-grid{

    display:grid;

    /* brand + three equal columns (resources / solutions / office) */
    grid-template-columns:1.15fr 1fr 1fr 1fr;

    gap:40px 40px;

    align-items:start;

}

.mba-footer-column{

    min-width:0;

}

/* Contact column: no section H3 / no gold underline — labels only */
.mba-footer-column-contact h3{

    display:none;

}

.mba-footer-column-contact .mba-footer-contact{

    padding-top:0;

}

.mba-footer-column-contact .mba-footer-contact strong{

    display:block;

    margin:0 0 4px;

    color:#ffffff;

    font-size:.92rem;

    /* match Customer Resources / Protection Solutions weight */
    font-weight:550;

    font-variation-settings:"wght" 550,"opsz" 14;

    letter-spacing:0;

    text-transform:none;

    line-height:1.4;

}

.mba-footer-brand{

    display:flex;

    flex-direction:column;

    /* equal vertical rhythm: logo → milestone → BBB */
    gap:22px;

}

.mba-footer-logo{

    width:100%;

    max-width:120px;

    margin:0;

}

.mba-footer-milestones{

    display:flex;

    flex-direction:column;

    gap:0;

    margin:0;

}

.mba-footer-milestones div{

    color:#ffffff;

    font-size:.94rem;

    font-weight:500;

}

.mba-footer-bbb-link{
    display:inline-block;
    max-width:110px;
    line-height:0;
    text-decoration:none;
}

.mba-footer-bbb-link:hover .mba-footer-bbb,
.mba-footer-bbb-link:focus-visible .mba-footer-bbb{
    opacity:.9;
}

.mba-footer-bbb{

    width:100%;

    max-width:110px;

    margin:0;

    display:block;

}

.mba-footer-column h3{

    position:relative;

    margin:0 0 16px;

    padding-bottom:12px;

    color:#ffffff;

    /* ~15% smaller than 1rem — same bold as Corporate Office / Telephone */
    font-size:.85rem;

    font-weight:550;

    font-variation-settings:"wght" 550,"opsz" 14;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.mba-footer-column h3::after{

    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:42px;

    height:2px;

    /* light underline on dark footer — not gold */
    background:rgba(255,255,255,.45);

}

.mba-footer-links{

    list-style:none;

    margin:0;
    padding:0;

}

.mba-footer-links li{

    /* tighten vertical spacing between footer links */
    margin-bottom:8px;

}

.mba-footer-links a{

    /* lighter than column headings so hierarchy is clear */
    color:rgba(255,255,255,.78);

    font-size:.92rem;

    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 14;

    line-height:1.75;

    letter-spacing:.01em;

}

.mba-footer-links a:hover{

    color:#ffffff;

    padding-left:4px;

}

.mba-footer-contact{

    color:#ffffff;

    font-size:.92rem;

    line-height:1.65;

}

.mba-footer-contact p{

    margin:0 0 18px;

    color:#ffffff;

    font-weight:325;

    font-variation-settings:"wght" 325,"opsz" 14;

    line-height:1.75;

}

.mba-footer-contact p:last-child{

    margin-bottom:0;

}

.mba-footer-contact a{

    color:#ffffff;

    line-height:1.45;

}

.mba-footer-contact a:hover{

    color:#c6a85b;

}

.mba-button-outline-dark{

    border:1px solid #14365d;

    color:#14365d;

    background:transparent;

}

.mba-button-outline-dark:hover{

    background:#14365d;

    color:#ffffff;

}

/* Contact form submit — full width, clear → navy on hover (CalTex) */
.mba-contact-form .mba-button-outline-dark{

    width:100%;

    text-align:center;

    cursor:pointer;

}

/* Agreement holders panels — CTA-style action buttons (centered under copy) */
.mba-panel-actions{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    align-items:center;

    gap:16px;

    margin-top:28px;

    text-align:center;

}

.mba-panel-actions .mba-button{

    text-decoration:none;

}

.mba-panel a:not(.mba-button){

    color:#14365d;

    text-decoration:underline;

    text-underline-offset:3px;

}

.mba-panel a:hover{

    color:#d4af37;

}

/* FAQ items */
.mba-faq-list{

    border-top:1px solid #e7ebef;

}

.mba-faq-item{

    margin:0;

    padding:0;

    border-bottom:1px solid #e7ebef;

}

.mba-faq-heading{

    margin:0;

    font-size:inherit;

    font-weight:inherit;

}

.mba-faq-trigger{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:20px;

    width:100%;

    margin:0;

    padding:22px 0;

    border:0;

    background:transparent;

    color:#14365d;

    font-family:'Inter',system-ui,sans-serif;

    font-size:.95rem;

    font-weight:600;

    font-variation-settings:"wght" 600,"opsz" 14;

    letter-spacing:.06em;

    text-align:left;

    text-transform:uppercase;

    line-height:1.45;

    cursor:pointer;

    transition:color .2s ease;

}

.mba-faq-trigger:hover,
.mba-faq-trigger:focus-visible{

    color:#001f3f;

}

.mba-faq-trigger:focus-visible{

    outline:2px solid #173a67;

    outline-offset:4px;

}

.mba-faq-question{

    flex:1 1 auto;

    min-width:0;

}

.mba-faq-icon{

    position:relative;

    flex:0 0 18px;

    width:18px;
    height:18px;

}

/* Plus / minus chevron via CSS */
.mba-faq-icon::before,
.mba-faq-icon::after{

    content:"";

    position:absolute;

    top:50%;
    left:50%;

    background:#14365d;

    transition:
        transform .25s ease,
        opacity .2s ease,
        background .2s ease;

}

.mba-faq-icon::before{

    width:14px;
    height:2px;

    transform:translate(-50%,-50%);

}

.mba-faq-icon::after{

    width:2px;
    height:14px;

    transform:translate(-50%,-50%);

}

.mba-faq-item.is-open .mba-faq-icon::after{

    opacity:0;

    transform:translate(-50%,-50%) scaleY(0);

}

.mba-faq-item.is-open .mba-faq-trigger{

    color:#001f3f;

}

.mba-faq-panel{

    overflow:hidden;

}

.mba-faq-panel[hidden]{

    display:none;

}

.mba-faq-panel-inner{

    padding:0 28px 22px 0;

}

.mba-faq-panel p{

    margin:0 0 14px;

    color:#4b5563;

    font-size:1rem;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.85;

}

.mba-faq-panel p:last-child{

    margin-bottom:0;

}

.mba-faq-panel a,
.mba-faq-item a{

    color:#14365d;

    text-decoration:underline;

    text-underline-offset:3px;

}

.mba-stack a{

    color:#14365d;

    text-decoration:underline;

    text-underline-offset:3px;

}

.mba-stack a:hover{

    color:#d4af37;

}

.mba-footer-contact strong{

    display:block;

    margin:0 0 2px;

    padding:0;

    color:#ffffff;

    font-size:.92rem;

    font-weight:550;

    font-variation-settings:"wght" 550,"opsz" 14;

    line-height:1.3;

    letter-spacing:0;

    text-transform:none;

}

.mba-footer-contact-block{

    display:flex;

    flex-direction:column;

    gap:2px;

    margin:0 0 16px;

}

.mba-footer-contact-block:last-child{

    margin-bottom:0;

}

.mba-footer-contact-block a,
.mba-footer-address{

    display:block;

    /* lighter body under Corporate Office / Telephone labels */
    color:rgba(255,255,255,.78);

    font-size:.92rem;

    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 14;

    line-height:1.75;

}

.mba-footer-contact-block a:hover{

    color:#ffffff;

}

.mba-footer-bottom{

    /* CalTex legal bar */
    background:#2f363d;

    border-top:1px solid rgba(255,255,255,.12);

}

.mba-footer-bottom-inner{

    width:min(1320px,92%);

    margin:0 auto;

    min-height:72px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:30px;

}

.mba-footer-legal{

    display:flex;

    flex-wrap:wrap;

    gap:0;

    align-items:center;

}

/* Match copyright bar type exactly */
.mba-footer-legal a{

    color:rgba(255,255,255,.70);

    font-size:11.75px;

    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 12;

    letter-spacing:.04em;

}

.mba-footer-legal a:hover{

    color:#ffffff;

}

.mba-footer-legal span{

    color:rgba(255,255,255,.35);

    margin:0 10px;

    font-size:11.75px;

}

.mba-footer-copyright{

    color:rgba(255,255,255,.70);

    font-size:11.75px;

    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 12;

    letter-spacing:.04em;

    text-align:right;

}



/*====================================================
25b. PAGE TEMPLATES (mba-* page components)
====================================================*/

.mba-page-header{

    max-width:760px;

    margin:0 auto 56px;

    text-align:center;

}

.mba-page-header h1{

    margin-bottom:20px;

    font-size:clamp(2rem,3.2vw,2.75rem);

    font-weight:300;

    color:#001f3f;

    line-height:1.15;

}

.mba-page-header p{

    margin:0 auto;

    max-width:640px;

    color:#6b7280;

    font-size:1.125rem;

    line-height:1.75;

}

.mba-panel{

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:10px;

    padding:40px;

    box-shadow:0 10px 28px rgba(15,23,42,.06);

}

.mba-panel h2,
.mba-panel h3{

    margin-bottom:24px;

    color:#001f3f;

    font-weight:400;

}

.mba-check-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:20px 40px;

}

.mba-check-item{

    display:grid;

    grid-template-columns:28px 1fr;

    gap:12px;

    align-items:flex-start;

    color:#6b7280;

    line-height:1.7;

}

.mba-check-item i,
.mba-check-item .mba-list-marker{

    display:block;

    width:7px;

    height:7px;

    margin-top:0.55em;

    background:#14365d;

    border-radius:0.5px;

    color:transparent;

    font-size:0;

    line-height:0;

}

.mba-vehicle-list{

    display:flex;

    flex-direction:column;

    gap:16px;

    margin-top:28px;

}

.mba-vehicle-list-item{

    display:flex;

    align-items:center;

    gap:14px;

    color:#374151;

}

.mba-vehicle-list-item i{

    width:28px;

    color:#001f3f;

    font-size:1.2rem;

    text-align:center;

}

.mba-stack{

    display:flex;

    flex-direction:column;

    gap:48px;

}

.mba-stack h2{

    margin-bottom:16px;

    color:#001f3f;

    font-size:1.75rem;

    font-weight:300;

}

.mba-stack p{

    margin:0;

    color:#6b7280;

    line-height:1.85;

}

.mba-card.mba-card-padded{

    padding:34px 32px;

    text-align:left;

    align-items:flex-start;

}

.mba-card.mba-card-padded .mba-card-icon{

    margin:0 0 22px;

}

.mba-card.mba-card-padded .mba-card-icon + h3,
.mba-card.mba-card-padded h3{

    padding:0;

    margin:0 0 14px;

    text-align:left;

}

.mba-card.mba-card-padded .mba-card-icon + h3 + p,
.mba-card.mba-card-padded p{

    padding:0;

    margin:0;

    text-align:left;

}

.mba-card.mba-card-padded .mba-info-toggle{

    margin-top:18px;

}

.mba-info-actions{

    display:grid;

    grid-template-columns:repeat(4,minmax(0,1fr));

    gap:28px;

    margin-bottom:40px;

    align-items:stretch;

}

/* Contract-holder cards use global card height; links share one baseline */
.mba-info-actions .mba-focus-card{

    /* height set by global .mba-focus-card standard */
    padding:34px 32px;

}

.mba-info-actions .mba-info-toggle{

    margin-top:auto;

    align-self:flex-start;

    padding-top:16px;

}

.mba-info-panel{

    margin-bottom:28px;

    outline:none;

}

.mba-info-panel.hidden{

    display:none !important;

}

.mba-info-toggle{

    display:inline-block;

    margin-top:8px;

    border:none;

    background:none;

    padding:0;

    cursor:pointer;

    color:#14365d;

    font-size:.88rem;

    font-weight:600;

    letter-spacing:.08em;

    text-transform:uppercase;

    transition:color .25s ease;

}

.mba-info-toggle:hover,
.mba-info-toggle[aria-expanded="true"]{

    color:#d4af37;

}

.mba-entry-content{

    max-width:760px;

    margin:0 auto;

    color:#4b5563;

    line-height:1.85;

}

.mba-entry-content > *:first-child{

    margin-top:0;

}

.mba-entry-content h1,
.mba-entry-content h2,
.mba-entry-content h3{

    margin:1.6em 0 .6em;

    color:#001f3f;

    font-weight:400;

}

.mba-entry-content p,
.mba-entry-content ul,
.mba-entry-content ol{

    margin:0 0 1.25em;

}

.mba-entry-content a{

    color:#14365d;

    text-decoration:underline;

    text-underline-offset:3px;

}

.mba-entry-content a:hover{

    color:#d4af37;

}

.mba-404{

    text-align:center;

    max-width:560px;

    margin:0 auto;

    padding:40px 0 20px;

}

.mba-404 h1{

    margin-bottom:16px;

    font-size:clamp(2rem,4vw,3rem);

    font-weight:300;

    color:#001f3f;

}

.mba-404 p{

    margin-bottom:32px;

    color:#6b7280;

    font-size:1.1rem;

}

.mba-404-actions{

    display:flex;

    flex-wrap:wrap;

    gap:16px;

    justify-content:center;

}



/*====================================================
26. WORDPRESS SUPPORT
====================================================*/

.aligncenter{

    display:block;

    margin-left:auto;

    margin-right:auto;

}

.alignleft{

    float:left;

    margin-right:24px;

}

.alignright{

    float:right;

    margin-left:24px;

}

.wp-caption{

    max-width:100%;

}

.wp-caption img{

    width:100%;

    height:auto;

}



/*====================================================
27. RESPONSIVE
====================================================*/

@media (max-width:1200px){

    .mba-container{

        width:min(1100px,94%);

    }

    .mba-card-grid-4{

        grid-template-columns:repeat(2,1fr);

    }

    .mba-two-column{

        gap:56px;

    }

}

@media (max-width:992px){

    body{

        padding-top:100px !important;

    }

    body.admin-bar{

        padding-top:132px !important;

    }

    .nav-menu{

        display:none;

    }

    .mba-mobile-toggle{

        display:flex;

    }

    .mba-info-actions{

        grid-template-columns:repeat(2,minmax(0,1fr));

    }

    .mba-check-grid{

        grid-template-columns:1fr;

    }

    .mba-focus-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .mba-focus-card,
    .mba-info-actions .mba-focus-card{

        height:auto;

        min-height:300px;

        max-height:none;

    }

    .mba-section{

        padding:42px 0;

    }

    .mba-hero{

        height:520px;

        margin-top:-100px !important;

    }

    body.admin-bar .mba-hero{

        margin-top:-132px !important;

    }

    .mba-hero-content{

        /* header ~100px on tablet; former top 140 → halfway ≈ 120 */
        top:120px;

        left:20px;

        max-width:min(620px,88%);

    }

    .mba-hero-title{

        font-size:clamp(2.1rem,5vw,2.9rem);

    }

    .mba-hero-signature{

        white-space:normal;

        flex-wrap:wrap;

        gap:10px 16px;

        bottom:28px;

        justify-content:center;

        text-align:center;

    }

    .mba-card-grid-3{

        grid-template-columns:repeat(2,1fr);

    }

    .mba-card-grid-4{

        grid-template-columns:repeat(2,1fr);

    }

    .mba-two-column{

        grid-template-columns:1fr;

        gap:48px;

    }

    .mba-footer-grid{

        grid-template-columns:repeat(2,1fr);

        gap:50px;

    }

}

@media (min-width:993px){

    .mba-mobile-menu{

        display:none !important;

    }

}

@media (max-width:768px){

    .mba-info-actions{

        grid-template-columns:1fr;

    }

    .mba-card-grid-3{

        grid-template-columns:1fr;

    }


    body{

        padding-top:90px;

    }

    .mba-section{

        padding:48px 0;

    }

    .mba-container{

        width:92%;

    }

    .mba-hero{

        min-height:0;

    }

    .mba-hero-inner{

        padding:48px 0 40px;

        gap:24px;

    }

    .mba-hero-content{

        position:relative;

        top:auto;

        left:auto;

        max-width:100%;

        padding-top:0;

        text-align:left;

    }

    .mba-hero-actions{

        justify-content:flex-start;

        flex-wrap:wrap;

    }

    .mba-hero-signature{

        display:flex;

        white-space:normal;

        justify-content:center;

        text-align:center;

    }

    .mba-stats-grid{

        grid-template-columns:repeat(2,1fr);

        gap:24px;

    }

    .mba-card-grid-2,
    .mba-card-grid-3,
    .mba-card-grid-4{

        grid-template-columns:1fr;

    }

    .mba-footer-inner{

        padding:36px 0 28px;

    }

    .mba-footer-grid{

        grid-template-columns:1fr;

        gap:32px;

    }

    .mba-footer-logo{

        max-width:200px;

    }

    .mba-footer-bbb{

        max-width:150px;

    }

    .mba-footer-bottom-inner{

        flex-direction:column;

        justify-content:center;

        text-align:center;

        padding:24px 0;

    }

    .mba-footer-legal{

        justify-content:center;

    }

    .mba-footer-copyright{

        text-align:center;

    }

}

@media (max-width:480px){

    .mba-hero{

        min-height:0;

    }

    .mba-hero-title{

        font-size:1.95rem;

    }

    .mba-button{

        width:100%;

        text-align:center;

    }

    .mba-stats-grid{

        grid-template-columns:1fr;

    }

}



/*====================================================
28. UTILITIES
====================================================*/

.mb-0{

    margin-bottom:0 !important;

}

.mt-0{

    margin-top:0 !important;

}

.hidden{

    display:none !important;

}



/*====================================================
28b. CTA + CONTACT (CalTex patterns)
====================================================*/

.mba-cta{

    background:#f1f3f5;

    border-top:1px solid #e3e7eb;

    border-bottom:none;

    text-align:center;

    padding:42px 0;

    margin:0;

}

/* Dual partner + consumer CTA band */
.mba-cta-split{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:0;

    border-top:1px solid #e3e7eb;

    margin:0;

    background:#f1f3f5;

}

/* Both CTA panels identical (divider line is the only separation) */
.mba-cta-panel{

    display:flex;

    flex-direction:column;

    align-items:center;

    justify-content:center;

    min-height:260px;

    padding:42px 36px;

    text-align:center;

    background:#f1f3f5;

    box-sizing:border-box;

}

.mba-cta-panel + .mba-cta-panel{

    border-left:1px solid #e3e7eb;

}

.mba-cta-panel-partner,
.mba-cta-panel-consumer{

    background:#f1f3f5;

}

.mba-cta-panel h2{

    color:#0f2745;

    font-family:'Inter',system-ui,sans-serif;

    font-size:1.75rem;

    font-weight:500;

    font-variation-settings:"wght" 500,"opsz" 26;

    margin:0 0 14px;

    letter-spacing:-.02em;

    line-height:1.2;

}

.mba-cta-panel p{

    max-width:420px;

    margin:0 auto 22px;

    color:#1f2937;

    font-size:.98rem;

    line-height:1.75;

    font-weight:375;

    /* equal body height so panels balance */
    min-height:3.5em;

}

.mba-cta-actions{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    align-items:center;

    gap:12px;

}

/* Equal-size CTA buttons (Coverage Quote + Contact Us) */
.mba-cta-actions .mba-button{

    margin:0;

    min-width:180px;

    padding:14px 28px;

    text-align:center;

    box-sizing:border-box;

}

/* Refined list marker — +10% from 6px → ~6.6px (use 7px) */
.mba-list-marker{

    display:block;

    width:7px;

    height:7px;

    margin-top:10px;

    background:#14365d;

    border-radius:0.5px;

    flex-shrink:0;

}

.mba-feature i.mba-feature-mark,
.mba-feature i.fa-check,
.mba-feature i.fa-check-circle{

    display:block !important;

    width:7px !important;

    height:7px !important;

    margin-top:10px !important;

    padding:0 !important;

    border:none !important;

    border-radius:0.5px !important;

    background:#14365d !important;

    color:transparent !important;

    font-size:0 !important;

    line-height:0 !important;

    overflow:hidden;

}

.mba-cta h2{

    color:#0f2745;

    font-family:'Inter',system-ui,sans-serif;

    font-size:2rem;

    font-weight:250;

    font-variation-settings:"wght" 250,"opsz" 28;

    letter-spacing:-.02em;

    line-height:1.2;

    margin:0 0 18px;

}

.mba-cta h2::after{

    display:none;

}

.mba-cta p{

    max-width:640px;

    margin:0 auto 26px;

    color:#1f2937;

    font-size:1.03rem;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.85;

}

.mba-contact-intro{

    max-width:760px;

    margin:0 0 48px;

}

.mba-contact-grid{

    display:grid;

    /* CalTex: narrow info column + form; tops align */
    grid-template-columns:360px 1fr;

    gap:72px;

    align-items:start;

}

.mba-contact-info{

    display:flex;

    flex-direction:column;

    /* CalTex: 34px between cards */
    gap:34px;

    padding-top:0;

}

.mba-contact-card{

    padding-bottom:34px;

    margin-bottom:0;

    border-bottom:1px solid #e5e7eb;

}

.mba-contact-card:last-child{

    padding-bottom:0;

    margin-bottom:0;

    border-bottom:none;

}

/*
 * CalTex contact information (exact structure):
 *   kicker (Corporate Office) → h3 (company name) → p (address)
 *   kicker (Telephone) → p (number)
 *   kicker (General Inquiries) → p (copy)
 */
.mba-contact-card .mba-kicker{

    margin-bottom:16px;

    color:#14365d;

    font-size:.82rem;

    font-weight:600;

    font-variation-settings:"wght" 600,"opsz" 14;

    letter-spacing:.16em;

    text-transform:uppercase;

    line-height:1.4;

}

.mba-contact-card h3{

    margin:0 0 14px;

    color:#12365d;

    font-family:'Inter',system-ui,sans-serif;

    font-size:1rem;

    font-weight:500;

    font-variation-settings:"wght" 500,"opsz" 16;

    line-height:1.7;

    letter-spacing:0;

    text-transform:none;

}

.mba-contact-card p{

    margin:0 0 18px;

    color:#4b5563;

    font-family:'Inter',system-ui,sans-serif;

    font-size:1rem;

    font-weight:400;

    font-variation-settings:"wght" 400,"opsz" 16;

    line-height:1.85;

}

.mba-contact-card p:last-child{

    margin-bottom:0;

}

.mba-contact-card a{

    color:#4b5563;

    text-decoration:none;

}

.mba-contact-card a:hover{

    color:#12365d;

}

.mba-contact-form{

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:10px;

    padding:42px;

    box-shadow:0 10px 28px rgba(15,23,42,.06);

}

.mba-contact-form h2{

    margin:0 0 28px;

    color:#001f3f;

    font-size:1.75rem;

    font-weight:300;

}

.mba-contact-form label{

    display:block;

    margin-bottom:8px;

    color:#374151;

    font-size:.92rem;

    font-weight:500;

}

.mba-contact-form .mba-field{

    margin-bottom:18px;

}

.mba-contact-form .mba-field-row{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:18px;

}

.mba-contact-form input,
.mba-contact-form select,
.mba-contact-form textarea{

    width:100%;

    padding:14px 16px;

    border:1px solid #d5d9df;

    border-radius:6px;

    background:#ffffff;

    font-size:1rem;

    color:#374151;

    box-sizing:border-box;

}

.mba-contact-form input:focus,
.mba-contact-form select:focus,
.mba-contact-form textarea:focus{

    outline:none;

    border-color:#12365d;

    box-shadow:0 0 0 3px rgba(18,54,93,.08);

}

.mba-contact-form textarea{

    min-height:160px;

    resize:vertical;

}

.mba-contact-form .mba-form-note{

    margin:8px 0 18px;

    color:#6b7280;

    font-size:.88rem;

    line-height:1.7;

}

.mba-form-note a{

    color:#14365d;

    text-decoration:underline;

    text-underline-offset:2px;

}

.mba-form-note a:hover{

    color:#001f3f;

}

.mba-contact-form .mba-button{

    width:100%;

    text-align:center;

    cursor:pointer;

}

.mba-form-success{

    padding:16px 18px;

    margin-bottom:22px;

    background:#f0f7f2;

    border:1px solid #cfe3d5;

    color:#1f4d32;

    border-radius:6px;

}

.mba-form-error{

    padding:16px 18px;

    margin-bottom:22px;

    background:#fdf2f2;

    border:1px solid #f0c9c9;

    color:#7a1f1f;

    border-radius:6px;

}

.mba-entry-content.prose,
.mba-prose{

    max-width:760px;

    margin:0 auto;

    color:#4b5563;

    font-size:1rem;

    line-height:1.85;

}

.mba-prose h1,
.mba-prose h2,
.mba-prose h3{

    color:#12365d;

    font-family:'Inter',system-ui,sans-serif;

    font-weight:300;

    font-variation-settings:"wght" 300,"opsz" 24;

    line-height:1.2;

}

.mba-prose h1{

    font-size:clamp(2rem,3vw,2.5rem);

    letter-spacing:-.02em;

}

.mba-prose h2{

    font-size:1.6rem;

}

.mba-prose h3{

    font-size:1.2rem;

    font-weight:500;

    font-variation-settings:"wght" 500,"opsz" 16;

}

.mba-prose p{

    margin-bottom:18px;

    color:#4b5563;

    font-weight:375;

    font-variation-settings:"wght" 375,"opsz" 16;

    line-height:1.85;

}

.mba-page-header{
    /* legacy centered headers — superseded by page heroes */
    display:none;
}

@media (max-width:992px){

    .mba-contact-grid{

        grid-template-columns:1fr;

        gap:40px;

    }

    .mba-contact-form .mba-field-row{

        grid-template-columns:1fr;

    }

    .mba-cta-split{

        grid-template-columns:1fr;

    }

    .mba-cta-panel + .mba-cta-panel{

        border-left:none;

        border-top:1px solid #e3e7eb;

    }

}

@media (max-width:768px){

    .mba-focus-grid{

        grid-template-columns:1fr;

    }

    .mba-hero{

        height:460px;

        margin-top:-90px !important;

    }

    body{

        padding-top:90px !important;

    }

    .mba-hero-content{

        /* header ~90px; former ~120 → halfway ≈ 105 */
        top:105px;

        left:16px;

    }

    .mba-hero-actions .mba-button{

        width:100%;

        text-align:center;

    }

    .mba-cta h2{

        font-size:1.6rem;

    }

    .mba-contact-form{

        padding:28px;

    }

}

/*====================================================
29. PRINT
====================================================*/

@media print{

    .top-login-bar,
    nav,
    .mba-mobile-menu,
    .mba-mobile-toggle,
    .no-print{

        display:none !important;

    }

    body{

        padding-top:0;

        background:#ffffff;

    }

    .page-section{

        display:block !important;

    }

}



/*====================================================
END OF STYLESHEET
====================================================*/
/*====================================================
PRIVACY SETTINGS (cookie preference center)
====================================================*/

.mba-privacy-settings{
    max-width:860px;
}

.mba-privacy-settings-form{
    margin-top:36px;
}

.mba-privacy-category{
    border:1px solid #e5e7eb;
    border-radius:8px;
    padding:22px 24px;
    margin-bottom:16px;
    background:#fff;
}

.mba-privacy-category-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
}

.mba-privacy-category h3{
    margin:0 0 8px;
    color:#12365d;
    font-size:1.05rem;
    font-weight:500;
    font-variation-settings:"wght" 500,"opsz" 16;
}

.mba-privacy-category p{
    margin:0;
    max-width:560px;
    color:#4b5563;
    font-size:.95rem;
    font-weight:375;
    line-height:1.7;
}

.mba-privacy-switch{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:6px;
    flex:0 0 auto;
    cursor:pointer;
    user-select:none;
}

.mba-privacy-switch input[type="checkbox"]{
    position:absolute;
    opacity:0;
    width:1px;
    height:1px;
}

.mba-privacy-switch-ui{
    position:relative;
    width:48px;
    height:28px;
    border-radius:999px;
    background:#d1d5db;
    transition:background .2s ease;
}

.mba-privacy-switch-ui::after{
    content:"";
    position:absolute;
    top:3px;
    left:3px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 1px 3px rgba(0,0,0,.2);
    transition:transform .2s ease;
}

.mba-privacy-switch input:checked + .mba-privacy-switch-ui{
    background:#14365d;
}

.mba-privacy-switch input:checked + .mba-privacy-switch-ui::after{
    transform:translateX(20px);
}

.mba-privacy-switch-locked{
    cursor:default;
    color:#6b7280;
    font-size:.85rem;
    font-weight:500;
}

.mba-privacy-switch-label{
    font-size:.75rem;
    font-weight:500;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#6b7280;
}

.mba-privacy-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.mba-privacy-status{
    margin-top:18px;
    color:#12365d;
    font-weight:500;
}

.mba-privacy-footnote{
    margin-top:28px;
    color:#6b7280;
    font-size:.9rem;
}

.mba-legal-note{
    margin-top:40px;
    color:#9ca3af;
    font-size:.9rem;
}

@media (max-width:640px){
    .mba-privacy-category-head{
        flex-direction:column;
    }
    .mba-privacy-switch{
        align-items:flex-start;
    }
}

/*====================================================
LEGAL PAGES (no hero) + PRIVACY SETTINGS MODAL
====================================================*/

/* Pull legal content up under fixed header (~5/8 of prior empty gap) */
.mba-section.mba-legal-page{
    padding-top:18px;
    padding-bottom:52px;
}

.mba-legal-title{
    margin-bottom:22px;
    max-width:none;
}

/* Match standard section H2 (beat .mba-prose h2 1.6rem override) */
.mba-legal-prose .mba-legal-title h2,
.mba-legal-prose.mba-prose .mba-legal-title h2{
    display:inline-block;
    position:relative;
    margin:0 0 22px;
    padding-bottom:18px;
    color:#001f3f;
    font-family:'Inter',system-ui,sans-serif;
    font-size:clamp(2rem,3vw,2.55rem);
    font-weight:250;
    font-variation-settings:"wght" 250,"opsz" 28;
    letter-spacing:-.02em;
    line-height:1.2;
}

.mba-legal-prose .mba-legal-title h2::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:82px;
    height:2px;
    background:#173a67;
}

/* Match regular page body / editorial body */
.mba-legal-prose.mba-prose{
    max-width:760px;
    margin:0;
    color:#4b5563;
    font-size:1rem;
    font-weight:375;
    font-variation-settings:"wght" 375,"opsz" 17;
    line-height:1.85;
}

.mba-legal-prose.mba-prose p,
.mba-legal-prose.mba-prose li{
    margin:0 0 18px;
    color:#4b5563;
    font-size:1rem;
    font-weight:375;
    font-variation-settings:"wght" 375,"opsz" 17;
    line-height:1.85;
}

.mba-legal-prose h3{
    margin:28px 0 12px;
    color:#12365d;
    font-size:1.2rem;
    font-weight:500;
    font-variation-settings:"wght" 500,"opsz" 16;
    letter-spacing:-.01em;
    text-transform:none;
}

body.mba-privacy-modal-open{
    overflow:hidden;
}

.mba-privacy-modal[hidden]{
    display:none !important;
}

.mba-privacy-modal{
    position:fixed;
    inset:0;
    z-index:10050;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px 16px;
}

.mba-privacy-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.4);
}

/* UBS-like: wider, shorter panel */
.mba-privacy-modal-dialog{
    position:relative;
    z-index:1;
    width:min(720px,100%);
    max-height:min(78vh,560px);
    overflow:auto;
    background:#ffffff;
    border-radius:6px;
    box-shadow:0 18px 48px rgba(0,0,0,.22);
    padding:20px 22px 16px;
}

.mba-privacy-modal-close{
    position:absolute;
    top:8px;
    right:10px;
    border:0;
    background:transparent;
    color:#6b7280;
    font-size:1.4rem;
    line-height:1;
    cursor:pointer;
    padding:2px 6px;
}

.mba-privacy-modal-close:hover{
    color:#111827;
}

.mba-privacy-modal-body h2{
    margin:0 36px 8px 0;
    color:#001f3f;
    font-size:1.15rem;
    font-weight:400;
    font-variation-settings:"wght" 400,"opsz" 18;
    letter-spacing:-.01em;
}

.mba-privacy-modal-lead,
.mba-privacy-modal-download{
    margin:0 0 10px;
    color:#4b5563;
    font-size:.82rem;
    font-weight:375;
    font-variation-settings:"wght" 375,"opsz" 14;
    line-height:1.55;
}

.mba-privacy-modal-download a{
    color:#14365d;
    text-decoration:underline;
    text-underline-offset:2px;
    font-size:.82rem;
}

.mba-privacy-modal .mba-privacy-category{
    margin-bottom:8px;
    padding:10px 12px;
    border-radius:4px;
}

.mba-privacy-modal .mba-privacy-category h3{
    margin:0 0 4px;
    font-size:.88rem;
    font-weight:500;
    font-variation-settings:"wght" 500,"opsz" 14;
}

.mba-privacy-modal .mba-privacy-category p{
    font-size:.78rem;
    line-height:1.45;
    max-width:none;
}

.mba-privacy-modal .mba-privacy-switch-ui{
    width:40px;
    height:22px;
}

.mba-privacy-modal .mba-privacy-switch-ui::after{
    width:16px;
    height:16px;
    top:3px;
    left:3px;
}

.mba-privacy-modal .mba-privacy-switch input:checked + .mba-privacy-switch-ui::after{
    transform:translateX(18px);
}

.mba-privacy-modal .mba-privacy-switch-label{
    font-size:.65rem;
}

.mba-privacy-modal .mba-privacy-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-top:12px;
}

.mba-privacy-modal .mba-privacy-actions .mba-button{
    padding:8px 14px;
    font-size:.68rem;
    letter-spacing:.1em;
}

.mba-privacy-modal .mba-privacy-status{
    margin-top:10px;
    font-size:.8rem;
}

@media (max-width:640px){
    .mba-privacy-modal-dialog{
        padding:16px 14px 14px;
        max-height:88vh;
        width:100%;
    }
    .mba-privacy-modal .mba-privacy-actions{
        flex-direction:column;
        align-items:stretch;
    }
    .mba-privacy-modal .mba-privacy-actions .mba-button{
        width:100%;
        text-align:center;
    }
}
