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

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

@media (max-width: 30rem) {
  :root {
    --falu-57f: clamp(2.2rem, 9vw, 3rem);
    --falu-81d: clamp(2rem, 8vw, 2.7rem);
    --falu-dcf: clamp(1.8rem, 7vw, 2.4rem);
    --falu-b85: clamp(1.55rem, 6vw, 2.05rem);
    --falu-d5d: clamp(1.35rem, 5vw, 1.8rem);
  }
}
@media (min-width: 30.01rem) and (max-width: 48rem) {
  :root {
    --falu-57f: clamp(2.8rem, 8vw, 4.6rem);
    --falu-81d: clamp(2.5rem, 7vw, 4rem);
    --falu-dcf: 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) {
  .sote855.cifu059.damu0d7 > table,
  .sote855.cifu059.damu0d7 > table > tbody,
  .sote855.cifu059.damu0d7 > table > tbody > tr,
  .sote855.cifu059.damu0d7 > table > tbody > tr > td,
  .sote855.cifu059.damu0d7 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .sote855.cifu059.damu0d7 > table > thead { display: none; }
  .sote855.cifu059.damu0d7 > 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;
  }
  .sote855.cifu059.damu0d7 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }
  .sote855.cifu059.damu0d7 > table > tbody > tr > td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: .82em;
    font-weight: 600;
    letter-spacing: .02em;
    opacity: .68;
  }
  .sote855.cifu059.damu0d7 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 35rem) {
  .sote855.cifu059.tcols-4 > table,
  .sote855.cifu059.tcols-4 > table > tbody,
  .sote855.cifu059.tcols-4 > table > tbody > tr,
  .sote855.cifu059.tcols-4 > table > tbody > tr > td,
  .sote855.cifu059.tcols-4 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .sote855.cifu059.tcols-4 > table > thead { display: none; }
  .sote855.cifu059.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;
  }
  .sote855.cifu059.tcols-4 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }
  .sote855.cifu059.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;
  }
  .sote855.cifu059.tcols-4 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 44rem) {
  .sote855.cifu059.donebe8 > table,
  .sote855.cifu059.donebe8 > table > tbody,
  .sote855.cifu059.donebe8 > table > tbody > tr,
  .sote855.cifu059.donebe8 > table > tbody > tr > td,
  .sote855.cifu059.donebe8 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .sote855.cifu059.donebe8 > table > thead { display: none; }
  .sote855.cifu059.donebe8 > 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;
  }
  .sote855.cifu059.donebe8 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }

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

/* MEASURED: words found printed outside their own card */
div.spec-ledger-value { overflow-wrap: anywhere !important; }
/* printed 10px outside its card */
span.metric { overflow-wrap: anywhere !important; }
span.spec-ledger-value { overflow-wrap: anywhere !important; }

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

/* MEASURED: tables whose cells came out too narrow to read */
/* 5 columns measured unreadable in a 705px box, where the threshold was 44rem */
@container (max-width: 705px) {
  .sote855.cifu059.donebe8 > table,
  .sote855.cifu059.donebe8 > table > tbody,
  .sote855.cifu059.donebe8 > table > tbody > tr,
  .sote855.cifu059.donebe8 > table > tbody > tr > td,
  .sote855.cifu059.donebe8 > table > tbody > tr > th {
    display: block;
    inline-size: auto;
    min-inline-size: 0 !important;
  }
  .sote855.cifu059.donebe8 > table > thead { display: none; }
  .sote855.cifu059.donebe8 > 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;
  }
  .sote855.cifu059.donebe8 > table > tbody > tr > td {
    padding-block: .4rem;
    padding-inline: .7rem;
  }
  .sote855.cifu059.donebe8 > table > tbody > tr > td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: .82em;
    font-weight: 600;
    letter-spacing: .02em;
    opacity: .68;
  }
  .sote855.cifu059.donebe8 > table > tbody > tr > td:empty { display: none; }
}
