.header-estimate,.hero-call{display:none}.range-advice-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.range-advice-grid>article{padding:30px;background:#f8fafd;border:1px solid #dce5ef;min-width:0}.range-advice-grid h3,.range-advice-grid .journal-card h2{font-size:1.35rem;line-height:1.35;margin:0 0 18px}.range-advice-grid p{font-size:.93rem;line-height:1.9;color:#425974;margin:0}.range-advice-grid .journal-card{background:white}.header-estimate:focus-visible,.mobile-contact>a:focus-visible,.menu-toggle:focus-visible{outline:3px solid #0b2b50;outline-offset:3px}.compare-content{overflow-x:auto;overscroll-behavior-x:contain}.compare-content td{min-width:140px}.compare-content .button{white-space:normal}.mobile-contact .icon{flex-shrink:0}
@media(max-width:900px){
 .site-header .header-client{display:none}.site-header .header-estimate{order:3;display:inline-flex;align-items:center;justify-content:center;margin-left:auto;gap:9px;min-height:44px;padding:11px 15px;white-space:nowrap;font-size:12px}.header-estimate .icon{width:15px;height:15px}.site-header .menu-toggle{order:4;flex-shrink:0}.site-header .main-nav{margin-left:0}.site-header .nav-wrap{gap:14px}.site-header .main-nav a{min-height:44px}.site-header .main-nav .dropdown a{display:flex;align-items:center;padding:12px 8px;line-height:1.6;font-size:14px}.main-nav{scroll-padding-bottom:100px;max-height:calc(100dvh - 155px)}
 .mobile-contact{position:fixed;inset:auto 0 0;z-index:55;display:grid;grid-template-columns:1fr 1.1fr 1fr;background:white;border-top:1px solid #dbe5f1;box-shadow:0 -3px 20px #14202b13;padding:0 0 env(safe-area-inset-bottom);margin:0}.mobile-contact>a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:62px;padding:14px 9px;font-size:12px;font-weight:700;line-height:1.3;white-space:nowrap}.mobile-contact>a.mobile-quote{color:white;background:#006afe}.mobile-contact>a.mobile-client{color:#173a62;background:#f2f6fc}.mobile-contact>a.mobile-call{color:#173a62;background:white}.mobile-contact .icon{width:17px;height:17px}.site-footer .price-notice{padding-bottom:35px}body{padding-bottom:calc(74px + env(safe-area-inset-bottom));scroll-padding-bottom:100px}.compare-bar{bottom:calc(76px + env(safe-area-inset-bottom));min-width:0;width:calc(100% - 28px);max-width:620px}.hero-call{display:inline-flex}.hero-catalogue{display:none}.hero-actions .hero-call{color:#163a61;font-size:13px;gap:8px;max-width:none;white-space:nowrap}.hero-actions .hero-call .icon{width:18px;height:18px}.hero-actions .button{font-size:13px;min-height:48px}.hero-actions{gap:22px;flex-direction:row;align-items:center;flex-wrap:wrap}.personal-offer-form input:not([type=checkbox]),.personal-offer-form select,.personal-offer-form textarea,.project-form input:not([type=checkbox]):not([type=radio]),.project-form select,.project-form textarea,.inquiry-form input:not([type=checkbox]),.inquiry-form select,.inquiry-form textarea,.catalogue-filters input,.catalogue-filters select{font-size:16px;min-height:48px}.commune-picker .commune-search{font-size:16px}.commune-results button{min-height:48px;font-size:14px}.family-tabs button{min-height:44px;font-size:12px;padding:10px 14px}.range-advice-grid{gap:20px}
 body:has(input:focus,textarea:focus,select:focus) .mobile-contact{display:none}
}
@media(max-width:640px){
 .site-header .nav-wrap{height:78px;min-height:78px}.main-nav{top:78px;max-height:calc(100dvh - 150px)}.header-estimate{font-size:12px}.site-header .brand{width:auto}.hero-content{padding-top:28px}.hero-content .eyebrow{font-size:9px;margin-bottom:18px;line-height:1.8}.hero-content h1{font-size:clamp(42px,11vw,53px)}.hero-description{font-size:14px;line-height:1.8;margin-top:20px;max-width:100%}.hero-actions{margin-top:22px;gap:18px}.hero-actions .button{font-size:12px;padding:14px 17px;gap:12px}.hero-actions .hero-call{font-size:12px}.hero-price{font-size:1rem;margin-top:20px}.hero-price small{font-size:.73rem;line-height:1.7;max-width:300px}.hero-visual{margin-top:25px;height:270px}.model-specs{font-size:.78rem;gap:10px;line-height:1.7;flex-wrap:wrap}.model-card .model-body h3{font-size:1.6rem}.model-card .model-body>p:not(.model-tag){font-size:.88rem;line-height:1.8;min-height:0}.model-card .model-body>.model-comfort{font-size:.75rem!important}.model-card .model-tag{font-size:.72rem}.model-bottom small{font-size:.7rem;line-height:1.7}.model-bottom strong{font-size:1.15rem}.model-bottom strong span{font-size:.8rem}.catalogue-filters{gap:16px}.catalogue-filters label{font-size:.8rem}.model-count{font-size:.85rem}.section-note{font-size:.8rem;line-height:1.8}.page-intro .lead{font-size:14px;line-height:1.85}.prose p,.prose li{font-size:15px;line-height:1.9}.range-advice-grid{grid-template-columns:1fr}.range-advice-grid>article{padding:25px}.range-advice-grid p{font-size:14px}.mobile-contact>a{font-size:11px;gap:6px;min-height:60px;padding-inline:7px}.compare-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 110px);padding:30px 18px}.compare-dialog h2{font-size:1.7rem}.compare-content th,.compare-content td{font-size:13px;line-height:1.7}.footer-bottom{gap:15px}.footer-bottom a{min-height:40px;display:inline-flex;align-items:center}
}
@media(max-width:380px){.site-header .nav-wrap{gap:7px}.site-header .brand{gap:5px;max-width:124px}.site-header .brand-symbol{width:39px;height:38px}.site-header .brand-word{width:78px;height:41px}.site-header .header-estimate{font-size:11px;padding:11px 12px;gap:6px}.hero-actions{gap:14px}.hero-actions .button{font-size:11px;padding-inline:14px}.mobile-contact>a{font-size:10px;gap:5px;padding-inline:5px}.mobile-contact .icon{width:15px;height:15px}}
@media print{.header-estimate,.mobile-contact{display:none!important}body{padding-bottom:0}.range-advice-grid{grid-template-columns:1fr 1fr}.range-advice-grid>article{break-inside:avoid}}

/* Brand contact bar: shared geometry and real labels, on every screen. */
html body{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}
html body nav.mobile-contact{
 display:grid!important;grid-template-columns:1fr 1.35fr 1fr!important;
 position:fixed!important;top:auto!important;left:50%!important;right:auto!important;
 bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
 transform:translateX(-50%)!important;z-index:80!important;
 width:min(760px,calc(100% - 24px))!important;
 box-sizing:border-box!important;margin:0!important;padding:8px!important;gap:8px!important;
 background:#fff!important;border:1px solid #dce5ef!important;border-radius:12px!important;
 box-shadow:0 4px 24px #173a621a!important
}
html body nav.mobile-contact>a{
 display:flex!important;flex-direction:row!important;align-items:center!important;
 justify-content:center!important;gap:8px!important;min-width:0!important;
 height:52px!important;min-height:52px!important;box-sizing:border-box!important;
 margin:0!important;padding:10px 12px!important;border:1px solid #dce5ef!important;
 border-radius:7px!important;background:#fff!important;color:#173a62!important;
 font-size:14px!important;font-weight:700!important;line-height:20px!important;
 text-align:center!important;text-decoration:none!important;white-space:normal!important
}
html body nav.mobile-contact>a::before,
html body nav.mobile-contact>a::after{content:none!important}
html body nav.mobile-contact>a .contact-label{
 display:block;min-width:0;max-width:100%;margin:0;padding:0;
 font:inherit;line-height:inherit;letter-spacing:0;overflow-wrap:normal;word-break:normal
}
html body nav.mobile-contact>a .icon{
 display:block!important;flex:0 0 18px!important;width:18px!important;height:18px!important;
 margin:0!important;color:inherit!important
}
html body nav.mobile-contact>a.mobile-quote{
 background:#006afe!important;border-color:#006afe!important;color:#fff!important;font-size:14px!important
}
html body nav.mobile-contact>a.mobile-client{
 background:#f2f6fc!important;color:#173a62!important;font-size:14px!important
}
@media(hover:hover){
 html body nav.mobile-contact>a:hover{background:#edf4ff!important;border-color:#8cbaff!important}
 html body nav.mobile-contact>a.mobile-quote:hover{background:#0053cb!important;border-color:#0053cb!important}
}
html body nav.mobile-contact>a:focus-visible{outline:3px solid #006afe!important;outline-offset:3px!important}
html body .compare-bar{bottom:calc(96px + env(safe-area-inset-bottom,0px));z-index:81}
@media(max-width:600px){
 html body nav.mobile-contact{
  width:calc(100% - 16px)!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
  grid-template-columns:1fr 1.25fr 1fr!important;padding:6px!important;gap:6px!important
 }
 html body nav.mobile-contact>a,
 html body nav.mobile-contact>a.mobile-quote,
 html body nav.mobile-contact>a.mobile-client{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:18px 32px!important;align-content:center!important;justify-items:center!important;
  gap:4px!important;height:70px!important;min-height:70px!important;
  padding:8px 4px!important;font-size:12px!important;line-height:16px!important
 }
 html body nav.mobile-contact>a .contact-label{
  display:flex;align-items:center;justify-content:center;align-self:stretch;width:100%;min-height:32px
 }
 html body .compare-bar{bottom:calc(104px + env(safe-area-inset-bottom,0px))}
}
html body:has(dialog[open]) nav.mobile-contact{display:none!important}
@media(max-width:700px){
 html body:has(form :is(input,textarea,select):focus) nav.mobile-contact{display:none!important}
}
@media print{
 html body nav.mobile-contact{display:none!important}
 html body{padding-bottom:0!important}
}

/* Persistent disclosure navigation: a click opens the choices, only links navigate. */
.site-header .main-nav .submenu-toggle{
 display:flex;align-items:center;justify-content:center;gap:7px;min-height:90px;
 padding:20px 0;margin:0;border:0;background:transparent;color:var(--ink,#14202b);
 font-family:inherit;font-size:12px;font-weight:650;line-height:1.5;text-align:left;cursor:pointer
}
.site-header .main-nav .submenu-toggle>span{font:inherit;color:inherit;margin:0}
.site-header .submenu-chevron{display:block;width:13px;height:13px;flex:0 0 13px;transition:transform .16s}
.site-header .submenu-toggle[aria-expanded="true"]{color:#006afe}
.site-header .submenu-toggle[aria-expanded="true"] .submenu-chevron{transform:rotate(180deg)}
.site-header .main-nav .submenu-toggle:focus-visible{outline:3px solid #006afe;outline-offset:3px;border-radius:4px}
.site-header .main-nav .has-dropdown>.dropdown{
 display:block;top:100%;left:-18px;opacity:1;visibility:visible;transform:none;transition:none;
 width:320px;min-width:0;max-width:calc(100vw - 32px);box-sizing:border-box;
 max-height:calc(100dvh - 196px);overflow-y:auto;overscroll-behavior-y:contain;
 padding:12px 20px;background:#fff;border:1px solid #dce5ef;border-radius:8px
}
.site-header .main-nav .dropdown[hidden]{display:none!important}
.site-header .main-nav .has-dropdown:nth-last-child(2)>.dropdown{left:auto;right:0}
.site-header .main-nav .dropdown>a{display:flex;align-items:center;min-height:44px;padding:11px 0;line-height:1.55;white-space:normal}
.site-header .main-nav .dropdown>a:first-child{border-top:0}
.site-header .main-nav .dropdown>a:focus-visible{outline:2px solid #006afe;outline-offset:2px}
@media(min-width:901px) and (max-width:1280px){
 .site-header .main-nav .submenu-toggle{font-size:11px;gap:5px}
}
@media(max-width:900px){
 .site-header .main-nav{max-height:calc(100dvh - 190px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior-y:contain;padding-bottom:20px}
 .site-header .main-nav .submenu-toggle{
  justify-content:space-between;width:100%;min-height:52px;padding:14px 0;
  border-bottom:1px solid #dce5ef;font-size:14px;line-height:1.6
 }
 .site-header .submenu-chevron{width:17px;height:17px;flex-basis:17px}
 .site-header .main-nav .has-dropdown>.dropdown{
  position:static;width:100%;max-width:100%;max-height:none;margin:0 0 8px;
  padding:6px 16px;background:#f2f6fc;box-shadow:none;border-radius:0 0 8px 8px
 }
 .site-header .main-nav .dropdown>a{min-height:48px;padding:12px 0;font-size:14px;line-height:1.6}
}
@media(prefers-reduced-motion:reduce){.site-header .submenu-chevron{transition:none}}


