:root {
    --sle-navy: #071f3d;
    --sle-navy-2: #0b2f57;
    --sle-blue: #075b9f;
    --sle-sky: #dff2fb;
    --sle-red: #c93427;
    --sle-red-dark: #a5251c;
    --sle-ink: #102033;
    --sle-muted: #526479;
    --sle-soft: #f3f6f8;
    --sle-cream: #fbfaf6;
    --sle-white: #fff;
    --sle-line: #dce5ec;
    --sle-radius: 18px;
    --sle-shadow: 0 22px 55px rgba(6, 31, 61, .12);
    --sle-wrap: 1240px;
}

html { scroll-behavior: smooth; }
body.sle-managed-site {
    margin: 0;
    overflow-x: hidden;
    background: var(--sle-white);
    color: var(--sle-ink);
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 17px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}
body.sle-managed-site *, body.sle-managed-site *::before, body.sle-managed-site *::after { box-sizing: border-box; }
body.sle-managed-site img { max-width: 100%; }
body.sle-managed-site a { color: inherit; }
.elementor-editor-active .sle-main,
.elementor-editor-preview .sle-main { width: 100%; min-width: 0; }
.elementor-editor-active .sle-main .e-con,
.elementor-editor-preview .sle-main .e-con { min-width: 0; }
body.sle-managed-site h1,
body.sle-managed-site h2,
body.sle-managed-site h3,
body.sle-managed-site h4 {
    margin: 0;
    color: var(--sle-navy);
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif;
    font-weight: 800;
    letter-spacing: -.025em;
    line-height: 1.12;
}
body.sle-managed-site h1 { font-size: clamp(2.8rem, 4.4vw, 4.5rem); }
body.sle-managed-site h2 { font-size: clamp(2rem, 3.1vw, 3rem); }
body.sle-managed-site h3 { font-size: clamp(1.2rem, 1.65vw, 1.55rem); line-height: 1.18; }
body.sle-managed-site p { margin: 0 0 1em; }
.sle-main { min-height: 55vh; }
.sle-wrap {
    width: min(var(--sle-wrap), calc(100% - 56px)) !important;
    max-width: var(--sle-wrap) !important;
    margin-inline: auto !important;
}
.sle-section { padding: 80px 0; }
.sle-section:nth-of-type(even) { position: relative; }
.sle-soft { background: var(--sle-soft); }
.sle-ink { background: var(--sle-navy); color: rgba(255,255,255,.82); }
.sle-grid { display: grid !important; gap: 28px; align-items: stretch; }
.sle-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sle-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sle-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sle-grid-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
.sle-card {
    display: flex !important;
    min-width: 0;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 28px;
    border: 1px solid var(--sle-line);
    border-radius: var(--sle-radius);
    background: var(--sle-white);
    box-shadow: 0 12px 35px rgba(7,31,61,.07);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.sle-card:hover { transform: translateY(-5px); border-color: #b9d7e7; box-shadow: 0 22px 48px rgba(7,31,61,.13); }
.sle-card p { color: var(--sle-muted); }
.sle-eyebrow {
    margin: 0 0 12px !important;
    color: var(--sle-blue);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.sle-eyebrow-light { color: #96dcff !important; }
.sle-number {
    display: inline-flex;
    width: max-content;
    margin-bottom: 20px;
    color: var(--sle-blue);
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .08em;
}
.sle-section-heading {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 28px;
    margin-bottom: 42px;
}
.sle-section-heading > .e-con { max-width: 830px; }

/* Buttons and links */
.sle-button .elementor-button,
.sle-form-submit,
.sle-call-panel .elementor-button {
    min-height: 50px;
    padding: 14px 22px;
    border: 1px solid transparent;
    border-radius: 10px;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}
.sle-button .elementor-button:hover,
.sle-form-submit:hover,
.sle-call-panel .elementor-button:hover { transform: translateY(-2px); }
.sle-button-red .elementor-button, .sle-form-submit { background: var(--sle-red); color: var(--sle-white); }
.sle-button-red .elementor-button:hover, .sle-form-submit:hover { background: var(--sle-red-dark); }
.sle-button-navy .elementor-button { background: var(--sle-navy); color: var(--sle-white); }
.sle-button-white .elementor-button { background: var(--sle-white); color: var(--sle-navy); }
.sle-button-outline-light .elementor-button { border-color: rgba(255,255,255,.65); background: transparent; color: var(--sle-white); }
.sle-button-wide, .sle-button-wide .elementor-button { width: 100%; }
.sle-text-link { margin-top: auto; }
.sle-text-link .elementor-button {
    padding: 0;
    background: transparent;
    color: var(--sle-blue);
    font-weight: 800;
    text-align: left;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 5px;
}
.sle-button-row { display: flex !important; flex-flow: row wrap !important; gap: 12px; }

/* Header */
.sle-topbar { padding: 8px 0; background: var(--sle-navy); color: var(--sle-white); }
.sle-topbar-inner { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 20px; }
.sle-topbar p { margin: 0; font-size: .82rem; font-weight: 700; letter-spacing: .03em; }
.sle-topbar-call .elementor-button { padding: 0; background: transparent; color: var(--sle-white); font-size: .88rem; font-weight: 800; }
.sle-site-header {
    position: sticky !important;
    top: 0;
    z-index: 1000;
    padding: 15px 0;
    border-bottom: 1px solid rgba(7,31,61,.09);
    background: #fff;
    box-shadow: 0 8px 28px rgba(7,31,61,.06);
}
.admin-bar .sle-site-header { top: 32px; }
.sle-header-inner { display: grid !important; grid-template-columns: 210px minmax(0, 1fr) auto; align-items: center !important; gap: 18px; }
.sle-header-logo img { display: block; width: 210px; height: 68px; object-fit: contain; object-position: left center; }
.sle-header-nav { min-width: 0; }
.sle-nav-shell { position: relative; }
.sle-menu-toggle { display: none; width: 48px; height: 48px; padding: 11px; border: 1px solid var(--sle-line); border-radius: 10px; background: var(--sle-white); cursor: pointer; box-shadow: 0 7px 18px rgba(7,31,61,.08); }
.sle-menu-toggle span:not(.screen-reader-text) { display: block; width: 24px; height: 2px; margin: 5px auto; background: var(--sle-navy); transition: transform .2s ease, opacity .2s ease; }
.sle-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.sle-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.sle-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.sle-nav-list { display: flex; justify-content: center; gap: 4px; margin: 0; padding: 0; list-style: none; }
.sle-nav-list > li { position: relative; }
.sle-nav-list a { display: block; padding: 12px 9px; border-radius: 8px; color: var(--sle-navy); font-size: .875rem; font-weight: 750; text-decoration: none; }
.sle-nav-list a:hover, .sle-nav-list .current-menu-item > a { background: var(--sle-soft); color: var(--sle-blue); }
.sle-nav-list .menu-item-has-children > a::after { content: "⌄"; margin-left: 7px; }
.sle-nav-list .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    width: 285px;
    margin: 0;
    padding: 10px;
    border: 1px solid var(--sle-line);
    border-radius: 14px;
    background: var(--sle-white);
    box-shadow: var(--sle-shadow);
    list-style: none;
    z-index: 120;
}
.sle-nav-list li:hover > .sub-menu, .sle-nav-list li:focus-within > .sub-menu { display: block; }
.sle-header-cta { justify-self: end; }

/* Hero */
.sle-hero {
    position: relative;
    overflow: hidden;
    padding: 78px 0 86px;
    background:
        radial-gradient(circle at 80% 16%, rgba(20,141,212,.18), transparent 34%),
        linear-gradient(135deg, #071d39 0%, #073d70 58%, #07598e 100%);
    color: rgba(255,255,255,.88);
}
.sle-hero::before,
.sle-hero::after {
    position: absolute;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}
.sle-hero::before { top: -190px; right: -110px; width: 520px; height: 520px; }
.sle-hero::after { right: 20%; bottom: -260px; width: 460px; height: 460px; }
.sle-hero > .sle-wrap,
.sle-hero > .e-con-inner > .sle-wrap { position: relative; z-index: 1; }
.sle-hero-breadcrumb { margin-bottom: 28px; }
body.sle-managed-site.home .sle-hero-breadcrumb { display: none !important; margin: 0 !important; }
.sle-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; color: rgba(255,255,255,.68); font-size: .86rem; }
.sle-breadcrumb a { color: white; font-weight: 750; text-underline-offset: 4px; }
.sle-hero-grid { display: grid !important; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 48px; align-items: start !important; }
.sle-hero-grid-single { grid-template-columns: minmax(0, 900px); }
.sle-hero-copy { display: flex !important; flex-direction: column !important; align-items: flex-start !important; padding-top: 18px; }
.sle-hero-lead { max-width: 720px; margin: 24px 0 30px !important; color: rgba(255,255,255,.84); font-size: clamp(1.08rem, 1.4vw, 1.3rem); }
.sle-trust-list { display: flex; flex-wrap: wrap; gap: 9px 20px; margin: 30px 0 0; padding: 0; list-style: none; }
.sle-trust-list li { position: relative; padding-left: 16px; font-size: .9rem; font-weight: 750; }
.sle-trust-list li::before { position: absolute; top: .58em; left: 0; width: 6px; height: 6px; border-radius: 50%; background: #a5e2ff; content: ""; }
.sle-hero-media { display: flex !important; min-width: 0; flex-direction: column !important; gap: 14px; }
.sle-hero-image .elementor-widget-container {
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 28px;
    background: rgba(255,255,255,.08);
    box-shadow: 0 28px 70px rgba(0,0,0,.24);
}
.sle-hero-image img { display: block; width: 100%; height: auto; max-height: 640px; object-fit: contain; object-position: center; }
.sle-photo-caption { margin: 0 !important; padding: 12px 4px 3px; color: rgba(255,255,255,.76); font-size: .9rem; }
.sle-hero-form { margin-top: 8px; padding: 30px; border-radius: var(--sle-radius); background: var(--sle-white); color: var(--sle-ink); box-shadow: var(--sle-shadow); }
.sle-hero-form h2 { font-size: 1.65rem !important; }

/* Fact bar and cards */
.sle-fact-bar { padding: 30px 0; border-bottom: 1px solid var(--sle-line); background: var(--sle-white); }
.sle-fact { padding: 5px 22px; border-left: 3px solid var(--sle-red); }
.sle-fact h3 { margin-bottom: 7px; font-size: 1rem !important; letter-spacing: -.01em !important; }
.sle-fact p { margin: 0; color: var(--sle-muted); font-size: .88rem; }
.sle-card.sle-service-card { overflow: hidden; padding: 0; }
.sle-service-card > .elementor-widget:not(.sle-card-image),
.sle-service-card > .e-con-inner > .elementor-widget:not(.sle-card-image) { margin-inline: 26px; }
.sle-service-card > .elementor-widget:last-child,
.sle-service-card > .e-con-inner > .elementor-widget:last-child { margin-bottom: 28px; }
.sle-card-image { margin-bottom: 24px; background: #eaf0f4; }
.sle-card-image img { display: block; width: 100%; height: 260px; padding: 8px; object-fit: contain; object-position: center; }
.sle-service-card h3 { min-height: 2.36em; }
.sle-service-card p { margin-top: 12px; }
.sle-symptom-card { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.07); box-shadow: none; }
.sle-symptom-card p { color: rgba(255,255,255,.75); }
.sle-symptom-card .sle-text-link .elementor-button { color: #8edfff; }
.sle-process-card { padding: 25px; }
.sle-grid-5 .sle-process-card h3 { font-size: 1.08rem !important; }
.sle-grid-5 .sle-process-card p { font-size: .94rem; }
.sle-compare-card:nth-child(2) { border-color: #86cfe9; background: #edf9fd; }
.sle-diagnostic { align-items: start !important; }
.sle-diagnostic-card { background: var(--sle-navy); color: rgba(255,255,255,.84); }
.sle-signal-list, .sle-check-list, .sle-safe-list, .sle-city-list { margin: 22px 0 0; padding: 0; list-style: none; }
.sle-signal-list li, .sle-check-list li { position: relative; margin: 0 0 14px; padding-left: 28px; }
.sle-signal-list li::before, .sle-check-list li::before { position: absolute; left: 0; color: var(--sle-red); -webkit-text-fill-color: var(--sle-red); font-weight: 900; content: "✓"; }
.sle-content-pairs { display: flex !important; flex-direction: column !important; gap: 24px; }
.sle-content-pair { display: grid !important; grid-template-columns: 72px minmax(0, 1fr); gap: 24px; padding: 34px 0; border-bottom: 1px solid var(--sle-line); }
.sle-content-pair:last-child { border-bottom: 0; }
.sle-answer-section .sle-wrap { max-width: 900px !important; }
.sle-answer-lead { font-size: clamp(1.25rem, 2vw, 1.65rem); line-height: 1.48; }
.sle-caution { padding: 20px 22px; border-left: 4px solid var(--sle-red); border-radius: 0 12px 12px 0; background: #fff3f1; }
.sle-safe-list { counter-reset: safe; }
.sle-safe-list li { position: relative; margin-bottom: 18px; padding-left: 48px; }
.sle-safe-list li::before { position: absolute; left: 0; display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: var(--sle-red); color: white; -webkit-text-fill-color: white; font-weight: 800; counter-increment: safe; content: counter(safe); }

/* Media and proof */
.sle-proof { align-items: center !important; }
.sle-hero-image .elementor-widget-container,
.sle-proof-image .elementor-widget-container { display: grid; place-items: center; }
.sle-hero-image img,
.sle-proof-image img { margin-inline: auto; }
.sle-proof-image img { display: block; width: 100%; max-height: 680px; object-fit: contain; border-radius: var(--sle-radius); background: var(--sle-soft); }
.sle-proof-copy { padding: 24px 0 24px 28px; }
.sle-offer-card { display: grid !important; grid-template-columns: 190px minmax(0, 1fr) auto; align-items: center !important; gap: 32px; padding: 36px; border: 1px solid #bce0ed; border-radius: var(--sle-radius); background: #eefaff; }
.sle-offer-price { align-items: center !important; justify-content: center !important; min-height: 140px; padding: 22px; border-radius: 18px; background: var(--sle-navy); color: white; text-align: center; }
.sle-local-intro { align-items: start !important; }
.sle-city-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
.sle-city-list li { padding: 10px 12px; border-radius: 8px; background: var(--sle-soft); font-weight: 700; }
.sle-review-card blockquote { margin: 4px 0 20px; color: var(--sle-ink); font-size: 1.03rem; }
.sle-stars { color: #f7a51b !important; letter-spacing: .08em; }
.sle-review-note { margin-top: 22px; color: var(--sle-muted); font-size: .9rem; }
.sle-faq-list { display: flex !important; flex-direction: column !important; gap: 14px; }
.sle-faq-card { padding: 24px 28px; box-shadow: none; }
.sle-faq-card p { margin: 12px 0 0; }
.sle-simple-cta { align-items: center !important; padding: 48px; text-align: center; }

/* Forms */
.sle-request-section { padding: 80px 0; background: linear-gradient(135deg, #061b35, #064f87); color: rgba(255,255,255,.84); }
#request-service { scroll-margin-top: 110px; }
.sle-request-grid { align-items: start !important; gap: 58px; }
.sle-call-panel .elementor-button { display: block; width: 100%; margin-top: 22px; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.1); color: var(--sle-white); font-size: 1.35rem; }
.sle-request-card { padding: 34px; border-radius: var(--sle-radius); background: var(--sle-white); box-shadow: var(--sle-shadow); }
.sle-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.sle-lead-form label { display: flex; min-width: 0; flex-direction: column; gap: 7px; color: var(--sle-navy); font-size: .88rem; font-weight: 800; }
.sle-lead-form input, .sle-lead-form select, .sle-lead-form textarea {
    width: 100%;
    min-height: 50px;
    padding: 12px 14px;
    border: 1px solid #bdcbd6;
    border-radius: 9px;
    background: white;
    color: var(--sle-ink);
    font: inherit;
}
.sle-lead-form textarea { min-height: 112px; resize: vertical; }
.sle-lead-form input:focus, .sle-lead-form select:focus, .sle-lead-form textarea:focus { outline: 3px solid rgba(7,91,159,.2); border-color: var(--sle-blue); }
.sle-form-wide { grid-column: 1 / -1; }
.sle-form-submit { width: 100%; margin-top: 18px; border: 0; cursor: pointer; }
.sle-form-submit:disabled { cursor: wait; opacity: 1; transform: none; }
.sle-form-consent { margin: 13px 0 0 !important; color: var(--sle-muted); font-size: .75rem; line-height: 1.45; }
.sle-form-alert { margin-bottom: 18px; padding: 14px 16px; border: 1px solid #e3a29c; border-radius: 9px; background: #fff3f1; color: #7b1f18; }
.sle-form-alert a { font-weight: 800; text-underline-offset: 3px; }
.sle-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

/* Coverage and footer */
.sle-coverage-banner { padding: 48px 0; background: linear-gradient(110deg, #07518d, #07598e); color: white; }
.sle-coverage-inner { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center !important; gap: 36px; }
.sle-coverage-banner p { max-width: 900px; margin-bottom: 0; }
.sle-coverage-actions { display: flex !important; flex-flow: row wrap !important; justify-content: flex-end !important; gap: 10px; }
.sle-footer { padding: 70px 0 26px; background: #04152a; color: rgba(255,255,255,.72); }
.sle-footer-grid { display: grid !important; grid-template-columns: 1.1fr 1fr 1fr 1.1fr; gap: 32px; }
.sle-footer-logo img { width: 230px; max-height: 90px; object-fit: contain; object-position: left center; filter: brightness(1.1); }
.sle-footer-links { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 8px; }
.sle-footer-links .sle-text-link { margin: 0; }
.sle-footer-links .sle-text-link .elementor-button { color: rgba(255,255,255,.74); font-size: .92rem; font-weight: 650; text-decoration: none; }
.sle-footer-phone .elementor-button { padding: 0; background: transparent; color: white; font-size: 1.45rem; font-weight: 800; }
.sle-footer-counties { display: flex !important; flex-flow: row wrap !important; gap: 10px 20px; margin-top: 44px !important; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.12); }
.sle-footer-counties .sle-text-link { margin: 0; }
.sle-footer-counties .sle-text-link .elementor-button { color: rgba(255,255,255,.66); font-size: .84rem; text-decoration: none; }
.sle-footer-bottom { display: flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; gap: 20px; margin-top: 28px !important; font-size: .82rem; }
.sle-footer-bottom p { margin: 0; }
.sle-footer-legal { display: flex !important; flex-direction: row !important; gap: 18px; }
.sle-footer-legal .sle-text-link { margin: 0; }
.sle-footer-legal .sle-text-link .elementor-button { color: rgba(255,255,255,.7); font-size: .82rem; }
.sle-mobile-bar { display: none; }

@media (min-width: 1200px) {
    .sle-section-heading { padding-left: 22px; border-left: 5px solid var(--sle-red); }
    .sle-hero-grid { min-height: 570px; align-items: start !important; }
    .sle-hero-copy { padding: 40px 0; }
    .sle-hero-image img { height: 560px; max-height: none; object-fit: cover; }
    .sle-service-card .sle-card-image img { height: 290px; object-fit: cover; }
    .sle-fact-bar .sle-grid { align-items: center; }
    .sle-proof { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 70px; }

}

/* Accessibility */
.sle-skip-link { position: fixed; top: 8px; left: 8px; z-index: 10000; padding: 12px 16px; transform: translateY(-150%); border-radius: 8px; background: white; color: var(--sle-navy); font-weight: 800; }
.sle-skip-link:focus { transform: none; }
.screen-reader-text { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

@media (max-width: 1199px) {
    :root { --sle-wrap: 1080px; }
    .sle-grid-5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .sle-footer-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 1024px) {
    .sle-section { padding: 70px 0; }
    .sle-hero { padding: 60px 0 72px; }
    .sle-hero-grid { gap: 30px; }
    .sle-hero-copy { padding-top: 0; }
    .sle-hero-media { width: 100%; max-width: 760px; margin-inline: auto; }
    .sle-hero-image img { height: 380px; max-height: 480px; object-fit: cover; }
    .sle-request-grid { gap: 30px; }
    .sle-request-copy, .sle-request-card { min-width: 0; }
    .sle-grid-4 { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .sle-grid-3 { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .sle-offer-card { grid-template-columns: 170px minmax(0,1fr); }
    .sle-offer-card > :last-child,
    .sle-offer-card > .e-con-inner > :last-child { grid-column: 1 / -1; }
    .sle-coverage-inner { grid-template-columns: 1fr; }
    .sle-coverage-actions { justify-content: flex-start !important; }
    .sle-card:hover { transform: none; }
}

@media (max-width: 782px) {
    .admin-bar .sle-site-header { top: 46px; }
}

@media (max-width: 767px) {
    body.sle-managed-site { padding-bottom: calc(68px + env(safe-area-inset-bottom)); font-size: 16px; }
    body.sle-managed-site h1 { font-size: clamp(2.5rem, 12vw, 3.55rem); }
    body.sle-managed-site h2 { font-size: clamp(2rem, 8vw, 2.7rem); }
    .sle-wrap { width: min(100% - 30px, var(--sle-wrap)) !important; }
    .sle-section { padding: 54px 0; }
    .sle-topbar { display: none; }
    .sle-site-header { padding: 10px 0; }
    .sle-header-inner { grid-template-columns: minmax(170px, 1fr) auto; gap: 12px; }
    .sle-header-logo img { width: 205px; height: 60px; }
    .sle-header-cta { display: none; }
    .sle-menu-toggle { width: 46px; height: 46px; }
    .sle-nav {
        position: fixed;
        top: 78px;
        right: 12px;
        left: 12px;
        width: auto;
        max-height: calc(100dvh - 160px);
        padding: 10px;
        border-radius: 16px;
    }
    .admin-bar .sle-nav { top: 124px; }
    .sle-nav-list a { padding: 14px; font-size: 1rem; }
    body.sle-menu-open { overflow: hidden; }
    .sle-hero { padding: 46px 0 56px; }
    .sle-hero-grid, .sle-request-grid { grid-template-columns: 1fr; gap: 34px; }
    .sle-hero-image img { height: min(92vw, 430px); max-height: 430px; object-fit: cover; }
    .sle-hero-lead { margin: 18px 0 24px !important; }
    .sle-grid-2, .sle-grid-3, .sle-grid-4, .sle-grid-5 { grid-template-columns: 1fr; }
    .sle-section-heading { align-items: flex-start !important; flex-direction: column !important; margin-bottom: 30px; }
    .sle-card { padding: 24px; }
    .sle-card-image img { height: 260px; max-height: none; object-fit: contain; }
    .sle-service-card h3 { min-height: 0; }
    .sle-content-pair { grid-template-columns: 1fr; gap: 4px; }
    .sle-compare-card:nth-child(2) { transform: none; }
    .sle-offer-card { grid-template-columns: 1fr; padding: 25px; }
    .sle-offer-card > :last-child,
    .sle-offer-card > .e-con-inner > :last-child { grid-column: auto; }
    .sle-proof-copy { padding: 12px 0 0; }
    .sle-request-section { padding: 56px 0; }
    .sle-request-grid { gap: 34px; }
    .sle-request-card, .sle-hero-form { padding: 23px; }
    .sle-form-grid { grid-template-columns: 1fr; }
    .sle-form-wide { grid-column: auto; }
    .sle-coverage-banner { padding: 40px 0; }
    .sle-coverage-actions, .sle-button-row { width: 100%; }
    .sle-coverage-actions .elementor-widget-button, .sle-button-row .elementor-widget-button { width: 100%; }
    .sle-coverage-actions .elementor-button, .sle-button-row .elementor-button { width: 100%; }
    .sle-footer { padding-top: 52px; }
    .sle-footer-grid { grid-template-columns: 1fr; gap: 34px; }
    .sle-footer-bottom { align-items: flex-start !important; flex-direction: column !important; }
    .sle-city-list { grid-template-columns: 1fr; }
    .sle-mobile-bar {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 120;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding: 9px 10px calc(9px + env(safe-area-inset-bottom));
        background: white;
        box-shadow: 0 -10px 30px rgba(7,31,61,.16);
    }
    .sle-mobile-bar a { display: grid; min-height: 48px; place-items: center; border-radius: 8px; background: var(--sle-navy); color: white; font-weight: 800; text-decoration: none; }
    .sle-mobile-bar a:last-child { background: var(--sle-red); }
}

@media (max-width: 430px) {
    .sle-wrap { width: calc(100% - 26px) !important; }
    .sle-header-logo img { width: 178px; }
    .sle-nav { top: 72px; right: 8px; left: 8px; max-height: calc(100dvh - 148px); }
    .admin-bar .sle-nav { top: 118px; }
    .sle-hero-form, .sle-request-card { padding: 20px; }
    .sle-card { padding: 21px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* Shared surfaces: nested light cards reset dark-section text colors. */
body.sle-managed-site {
    --sle-heading: #071f3d;
    --sle-text: #34465a;
    --sle-link: #075b9f;
    --sle-accent: #075b9f;
    --sle-mobile-bar-height: calc(78px + env(safe-area-inset-bottom, 0px));
}
body.sle-managed-site :where(.sle-section, .sle-fact-bar, .sle-site-header, .sle-card, .sle-request-card, .sle-hero-form, .sle-offer-card, .sle-caution) {
    --sle-heading: #071f3d;
    --sle-text: #34465a;
    --sle-link: #075b9f;
    --sle-accent: #075b9f;
    color: var(--sle-text);
}
body.sle-managed-site .sle-city-list li {
    --sle-heading: #071f3d;
    --sle-text: #34465a;
    --sle-link: #075b9f;
    --sle-accent: #075b9f;
    color: var(--sle-text);
}
body.sle-managed-site :where(.sle-hero, .sle-ink, .sle-request-section, .sle-coverage-banner, .sle-footer, .sle-topbar, .sle-diagnostic-card, .sle-symptom-card, .sle-offer-price) {
    --sle-heading: #fff;
    --sle-text: #e2ebf4;
    --sle-link: #a5e2ff;
    --sle-accent: #a5e2ff;
    color: var(--sle-text);
}
/* Elementor's lazy-background rule clears background-image with !important. */
body.sle-managed-site .elementor .e-con.e-parent.sle-request-section {
    background-color: #061b35 !important;
    background-image: linear-gradient(135deg, #061b35, #064f87) !important;
}
body.sle-managed-site .sle-request-section .sle-request-copy {
    color: #e2ebf4 !important;
    -webkit-text-fill-color: #e2ebf4 !important;
}
body.sle-managed-site .sle-request-section .sle-request-copy :where(h1,h2,h3,h4,h5,h6,.elementor-heading-title) {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
body.sle-managed-site .sle-request-section .sle-request-copy :where(.elementor-widget-text-editor,p,li,blockquote,small) {
    color: #e2ebf4 !important;
    -webkit-text-fill-color: #e2ebf4 !important;
}
body.sle-managed-site .sle-request-section .sle-request-copy .sle-eyebrow {
    color: #a5e2ff !important;
    -webkit-text-fill-color: #a5e2ff !important;
}
body.sle-managed-site .elementor .e-con.e-parent.sle-request-section .sle-request-card {
    background-color: #fff !important;
    background-image: none !important;
}
body.sle-managed-site :where(.sle-main, .elementor) :where(h1,h2,h3,h4,h5,h6,.elementor-heading-title) {
    color: var(--sle-heading) !important;
    -webkit-text-fill-color: var(--sle-heading) !important;
    font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif;
    overflow-wrap: anywhere;
}
body.sle-managed-site :where(.sle-main, .elementor) :where(.elementor-widget-text-editor, p, li, blockquote, small) {
    color: var(--sle-text) !important;
    -webkit-text-fill-color: var(--sle-text) !important;
}
body.sle-managed-site :where(.sle-main, .elementor) a:not(.elementor-button) {
    color: var(--sle-link) !important;
    -webkit-text-fill-color: var(--sle-link) !important;
}
body.sle-managed-site .sle-eyebrow {
    color: var(--sle-accent) !important;
    -webkit-text-fill-color: var(--sle-accent) !important;
}
body.sle-managed-site :where(.sle-hero-form,.sle-request-card) :where(.frm_form_title,.frm_description,.frm_primary_label,.frm_html_container) {
    color: #071f3d !important;
    -webkit-text-fill-color: #071f3d !important;
}
body.sle-managed-site :where(.sle-form-consent,.sle-photo-caption,.sle-review-note) {
    color: var(--sle-text) !important;
    -webkit-text-fill-color: var(--sle-text) !important;
}
body.sle-managed-site .sle-form-alert {
    --sle-text: #7b1f18;
    color: #7b1f18 !important;
    -webkit-text-fill-color: #7b1f18 !important;
}
body.sle-managed-site .sle-footer-brand h2 { font-size: 1.5rem; line-height: 1.25; }
body.sle-managed-site .sle-footer h3 { font-size: 1.08rem; line-height: 1.4; }
body.sle-managed-site .sle-card h3 { line-height: 1.3; }
body.sle-managed-site .sle-card p { line-height: 1.6; }
body.sle-managed-site .sle-card .sle-text-link { margin-top: auto !important; padding-top: 12px; }

/* Elementor boxed and full-width containers use the same authored layout.
   This supports already saved 2.0/2.1 pages without replacing editor data. */
body.sle-managed-site .elementor .e-con[class*="sle-"] {
    min-width: 0;
    --container-max-width: 100%;
    --widgets-spacing: 0px;
    --widgets-spacing-row: 0px;
    --widgets-spacing-column: 0px;
}
body.sle-managed-site .elementor .e-con[class*="sle-"] > .e-con-inner { display: contents !important; }
body.sle-managed-site .elementor .elementor-widget { min-width: 0; max-width: 100%; margin-bottom: 0; }
body.sle-managed-site :is(.sle-hero-copy,.sle-proof-copy,.sle-request-copy,.sle-coverage-copy,.sle-footer-brand,.sle-footer-contact,.sle-card) { gap: 16px; }
body.sle-managed-site .sle-section-heading .e-con { gap: 0; }
body.sle-managed-site .sle-section-heading { width: 100%; }
body.sle-managed-site .sle-main > .elementor { width: 100%; }
body.sle-managed-site .sle-empty { display: none !important; }

/* Buttons retain explicit colors in theme, Elementor, hover and visited states. */
body.sle-managed-site :is(.sle-button,.sle-formidable-form) { --sle-button-bg: #c93427; --sle-button-hover: #a5251c; --sle-button-text: #fff; --sle-button-border: transparent; }
body.sle-managed-site .sle-button-navy { --sle-button-bg: #071f3d; --sle-button-hover: #0b3d6b; }
body.sle-managed-site .sle-button-white { --sle-button-bg: #fff; --sle-button-hover: #eaf3fa; --sle-button-text: #071f3d; }
body.sle-managed-site .sle-button-outline-light { --sle-button-bg: transparent; --sle-button-hover: #153e65; --sle-button-text: #fff; --sle-button-border: #b8d0e5; }
body.sle-managed-site :is(.sle-button .elementor-button,.sle-formidable-form .frm_button_submit) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    min-height: 50px;
    padding: 14px 20px;
    border: 1px solid var(--sle-button-border) !important;
    border-radius: 10px;
    background: var(--sle-button-bg) !important;
    color: var(--sle-button-text) !important;
    -webkit-text-fill-color: var(--sle-button-text) !important;
    font: 700 1rem/1.35 Inter, "Segoe UI", Roboto, Arial, sans-serif;
    text-align: center;
}
body.sle-managed-site :is(.sle-button .elementor-button,.sle-formidable-form .frm_button_submit):is(:hover,:focus-visible) { background: var(--sle-button-hover) !important; color: var(--sle-button-text) !important; -webkit-text-fill-color: var(--sle-button-text) !important; }
body.sle-managed-site :is(.elementor-button,.sle-form-submit,.sle-menu-toggle,.sle-mobile-bar a,.sle-submenu-toggle,.sle-nav-list a,.sle-formidable-form .frm_button_submit),
body.sle-managed-site :is(.elementor-button,.sle-mobile-bar a) * {
    text-decoration: none !important;
    text-shadow: none !important;
    background-image: none !important;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    letter-spacing: normal;
}
body.sle-managed-site .elementor-button-content-wrapper { align-items: center; justify-content: center; }
body.sle-managed-site .elementor-button-text { color: inherit !important; -webkit-text-fill-color: inherit !important; line-height: inherit; }
body.sle-managed-site :is(.elementor-button,.sle-form-submit,.sle-mobile-bar a)::before,
body.sle-managed-site :is(.elementor-button,.sle-form-submit,.sle-mobile-bar a)::after { display: none !important; }
body.sle-managed-site :is(.sle-form-submit,.sle-form-submit:visited) { background: #c93427 !important; color: #fff !important; -webkit-text-fill-color: #fff !important; }
body.sle-managed-site .sle-form-submit:is(:hover,:focus-visible) { background: #a5251c !important; color: #fff !important; -webkit-text-fill-color: #fff !important; }
body.sle-managed-site .sle-text-link .elementor-button { background: transparent !important; color: var(--sle-link) !important; -webkit-text-fill-color: var(--sle-link) !important; text-align: left; line-height: 1.5; padding: 0; }
body.sle-managed-site .sle-text-link .elementor-button:hover { color: var(--sle-heading) !important; -webkit-text-fill-color: var(--sle-heading) !important; text-decoration: underline !important; text-underline-offset: 4px; }
body.sle-managed-site :is(.sle-topbar-call,.sle-footer-phone,.sle-call-panel) .elementor-button { color: #fff !important; -webkit-text-fill-color: #fff !important; background: transparent !important; }
body.sle-managed-site .sle-call-panel .elementor-button { border: 1px solid #7296b7; background: #163f63 !important; }
body.sle-managed-site :is(a,button,input,select,textarea):focus-visible { outline: 3px solid #167abb; outline-offset: 4px; }
body.sle-managed-site :is(.sle-hero,.sle-ink,.sle-footer,.sle-request-section) :is(a,button):focus-visible { outline-color: #9fe1ff; }
body.sle-managed-site :is(.sle-request-card,.sle-hero-form) :is(a,button,input,select,textarea):focus-visible { outline-color: #167abb; }
body.sle-managed-site .sle-lead-form label,
body.sle-managed-site .sle-formidable-form .frm_primary_label {
    display: block;
    color: #071f3d !important;
    -webkit-text-fill-color: #071f3d !important;
    line-height: 1.5;
}
body.sle-managed-site .sle-lead-form label input,
body.sle-managed-site .sle-lead-form label select,
body.sle-managed-site .sle-lead-form label textarea { display: block; margin-top: 7px; font-size: 16px; }
body.sle-managed-site .sle-lead-form :is(input,select,textarea),
body.sle-managed-site .sle-formidable-form :is(input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]),select,textarea) {
    background-color: #fff !important;
    color: #102033 !important;
    -webkit-text-fill-color: #102033 !important;
}
body.sle-managed-site .sle-lead-form input::placeholder,
body.sle-managed-site .sle-lead-form textarea::placeholder,
body.sle-managed-site .sle-formidable-form input::placeholder,
body.sle-managed-site .sle-formidable-form textarea::placeholder {
    color: #637286 !important;
    -webkit-text-fill-color: #637286 !important;
    opacity: 1;
}

/* Keep the complete header layer above all page sections. Browsers without
   :has() retain the direct sticky-header rule defined above. */
body.sle-managed-site .sle-site-header { overflow: visible !important; transform: none !important; }
@supports selector(body:has(.sle-site-header)) {
    body.sle-managed-site > .elementor:has(.sle-site-header) { position: sticky; top: 0; z-index: 1000; isolation: isolate; }
    body.sle-managed-site.admin-bar > .elementor:has(.sle-site-header) { top: 32px; }
    body.sle-managed-site .sle-site-header { position: relative !important; top: 0 !important; }
}
body.sle-managed-site :is(.sle-header-inner,.sle-header-nav,.sle-header-nav .elementor-widget-container,.sle-header-nav .elementor-shortcode,.sle-nav-shell) { overflow: visible !important; transform: none !important; }

body.sle-managed-site .sle-header-inner { gap: 18px; }
body.sle-managed-site .sle-header-logo { width: 210px; }
body.sle-managed-site .sle-header-nav { width: 100%; justify-self: end; z-index: 2; }
body.sle-managed-site .sle-header-cta { width: auto; max-width: 205px; }
body.sle-managed-site .sle-header-cta .elementor-button { font-size: .9rem; padding: 13px 16px; }
body.sle-managed-site .sle-nav-list { width: 100%; align-items: center; padding: 0; margin: 0; }
body.sle-managed-site .sle-nav-list a { color: #071f3d !important; line-height: 1.4; }
body.sle-managed-site .sle-nav-list a { -webkit-text-fill-color: #071f3d !important; }
body.sle-managed-site .sle-nav-list a:is(:hover,:focus-visible) { background: #eaf3fa !important; color: #075b9f !important; }
body.sle-managed-site .sle-nav-list a:is(:hover,:focus-visible) { -webkit-text-fill-color: #075b9f !important; }
body.sle-managed-site .sle-nav-list .sub-menu { z-index: 1010; max-height: calc(100dvh - 180px); overflow: auto; }
body.sle-managed-site .sle-menu-toggle { position: relative; z-index: 1020; color: #071f3d !important; -webkit-text-fill-color: #071f3d !important; background: #fff !important; }
body.sle-managed-site .sle-menu-toggle::before,
body.sle-managed-site .sle-menu-toggle::after { display: none; }
body.sle-managed-site .sle-nav-list .ast-header-navigation-arrow { display: none !important; }
body.sle-managed-site .sle-nav-list .menu-item-has-children > a::after { content: none; }
body.sle-managed-site .sle-nav-list .menu-item-has-children { padding-right: 25px; }
body.sle-managed-site .sle-submenu-toggle { position: absolute; right: 0; top: 8px; width: 28px; height: 32px; padding: 0; border: 0; border-radius: 6px; color: #071f3d !important; -webkit-text-fill-color: #071f3d !important; background: transparent !important; cursor: pointer; }
body.sle-managed-site .sle-nav-list li.sle-submenu-ready > .sub-menu { display: none; }
body.sle-managed-site .sle-nav-list li.sle-submenu-ready.is-submenu-open > .sub-menu { display: block; }
body.sle-managed-site .sle-nav-list > li:last-child .sub-menu { left: auto; right: 0; }
@media (max-width: 1100px) {
    body.sle-managed-site .sle-header-inner { grid-template-columns: minmax(150px,1fr) 48px auto; gap: 16px; }
    body.sle-managed-site .sle-menu-toggle { display: block; }
    body.sle-managed-site .sle-header-nav, body.sle-managed-site .sle-nav-shell { width: 48px !important; max-width: 48px !important; }
    body.sle-managed-site .sle-nav {
        position: fixed; top: var(--sle-nav-top, 104px); right: 16px; left: auto;
        display: none; width: min(440px, calc(100vw - 32px));
        max-height: calc(100dvh - var(--sle-nav-top, 104px) - 20px);
        overflow-y: auto; overscroll-behavior: contain; padding: 12px;
        border: 1px solid #cbd9e5; border-radius: 14px; background: #fff; box-shadow: 0 18px 48px #071f3d33;
        z-index: 1010;
    }
    body.sle-managed-site .sle-nav.is-open { display: block; }
    body.sle-managed-site .sle-nav-list { display: block; }
    body.sle-managed-site .sle-nav-list > li { padding: 0; }
    body.sle-managed-site .sle-nav-list > li + li { border-top: 1px solid #e1e9ef; }
    body.sle-managed-site .sle-nav-list a { padding: 13px 14px; font-size: 1rem; }
    body.sle-managed-site .sle-nav-list li.sle-submenu-ready > .sub-menu { display: none; }
    body.sle-managed-site .sle-nav-list li.sle-submenu-ready.is-submenu-open > .sub-menu { display: block; }
    body.sle-managed-site .sle-nav-list .sub-menu {
        position: static; display: block; width: auto; max-height: none; overflow: visible;
        margin: 0 4px 10px 12px; padding: 0 0 0 10px; border: 0; border-left: 3px solid #c5dfef;
        border-radius: 0; background: #f3f8fb; box-shadow: none;
    }
    body.sle-managed-site .sle-nav-list .sub-menu a { padding: 10px 12px; font-size: .92rem; }
    body.sle-managed-site .sle-submenu-toggle { display: block; top: 7px; width: 36px; height: 36px; }
    body.sle-managed-site .sle-nav-list .menu-item-has-children > a { padding-right: 42px; }
}
/* Longer saved navigation labels switch based on available space. */

    body.sle-managed-site .sle-site-header.sle-header-compact .sle-header-inner { grid-template-columns: minmax(150px,1fr) 48px auto; gap: 16px; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-menu-toggle { display: block; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-header-nav, body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-shell { width: 48px !important; max-width: 48px !important; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav {
        position: fixed; top: var(--sle-nav-top, 104px); right: 16px; left: auto;
        display: none; width: min(440px, calc(100vw - 32px));
        max-height: calc(100dvh - var(--sle-nav-top, 104px) - 20px);
        overflow-y: auto; overscroll-behavior: contain; padding: 12px;
        border: 1px solid #cbd9e5; border-radius: 14px; background: #fff; box-shadow: 0 18px 48px #071f3d33;
        z-index: 1010;
    }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav.is-open { display: block; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list { display: block; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list > li { padding: 0; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list > li + li { border-top: 1px solid #e1e9ef; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list a { padding: 13px 14px; font-size: 1rem; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list li.sle-submenu-ready > .sub-menu { display: none; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list li.sle-submenu-ready.is-submenu-open > .sub-menu { display: block; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list .sub-menu {
        position: static; display: block; width: auto; max-height: none; overflow: visible;
        margin: 0 4px 10px 12px; padding: 0 0 0 10px; border: 0; border-left: 3px solid #c5dfef;
        border-radius: 0; background: #f3f8fb; box-shadow: none;
    }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list .sub-menu a { padding: 10px 12px; font-size: .92rem; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-submenu-toggle { display: block; top: 7px; width: 36px; height: 36px; }
    body.sle-managed-site .sle-site-header.sle-header-compact .sle-nav-list .menu-item-has-children > a { padding-right: 42px; }

@media (max-width: 767px) {
    body.sle-managed-site { padding-bottom: var(--sle-mobile-bar-height, calc(78px + env(safe-area-inset-bottom, 0px))); }
    body.sle-managed-site .sle-header-inner { grid-template-columns: minmax(0,1fr) 48px; }
    body.sle-managed-site .sle-header-logo, body.sle-managed-site .sle-header-logo img { width: 190px; max-width: 100%; height: 60px; }
    body.sle-managed-site .sle-header-cta { display: none; }
    body.sle-managed-site .sle-nav { right: 10px; left: 10px; width: auto; max-height: calc(100dvh - var(--sle-nav-top, 82px) - 16px); }
    body.sle-managed-site .sle-mobile-bar { z-index: 900; }
    body.sle-managed-site .sle-mobile-bar a { color: #fff !important; -webkit-text-fill-color: #fff !important; font-size: .92rem; line-height: 1.35; padding: 8px 10px; }
    body.sle-managed-site .sle-mobile-bar a:first-child { background: #071f3d !important; }
    body.sle-managed-site .sle-mobile-bar a:last-child { background: #c93427 !important; }
    body.sle-managed-site.sle-menu-open .sle-mobile-bar { visibility: hidden; pointer-events: none; }
    body.sle-managed-site .sle-hero h1 { font-size: clamp(2.2rem, 9.5vw, 3rem); }
    body.sle-managed-site .sle-simple-cta { padding: 26px; }
    body.sle-managed-site .sle-grid-5 { grid-template-columns: 1fr; }
    body.sle-managed-site .sle-footer-legal { flex-wrap: wrap !important; }
}
@media (max-width: 782px) {
    body.sle-managed-site.admin-bar > .elementor:has(.sle-site-header) { top: 46px; }
}
@media (max-width: 600px) {
    body.sle-managed-site.admin-bar > .elementor:has(.sle-site-header) { top: 0; }
    body.sle-managed-site.admin-bar .sle-site-header { top: 0 !important; }
}

body.sle-managed-site :is(.sle-diagnostic-card,.sle-symptom-card) {
    border-color: rgba(255,255,255,.3) !important;
}
body.sle-managed-site :is(.sle-diagnostic-card,.sle-symptom-card) :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title) {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
body.sle-managed-site :is(.sle-diagnostic-card,.sle-symptom-card) :is(.elementor-widget-text-editor,p,li,blockquote,small) {
    color: #e2ebf4 !important;
    -webkit-text-fill-color: #e2ebf4 !important;
}
body.sle-managed-site :is(.sle-diagnostic-card,.sle-symptom-card) :is(.sle-eyebrow,.sle-number) {
    color: #a5e2ff !important;
    -webkit-text-fill-color: #a5e2ff !important;
}
body.sle-managed-site :is(.sle-diagnostic-card,.sle-symptom-card) .sle-text-link .elementor-button {
    color: #a5e2ff !important;
    -webkit-text-fill-color: #a5e2ff !important;
}
body.sle-managed-site :is(.sle-diagnostic-card,.sle-symptom-card) .sle-text-link .elementor-button:is(:hover,:focus-visible) {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
body.sle-managed-site :is(.sle-diagnostic-card,.sle-ink,.sle-request-section) li::before { color: #a5e2ff; -webkit-text-fill-color: #a5e2ff; }

body.sle-managed-site .sle-breadcrumb { color: #d9e8f5; -webkit-text-fill-color: #d9e8f5; }
body.sle-managed-site .sle-stars { color: #975600 !important; -webkit-text-fill-color: #975600 !important; }
body.sle-managed-site :is(.sle-footer-logo,.sle-footer-logo .elementor-widget-container,.sle-footer-logo a) {
    width: auto;
    max-width: 100%;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
body.sle-managed-site .sle-footer-logo img {
    display: block;
    width: 200px;
    max-width: 100%;
    height: auto;
    max-height: 72px;
    object-fit: contain;
    object-position: left center;
    filter: brightness(0) invert(1) drop-shadow(0 1px 1px rgba(0,0,0,.18));
}
body.sle-managed-site .sle-footer-links .sle-text-link .elementor-button,
body.sle-managed-site .sle-footer-counties .sle-text-link .elementor-button,
body.sle-managed-site .sle-footer-legal .sle-text-link .elementor-button {
    color: #e2ebf4 !important;
    -webkit-text-fill-color: #e2ebf4 !important;
}
body.sle-managed-site .sle-footer :is(.sle-footer-links,.sle-footer-counties,.sle-footer-legal) .sle-text-link .elementor-button:is(:hover,:focus-visible) {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: underline !important;
}

body.sle-managed-site .sle-section-heading > .e-con,
body.sle-managed-site .sle-section-heading > .e-con-inner > .e-con { width: auto; flex: 1 1 0; min-width: 0; }
body.sle-managed-site .sle-footer-legal { width: auto; flex-shrink: 0; }

body.sle-managed-site .sle-image-permissions-link {
    margin: 0;
    padding: 16px 24px;
    text-align: center;
    background: #071f3d;
    color: #ffffff;
    font-size: 14px;
}
body.sle-managed-site .sle-image-permissions-link a {
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 3px;
}
body.sle-managed-site .sle-image-permissions-link a:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 4px;
}

body.sle-managed-site :is(#request-service,#sle-main) { scroll-margin-top: var(--sle-header-clearance, 154px); }

body.sle-managed-site .sle-submenu-toggle span { display: inline-block; font-size: 1.2rem; line-height: 1; }
body.sle-managed-site .sle-submenu-toggle[aria-expanded="true"] span { transform: rotate(180deg); }

/* The homepage pairs its introduction with the request form above the fold.
   Its proof photo sits beneath the introduction, not ahead of the form. */
@media (min-width: 768px) {
    body.sle-managed-site .sle-hero-grid:has(.sle-hero-form) { row-gap: 18px; min-height: 0; align-items: start !important; }
    body.sle-managed-site .sle-hero-grid:has(.sle-hero-form) .sle-hero-copy { grid-column: 1; grid-row: 1; padding: 0; }
    body.sle-managed-site .sle-hero-media:has(.sle-hero-form) { display: contents !important; }
    body.sle-managed-site .sle-hero-media:has(.sle-hero-form) .sle-hero-image { grid-column: 1; grid-row: 2; }
    body.sle-managed-site .sle-hero-media:has(.sle-hero-form) .sle-hero-image img { height: 240px; max-height: 240px; object-fit: cover; }
    body.sle-managed-site .sle-hero-media:has(.sle-hero-form) > .elementor-widget-text-editor,
    body.sle-managed-site .sle-hero-media:has(.sle-hero-form) > .e-con-inner > .elementor-widget-text-editor { grid-column: 1; grid-row: 3; }
    body.sle-managed-site .sle-hero-form { grid-column: 2; grid-row: 1 / 4; align-self: start; margin-top: 0; }
}
@media (max-width: 767px) {
    body.sle-managed-site .sle-hero-media:has(.sle-hero-form) .sle-hero-form { order: -1; }
}
