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

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

@media (max-width: 30rem) {
  :root {
    --bimu-cd6: clamp(2.2rem, 9vw, 3rem);
    --bimu-504: clamp(2rem, 8vw, 2.7rem);
    --bimu-f9e: clamp(1.8rem, 7vw, 2.4rem);
    --bimu-7fe: clamp(1.55rem, 6vw, 2.05rem);
    --bimu-60b: clamp(1.35rem, 5vw, 1.8rem);
  }
}
@media (min-width: 30.01rem) and (max-width: 48rem) {
  :root {
    --bimu-cd6: clamp(2.8rem, 8vw, 4.6rem);
    --bimu-504: clamp(2.5rem, 7vw, 4rem);
    --bimu-f9e: 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) {
  .paro3bd.lacudf2.lati6f5 > table,
  .paro3bd.lacudf2.lati6f5 > table > tbody,
  .paro3bd.lacudf2.lati6f5 > table > tbody > tr,
  .paro3bd.lacudf2.lati6f5 > table > tbody > tr > td,
  .paro3bd.lacudf2.lati6f5 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .paro3bd.lacudf2.lati6f5 > table > thead { display: none; }
  .paro3bd.lacudf2.lati6f5 > 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;
  }
  .paro3bd.lacudf2.lati6f5 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }
  .paro3bd.lacudf2.lati6f5 > table > tbody > tr > td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: .82em;
    font-weight: 600;
    letter-spacing: .02em;
    opacity: .68;
  }
  .paro3bd.lacudf2.lati6f5 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 35rem) {
  .paro3bd.lacudf2.taju337 > table,
  .paro3bd.lacudf2.taju337 > table > tbody,
  .paro3bd.lacudf2.taju337 > table > tbody > tr,
  .paro3bd.lacudf2.taju337 > table > tbody > tr > td,
  .paro3bd.lacudf2.taju337 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .paro3bd.lacudf2.taju337 > table > thead { display: none; }
  .paro3bd.lacudf2.taju337 > 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;
  }
  .paro3bd.lacudf2.taju337 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }
  .paro3bd.lacudf2.taju337 > table > tbody > tr > td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: .82em;
    font-weight: 600;
    letter-spacing: .02em;
    opacity: .68;
  }
  .paro3bd.lacudf2.taju337 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 44rem) {
  .paro3bd.lacudf2.tokiba5 > table,
  .paro3bd.lacudf2.tokiba5 > table > tbody,
  .paro3bd.lacudf2.tokiba5 > table > tbody > tr,
  .paro3bd.lacudf2.tokiba5 > table > tbody > tr > td,
  .paro3bd.lacudf2.tokiba5 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .paro3bd.lacudf2.tokiba5 > table > thead { display: none; }
  .paro3bd.lacudf2.tokiba5 > 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;
  }
  .paro3bd.lacudf2.tokiba5 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }
  .paro3bd.lacudf2.tokiba5 > table > tbody > tr > td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: .82em;
    font-weight: 600;
    letter-spacing: .02em;
    opacity: .68;
  }
  .paro3bd.lacudf2.tokiba5 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 52rem) {

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

/* Consent — a corner card on a desk, a short bar on a phone, and late. */
@keyframes consent-arrive { from { opacity: 0; } }
.cookie-banner {
  max-height: 30vh;
  overflow: auto;
  box-sizing: border-box;
  top: auto;
  bottom: 0;
}
html body .cookie-banner.cookie-banner { animation: consent-arrive .6s ease-out 1.8s backwards !important; }
@media (min-width: 48rem) {
  html body .cookie-banner.cookie-banner {
    position: fixed !important;
    top: auto !important;
    bottom: 1.25rem !important;
    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-banner > :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;
  }
  /* A `flex: 1 1 320px` written for a row is a 320px HEIGHT in a column. */
  .cookie-banner > :not([hidden]),
  .cookie-banner > :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-banner :where(div, p, nav, form, section) { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  html body .cookie-banner.cookie-banner { animation-duration: .01s !important; }
}

@media (max-width: 767px) { a.masthead-contact-pill { flex-wrap: wrap !important; } }
/* out of room at 390px, fitted at 768px */
@media (max-width: 767px) { div.editorial-header-row { flex-wrap: wrap !important; } }
/* out of room at 320px, fitted at 390px */
@media (max-width: 389px) { div.item-card-meta { flex-wrap: wrap !important; } }
@media (max-width: 767px) { div.masthead-nameplate { flex-wrap: wrap !important; } }
/* out of room at 390px, fitted at 768px */
@media (max-width: 767px) { div.spec-key-value-row { flex-wrap: wrap !important; } }

/* MEASURED: text that could not be read on its own background */
a.nav-link { color: #824a24 !important; }
/* measured 4.0:1 — rgb(86, 76, 57) on rgb(193, 178, 150), floor 4.5:1 */
span.item-badge { color: #4a4131 !important; }
/* measured 2.8:1 — rgb(166, 94, 46) on rgb(209, 195, 170), floor 4.5:1 */
section.cookie-banner p.cookie-banner-text a { color: #764321 !important; }
