/* cm-theme base reset — replaces defaults Elementor/hello-elementor used to provide.
   a{text-decoration:none} keeps the anchor-buttons clean; the pages' own
   a:not(.btn){text-decoration:underline} rules re-add underline to body links. */
a { text-decoration: none; }

/* Mobile menu sub-page items (dropdown children) — indented + lighter than the
   top-level links. a.cm-mobile-sub specificity beats .cm-mobile-panel-nav a. */
.cm-mobile-panel-nav a.cm-mobile-sub {
	padding-left: 20px;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: .4px;
	text-transform: none;
	opacity: .82;
}

html, body { min-height: 100vh; margin: 0; }
body.elementor-kit-5 { display: flex; flex-direction: column; }
body.elementor-kit-5 > .elementor-location-header,
body.elementor-kit-5 > .elementor-location-footer { flex: 0 0 auto; }
body.elementor-kit-5 > .site,
body.elementor-kit-5 > #page,
body.elementor-kit-5 > main,
body.elementor-kit-5 > .site-main,
body.elementor-kit-5 > .site-content { flex: 1 0 auto; display: flex; flex-direction: column; }
body.elementor-kit-5 > .site > main,
body.elementor-kit-5 > #page > main,
body.elementor-kit-5 > .site-main > main { flex: 1 0 auto; }

/* Sticky-footer: body is flex-column, content grows, footer margin-top:auto */
html, body { min-height: 100vh; margin: 0; }
body.elementor-page { display: flex; flex-direction: column; min-height: 100vh; }
body.elementor-page > .elementor-location-header { flex: 0 0 auto; }
body.elementor-page > .elementor-location-footer { flex: 0 0 auto; margin-top: auto; order: 9999; }
body.elementor-page > div[data-elementor-type="wp-page"],
body.elementor-page > div[data-elementor-type="wp-post"],
body.elementor-page > .elementor { flex: 1 0 auto; }

/* Kill any margin between header and first content section, and between content and footer */
body.elementor-page > .elementor-location-header,
body.elementor-page > .elementor-location-footer { margin: 0 !important; }
body.elementor-page > div[data-elementor-type="wp-page"],
body.elementor-page > div[data-elementor-type="wp-post"] { margin: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
body.elementor-page > div[data-elementor-type="wp-page"] > .elementor-section:first-child,
body.elementor-page > div[data-elementor-type="wp-post"] > .elementor-section:first-child,
body.elementor-page > div[data-elementor-type="wp-page"] > section.elementor-top-section:first-of-type { margin-top: 0 !important; }
body.elementor-page > div[data-elementor-type="wp-page"] > .elementor-section:last-child,
body.elementor-page > div[data-elementor-type="wp-post"] > .elementor-section:last-child { margin-bottom: 0 !important; }

/* Exile everything that isn't header/content/footer out of flex flow */
body.elementor-page > script,
body.elementor-page > style,
body.elementor-page > noscript,
body.elementor-page > svg,
body.elementor-page > iframe,
body.elementor-page > link,
body.elementor-page > meta,
body.elementor-page > span,
body.elementor-page > a.skip-link,
body.elementor-page > .elementor-screen-only,
body.elementor-page > .fancybox-container,
body.elementor-page > [aria-hidden="true"]:not(#co_popup_form) {
    position: absolute !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    display: block !important;
    flex: 0 0 0 !important;
}
/* Keep the global popup truly fixed so it still works */
body.elementor-page > #co_popup_form {
    position: fixed !important;
    width: auto !important;
    height: auto !important;
}

/* cm-customizations form submit buttons, dark navy bg, orange text */
.cm-form-submit,
button.cm-form-submit,
.cm-form .cm-form-submit,
.cm-form button[type="submit"] {
    background: #030410 !important;
    background-color: #030410 !important;
    color: #ffa200 !important;
    border: 1px solid #030410 !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}
.cm-form-submit:hover,
button.cm-form-submit:hover,
.cm-form button[type="submit"]:hover {
    background: #ffa200 !important;
    background-color: #ffa200 !important;
    color: #030410 !important;
    border-color: #ffa200 !important;
}
.cm-form-submit:disabled,
button.cm-form-submit:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

/* === CM Mobile Optimization === */

.cm-mobile-actions {
    display: none;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin: 6px 0 2px;
    flex-shrink: 0;
}
.cm-mobile-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 180px;
    height: 42px;
    padding: 0 20px;
    border-radius: 3px;
    border: 1px solid rgba(10,15,31,0.2);
    background: transparent;
    color: #0a0f1f;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
    text-decoration: none;
    font-family: Roboto, sans-serif;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    gap: 10px;
}
.cm-mobile-btn:hover,
.cm-mobile-btn:focus-visible {
    background: #0a0f1f;
    border-color: #0a0f1f;
    color: #ffa200;
    outline: none;
}
.cm-hamburger-lines {
    display: inline-block;
    width: 18px;
    height: 2px;
    background: currentColor;
    position: relative;
    transition: background 0.2s;
}
.cm-hamburger-lines::before,
.cm-hamburger-lines::after {
    content: "";
    position: absolute;
    left: 0;
    width: 18px;
    height: 2px;
    background: currentColor;
    transition: transform 0.25s ease;
}
.cm-hamburger-lines::before { top: -6px; }
.cm-hamburger-lines::after  { top: 6px; }
.cm-mobile-btn[aria-expanded="true"] .cm-hamburger-lines { background: transparent; }
.cm-mobile-btn[aria-expanded="true"] .cm-hamburger-lines::before { transform: translateY(6px) rotate(45deg); }
.cm-mobile-btn[aria-expanded="true"] .cm-hamburger-lines::after  { transform: translateY(-6px) rotate(-45deg); }

/* Slide-down nav panel */
.cm-mobile-panel {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9998;
    background: #0a0f1f;
    color: #ffffff;
    padding: 56px 24px 32px;
    max-height: 100vh;
    max-height: 100dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    font-family: Roboto, sans-serif;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-16px);
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0s linear 0.25s;
}
.cm-mobile-panel[aria-hidden="false"] {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0s linear 0s;
}
.cm-mobile-panel-close {
    position: absolute;
    top: 12px;
    right: 12px;
    background: transparent;
    border: none;
    color: #ffffff;
    font-size: 28px;
    line-height: 1;
    padding: 6px 12px;
    cursor: pointer;
    border-radius: 3px;
}
.cm-mobile-panel-close:hover,
.cm-mobile-panel-close:focus-visible {
    color: #ffa200;
    outline: none;
}
.cm-mobile-panel-nav {
    display: flex;
    flex-direction: column;
    border-top: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 24px;
}
.cm-mobile-panel-nav a {
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 16px 4px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    transition: color 0.2s;
}
.cm-mobile-panel-nav a:hover,
.cm-mobile-panel-nav a:focus-visible {
    color: #ffa200;
    outline: none;
}
.cm-mobile-panel-cta {
    display: block;
    margin-top: 8px;
    padding: 14px 20px;
    background: #ffa200;
    color: #0a0f1f;
    text-align: center;
    text-decoration: none;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    font-size: 13px;
    border-radius: 3px;
    font-family: Roboto, sans-serif;
}
.cm-mobile-panel-cta:hover,
.cm-mobile-panel-cta:focus-visible {
    background: #ffb733;
    outline: none;
}

body.cm-mobile-nav-open {
    position: fixed;
    width: 100%;
    overflow: hidden;
}

.cm-mobile-backdrop {
    position: fixed;
    inset: 0;
    z-index: 9997;
    background: rgba(0,0,0,0.4);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
}
.cm-mobile-backdrop.cm-open {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.25s ease, visibility 0s linear 0s;
}

/* ===== Mobile breakpoint (<= 900px) ===== */
@media (max-width: 900px) {

    /* Top bar: stack vertically, everything centered */
    header.elementor-location-header .cm-topbar-flex,
    header.elementor-location-header div[style*="display:flex"][style*="justify-content:space-between"] {
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        padding: 12px 12px 8px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    header.elementor-location-header .cm-topbar-flex > div,
    header.elementor-location-header div[style*="display:flex"][style*="justify-content:space-between"] > div {
        text-align: center !important;
        max-width: 100% !important;
        width: auto !important;
    }
    header.elementor-location-header img[alt="Chassis Master"] {
        max-height: 42px !important;
    }
    /* Email/address paragraphs: center, margins tight */
    header.elementor-location-header .cm-topbar-flex p,
    header.elementor-location-header div[style*="display:flex"][style*="justify-content:space-between"] p {
        text-align: center !important;
        margin: 4px 0 !important;
        font-size: 13px !important;
    }
    /* CALL button: more prominent on mobile */
    header.elementor-location-header .cm-header-cta {
        display: inline-block !important;
        padding: 8px 24px !important;
        font-size: 14px !important;
    }

    /* Hide horizontal desktop nav entirely; use hamburger in top bar */
    #cm-nav,
    .cm-nav-section {
        display: none !important;
    }

    /* Show hamburger */
    .cm-mobile-actions {
        display: flex !important;
    }

    /* Content pages: tighter section padding */
    [data-elementor-type="wp-page"] section.elementor-section,
    [data-elementor-type="single-page"] section.elementor-section {
        padding-top: 22px !important;
        padding-bottom: 22px !important;
    }

    /* Headings scale-down */
    h1.elementor-heading-title,
    .elementor-widget-heading h1 {
        font-size: 22px !important;
        line-height: 1.25 !important;
    }
    h2.elementor-heading-title,
    .elementor-widget-heading h2 {
        font-size: 18px !important;
        line-height: 1.3 !important;
    }

    /* Service list items: tighter */
    .cm-service-item {
        padding: 7px 0 !important;
        margin: 0 !important;
    }
    .cm-service-item h2 {
        font-size: 13px !important;
        line-height: 1.3 !important;
        margin: 0 !important;
        font-weight: 600 !important;
        letter-spacing: 0.4px !important;
    }
    .cm-service-sub .cm-service-item {
        padding: 5px 0 5px 14px !important;
    }

    /* Body copy */
    .cm-body-copy p {
        font-size: 14px !important;
        line-height: 1.6 !important;
        margin-bottom: 10px !important;
    }

    /* Warranty guarantee callout */
    .cm-guarantee {
        padding: 14px 16px !important;
        margin: 14px 0 !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}

/* ===== Column stack breakpoint (<= 767px) matches Elementor's own column-stacking =====
   Elementor writes per-column padding (e.g. padding: 0 20px 0 0 on the left col,
   padding: 0 0 0 20px on the right col) OUTSIDE any @media query, so when columns
   stack on mobile the gap padding becomes a visible indent on the second column.
   This block zeros horizontal column padding once columns go single-file. */
@media (max-width: 767px) {
    [data-elementor-type="wp-page"] .elementor-column > .elementor-element-populated,
    [data-elementor-type="single-page"] .elementor-column > .elementor-element-populated {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    /* Zero Elementor's column-gap between stacked columns too (prevents visual shift) */
    [data-elementor-type="wp-page"] .elementor-column-gap-default > .elementor-column,
    [data-elementor-type="single-page"] .elementor-column-gap-default > .elementor-column {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 480px) {
    header.elementor-location-header img[alt="Chassis Master"] {
        max-height: 38px !important;
    }
    .cm-mobile-btn {
        min-width: 160px;
    }
    .cm-mobile-panel {
        padding: 56px 20px 28px;
    }
}

/* End CM Mobile */

/* CM Inline H2 Start */
.cm-h2 {
    font-family: "Open Sans", sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #111;
    margin: 20px 0 12px 0;
    letter-spacing: 1px;
    line-height: 1.3;
}
.cm-rental-box .cm-h2 {
    color: #ffa200;
}
@media (max-width: 767px) {
    .cm-h2 { font-size: 16px; margin: 16px 0 10px 0; }
}
/* CM Inline H2 End */



/* CM Gap Fix Start, MOBILE ONLY */
@media (max-width: 1024px) {
    html, body { margin: 0 !important; padding: 0 !important; }
    body > main, .site-main, main.site-main { margin: 0 !important; padding: 0 !important; }
    .elementor-location-header, .elementor-location-footer { margin: 0 !important; }
    .elementor-template-full-width, body > div.elementor, body > .elementor-section { margin: 0 !important; }
    .elementor-location-header > .elementor-section.elementor-top-section:last-child { margin-bottom: 0 !important; }
    .elementor-location-footer > .elementor-section.elementor-top-section:first-child { margin-top: 0 !important; }
}
/* CM Gap Fix End */

/* CM OEM Hero Mobile Start, force aggressive H1 sizing on mobile across all OEM brand pages */
@media (max-width: 880px) {
    .cmj .hero h1, .cmlr .hero h1, .cmi .hero h1, .cmn .hero h1,
    .cmv .hero h1, .cmc .hero h1, .cmm .hero h1, .cmo .hero h1,
    .cms .hero h1, .cmsh .hero h1, .cmab .hero h1, .cmw .hero h1,
    .cmin .hero h1, .cmsp .hero h1, .cmct .hero h1, .cmcr .hero h1, .cmos .hero h1 {
        font-size: 28px !important;
        line-height: 1.15 !important;
        max-width: none !important;
        word-break: break-word !important;
        margin-bottom: 16px !important;
    }
    .cmj .hero .lead, .cmlr .hero .lead, .cmi .hero .lead, .cmn .hero .lead,
    .cmv .hero .lead, .cmc .hero .lead, .cmm .hero .lead, .cmo .hero .lead,
    .cms .hero .lead, .cmsh .hero .lead, .cmab .hero .lead, .cmw .hero .lead,
    .cmin .hero .lead, .cmsp .hero .lead, .cmct .hero .lead {
        max-width: none !important;
        font-size: 16px !important;
    }
}
/* CM OEM Hero Mobile End */

/* CM OEM Hero Mobile Start, aggressive mobile heading + logo handling */
@media (max-width: 880px) {
    /* Force all hero H1s small + break long words + clip overflow */
    .cmj .hero h1, .cmlr .hero h1, .cmi .hero h1, .cmn .hero h1,
    .cmv .hero h1, .cmc .hero h1, .cmm .hero h1, .cmo .hero h1,
    .cms .hero h1, .cmsh .hero h1, .cmab .hero h1, .cmw .hero h1,
    .cmin .hero h1, .cmsp .hero h1, .cmct .hero h1, .cmcr .hero h1, .cmos .hero h1 {
        font-size: 26px !important;
        line-height: 1.18 !important;
        max-width: 100% !important;
        width: 100% !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
        hyphens: auto !important;
        margin-bottom: 14px !important;
    }
    /* Lead text */
    .cmj .hero .lead, .cmlr .hero .lead, .cmi .hero .lead, .cmn .hero .lead,
    .cmv .hero .lead, .cmc .hero .lead, .cmm .hero .lead, .cmo .hero .lead,
    .cms .hero .lead, .cmsh .hero .lead, .cmab .hero .lead,
    .cmw .hero .lead, .cmin .hero .lead, .cmsp .hero .lead, .cmct .hero .lead {
        max-width: 100% !important;
        font-size: 15.5px !important;
        line-height: 1.55 !important;
    }
    /* Hero wrap: prevent horizontal overflow + ensure single column */
    .cmj .hero .wrap, .cmlr .hero .wrap, .cmi .hero .wrap, .cmn .hero .wrap,
    .cmv .hero .wrap, .cmc .hero .wrap, .cmm .hero .wrap, .cmo .hero .wrap,
    .cms .hero .wrap, .cmsh .hero .wrap, .cmab .hero .wrap,
    .cmw .hero .wrap, .cmin .hero .wrap, .cmsp .hero .wrap, .cmct .hero .wrap {
        max-width: 100% !important;
        overflow-x: hidden !important;
        grid-template-columns: 1fr !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
    /* Hero section itself: clip any side-overflow */
    .cmj .hero, .cmlr .hero, .cmi .hero, .cmn .hero,
    .cmv .hero, .cmc .hero, .cmm .hero, .cmo .hero {
        overflow-x: hidden !important;
    }
    /* Hide the right-column manufacturer logo image on OEM brand pages on mobile */
    .cmj .hero .wrap > .herobrand, .cmlr .hero .wrap > .herobrand,
    .cmi .hero .wrap > .herobrand, .cmn .hero .wrap > .herobrand,
    .cmv .hero .wrap > .herobrand, .cmc .hero .wrap > .herobrand,
    .cmm .hero .wrap > .herobrand,
    .cmj .hero .wrap img, .cmlr .hero .wrap img, .cmi .hero .wrap img,
    .cmn .hero .wrap img, .cmv .hero .wrap img, .cmc .hero .wrap img,
    .cmm .hero .wrap img {
        display: none !important;
    }
    /* OEM brand pages: also kill any second column / logo lockup */
    .cmj .hero .wrap > div:nth-child(2):not(.cta),
    .cmlr .hero .wrap > div:nth-child(2):not(.cta),
    .cmi .hero .wrap > div:nth-child(2):not(.cta),
    .cmn .hero .wrap > div:nth-child(2):not(.cta),
    .cmv .hero .wrap > div:nth-child(2):not(.cta),
    .cmc .hero .wrap > div:nth-child(2):not(.cta),
    .cmm .hero .wrap > div:nth-child(2):not(.cta) {
        display: none !important;
    }
}
/* CM OEM Hero Mobile End */

/* CM Link States Start, force in-body link colors to apply on visited/active */
.cmho a:not(.btn):not(.scard):not(.svc):visited,
.cmho a:not(.btn):not(.scard):not(.svc):active,
.cmab a:not(.btn):visited, .cmab a:not(.btn):active,
.cmsh a:not(.btn):visited, .cmsh a:not(.btn):active,
.cmw a:not(.btn):visited, .cmw a:not(.btn):active,
.cmin a:not(.btn):visited, .cmin a:not(.btn):active,
.cmsp a:not(.btn):visited, .cmsp a:not(.btn):active,
.cmct a:not(.btn):visited, .cmct a:not(.btn):active,
.cmcr a:not(.btn):visited, .cmcr a:not(.btn):active,
.cmos a:not(.btn):visited, .cmos a:not(.btn):active,
.cmo a:not(.btn):visited, .cmo a:not(.btn):active,
.cms a:not(.btn):visited, .cms a:not(.btn):active,
.cmj a:not(.btn):visited, .cmlr a:not(.btn):visited,
.cmi a:not(.btn):visited, .cmn a:not(.btn):visited,
.cmv a:not(.btn):visited, .cmc a:not(.btn):visited,
.cmm a:not(.btn):visited {
    color: inherit;
}
/* Force orange in hero/dark sections */
.cmho .hero a:not(.btn):visited, .cmho .hero a:not(.btn):active,
.cmho .final a:not(.btn):visited,
.cmho .certs a:not(.btn):visited,
.cmab .hero a:not(.btn):visited, .cmab .final a:not(.btn):visited, .cmab .heritage a:not(.btn):visited,
.cmsh .hero a:not(.btn):visited, .cmsh .why a:not(.btn):visited, .cmsh .final a:not(.btn):visited,
.cmin .hero a:not(.btn):visited, .cmsp .hero a:not(.btn):visited,
.cmw .hero a:not(.btn):visited, .cmw .final a:not(.btn):visited,
.cmct .hero a:not(.btn):visited, .cmcr .hero a:not(.btn):visited,
.cmos .hero a:not(.btn):visited, .cmo .hero a:not(.btn):visited,
.cmj .hero a:not(.btn):visited, .cmlr .hero a:not(.btn):visited,
.cmi .hero a:not(.btn):visited, .cmn .hero a:not(.btn):visited,
.cmv .hero a:not(.btn):visited, .cmc .hero a:not(.btn):visited,
.cmm .hero a:not(.btn):visited {
    color: #ff9405 !important;
}
/* CM Link States End */

/* CM Gap Fix Start, REAL FIX: body bg dark to hide gaps, page wrappers explicit bg for light sections */
html, body {
    margin: 0 !important;
    padding: 0 !important;
}
body {
    background-color: #0a1320 !important;
}
/* Pages with light content sections (services hub, why chassis, warranty etc.), set wrapper white so light sections inside still render light */
.cmho, .cmab, .cmsh, .cmw, .cmct, .cmcr, .cmos, .cms, .cmin, .cmsp {
    background-color: #ffffff;
}
/* OEM hub + OEM brand pages are mostly dark, set wrapper dark navy */
.cmo, .cmj, .cmlr, .cmi, .cmn, .cmv, .cmc, .cmm {
    background-color: #0a1320;
}
/* Mobile menu button styling (preserved from prior mobile bug fix) */
.cm-mobile-btn, .cm-mobile-btn:link, .cm-mobile-btn:visited, .cm-mobile-btn:active, .cm-mobile-btn:focus {
    color: #ffa200 !important;
    background: #0a1628 !important;
    border: 1px solid #0a1628 !important;
}
.cm-mobile-btn:hover { background: #0d1b2c !important; color: #ffa200 !important; }
.cm-mobile-btn .cm-hamburger-lines,
.cm-mobile-btn .cm-hamburger-lines::before,
.cm-mobile-btn .cm-hamburger-lines::after { background: #ffa200 !important; }
/* CM Gap Fix End */

/* CM Menu Btn Mobile Start, full-width MENU button, flush bottom, 1px white border (min-width:100% is the unlock) */
@media (max-width: 1024px) {
    /* Zero out section + column + topbar-flex side and bottom paddings so MENU can be edge-to-edge and flush */
    header.elementor-location-header section.elementor-element-hdr01aaa {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
    }
    header.elementor-location-header section.elementor-element-hdr01aaa .elementor-column > .elementor-element-populated {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
    }
    header.elementor-location-header .cm-topbar-flex {
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 0 !important;
    }
    /* Restore 16px side padding to the upper stack (logo / call / hours / address) so they don't slam edges */
    header.elementor-location-header .cm-topbar-flex > div:not(.cm-mobile-actions) {
        padding-left: 16px !important;
        padding-right: 16px !important;
        box-sizing: border-box !important;
    }
    /* Actions wrapper: full width, last in flex order, flush at bottom */
    header.elementor-location-header .cm-topbar-flex > .cm-mobile-actions,
    .cm-mobile-actions {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
        flex: 1 1 100% !important;
        align-self: stretch !important;
        margin: 12px 0 0 0 !important;
        padding: 0 !important;
        order: 99 !important;
        box-sizing: border-box !important;
    }
    /* THE button, min-width:100% is the unlock that beats whatever was pinning it to content width */
    header.elementor-location-header .cm-mobile-actions > .cm-mobile-btn,
    .cm-mobile-actions > .cm-mobile-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 12px !important;
        flex: 1 1 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
        height: 52px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 1px solid #ffffff !important;
        border-radius: 0 !important;
        background: #0a1628 !important;
        color: #ffa200 !important;
        letter-spacing: 2px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        box-sizing: border-box !important;
    }
    header.elementor-location-header .cm-mobile-actions > .cm-mobile-btn:hover,
    header.elementor-location-header .cm-mobile-actions > .cm-mobile-btn:focus {
        background: #0d1b2c !important;
        color: #ffa200 !important;
    }
    header.elementor-location-header .cm-mobile-actions > .cm-mobile-btn .cm-hamburger-lines,
    header.elementor-location-header .cm-mobile-actions > .cm-mobile-btn .cm-hamburger-lines::before,
    header.elementor-location-header .cm-mobile-actions > .cm-mobile-btn .cm-hamburger-lines::after {
        background: #ffa200 !important;
    }
}
/* CM Menu Btn Mobile End */
