/* Shared brochure direction. Page-specific compositions build on these quiet defaults. */
img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}
.renovated-page{background:#fff}.renovated-page h1{font-size:clamp(48px,5.2vw,76px);line-height:1.06;letter-spacing:-.045em}.renovated-page main :where(h2):where(:not(.contact h2)){font-size:clamp(32px,3.4vw,50px);line-height:1.13;letter-spacing:-.035em}.renovated-page main :where(h3){font-size:26px;line-height:1.2;letter-spacing:-.025em}.eyebrow{font-size:14px;color:#637076;line-height:1.5}.page-hero{padding-block:85px 70px}.page-hero .eyebrow{margin-bottom:24px}.page-intro{font-size:19px;line-height:1.65;color:#5d656a;max-width:650px;margin-top:30px}.section-heading{max-width:660px;margin-bottom:45px}.section-heading p{font-size:18px;color:#5d656a;line-height:1.6;margin-top:24px}.editorial-section{padding-block:90px}.split-story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.quiet-list{list-style:none;padding:0;margin:0}.quiet-list li{border-top:1px solid #dce1e3;padding-block:24px}.renovated-page main a:not(.text-link):not([class]):hover{text-decoration:underline;text-underline-offset:5px}body.site-menu-open,body.nss-consent-modal-open{overflow:hidden}
.global-header{height:82px;display:flex;align-items:center;gap:32px;padding-inline:var(--gutter);background:#fff;color:#1d2225;position:relative;z-index:5}.global-header--dark{position:absolute;top:0;left:0;right:0;background:#000;color:#f5f5f7}.global-brand{display:block;width:100px;flex-shrink:0}.global-brand img{width:100%;filter:brightness(0)}.global-header--dark .global-brand img{filter:none}.global-nav{display:flex;gap:27px;margin:auto;font-size:14px}.global-nav a,.global-contact{padding-block:14px}.global-nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}.global-header a:hover{text-decoration:underline;text-underline-offset:6px}.global-contact{font-size:14px;white-space:nowrap}.site-menu-trigger{min-height:44px;display:flex;gap:12px;align-items:center;font-size:14px}.site-menu-trigger span{font-size:23px;font-weight:300}.global-menu{width:100%;height:100svh;max-height:none;max-width:none;margin:0;padding:30px var(--gutter);background:#fff;color:#1d2225;overflow:auto}.global-menu::backdrop{background:#fff}.global-menu-top{display:flex;justify-content:space-between;align-items:center;font-size:26px}.global-menu-top button{font-size:15px}
.global-menu-brand{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0}.global-menu-brand img{display:block;width:38px;height:40px;object-fit:contain}:is(.contact-page,.videos-page) .global-menu-brand img{filter:brightness(0) invert(1)}
.global-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:2px 60px;max-width:940px;margin:50px 0 38px}.global-menu nav a{font-size:clamp(28px,3vw,46px);letter-spacing:-.035em;padding-block:11px;line-height:1.2}.global-menu nav a:hover,.global-menu nav a[aria-current]{color:#69757b}.global-languages{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:13px}.global-languages a{min-height:36px;display:inline-flex;align-items:center}.global-languages a[aria-current]{text-decoration:underline;text-underline-offset:5px}.menu-legal{display:flex;gap:22px;font-size:13px;margin-top:20px}.global-footer{padding-block:64px 25px}.global-footer-main{display:grid;grid-template-columns:1.15fr .9fr 1fr;gap:8%;padding-bottom:42px}.global-footer p{font-size:14px;line-height:1.65;color:#69737a;margin-top:22px}.global-footer .text-link{font-size:14px;margin-top:15px}.global-footer nav{display:grid;align-content:start;grid-template-columns:1fr 1fr;gap:3px 24px;font-size:14px}.global-footer nav a{min-height:36px;display:flex;align-items:center}.footer-contact{display:flex;flex-direction:column;font-size:14px;align-items:flex-start;gap:5px;min-width:0}.footer-contact>a{min-height:36px;display:flex;align-items:center;overflow-wrap:anywhere}.footer-contact .global-languages{margin-top:18px}.global-footer-bottom{border-top:1px solid #e1e5e6;padding-top:23px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 25px;color:#687075;font-size:12px}.global-footer-bottom>span{margin-right:auto}.global-footer-bottom a,.global-footer-bottom button{min-height:36px;display:inline-flex;align-items:center}.global-footer a:hover,.global-footer button:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1100px){.global-header{gap:22px}.global-nav{gap:19px;font-size:13px}.global-footer-main{gap:5%}.global-footer nav{grid-template-columns:1fr}.global-contact{display:none}}
@media(max-width:800px){.global-nav{display:none}.global-header{height:72px;justify-content:space-between}.global-brand{width:86px}.global-contact{display:inline;margin-left:auto}.global-footer-main{grid-template-columns:1fr 1fr;gap:34px}.footer-contact{grid-column:1/-1}.global-footer nav{grid-template-columns:1fr 1fr}.page-hero{padding-block:58px 48px}.editorial-section{padding-block:65px}.split-story{grid-template-columns:1fr;gap:35px}.page-intro{font-size:17px}.section-heading p{font-size:17px}}
@media(max-width:600px){.global-header .global-contact{display:none}.global-menu{padding:24px}.global-menu nav{grid-template-columns:1fr;gap:0;margin-top:30px}.global-menu nav a{font-size:30px;padding-block:9px}.global-menu .global-languages{margin-top:30px}.global-footer{padding-top:45px}.global-footer-main{grid-template-columns:1fr;gap:32px}.footer-contact{grid-column:auto}.global-footer nav{grid-template-columns:1fr 1fr;max-width:400px}.global-footer-bottom{gap:4px 20px}.global-footer-bottom>span{width:100%;margin-bottom:8px}.renovated-page h1{font-size:46px}.renovated-page main :where(h2):where(:not(.contact h2)){font-size:34px}.renovated-page main :where(h3){font-size:24px}}
@media(max-width:360px){.renovated-page h1{font-size:40px}.global-menu nav a{font-size:28px}.global-footer nav{column-gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Product stories start below their header; only the homepage header overlays its hero. */
.product-page > .global-header--dark{position:relative}

/* Email stays a text action; its fallback appears inline only when requested. */
.email-help{max-width:460px;margin-block:18px 6px;color:inherit;text-align:left;font-size:14px;line-height:1.6}
.email-help[hidden]{display:none!important}
.email-help p{margin:0}
.email-help .email-help-note{font-size:13px;line-height:1.6;color:inherit;max-width:440px}
.email-help-row{display:flex;align-items:center;flex-wrap:wrap;gap:0 20px;margin-top:8px}
.email-help-address{font-size:15px;letter-spacing:normal;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}
.email-help .email-help-action{display:inline-flex;align-items:center;gap:10px;min-height:44px;width:auto;padding:8px 0;border:0;background:none;color:inherit;font:inherit;font-size:13px;line-height:1.5;text-align:left;text-decoration:none;cursor:pointer}
.email-help .email-help-action:hover{text-decoration:underline;text-underline-offset:4px}
.email-help-action:focus-visible,.email-help-address:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.email-help .email-help-status{font-size:12px;line-height:1.6}
.email-help-status:empty{display:none}
.contact-inner>.email-help{margin-inline:auto}
.cr-contact-methods>.email-help{margin-top:-10px}

/* Cookies: a compact notice and a quiet, focused preferences panel. */
.nss-consent-hidden{display:none!important}
#nssConsentHost{color:#1d1d1f;font-size:14px;line-height:1.5}
.nss-consent-banner{position:fixed;z-index:40;right:24px;bottom:24px;width:min(440px,calc(100% - 48px));padding:25px 28px 18px;background:#fafafa;border-radius:16px;box-shadow:0 8px 40px #00000018,0 0 0 1px #00000005}
.nss-consent-eyebrow{display:none}
.nss-consent-title{font-size:25px;font-weight:500;line-height:1.2;letter-spacing:-.035em;text-wrap:initial}
.nss-consent-banner .nss-consent-title{font-size:18px;letter-spacing:-.02em}
.nss-consent-text{font-size:13px;line-height:1.6;color:#626268;margin-top:11px;text-wrap:pretty}
.nss-consent-actions{display:flex;align-items:center;flex-wrap:wrap;gap:0 23px;margin-top:14px}
.nss-consent-btn{display:inline-flex;align-items:center;min-height:44px;padding:5px 0;border:0;background:none;color:#1d1d1f;font-size:13px;font-weight:500;line-height:1.4;text-align:left}
.nss-consent-btn:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.nss-consent-btn:focus-visible,.nss-consent-close:focus-visible{outline:2px solid #1d1d1f;outline-offset:4px;border-radius:2px}
.nss-consent-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px}
.nss-consent-modal-backdrop{position:absolute;inset:0;background:#0005;backdrop-filter:blur(5px)}
.nss-consent-panel{position:relative;width:min(460px,100%);max-height:calc(100svh - 48px);overflow:auto;overscroll-behavior:contain;padding:38px 32px 20px;background:#fafafa;border-radius:20px;box-shadow:0 24px 100px #0002;scrollbar-width:thin}
.nss-consent-panel>.nss-consent-title{padding-right:24px}
.nss-consent-panel>.nss-consent-text{max-width:345px;margin:13px 0 23px}
.nss-consent-close{position:absolute;top:8px;right:8px;width:44px;height:44px;padding:0;color:#737378;font-size:25px;font-weight:300;line-height:1}
.nss-consent-close:hover{color:#1d1d1f}
.nss-consent-option{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:19px 0;border-top:1px solid #e4e4e7;cursor:pointer}
.nss-consent-option--locked{cursor:default}
.nss-consent-option-title{font-size:14px;font-weight:500;line-height:1.4;letter-spacing:-.01em;text-wrap:initial}
.nss-consent-option-desc{font-size:12px;line-height:1.55;color:#6e6e73;margin-top:5px;max-width:280px}
.nss-consent-pill{font-size:11px;color:#6e6e73;white-space:nowrap;flex-shrink:0}
.nss-consent-switch{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;flex-shrink:0}
.nss-consent-switch input{position:relative;display:block;appearance:none;-webkit-appearance:none;width:38px;height:23px;margin:0;border:0;border-radius:20px;background:#89898e;cursor:pointer;transition:background .18s ease}
.nss-consent-switch input::after{content:"";position:absolute;left:3px;top:3px;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .18s ease}
.nss-consent-switch input:checked{background:#1d1d1f}
.nss-consent-switch input:checked::after{transform:translateX(15px)}
.nss-consent-switch input:focus-visible{outline:2px solid #1d1d1f;outline-offset:4px}
.nss-consent-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;border-top:1px solid #e4e4e7;padding-top:13px;margin-top:3px}
.nss-consent-modal-actions .nss-consent-btn:first-child::after{content:"→";margin-left:12px;font-size:17px;font-weight:400}
@media(max-width:600px){
 .nss-consent-banner{right:12px;bottom:12px;width:calc(100% - 24px);padding:23px 24px 15px;border-radius:16px}
 .nss-consent-actions{gap:0 21px}
 .nss-consent-modal{padding:12px}
 .nss-consent-panel{max-height:calc(100svh - 24px);padding:35px 25px 17px;border-radius:18px}
 .nss-consent-title{font-size:24px}
 .nss-consent-option{gap:16px;padding-block:17px}
}
@media(max-width:360px){
 .nss-consent-banner{padding-inline:20px}
 .nss-consent-actions{column-gap:18px}
 .nss-consent-btn{font-size:12px}
 .nss-consent-panel{padding-inline:22px}
}
@media(forced-colors:active){
 .nss-consent-switch input{appearance:auto;-webkit-appearance:auto}
 .nss-consent-switch input::after{display:none}
 .nss-consent-banner,.nss-consent-panel{border:1px solid CanvasText}
}

/* Clear routes home, including when the logo's purpose is not obvious. */
.global-header .site-menu-trigger:hover { text-decoration:none; }
#site-navigation { scroll-margin-top:calc(var(--mobile-header-height,64px) + 16px); }
.global-mobile-shortcut { display:none; }
.global-page-label { display:none; }
.product-trail { display:none; }
@media(max-width:800px){
 /* Give transparent dark headers the same initial surface as their hero. */
 body:has(>.global-header--dark) { background:linear-gradient(to bottom,#0b0b0b var(--mobile-header-height,64px),var(--paper,#fff) var(--mobile-header-height,64px)); }
 .global-header,.product-page>.global-header--dark {
  position:sticky;top:0;z-index:30;height:auto;min-height:64px;display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;gap:0 14px;
  background:rgba(var(--surface-stone-rgb),.68);color:#1d2225;
  -webkit-backdrop-filter:saturate(160%) blur(22px);backdrop-filter:saturate(160%) blur(22px);
  border-bottom:1px solid rgba(85,99,105,.10);
  box-shadow:0 1px 0 rgba(255,255,255,.30) inset;
 }
 .global-header--dark,.product-page>.global-header--dark {
  background:rgba(12,15,18,.62);color:#f5f5f7;
  border-bottom-color:rgba(255,255,255,.10);box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
 }
 .global-brand { width:72px;margin-right:auto; }
 .global-header .global-brand { display:flex;align-items:center;min-height:44px; }
 .global-page-label { display:block;min-width:0;padding-block:10px;font-size:13px;line-height:1.25;font-weight:500;letter-spacing:-.015em;overflow-wrap:anywhere; }
 .global-mobile-shortcut { display:inline-flex;align-items:center;justify-self:end;gap:6px;min-height:44px;font-size:13px;white-space:nowrap; }
 .product-trail { display:flex;align-items:center;flex-wrap:wrap;gap:0 9px;padding:10px var(--gutter) 0;font-size:12px;line-height:1.45;color:#657078; }
 .product-trail a { display:inline-flex;align-items:center;min-height:44px; }
 .product-trail>span { color:#879097; }
 .product-trail a:hover { text-decoration:underline;text-underline-offset:4px; }
 .product-trail a:focus-visible { outline:2px solid currentColor;outline-offset:2px; }
 .product-page .product-trail { color:#a3a8ac;background:#000; }
 .global-header .global-contact { display:none; }
 .site-menu-trigger { gap:8px; }
 .site-menu-trigger span { font-size:23px;line-height:1;font-weight:300; }
 .global-menu { padding:14px var(--gutter) 30px;background:rgba(var(--surface-stone-rgb),.91);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px); }
 .global-menu::backdrop { background:rgba(29,29,31,.14);backdrop-filter:none; }
 .global-menu-top { min-height:44px;font-size:22px; }
 .global-menu-top button { margin:0;min-height:44px;font-size:14px; }
 .global-menu nav { display:flex;flex-direction:column;gap:0;margin:20px 0 25px; }
 .global-menu nav a { display:flex;align-items:center;min-height:48px;font-size:28px;line-height:1.2;padding-block:8px; }
 .global-menu nav .menu-secondary {font-size:17px;letter-spacing:-.015em;min-height:44px; }
 .global-menu nav .menu-secondary-first { margin-top:22px;padding-top:22px;border-top:1px solid rgba(105,115,122,.17); }
 .global-menu .global-languages { margin-top:0;gap:8px 24px; }
 .global-menu .global-languages a,.global-menu .menu-legal a { min-height:44px;display:inline-flex;align-items:center; }
 .global-menu .menu-legal { margin-top:8px; }
 .global-menu nav a[aria-current] { text-decoration:underline;text-underline-offset:6px;font-weight:500;color:inherit; }
 html { scroll-padding-top:0; }
 main [id],#main { scroll-margin-top:calc(var(--mobile-header-height,64px) + 16px)!important; }
 /* The content trail replaces duplicate local navigation on small screens. */
 body #main :is(.product-local-nav,.sp-local-nav,.controls-nav,.ap-back) { display:none; }
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 @media(max-width:800px){.global-header{background:var(--surface-stone)}.global-header--dark,.product-page>.global-header--dark{background:#101316}.global-menu{background:var(--surface-stone)}}
}
@media(max-width:800px) and (prefers-reduced-transparency:reduce){
 .global-header{background:var(--surface-stone)}.global-header--dark,.product-page>.global-header--dark{background:#101316}.global-menu{background:var(--surface-stone)}
}
/* Safari samples the page background and the element at the top viewport edge
   for its status bar. Keep an opaque homepage header and a real background
   colour beneath the existing gradient (which still paints the white page). */
@media(max-width:800px){
 html:has(>.home-page),body.home-page { background-color:#0b0b0b; }
 :where(.home-page)>.global-header--dark { background:#0b0b0b;-webkit-backdrop-filter:none;backdrop-filter:none; }
 html:has(>.home-page.site-menu-open),body.home-page.site-menu-open { background-color:var(--surface-stone); }
 :where(.home-page)>.global-menu { background:var(--surface-stone);-webkit-backdrop-filter:none;backdrop-filter:none; }
}
@media(forced-colors:active){.global-header,.global-header--dark,.product-page>.global-header--dark,.global-menu{background:Canvas;color:CanvasText;border-bottom:1px solid CanvasText;backdrop-filter:none}}
@media(max-width:360px){
 .global-header,.product-page>.global-header--dark { column-gap:9px;grid-template-columns:64px minmax(0,1fr) auto auto; }
 .global-brand { width:64px; }
 .global-page-label { font-size:12px; }
 .global-mobile-shortcut,.site-menu-trigger { font-size:12px; }
}

/* Product section choices live inside the existing compact mobile header. */
.product-page-menu{display:none}
.package-return[hidden]{display:none!important}
@media(min-width:801px){
 .product-trail:has(.package-return:not([hidden])){display:flex;padding:12px var(--gutter);font-size:13px;line-height:1.4;color:#657078}
 .product-trail:has(.package-return:not([hidden]))>:not(.package-return){display:none}
 .product-trail .package-return{display:inline-flex;align-items:center;min-height:44px}
 .product-trail .package-return:hover{text-decoration:underline;text-underline-offset:4px}
 .product-trail .package-return:focus-visible{outline:2px solid currentColor;outline-offset:3px}
 body:has(>.global-header--dark) .product-trail:has(.package-return:not([hidden])){color:#b7bec1;background:var(--package-return-surface,#000)}
 .mixpads-story-page{--package-return-surface:#222b30}
 .lighting-linearpedant{--package-return-surface:#241d19}
 .sensor-product-smoke{--package-return-surface:#202124}
 .mixswitch-product{--package-return-surface:#090a0a}
}
.product-image-caption{margin:12px auto 0;color:#737b80;font-size:12px;line-height:1.5}
.compare-intro-help{margin-top:18px}
@media(max-width:800px){
 .global-header .product-page-menu{display:block;min-width:0}
 .product-page-menu>summary{list-style:none;display:flex;align-items:center;gap:7px;min-height:44px;cursor:pointer;font-size:13px;line-height:1.25;font-weight:500;letter-spacing:-.015em}
 .product-page-menu>summary::-webkit-details-marker{display:none}
 .product-page-menu>summary>span:first-child{min-width:0;overflow-wrap:anywhere}
 .product-menu-chevron{width:6px;height:6px;flex:0 0 6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin:-4px 3px 0 0}
 .product-page-menu[open] .product-menu-chevron{transform:rotate(225deg);margin-top:4px}
 .product-page-menu-links{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;padding:12px var(--gutter) 20px;background:var(--surface-stone);color:#1d2225;border-bottom:1px solid #d5dbdb;box-shadow:0 16px 25px -20px #0005;max-height:calc(100dvh - var(--mobile-header-height,64px));overflow-y:auto;overscroll-behavior:contain}
 .global-header--dark .product-page-menu-links{background:#111518;color:#f5f5f7;border-color:#33393d}
 .product-page-menu-links a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:9px 0;font-size:16px;line-height:1.35}
 .product-page-menu-links .product-menu-enquire{border-top:1px solid #8c93954d;margin-top:7px;padding-top:14px}
 .product-page-menu :is(summary,a):focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:2px}
 .product-trail .package-return{flex-basis:100%;color:inherit}
}
@media(max-width:360px){.product-page-menu>summary{font-size:12px;gap:5px}}
@media(forced-colors:active){.product-page-menu-links,.global-header--dark .product-page-menu-links{background:Canvas;color:CanvasText;border-color:CanvasText}}

/* Legacy enquiry sections share the title token defined in the title hierarchy
   below. The same token also applies to the current closing lead generator. */
#main :is(.contact,.product-enquiry,.sp-enquiry,.controls-enquiry,.ap-enquiry,.mp-enquiry,.ss-enquiry,.curtain-enquiry,.ips-enquiry,.ls-enquiry,.cs-enquiry,.ts-enquiry,.planning-invitation,.installation-invitation,.packages-quotation,.systems-fit,.compare-help) h2{font-size:var(--heading-enquiry-size);font-weight:400;line-height:1.15;letter-spacing:-.035em}

/* Shared closing lead generator, including legacy product section names. */
#main .lead-generator{display:block;width:100%;max-width:none;margin:0;padding:88px 0;background:var(--surface-stone);color:#1d2225;text-align:center;border:0;border-radius:0}
#main .lead-generator .lead-generator-inner{display:block;max-width:960px;margin:0 auto;padding:0 var(--gutter);text-align:center}
#main .lead-generator .lead-generator-label{margin:0 0 20px;color:#666461;font-size:14px;line-height:1.5;letter-spacing:0;font-weight:400;text-transform:none}
#main .lead-generator h2{max-width:800px;margin:0 auto;font-size:var(--heading-enquiry-size);font-weight:400;line-height:1.15;letter-spacing:-.035em;text-wrap:balance;color:#1d2225}
#main .lead-generator .lead-generator-copy{max-width:580px;margin:24px auto 0;font-size:18px;line-height:1.65;color:#62686b;text-wrap:pretty}
#main .lead-generator .lead-generator-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 34px;margin:30px 0 0}
#main .lead-generator .text-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;margin:0;padding:0;color:#1d2225;font-size:16px;line-height:1.5;text-align:center;white-space:normal;border:0}
#main .lead-generator .text-link:focus-visible{outline:2px solid currentColor;outline-offset:5px;border-radius:2px}
#main .lead-generator .lead-generator-related{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin:22px 0 0;color:#62686b}
#main .lead-generator .lead-generator-related a{font-size:14px;color:inherit}
@media(max-width:760px){
 #main .lead-generator{padding:64px 0}
 #main .lead-generator .lead-generator-copy{font-size:16px;margin-top:20px}
 #main .lead-generator .lead-generator-actions{flex-direction:column;gap:7px;margin-top:24px}
 #main .lead-generator .lead-generator-label{margin-bottom:16px}
}

/* Shared title hierarchy. Page styles own composition and margins; this layer
   owns typography even when a legacy page stylesheet is loaded after site.css.
   Only the four type properties need !important to keep that contract stable. */
:root {
 --heading-page-size:clamp(40px,4.45vw,64px);
 --heading-section-size:clamp(40px,3.9vw,56px);
 --heading-card-size:clamp(22px,2vw,28px);
 --heading-support-size:24px;
 --heading-enquiry-size:var(--heading-section-size);
}
#main h1 {
 --title-size:var(--heading-page-size);
 --title-leading:1.08;
 --title-tracking:-.045em;
}
#main h2 {
 --title-size:var(--heading-section-size);
 --title-leading:1.12;
 --title-tracking:-.04em;
}
#main h3 {
 --title-size:var(--heading-card-size);
 --title-leading:1.25;
 --title-tracking:-.025em;
}
/* These feature headlines are h3s in the document outline, but introduce a
   full image-led chapter and use the same scale as the other major sections. */
#main :is(.c1-heading,.g1-feature-copy,.film-story) h3 {
 --title-size:var(--heading-section-size);
 --title-leading:1.12;
 --title-tracking:-.04em;
}
/* Product names in lists/comparisons are cards, even where the outline uses h2. */
#main :is(.compare-product,.sensors-index-item) h2 {
 --title-size:var(--heading-card-size);
 --title-leading:1.25;
 --title-tracking:-.025em;
}
/* Reference material and FAQ introductions sit below the visual story. Keep
   them legible without giving each support heading the weight of a new chapter. */
#main :is(.legal-copy,.technical-specs,.installation-questions,.compare-fit,.compare-specs) h2 {
 --title-size:var(--heading-support-size);
 --title-leading:1.25;
 --title-tracking:-.025em;
}
#main :is(h1,h2,h3):not(:where(dialog *,[role="dialog"] *,summary *,.eyebrow,.sp-eyebrow,.section-label,.sr-only,.systems-sr,[hidden])) {
 font-size:var(--title-size)!important;
 line-height:var(--title-leading)!important;
 letter-spacing:var(--title-tracking)!important;
 font-weight:400!important;
}
/* German compounds retain the shared title size. Prefer language-aware word
   breaks, with a containment fallback where a hyphenation dictionary is absent. */
#main :is(h1,h2,h3):lang(de):not(:where(dialog *,[role="dialog"] *,summary *,.eyebrow,.sp-eyebrow,.section-label,.sr-only,.systems-sr,[hidden])) {
 -webkit-hyphens:auto;
 hyphens:auto;
 overflow-wrap:anywhere;
}
@media(max-width:760px) {
 :root {
  --heading-page-size:40px;
  --heading-section-size:40px;
  --heading-card-size:24px;
 }
}

/* Shared mobile controls stay readable and easy to reach without introducing
   another navigation bar or covering the photography with fixed actions. */
@media(max-width:800px) {
 .global-header { column-gap:10px; grid-template-columns:64px minmax(0,1fr) auto auto; }
 .global-header .global-brand { width:64px; }
 .global-page-label,.global-mobile-shortcut,.site-menu-trigger,
 .product-page-menu>summary { font-size:15px; line-height:1.35; }
 .global-mobile-shortcut,.site-menu-trigger,.product-page-menu>summary { min-height:48px; }
 .product-page-menu-links a { font-size:18px; min-height:52px; }
 .global-menu nav .menu-secondary { font-size:20px; min-height:48px; }
 .global-menu :is(.global-languages a,.menu-legal a) { font-size:16px; min-height:48px; }
 #main .lead-generator .text-link { font-size:18px; min-height:48px; }
 #main .lead-generator .lead-generator-copy { font-size:18px; line-height:1.6; }
 #main :is(.chapter-summary,.body-copy,.c1-summary) { font-size:18px; line-height:1.6; }
}
@media(max-width:360px) {
 .global-header { column-gap:8px; grid-template-columns:54px minmax(0,1fr) auto auto; }
 .global-header .global-brand { width:54px; }
}
