/* Contrast-aware uses of the unchanged brand palette; WCAG 2.2 AA target. */
html{scroll-padding-top:128px;text-size-adjust:100%;-webkit-text-size-adjust:100%}
:root{--mono:'ViewCraft Mono',monospace;--muted:#5B655E}
body{min-width:0;overflow-wrap:break-word}
img,svg{height:auto}
a,button,input,select,textarea{touch-action:manipulation}
button,.btn,.icon-btn,.chip{min-height:44px}
.icon-btn{width:44px;height:44px}
.eyebrow,.step,.text-link,.quick-links,.clear-btn,.gallery-switch button.active,.tab-buttons button.active,.nav a:hover,.nav a.active{color:var(--ink)}
.text-link{border-bottom-color:var(--teal)}
.verified-banner .eyebrow{color:#58c5b7}
.footer-links a{display:flex;align-items:center;min-height:44px}
.footer-links{gap:0}
.footer a:hover{color:#5ed0bd}
.breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
.header{background:var(--paper);backdrop-filter:none}
.hero>.image-note{background:var(--ink);color:white}
.image-note{color:var(--ink)}
.business-hero .image-note{color:#c2cdc7}
input,select,textarea,.btn.secondary,.chip,.gallery-switch button,.cart-tools button{border-color:#7c887f}
.chip.active,.chip:hover{border-color:var(--teal)}
.data-row dt{color:var(--muted)}
.data-row dd{margin:0;text-align:right;font-weight:500}
.data-row dt,.data-row dd{max-width:55%;overflow-wrap:anywhere}
.field-error{display:block;color:var(--ink);border-left:3px solid var(--teal);padding-left:10px;margin-top:8px;font-size:12px}
.field-error[hidden]{display:none}
input[aria-invalid=true]{border-width:2px;border-color:var(--ink)}
.check{min-height:44px;padding:8px 0;cursor:pointer}
.check input{width:18px;height:18px;flex:none}
.compare-check{border-top:1px solid var(--line);margin-top:14px;font-size:11px}
.compare-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #cad9d1;border-radius:5px;padding:15px 20px;margin-bottom:20px;background:#e8eeea;font-size:12px}
.compare-bar>div{display:flex;align-items:center;gap:20px}
.compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.compare-grid .card{padding:22px}
.compare-grid h3{font-size:24px;min-height:55px}
.guide-card .text-link{min-height:44px}
.guide-article{max-width:880px}
.guide-article p{font-size:16px;line-height:1.9}
.guide-article h2{font-size:30px}
.guide-links{display:flex;flex-direction:column;align-items:flex-start;gap:15px}
.guide-links a,.guide-sources a{min-height:44px;display:inline-flex;align-items:center}
.guide-sources{margin-top:40px;border-top:1px solid var(--line)}
.guide-sources a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--teal);text-underline-offset:5px}
.buying-points{padding-left:22px;max-width:800px;line-height:1.9;color:var(--muted)}
.summary h2,.checkout-layout h2,.tab-content h2{font-size:26px}
.record-layout .card h2{font-size:28px}
.card>h2{font-size:26px}
.footer .footer-title{font:11px var(--mono);line-height:1.6;letter-spacing:.12em;text-transform:uppercase;color:#aab8b1;margin-bottom:20px}
.assistance{position:static;justify-content:center;background:var(--ink);color:white;border:0;box-shadow:none;border-radius:0;min-height:44px;margin:0;padding:14px}
.assistance span{color:#58c5b7}
.toast{bottom:auto;top:114px;max-width:min(620px,90vw)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px;scroll-margin-top:135px;scroll-margin-bottom:95px}
.cart-tools button{width:44px;height:44px}
.cart-tools .remove{width:auto;padding:8px 10px;min-height:44px}
.clear-btn{min-height:44px;display:inline-flex;align-items:center}
.dialog-close{height:44px;width:44px}
.search-entry input{min-width:0}
.dialog-close:focus-visible{outline-offset:0}
.hero-photo{height:100%}
.business-photo{height:auto}
@media(max-width:850px){.compare-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  html{scroll-padding-top:98px}
  .header .wrap{padding-left:12px;padding-right:12px}
  .header-inner{gap:4px;height:79px}
  .brand img{width:160px}
  .icon-btn{width:44px;height:44px}
  .actions{gap:0}
  .hero-photo{height:245px}
  .hero h1{font-size:clamp(48px,14vw,57px)}
  input,select,textarea{font-size:16px}
  .tab-buttons{flex-wrap:wrap;overflow:visible;gap:3px 17px}
  .tab-buttons button{font-size:12px;padding:10px 3px;min-height:44px}
  .check{font-size:13px}
  .compare-check{font-size:11px}
  .compare-grid{grid-template-columns:1fr;gap:15px}
  .compare-grid h3{min-height:0}
  .compare-grid .monitor-art{max-height:240px}
  .compare-bar{flex-direction:column;align-items:flex-start;padding:15px}
  .compare-bar>div{width:100%;gap:15px;flex-wrap:wrap}
  .gallery-switch{gap:7px}
  .gallery-switch button{font-size:11px;min-height:44px}
  .form-grid{gap:0}
  .cart-tools{gap:8px;flex-wrap:wrap}
  .guide-article p{font-size:15px}
  .guide-article h2{font-size:26px}
  .policy p,.policy li{font-size:14px}
  .toast{top:91px;font-size:12px}
  .data-row{font-size:12px}
  .data-row dt,.data-row dd{max-width:56%}
  :focus-visible{scroll-margin-top:106px}
}
@media(max-width:380px){.product-grid{grid-template-columns:1fr}.product-card h3{font-size:20px;min-height:0}.product-card .monitor-art{max-height:230px}.product-card .btn{font-size:13px}.use-grid{grid-template-columns:1fr}.use-tile .monitor-art{max-height:200px;width:90%;margin-left:20%}.form-grid{grid-template-columns:minmax(0,1fr)}.cart-line{grid-template-columns:75px minmax(0,1fr)}}
@media(forced-colors:active){.btn,.chip,.pending,.notice,.card{border:1px solid CanvasText}.btn{color:ButtonText;background:ButtonFace}.icon-btn{border:1px solid ButtonText}.badge.new{color:CanvasText;background:Canvas}:focus-visible{outline-color:Highlight}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Manufacturer catalogue imagery and compatibility catalogue. */
.catalogue-photo{display:block;width:100%;height:auto;aspect-ratio:2052/1641;object-fit:contain;background:#fff;border-radius:8px}
.product-card .catalogue-photo{height:210px;margin:12px 0 18px}
.gallery .catalogue-photo{max-height:540px}
.photo-pending{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:26px;text-align:center;background:#e8e9e5;color:#14191D;border-radius:8px;line-height:1.6}
.photo-pending p{font-size:13px;max-width:34ch}
.mrp-label{font-size:11px;font-weight:600;color:#3e4949;margin-top:12px}
.product-card .price{font-size:26px}
.spec-summary{font-size:12px;line-height:1.6;color:#3e4949;min-height:38px}
.additional-specs{margin-top:24px;padding:18px;border:1px solid #737d78;border-radius:6px}
.additional-specs>summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center;gap:12px}
.additional-specs>summary::before{content:'+';font-size:24px}.additional-specs[open]>summary::before{content:'−'}
.additional-specs .data-row{gap:18px}.data-row dt,.data-row dd{overflow-wrap:anywhere}
.accessory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.accessory-item{min-width:0}.accessory-item .compatibility{background:#eef0ed;padding:14px;border-radius:6px;font-size:13px;line-height:1.7}
.accessory-item .button-row{align-items:flex-start}.accessory-item .text-link{min-height:44px;display:inline-flex;align-items:center}
.accessory-nav{margin-bottom:24px;flex-wrap:wrap}.gallery-switch{flex-wrap:wrap}
@media(max-width:600px){.accessory-grid{grid-template-columns:1fr}.product-card .catalogue-photo{height:190px}.additional-specs{padding:12px}.additional-specs .data-row{display:block}.additional-specs dd{margin:5px 0 0}.product-info .price{font-size:32px}}
.series-photo{display:block;width:100%;height:auto;aspect-ratio:2052/1641;object-fit:contain;margin:8px 0 0;mix-blend-mode:multiply;transition:transform .2s}
.use-tile{display:flex;flex-direction:column;padding-bottom:18px}
.use-tile p{min-height:34px;margin-bottom:0}
.use-tile:hover .series-photo{transform:translateY(-4px)}
.series-caption{display:block;font-size:11px;line-height:1.5;font-weight:600;color:var(--ink);margin-top:auto}
.concept-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:5px}
.inspection-visual{margin:0;flex:0 1 410px;min-width:0}
.inspection-visual .image-note{color:#c2cdc7;line-height:1.6;margin-top:10px}
.verified-banner>div:first-child{flex:1 1 420px;min-width:0}
.visual-card .concept-photo{margin-bottom:14px}
.visual-card .image-note{display:block;margin-bottom:16px;line-height:1.5}
.setup-card .concept-photo{margin-bottom:24px}
.setup-detail .concept-photo{border:1px solid var(--line)}
.business-photo{width:100%;height:auto;object-fit:cover;aspect-ratio:3/2;border-radius:5px}
@media(max-width:1000px){.verified-banner{gap:28px}.inspection-visual{flex-basis:38%}}
@media(max-width:600px){.inspection-visual{margin-top:28px;width:100%}.use-tile{padding-bottom:15px}.series-caption{font-size:10px}.series-photo{margin-top:12px}.visual-card .concept-photo{margin-bottom:12px}.business-hero .business-photo{aspect-ratio:3/2}.setup-card .concept-photo{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.series-photo{transition:none}.use-tile:hover .series-photo{transform:none}}

/* The expanded catalogue remains within the existing mobile menu. */
@media(min-width:1001px){.nav{gap:18px}.nav a{font-size:12px}}

/* Enquiry catalogue */
.reference-price{font-size:12px;color:#56615e;line-height:1.6;margin:10px 0 0}.reference-price b{font-weight:500}.quote-price{font-size:16px;font-weight:650;margin:6px 0 14px}.enquiry-price{font-family:var(--heading-font,inherit);font-size:30px;font-weight:650;letter-spacing:-.7px;margin:22px 0 10px}.model-code{font-size:12px;color:#57625f;overflow-wrap:anywhere}.product-enquiry-copy{max-width:42ch;line-height:1.7}.contact-caption{font-size:12px;color:#55615b;margin-top:12px}.price-details{border-top:1px solid var(--line);padding:16px 0;margin-top:22px}.price-details summary{cursor:pointer;font-size:13px;min-height:32px;line-height:1.6}.price-details .form-note{font-size:12px;line-height:1.7}.quick-specs{margin-top:24px}.product-card .btn{width:100%;justify-content:center}.product-card .compare-check{margin-top:16px}.source-tile h2{font-size:27px;line-height:1.15;margin:0 0 7px}.type-chips{flex-wrap:wrap}.catalogue-note{font-size:12px;color:#55615b;line-height:1.8;padding-bottom:35px}.footer-contact{display:inline-block;min-height:44px;margin-top:12px}.enquiry-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:30px;align-items:start;margin-bottom:70px}.enquiry-aside{position:sticky;top:120px}.enquiry-aside h3{margin-top:30px}.contact-number{font-size:24px;font-weight:650;letter-spacing:-.5px}.enquiry-result{background:#edf4ef;padding:22px;border-radius:6px;margin-top:24px}.enquiry-result h3{font-size:24px}.enquiry-result .btn{margin-top:12px}.enquiry-aside .button-row .btn{white-space:normal}.summary .btn{margin-top:22px}.cart-line .model-code{margin-top:10px}.support-grid .card{min-width:0}.source-tile{min-width:0}.product-info .button-row{align-items:stretch}.product-info .button-row .btn{justify-content:center}.card h2{font-size:27px}.compare-grid .card h2{font-size:24px;min-height:2.5em}.product-card .catalogue-photo{object-fit:contain}.product-grid>.empty{grid-column:1/-1}.product-card{display:flex;flex-direction:column;min-width:0}.product-card .quote-price{margin-top:auto}.product-card .badge{align-self:flex-start}.product-card .spec-summary{min-height:3.2em}.tab-content{max-width:100%}.tab-buttons{overflow-x:auto;flex-wrap:nowrap}.tab-buttons button{white-space:nowrap}.gallery-switch button{min-width:54px;min-height:44px}.gallery .image-note{line-height:1.7}.enquiry-aside .button-row{flex-direction:column}.enquiry-aside .btn{width:100%;justify-content:center}.policy .button-row{margin-top:30px}.assistance{gap:8px}.assistance svg{width:18px;height:18px}.type-chips{gap:8px}
@media(max-width:850px){.enquiry-layout{grid-template-columns:1fr}.enquiry-aside{position:static}.source-tile h2{font-size:23px}.source-grid{gap:12px}.product-info .button-row{flex-direction:column}.pdp{grid-template-columns:1fr}.gallery .catalogue-photo{max-height:430px}.source-tile{padding:22px}}
@media(max-width:600px){.enquiry-price{font-size:27px}.contact-number{font-size:22px}.enquiry-layout{gap:18px;margin-bottom:40px}.reference-price{font-size:10px}.quote-price{font-size:14px}.product-card h3{min-height:3.6em}.product-card .spec-summary{font-size:11px;min-height:4.8em}.product-card .btn{padding:12px 6px}.compare-check{font-size:11px}.card h2{font-size:25px}.source-tile h2{font-size:25px}.type-chips{gap:6px}.reference-price span{display:block}.compare-grid .card h2{min-height:0}.quick-specs .data-row{gap:12px}.product-info .button-row{margin-bottom:0}.catalogue-note{padding-bottom:30px}.footer-contact{font-size:13px}.enquiry-result{padding:18px}}

.hero-copy{max-width:39ch}
