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

}

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

@media (max-width: 30rem) {
  :root {
    --poge-908:clamp(2.2rem, 9vw, 3rem);
    --poge-b93:clamp(2rem, 8vw, 2.7rem);
    --poge-228:clamp(1.8rem, 7vw, 2.4rem);
    --poge-a8a:clamp(1.55rem, 6vw, 2.05rem);
    --poge-c5f:clamp(1.35rem, 5vw, 1.8rem);
  }
}
@media (min-width: 30.01rem) and (max-width: 48rem) {
  :root {
    --poge-908:clamp(2.8rem, 8vw, 4.6rem);
    --poge-b93:clamp(2.5rem, 7vw, 4rem);
    --poge-228: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) {
  .jidue45.bisa28b.wojacb7 > table,
  .jidue45.bisa28b.wojacb7 > table > tbody,
  .jidue45.bisa28b.wojacb7 > table > tbody > tr,
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td,
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > th {
    display:block;
    inline-size:auto;
    min-inline-size:0 !important;
  }
  .jidue45.bisa28b.wojacb7 > table > thead { display: none; }
  .jidue45.bisa28b.wojacb7 > 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;
  }
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td {
    padding-block:.4rem;
    padding-inline:.7rem;
  }
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td[data-label]::before {
    content:attr(data-label);
    display:block;
    font-size:.82em;
    font-weight:600;
    letter-spacing:.02em;
    opacity:.68;
  }
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 35rem) {
  .jidue45.bisa28b.rehud24 > table,
  .jidue45.bisa28b.rehud24 > table > tbody,
  .jidue45.bisa28b.rehud24 > table > tbody > tr,
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td,
  .jidue45.bisa28b.rehud24 > table > tbody > tr > th {
    display:block;
    inline-size:auto;
    min-inline-size:0 !important;
  }
  .jidue45.bisa28b.rehud24 > table > thead { display: none; }
  .jidue45.bisa28b.rehud24 > 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;
  }
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td {
    padding-block:.4rem;
    padding-inline:.7rem;
  }
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td[data-label]::before {
    content:attr(data-label);
    display:block;
    font-size:.82em;
    font-weight:600;
    letter-spacing:.02em;
    opacity:.68;
  }
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td:empty { display: none; }
}
@container (max-width: 44rem) {
  .jidue45.bisa28b.tcols-5 > table,
  .jidue45.bisa28b.tcols-5 > table > tbody,
  .jidue45.bisa28b.tcols-5 > table > tbody > tr,
  .jidue45.bisa28b.tcols-5 > table > tbody > tr > td,
  .jidue45.bisa28b.tcols-5 > table > tbody > tr > th {
    display:block;
    inline-size:auto;
    min-inline-size:0 !important;
  }
  .jidue45.bisa28b.tcols-5 > table > thead { display: none; }
  .jidue45.bisa28b.tcols-5 > 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;
  }

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

@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: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-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;
  }
  .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; }
}

/* MEASURED: flex rows that ran out of room and did not wrap */
/* out of room at 390px, fitted at 768px */
@media (max-width: 767px) { div.catalogue-spec-entry { flex-wrap: wrap !important; } }
@media (max-width: 767px) { div.hero-plate-caption { flex-wrap: wrap !important; } }

/* MEASURED: words found printed outside their own card */
/* a.btn.btn-secondary kept inside its card at 320px with this */
a.btn.btn-secondary { white-space: normal !important; }
h1.lockup-part-secondary { overflow-wrap: anywhere !important; }

/* 3 columns measured unreadable in a 1018px box, where the threshold was 26rem */
@container (max-width: 1018px) {
  .jidue45.bisa28b.wojacb7 > table,
  .jidue45.bisa28b.wojacb7 > table > tbody,
  .jidue45.bisa28b.wojacb7 > table > tbody > tr,
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td,
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > th {
    display:block;
    inline-size:auto;
    min-inline-size:0 !important;
  }
  .jidue45.bisa28b.wojacb7 > table > thead { display: none; }
  .jidue45.bisa28b.wojacb7 > 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;
  }
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td {
    padding-block:.4rem;
    padding-inline:.7rem;
  }
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td[data-label]::before {
    content:attr(data-label);
    display:block;
    font-size:.82em;
    font-weight:600;
    letter-spacing:.02em;
    opacity:.68;
  }
  .jidue45.bisa28b.wojacb7 > table > tbody > tr > td:empty { display: none; }
}
/* 4 columns measured unreadable in a 648px box, where the threshold was 35rem */
@container (max-width: 648px) {
  .jidue45.bisa28b.rehud24 > table,
  .jidue45.bisa28b.rehud24 > table > tbody,
  .jidue45.bisa28b.rehud24 > table > tbody > tr,
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td,
  .jidue45.bisa28b.rehud24 > table > tbody > tr > th {
    display:block;
    inline-size:auto;
    min-inline-size:0 !important;
  }
  .jidue45.bisa28b.rehud24 > table > thead { display: none; }
  .jidue45.bisa28b.rehud24 > 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;
  }
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td {
    padding-block:.4rem;
    padding-inline:.7rem;
  }
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td[data-label]::before {
    content:attr(data-label);
    display:block;
    font-size:.82em;
    font-weight:600;
    letter-spacing:.02em;
    opacity:.68;
  }
  .jidue45.bisa28b.rehud24 > table > tbody > tr > td:empty { display: none; }
}

/* MEASURED: table columns starved by a neighbour full of prose */
table.cookies-signals-table tr > :nth-child(1) { min-width: 18ch !important; }
/* column 2 measured at the width of its longest word, holding up to 17 characters */
table.cookies-signals-table tr > :nth-child(2) { min-width: 17ch !important; }
/* column 1 measured at the width of its longest word, holding up to 39 characters */
table.privacy-data-table tr > :nth-child(1) { min-width: 28ch !important; }
table.privacy-data-table tr > :nth-child(2) { min-width: 22ch !important; }
/* column 1 measured at the width of its longest word, holding up to 32 characters */
table.terms-clause-table tr > :nth-child(1) { min-width: 28ch !important; }

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

/* h1.lockup-part-secondary broke "Technologies" at 320px; 25.9px holds it */
@media (max-width: 389px) { h1.lockup-part-secondary { font-size: clamp(25.9px, 8.09vw, 29px) !important; } }
/* h2.section-heading-clean broke "Sequencing" at 1024px; 32.8px holds it */
@media (min-width: 1024px) and (max-width: 1439px) { h2.section-heading-clean { font-size: clamp(32.8px, 3.20vw, 36px) !important; } }
/* span.workshop-stat-number broke "08:00–17:00" at 1024px; 24.8px holds it */
@media (min-width: 1024px) and (max-width: 1439px) { span.workshop-stat-number { font-size: clamp(24.8px, 2.42vw, 46px) !important; } }
/* span.workshop-stat-number broke "08:00–17:00" at 1440px; 37.4px holds it */
@media (min-width: 1440px) and (max-width: 1919px) { span.workshop-stat-number { font-size: clamp(37.4px, 2.60vw, 48px) !important; } }
/* span.workshop-stat-number broke "08:00–17:00" at 1920px; 37.4px holds it */
@media (min-width: 1920px) { span.workshop-stat-number { font-size: clamp(37.4px, 1.95vw, 48px) !important; } }
