

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


/* Media and embeds never exceed their container. */
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%; }


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:auto;
}
[class*="lockup"], [class*="lockup"] > * { white-space: normal !important; }


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; }
}


.juvi6c3 {
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    container-type:inline-size;

}
.juvi6c3 > table { width: 100%; }
@media (max-width: 48rem) {
    .juvi6c3 > table { font-size: .94em; }
}
.juvi6c3 > table,
.juvi6c3 > table > thead, .juvi6c3 > table > tbody,
.juvi6c3 > table > tfoot, .juvi6c3 > table tr,
.juvi6c3 > table th, .juvi6c3 > table td { display: revert; }
.juvi6c3 > table th, .juvi6c3 > table td {
    inline-size:auto;
    min-inline-size:0;
}



@media (max-width: 30rem) {
    :root {
        --zugi-f5d:clamp(2.2rem, 9vw, 3rem);
        --zugi-13d:clamp(2rem, 8vw, 2.7rem);
        --zugi-a50:clamp(1.8rem, 7vw, 2.4rem);
        --zugi-730:clamp(1.55rem, 6vw, 2.05rem);
        --zugi-2a4:clamp(1.35rem, 5vw, 1.8rem);
    }
}
@media (min-width: 30.01rem) and (max-width: 48rem) {
    :root {
        --zugi-f5d:clamp(2.8rem, 8vw, 4.6rem);
        --zugi-13d:clamp(2.5rem, 7vw, 4rem);
        --zugi-a50:clamp(2.2rem, 6vw, 3.4rem);
    }
}


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


@container (max-width: 26rem) {
    .juvi6c3.fegib0a.deru0fd > table,
    .juvi6c3.fegib0a.deru0fd > table > tbody,
    .juvi6c3.fegib0a.deru0fd > table > tbody > tr,
    .juvi6c3.fegib0a.deru0fd > table > tbody > tr > td,
    .juvi6c3.fegib0a.deru0fd > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .juvi6c3.fegib0a.deru0fd > table > thead { display: none; }
    .juvi6c3.fegib0a.deru0fd > 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;
    }
    .juvi6c3.fegib0a.deru0fd > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .juvi6c3.fegib0a.deru0fd > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .juvi6c3.fegib0a.deru0fd > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 35rem) {
    .juvi6c3.fegib0a.tcols-4 > table,
    .juvi6c3.fegib0a.tcols-4 > table > tbody,
    .juvi6c3.fegib0a.tcols-4 > table > tbody > tr,
    .juvi6c3.fegib0a.tcols-4 > table > tbody > tr > td,
    .juvi6c3.fegib0a.tcols-4 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .juvi6c3.fegib0a.tcols-4 > table > thead { display: none; }
    .juvi6c3.fegib0a.tcols-4 > 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;
    }
    .juvi6c3.fegib0a.tcols-4 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .juvi6c3.fegib0a.tcols-4 > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .juvi6c3.fegib0a.tcols-4 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 44rem) {
    .juvi6c3.fegib0a.tabu886 > table,
    .juvi6c3.fegib0a.tabu886 > table > tbody,
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr,
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td,
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > th {
        display:block;

        inline-size:auto;
        min-inline-size:0 !important;

    }
    .juvi6c3.fegib0a.tabu886 > table > thead { display: none; }
    .juvi6c3.fegib0a.tabu886 > 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;
    }
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 52rem) {
    .juvi6c3.fegib0a.tcols-6 > table,
    .juvi6c3.fegib0a.tcols-6 > table > tbody,
    .juvi6c3.fegib0a.tcols-6 > table > tbody > tr,
    .juvi6c3.fegib0a.tcols-6 > table > tbody > tr > td,
    .juvi6c3.fegib0a.tcols-6 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .juvi6c3.fegib0a.tcols-6 > table > thead { display: none; }
    .juvi6c3.fegib0a.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;
    }
    .juvi6c3.fegib0a.tcols-6 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .juvi6c3.fegib0a.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;
    }
    .juvi6c3.fegib0a.tcols-6 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 61rem) {
    .juvi6c3.fegib0a.tcols-7 > table,
    .juvi6c3.fegib0a.tcols-7 > table > tbody,
    .juvi6c3.fegib0a.tcols-7 > table > tbody > tr,
    .juvi6c3.fegib0a.tcols-7 > table > tbody > tr > td,
    .juvi6c3.fegib0a.tcols-7 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .juvi6c3.fegib0a.tcols-7 > table > thead { display: none; }
    .juvi6c3.fegib0a.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;
    }
    .juvi6c3.fegib0a.tcols-7 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .juvi6c3.fegib0a.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;
    }
    .juvi6c3.fegib0a.tcols-7 > table > tbody > tr > td:empty { display: none; }
}



/* Consent bar — bounded so it cannot cover the headline. */
.cookie-banner {
    max-height:20vh;
    overflow:auto;
    top:auto;
    bottom:0;
}
@media (max-width: 30rem) {
    .cookie-banner { max-height: 38vh; }
}


/* printed 301px outside its card */
div.offcenter-section.offcenter-section--1-2 p { overflow-wrap: anywhere !important; }
div.offcenter-section.offcenter-section--2-1 p { overflow-wrap: anywhere !important; }
/* printed 21px outside its card */
li.footer-contact-item a { overflow-wrap: anywhere !important; }
/* printed 9px outside its card */
li.footer-contact-item small { overflow-wrap: anywhere !important; }
/* printed 325px outside its card */
p.numeral-sentence { overflow-wrap: anywhere !important; }
span.calc-output-numeral { overflow-wrap: anywhere !important; }
/* printed 303px outside its card */
span.calc-output-unit { overflow-wrap: anywhere !important; }
/* printed 16px outside its card */
span.mono { overflow-wrap: anywhere !important; }
/* printed 80px outside its card */
span.numeral-unit { overflow-wrap: anywhere !important; }
span.trade-block-price { overflow-wrap: anywhere !important; }
ul.calc-details-list span { overflow-wrap: anywhere !important; }
/* printed 136px outside its card */
ul.calc-details-list strong { overflow-wrap: anywhere !important; }


/* MEASURED: grids found holding text in a chimney */
/* 1.0 characters a line in 2 columns holding 2 item(s) */
div.calculator-layout { grid-template-columns: none !important; }


/* MEASURED: tables whose cells came out too narrow to read */
@container (max-width: 780px) {
    .juvi6c3.fegib0a.tabu886 > table,
    .juvi6c3.fegib0a.tabu886 > table > tbody,
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr,
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td,
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > th {
        display:block;
        inline-size:auto;
        min-inline-size:0 !important;
    }
    .juvi6c3.fegib0a.tabu886 > table > thead { display: none; }
    .juvi6c3.fegib0a.tabu886 > 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;
    }
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td {
        padding-block:.4rem;
        padding-inline:.7rem;
    }
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td[data-label]::before {
        content:attr(data-label);
        display:block;
        font-size:.82em;
        font-weight:600;
        letter-spacing:.02em;
        opacity:.68;
    }
    .juvi6c3.fegib0a.tabu886 > table > tbody > tr > td:empty { display: none; }
}
