/* SAM Registry Site Styles v0.3.6 */
:root{--sam-navy:#062f67;--sam-red:#e03b43}html body.home{background:#fff!important;overflow-x:hidden!important}
html body.home .sam-header-row-auto{position:relative!important;z-index:5!important;margin:0 auto!important;background:#fff!important}html body.home .sam-header-row-auto:before{content:""!important;position:absolute!important;z-index:-1!important;inset:0 auto 0 50%!important;width:100vw!important;transform:translateX(-50%)!important;background:#fff!important}
html body.home .sam-nav-row-auto{position:relative!important;z-index:6!important;min-height:62px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;background:var(--sam-navy)!important}html body.home .sam-nav-row-auto:before{content:""!important;position:absolute!important;z-index:-1!important;inset:0 auto 0 50%!important;width:100vw!important;transform:translateX(-50%)!important;background:var(--sam-navy)!important}html body.home .sam-nav-row-auto>.et_pb_column{min-height:62px!important;display:flex!important;align-items:center!important}html body.home .sam-nav-row-auto .et_pb_module{margin:0!important}html body.home .sam-nav-row-auto,html body.home .sam-nav-row-auto a,html body.home .sam-nav-row-auto p,html body.home .sam-nav-row-auto span{font-family:Arial,Helvetica,sans-serif!important;font-weight:600!important}html body.home .sam-nav-row-auto a,html body.home .sam-nav-row-auto li{border-bottom:0!important;box-shadow:none!important;text-decoration:none!important}html body.home .sam-nav-row-auto a:before,html body.home .sam-nav-row-auto a:after,html body.home .sam-nav-row-auto li:before,html body.home .sam-nav-row-auto li:after{display:none!important;content:none!important}html body.home .sam-nav-row-auto a{background-image:linear-gradient(#fff,#fff)!important;background-repeat:no-repeat!important;background-position:center calc(100% - 1px)!important;background-size:0 2px!important;transition:background-size .16s ease!important}@media(hover:hover) and (pointer:fine){html body.home .sam-nav-row-auto a:hover{background-size:58% 2px!important}}
html body.home .sam-lookup-section-auto{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important}html body.home .sam-lookup-row-auto{position:relative!important;isolation:isolate!important;width:100%!important;max-width:none!important;min-height:calc(100vh - 205px)!important;margin:0!important;padding:52px 5% 92px!important;box-sizing:border-box!important;overflow:hidden!important;background:url("sam-hero-bg-036.svg") center top/cover no-repeat!important}html body.home .sam-lookup-row-auto .et_pb_column{width:100%!important}
html body.home .sam-hero-widget{width:100%!important;max-width:1080px!important;margin:0 auto!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}html body.home .sam-hero-widget .srel-head{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
html body.home .sam-hero-emblem{width:74px!important;height:74px!important;margin:0 auto 19px!important;border-radius:50%!important;border:1px solid rgba(6,47,103,.1)!important;background:#fff url("shield-star.svg") center/44px 44px no-repeat!important;box-shadow:0 6px 16px rgba(6,47,103,.08)!important;position:relative!important}html body.home .sam-hero-emblem:before,html body.home .sam-hero-emblem:after{content:""!important;position:absolute!important;top:50%!important;width:58px!important;height:1px!important;background:#9eaab5!important}html body.home .sam-hero-emblem:before{right:calc(100% + 20px)!important}html body.home .sam-hero-emblem:after{left:calc(100% + 20px)!important}
html body.home .sam-hero-widget .srel-heading{max-width:1040px!important;margin:0 auto!important;padding:0!important;color:#062f67!important;font-family:Georgia,"Times New Roman",serif!important;font-size:48px!important;line-height:1.08!important;font-weight:700!important;letter-spacing:-.018em!important;text-align:center!important;background:transparent!important;border:0!important}
html body.home .sam-hero-divider{display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important;margin:24px auto 22px!important;color:var(--sam-navy)!important}html body.home .sam-hero-divider span{width:110px!important;height:2px!important;background:var(--sam-red)!important}html body.home .sam-hero-divider b{font-size:15px!important;font-weight:400!important;line-height:1!important}
html body.home .sam-search-card{width:min(900px,88%)!important;margin:0 auto!important;padding:30px 34px 34px!important;box-sizing:border-box!important;background:rgba(255,255,255,.985)!important;border:1px solid rgba(135,151,166,.24)!important;border-radius:14px!important;box-shadow:0 15px 32px rgba(36,48,60,.09),0 3px 7px rgba(36,48,60,.04)!important}html body.home .sam-search-card .srel-subheading{display:block!important;margin:0 0 23px!important;color:#26323d!important;font-family:Arial,Helvetica,sans-serif!important;font-size:17px!important;line-height:1.4!important;text-align:center!important}html body.home .sam-search-card .srel-form{display:flex!important;gap:14px!important;width:100%!important;margin:0!important}html body.home .sam-search-card .srel-input{flex:1 1 auto!important;min-width:0!important;min-height:64px!important;padding:0 20px 0 58px!important;box-sizing:border-box!important;border:1px solid #c6d0d9!important;border-radius:7px!important;background:#fff url("search.svg") 18px center/27px 27px no-repeat!important;color:#414850!important;font-family:Arial,Helvetica,sans-serif!important;font-size:17px!important}html body.home .sam-search-card .srel-input:focus{outline:0!important;border-color:#6c859b!important;box-shadow:0 0 0 3px rgba(6,47,103,.055)!important}html body.home .sam-search-card .srel-search{flex:0 0 220px!important;min-height:64px!important;padding:0 22px!important;border:1px solid #042553!important;border-radius:7px!important;background:#082f67!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;font-weight:700!important;letter-spacing:.012em!important;box-shadow:0 3px 8px rgba(6,47,103,.08)!important;cursor:pointer!important}html body.home .sam-search-card .srel-search:after{content:"›"!important;display:inline-block!important;margin-left:15px!important;font-size:26px!important;line-height:0!important;transform:translateY(2px)!important}html body.home .sam-search-card .srel-search:hover{background:#0b3c79!important}
@media(max-width:980px){html body.home .sam-lookup-row-auto{min-height:auto!important;padding:48px 5% 80px!important;background-size:auto 100%!important}html body.home .sam-hero-widget .srel-heading{font-size:40px!important}html body.home .sam-search-card{width:92%!important}}@media(max-width:650px){html body.home .sam-lookup-row-auto{padding:36px 4.5% 68px!important;background:linear-gradient(180deg,#fff,#f7f8fa)!important}html body.home .sam-hero-emblem{width:60px!important;height:60px!important;background-size:38px 38px!important}html body.home .sam-hero-widget .srel-heading{font-size:31px!important}html body.home .sam-hero-divider span{width:56px!important}html body.home .sam-search-card{width:100%!important;padding:22px 18px!important}html body.home .sam-search-card .srel-form{display:block!important}html body.home .sam-search-card .srel-input{width:100%!important;min-height:58px!important;font-size:16px!important}html body.home .sam-search-card .srel-search{width:100%!important;min-height:58px!important;margin-top:10px!important}}


/* ===== v0.3.7 BANNER ALIGNMENT FIX =====
   Header and nav now use the exact same centered content grid.
   Full-width background bands remain full width.
*/
html body.home .sam-header-row-auto,
html body.home .sam-nav-row-auto {
    width: 86% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

html body.home .sam-nav-row-auto {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Keep full viewport-width navy/white bands independent from content width. */
html body.home .sam-header-row-auto::before,
html body.home .sam-nav-row-auto::before {
    left: 50% !important;
    width: 100vw !important;
    transform: translateX(-50%) !important;
}

/* Make the nav's internal column consume the same usable width cleanly. */
html body.home .sam-nav-row-auto > .et_pb_column {
    width: 100% !important;
    margin: 0 !important;
}

/* Responsive grid remains centered without crowding mobile. */
@media (max-width: 980px) {
    html body.home .sam-header-row-auto,
    html body.home .sam-nav-row-auto {
        width: 92% !important;
        max-width: none !important;
    }
}


/* ===== v0.3.8 PROFESSIONAL POLISH ONLY =====
   No layout redesign. v0.3.7 remains the rollback checkpoint.
*/
:root {
    --sam-deep-blue: #153f67;
    --sam-heading-blue: #123b61;
    --sam-action-blue: #2b679c;
    --sam-action-blue-hover: #235b8d;
    --sam-detail-blue: #6f8fa9;
    --sam-soft-surface: #f8fafc;
    --sam-page-surface: #f3f6f8;
    --sam-line: #d7e0e7;
}

/* Header: slightly less stark and slightly tighter, without touching its content. */
html body.home .sam-header-row-auto {
    background: #fbfcfd !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}
html body.home .sam-header-row-auto::before {
    background: #fbfcfd !important;
}

/* Navigation: softened navy and slightly tighter height. */
html body.home .sam-nav-row-auto {
    background: var(--sam-deep-blue) !important;
    min-height: 58px !important;
}
html body.home .sam-nav-row-auto::before {
    background: var(--sam-deep-blue) !important;
}
html body.home .sam-nav-row-auto > .et_pb_column {
    min-height: 58px !important;
}

/* Public Sans for interface typography only.
   Logo / phone / CERTIFIED ASSISTANCE are deliberately untouched. */
html body.home .sam-nav-row-auto,
html body.home .sam-nav-row-auto a,
html body.home .sam-nav-row-auto p,
html body.home .sam-nav-row-auto span,
html body.home .sam-hero-widget .srel-heading,
html body.home .sam-search-card .srel-subheading,
html body.home .sam-search-card .srel-input,
html body.home .sam-search-card .srel-search {
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

/* Nav typography: cleaner UI proportions. */
html body.home .sam-nav-row-auto a,
html body.home .sam-nav-row-auto p,
html body.home .sam-nav-row-auto span {
    font-weight: 600 !important;
    letter-spacing: .005em !important;
}

/* Hero uses subtle off-white surfaces rather than pure white everywhere. */
html body.home .sam-lookup-section-auto {
    background: var(--sam-page-surface) !important;
}
html body.home .sam-lookup-row-auto {
    background-color: var(--sam-soft-surface) !important;
}

/* Headline: modern sans-serif instead of traditional serif. */
html body.home .sam-hero-widget .srel-heading {
    color: var(--sam-heading-blue) !important;
    font-size: 45px !important;
    line-height: 1.10 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

/* Shield and connector details use a separate blue level. */
html body.home .sam-hero-emblem {
    border-color: rgba(31,90,136,.14) !important;
    box-shadow: 0 5px 15px rgba(21,63,103,.07) !important;
}
html body.home .sam-hero-emblem::before,
html body.home .sam-hero-emblem::after {
    background: var(--sam-detail-blue) !important;
    opacity: .72 !important;
}

/* Divider: keep red line, but stars use the middle blue for contrast. */
html body.home .sam-hero-divider {
    color: var(--sam-action-blue) !important;
}

/* Search card gets a barely cooler surface and cleaner border. */
html body.home .sam-search-card {
    background: rgba(255,255,255,.98) !important;
    border-color: var(--sam-line) !important;
    box-shadow:
        0 13px 30px rgba(34,56,76,.075),
        0 2px 5px rgba(34,56,76,.03) !important;
}

/* Supporting line: modern and slightly quieter. */
html body.home .sam-search-card .srel-subheading {
    color: #46515b !important;
    font-size: 16px !important;
    font-weight: 400 !important;
}

/* Input: steel-blue search icon/border/focus. */
html body.home .sam-search-card .srel-input {
    border-color: #c4d0da !important;
    color: #39444d !important;
    background-color: #fff !important;
}
html body.home .sam-search-card .srel-input:focus {
    border-color: var(--sam-action-blue) !important;
    box-shadow: 0 0 0 3px rgba(43,103,156,.09) !important;
}

/* Button: intentionally one shade lighter than the navigation. */
html body.home .sam-search-card .srel-search {
    background: var(--sam-action-blue) !important;
    border-color: var(--sam-deep-blue) !important;
    box-shadow: 0 3px 7px rgba(21,63,103,.09) !important;
}
html body.home .sam-search-card .srel-search:hover {
    background: var(--sam-action-blue-hover) !important;
}

/* White nav hover underline remains restrained. */
@media (hover:hover) and (pointer:fine) {
    html body.home .sam-nav-row-auto a:hover {
        background-size: 52% 2px !important;
    }
}

/* Responsive type stays proportional. */
@media (max-width: 980px) {
    html body.home .sam-hero-widget .srel-heading {
        font-size: 38px !important;
    }
}
@media (max-width: 650px) {
    html body.home .sam-header-row-auto {
        padding-top: 3px !important;
        padding-bottom: 3px !important;
    }
    html body.home .sam-hero-widget .srel-heading {
        font-size: 30px !important;
    }
}


/* ===== v0.3.9 NAV-ONLY REFINEMENT =====
   Preserve approved v0.3.8 design; soften only the navy-to-hero transition.
*/

/* Slight tonal depth so the nav does not read as one flat slab. */
html body.home .sam-nav-row-auto,
html body.home .sam-nav-row-auto::before {
    background: linear-gradient(
        180deg,
        #173f68 0%,
        #153f67 58%,
        #123a61 100%
    ) !important;
}

/* Add a very shallow navy curve below the nav.
   This visually connects the hard navigation bar to the soft hero beneath it. */
html body.home .sam-nav-row-auto::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    z-index: -1 !important;
    left: 50% !important;
    bottom: -14px !important;
    width: 100vw !important;
    height: 16px !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;
    background:
        url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 22' preserveAspectRatio='none'>\
<defs>\
<linearGradient id='g' x1='0' y1='0' x2='0' y2='1'>\
<stop offset='0' stop-color='%23123a61'/>\
<stop offset='1' stop-color='%23153f67'/>\
</linearGradient>\
</defs>\
<path fill='url(%23g)' d='M0 0H1600V2C1260 15 1015 19 800 19S340 15 0 2Z'/>\
</svg>") center top / 100% 100% no-repeat !important;
    opacity: 1 !important;
}

/* Very light separation shadow — enough to create depth, not a floating navbar. */
html body.home .sam-nav-row-auto {
    box-shadow: 0 6px 12px rgba(19, 48, 78, .07) !important;
    margin-bottom: 14px !important;
}

/* Counter the added transition space so the approved hero composition stays put. */
html body.home .sam-lookup-section-auto {
    margin-top: -14px !important;
    padding-top: 14px !important;
}

/* Keep mobile simpler; curve becomes slightly shallower. */
@media (max-width: 650px) {
    html body.home .sam-nav-row-auto::after {
        bottom: -10px !important;
        height: 12px !important;
    }
    html body.home .sam-nav-row-auto {
        margin-bottom: 10px !important;
    }
    html body.home .sam-lookup-section-auto {
        margin-top: -10px !important;
        padding-top: 10px !important;
    }
}


/* ===== v0.4.0 MODERN BANNER DETAIL =====
   Banner-only refinement. No hero/layout changes.
*/

html body.home .sam-nav-row-auto,
html body.home .sam-nav-row-auto::before {
    background:
        linear-gradient(
            115deg,
            rgba(255,255,255,0) 0%,
            rgba(255,255,255,0) 30%,
            rgba(255,255,255,.035) 42%,
            rgba(255,255,255,.012) 48%,
            rgba(255,255,255,0) 57%,
            rgba(255,255,255,0) 100%
        ),
        radial-gradient(
            ellipse at 10% 50%,
            rgba(255,255,255,.025) 0%,
            rgba(255,255,255,0) 42%
        ),
        linear-gradient(
            180deg,
            #173f68 0%,
            #153f67 58%,
            #123a61 100%
        ) !important;
}

html body.home .sam-nav-row-auto {
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.11),
        inset 0 -1px 0 rgba(4,25,45,.16),
        0 6px 12px rgba(19,48,78,.07) !important;
}

html body.home .sam-nav-row-auto > .et_pb_column,
html body.home .sam-nav-row-auto .et_pb_module,
html body.home .sam-nav-row-auto a {
    position: relative !important;
    z-index: 2 !important;
}


/* =========================================================
   v0.4.1 — modern nav hover + homepage support + help modal
   Current header/hero composition remains untouched.
   ========================================================= */

/* 1) NAV: remove underline behavior and replace with subtle hover tab */
html body.home .sam-nav-row-auto a {
    background-image: none !important;
    border-radius: 7px !important;
    transition:
        background-color .16s ease,
        color .16s ease,
        box-shadow .16s ease,
        transform .16s ease !important;
}
html body.home .sam-nav-row-auto a::before,
html body.home .sam-nav-row-auto a::after {
    content: none !important;
    display: none !important;
}
@media (hover:hover) and (pointer:fine) {
    html body.home .sam-nav-row-auto a:hover {
        background: rgba(255,255,255,.085) !important;
        box-shadow: inset 0 0 0 1px rgba(255,255,255,.045) !important;
        transform: translateY(-1px) !important;
    }
}

/* Hide only the old Registration Support row that this section replaces */
html body.home .sam-old-registration-support-hidden {
    display: none !important;
}

/* 2) BELOW-HERO REGISTRATION SUPPORT */
html body.home .sam-support-v041 {
    position: relative !important;
    z-index: 2 !important;
    margin: 0 !important;
    padding: 76px 5% 84px !important;
    background:
        linear-gradient(180deg, #ffffff 0%, #fbfcfd 62%, #f6f8fa 100%) !important;
    border-top: 1px solid #e5eaee !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

html body.home .sam-support-shell-v041 {
    width: 86% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
}

html body.home .sam-support-kicker-v041 {
    margin: 0 0 10px !important;
    color: #2b679c !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .13em !important;
    text-align: center !important;
}

html body.home .sam-support-v041 h2 {
    margin: 0 !important;
    color: #173f68 !important;
    font-size: 36px !important;
    line-height: 1.17 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
    text-align: center !important;
}

html body.home .sam-support-intro-v041 {
    max-width: 760px !important;
    margin: 16px auto 42px !important;
    color: #687580 !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    text-align: center !important;
}

html body.home .sam-support-grid-v041 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 22px !important;
}

html body.home .sam-support-card-v041 {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 312px !important;
    padding: 30px 30px 26px !important;
    overflow: hidden !important;
    background: #fff !important;
    border: 1px solid #dce4ea !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 24px rgba(25,48,69,.045) !important;
}

html body.home .sam-support-card-v041::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    height: 3px !important;
    background: #2b679c !important;
}
html body.home .sam-support-card-new-v041::before { background: #466f91 !important; }
html body.home .sam-support-card-renew-v041::before { background: #2b679c !important; }
html body.home .sam-support-card-update-v041::before { background: #6f8fa9 !important; }

html body.home .sam-support-icon-v041 {
    display: grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 0 19px !important;
    color: #2b679c !important;
    background: #f0f5f9 !important;
    border: 1px solid #d9e5ee !important;
    border-radius: 10px !important;
    font-size: 23px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

html body.home .sam-support-card-v041 h3 {
    margin: 0 0 14px !important;
    color: #2c3944 !important;
    font-size: 22px !important;
    line-height: 1.3 !important;
    font-weight: 650 !important;
    letter-spacing: -.015em !important;
}

html body.home .sam-support-card-v041 p {
    margin: 0 0 28px !important;
    color: #65717b !important;
    font-size: 15.5px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

html body.home .sam-support-action-v041 {
    width: 100% !important;
    min-height: 48px !important;
    margin: auto 0 0 !important;
    padding: 0 18px !important;
    border: 1px solid #d7e3ec !important;
    border-radius: 8px !important;
    background: #f2f6f9 !important;
    color: #245f93 !important;
    font: 700 14px/1.2 "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    cursor: pointer !important;
    transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease !important;
}
html body.home .sam-support-action-v041 span {
    margin-left: 8px !important;
    font-size: 22px !important;
    vertical-align: -1px !important;
}
html body.home .sam-support-action-v041:hover {
    background: #e9f1f7 !important;
    border-color: #c8d8e5 !important;
    color: #173f68 !important;
    transform: translateY(-1px) !important;
}

/* 3) FLOATING NEED HELP BUTTON */
html body .sam-help-button-v041 {
    position: fixed !important;
    right: 22px !important;
    bottom: 22px !important;
    z-index: 99998 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 46px !important;
    padding: 0 16px 0 11px !important;
    border: 1px solid #174a77 !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, #2c6fa7 0%, #245f93 100%) !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(21,63,103,.20) !important;
    font: 700 14px/1 "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    cursor: pointer !important;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease !important;
}
html body .sam-help-button-v041:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 11px 26px rgba(21,63,103,.24) !important;
    background: linear-gradient(180deg, #3478b1 0%, #28689f 100%) !important;
}
html body .sam-help-q-v041 {
    display: grid !important;
    place-items: center !important;
    width: 25px !important;
    height: 25px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.14) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    font-size: 15px !important;
}

/* MODAL */
html body.sam-help-open-v041 {
    overflow: hidden !important;
}

html body .sam-help-overlay-v041 {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 26px !important;
    background: rgba(10,25,40,.56) !important;
    backdrop-filter: blur(2px) !important;
    -webkit-backdrop-filter: blur(2px) !important;
}
html body .sam-help-overlay-v041.is-open {
    display: flex !important;
}

html body .sam-help-dialog-v041 {
    width: min(790px, 100%) !important;
    max-height: calc(100vh - 52px) !important;
    overflow: auto !important;
    background: #fff !important;
    border: 1px solid rgba(255,255,255,.28) !important;
    border-radius: 16px !important;
    box-shadow: 0 28px 70px rgba(0,0,0,.25) !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

html body .sam-help-head-v041 {
    position: relative !important;
    padding: 29px 64px 27px 32px !important;
    background:
        linear-gradient(125deg, rgba(255,255,255,.03), rgba(255,255,255,0) 52%),
        linear-gradient(180deg, #1d527e 0%, #17456e 100%) !important;
    color: #fff !important;
}

html body .sam-help-eyebrow-v041 {
    margin: 0 0 7px !important;
    color: rgba(255,255,255,.70) !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .14em !important;
}

html body .sam-help-head-v041 h2 {
    margin: 0 0 7px !important;
    color: #fff !important;
    font-size: 27px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: -.02em !important;
}

html body .sam-help-head-v041 p {
    max-width: 650px !important;
    margin: 0 !important;
    color: rgba(255,255,255,.84) !important;
    font-size: 14.5px !important;
    line-height: 1.55 !important;
}

html body .sam-help-close-v041 {
    position: absolute !important;
    top: 18px !important;
    right: 20px !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.08) !important;
    color: rgba(255,255,255,.86) !important;
    font-size: 25px !important;
    line-height: 1 !important;
    cursor: pointer !important;
}
html body .sam-help-close-v041:hover {
    background: rgba(255,255,255,.14) !important;
    color: #fff !important;
}

html body .sam-help-form-v041 {
    padding: 30px 32px 32px !important;
}

html body .sam-help-row-v041 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
}

html body .sam-help-form-v041 label {
    display: block !important;
    margin: 0 0 18px !important;
    color: #33495d !important;
    font-size: 13.5px !important;
    line-height: 1.3 !important;
    font-weight: 650 !important;
}
html body .sam-help-form-v041 label > span:first-child,
html body .sam-help-form-v041 label span {
    color: inherit !important;
}
html body .sam-help-form-v041 label > span:not(.sam-help-consent-v041 span) {
    color: #d43d47 !important;
}

html body .sam-help-form-v041 input[type="text"],
html body .sam-help-form-v041 input[type="tel"],
html body .sam-help-form-v041 input[type="email"],
html body .sam-help-form-v041 select,
html body .sam-help-form-v041 textarea {
    width: 100% !important;
    margin: 7px 0 0 !important;
    padding: 12px 13px !important;
    box-sizing: border-box !important;
    border: 1px solid #ccd7e0 !important;
    border-radius: 7px !important;
    background: #f9fbfc !important;
    color: #33404b !important;
    font: 400 14px/1.4 "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    outline: 0 !important;
}
html body .sam-help-form-v041 input[type="text"],
html body .sam-help-form-v041 input[type="tel"],
html body .sam-help-form-v041 input[type="email"],
html body .sam-help-form-v041 select {
    min-height: 47px !important;
}
html body .sam-help-form-v041 textarea {
    min-height: 96px !important;
    resize: vertical !important;
}
html body .sam-help-form-v041 input:focus,
html body .sam-help-form-v041 select:focus,
html body .sam-help-form-v041 textarea:focus {
    border-color: #4d7da5 !important;
    box-shadow: 0 0 0 3px rgba(43,103,156,.09) !important;
    background: #fff !important;
}

html body .sam-help-hp-v041 {
    position: absolute !important;
    left: -99999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
}

html body .sam-help-consent-v041 {
    display: flex !important;
    align-items: flex-start !important;
    gap: 9px !important;
    margin: 4px 0 18px !important;
    padding: 12px 13px !important;
    background: #f5f8fa !important;
    border: 1px solid #e0e7ec !important;
    border-radius: 8px !important;
    color: #64717c !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
}
html body .sam-help-consent-v041 input {
    width: 15px !important;
    height: 15px !important;
    margin: 1px 0 0 !important;
    flex: 0 0 auto !important;
}

html body .sam-help-status-v041 {
    display: none !important;
    margin: 0 0 15px !important;
    padding: 11px 13px !important;
    border-radius: 7px !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}
html body .sam-help-status-v041.is-success {
    display: block !important;
    color: #285c3e !important;
    background: #eef7f1 !important;
    border: 1px solid #cee5d6 !important;
}
html body .sam-help-status-v041.is-error {
    display: block !important;
    color: #8c343b !important;
    background: #fff1f2 !important;
    border: 1px solid #f0d1d4 !important;
}

html body .sam-help-actions-v041 {
    display: flex !important;
    align-items: center !important;
    gap: 18px !important;
}

html body .sam-help-submit-v041 {
    min-height: 48px !important;
    padding: 0 20px !important;
    border: 1px solid #17496f !important;
    border-radius: 8px !important;
    background: #28679b !important;
    color: #fff !important;
    font: 700 13px/1 "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    letter-spacing: .02em !important;
    cursor: pointer !important;
}
html body .sam-help-submit-v041:hover {
    background: #225b8a !important;
}
html body .sam-help-submit-v041:disabled {
    opacity: .62 !important;
    cursor: wait !important;
}
html body .sam-help-submit-v041 span {
    margin-left: 7px !important;
    font-size: 19px !important;
}

html body .sam-help-call-v041 {
    color: #6a7781 !important;
    font-size: 13px !important;
}
html body .sam-help-call-v041 a {
    color: #245f93 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Responsive */
@media (max-width: 980px) {
    html body.home .sam-support-shell-v041 {
        width: 92% !important;
    }
    html body.home .sam-support-grid-v041 {
        grid-template-columns: 1fr !important;
        max-width: 720px !important;
        margin: 0 auto !important;
    }
    html body.home .sam-support-card-v041 {
        min-height: auto !important;
    }
}
@media (max-width: 650px) {
    html body.home .sam-support-v041 {
        padding: 56px 5% 66px !important;
    }
    html body.home .sam-support-v041 h2 {
        font-size: 29px !important;
    }
    html body.home .sam-support-intro-v041 {
        font-size: 15.5px !important;
        margin-bottom: 30px !important;
    }
    html body.home .sam-support-card-v041 {
        padding: 25px 22px 22px !important;
    }

    html body .sam-help-button-v041 {
        right: 14px !important;
        bottom: 14px !important;
        min-height: 43px !important;
        padding-right: 13px !important;
    }

    html body .sam-help-overlay-v041 {
        padding: 12px !important;
        align-items: flex-start !important;
        overflow-y: auto !important;
    }
    html body .sam-help-dialog-v041 {
        margin: 12px 0 !important;
        max-height: none !important;
    }
    html body .sam-help-head-v041 {
        padding: 24px 51px 23px 22px !important;
    }
    html body .sam-help-head-v041 h2 {
        font-size: 23px !important;
    }
    html body .sam-help-form-v041 {
        padding: 23px 21px 24px !important;
    }
    html body .sam-help-row-v041 {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }
    html body .sam-help-actions-v041 {
        display: block !important;
    }
    html body .sam-help-submit-v041 {
        width: 100% !important;
    }
    html body .sam-help-call-v041 {
        margin-top: 13px !important;
        text-align: center !important;
    }
}


/* =========================================================
   v0.4.2 — search card + CTA hierarchy refinement only
   ========================================================= */

/* Slightly more compact search card */
html body.home .sam-search-card {
    width: min(820px, 84%) !important;
    padding: 24px 26px 27px !important;
    border-radius: 12px !important;
    box-shadow:
        0 11px 25px rgba(34,56,76,.065),
        0 2px 4px rgba(34,56,76,.025) !important;
}

/* Tighten the helper copy */
html body.home .sam-search-card .srel-subheading {
    margin-bottom: 18px !important;
    font-size: 15.5px !important;
    line-height: 1.4 !important;
}

/* Condense input + primary CTA */
html body.home .sam-search-card .srel-form {
    gap: 12px !important;
}

html body.home .sam-search-card .srel-input {
    min-height: 56px !important;
    padding-left: 52px !important;
    font-size: 16px !important;
    background-size: 24px 24px !important;
    background-position: 17px center !important;
    border-radius: 7px !important;
}

/* CHECK STATUS becomes the obvious primary action without being oversized */
html body.home .sam-search-card .srel-search {
    flex-basis: 190px !important;
    min-height: 56px !important;
    padding: 0 18px !important;
    border-radius: 7px !important;
    background:
        linear-gradient(180deg, #3477ad 0%, #2b679c 100%) !important;
    border-color: #1d527e !important;
    box-shadow:
        0 3px 7px rgba(21,63,103,.10),
        inset 0 1px 0 rgba(255,255,255,.10) !important;
    transition:
        transform .16s ease,
        box-shadow .16s ease,
        background .16s ease,
        border-color .16s ease !important;
}

html body.home .sam-search-card .srel-search::after {
    margin-left: 11px !important;
    transition: transform .16s ease !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-search-card .srel-search:hover {
        background:
            linear-gradient(180deg, #2f6fa5 0%, #255e91 100%) !important;
        border-color: #173f68 !important;
        transform: translateY(-2px) !important;
        box-shadow:
            0 7px 14px rgba(21,63,103,.16),
            inset 0 1px 0 rgba(255,255,255,.11) !important;
    }

    html body.home .sam-search-card .srel-search:hover::after {
        transform: translate(3px, 2px) !important;
    }
}

/* At top of page, Need Help? becomes secondary so it does not compete with CHECK STATUS */
html body .sam-help-button-v041 {
    min-height: 40px !important;
    padding: 0 13px 0 9px !important;
    right: 18px !important;
    bottom: 18px !important;

    background: rgba(255,255,255,.96) !important;
    color: #245f93 !important;
    border: 1px solid #b9cbd9 !important;
    box-shadow: 0 5px 14px rgba(27,53,76,.10) !important;

    transition:
        transform .16s ease,
        box-shadow .16s ease,
        background .18s ease,
        color .18s ease,
        border-color .18s ease !important;
}

html body .sam-help-button-v041 .sam-help-q-v041 {
    width: 22px !important;
    height: 22px !important;
    background: #edf3f7 !important;
    border-color: #d6e2ea !important;
    color: #245f93 !important;
    font-size: 13px !important;
}

/* Once scrolling, it can become the stronger floating action again */
html body .sam-help-button-v041.is-scrolled-v042 {
    background: linear-gradient(180deg, #2c6fa7 0%, #245f93 100%) !important;
    color: #fff !important;
    border-color: #174a77 !important;
    box-shadow: 0 8px 20px rgba(21,63,103,.18) !important;
}

html body .sam-help-button-v041.is-scrolled-v042 .sam-help-q-v041 {
    background: rgba(255,255,255,.14) !important;
    border-color: rgba(255,255,255,.22) !important;
    color: #fff !important;
}

@media (hover:hover) and (pointer:fine) {
    html body .sam-help-button-v041:hover {
        transform: translateY(-2px) !important;
        background: #f7fafc !important;
        border-color: #9eb8ca !important;
        box-shadow: 0 8px 18px rgba(27,53,76,.14) !important;
    }

    html body .sam-help-button-v041.is-scrolled-v042:hover {
        background: linear-gradient(180deg, #3478b1 0%, #28689f 100%) !important;
        border-color: #174a77 !important;
        box-shadow: 0 11px 24px rgba(21,63,103,.22) !important;
    }
}

/* Keep responsive behavior clean */
@media (max-width: 980px) {
    html body.home .sam-search-card {
        width: 90% !important;
    }
}
@media (max-width: 650px) {
    html body.home .sam-search-card {
        width: 100% !important;
        padding: 20px 17px !important;
    }
    html body.home .sam-search-card .srel-input,
    html body.home .sam-search-card .srel-search {
        min-height: 54px !important;
    }
    html body .sam-help-button-v041 {
        right: 12px !important;
        bottom: 12px !important;
    }
}


/* =========================================================
   v0.4.3 — modern banner + vertical rhythm refinement
   Keeps the approved design. No structural redesign.
   ========================================================= */

/* ---- NAV/BANNER: shorter, cleaner, more modern ---- */

/* Remove prior wave/curve treatment entirely. */
html body.home .sam-nav-row-auto::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    z-index: -1 !important;
    left: 50% !important;
    bottom: -7px !important;
    width: 100vw !important;
    height: 8px !important;
    transform: translateX(-50%) !important;
    pointer-events: none !important;

    /* Modern layered edge: steel-blue hairline into a soft fade. */
    background:
        linear-gradient(
            180deg,
            rgba(118,153,180,.62) 0px,
            rgba(118,153,180,.62) 1px,
            rgba(18,58,97,.14) 1px,
            rgba(18,58,97,.055) 4px,
            rgba(18,58,97,0) 8px
        ) !important;

    opacity: 1 !important;
}

/* Slightly shorter banner height. */
html body.home .sam-nav-row-auto {
    min-height: 52px !important;
    margin-bottom: 7px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        inset 0 -1px 0 rgba(6,28,48,.14) !important;
}
html body.home .sam-nav-row-auto > .et_pb_column {
    min-height: 52px !important;
}

/* More refined layered navy surface: no obvious gimmick, just depth. */
html body.home .sam-nav-row-auto,
html body.home .sam-nav-row-auto::before {
    background:
        radial-gradient(
            ellipse at 18% 45%,
            rgba(77,123,159,.18) 0%,
            rgba(77,123,159,.07) 27%,
            rgba(77,123,159,0) 54%
        ),
        radial-gradient(
            ellipse at 82% 55%,
            rgba(46,97,139,.11) 0%,
            rgba(46,97,139,.035) 30%,
            rgba(46,97,139,0) 58%
        ),
        linear-gradient(
            180deg,
            #173f68 0%,
            #143b62 100%
        ) !important;
}

/* Slightly tighter, more contemporary nav type. */
html body.home .sam-nav-row-auto a,
html body.home .sam-nav-row-auto p,
html body.home .sam-nav-row-auto span {
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .012em !important;
}

/* Modern hover stays subtle and compact. */
@media (hover:hover) and (pointer:fine) {
    html body.home .sam-nav-row-auto a:hover {
        background: rgba(255,255,255,.075) !important;
        box-shadow:
            inset 0 0 0 1px rgba(255,255,255,.045),
            0 1px 2px rgba(0,0,0,.04) !important;
        transform: translateY(-1px) !important;
    }
}

/* Counter the new banner edge spacing cleanly. */
html body.home .sam-lookup-section-auto {
    margin-top: -7px !important;
    padding-top: 7px !important;
}

/* ---- HERO: tighter vertical rhythm, same design ---- */

/* Reduce excess air above the shield and below the search card. */
html body.home .sam-lookup-row-auto {
    padding-top: 38px !important;
    padding-bottom: 66px !important;
    min-height: auto !important;
}

/* Bring emblem, headline, divider, and form into a tighter hierarchy. */
html body.home .sam-hero-emblem {
    width: 68px !important;
    height: 68px !important;
    margin-bottom: 14px !important;
    background-size: 40px 40px !important;
}

html body.home .sam-hero-emblem::before,
html body.home .sam-hero-emblem::after {
    width: 52px !important;
}

html body.home .sam-hero-widget .srel-heading {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

html body.home .sam-hero-divider {
    margin-top: 18px !important;
    margin-bottom: 18px !important;
}

/* Search card is already compact from v0.4.2;
   just pull it a little closer to the divider. */
html body.home .sam-search-card {
    margin-top: 0 !important;
}

/* Slightly tighter mobile rhythm too. */
@media (max-width: 980px) {
    html body.home .sam-nav-row-auto {
        min-height: 50px !important;
    }
    html body.home .sam-nav-row-auto > .et_pb_column {
        min-height: 50px !important;
    }
    html body.home .sam-lookup-row-auto {
        padding-top: 34px !important;
        padding-bottom: 58px !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-nav-row-auto {
        margin-bottom: 6px !important;
    }
    html body.home .sam-nav-row-auto::after {
        bottom: -6px !important;
        height: 7px !important;
    }
    html body.home .sam-lookup-section-auto {
        margin-top: -6px !important;
        padding-top: 6px !important;
    }
    html body.home .sam-lookup-row-auto {
        padding-top: 29px !important;
        padding-bottom: 50px !important;
    }
}


/* =========================================================
   v0.4.4 — LOCKED PRECISION PASS
   Palette, alignment, nav texture, help controls, compact form.
   No concept redesign.
   ========================================================= */

:root {
    --sam-header-bg: #F7F8FA;
    --sam-nav: #153F6B;
    --sam-nav-depth: #10385E;
    --sam-action: #2F6FA8;
    --sam-action-hover: #255D8F;
    --sam-text: #173B63;
    --sam-steel: #7F9DB4;
    --sam-border: #D7E1EB;
    --sam-red: #D9474F;
    --sam-container: 1280px;
    --sam-container-width: 86%;
}

/* ---------- exact shared grid ---------- */
html body.home .sam-header-row-auto,
html body.home .sam-nav-row-auto {
    width: var(--sam-container-width) !important;
    max-width: var(--sam-container) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

html body.home .sam-header-row-auto::before,
html body.home .sam-nav-row-auto::before {
    left: 50% !important;
    width: 100vw !important;
    transform: translateX(-50%) !important;
}

/* ---------- top header ---------- */
html body.home .sam-header-row-auto {
    min-height: 96px !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    background: var(--sam-header-bg) !important;
    align-items: center !important;
}

html body.home .sam-header-row-auto::before {
    background:
        linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,0)),
        var(--sam-header-bg) !important;
    border-bottom: 1px solid rgba(127,157,180,.20) !important;
}

/* Keep header content vertically aligned and allow help button on the right. */
html body.home .sam-header-row-auto > .et_pb_column {
    display: flex !important;
    align-items: center !important;
}

html body.home .sam-header-row-auto > .et_pb_column:last-child {
    justify-content: flex-end !important;
    gap: 20px !important;
}

/* Modest scale-down to make header feel tighter, not smaller-brand. */
html body.home .sam-header-row-auto img {
    max-height: 84px !important;
    width: auto !important;
}

/* Top Need Help button — secondary, quiet, same modal */
html body.home .sam-header-help-v044 {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 39px !important;
    padding: 0 13px 0 10px !important;
    border: 1px solid #AFC3D4 !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.68) !important;
    color: var(--sam-nav) !important;
    box-shadow: 0 2px 6px rgba(28,54,77,.045) !important;
    font: 650 13px/1 "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    cursor: pointer !important;
    transition: background .15s ease, border-color .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

html body.home .sam-header-help-icon-v044 {
    display: grid !important;
    place-items: center !important;
    width: 21px !important;
    height: 21px !important;
    border-radius: 50% !important;
    border: 1px solid #B8CAD8 !important;
    background: #F2F6F9 !important;
    color: var(--sam-action) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-header-help-v044:hover {
        background: #fff !important;
        border-color: #91ADC2 !important;
        box-shadow: 0 5px 12px rgba(28,54,77,.08) !important;
        transform: translateY(-1px) !important;
    }
}

/* ---------- nav: locked blue + subtle embedded flag texture ---------- */

/* Kill prior pseudo-wave / fade edge */
html body.home .sam-nav-row-auto::after {
    content: none !important;
    display: none !important;
}

html body.home .sam-nav-row-auto {
    min-height: 54px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.07),
        inset 0 -1px 0 rgba(6,27,46,.16),
        0 3px 8px rgba(18,47,73,.055) !important;
    background: transparent !important;
}

html body.home .sam-nav-row-auto::before {
    z-index: -1 !important;

    /* Stars left + broad flag-like tonal bands across the bar.
       All within one locked navy family, no bright gradient. */
    background:
        /* left stars */
        radial-gradient(circle at 2.2% 26%, rgba(255,255,255,.075) 0 4px, transparent 4.7px),
        radial-gradient(circle at 4.2% 48%, rgba(255,255,255,.060) 0 4px, transparent 4.7px),
        radial-gradient(circle at 6.2% 27%, rgba(255,255,255,.060) 0 4px, transparent 4.7px),
        radial-gradient(circle at 8.1% 50%, rgba(255,255,255,.050) 0 4px, transparent 4.7px),
        radial-gradient(circle at 3.1% 72%, rgba(255,255,255,.045) 0 4px, transparent 4.7px),
        radial-gradient(circle at 6.8% 75%, rgba(255,255,255,.045) 0 4px, transparent 4.7px),

        /* embedded flag-wave texture */
        radial-gradient(ellipse 42% 34% at 63% 15%, rgba(52,105,149,.18) 0%, rgba(52,105,149,.08) 50%, transparent 72%),
        radial-gradient(ellipse 46% 38% at 78% 86%, rgba(72,121,158,.13) 0%, rgba(72,121,158,.045) 54%, transparent 73%),
        linear-gradient(172deg, transparent 0 43%, rgba(70,119,157,.10) 44% 55%, transparent 56% 100%),
        linear-gradient(188deg, transparent 0 54%, rgba(37,84,126,.11) 55% 65%, transparent 66% 100%),

        /* locked base */
        linear-gradient(180deg, var(--sam-nav) 0%, var(--sam-nav-depth) 100%) !important;
}

html body.home .sam-nav-row-auto > .et_pb_column {
    min-height: 54px !important;
    width: 100% !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* Cleaner nav typography + hover tab only */
html body.home .sam-nav-row-auto a,
html body.home .sam-nav-row-auto p,
html body.home .sam-nav-row-auto span {
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .007em !important;
}

html body.home .sam-nav-row-auto a {
    border-radius: 7px !important;
    background-image: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

html body.home .sam-nav-row-auto a::before,
html body.home .sam-nav-row-auto a::after {
    content: none !important;
    display: none !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-nav-row-auto a:hover {
        background: rgba(255,255,255,.075) !important;
        box-shadow: inset 0 0 0 1px rgba(255,255,255,.035) !important;
        transform: translateY(-1px) !important;
    }
}

/* ---------- hero: remove outer rails / align everything ---------- */
html body.home .sam-lookup-row-auto {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-top: 36px !important;
    padding-bottom: 58px !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-radius: 0 !important;
}

/* Re-center all hero elements to one exact axis */
html body.home .sam-hero-widget,
html body.home .sam-hero-widget .srel-head,
html body.home .sam-hero-emblem,
html body.home .sam-hero-widget .srel-heading,
html body.home .sam-hero-divider,
html body.home .sam-search-card {
    margin-left: auto !important;
    margin-right: auto !important;
}

html body.home .sam-hero-widget {
    max-width: 1060px !important;
}

html body.home .sam-hero-emblem {
    width: 66px !important;
    height: 66px !important;
    margin-bottom: 13px !important;
    background-size: 39px 39px !important;
}

html body.home .sam-hero-widget .srel-heading {
    max-width: 980px !important;
    color: var(--sam-text) !important;
}

html body.home .sam-hero-divider {
    margin-top: 17px !important;
    margin-bottom: 17px !important;
    color: var(--sam-action) !important;
}

html body.home .sam-hero-divider span {
    background: var(--sam-red) !important;
}

/* ---------- compact search tool ---------- */
html body.home .sam-search-card {
    width: min(780px, 82%) !important;
    padding: 21px 22px 23px !important;
    border: 1px solid var(--sam-border) !important;
    border-radius: 11px !important;
    background: rgba(255,255,255,.985) !important;
    box-shadow:
        0 10px 23px rgba(30,50,68,.060),
        0 2px 4px rgba(30,50,68,.025) !important;
}

html body.home .sam-search-card .srel-subheading {
    margin-bottom: 16px !important;
    font-size: 15px !important;
    color: #4E5963 !important;
}

html body.home .sam-search-card .srel-form {
    gap: 11px !important;
    align-items: stretch !important;
}

html body.home .sam-search-card .srel-input {
    min-height: 52px !important;
    height: 52px !important;
    padding-left: 49px !important;
    border-color: #C7D3DD !important;
    border-radius: 7px !important;
    background-size: 23px 23px !important;
    background-position: 16px center !important;
    font-size: 15.5px !important;
}

html body.home .sam-search-card .srel-input:focus {
    border-color: var(--sam-action) !important;
    box-shadow: 0 0 0 3px rgba(47,111,168,.085) !important;
}

html body.home .sam-search-card .srel-search {
    flex: 0 0 176px !important;
    min-height: 52px !important;
    height: 52px !important;
    padding: 0 15px !important;
    border: 1px solid #245B8A !important;
    border-radius: 7px !important;
    background: var(--sam-action) !important;
    color: #fff !important;
    box-shadow:
        0 3px 7px rgba(23,59,99,.09),
        inset 0 1px 0 rgba(255,255,255,.08) !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

html body.home .sam-search-card .srel-search::after {
    margin-left: 9px !important;
    transition: transform .15s ease !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-search-card .srel-search:hover {
        background: var(--sam-action-hover) !important;
        transform: translateY(-2px) !important;
        box-shadow:
            0 7px 13px rgba(23,59,99,.15),
            inset 0 1px 0 rgba(255,255,255,.09) !important;
    }

    html body.home .sam-search-card .srel-search:hover::after {
        transform: translate(3px, 2px) !important;
    }
}

/* ---------- floating help: exact compact circular style ---------- */
html body .sam-help-button-v041 {
    right: 20px !important;
    bottom: 20px !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    border: 4px solid #fff !important;
    background: var(--sam-nav) !important;
    color: #fff !important;
    box-shadow:
        0 8px 20px rgba(19,48,75,.18),
        0 0 0 1px rgba(127,157,180,.32) !important;
}

html body .sam-help-button-v041 .sam-help-q-v041 {
    width: 27px !important;
    height: 27px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,.82) !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

@media (hover:hover) and (pointer:fine) {
    html body .sam-help-button-v041:hover {
        background: var(--sam-action) !important;
        transform: translateY(-2px) !important;
        box-shadow:
            0 11px 24px rgba(19,48,75,.22),
            0 0 0 1px rgba(127,157,180,.34) !important;
    }
}

/* ---------- responsive ---------- */
@media (max-width: 1100px) {
    html body.home .sam-header-row-auto > .et_pb_column:last-child {
        gap: 12px !important;
    }
    html body.home .sam-header-help-v044 {
        padding-right: 10px !important;
    }
}

@media (max-width: 980px) {
    html body.home .sam-header-row-auto,
    html body.home .sam-nav-row-auto {
        width: 92% !important;
        max-width: none !important;
    }

    html body.home .sam-header-help-v044 {
        display: none !important;
    }

    html body.home .sam-search-card {
        width: 90% !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-header-row-auto {
        min-height: auto !important;
    }

    html body.home .sam-lookup-row-auto {
        padding-top: 28px !important;
        padding-bottom: 48px !important;
    }

    html body.home .sam-search-card {
        width: 100% !important;
        padding: 19px 16px !important;
    }

    html body.home .sam-search-card .srel-input,
    html body.home .sam-search-card .srel-search {
        height: 52px !important;
        min-height: 52px !important;
    }

    html body .sam-help-button-v041 {
        right: 12px !important;
        bottom: 12px !important;
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        min-height: 48px !important;
    }
}


/* =========================================================
   v0.4.5 — button refinement patch
   - better top Need Help? alignment
   - cleaner floating ? button (no white outer border)
   ========================================================= */
html body.home .sam-header-row-auto > .et_pb_column:last-child {
    align-items: center !important;
}

html body.home .sam-header-help-v044 {
    align-self: center !important;
    margin-top: 6px !important;
    min-height: 37px !important;
    padding: 0 13px 0 10px !important;
    border-color: #B6C7D5 !important;
    background: rgba(255,255,255,.72) !important;
    box-shadow: 0 2px 7px rgba(28,54,77,.04) !important;
}

html body.home .sam-header-help-icon-v044 {
    width: 20px !important;
    height: 20px !important;
    border-color: #C4D2DC !important;
    background: #F7FAFC !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-header-help-v044:hover {
        background: #fff !important;
        border-color: #95AFBF !important;
        box-shadow: 0 5px 12px rgba(28,54,77,.075) !important;
    }
}

html body .sam-help-button-v041 {
    right: 18px !important;
    bottom: 18px !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    border: 0 !important;
    background: linear-gradient(180deg, #1F5A9B 0%, #153F6B 100%) !important;
    box-shadow:
        0 10px 22px rgba(19,48,75,.18),
        0 0 0 1px rgba(112,142,171,.38) !important;
}

html body .sam-help-button-v041 .sam-help-q-v041 {
    width: 28px !important;
    height: 28px !important;
    border: 2px solid rgba(255,255,255,.92) !important;
    background: transparent !important;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

@media (hover:hover) and (pointer:fine) {
    html body .sam-help-button-v041:hover {
        background: linear-gradient(180deg, #2A6FAF 0%, #184B7B 100%) !important;
        box-shadow:
            0 12px 24px rgba(19,48,75,.22),
            0 0 0 1px rgba(112,142,171,.42) !important;
    }
}

@media (max-width: 650px) {
    html body .sam-help-button-v041 {
        right: 12px !important;
        bottom: 12px !important;
        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;
        min-height: 50px !important;
    }
}


/* =========================================================
   v0.4.6 — quieter header help + smaller search tool
   ========================================================= */

/* Header help: quiet secondary text button, no icon */
html body.home .sam-header-help-v044 {
    min-height: 34px !important;
    height: 34px !important;
    margin-top: 0 !important;
    padding: 0 12px !important;
    gap: 0 !important;
    border: 1px solid #C3D0DA !important;
    border-radius: 7px !important;
    background: rgba(255,255,255,.46) !important;
    color: #214C73 !important;
    box-shadow: none !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    transform: none !important;
}

html body.home .sam-header-help-icon-v044 {
    display: none !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-header-help-v044:hover {
        background: rgba(255,255,255,.82) !important;
        border-color: #AEBFCC !important;
        color: #153F6B !important;
        box-shadow: 0 2px 6px rgba(28,54,77,.045) !important;
        transform: none !important;
    }
}

/* Slightly smaller form: same layout, just less visual weight */
html body.home .sam-search-card {
    width: min(720px, 78%) !important;
    padding: 18px 19px 20px !important;
    border-radius: 10px !important;
    box-shadow:
        0 8px 18px rgba(30,50,68,.052),
        0 1px 3px rgba(30,50,68,.02) !important;
}

html body.home .sam-search-card .srel-subheading {
    margin-bottom: 13px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
}

html body.home .sam-search-card .srel-form {
    gap: 10px !important;
}

html body.home .sam-search-card .srel-input {
    min-height: 48px !important;
    height: 48px !important;
    padding-left: 45px !important;
    font-size: 14.5px !important;
    background-size: 21px 21px !important;
    background-position: 15px center !important;
}

html body.home .sam-search-card .srel-search {
    flex: 0 0 160px !important;
    min-height: 48px !important;
    height: 48px !important;
    padding: 0 13px !important;
    font-size: 14px !important;
}

html body.home .sam-search-card .srel-search::after {
    margin-left: 8px !important;
    font-size: 22px !important;
}

/* Preserve the v0.4.5 floating ? exactly */
html body .sam-help-button-v041 {
    border: 0 !important;
    background: linear-gradient(180deg, #1F5A9B 0%, #153F6B 100%) !important;
    box-shadow:
        0 10px 22px rgba(19,48,75,.18),
        0 0 0 1px rgba(112,142,171,.38) !important;
}

html body .sam-help-button-v041 .sam-help-q-v041 {
    border: 2px solid rgba(255,255,255,.92) !important;
    background: transparent !important;
}

@media (max-width: 980px) {
    html body.home .sam-search-card {
        width: 86% !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-search-card {
        width: 100% !important;
        padding: 17px 15px !important;
    }
    html body.home .sam-search-card .srel-input,
    html body.home .sam-search-card .srel-search {
        height: 50px !important;
        min-height: 50px !important;
    }
}


/* =========================================================
   v0.4.7 — compact header help + smaller hero headline
   ========================================================= */

/* Header help: restore chat bubble, but keep it restrained */
html body.home .sam-header-help-v044 {
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 12px 0 10px !important;
    gap: 7px !important;
    border: 1px solid #AFC1CF !important;
    border-radius: 7px !important;
    background: rgba(255,255,255,.62) !important;
    color: #173F67 !important;
    box-shadow: 0 2px 6px rgba(28,54,77,.035) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

html body.home .sam-header-chat-v047 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    color: #2F6FA8 !important;
    flex: 0 0 18px !important;
}

html body.home .sam-header-chat-v047 svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

html body.home .sam-header-help-icon-v044 {
    display: none !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-header-help-v044:hover {
        background: #FFFFFF !important;
        border-color: #94AFC2 !important;
        color: #153F6B !important;
        box-shadow: 0 4px 10px rgba(28,54,77,.06) !important;
        transform: translateY(-1px) !important;
    }
}

/* Hero headline: reduce dominance without changing wording/weight */
html body.home .sam-hero-widget .srel-heading {
    font-size: 40px !important;
    line-height: 1.10 !important;
    letter-spacing: -.022em !important;
}

/* Slightly tighten the space below the headline to preserve balance */
html body.home .sam-hero-divider {
    margin-top: 15px !important;
    margin-bottom: 16px !important;
}

/* Preserve the smaller v0.4.6 search tool */
html body.home .sam-search-card {
    width: min(720px, 78%) !important;
}

/* Preserve floating ? exactly from v0.4.6 */
html body .sam-help-button-v041 {
    border: 0 !important;
    background: linear-gradient(180deg, #1F5A9B 0%, #153F6B 100%) !important;
    box-shadow:
        0 10px 22px rgba(19,48,75,.18),
        0 0 0 1px rgba(112,142,171,.38) !important;
}

html body .sam-help-button-v041 .sam-help-q-v041 {
    border: 2px solid rgba(255,255,255,.92) !important;
    background: transparent !important;
}

@media (max-width: 980px) {
    html body.home .sam-hero-widget .srel-heading {
        font-size: 36px !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-hero-widget .srel-heading {
        font-size: 29px !important;
    }
}


/* =========================================================
   v0.4.8 — FINAL TOP FINISHING PASS
   No redesign: remove rails, refine nav texture, tighten header,
   perfect help alignment, move hero content up, show less below.
   ========================================================= */

/* Header: about 8% tighter, with modest logo/phone reduction */
html body.home .sam-header-row-auto {
    min-height: 88px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

html body.home .sam-header-row-auto img {
    max-height: 78px !important;
    width: auto !important;
}

html body.home .sam-header-row-auto > .et_pb_column:last-child {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 16px !important;
}

html body.home .sam-header-row-auto > .et_pb_column:last-child .et_pb_module {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Top help: keep approved style, align precisely with phone block */
html body.home .sam-header-help-v044 {
    align-self: center !important;
    margin: 0 !important;
    transform: none !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-header-help-v044:hover {
        transform: translateY(-1px) !important;
    }
}

/* Nav: use one purpose-built flag texture instead of CSS dots/bands */
html body.home .sam-nav-row-auto,
html body.home .sam-nav-row-auto::before {
    background: url("sam-nav-bg-048.svg") center center / 100% 100% no-repeat !important;
}

html body.home .sam-nav-row-auto {
    min-height: 54px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        inset 0 -1px 0 rgba(5,25,43,.15),
        0 3px 7px rgba(18,47,73,.05) !important;
}

html body.home .sam-nav-row-auto > .et_pb_column {
    min-height: 54px !important;
}

/* Hero rails are removed from the SVG; ensure no CSS rails reappear */
html body.home .sam-lookup-row-auto,
html body.home .sam-lookup-section-auto,
html body.home .sam-lookup-row-auto::before,
html body.home .sam-lookup-row-auto::after {
    border-left: 0 !important;
    border-right: 0 !important;
}

/* Move the hero content upward while extending the hero below it.
   This preserves hierarchy and reveals less of the next section. */
html body.home .sam-lookup-row-auto {
    padding-top: 26px !important;
    padding-bottom: 108px !important;
}

/* Keep the current smaller search tool untouched */
html body.home .sam-search-card {
    width: min(720px, 78%) !important;
}

/* Make the transition into the next section more deliberate */
html body.home .sam-support-v041 {
    border-top-color: #E7ECEF !important;
}

/* Responsive rhythm */
@media (max-width: 980px) {
    html body.home .sam-header-row-auto {
        min-height: 84px !important;
    }

    html body.home .sam-header-row-auto img {
        max-height: 74px !important;
    }

    html body.home .sam-lookup-row-auto {
        padding-top: 24px !important;
        padding-bottom: 88px !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        padding-top: 24px !important;
        padding-bottom: 68px !important;
    }
}


/* =========================================================
   v0.4.9 — FINAL GRID + SPACING PATCH
   Only two changes:
   1) nav links align with header/logo grid
   2) slightly less empty space below search card
   ========================================================= */

/* Shift only the nav content, not the full-width nav background. */
html body.home .sam-nav-row-auto > .et_pb_column {
    box-sizing: border-box !important;
    padding-left: 42px !important;
}

/* Preserve current hero composition, trim only bottom breathing room. */
html body.home .sam-lookup-row-auto {
    padding-bottom: 78px !important;
}

/* Responsive: remove the desktop alignment offset once space gets tight. */
@media (max-width: 980px) {
    html body.home .sam-nav-row-auto > .et_pb_column {
        padding-left: 0 !important;
    }

    html body.home .sam-lookup-row-auto {
        padding-bottom: 70px !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        padding-bottom: 58px !important;
    }
}


/* =========================================================
   v0.4.10 — FINAL TOP LOCK
   Only three micro-adjustments:
   1) hero grouping up 6px
   2) next section down ~40px
   3) slightly clearer nav stars
   ========================================================= */

html body.home .sam-lookup-row-auto {
    padding-top: 20px !important;
    padding-bottom: 118px !important;
}

@media (max-width: 980px) {
    html body.home .sam-lookup-row-auto {
        padding-top: 20px !important;
        padding-bottom: 94px !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        padding-top: 20px !important;
        padding-bottom: 70px !important;
    }
}


/* =========================================================
   v0.4.11 — HEADER HELP SPACING ONLY
   Give Need Help? more breathing room from phone/certified block.
   ========================================================= */

html body.home .sam-header-row-auto > .et_pb_column:last-child {
    gap: 28px !important;
}

/* Keep compact spacing on narrower desktop/tablet widths. */
@media (max-width: 1100px) {
    html body.home .sam-header-row-auto > .et_pb_column:last-child {
        gap: 18px !important;
    }
}


/* =========================================================
   v0.5.1 SAFE SITE REPAIR
   ========================================================= */

html body.home .sam-hide-legacy-v051 {
    display: none !important;
}

.sam-home-rest-v051,
.sam-plugin-page-v051 {
    --snav:#153F6B;
    --sdeep:#10385E;
    --saction:#2F6FA8;
    --stext:#173B63;
    --sborder:#D7E1EB;
    --ssoft:#F5F7F9;
    --sred:#D9474F;
    font-family:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    color:#5F6B75;
}

.sam-shell-v051 {
    width:86%;
    max-width:1160px;
    margin:0 auto;
}

.sam-kicker-v051 {
    margin-bottom:9px;
    color:var(--saction);
    font-size:11px;
    line-height:1.2;
    font-weight:700;
    letter-spacing:.14em;
}

.sam-home-rest-v051 h2,
.sam-plugin-page-v051 h2 {
    margin:0;
    color:var(--stext);
    font-size:31px;
    line-height:1.18;
    font-weight:700;
    letter-spacing:-.025em;
}

.sam-lead-v051 {
    margin:12px 0 0;
    color:#6E7982;
    font-size:15px;
    line-height:1.6;
}

/* Registration cards */
.sam-reg-support-v051 {
    padding:72px 5% 76px;
    background:#F5F7F9;
    border-top:1px solid #E4E9ED;
    border-bottom:1px solid #E4E9ED;
    text-align:center;
}

.sam-reg-support-v051 .sam-lead-v051 {
    text-align:center;
}

.sam-reg-grid-v051 {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
    margin-top:37px;
}

.sam-reg-grid-v051 article {
    display:flex;
    flex-direction:column;
    padding:29px 27px 26px;
    background:#fff;
    border:1px solid #DDE5EA;
    border-radius:12px;
    box-shadow:0 8px 20px rgba(25,48,69,.035);
    text-align:left;
}

.sam-reg-icon-v051 {
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    margin-bottom:19px;
    border-radius:11px;
    background:#EDF3F7;
    color:var(--saction);
    font-size:22px;
    font-weight:700;
}

.sam-reg-grid-v051 h3 {
    margin:0 0 10px;
    color:#31414D;
    font-size:19px;
    line-height:1.3;
    font-weight:650;
}

.sam-reg-grid-v051 p {
    margin:0 0 23px;
    color:#69757E;
    font-size:14px;
    line-height:1.65;
}

.sam-reg-grid-v051 button {
    width:100%;
    min-height:43px;
    margin-top:auto;
    border:1px solid #C9D8E2;
    border-radius:7px;
    background:#F1F6F9;
    color:var(--saction);
    font:700 12px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    cursor:pointer;
}

.sam-reg-grid-v051 button span,
.sam-more-v051 span,
.sam-faq-link-v051 span,
.sam-bottom-actions-v051 button span {
    margin-left:6px;
    font-size:18px;
}

.sam-more-v051 {
    display:inline-flex;
    align-items:center;
    margin-top:25px;
    color:var(--saction);
    font-size:13px;
    font-weight:700;
    text-decoration:none;
}

/* Process */
.sam-process-v051 {
    padding:76px 5% 78px;
    background:#fff;
    text-align:center;
}

.sam-process-grid-v051 {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    max-width:1000px;
    margin:37px auto 0;
}

.sam-process-grid-v051 article {
    padding:8px 34px 7px;
    border-right:1px solid #DCE4EA;
    text-align:left;
}

.sam-process-grid-v051 article:last-child {
    border-right:0;
}

.sam-process-grid-v051 b {
    display:block;
    margin-bottom:13px;
    color:#8CA6BA;
    font-size:12px;
    letter-spacing:.1em;
}

.sam-process-grid-v051 h3 {
    margin:0 0 8px;
    color:#34434E;
    font-size:18px;
    font-weight:650;
}

.sam-process-grid-v051 p {
    margin:0;
    color:#6D7881;
    font-size:13.5px;
    line-height:1.65;
}

/* FAQ preview */
.sam-faq-preview-v051 {
    padding:74px 5% 78px;
    background:#F7F9FA;
    border-top:1px solid #E5EAEE;
    border-bottom:1px solid #E5EAEE;
    text-align:center;
}

.sam-faq-list-v051 {
    max-width:840px;
    margin:31px auto 24px;
    border-top:1px solid var(--sborder);
    text-align:left;
}

.sam-faq-list-v051 details {
    border-bottom:1px solid var(--sborder);
}

.sam-faq-list-v051 summary {
    position:relative;
    padding:18px 40px 18px 3px;
    color:#35444F;
    font-size:14.5px;
    line-height:1.45;
    font-weight:650;
    cursor:pointer;
    list-style:none;
}

.sam-faq-list-v051 summary::-webkit-details-marker { display:none; }
.sam-faq-list-v051 summary::after {
    content:"+";
    position:absolute;
    right:4px;
    top:50%;
    color:var(--saction);
    font-size:21px;
    transform:translateY(-50%);
}
.sam-faq-list-v051 details[open] summary::after { content:"−"; }

.sam-faq-list-v051 p {
    margin:-3px 42px 18px 3px;
    color:#6C7780;
    font-size:13.5px;
    line-height:1.65;
}

.sam-faq-link-v051 {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:41px;
    padding:0 15px;
    border:1px solid #B9CAD7;
    border-radius:7px;
    background:#fff;
    color:var(--snav);
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}

/* Bottom CTA */
.sam-bottom-cta-v051 {
    padding:72px 5% 76px;
    background:#fff;
}

.sam-bottom-cta-inner-v051 {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:34px;
    width:86%;
    max-width:1160px;
    margin:0 auto;
    padding:31px 35px;
    border-radius:13px;
    background:linear-gradient(180deg,#194A73,#153F6B);
    box-shadow:0 12px 25px rgba(18,47,73,.10);
}

.sam-bottom-cta-v051 .sam-kicker-v051 { color:#AFC7D9; }
.sam-bottom-cta-v051 h2 { color:#fff; font-size:26px; }
.sam-bottom-cta-v051 p { margin:8px 0 0; color:rgba(255,255,255,.75); font-size:13.5px; }

.sam-bottom-actions-v051 {
    display:flex;
    align-items:center;
    gap:17px;
    flex:0 0 auto;
}

.sam-bottom-actions-v051 button {
    min-height:43px;
    padding:0 17px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:7px;
    background:#fff;
    color:var(--snav);
    font:700 12px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    cursor:pointer;
}

.sam-bottom-actions-v051 a {
    color:#fff;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
}

/* =========================================================
   PLUGIN-CONTROLLED INNER PAGE TEMPLATE
   ========================================================= */

body.sam-plugin-template-v051 {
    margin:0 !important;
    background:#fff;
}

body.sam-plugin-template-v051 #page-container,
body.sam-plugin-template-v051 #main-header,
body.sam-plugin-template-v051 #top-header {
    display:none !important;
}

.sam-custom-header-v051 {
    background:#F7F8FA;
    border-bottom:1px solid rgba(127,157,180,.20);
}

.sam-custom-header-inner-v051 {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    width:86%;
    max-width:1280px;
    min-height:88px;
    margin:0 auto;
    padding:4px 0;
}

.sam-custom-logo-v051 img {
    display:block;
    width:auto;
    max-height:78px;
}

.sam-custom-right-v051 {
    display:flex;
    align-items:center;
    gap:28px;
}

.sam-custom-call-v051 {
    display:block;
    width:auto;
    max-height:60px;
}

.sam-custom-help-v051 {
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:36px;
    padding:0 12px 0 10px;
    border:1px solid #AFC1CF;
    border-radius:7px;
    background:rgba(255,255,255,.62);
    color:#173F67;
    font:600 12px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    cursor:pointer;
}

.sam-custom-help-v051 svg {
    width:18px;
    height:18px;
    fill:none;
    stroke:#2F6FA8;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.sam-custom-nav-v051 {
    background:
        url("../assets/sam-nav-bg-048.svg") center center / cover no-repeat,
        linear-gradient(180deg,#153F6B,#10385E);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06), inset 0 -1px 0 rgba(5,25,43,.15);
}

.sam-custom-nav-inner-v051 {
    display:flex;
    align-items:center;
    gap:7px;
    width:86%;
    max-width:1280px;
    min-height:54px;
    margin:0 auto;
}

.sam-custom-nav-v051 a {
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:0 15px;
    border-radius:7px;
    color:#fff;
    font:600 14px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    text-decoration:none;
}

.sam-custom-nav-v051 a:hover,
.sam-custom-nav-v051 a.is-active-v051 {
    background:rgba(255,255,255,.075);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}

.sam-page-hero-v051 {
    padding:67px 5% 63px;
    background:#F7F9FB;
    border-bottom:1px solid #E5EAEE;
    text-align:center;
}

.sam-page-hero-v051 h1 {
    max-width:900px;
    margin:0 auto;
    color:#173B63;
    font-size:40px;
    line-height:1.12;
    font-weight:700;
    letter-spacing:-.03em;
}

.sam-page-hero-v051 p {
    max-width:710px;
    margin:14px auto 0;
    color:#65717B;
    font-size:15px;
    line-height:1.65;
}

.sam-page-section-v051 {
    padding:72px 5%;
    background:#fff;
}

.sam-page-section-v051.is-soft-v051 {
    background:#F5F7F9;
    border-top:1px solid #E5EAEE;
    border-bottom:1px solid #E5EAEE;
}

.sam-page-grid-v051 {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
    margin-top:34px;
}

.sam-page-card-v051 {
    display:flex;
    flex-direction:column;
    padding:27px;
    background:#fff;
    border:1px solid #DDE5EA;
    border-radius:12px;
    box-shadow:0 7px 18px rgba(25,48,69,.035);
}

.sam-page-card-v051 h3 {
    margin:0 0 10px;
    color:#31414D;
    font-size:19px;
    line-height:1.3;
    font-weight:650;
}

.sam-page-card-v051 p {
    margin:0 0 21px;
    color:#68747E;
    font-size:13.8px;
    line-height:1.65;
}

.sam-page-card-v051 button {
    width:100%;
    min-height:43px;
    margin-top:auto;
    border:1px solid #C9D8E2;
    border-radius:7px;
    background:#F1F6F9;
    color:#2F6FA8;
    font:700 12px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    cursor:pointer;
}

.sam-page-split-v051 {
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:58px;
    align-items:start;
}

.sam-page-checks-v051 {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px 25px;
    margin:26px 0 0;
    padding:0;
    list-style:none;
}

.sam-page-checks-v051 li {
    position:relative;
    padding-left:24px;
    color:#5F6C76;
    font-size:13.7px;
    line-height:1.55;
}
.sam-page-checks-v051 li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:#2F6FA8;
    font-weight:700;
}

.sam-facts-v051 {
    padding:25px;
    background:#fff;
    border:1px solid #DCE4EA;
    border-radius:12px;
}
.sam-facts-v051 > div + div {
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid #E4E9ED;
}
.sam-facts-v051 strong {
    display:block;
    margin-bottom:5px;
    color:#31414D;
    font-size:14px;
}
.sam-facts-v051 p {
    margin:0;
    color:#68747E;
    font-size:13.3px;
    line-height:1.6;
}

.sam-page-faq-v051 {
    max-width:880px;
    margin:0 auto;
    border-top:1px solid #D7E1EB;
}
.sam-page-faq-v051 details { border-bottom:1px solid #D7E1EB; }
.sam-page-faq-v051 summary {
    position:relative;
    padding:18px 40px 18px 3px;
    color:#35444F;
    font-size:14.5px;
    font-weight:650;
    list-style:none;
    cursor:pointer;
}
.sam-page-faq-v051 summary::-webkit-details-marker { display:none; }
.sam-page-faq-v051 summary::after {
    content:"+";
    position:absolute;
    right:4px;
    top:50%;
    color:#2F6FA8;
    font-size:21px;
    transform:translateY(-50%);
}
.sam-page-faq-v051 details[open] summary::after { content:"−"; }
.sam-page-faq-v051 p {
    margin:-3px 42px 18px 3px;
    color:#6C7780;
    font-size:13.5px;
    line-height:1.65;
}

.sam-page-cta-v051 {
    padding:67px 5% 72px;
    text-align:center;
    background:#fff;
}
.sam-page-cta-v051 p {
    max-width:650px;
    margin:11px auto 21px;
    color:#68747E;
    font-size:14px;
    line-height:1.65;
}
.sam-page-actions-v051 {
    display:flex;
    justify-content:center;
    gap:13px;
}
.sam-page-actions-v051 button,
.sam-page-actions-v051 a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:43px;
    padding:0 17px;
    border-radius:7px;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}
.sam-page-actions-v051 button {
    border:1px solid #245B8A;
    background:#2F6FA8;
    color:#fff;
    cursor:pointer;
}
.sam-page-actions-v051 a {
    border:1px solid #C3D1DB;
    background:#fff;
    color:#153F6B;
}

.sam-disclosure-v051 {
    max-width:900px;
    margin:0 auto 60px;
    padding:16px 19px;
    background:#F7F9FA;
    border:1px solid #E1E7EB;
    border-radius:9px;
    color:#77828B;
    font-size:11.8px;
    line-height:1.55;
    text-align:center;
}

.sam-custom-footer-v051 {
    padding:26px 5%;
    background:#153F6B;
    color:rgba(255,255,255,.72);
    text-align:center;
    font-size:12px;
}
.sam-custom-footer-v051 a {
    color:#fff;
    text-decoration:none;
}
.sam-custom-footer-v051 .sam-footer-links-v051 {
    display:flex;
    justify-content:center;
    gap:18px;
    margin-bottom:9px;
}

@media (max-width:980px) {
    .sam-reg-grid-v051,
    .sam-process-grid-v051,
    .sam-page-grid-v051 {
        grid-template-columns:1fr;
    }
    .sam-process-grid-v051 article {
        border-right:0;
        border-bottom:1px solid #DCE4EA;
        padding:20px 5px;
    }
    .sam-process-grid-v051 article:last-child { border-bottom:0; }
    .sam-page-split-v051 { grid-template-columns:1fr; gap:36px; }
    .sam-custom-header-inner-v051,
    .sam-custom-nav-inner-v051,
    .sam-shell-v051 { width:92%; }
    .sam-custom-call-v051 { max-height:48px; }
    .sam-custom-help-v051 { display:none; }
    .sam-custom-nav-inner-v051 { flex-wrap:wrap; padding:7px 0; }
}

@media (max-width:650px) {
    .sam-custom-header-inner-v051 { min-height:76px; }
    .sam-custom-logo-v051 img { max-height:66px; }
    .sam-custom-right-v051 { gap:0; }
    .sam-custom-call-v051 { max-height:39px; }
    .sam-custom-nav-v051 a { padding:0 9px; font-size:12px; }
    .sam-page-hero-v051 h1 { font-size:31px; }
    .sam-home-rest-v051 h2,
    .sam-plugin-page-v051 h2 { font-size:26px; }
    .sam-reg-support-v051,
    .sam-process-v051,
    .sam-faq-preview-v051,
    .sam-page-section-v051 { padding-top:55px; padding-bottom:57px; }
    .sam-bottom-cta-inner-v051 { display:block; width:92%; padding:27px 22px; }
    .sam-bottom-actions-v051 { display:grid; margin-top:22px; }
    .sam-page-checks-v051 { grid-template-columns:1fr; }
    .sam-page-actions-v051 { display:grid; }
}


/* =========================================================
   v0.5.2 — SITEWIDE HELP MODAL + CUSTOM PAGE PHONE REPAIR
   ========================================================= */

/* The custom-page phone block is real HTML/text, not a fragile image. */
.sam-custom-phone-v052 {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: #153F6B;
    text-decoration: none;
    flex: 0 0 auto;
}

.sam-custom-phone-icon-v052 {
    display: grid;
    place-items: center;
    width: 47px;
    height: 47px;
    border: 2px solid #153F6B;
    border-radius: 50%;
    box-sizing: border-box;
}

.sam-custom-phone-icon-v052 svg {
    width: 22px;
    height: 22px;
    display: block;
    fill: #153F6B;
}

.sam-custom-phone-copy-v052 {
    display: grid;
    gap: 2px;
    text-align: left;
}

.sam-custom-phone-copy-v052 strong {
    color: #153F6B;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 31px;
    line-height: .98;
    font-weight: 700;
    letter-spacing: -.02em;
    white-space: nowrap;
}

.sam-custom-phone-copy-v052 small {
    color: #1D2933;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 12.5px;
    line-height: 1.15;
    font-weight: 400;
    letter-spacing: .23em;
    white-space: nowrap;
}

/* Make sure the modal is truly hidden until opened on every page. */
html body .sam-help-overlay-v041:not(.is-open) {
    display: none !important;
}
html body .sam-help-overlay-v041.is-open {
    display: flex !important;
}

/* Keep the floating ? control on the exact approved compact treatment site-wide. */
html body .sam-help-button-v041 {
    border: 0 !important;
    background: linear-gradient(180deg, #1F5A9B 0%, #153F6B 100%) !important;
    box-shadow:
        0 10px 22px rgba(19,48,75,.18),
        0 0 0 1px rgba(112,142,171,.38) !important;
}
html body .sam-help-button-v041 .sam-help-q-v041 {
    border: 2px solid rgba(255,255,255,.92) !important;
    background: transparent !important;
}

@media (max-width: 1100px) {
    .sam-custom-phone-copy-v052 strong { font-size: 27px; }
    .sam-custom-phone-copy-v052 small { font-size: 10.8px; }
    .sam-custom-phone-icon-v052 { width: 43px; height: 43px; }
}

@media (max-width: 980px) {
    .sam-custom-phone-copy-v052 strong { font-size: 23px; }
    .sam-custom-phone-copy-v052 small { font-size: 9.5px; letter-spacing: .18em; }
    .sam-custom-phone-icon-v052 { width: 39px; height: 39px; }
    .sam-custom-phone-icon-v052 svg { width: 19px; height: 19px; }
}

@media (max-width: 720px) {
    .sam-custom-phone-v052 { display: none; }
}


/* =========================================================
   v0.5.3 — HOMEPAGE FLOW + PHONE HIERARCHY
   - removes redundant Registration Support cards from homepage
   - How It Works becomes first section after hero
   - makes custom-page phone block match homepage hierarchy better
   ========================================================= */

/* Safety: never show the old injected registration support cards on home. */
html body.home .sam-reg-support-v051 {
    display: none !important;
}

/* Keep enough hero depth that How It Works only peeks into the first viewport. */
html body.home .sam-lookup-row-auto {
    padding-bottom: 122px !important;
}

/* How It Works is now the first section after the hero. */
.sam-process-v051 {
    padding: 62px 5% 72px !important;
    background: #F7F9FA !important;
    border-top: 1px solid #E5EAEE !important;
    border-bottom: 1px solid #E5EAEE !important;
}

.sam-process-v051 .sam-kicker-v051 {
    text-align: center !important;
}

.sam-process-v051 h2 {
    text-align: center !important;
}

.sam-process-link-v053 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    margin-top: 30px !important;
    padding: 0 14px !important;
    border: 1px solid #BACAD6 !important;
    border-radius: 7px !important;
    background: #fff !important;
    color: #153F6B !important;
    font-size: 11.8px !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;
}

.sam-process-link-v053 span {
    margin-left: 7px !important;
    font-size: 18px !important;
}

/* New-page phone block: closer to the strong homepage phone hierarchy. */
.sam-custom-phone-v052 {
    gap: 12px !important;
}

.sam-custom-phone-icon-v052 {
    width: 52px !important;
    height: 52px !important;
    border-width: 2px !important;
}

.sam-custom-phone-icon-v052 svg {
    width: 24px !important;
    height: 24px !important;
}

.sam-custom-phone-copy-v052 {
    gap: 3px !important;
}

.sam-custom-phone-copy-v052 strong {
    font-size: 35px !important;
    line-height: .95 !important;
    font-weight: 700 !important;
    letter-spacing: -.018em !important;
}

.sam-custom-phone-copy-v052 small {
    font-size: 12.8px !important;
    line-height: 1.05 !important;
    letter-spacing: .24em !important;
    color: #1E2730 !important;
}

/* Keep the right side balanced after enlarging phone block. */
.sam-custom-right-v051 {
    gap: 26px !important;
}

/* Preserve clean responsive fallbacks. */
@media (max-width: 1200px) {
    .sam-custom-phone-copy-v052 strong {
        font-size: 31px !important;
    }
    .sam-custom-phone-copy-v052 small {
        font-size: 11.4px !important;
    }
    .sam-custom-phone-icon-v052 {
        width: 46px !important;
        height: 46px !important;
    }
}

@media (max-width: 980px) {
    html body.home .sam-lookup-row-auto {
        padding-bottom: 96px !important;
    }

    .sam-custom-phone-copy-v052 strong {
        font-size: 26px !important;
    }

    .sam-custom-phone-copy-v052 small {
        font-size: 9.8px !important;
        letter-spacing: .18em !important;
    }

    .sam-custom-phone-icon-v052 {
        width: 40px !important;
        height: 40px !important;
    }

    .sam-custom-phone-icon-v052 svg {
        width: 19px !important;
        height: 19px !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        padding-bottom: 72px !important;
    }

    .sam-process-v051 {
        padding-top: 54px !important;
        padding-bottom: 58px !important;
    }
}


/* =========================================================
   v0.5.4 — HOMEPAGE LEGACY ROW REPAIR
   Fixes Divi layout where old content shares the hero section.
   ========================================================= */

html body.home .sam-hide-legacy-v054 {
    display: none !important;
}

/* Primary structural safety:
   within the lookup section, anything after the hero row is legacy. */
html body.home .sam-lookup-section-auto > .sam-lookup-row-auto ~ .et_pb_row {
    display: none !important;
}

/* Explicitly suppress the old homepage blocks if their rows/classes survive. */
html body.home .sam-lookup-section-auto .sam-support-v041,
html body.home .sam-lookup-section-auto .sam-reg-support-v051 {
    display: none !important;
}

/* Our replacement becomes the immediate visible continuation of the hero. */
html body.home .sam-home-rest-v051 {
    position: relative !important;
    z-index: 1 !important;
}

/* How It Works remains first and intentionally restrained. */
html body.home .sam-home-rest-v051 > .sam-process-v051:first-child {
    margin-top: 0 !important;
}


/* =========================================================
   v0.5.5 — HERO HEIGHT + HOMEPAGE FOOTER REPAIR
   - removes old forced viewport hero height
   - lets How It Works begin to peek into first viewport
   - restores simple homepage footer to match untouched pages
   ========================================================= */

/* Override the original min-height: calc(100vh - 205px).
   Keep enough room for the approved hero composition without creating a dead zone. */
html body.home .sam-lookup-row-auto {
    min-height: 585px !important;
    padding-bottom: 64px !important;
}

/* The first replacement section should follow naturally. */
html body.home .sam-home-rest-v051 > .sam-process-v051:first-child {
    margin-top: 0 !important;
}

/* Homepage footer based on the existing untouched site footer. */
.sam-home-footer-v055 {
    width: 86% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 34px 5% 31px !important;
    box-sizing: border-box !important;
    background: #153F6B !important;
    color: rgba(255,255,255,.82) !important;
    text-align: center !important;
    font-family: Georgia, "Times New Roman", serif !important;
}

.sam-home-footer-links-v055 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-bottom: 15px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.sam-home-footer-links-v055 a {
    color: #fff !important;
    text-decoration: none !important;
}

.sam-home-footer-links-v055 a:hover {
    text-decoration: underline !important;
}

.sam-home-footer-links-v055 span {
    color: rgba(255,255,255,.55) !important;
}

.sam-home-footer-copy-v055 {
    color: rgba(255,255,255,.80) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

@media (max-width: 980px) {
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding-bottom: 62px !important;
    }

    .sam-home-footer-v055 {
        width: 92% !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding-bottom: 54px !important;
    }

    .sam-home-footer-v055 {
        width: 100% !important;
        padding: 29px 20px 27px !important;
    }

    .sam-home-footer-links-v055 {
        gap: 8px !important;
        font-size: 12.5px !important;
    }

    .sam-home-footer-copy-v055 {
        font-size: 12px !important;
    }
}


/* =========================================================
   v0.5.6 — HERO RHYTHM + MODERN FOOTER
   ========================================================= */

/*
 * The previous empty feeling came from TWO things stacking:
 *  - hero min-height of 585px
 *  - 62px top padding on How It Works
 *
 * Reduce both deliberately, rather than over-compressing either section.
 */
html body.home .sam-lookup-row-auto {
    min-height: 495px !important;
    height: auto !important;
    padding-bottom: 42px !important;
}

html body.home .sam-home-rest-v051 > .sam-process-v051:first-child,
.sam-process-v051 {
    padding-top: 34px !important;
    padding-bottom: 64px !important;
}

/* Give the How It Works heading a compact but clear introduction. */
.sam-process-v051 .sam-kicker-v051 {
    margin-bottom: 7px !important;
}

.sam-process-v051 .sam-process-grid-v051 {
    margin-top: 31px !important;
}

/* =========================================================
   Full-width modern site footer
   ========================================================= */

/* Retire v0.5.5 footer card styling if any cached markup survives. */
.sam-home-footer-v055 {
    display: none !important;
}

.sam-site-footer-v056 {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background:
        linear-gradient(180deg, #173F66 0%, #12385D 100%) !important;
    border-top: 1px solid rgba(127,157,180,.42) !important;
    color: rgba(255,255,255,.78) !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    box-sizing: border-box !important;
}

.sam-site-footer-inner-v056 {
    width: 86% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 30px 0 24px !important;
    box-sizing: border-box !important;
}

.sam-site-footer-top-v056 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 30px !important;
}

.sam-site-footer-brand-v056 {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
}

.sam-site-footer-brand-v056 strong {
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 650 !important;
}

.sam-site-footer-brand-v056 span {
    color: rgba(255,255,255,.58) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}

.sam-site-footer-phone-v056 {
    display: flex !important;
    align-items: baseline !important;
    gap: 10px !important;
    color: #fff !important;
    text-decoration: none !important;
}

.sam-site-footer-phone-v056 span {
    color: rgba(255,255,255,.58) !important;
    font-size: 11.5px !important;
}

.sam-site-footer-phone-v056 strong {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 650 !important;
    letter-spacing: .01em !important;
}

.sam-site-footer-rule-v056 {
    height: 1px !important;
    margin: 21px 0 18px !important;
    background: rgba(255,255,255,.12) !important;
}

.sam-site-footer-bottom-v056 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 25px !important;
}

.sam-site-footer-links-v056 {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 19px !important;
}

.sam-site-footer-links-v056 a {
    position: relative !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 11.5px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: color .15s ease !important;
}

.sam-site-footer-links-v056 a + a::before {
    content: "" !important;
    position: absolute !important;
    left: -10px !important;
    top: 50% !important;
    width: 2px !important;
    height: 2px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.38) !important;
    transform: translateY(-50%) !important;
}

.sam-site-footer-links-v056 a:hover {
    color: #fff !important;
}

.sam-site-footer-copy-v056 {
    color: rgba(255,255,255,.52) !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}

/* Make custom-page footer match the new homepage footer tone instead of old plain strip. */
.sam-custom-footer-v051 {
    padding: 28px 7% 24px !important;
    background: linear-gradient(180deg, #173F66 0%, #12385D 100%) !important;
    border-top: 1px solid rgba(127,157,180,.42) !important;
    color: rgba(255,255,255,.65) !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 11.5px !important;
}

.sam-custom-footer-v051 .sam-footer-links-v051 {
    gap: 19px !important;
    margin-bottom: 13px !important;
}

.sam-custom-footer-v051 a {
    color: rgba(255,255,255,.80) !important;
}

/* Responsive hero rhythm */
@media (max-width: 980px) {
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding-bottom: 50px !important;
    }

    html body.home .sam-home-rest-v051 > .sam-process-v051:first-child,
    .sam-process-v051 {
        padding-top: 38px !important;
    }

    .sam-site-footer-inner-v056 {
        width: 92% !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding-bottom: 46px !important;
    }

    .sam-site-footer-inner-v056 {
        width: 90% !important;
        padding: 26px 0 22px !important;
    }

    .sam-site-footer-top-v056,
    .sam-site-footer-bottom-v056 {
        display: block !important;
    }

    .sam-site-footer-phone-v056 {
        margin-top: 16px !important;
    }

    .sam-site-footer-bottom-v056 {
        text-align: left !important;
    }

    .sam-site-footer-copy-v056 {
        margin-top: 15px !important;
        white-space: normal !important;
    }
}


/* =========================================================
   v0.5.7 — TIGHTER HERO + NON-REDUNDANT FOOTER
   ========================================================= */

/* Homepage: reduce the real space below the search form.
   The next section should start soon enough that its heading/intro is visible
   without crowding the approved lookup tool. */
html body.home .sam-lookup-row-auto {
    min-height: 440px !important;
    height: auto !important;
    padding-bottom: 28px !important;
}

html body.home .sam-home-rest-v051 > .sam-process-v051:first-child,
.sam-process-v051 {
    padding-top: 27px !important;
    padding-bottom: 60px !important;
}

.sam-process-v051 .sam-process-grid-v051 {
    margin-top: 28px !important;
}

/* Retire redundant v0.5.6 footer layout. */
.sam-site-footer-v056,
.sam-custom-footer-v051 {
    display: none !important;
}

/* Compact site footer:
   disclosure + legal links/copyright only.
   Phone and "Need assistance" remain in the CTA above, not repeated here. */
.sam-site-footer-v057 {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: linear-gradient(180deg, #173F66 0%, #12385D 100%) !important;
    border-top: 1px solid rgba(127,157,180,.34) !important;
    color: rgba(255,255,255,.72) !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    box-sizing: border-box !important;
}

.sam-site-footer-inner-v057 {
    width: 86% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 24px 0 21px !important;
}

.sam-site-footer-disclosure-v057 {
    max-width: 900px !important;
    margin: 0 auto !important;
    color: rgba(255,255,255,.52) !important;
    font-size: 10.8px !important;
    line-height: 1.55 !important;
    text-align: center !important;
}

.sam-site-footer-rule-v057 {
    height: 1px !important;
    margin: 17px 0 15px !important;
    background: rgba(255,255,255,.10) !important;
}

.sam-site-footer-bottom-v057 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
}

.sam-site-footer-links-v057 {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
}

.sam-site-footer-links-v057 a {
    position: relative !important;
    color: rgba(255,255,255,.78) !important;
    font-size: 11.2px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

.sam-site-footer-links-v057 a + a::before {
    content: "" !important;
    position: absolute !important;
    left: -10px !important;
    top: 50% !important;
    width: 2px !important;
    height: 2px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.36) !important;
    transform: translateY(-50%) !important;
}

.sam-site-footer-links-v057 a:hover {
    color: #fff !important;
}

.sam-site-footer-copy-v057 {
    color: rgba(255,255,255,.47) !important;
    font-size: 10.8px !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}

/* Remove the large standalone disclosure band on custom pages. */
.sam-plugin-page-v051 > .sam-shell-v051:last-child {
    display: none !important;
}

/* Slightly tighten final CTA because the footer now carries the disclosure. */
.sam-page-cta-v051 {
    padding-bottom: 58px !important;
}

@media (max-width: 980px) {
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding-bottom: 42px !important;
    }

    html body.home .sam-home-rest-v051 > .sam-process-v051:first-child,
    .sam-process-v051 {
        padding-top: 32px !important;
    }

    .sam-site-footer-inner-v057 {
        width: 92% !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding-bottom: 40px !important;
    }

    .sam-site-footer-inner-v057 {
        width: 90% !important;
        padding: 22px 0 20px !important;
    }

    .sam-site-footer-bottom-v057 {
        display: block !important;
        text-align: left !important;
    }

    .sam-site-footer-copy-v057 {
        margin-top: 13px !important;
        white-space: normal !important;
    }
}


/* =========================================================
   v0.5.8 — HERO VERTICAL CENTERING ONLY
   Keep current hero height; shift approved content group down
   so top/bottom whitespace feels balanced.
   ========================================================= */

html body.home .sam-hero-widget {
    transform: translateY(18px) !important;
}

/* Keep the adjustment gentler as the viewport narrows. */
@media (max-width: 980px) {
    html body.home .sam-hero-widget {
        transform: translateY(10px) !important;
    }
}

@media (max-width: 650px) {
    html body.home .sam-hero-widget {
        transform: none !important;
    }
}


/* =========================================================
   v0.5.9 — HOW IT WORKS + FAQ CONTENT PASS
   ========================================================= */

/* Removing the extra process-page link leaves room to tighten this transition. */
html body.home .sam-home-rest-v051 > .sam-process-v051:first-child,
.sam-process-v051 {
    padding-bottom: 48px !important;
}

.sam-faq-preview-v051 {
    padding-top: 54px !important;
}

/* Keep the three steps visually balanced with the longer new wording. */
.sam-process-grid-v051 article {
    padding-left: 28px !important;
    padding-right: 28px !important;
}

.sam-process-grid-v051 h3 {
    line-height: 1.35 !important;
}

@media (max-width: 650px) {
    html body.home .sam-home-rest-v051 > .sam-process-v051:first-child,
    .sam-process-v051 {
        padding-bottom: 44px !important;
    }

    .sam-faq-preview-v051 {
        padding-top: 48px !important;
    }
}


/* =========================================================
   v0.5.11 — REGISTRATION SERVICES PAGE
   - single CTA below service cards
   - no repeated buttons
   ========================================================= */

/* Cards become informational rather than three competing CTAs. */
.sam-page-card-v051 {
    min-height: 190px !important;
}

.sam-page-card-v051 button {
    display: none !important;
}

.sam-services-lookup-v0511 {
    margin-top: 28px !important;
    text-align: center !important;
}

.sam-services-lookup-v0511 p {
    margin: 0 0 12px !important;
    color: #6A7680 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
}

.sam-services-lookup-v0511 a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 0 18px !important;
    border: 1px solid #245B8A !important;
    border-radius: 7px !important;
    background: #2F6FA8 !important;
    color: #fff !important;
    box-shadow: 0 3px 8px rgba(23,59,99,.08) !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    text-decoration: none !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

.sam-services-lookup-v0511 a span {
    margin-left: 7px !important;
    font-size: 18px !important;
}

@media (hover:hover) and (pointer:fine) {
    .sam-services-lookup-v0511 a:hover {
        background: #255D8F !important;
        transform: translateY(-1px) !important;
        box-shadow: 0 6px 12px rgba(23,59,99,.12) !important;
    }
}

/* Anchor lands with breathing room beneath the fixed visual header. */
html {
    scroll-padding-top: 175px;
}

@media (max-width: 650px) {
    .sam-services-lookup-v0511 {
        margin-top: 23px !important;
    }

    .sam-services-lookup-v0511 a {
        width: 100% !important;
        box-sizing: border-box !important;
    }
}


/* =========================================================
   v0.5.12 — RESOURCES NAV + QUIET LOOKUP CTA
   ========================================================= */

/* No helper text above the single lookup CTA. */
.sam-services-lookup-v0511 p {
    display: none !important;
}

/* Pull the remaining CTA slightly closer to the cards. */
.sam-services-lookup-v0511 {
    margin-top: 24px !important;
}

/* Secondary/quiet CTA: light surface, navy border/text. */
.sam-services-lookup-v0511 a {
    min-height: 43px !important;
    padding: 0 17px !important;
    border: 1px solid #AFC3D4 !important;
    background: #F7F9FB !important;
    color: #173F67 !important;
    box-shadow: 0 2px 6px rgba(28,54,77,.035) !important;
}

@media (hover:hover) and (pointer:fine) {
    .sam-services-lookup-v0511 a:hover {
        background: #EEF3F7 !important;
        border-color: #91ADC2 !important;
        color: #153F6B !important;
        transform: translateY(-1px) !important;
        box-shadow: 0 4px 9px rgba(28,54,77,.06) !important;
    }
}


/* =========================================================
   v0.5.13 — INNER PAGE HEADER/NAV SYNC
   Make Resources + FAQ header/nav match homepage.
   ========================================================= */

/* Same light header surface and dimensions as homepage. */
.sam-custom-header-v051 {
    background:
        linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,0)),
        #F7F8FA !important;
    border-bottom: 1px solid rgba(127,157,180,.20) !important;
}

.sam-custom-header-inner-v051 {
    width: 86% !important;
    max-width: 1280px !important;
    min-height: 88px !important;
    margin: 0 auto !important;
    padding: 4px 0 !important;
    box-sizing: border-box !important;
}

.sam-custom-logo-v051 img {
    max-height: 78px !important;
    width: auto !important;
}

/* Match homepage right-side spacing. */
.sam-custom-right-v051 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 28px !important;
}

/* Phone hierarchy matched to homepage visual weight. */
.sam-custom-phone-v052 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 13px !important;
    color: #153F6B !important;
    text-decoration: none !important;
    flex: 0 0 auto !important;
}

.sam-custom-phone-icon-v052 {
    width: 52px !important;
    height: 52px !important;
    border: 2px solid #153F6B !important;
    border-radius: 50% !important;
}

.sam-custom-phone-icon-v052 svg {
    width: 24px !important;
    height: 24px !important;
    fill: #153F6B !important;
}

.sam-custom-phone-copy-v052 {
    display: grid !important;
    gap: 2px !important;
    text-align: left !important;
}

.sam-custom-phone-copy-v052 strong {
    color: #153F6B !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 40px !important;
    line-height: .94 !important;
    font-weight: 700 !important;
    letter-spacing: -.022em !important;
    white-space: nowrap !important;
}

.sam-custom-phone-copy-v052 small {
    color: #1D2933 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 13.5px !important;
    line-height: 1.05 !important;
    font-weight: 400 !important;
    letter-spacing: .245em !important;
    white-space: nowrap !important;
}

/* Same Need Help styling as homepage. */
.sam-custom-help-v051 {
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 12px 0 10px !important;
    gap: 7px !important;
    border: 1px solid #AFC1CF !important;
    border-radius: 7px !important;
    background: rgba(255,255,255,.62) !important;
    color: #173F67 !important;
    box-shadow: 0 2px 6px rgba(28,54,77,.035) !important;
    font: 600 12px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
}

/* Same nav bar dimensions, texture, left grid and typography as homepage. */
.sam-custom-nav-v051 {
    background: url("sam-nav-bg-048.svg") center center / 100% 100% no-repeat !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        inset 0 -1px 0 rgba(5,25,43,.15),
        0 3px 7px rgba(18,47,73,.05) !important;
}

.sam-custom-nav-inner-v051 {
    width: 86% !important;
    max-width: 1280px !important;
    min-height: 54px !important;
    margin: 0 auto !important;
    padding-left: 42px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
}

.sam-custom-nav-v051 a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 40px !important;
    padding: 0 15px !important;
    border-radius: 7px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: .007em !important;
    text-decoration: none !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

/* Homepage has hover treatment only — no permanently highlighted inner-page tab. */
.sam-custom-nav-v051 a.is-active-v051 {
    background: transparent !important;
    box-shadow: none !important;
}

@media (hover:hover) and (pointer:fine) {
    .sam-custom-nav-v051 a:hover,
    .sam-custom-nav-v051 a.is-active-v051:hover {
        background: rgba(255,255,255,.075) !important;
        box-shadow: inset 0 0 0 1px rgba(255,255,255,.035) !important;
        transform: translateY(-1px) !important;
    }
}

@media (max-width: 1200px) {
    .sam-custom-phone-copy-v052 strong {
        font-size: 35px !important;
    }

    .sam-custom-phone-copy-v052 small {
        font-size: 12px !important;
        letter-spacing: .22em !important;
    }

    .sam-custom-phone-icon-v052 {
        width: 48px !important;
        height: 48px !important;
    }
}

@media (max-width: 1100px) {
    .sam-custom-right-v051 {
        gap: 18px !important;
    }
}

@media (max-width: 980px) {
    .sam-custom-header-inner-v051,
    .sam-custom-nav-inner-v051 {
        width: 92% !important;
        max-width: none !important;
    }

    .sam-custom-nav-inner-v051 {
        padding-left: 0 !important;
    }

    .sam-custom-phone-copy-v052 strong {
        font-size: 28px !important;
    }

    .sam-custom-phone-copy-v052 small {
        font-size: 10px !important;
        letter-spacing: .18em !important;
    }

    .sam-custom-phone-icon-v052 {
        width: 41px !important;
        height: 41px !important;
    }

    .sam-custom-phone-icon-v052 svg {
        width: 19px !important;
        height: 19px !important;
    }
}

@media (max-width: 650px) {
    .sam-custom-header-inner-v051 {
        min-height: 76px !important;
    }

    .sam-custom-logo-v051 img {
        max-height: 66px !important;
    }

    .sam-custom-phone-v052 {
        display: none !important;
    }

    .sam-custom-nav-v051 a {
        padding: 0 9px !important;
        font-size: 12px !important;
    }
}


/* =========================================================
   v0.5.14 — FULL INNER PAGE SYSTEM
   Resources, FAQ, All-Awards, Grants, Contact Us
   ========================================================= */

/*
 * Match the HOME header proportions more closely.
 * Previous custom header was too compact, making the phone block look different.
 */
.sam-custom-header-inner-v051 {
    min-height: 112px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

.sam-custom-logo-v051 img {
    max-height: 88px !important;
}

.sam-custom-phone-v052 {
    gap: 12px !important;
}

.sam-custom-phone-icon-v052 {
    width: 54px !important;
    height: 54px !important;
}

.sam-custom-phone-icon-v052 svg {
    width: 24px !important;
    height: 24px !important;
}

.sam-custom-phone-copy-v052 strong {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 39px !important;
    line-height: .94 !important;
    font-weight: 700 !important;
    letter-spacing: -.018em !important;
}

.sam-custom-phone-copy-v052 small {
    margin-top: 3px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: .245em !important;
}

.sam-custom-nav-inner-v051 {
    min-height: 66px !important;
}

.sam-custom-nav-v051 a {
    min-height: 46px !important;
}

/* ---------- Plan pages ---------- */
.sam-plan-hero-v0514 {
    padding-bottom: 55px !important;
}

.sam-plan-note-v0514 {
    display: inline-block !important;
    max-width: 760px !important;
    margin: 18px auto 0 !important;
    padding: 10px 14px !important;
    border: 1px solid #DCE5EB !important;
    border-radius: 7px !important;
    background: rgba(255,255,255,.62) !important;
    color: #6B7780 !important;
    font-size: 11.5px !important;
    line-height: 1.5 !important;
}

.sam-plan-grid-v0514 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 17px !important;
    margin-top: 35px !important;
}

.sam-plan-card-v0514 {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 360px !important;
    padding: 27px 23px 24px !important;
    border: 1px solid #DCE4EA !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 8px 20px rgba(25,48,69,.035) !important;
}

.sam-plan-card-v0514.is-best-v0514 {
    border-color: #AEC5D6 !important;
    box-shadow: 0 10px 25px rgba(25,48,69,.065) !important;
}

.sam-plan-badge-v0514 {
    position: absolute !important;
    top: -11px !important;
    right: 18px !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: #153F6B !important;
    color: #fff !important;
    font-size: 9.5px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
}

.sam-plan-eyebrow-v0514 {
    color: #7A8B98 !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .10em !important;
}

.sam-plan-card-v0514 h3 {
    margin: 11px 0 4px !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.sam-plan-term-v0514 {
    color: #2F6FA8 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

.sam-plan-price-v0514 {
    margin: 23px 0 15px !important;
    color: #173B63 !important;
    font-size: 31px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.sam-plan-card-v0514 p {
    margin: 0 0 23px !important;
    color: #68747E !important;
    font-size: 13px !important;
    line-height: 1.62 !important;
}

.sam-plan-card-v0514 > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 43px !important;
    margin-top: auto !important;
    padding: 0 13px !important;
    border: 1px solid #B6C8D5 !important;
    border-radius: 7px !important;
    background: #F5F8FA !important;
    color: #153F6B !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.sam-plan-card-v0514 > a span {
    margin-left: 7px !important;
    font-size: 18px !important;
}

.sam-plan-card-v0514.is-best-v0514 > a {
    border-color: #245B8A !important;
    background: #2F6FA8 !important;
    color: #fff !important;
}

.sam-plan-help-v0514 {
    padding: 0 5% 68px !important;
    background: #fff !important;
}

.sam-plan-help-inner-v0514 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 30px !important;
    padding: 28px 31px !important;
    border: 1px solid #DCE4EA !important;
    border-radius: 12px !important;
    background: #F7F9FA !important;
}

.sam-plan-help-inner-v0514 h2 {
    font-size: 24px !important;
}

.sam-plan-help-inner-v0514 p {
    margin: 7px 0 0 !important;
    color: #6C7881 !important;
    font-size: 13px !important;
}

.sam-plan-help-actions-v0514 {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
}

.sam-plan-help-actions-v0514 a,
.sam-plan-help-actions-v0514 button {
    min-height: 41px !important;
    padding: 0 14px !important;
    border-radius: 7px !important;
    font: 700 11.5px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.sam-plan-help-actions-v0514 .is-secondary-v0514 {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid #BACAD6 !important;
    background: #fff !important;
    color: #153F6B !important;
}

.sam-plan-help-actions-v0514 button {
    border: 1px solid #245B8A !important;
    background: #2F6FA8 !important;
    color: #fff !important;
}

/* ---------- Contact ---------- */
.sam-contact-grid-v0514 {
    display: grid !important;
    grid-template-columns: .72fr 1.28fr !important;
    gap: 52px !important;
    align-items: start !important;
    max-width: 1040px !important;
}

.sam-contact-info-v0514 h2 {
    margin-bottom: 14px !important;
}

.sam-contact-info-v0514 > p {
    margin: 0 0 28px !important;
    color: #68747E !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

.sam-contact-detail-v0514 {
    padding: 17px 0 !important;
    border-top: 1px solid #E1E7EB !important;
}

.sam-contact-detail-v0514:last-child {
    border-bottom: 1px solid #E1E7EB !important;
}

.sam-contact-detail-v0514 span {
    display: block !important;
    margin-bottom: 5px !important;
    color: #84929D !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
    letter-spacing: .12em !important;
}

.sam-contact-detail-v0514 a {
    color: #173B63 !important;
    font-size: 15px !important;
    font-weight: 650 !important;
    text-decoration: none !important;
}

.sam-contact-card-v0514 {
    padding: 28px !important;
    border: 1px solid #DCE4EA !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(25,48,69,.04) !important;
}

.sam-contact-form-v0514 {
    display: grid !important;
    gap: 17px !important;
}

.sam-contact-row-v0514 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 15px !important;
}

.sam-contact-form-v0514 label {
    display: grid !important;
    gap: 6px !important;
    color: #40505C !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
}

.sam-contact-form-v0514 label > span {
    color: #D9474F !important;
}

.sam-contact-form-v0514 input[type="text"],
.sam-contact-form-v0514 input[type="tel"],
.sam-contact-form-v0514 input[type="email"],
.sam-contact-form-v0514 select,
.sam-contact-form-v0514 textarea {
    width: 100% !important;
    box-sizing: border-box !important;
    border: 1px solid #C8D5DE !important;
    border-radius: 7px !important;
    background: #FBFCFD !important;
    color: #34434F !important;
    font: 400 14px/1.35 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
}

.sam-contact-form-v0514 input[type="text"],
.sam-contact-form-v0514 input[type="tel"],
.sam-contact-form-v0514 input[type="email"],
.sam-contact-form-v0514 select {
    min-height: 45px !important;
    padding: 0 12px !important;
}

.sam-contact-form-v0514 textarea {
    min-height: 120px !important;
    padding: 11px 12px !important;
    resize: vertical !important;
}

.sam-contact-form-v0514 input:focus,
.sam-contact-form-v0514 select:focus,
.sam-contact-form-v0514 textarea:focus {
    outline: 0 !important;
    border-color: #2F6FA8 !important;
    box-shadow: 0 0 0 3px rgba(47,111,168,.08) !important;
}

.sam-contact-consent-v0514 {
    display: grid !important;
    grid-template-columns: 18px 1fr !important;
    gap: 8px !important;
    align-items: start !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    color: #6D7881 !important;
}

.sam-contact-consent-v0514 input {
    margin-top: 2px !important;
}

.sam-contact-consent-v0514 span {
    color: #6D7881 !important;
}

.sam-contact-form-v0514 > button {
    min-height: 45px !important;
    border: 1px solid #245B8A !important;
    border-radius: 7px !important;
    background: #2F6FA8 !important;
    color: #fff !important;
    font: 700 12px/1 "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    cursor: pointer !important;
}

.sam-contact-form-v0514 > button:disabled {
    opacity: .65 !important;
    cursor: wait !important;
}

.sam-contact-status-v0514 {
    display: none !important;
    padding: 10px 12px !important;
    border-radius: 7px !important;
    font-size: 11.5px !important;
    line-height: 1.45 !important;
}

.sam-contact-status-v0514.is-success,
.sam-contact-status-v0514.is-error {
    display: block !important;
}

.sam-contact-status-v0514.is-success {
    background: #EEF7F2 !important;
    border: 1px solid #CFE3D7 !important;
    color: #315E45 !important;
}

.sam-contact-status-v0514.is-error {
    background: #FBF1F1 !important;
    border: 1px solid #E7CCCC !important;
    color: #7A3E3E !important;
}

.sam-contact-hp-v0514 {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 1150px) {
    .sam-custom-phone-copy-v052 strong {
        font-size: 34px !important;
    }

    .sam-custom-phone-copy-v052 small {
        font-size: 12.5px !important;
    }

    .sam-plan-grid-v0514 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 980px) {
    .sam-custom-header-inner-v051 {
        min-height: 92px !important;
    }

    .sam-custom-logo-v051 img {
        max-height: 76px !important;
    }

    .sam-custom-nav-inner-v051 {
        min-height: 54px !important;
    }

    .sam-custom-nav-v051 a {
        min-height: 40px !important;
    }

    .sam-contact-grid-v0514 {
        grid-template-columns: 1fr !important;
        gap: 35px !important;
    }

    .sam-plan-help-inner-v0514 {
        display: block !important;
    }

    .sam-plan-help-actions-v0514 {
        margin-top: 20px !important;
    }
}

@media (max-width: 650px) {
    .sam-plan-grid-v0514 {
        grid-template-columns: 1fr !important;
    }

    .sam-plan-card-v0514 {
        min-height: auto !important;
    }

    .sam-contact-row-v0514 {
        grid-template-columns: 1fr !important;
    }

    .sam-plan-help-actions-v0514 {
        display: grid !important;
    }

    .sam-plan-help-actions-v0514 a,
    .sam-plan-help-actions-v0514 button {
        width: 100% !important;
        box-sizing: border-box !important;
        justify-content: center !important;
    }
}


/* =========================================================
   v0.5.15 — PLAN COPY CLEANUP
   ========================================================= */

/* Hero no longer carries a long term-mapping paragraph/note. */
.sam-plan-hero-v0514 {
    padding-bottom: 48px !important;
}

/* Retire the old note styling in case stale markup is cached. */
.sam-plan-note-v0514 {
    display: none !important;
}

/* Slightly more room for restored plan descriptions. */
.sam-plan-card-v0514 {
    min-height: 390px !important;
}

.sam-plan-card-v0514 p {
    min-height: 84px !important;
}


/* =========================================================
   v0.5.16 — BEST VALUE + PURCHASE PAGE SYSTEM
   ========================================================= */

/* Plan D Best Value centered above the card. */
.sam-plan-badge-v0514 {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    white-space: nowrap !important;
}

/* ---------- Purchase-page hero ---------- */
.sam-purchase-page-v0516 {
    background: #F5F7F9 !important;
}

.sam-purchase-hero-v0516 {
    padding: 51px 5% 47px !important;
    background:
        radial-gradient(circle at 82% 35%, rgba(47,111,168,.045), transparent 28%),
        #F7F9FB !important;
    border-bottom: 1px solid #E4EAEE !important;
    text-align: center !important;
}

.sam-purchase-hero-v0516 h1 {
    max-width: 860px !important;
    margin: 0 auto !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 38px !important;
    line-height: 1.14 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

.sam-purchase-hero-v0516 p {
    max-width: 660px !important;
    margin: 13px auto 0 !important;
    color: #68747E !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

/* ---------- Purchase layout ---------- */
.sam-purchase-section-v0516 {
    padding: 58px 5% 68px !important;
    background: #F5F7F9 !important;
}

.sam-purchase-shell-v0516 {
    display: grid !important;
    grid-template-columns: 300px minmax(0, 680px) !important;
    justify-content: center !important;
    gap: 28px !important;
    width: 90% !important;
    max-width: 1040px !important;
    margin: 0 auto !important;
    align-items: start !important;
}

/* ---------- Selected plan summary ---------- */
.sam-order-summary-v0516 {
    position: sticky !important;
    top: 24px !important;
    padding: 27px 25px 25px !important;
    border: 1px solid #D8E2E9 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 8px 22px rgba(25,48,69,.04) !important;
}

.sam-order-label-v0516 {
    color: #7D8E9A !important;
    font-size: 9.5px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .12em !important;
}

.sam-order-summary-v0516 h2 {
    margin: 11px 0 4px !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 27px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}

.sam-order-term-v0516 {
    color: #2F6FA8 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
}

.sam-order-price-v0516 {
    margin: 22px 0 0 !important;
    color: #173B63 !important;
    font-size: 34px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.sam-order-rule-v0516 {
    height: 1px !important;
    margin: 22px 0 18px !important;
    background: #E2E8EC !important;
}

.sam-order-summary-v0516 p {
    margin: 0 !important;
    color: #68747E !important;
    font-size: 12.5px !important;
    line-height: 1.65 !important;
}

.sam-order-best-v0516 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 18px !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: #EAF1F6 !important;
    color: #153F6B !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
}

.sam-change-plan-v0516 {
    display: inline-flex !important;
    margin-top: 21px !important;
    color: #657783 !important;
    font-size: 10.5px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    letter-spacing: .025em !important;
    text-decoration: none !important;
}

.sam-change-plan-v0516:hover {
    color: #173B63 !important;
}

/* ---------- Form card ---------- */
.sam-purchase-form-card-v0516 {
    padding: 29px 31px 30px !important;
    border: 1px solid #D8E2E9 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 9px 24px rgba(25,48,69,.045) !important;
}

.sam-purchase-form-heading-v0516 {
    margin-bottom: 23px !important;
    padding-bottom: 19px !important;
    border-bottom: 1px solid #E5EAEE !important;
}

.sam-purchase-form-heading-v0516 h2 {
    margin: 0 !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

.sam-purchase-form-heading-v0516 p {
    margin: 7px 0 0 !important;
    color: #74808A !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
}

/* Hide the old Buy-page title but preserve the actual form and payment logic. */
.sam-purchase-form-content-v0516 h1,
.sam-purchase-form-content-v0516 h2:first-of-type {
    display: none !important;
}

/* Strip old layout chrome inside the legacy content when present. */
.sam-purchase-form-content-v0516 .et_pb_section,
.sam-purchase-form-content-v0516 .et_pb_row,
.sam-purchase-form-content-v0516 .et_pb_column {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* WPForms-specific cleanup. */
.sam-purchase-form-content-v0516 .wpforms-container {
    margin: 0 !important;
}

.sam-purchase-form-content-v0516 .wpforms-form {
    margin: 0 !important;
}

.sam-purchase-form-content-v0516 .wpforms-field {
    padding-top: 9px !important;
    padding-bottom: 9px !important;
}

.sam-purchase-form-content-v0516 .wpforms-field-label {
    margin-bottom: 6px !important;
    color: #40505C !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
}

.sam-purchase-form-content-v0516 .wpforms-field-sublabel,
.sam-purchase-form-content-v0516 .wpforms-field-description {
    color: #82909A !important;
    font-size: 10.5px !important;
    line-height: 1.45 !important;
}

.sam-purchase-form-content-v0516 .wpforms-form input[type="text"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="email"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="tel"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="number"],
.sam-purchase-form-content-v0516 .wpforms-form select,
.sam-purchase-form-content-v0516 .wpforms-form textarea {
    width: 100% !important;
    max-width: none !important;
    min-height: 45px !important;
    box-sizing: border-box !important;
    border: 1px solid #C8D5DE !important;
    border-radius: 7px !important;
    background: #FBFCFD !important;
    color: #34434F !important;
    box-shadow: none !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 14px !important;
}

.sam-purchase-form-content-v0516 .wpforms-form input[type="text"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="email"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="tel"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="number"],
.sam-purchase-form-content-v0516 .wpforms-form select {
    padding: 0 12px !important;
}

.sam-purchase-form-content-v0516 .wpforms-form textarea {
    min-height: 105px !important;
    padding: 10px 12px !important;
}

.sam-purchase-form-content-v0516 .wpforms-form input:focus,
.sam-purchase-form-content-v0516 .wpforms-form select:focus,
.sam-purchase-form-content-v0516 .wpforms-form textarea:focus {
    outline: none !important;
    border-color: #2F6FA8 !important;
    box-shadow: 0 0 0 3px rgba(47,111,168,.08) !important;
}

/* Name field first/last columns. */
.sam-purchase-form-content-v0516 .wpforms-field-row {
    max-width: none !important;
}

/* Continue to Secure Payment button. */
.sam-purchase-form-content-v0516 .wpforms-submit-container {
    margin-top: 15px !important;
    padding-top: 0 !important;
}

.sam-purchase-form-content-v0516 button.wpforms-submit,
.sam-purchase-form-content-v0516 input[type="submit"] {
    width: 100% !important;
    min-height: 47px !important;
    border: 1px solid #245B8A !important;
    border-radius: 7px !important;
    background: #2F6FA8 !important;
    color: #fff !important;
    box-shadow: 0 3px 8px rgba(23,59,99,.08) !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}

@media (hover:hover) and (pointer:fine) {
    .sam-purchase-form-content-v0516 button.wpforms-submit:hover,
    .sam-purchase-form-content-v0516 input[type="submit"]:hover {
        background: #255D8F !important;
    }
}

/* Hide WPForms noscript message visually during normal JS operation. */
.sam-purchase-form-content-v0516 .wpforms-error-noscript {
    margin: 0 0 12px !important;
}

/* ---------- Responsive purchase pages ---------- */
@media (max-width: 980px) {
    .sam-purchase-shell-v0516 {
        grid-template-columns: 1fr !important;
        width: 92% !important;
        max-width: 700px !important;
    }

    .sam-order-summary-v0516 {
        position: static !important;
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        column-gap: 20px !important;
    }

    .sam-order-rule-v0516,
    .sam-order-summary-v0516 p,
    .sam-change-plan-v0516 {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 650px) {
    .sam-purchase-hero-v0516 {
        padding: 42px 5% 39px !important;
    }

    .sam-purchase-hero-v0516 h1 {
        font-size: 30px !important;
    }

    .sam-purchase-section-v0516 {
        padding: 40px 4% 52px !important;
    }

    .sam-purchase-shell-v0516 {
        width: 100% !important;
        gap: 18px !important;
    }

    .sam-purchase-form-card-v0516,
    .sam-order-summary-v0516 {
        padding: 23px 19px !important;
    }
}


/* =========================================================
   v0.5.17 — PURCHASE PAGE VISUAL CLEANUP
   Preserve form/email/payment logic; remove redundant legacy chrome.
   ========================================================= */

/* Small brand mark inside form card, instead of the huge legacy logo/phone block. */
.sam-purchase-mini-brand-v0517 {
    display: flex !important;
    align-items: center !important;
    margin: 0 0 16px !important;
}

.sam-purchase-mini-brand-v0517 img {
    display: block !important;
    width: auto !important;
    max-width: 108px !important;
    max-height: 42px !important;
    object-fit: contain !important;
}

/*
 * Hide duplicate legacy header/footer content that is part of the original
 * Buy-page body, while leaving the actual form shortcode and its hidden fields,
 * selected-plan values, notifications, and redirect logic intact.
 */

/* Large old logo / phone / Certified Assistance blocks inside the wrapped content. */
.sam-purchase-form-content-v0516 img[src*="SAM-Registry-Support-Logo"],
.sam-purchase-form-content-v0516 img[src*="call"],
.sam-purchase-form-content-v0516 img[alt*="SAM Registry Support" i],
.sam-purchase-form-content-v0516 img[alt*="Certified Assistance" i] {
    display: none !important;
}


/* Tighten form card now that legacy header/footer are gone. */
.sam-purchase-form-card-v0516 {
    padding-top: 25px !important;
    padding-bottom: 28px !important;
}

.sam-purchase-form-heading-v0516 {
    margin-bottom: 21px !important;
    padding-bottom: 17px !important;
}

/* Make the order summary / form pairing feel cleaner and more compact. */
.sam-purchase-shell-v0516 {
    align-items: start !important;
}

.sam-order-summary-v0516 {
    min-height: 0 !important;
}

/* The actual site footer remains the one rendered outside the form card. */
.sam-purchase-page-v0516 + .sam-site-footer-v057,
body.sam-plugin-template-v051 > .sam-site-footer-v057 {
    display: block !important;
}

@media (max-width: 650px) {
    .sam-purchase-mini-brand-v0517 img {
        max-width: 96px !important;
        max-height: 38px !important;
    }
}


/* =========================================================
   v0.5.18 — FORM-SAFE PURCHASE CLEANUP
   Decorative legacy rows are hidden by JS only after confirming
   they do NOT contain the actual WPForms purchase form.
   ========================================================= */
.sam-purchase-form-content-v0516 .sam-legacy-purchase-chrome-v0518 {
    display: none !important;
}

/* If direct duplicate images survive outside Divi rows, hide only images themselves. */
.sam-purchase-form-content-v0516 img[src*="SAM-Registry-Support-Logo"],
.sam-purchase-form-content-v0516 img[src*="call"],
.sam-purchase-form-content-v0516 img[alt*="Certified Assistance" i] {
    display: none !important;
}

/* The new mini brand is outside legacy content and remains visible. */
.sam-purchase-mini-brand-v0517 img {
    display: block !important;
}


/* =========================================================
   v0.5.19 — ABOVE-THE-FOLD SPACING PASS
   Tighten plan and checkout pages without redesigning them.
   ========================================================= */

/* ---------------------------------------------------------
   ALL-AWARDS / GRANTS PLAN PAGES
   --------------------------------------------------------- */

/* Shorter intro hero. */
.sam-plan-hero-v0514 {
    padding-top: 36px !important;
    padding-bottom: 29px !important;
}

.sam-plan-hero-v0514 h1 {
    margin-top: 4px !important;
}

.sam-plan-page-v0514 > .sam-page-section-v051 {
    padding-top: 32px !important;
    padding-bottom: 50px !important;
}

.sam-plan-page-v0514 > .sam-page-section-v051 .sam-kicker-v051 {
    margin-bottom: 6px !important;
}

.sam-plan-page-v0514 > .sam-page-section-v051 h2 {
    margin-bottom: 0 !important;
}

.sam-plan-grid-v0514 {
    margin-top: 25px !important;
}

/* Slightly tighter cards so more of each plan is visible on initial load. */
.sam-plan-card-v0514 {
    min-height: 338px !important;
    padding-top: 24px !important;
    padding-bottom: 22px !important;
}

.sam-plan-card-v0514 h3 {
    margin-top: 8px !important;
}

.sam-plan-price-v0514 {
    margin-top: 18px !important;
    margin-bottom: 12px !important;
}

.sam-plan-card-v0514 p {
    min-height: 72px !important;
    margin-bottom: 18px !important;
}

/* Keep Plan D badge centered, but tuck it closer to the card. */
.sam-plan-badge-v0514 {
    top: -10px !important;
}

/* ---------------------------------------------------------
   PURCHASE / CHECKOUT PAGES
   --------------------------------------------------------- */

/* Pull the purchase title section up and reduce dead space below it. */
.sam-purchase-hero-v0516 {
    padding-top: 31px !important;
    padding-bottom: 28px !important;
}

.sam-purchase-hero-v0516 h1 {
    margin-top: 3px !important;
}

.sam-purchase-hero-v0516 p {
    margin-top: 9px !important;
}

/* Bring plan summary + form much closer to the title. */
.sam-purchase-section-v0516 {
    padding-top: 30px !important;
    padding-bottom: 48px !important;
}

.sam-purchase-shell-v0516 {
    gap: 24px !important;
}

/* Compact selected-plan summary. */
.sam-order-summary-v0516 {
    padding: 23px 23px 22px !important;
}

.sam-order-summary-v0516 h2 {
    margin-top: 8px !important;
}

.sam-order-price-v0516 {
    margin-top: 17px !important;
}

.sam-order-rule-v0516 {
    margin-top: 17px !important;
    margin-bottom: 15px !important;
}

.sam-change-plan-v0516 {
    margin-top: 17px !important;
}

/* Compact form header so actual fields start higher. */
.sam-purchase-form-card-v0516 {
    padding-top: 21px !important;
    padding-left: 27px !important;
    padding-right: 27px !important;
    padding-bottom: 25px !important;
}

.sam-purchase-mini-brand-v0517 {
    margin-bottom: 11px !important;
}

.sam-purchase-mini-brand-v0517 img {
    max-width: 94px !important;
    max-height: 36px !important;
}

.sam-purchase-form-heading-v0516 {
    margin-bottom: 15px !important;
    padding-bottom: 14px !important;
}

.sam-purchase-form-heading-v0516 h2 {
    font-size: 24px !important;
}

.sam-purchase-form-heading-v0516 p {
    margin-top: 5px !important;
}

/* Reduce oversized space caused by legacy form wrappers. */
.sam-purchase-form-content-v0516 .et_pb_section,
.sam-purchase-form-content-v0516 .et_pb_row,
.sam-purchase-form-content-v0516 .et_pb_column {
    min-height: 0 !important;
}

.sam-purchase-form-content-v0516 .wpforms-container {
    padding-top: 0 !important;
}

.sam-purchase-form-content-v0516 .wpforms-field {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
}

/* The hidden/selected-plan field shouldn't consume a huge visual block. */
.sam-purchase-form-content-v0516 .wpforms-field-hidden,
.sam-purchase-form-content-v0516 input[type="hidden"] {
    margin: 0 !important;
    padding: 0 !important;
}

/* If "Selected Plan" is a visible readonly/text field, make it compact. */
.sam-purchase-form-content-v0516 .wpforms-field:has(input[readonly]),
.sam-purchase-form-content-v0516 .wpforms-field:has(input[name*="plan" i]) {
    margin-bottom: 2px !important;
}

/* Responsive */
@media (max-width: 980px) {
    .sam-plan-hero-v0514 {
        padding-top: 32px !important;
        padding-bottom: 26px !important;
    }

    .sam-plan-page-v0514 > .sam-page-section-v051 {
        padding-top: 30px !important;
    }

    .sam-purchase-hero-v0516 {
        padding-top: 29px !important;
        padding-bottom: 25px !important;
    }

    .sam-purchase-section-v0516 {
        padding-top: 26px !important;
    }
}

@media (max-width: 650px) {
    .sam-plan-grid-v0514 {
        margin-top: 22px !important;
    }

    .sam-purchase-section-v0516 {
        padding-top: 22px !important;
    }

    .sam-purchase-form-card-v0516 {
        padding: 20px 18px 23px !important;
    }
}


/* =========================================================
   v0.5.20 — COMPACT ABOVE-THE-FOLD LAYOUT
   Remove duplicated section headings and get real content
   into the first viewport.
   ========================================================= */

/* ---------------------------------------------------------
   ALL-AWARDS / GRANTS
   --------------------------------------------------------- */

/* Compact the page-title hero considerably. */
.sam-plan-hero-v0514 {
    padding-top: 22px !important;
    padding-bottom: 20px !important;
}

.sam-plan-hero-v0514 .sam-kicker-v051 {
    margin-bottom: 4px !important;
}

.sam-plan-hero-v0514 h1 {
    margin: 0 !important;
    font-size: 34px !important;
    line-height: 1.12 !important;
}

/*
 * The second heading block is redundant:
 * SELECT A PLAN
 * All-Awards Renewal Options / Grants Registration Options
 * Hide both and let cards follow the hero directly.
 */
.sam-plan-page-v0514 > .sam-page-section-v051 > .sam-shell-v051 > .sam-kicker-v051,
.sam-plan-page-v0514 > .sam-page-section-v051 > .sam-shell-v051 > h2 {
    display: none !important;
}

.sam-plan-page-v0514 > .sam-page-section-v051 {
    padding-top: 20px !important;
    padding-bottom: 38px !important;
}

.sam-plan-grid-v0514 {
    margin-top: 0 !important;
}

/* Slightly more compact cards while keeping the same design. */
.sam-plan-card-v0514 {
    min-height: 318px !important;
    padding: 21px 21px 20px !important;
}

.sam-plan-card-v0514 h3 {
    margin: 7px 0 3px !important;
    font-size: 22px !important;
}

.sam-plan-term-v0514 {
    font-size: 11.5px !important;
}

.sam-plan-price-v0514 {
    margin: 15px 0 10px !important;
    font-size: 29px !important;
}

.sam-plan-card-v0514 p {
    min-height: 66px !important;
    margin-bottom: 15px !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
}

.sam-plan-card-v0514 > a {
    min-height: 40px !important;
}

/* ---------------------------------------------------------
   PURCHASE / CHECKOUT
   --------------------------------------------------------- */

/* Smaller purchase hero: title remains clear without taking 200px. */
.sam-purchase-hero-v0516 {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
}

.sam-purchase-hero-v0516 .sam-kicker-v051 {
    margin-bottom: 4px !important;
}

.sam-purchase-hero-v0516 h1 {
    margin: 0 !important;
    font-size: 32px !important;
    line-height: 1.12 !important;
}

.sam-purchase-hero-v0516 p {
    margin-top: 7px !important;
    font-size: 12.8px !important;
}

/* Bring the plan summary and form directly under the hero. */
.sam-purchase-section-v0516 {
    padding-top: 20px !important;
    padding-bottom: 40px !important;
}

.sam-purchase-shell-v0516 {
    gap: 20px !important;
    grid-template-columns: 260px minmax(0, 690px) !important;
}

/* Compact left summary. */
.sam-order-summary-v0516 {
    padding: 20px 20px 19px !important;
}

.sam-order-summary-v0516 h2 {
    margin: 6px 0 3px !important;
    font-size: 24px !important;
}

.sam-order-price-v0516 {
    margin-top: 13px !important;
    font-size: 31px !important;
}

.sam-order-rule-v0516 {
    margin: 14px 0 12px !important;
}

.sam-order-summary-v0516 p {
    font-size: 11.7px !important;
    line-height: 1.55 !important;
}

.sam-change-plan-v0516 {
    margin-top: 13px !important;
}

/* Remove any remaining mini-logo space. */
.sam-purchase-mini-brand-v0517 {
    display: none !important;
}

/* Tight form-card heading so fields start visibly in first viewport. */
.sam-purchase-form-card-v0516 {
    padding: 19px 24px 23px !important;
}

.sam-purchase-form-heading-v0516 {
    margin-bottom: 10px !important;
    padding-bottom: 10px !important;
}

.sam-purchase-form-heading-v0516 .sam-kicker-v051 {
    margin-bottom: 4px !important;
}

.sam-purchase-form-heading-v0516 h2 {
    font-size: 22px !important;
    line-height: 1.2 !important;
}

.sam-purchase-form-heading-v0516 p {
    margin-top: 4px !important;
    font-size: 11.8px !important;
}

/*
 * WPForms starts lower than expected due to legacy wrapper spacing.
 * Zero that out only inside the checkout card.
 */
.sam-purchase-form-content-v0516,
.sam-purchase-form-content-v0516 > *,
.sam-purchase-form-content-v0516 .wpforms-container,
.sam-purchase-form-content-v0516 .wpforms-form {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Keep fields compact. */
.sam-purchase-form-content-v0516 .wpforms-field {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

.sam-purchase-form-content-v0516 .wpforms-field-label {
    margin-bottom: 4px !important;
}

/* Hide a visible duplicate Selected Plan field if the legacy form exposes it.
   Its underlying input remains in the DOM/form, so notifications still receive it. */
.sam-purchase-form-content-v0516 .wpforms-field:has(input[name*="selected" i][name*="plan" i]),
.sam-purchase-form-content-v0516 .wpforms-field:has(input[id*="selected-plan" i]) {
    margin: 0 !important;
}

/* Responsive */
@media (max-width: 1150px) {
    .sam-plan-card-v0514 {
        min-height: 300px !important;
    }
}

@media (max-width: 980px) {
    .sam-plan-hero-v0514,
    .sam-purchase-hero-v0516 {
        padding-top: 20px !important;
        padding-bottom: 18px !important;
    }

    .sam-plan-page-v0514 > .sam-page-section-v051,
    .sam-purchase-section-v0516 {
        padding-top: 18px !important;
    }

    .sam-purchase-shell-v0516 {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 650px) {
    .sam-plan-hero-v0514 h1,
    .sam-purchase-hero-v0516 h1 {
        font-size: 27px !important;
    }

    .sam-plan-page-v0514 > .sam-page-section-v051 {
        padding-top: 15px !important;
    }

    .sam-purchase-section-v0516 {
        padding-top: 15px !important;
    }
}


/* =========================================================
   v0.5.21 — STRUCTURAL ABOVE-THE-FOLD REDESIGN
   ========================================================= */

/* ---------- Plan pages: one compact block, no hero duplication ---------- */
.sam-plan-main-v0521 {
    padding: 27px 5% 45px !important;
    background: #F8FAFB !important;
    border-bottom: 1px solid #E5EAEE !important;
}

.sam-plan-intro-v0521 {
    margin: 0 0 20px !important;
    text-align: center !important;
}

.sam-plan-intro-v0521 .sam-kicker-v051 {
    margin-bottom: 4px !important;
}

.sam-plan-intro-v0521 h1 {
    margin: 0 !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 34px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

.sam-plan-main-v0521 .sam-plan-grid-v0514 {
    margin-top: 0 !important;
}

.sam-plan-main-v0521 .sam-plan-card-v0514 {
    min-height: 300px !important;
    padding: 20px 20px 19px !important;
}

.sam-plan-main-v0521 .sam-plan-price-v0514 {
    margin: 13px 0 9px !important;
}

.sam-plan-main-v0521 .sam-plan-card-v0514 p {
    min-height: 60px !important;
    margin-bottom: 13px !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

/* ---------- Checkout: compact heading immediately below nav ---------- */
.sam-purchase-intro-v0521 {
    padding: 20px 5% 17px !important;
    background: #F7F9FB !important;
    border-bottom: 1px solid #E4EAEE !important;
    text-align: center !important;
}

.sam-purchase-intro-v0521 .sam-kicker-v051 {
    margin-bottom: 4px !important;
}

.sam-purchase-intro-v0521 h1 {
    margin: 0 !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 31px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

.sam-purchase-section-v0516 {
    padding-top: 18px !important;
    padding-bottom: 36px !important;
}

.sam-purchase-shell-v0516 {
    grid-template-columns: 245px minmax(0, 700px) !important;
    gap: 18px !important;
}

.sam-order-summary-v0516 {
    padding: 18px 18px 17px !important;
}

.sam-order-label-v0516 {
    font-size: 8.8px !important;
}

.sam-order-summary-v0516 h2 {
    margin: 5px 0 2px !important;
    font-size: 22px !important;
}

.sam-order-term-v0516 {
    font-size: 11px !important;
}

.sam-order-price-v0516 {
    margin-top: 11px !important;
    font-size: 29px !important;
}

.sam-order-rule-v0516 {
    margin: 12px 0 10px !important;
}

.sam-order-summary-v0516 p {
    font-size: 11px !important;
    line-height: 1.5 !important;
}

.sam-order-best-v0516 {
    margin-top: 12px !important;
}

.sam-change-plan-v0516 {
    margin-top: 11px !important;
}

/* ---------- Form card: actual form starts immediately ---------- */
.sam-purchase-form-card-v0516 {
    padding: 17px 21px 22px !important;
}

.sam-purchase-form-heading-v0516 {
    margin-bottom: 7px !important;
    padding-bottom: 9px !important;
}

.sam-purchase-form-heading-v0516 .sam-kicker-v051 {
    margin-bottom: 3px !important;
}

.sam-purchase-form-heading-v0516 h2 {
    font-size: 21px !important;
}

.sam-purchase-form-heading-v0516 p {
    margin-top: 3px !important;
    font-size: 11.5px !important;
}

/* Once JS extracts WPForms, there is no legacy wrapper to reserve blank height. */
.sam-purchase-form-content-v0516[data-sam-extracted0521="1"] {
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sam-purchase-form-content-v0516[data-sam-extracted0521="1"] > .wpforms-container {
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sam-purchase-form-content-v0516 .sam-selected-plan-hidden-v0521 {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Compact actual fields. */
.sam-purchase-form-content-v0516 .wpforms-field {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

.sam-purchase-form-content-v0516 .wpforms-field-label {
    margin-bottom: 4px !important;
    font-size: 11.5px !important;
}

.sam-purchase-form-content-v0516 .wpforms-form input[type="text"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="email"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="tel"],
.sam-purchase-form-content-v0516 .wpforms-form input[type="number"],
.sam-purchase-form-content-v0516 .wpforms-form select {
    min-height: 41px !important;
}

.sam-purchase-form-content-v0516 .wpforms-submit-container {
    margin-top: 10px !important;
}

@media (max-width: 1150px) {
    .sam-plan-main-v0521 .sam-plan-grid-v0514 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 980px) {
    .sam-purchase-shell-v0516 {
        grid-template-columns: 1fr !important;
    }

    .sam-plan-main-v0521 {
        padding-top: 22px !important;
    }
}

@media (max-width: 650px) {
    .sam-plan-main-v0521 {
        padding: 19px 4% 38px !important;
    }

    .sam-plan-intro-v0521 h1,
    .sam-purchase-intro-v0521 h1 {
        font-size: 26px !important;
    }

    .sam-plan-main-v0521 .sam-plan-grid-v0514 {
        grid-template-columns: 1fr !important;
    }

    .sam-purchase-intro-v0521 {
        padding: 17px 4% 15px !important;
    }

    .sam-purchase-section-v0516 {
        padding-top: 14px !important;
    }
}


/* =========================================================
   v0.5.22 — PAYMENT REDIRECT PAGE
   ========================================================= */

.sam-payment-redirect-page-v0522 {
    min-height: 430px !important;
    background: #F5F7F9 !important;
}

.sam-payment-redirect-main-v0522 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 430px !important;
    padding: 54px 5% 62px !important;
    background:
        radial-gradient(circle at 50% 15%, rgba(47,111,168,.045), transparent 38%),
        #F5F7F9 !important;
    box-sizing: border-box !important;
}

.sam-payment-redirect-card-v0522 {
    width: 100% !important;
    max-width: 620px !important;
    padding: 42px 36px 38px !important;
    border: 1px solid #D8E2E9 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(25,48,69,.055) !important;
    text-align: center !important;
}

.sam-payment-redirect-card-v0522 .sam-kicker-v051 {
    margin-bottom: 7px !important;
}

.sam-payment-redirect-card-v0522 h1 {
    margin: 0 !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 31px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

.sam-payment-redirect-card-v0522 p {
    max-width: 470px !important;
    margin: 11px auto 0 !important;
    color: #6C7881 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

.sam-redirect-spinner-v0522 {
    width: 34px !important;
    height: 34px !important;
    margin: 0 auto 18px !important;
    border: 3px solid #DFE8EF !important;
    border-top-color: #2F6FA8 !important;
    border-radius: 50% !important;
    animation: samSpin0522 .8s linear infinite !important;
}

@keyframes samSpin0522 {
    to { transform: rotate(360deg); }
}

/*
 * The old page content may contain the JavaScript that performs the actual
 * payment redirect. Keep it in the DOM so its scripts run, but don't show
 * its outdated theme/content underneath our new page.
 */
.sam-payment-redirect-legacy-v0522 {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Selected-plan field stays submitted but is not visually duplicated. */
.sam-purchase-form-content-v0516 .sam-selected-plan-hidden-v0521 {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 650px) {
    .sam-payment-redirect-main-v0522 {
        min-height: 360px !important;
        padding: 38px 4% 46px !important;
    }

    .sam-payment-redirect-card-v0522 {
        padding: 34px 22px 31px !important;
    }

    .sam-payment-redirect-card-v0522 h1 {
        font-size: 27px !important;
    }
}


/* =========================================================
   v0.5.23 — NATIVE REDIRECT VISUAL SKIN
   Original redirect page remains active underneath.
   ========================================================= */

body.sam-native-redirect-v0523 {
    margin: 0 !important;
    background: #F5F7F9 !important;
}

/*
 * Hide the old page visually only.
 * It remains in the DOM so all original scripts, IDs, query-string logic,
 * redirect code and plugin hooks still exist and can run.
 */
body.sam-native-redirect-v0523 > *:not(.sam-native-redirect-frame-v0523):not(#wpadminbar):not(script):not(style):not(link) {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.sam-native-redirect-frame-v0523 {
    position: relative !important;
    z-index: 9998 !important;
    min-height: 100vh !important;
    background: #F5F7F9 !important;
    color: #5F6B75 !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
}

/* Header */
.sam-native-header-v0523 {
    background: #F7F8FA !important;
    border-bottom: 1px solid rgba(127,157,180,.20) !important;
}

.sam-native-header-inner-v0523 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 86% !important;
    max-width: 1280px !important;
    min-height: 112px !important;
    margin: 0 auto !important;
}

.sam-native-logo-v0523 img {
    display: block !important;
    width: auto !important;
    max-height: 88px !important;
}

.sam-native-phone-v0523 {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #153F6B !important;
    text-decoration: none !important;
}

.sam-native-phone-icon-v0523 {
    display: grid !important;
    place-items: center !important;
    width: 52px !important;
    height: 52px !important;
    border: 2px solid #153F6B !important;
    border-radius: 50% !important;
    font-size: 23px !important;
}

.sam-native-phone-copy-v0523 {
    display: grid !important;
    gap: 3px !important;
}

.sam-native-phone-copy-v0523 strong {
    color: #153F6B !important;
    font-family: Georgia,"Times New Roman",serif !important;
    font-size: 38px !important;
    line-height: .95 !important;
    letter-spacing: -.018em !important;
}

.sam-native-phone-copy-v0523 small {
    color: #1E2730 !important;
    font-family: Georgia,"Times New Roman",serif !important;
    font-size: 13px !important;
    letter-spacing: .23em !important;
}

/* Nav */
.sam-native-nav-v0523 {
    background:
        linear-gradient(180deg, rgba(20,65,104,.94), rgba(13,52,88,.98)),
        #153F6B !important;
}

.sam-native-nav-inner-v0523 {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: 86% !important;
    max-width: 1280px !important;
    min-height: 66px !important;
    margin: 0 auto !important;
    padding-left: 42px !important;
    box-sizing: border-box !important;
}

.sam-native-nav-v0523 a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 46px !important;
    padding: 0 15px !important;
    border-radius: 7px !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Main card */
.sam-native-redirect-main-v0523 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 410px !important;
    padding: 48px 5% 54px !important;
}

.sam-native-redirect-card-v0523 {
    width: 100% !important;
    max-width: 620px !important;
    padding: 39px 35px 34px !important;
    border: 1px solid #D8E2E9 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(25,48,69,.055) !important;
    text-align: center !important;
}

.sam-native-spinner-v0523 {
    width: 34px !important;
    height: 34px !important;
    margin: 0 auto 17px !important;
    border: 3px solid #DFE8EF !important;
    border-top-color: #2F6FA8 !important;
    border-radius: 50% !important;
    animation: samNativeSpin0523 .8s linear infinite !important;
}

@keyframes samNativeSpin0523 {
    to { transform: rotate(360deg); }
}

.sam-native-kicker-v0523 {
    margin-bottom: 7px !important;
    color: #2F6FA8 !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: .14em !important;
}

.sam-native-redirect-card-v0523 h1 {
    margin: 0 !important;
    color: #173B63 !important;
    font-family: Georgia,"Times New Roman",serif !important;
    font-size: 31px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
}

.sam-native-redirect-card-v0523 > p {
    margin: 10px auto 0 !important;
    color: #6C7881 !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
}

.sam-native-redirect-fallback-v0523 {
    max-width: 470px !important;
    margin-top: 24px !important;
    padding-top: 17px !important;
    border-top: 1px solid #E7ECEF !important;
    color: #8A949B !important;
    font-size: 10.5px !important;
}

.sam-native-redirect-fallback-v0523 a {
    color: #2F6FA8 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Footer */
.sam-native-footer-v0523 {
    background: linear-gradient(180deg,#173F66,#12385D) !important;
    color: rgba(255,255,255,.62) !important;
}

.sam-native-footer-inner-v0523 {
    width: 86% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 23px 0 21px !important;
    font-size: 10.5px !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

.sam-native-footer-links-v0523 {
    display: flex !important;
    justify-content: center !important;
    gap: 18px !important;
    margin-top: 13px !important;
}

.sam-native-footer-links-v0523 a {
    color: rgba(255,255,255,.82) !important;
    text-decoration: none !important;
}

@media (max-width: 980px) {
    .sam-native-header-inner-v0523,
    .sam-native-nav-inner-v0523,
    .sam-native-footer-inner-v0523 {
        width: 92% !important;
    }

    .sam-native-phone-copy-v0523 strong {
        font-size: 29px !important;
    }

    .sam-native-phone-copy-v0523 small {
        font-size: 10px !important;
    }

    .sam-native-nav-inner-v0523 {
        padding-left: 0 !important;
    }
}

@media (max-width: 650px) {
    .sam-native-header-inner-v0523 {
        min-height: 78px !important;
    }

    .sam-native-logo-v0523 img {
        max-height: 65px !important;
    }

    .sam-native-phone-v0523 {
        display: none !important;
    }

    .sam-native-nav-inner-v0523 {
        flex-wrap: wrap !important;
        padding: 6px 0 !important;
    }

    .sam-native-nav-v0523 a {
        min-height: 35px !important;
        padding: 0 8px !important;
        font-size: 11px !important;
    }

    .sam-native-redirect-main-v0523 {
        min-height: 350px !important;
        padding: 36px 4% 44px !important;
    }

    .sam-native-redirect-card-v0523 {
        padding: 32px 21px 29px !important;
    }

    .sam-native-redirect-card-v0523 h1 {
        font-size: 26px !important;
    }
}


/* =========================================================
   v0.5.35 — BILLING ADDRESS IN THE STYLED PURCHASE FORM
   ========================================================= */
.sam-billing-capture-v0535 {
    margin: 12px 0 0 !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #DCE5EB !important;
}
.sam-billing-head-v0535 {
    margin: 0 0 10px !important;
}
.sam-billing-head-v0535 h3 {
    margin: 0 0 3px !important;
    color: #173B63 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
}
.sam-billing-head-v0535 p {
    margin: 0 !important;
    color: #7D8B97 !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
}
.sam-billing-field-v0535 {
    min-width: 0 !important;
    margin: 0 0 8px !important;
}
.sam-billing-field-v0535 label {
    display: block !important;
    margin: 0 0 4px !important;
    color: #40505C !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
}
.sam-billing-field-v0535 label span { color: #C74B50 !important; }
.sam-billing-field-v0535 input,
.sam-billing-field-v0535 select {
    width: 100% !important;
    max-width: none !important;
    min-height: 41px !important;
    box-sizing: border-box !important;
    padding: 0 12px !important;
    border: 1px solid #C8D5DE !important;
    border-radius: 7px !important;
    background: #FBFCFD !important;
    color: #34434F !important;
    box-shadow: none !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 14px !important;
}
.sam-billing-field-v0535 input:focus,
.sam-billing-field-v0535 select:focus {
    outline: none !important;
    border-color: #2F6FA8 !important;
    box-shadow: 0 0 0 3px rgba(47,111,168,.08) !important;
}
.sam-billing-grid-v0535 {
    display: grid !important;
    grid-template-columns: minmax(0,1.7fr) minmax(110px,.7fr) minmax(120px,.8fr) !important;
    gap: 12px !important;
    align-items: start !important;
}
.sam-billing-invalid-v0535 {
    border-color: #C74B50 !important;
    box-shadow: 0 0 0 2px rgba(199,75,80,.07) !important;
}
.sam-billing-error-v0535 {
    min-height: 0 !important;
    margin: 0 0 2px !important;
    color: #A63D43 !important;
    font-family: "Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
}
@media (max-width: 720px) {
    .sam-billing-grid-v0535 { grid-template-columns: 1fr !important; gap: 0 !important; }
}

/* =========================================================
   v0.5.39 — HOMEPAGE HEADER SYSTEM SYNC
   Keep the approved homepage as the visual source of truth:
   - compact inner-page top band/logo
   - homepage-scale phone typography/icon + quick reveal
   - compact nav height
   - homepage nav receives the same boxed hover treatment
     the custom inner pages already use
   ========================================================= */

/* Inner pages: undo the oversized v0.5.14 header treatment and
   return to the tighter proportions used by the approved homepage. */
.sam-custom-header-inner-v051 {
    min-height: 88px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

.sam-custom-logo-v051 img {
    max-height: 78px !important;
    width: auto !important;
}

.sam-custom-right-v051 {
    gap: 28px !important;
}

.sam-custom-phone-v052 {
    gap: 11px !important;
    transform-origin: center right !important;
    animation: samPhoneReveal0539 .34s cubic-bezier(.2,.75,.25,1) .06s both !important;
}

.sam-custom-phone-icon-v052 {
    width: 46px !important;
    height: 46px !important;
    border-width: 2px !important;
}

.sam-custom-phone-icon-v052 svg {
    width: 21px !important;
    height: 21px !important;
}

.sam-custom-phone-copy-v052 {
    gap: 2px !important;
}

.sam-custom-phone-copy-v052 strong {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 34px !important;
    line-height: .96 !important;
    font-weight: 700 !important;
    letter-spacing: -.018em !important;
}

.sam-custom-phone-copy-v052 small {
    margin-top: 2px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: .245em !important;
}

@keyframes samPhoneReveal0539 {
    0% {
        opacity: 0;
        transform: translateY(3px) scale(.985);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Compact nav proportions to match the homepage. */
.sam-custom-nav-inner-v051 {
    min-height: 54px !important;
}

.sam-custom-nav-v051 a {
    min-height: 40px !important;
}

/* Give the HOME nav the same full-tab hover box as the inner pages,
   instead of a text-only/underline-feeling hover target. */
html body.home .sam-nav-row-auto a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 0 15px !important;
    border-radius: 7px !important;
    background-image: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    transition: background .15s ease, box-shadow .15s ease, transform .15s ease !important;
}

@media (hover:hover) and (pointer:fine) {
    html body.home .sam-nav-row-auto a:hover {
        background: rgba(255,255,255,.075) !important;
        box-shadow:
            inset 0 0 0 1px rgba(255,255,255,.055),
            0 0 10px rgba(255,255,255,.025) !important;
        transform: translateY(-1px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sam-custom-phone-v052 {
        animation: none !important;
    }
}

@media (max-width: 1150px) {
    .sam-custom-phone-copy-v052 strong {
        font-size: 31px !important;
    }
    .sam-custom-phone-copy-v052 small {
        font-size: 10.7px !important;
    }
    .sam-custom-phone-icon-v052 {
        width: 44px !important;
        height: 44px !important;
    }
}

@media (max-width: 980px) {
    .sam-custom-header-inner-v051 {
        min-height: 84px !important;
    }
    .sam-custom-logo-v051 img {
        max-height: 74px !important;
    }
    .sam-custom-phone-copy-v052 strong {
        font-size: 27px !important;
    }
    .sam-custom-phone-copy-v052 small {
        font-size: 9.6px !important;
        letter-spacing: .19em !important;
    }
    .sam-custom-phone-icon-v052 {
        width: 40px !important;
        height: 40px !important;
    }
    .sam-custom-phone-icon-v052 svg {
        width: 19px !important;
        height: 19px !important;
    }
}

@media (max-width: 650px) {
    .sam-custom-header-inner-v051 {
        min-height: 76px !important;
    }
    .sam-custom-logo-v051 img {
        max-height: 66px !important;
    }
}

/* =========================================================
   v0.5.40 — MEASURED HEADER CALIBRATION
   Calibrated from 2048px screenshots rather than visual guessing.

   Observed before this patch:
   - Home logo and inner-page logo were already essentially identical in size.
   - Home header content was inset ~42px farther from each container edge,
     aligning the logo with the first nav item.
   - Inner-page phone/certification block was visibly underscaled.
   - Both nav bars were already the same height.

   Result: preserve the approved homepage geometry, preserve the inner-page
   boxed nav hover, and make the custom-page header use the same optical grid.
   ========================================================= */

/* Home-measured header grid: keep the 86% / 1280px shell, but use the same
   42px optical inset as the navigation. This aligns logo -> HOME vertically
   and gives the phone/help cluster equal breathing room on the right. */
.sam-custom-header-inner-v051 {
    min-height: 92px !important;
    padding: 4px 42px !important;
    box-sizing: border-box !important;
}

/* Logo size was already a match in the screenshots; do not resize it. */
.sam-custom-logo-v051 img {
    max-height: 78px !important;
    width: auto !important;
}

/* Restore the phone hierarchy to the measured homepage scale. */
.sam-custom-phone-v052 {
    gap: 12px !important;
}

.sam-custom-phone-icon-v052 {
    width: 52px !important;
    height: 52px !important;
    border-width: 2px !important;
}

.sam-custom-phone-icon-v052 svg {
    width: 23px !important;
    height: 23px !important;
}

.sam-custom-phone-copy-v052 strong {
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 39px !important;
    line-height: .94 !important;
    font-weight: 700 !important;
    letter-spacing: -.018em !important;
}

.sam-custom-phone-copy-v052 small {
    margin-top: 3px !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: .245em !important;
}

/* The nav height already matched exactly. Keep the 54px band and 40px
   hit target, including the approved whole-tab glow/box treatment. */
.sam-custom-nav-inner-v051 {
    min-height: 54px !important;
    padding-left: 42px !important;
}

.sam-custom-nav-v051 a,
html body.home .sam-nav-row-auto a {
    min-height: 40px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    border-radius: 7px !important;
}

/* Keep the reveal restrained and consistent on custom pages. */
.sam-custom-phone-v052 {
    animation: samPhoneReveal0539 .34s cubic-bezier(.2,.75,.25,1) .06s both !important;
}

/* Tablet calibration: preserve the same hierarchy without crowding. */
@media (max-width: 1150px) {
    .sam-custom-header-inner-v051 {
        padding-left: 28px !important;
        padding-right: 28px !important;
    }
    .sam-custom-phone-copy-v052 strong {
        font-size: 34px !important;
    }
    .sam-custom-phone-copy-v052 small {
        font-size: 12.5px !important;
        letter-spacing: .22em !important;
    }
    .sam-custom-phone-icon-v052 {
        width: 47px !important;
        height: 47px !important;
    }
    .sam-custom-phone-icon-v052 svg {
        width: 21px !important;
        height: 21px !important;
    }
}

@media (max-width: 980px) {
    .sam-custom-header-inner-v051 {
        min-height: 84px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .sam-custom-logo-v051 img {
        max-height: 74px !important;
    }
    .sam-custom-phone-copy-v052 strong {
        font-size: 27px !important;
    }
    .sam-custom-phone-copy-v052 small {
        font-size: 9.6px !important;
        letter-spacing: .19em !important;
    }
    .sam-custom-phone-icon-v052 {
        width: 40px !important;
        height: 40px !important;
    }
    .sam-custom-phone-icon-v052 svg {
        width: 19px !important;
        height: 19px !important;
    }
    .sam-custom-nav-inner-v051 {
        padding-left: 0 !important;
    }
}

@media (max-width: 650px) {
    .sam-custom-header-inner-v051 {
        min-height: 76px !important;
    }
    .sam-custom-logo-v051 img {
        max-height: 66px !important;
    }
}

/* =========================================================
   v0.5.41 — EXACT SHARED HEADER/NAV
   One DOM component + one set of metrics on every page.
   No more homepage-vs-inner-page font or size approximations.
   ========================================================= */

/* Final shared desktop geometry. These rules intentionally apply to BOTH
   the PHP-rendered inner-page component and the JS-normalized homepage. */
.sam-custom-header-v051,
html body.home .sam-home-shared-header-v0541.sam-custom-header-v051 {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    position: relative !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.58), rgba(255,255,255,0)),
        #F7F8FA !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(127,157,180,.20) !important;
    box-sizing: border-box !important;
}

html body.home .sam-home-shared-header-v0541::before,
html body.home .sam-home-shared-header-v0541::after {
    content: none !important;
    display: none !important;
}

.sam-custom-header-inner-v051,
html body.home .sam-home-shared-header-v0541 .sam-custom-header-inner-v051 {
    width: 86% !important;
    max-width: 1280px !important;
    min-height: 92px !important;
    margin: 0 auto !important;
    padding: 4px 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
}

.sam-custom-logo-v051,
html body.home .sam-home-shared-header-v0541 .sam-custom-logo-v051 {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sam-custom-logo-v051 img,
html body.home .sam-home-shared-header-v0541 .sam-custom-logo-v051 img {
    display: block !important;
    max-height: 78px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sam-custom-right-v051,
html body.home .sam-home-shared-header-v0541 .sam-custom-right-v051 {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sam-custom-phone-v052,
html body.home .sam-home-shared-header-v0541 .sam-custom-phone-v052 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #153F6B !important;
    text-decoration: none !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    animation: samPhoneReveal0539 .34s cubic-bezier(.2,.75,.25,1) .06s both !important;
}

.sam-custom-phone-icon-v052,
html body.home .sam-home-shared-header-v0541 .sam-custom-phone-icon-v052 {
    width: 52px !important;
    height: 52px !important;
    border: 2px solid #153F6B !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    flex: 0 0 52px !important;
}

.sam-custom-phone-icon-v052 svg,
html body.home .sam-home-shared-header-v0541 .sam-custom-phone-icon-v052 svg {
    width: 23px !important;
    height: 23px !important;
    display: block !important;
    fill: #153F6B !important;
}

.sam-custom-phone-copy-v052,
html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 {
    display: grid !important;
    gap: 2px !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sam-custom-phone-copy-v052 strong,
html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 strong {
    color: #153F6B !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 39px !important;
    line-height: .94 !important;
    font-weight: 700 !important;
    letter-spacing: -.018em !important;
    white-space: nowrap !important;
}

.sam-custom-phone-copy-v052 small,
html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 small {
    margin-top: 3px !important;
    color: #1D2933 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    letter-spacing: .245em !important;
    white-space: nowrap !important;
}

.sam-custom-help-v051,
html body.home .sam-home-shared-header-v0541 .sam-custom-help-v051 {
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 12px 0 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    border: 1px solid #AFC1CF !important;
    border-radius: 7px !important;
    background: rgba(255,255,255,.62) !important;
    color: #173F67 !important;
    box-shadow: 0 2px 6px rgba(28,54,77,.035) !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

.sam-custom-help-v051 svg,
html body.home .sam-home-shared-header-v0541 .sam-custom-help-v051 svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    fill: none !important;
    stroke: #2F6FA8 !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

/* Exact same full-width nav component everywhere. */
.sam-custom-nav-v051,
html body.home .sam-home-shared-nav-v0541.sam-custom-nav-v051 {
    width: 100% !important;
    max-width: none !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    position: relative !important;
    background: url("sam-nav-bg-048.svg") center center / 100% 100% no-repeat !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06),
        inset 0 -1px 0 rgba(5,25,43,.15),
        0 3px 7px rgba(18,47,73,.05) !important;
    box-sizing: border-box !important;
}

html body.home .sam-home-shared-nav-v0541::before,
html body.home .sam-home-shared-nav-v0541::after {
    content: none !important;
    display: none !important;
}

.sam-custom-nav-inner-v051,
html body.home .sam-home-shared-nav-v0541 .sam-custom-nav-inner-v051 {
    width: 86% !important;
    max-width: 1280px !important;
    min-height: 54px !important;
    margin: 0 auto !important;
    padding: 0 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    box-sizing: border-box !important;
}

.sam-custom-nav-v051 a,
html body.home .sam-home-shared-nav-v0541 a,
html body.home .sam-home-shared-nav-v0541 a:link,
html body.home .sam-home-shared-nav-v0541 a:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: #FFFFFF !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    font-style: normal !important;
    letter-spacing: .007em !important;
    text-transform: none !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease !important;
}

.sam-custom-nav-v051 a::before,
.sam-custom-nav-v051 a::after,
html body.home .sam-home-shared-nav-v0541 a::before,
html body.home .sam-home-shared-nav-v0541 a::after {
    content: none !important;
    display: none !important;
}

.sam-custom-nav-v051 a.is-active-v051,
html body.home .sam-home-shared-nav-v0541 a.is-active-v051 {
    background: transparent !important;
    box-shadow: none !important;
}

@media (hover:hover) and (pointer:fine) {
    .sam-custom-nav-v051 a:hover,
    .sam-custom-nav-v051 a.is-active-v051:hover,
    html body.home .sam-home-shared-nav-v0541 a:hover,
    html body.home .sam-home-shared-nav-v0541 a.is-active-v051:hover {
        background: rgba(255,255,255,.075) !important;
        box-shadow:
            inset 0 0 0 1px rgba(255,255,255,.055),
            0 0 10px rgba(255,255,255,.025) !important;
        transform: translateY(-1px) !important;
    }
}

/* Keep one responsive system as well, rather than separate home/inner values. */
@media (max-width: 1150px) {
    .sam-custom-header-inner-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-header-inner-v051,
    .sam-custom-nav-inner-v051,
    html body.home .sam-home-shared-nav-v0541 .sam-custom-nav-inner-v051 {
        padding-left: 28px !important;
        padding-right: 28px !important;
    }
    .sam-custom-phone-copy-v052 strong,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 strong {
        font-size: 34px !important;
    }
    .sam-custom-phone-copy-v052 small,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 small {
        font-size: 12.5px !important;
        letter-spacing: .22em !important;
    }
}

@media (max-width: 980px) {
    .sam-custom-header-inner-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-header-inner-v051 {
        min-height: 84px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .sam-custom-nav-inner-v051,
    html body.home .sam-home-shared-nav-v0541 .sam-custom-nav-inner-v051 {
        padding-left: 0 !important;
        padding-right: 0 !important;
        flex-wrap: wrap !important;
    }
    .sam-custom-logo-v051 img,
    html body.home .sam-home-shared-header-v0541 .sam-custom-logo-v051 img {
        max-height: 74px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sam-custom-phone-v052,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-v052 {
        animation: none !important;
    }
}

/* =========================================================
   v0.5.43 — MOBILE-ONLY POLISH
   Desktop/tablet >= 651px intentionally unchanged.
   Goals: eliminate header overflow, reduce above-the-fold chrome,
   provide a compact accessible mobile menu, and tighten the homepage CTA.
   ========================================================= */

.sam-mobile-nav-toggle-v0543 {
    display: none !important;
}

@media (max-width: 650px) {
    html,
    body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    /* ---- Compact mobile header: logo + phone + help all fit on one row. ---- */
    .sam-custom-header-inner-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-header-inner-v051 {
        width: 100% !important;
        max-width: none !important;
        min-height: 68px !important;
        padding: 8px 14px !important;
        gap: 10px !important;
        box-sizing: border-box !important;
    }

    .sam-custom-logo-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-logo-v051 {
        min-width: 0 !important;
        flex: 0 1 auto !important;
    }

    .sam-custom-logo-v051 img,
    html body.home .sam-home-shared-header-v0541 .sam-custom-logo-v051 img {
        width: min(46vw, 190px) !important;
        max-width: 190px !important;
        max-height: none !important;
        height: auto !important;
    }

    .sam-custom-right-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-right-v051 {
        min-width: 0 !important;
        flex: 0 0 auto !important;
        gap: 8px !important;
    }

    /* The desktop circular phone icon is attractive but wastes critical mobile width. */
    .sam-custom-phone-icon-v052,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-icon-v052 {
        display: none !important;
    }

    .sam-custom-phone-v052,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-v052 {
        min-width: 0 !important;
        gap: 0 !important;
    }

    .sam-custom-phone-copy-v052,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 {
        min-width: 0 !important;
        gap: 1px !important;
    }

    .sam-custom-phone-copy-v052 strong,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 strong {
        font-size: clamp(15.5px, 4.25vw, 18px) !important;
        line-height: 1 !important;
        letter-spacing: -.012em !important;
    }

    .sam-custom-phone-copy-v052 small,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 small {
        margin-top: 2px !important;
        font-size: clamp(6.1px, 1.65vw, 7.2px) !important;
        line-height: 1 !important;
        letter-spacing: .12em !important;
        white-space: nowrap !important;
    }

    /* Keep Help available without spending ~100px on the text label. */
    .sam-custom-help-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-help-v051 {
        width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        min-height: 38px !important;
        padding: 0 !important;
        border-radius: 8px !important;
        gap: 0 !important;
    }

    .sam-custom-help-v051 span,
    html body.home .sam-home-shared-header-v0541 .sam-custom-help-v051 span {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0 0 0 0) !important;
        clip-path: inset(50%) !important;
        white-space: nowrap !important;
    }

    .sam-custom-help-v051 svg,
    html body.home .sam-home-shared-header-v0541 .sam-custom-help-v051 svg {
        width: 19px !important;
        height: 19px !important;
    }

    /* ---- Replace the two-row six-link bar with a compact mobile menu. ---- */
    .sam-custom-nav-v051,
    html body.home .sam-home-shared-nav-v0541.sam-custom-nav-v051 {
        min-height: 50px !important;
    }

    .sam-mobile-nav-toggle-v0543 {
        width: 100% !important;
        min-height: 50px !important;
        margin: 0 !important;
        padding: 0 16px !important;
        border: 0 !important;
        background: transparent !important;
        color: #fff !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        font-family: Arial, Helvetica, sans-serif !important;
        font-size: 14px !important;
        line-height: 1 !important;
        font-weight: 700 !important;
        letter-spacing: .055em !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
    }

    .sam-mobile-nav-toggle-v0543 .sam-mobile-menu-icon-v0543 {
        width: 22px !important;
        height: 16px !important;
        display: inline-flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
    }

    .sam-mobile-nav-toggle-v0543 .sam-mobile-menu-icon-v0543 i {
        display: block !important;
        width: 100% !important;
        height: 2px !important;
        border-radius: 2px !important;
        background: #fff !important;
        transition: transform .18s ease, opacity .18s ease !important;
    }

    .sam-custom-nav-v051.is-open-v0543 .sam-mobile-menu-icon-v0543 i:nth-child(1) {
        transform: translateY(7px) rotate(45deg) !important;
    }
    .sam-custom-nav-v051.is-open-v0543 .sam-mobile-menu-icon-v0543 i:nth-child(2) {
        opacity: 0 !important;
    }
    .sam-custom-nav-v051.is-open-v0543 .sam-mobile-menu-icon-v0543 i:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg) !important;
    }

    .sam-custom-nav-inner-v051,
    html body.home .sam-home-shared-nav-v0541 .sam-custom-nav-inner-v051 {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 0 12px 11px !important;
        display: none !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 5px !important;
        box-sizing: border-box !important;
    }

    .sam-custom-nav-v051.is-open-v0543 .sam-custom-nav-inner-v051,
    html body.home .sam-home-shared-nav-v0541.is-open-v0543 .sam-custom-nav-inner-v051 {
        display: grid !important;
    }

    .sam-custom-nav-v051 a,
    html body.home .sam-home-shared-nav-v0541 a,
    html body.home .sam-home-shared-nav-v0541 a:link,
    html body.home .sam-home-shared-nav-v0541 a:visited {
        width: 100% !important;
        min-height: 42px !important;
        padding: 0 8px !important;
        border-radius: 7px !important;
        font-size: 13.5px !important;
        letter-spacing: 0 !important;
        text-align: center !important;
    }

    .sam-custom-nav-v051 a.is-active-v051,
    html body.home .sam-home-shared-nav-v0541 a.is-active-v051 {
        background: rgba(255,255,255,.075) !important;
        box-shadow: inset 0 0 0 1px rgba(255,255,255,.06) !important;
    }

    /* ---- Homepage mobile hero: preserve design, remove excess vertical scale. ---- */
    html body.home .sam-lookup-row-auto {
        min-height: auto !important;
        padding: 24px 4.5% 44px !important;
    }

    html body.home .sam-hero-emblem {
        width: 54px !important;
        height: 54px !important;
        margin: 0 auto 13px !important;
        background-size: 34px 34px !important;
    }

    html body.home .sam-hero-emblem::before,
    html body.home .sam-hero-emblem::after {
        width: 44px !important;
    }

    html body.home .sam-hero-emblem::before {
        right: calc(100% + 14px) !important;
    }
    html body.home .sam-hero-emblem::after {
        left: calc(100% + 14px) !important;
    }

    html body.home .sam-hero-widget .srel-heading {
        max-width: 355px !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
        letter-spacing: -.025em !important;
    }

    html body.home .sam-hero-divider {
        gap: 10px !important;
        margin: 16px auto 16px !important;
    }

    html body.home .sam-hero-divider span {
        width: 46px !important;
    }

    html body.home .sam-search-card {
        width: 100% !important;
        padding: 18px 14px 16px !important;
        border-radius: 12px !important;
    }

    html body.home .sam-search-card .srel-subheading {
        margin-bottom: 14px !important;
        font-size: 14.5px !important;
        line-height: 1.35 !important;
    }

    html body.home .sam-search-card .srel-input {
        min-height: 52px !important;
        padding-left: 49px !important;
        padding-right: 12px !important;
        background-position: 16px center !important;
        background-size: 22px 22px !important;
        font-size: 15px !important;
    }

    html body.home .sam-search-card .srel-search {
        min-height: 52px !important;
        margin-top: 9px !important;
        font-size: 14.5px !important;
    }

    /* ---- Plan pages: slightly tighter mobile rhythm; no desktop changes. ---- */
    .sam-plan-main-v0521 {
        padding: 18px 16px 32px !important;
    }

    .sam-plan-intro-v0521 {
        margin-bottom: 15px !important;
    }

    .sam-plan-intro-v0521 h1 {
        max-width: 350px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
    }

    .sam-plan-main-v0521 .sam-plan-grid-v0514 {
        gap: 14px !important;
    }

    .sam-plan-main-v0521 .sam-plan-card-v0514 {
        min-height: 0 !important;
        padding: 21px 20px 19px !important;
        border-radius: 13px !important;
    }

    .sam-plan-main-v0521 .sam-plan-price-v0514 {
        margin: 11px 0 8px !important;
    }

    .sam-plan-main-v0521 .sam-plan-card-v0514 p {
        min-height: 0 !important;
        margin-bottom: 14px !important;
        line-height: 1.48 !important;
    }

    .sam-plan-card-v0514 > a {
        min-height: 46px !important;
        font-size: 12px !important;
    }

    /* Keep floating help clear of iOS Safari bottom controls. */
    .sam-help-fab-v051 {
        width: 52px !important;
        height: 52px !important;
        right: 14px !important;
        bottom: max(18px, env(safe-area-inset-bottom)) !important;
    }
}

@media (max-width: 380px) {
    .sam-custom-header-inner-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-header-inner-v051 {
        padding-left: 10px !important;
        padding-right: 10px !important;
        gap: 7px !important;
    }
    .sam-custom-logo-v051 img,
    html body.home .sam-home-shared-header-v0541 .sam-custom-logo-v051 img {
        width: 43vw !important;
    }
    .sam-custom-right-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-right-v051 {
        gap: 6px !important;
    }
    .sam-custom-help-v051,
    html body.home .sam-home-shared-header-v0541 .sam-custom-help-v051 {
        width: 36px !important;
        min-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
    }
    .sam-custom-phone-copy-v052 strong,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 strong {
        font-size: 15px !important;
    }
    .sam-custom-phone-copy-v052 small,
    html body.home .sam-home-shared-header-v0541 .sam-custom-phone-copy-v052 small {
        font-size: 5.9px !important;
        letter-spacing: .09em !important;
    }
}


/* =========================================================
   v0.5.44 — PRODUCTION AUDIT: progressive mobile-nav fallback
   If JavaScript is unavailable, keep the six navigation links visible rather
   than leaving mobile visitors with a hidden menu and no toggle.
   ========================================================= */
@media (max-width: 650px) {
    .sam-custom-nav-v051:not(.sam-mobile-nav-ready-v0544) .sam-custom-nav-inner-v051,
    html body.home .sam-home-shared-nav-v0541.sam-custom-nav-v051:not(.sam-mobile-nav-ready-v0544) .sam-custom-nav-inner-v051 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        padding: 8px 12px 11px !important;
    }
}
