/* Scoped content refinement: inherited header, footer and project design stay intact. */
.about-enquiry-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin:30px 0;font-size:clamp(16px,1.4vw,20px);line-height:1.5}
.about-enquiry-links a,.about-product-link{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.about-enquiry-links a{padding:8px 0;min-height:44px}
.about-enquiry-links a:focus-visible,.about-product-link:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.about-reference-caption{max-width:600px;font-size:14px;line-height:1.5;margin:24px 0 0}
#blog .cb-summary-main{display:flex;flex-direction:column;align-items:stretch}
#blog .cb-summary-header{max-width:100%;margin-bottom:50px}
#blog .cb-summary-header h2{max-width:100%;font-size:clamp(32px,4.7vw,72px);line-height:1.05}
#blog .cb-summary-header h2 span{transform:none!important;translate:none!important;opacity:1!important;overflow:visible!important}
#blog .cb-summary-more.-offset{position:static!important;inset:auto!important;transform:none!important;align-self:flex-start;margin:40px 0 0!important}
#blog .cb-summary-entries{width:100%}
#blog .cb-entry-thumbnail{aspect-ratio:16/9;height:auto!important;padding:0!important;border-radius:18px;overflow:hidden}
#blog .cb-entry-thumbnail picture{display:block;width:100%;height:100%}
#blog .cb-entry-thumbnail img{width:100%;height:100%;object-fit:contain;transform:none!important;opacity:1!important}
.editorial-intro,.editorial-services,.editorial-article{width:min(1120px,calc(100% - 48px));margin:0 auto}
.editorial-intro{padding:150px 0 70px}
.editorial-intro h1{font-size:clamp(50px,8vw,112px);line-height:1.03;letter-spacing:-.06em;margin:20px 0 32px}
.editorial-intro>p:not(.editorial-eyebrow){font-size:clamp(19px,2vw,28px);line-height:1.5;max-width:820px}
.editorial-eyebrow{font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.editorial-services{display:grid;gap:20px;padding-bottom:60px}
.editorial-services article{padding:48px;border:1px solid #85858555;border-radius:24px;scroll-margin-top:110px}
.editorial-services h2,.editorial-closing h2{font-size:clamp(30px,4vw,54px);letter-spacing:-.04em;line-height:1.1;margin:14px 0 24px}
.editorial-services p{max-width:760px;font-size:19px;line-height:1.6;margin:15px 0}
.editorial-services a,.editorial-intro>a,.editorial-cta a{display:inline-block;margin-top:20px;padding:12px 0;border-bottom:1px solid currentColor;font-size:18px}
.editorial-closing{padding-top:30px;padding-bottom:100px}
.editorial-filters{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:45px 0 65px}
.editorial-filters button{border:1px solid #85858566;border-radius:30px;background:transparent;color:inherit;padding:12px 22px;min-height:44px;font:inherit;cursor:pointer}
.editorial-filters button[aria-pressed="true"]{background:#163f34;color:#fff;border-color:#163f34}
.editorial-filters button:focus-visible{outline:3px solid #9073d0;outline-offset:3px}
.editorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 40px}
.editorial-grid [hidden]{display:none!important}
.codebro-blog .cb-entry-thumbnail{aspect-ratio:16/9;overflow:hidden;border-radius:20px}
.codebro-blog .cb-entry-thumbnail img{width:100%;height:100%;object-fit:contain}
.codebro-blog .cb-entry-thumbnail img{transform:none!important;opacity:1!important}
.editorial-sources a{display:block;margin:12px 0;overflow-wrap:anywhere}
.editorial-article p,.editorial-article h1,.editorial-article h2,.codebro-blog .cb-entry-title{overflow-wrap:break-word}
.editorial-grid a:focus-visible{outline:3px solid currentColor;outline-offset:8px;border-radius:20px}
.editorial-note{font-size:15px;line-height:1.6;max-width:760px;margin:60px 0}
.editorial-article{max-width:820px;padding:140px 0 100px;font-size:19px;line-height:1.75}
.editorial-article h1{font-size:clamp(38px,5vw,68px);line-height:1.08;letter-spacing:-.045em;margin:24px 0}
.editorial-article h2{font-size:clamp(27px,3vw,38px);line-height:1.2;letter-spacing:-.03em;margin:48px 0 20px}
.editorial-article p{margin:20px 0}
.editorial-deck{font-size:23px}.editorial-byline{font-size:14px;opacity:.75}
.editorial-cover{width:100%;height:auto;border-radius:24px;margin:25px 0}
.editorial-toc{display:grid;gap:8px;padding:28px;border:1px solid #85858566;border-radius:20px;font-size:16px}
.editorial-article a{text-decoration:underline;text-underline-offset:4px}
.editorial-article section{scroll-margin-top:110px}
.editorial-cta{padding:10px 30px 30px;border:1px solid #85858566;border-radius:20px;margin-top:50px}
.editorial-related{display:grid;gap:20px;margin-top:40px}
@media(max-width:767px){.editorial-intro{padding-top:110px}.editorial-services article{padding:25px}.editorial-grid{grid-template-columns:1fr;gap:38px}.editorial-filters{gap:8px;margin:30px 0}.editorial-filters button{padding:10px 15px}.editorial-article{padding-top:110px;font-size:17px}.editorial-deck{font-size:20px}#blog .cb-summary-header{margin-bottom:30px}#blog .cb-summary-more.-offset{margin-top:30px!important}}
/* Small, production-only analytics choice. The script itself does not render in local previews. */
.codebro-analytics-consent {
  box-sizing:border-box; position:fixed; right:24px; bottom:24px; z-index:1000;
  width:368px; max-width:calc(100vw - 32px); padding:24px;
  background:#f6f5f1; color:#171717; border:1px solid #deddd7; border-radius:18px;
  box-shadow:0 8px 32px #00000014; font-family:Arial,sans-serif;
  text-align:left; line-height:1.5; isolation:isolate;
}
.codebro-analytics-consent *, .codebro-analytics-consent *::before, .codebro-analytics-consent *::after {box-sizing:border-box}
.codebro-analytics-consent::after {content:none}
.codebro-analytics-consent__top {display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.codebro-analytics-consent__eyebrow {font-size:10px;line-height:1.2;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#595954}
.codebro-analytics-consent__index {font-size:11px;color:#77766e;letter-spacing:.04em}
.codebro-analytics-consent h2 {margin:0 0 10px;font-family:inherit;font-size:26px;line-height:1.12;letter-spacing:-1px;font-weight:500;color:#171717}
.codebro-analytics-consent p {margin:0;font-size:13px;line-height:1.6;color:#62615c}
.codebro-analytics-consent__link {color:#292925;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.codebro-analytics-consent__actions {display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid #deddd7}
.codebro-analytics-consent button {appearance:none;display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:44px;padding:10px 8px;border:1px solid #bdbcb5;border-radius:999px;background:transparent;color:#171717;font-family:inherit;font-size:12px;line-height:1.3;font-weight:500;cursor:pointer;transition:background .18s ease,border-color .18s ease}
.codebro-analytics-consent [data-analytics-accept] {background:#171717;border-color:#171717;color:#fff}
.codebro-analytics-consent button:hover {background:#e6e5df;border-color:#77766e}
.codebro-analytics-consent [data-analytics-accept]:hover {background:#393933;border-color:#393933}
.codebro-analytics-consent button:focus-visible,.codebro-analytics-consent a:focus-visible {outline:2px solid #52524a;outline-offset:4px}
/* The original mobile cards are tap-only. This preserves their layout but gives
   the active card a calm, scroll-driven transition on touch devices. */
@media (max-width:767px) and (pointer:coarse) {
  .cb-feature-item {transition:color .55s cubic-bezier(.16,1,.3,1)}
  .cb-feature-item-fill {transition:background-color .7s cubic-bezier(.16,1,.3,1)}
  .cb-feature-item-bg {transition:opacity .7s cubic-bezier(.16,1,.3,1)}
}
@media (prefers-reduced-motion:reduce) {
  .cb-feature-item,.cb-feature-item-fill,.cb-feature-item-bg {transition:none!important}
}
@media(max-width:480px) {
  .codebro-analytics-consent {right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:calc(100vw - 24px);max-width:none;padding:20px}
  .codebro-analytics-consent__top {margin-bottom:16px}
  .codebro-analytics-consent h2 {font-size:24px}
  .codebro-analytics-consent__actions {margin-top:18px;padding-top:16px}
}
