
html, body { max-width: 100%; overflow-x: clip; }

img, svg, video, canvas, iframe, embed, object, figure, picture {
    max-width:100%;
}
img, video, canvas { height: auto; }
pre, code, kbd, samp { overflow-x: auto; max-width: 100%; }

picture { display: block; height: 100%; }

h1, h2, h3, h4, h5, h6,
[class*="lockup"], [class*="display"], [class*="headline"], [class*='title'],
[class*='hero'] h1, [class*='hero'] h2 {
    overflow-wrap:break-word;
    word-break:normal;
    hyphens:manual;
}
[class*="lockup"], [class*="lockup"] > * { white-space: normal !important; }

h1, h2, h3 { text-wrap: balance; }
td, th, time, output, data,
[class*='price'], [class*="cost"], [class*="rate"], [class*="amount"],
[class*="figure"], [class*="stat"], [class*="number"], [class*='count'] {
    font-variant-numeric:lining-nums tabular-nums;
}

p, li, dd, dt, blockquote, figcaption, address, a, span, td, th,
div, strong, b, em, i, small, label, output, time, cite, abbr, code, summary,
h1, h2, h3, h4, h5, h6 {
    overflow-wrap:break-word;
}

/* Grid and flex children may shrink below their content so a single wide
    child cannot force the whole track past the viewport. */
[class*='grid'] > *, [class*="row"] > *, [class*="flex"] > *,
[class*='cols'] > *, [class*='columns'] > * { min-width: 0; }

:not(img):not(picture):not(svg):not(video):not(canvas):only-child {
    grid-column:1 / -1;
}

@view-transition { navigation: auto; }
::view-transition-old(root), ::view-transition-new(root) {
    animation-duration:.28s;
}
@media (prefers-reduced-motion: reduce) {
    ::view-transition-group(*),
    ::view-transition-old(*),
    ::view-transition-new(*) { animation: none !important; }
}

.vehi400 {
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    container-type:inline-size;
}
.vehi400 > table { width: 100%; }
@media (max-width: 48rem) {
    .vehi400 > table { font-size: .94em; }
}
.vehi400 > table,
.vehi400 > table > thead, .vehi400 > table > tbody,
.vehi400 > table > tfoot, .vehi400 > table tr,
.vehi400 > table th, .vehi400 > table td { display: revert; }
.vehi400 > table th, .vehi400 > table td {
    inline-size:auto;
    min-inline-size:0;
}


@media (max-width: 30rem) {
    :root {
        --lunu-184:clamp(2.2rem, 9vw, 3rem);
        --lunu-b20:clamp(2rem, 8vw, 2.7rem);
        --lunu-56b:clamp(1.8rem, 7vw, 2.4rem);
        --lunu-130:clamp(1.55rem, 6vw, 2.05rem);
        --lunu-413:clamp(1.35rem, 5vw, 1.8rem);
    }
}
@media (min-width: 30.01rem) and (max-width: 48rem) {
    :root {
        --lunu-184:clamp(2.8rem, 8vw, 4.6rem);
        --lunu-b20:clamp(2.5rem, 7vw, 4rem);
        --lunu-56b:clamp(2.2rem, 6vw, 3.4rem);
    }
}

@media (pointer: coarse) {
    a.btn, button, [role="button"], .btn,
    input[type='submit'], input[type="button"] { min-height: 44px; }
}

a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible,
[tabindex]:focus-visible, [role="button"]:focus-visible {
    outline:2px solid var(--focus-ring, currentColor);
    outline-offset:3px;
}

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type='file']):not([type='color']),
textarea, button, [type='submit'], [type="button"] {
    -webkit-appearance:none;
    appearance:none;
}

@media (pointer: coarse) and (max-width: 767px) {
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type='file']):not([type='color']),
    select, textarea { font-size: max(16px, 1em) !important; }
}

@container (max-width: 26rem) {
    .vehi400.baze782.tohaf9f > table,
    .vehi400.baze782.tohaf9f > table > tbody,
    .vehi400.baze782.tohaf9f > table > tbody > tr,
    .vehi400.baze782.tohaf9f > table > tbody > tr > td,
    .vehi400.baze782.tohaf9f > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .vehi400.baze782.tohaf9f > table > thead { display: none; }
    .vehi400.baze782.tohaf9f > table > tbody > tr {
        margin-block-end:.75rem;
        padding:.2rem .25rem;
        border:1px solid;
        border-color:color-mix(in srgb, currentColor 20%, transparent);
        border-radius:.5rem;
    }
    .vehi400.baze782.tohaf9f > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .vehi400.baze782.tohaf9f > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }

    .vehi400.baze782.tohaf9f > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 35rem) {
    .vehi400.baze782.defi07c > table,
    .vehi400.baze782.defi07c > table > tbody,
    .vehi400.baze782.defi07c > table > tbody > tr,
    .vehi400.baze782.defi07c > table > tbody > tr > td,
    .vehi400.baze782.defi07c > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .vehi400.baze782.defi07c > table > thead { display: none; }
    .vehi400.baze782.defi07c > table > tbody > tr {
        margin-block-end:.75rem;

        padding:.2rem .25rem;
        border:1px solid;
        border-color:color-mix(in srgb, currentColor 20%, transparent);
        border-radius:.5rem;
    }
    .vehi400.baze782.defi07c > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .vehi400.baze782.defi07c > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .vehi400.baze782.defi07c > table > tbody > tr > td:empty { display: none; }

}
@container (max-width: 44rem) {
    .vehi400.baze782.lozo173 > table,
    .vehi400.baze782.lozo173 > table > tbody,
    .vehi400.baze782.lozo173 > table > tbody > tr,
    .vehi400.baze782.lozo173 > table > tbody > tr > td,
    .vehi400.baze782.lozo173 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .vehi400.baze782.lozo173 > table > thead { display: none; }
    .vehi400.baze782.lozo173 > table > tbody > tr {
        margin-block-end:.75rem;
        padding:.2rem .25rem;
        border:1px solid;
        border-color:color-mix(in srgb, currentColor 20%, transparent);
        border-radius:.5rem;
    }
    .vehi400.baze782.lozo173 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .vehi400.baze782.lozo173 > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .vehi400.baze782.lozo173 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 52rem) {
    .vehi400.baze782.tcols-6 > table,
    .vehi400.baze782.tcols-6 > table > tbody,
    .vehi400.baze782.tcols-6 > table > tbody > tr,
    .vehi400.baze782.tcols-6 > table > tbody > tr > td,
    .vehi400.baze782.tcols-6 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .vehi400.baze782.tcols-6 > table > thead { display: none; }
    .vehi400.baze782.tcols-6 > table > tbody > tr {
        margin-block-end:.75rem;
        padding:.2rem .25rem;
        border:1px solid;
        border-color:color-mix(in srgb, currentColor 20%, transparent);
        border-radius:.5rem;
    }
    .vehi400.baze782.tcols-6 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .vehi400.baze782.tcols-6 > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .vehi400.baze782.tcols-6 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 61rem) {
    .vehi400.baze782.tcols-7 > table,
    .vehi400.baze782.tcols-7 > table > tbody,
    .vehi400.baze782.tcols-7 > table > tbody > tr,
    .vehi400.baze782.tcols-7 > table > tbody > tr > td,
    .vehi400.baze782.tcols-7 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .vehi400.baze782.tcols-7 > table > thead { display: none; }
    .vehi400.baze782.tcols-7 > table > tbody > tr {
        margin-block-end:.75rem;
        padding:.2rem .25rem;
        border:1px solid;
        border-color:color-mix(in srgb, currentColor 20%, transparent);
        border-radius:.5rem;
    }
    .vehi400.baze782.tcols-7 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .vehi400.baze782.tcols-7 > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .vehi400.baze782.tcols-7 > table > tbody > tr > td:empty { display: none; }
}


@keyframes consent-arrive { from { opacity: 0; } }
.cookie-bar {
    max-height:30vh;
    overflow:auto;
    box-sizing:border-box;
    top:auto;
    bottom:0;
}
html body .cookie-bar.cookie-bar {
    animation:consent-arrive .6s ease-out 1.8s backwards !important;
}
@media (min-width: 48rem) {
    html body .cookie-bar.cookie-bar {
        position:fixed !important;
        top:auto !important;
        bottom:var(--consent-bottom, 1.25rem) !important;
        left:var(--consent-left, 1.25rem) !important;
        right:auto !important;
        width:min(380px, calc(100vw - 2.5rem)) !important;
        max-width:380px !important;
        max-height:min(60vh, 30rem) !important;
        margin:0 !important;
        padding:1.1rem 1.25rem !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:.8rem !important;
    }
    .cookie-bar > :where(div, form, section, nav):not([hidden]) {
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        justify-content:flex-start !important;
        gap:.8rem !important;
    }
    .cookie-bar > :not([hidden]),
    .cookie-bar > :where(div, form, section, nav):not([hidden]) > :not([hidden]) {
        flex:0 0 auto !important;
        min-width:0;
        width:auto !important;
        max-width:none !important;
        margin:0 !important;
    }
    .cookie-bar :where(div, p, nav, form, section) {
        flex-wrap:wrap;
    }
}
@media (prefers-reduced-motion: reduce) {
    html body .cookie-bar.cookie-bar { animation-duration: .01s !important; }
}

/* MEASURED: controls that stood on, or against, other words */
/* button.btn.btn-primary stood clear at 768px with this; left as designed from 1024px */
@media (max-width: 1023px) { div.cookie-bar.is-visible { --consent-bottom: 72px !important; } }
@media (max-width: 1023px) { div.cookie-bar.is-visible { bottom: 72px !important; } }
@media (max-width: 767px) { button.chat-launcher.is-raised { bottom: 194px !important; } }

/* MEASURED: text that could not be read on its own background */
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
button.terms-tab-btn { color: #177885 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
article.catalog-card span.catalog-card-price { color: #156c78 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
button.tab-btn button.tab-btn span { color: #177885 !important; }
div.boxed-frame-shell section.cookie-section-rule a { color: #177885 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
div.boxed-frame-shell span.legal-section-number { color: #177885 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
div.catalogue-hero-strip div.hero-eyebrow { color: #156c78 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
div.contact-form-pane label.form-checkbox-label a { color: #177885 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
div.contact-meta-card div.contact-meta-line a { color: #177885 !important; }
div.cookie-bar.is-visible p.cookie-bar-copy a { color: #177885 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
div.legal-reading-column section.legal-section a { color: #177885 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
div.legal-reading-column span.legal-section-number { color: #177885 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
div.showcase-header-strip div.showcase-strip-status { color: #156c78 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
div.spec-matrix-cell div.spec-cell-price { color: #156c78 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
footer.site-footer address.footer-address a { color: #156c78 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
header.catalogue-hero-strip div.hero-eyebrow { color: #156c78 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
header.site-header a.nav-link { color: #177885 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
nav.phone-dock span.dock-label { color: #177885 !important; }
/* measured 3.6:1 — rgb(25, 128, 142) on rgb(222, 229, 233), floor 4.5:1 */
section.catalogue-hero-strip span.hero-eyebrow { color: #156c78 !important; }
section.editorial-section.bg-surface div.verb-prose a { color: #156c78 !important; }
section.editorial-section.bg-surface p.subtext a { color: #156c78 !important; }
/* measured 4.2:1 — rgb(25, 128, 142) on rgb(238, 244, 247), floor 4.5:1 */
section.hero-split-opening div.hero-eyebrow { color: #177885 !important; }
div.terms-tab-bar button.terms-tab-btn { color: #156c78 !important; }

/* MEASURED: running text held to a reading measure */
/* p ran 86 characters a line */
div.grid-2 p { max-width: 32em !important; }
