/* Keep the live scene above the controls while editing on a phone. */
@media(max-width:760px){
 .planner{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding:0 5% 32px;isolation:isolate}
 .planner>.plannerStage{display:contents;animation:none}
 .plannerStage>.houseViewport{grid-column:1;grid-row:1;position:sticky;top:0;z-index:5;align-self:start;width:100%;height:clamp(175px,29svh,250px);aspect-ratio:auto;background:#e8ece3;border-radius:0 0 12px 12px;box-shadow:0 8px 18px #19253220}
 .plannerStage>.houseViewport svg{object-fit:contain}
 .planner>.plannerControls{grid-column:1;grid-row:2;padding:18px 14px;animation:none;min-width:0}
 .plannerStage>.stageBar{grid-column:1;grid-row:3;border-radius:6px}
 .plannerStage>.designerExtras{grid-column:1;margin:0}
 .plannerStage>.eavesPermanent{grid-column:1;grid-row:6;margin-top:0;padding-top:8px}
 .planner .designerSteps{gap:5px;margin-bottom:16px}
 .planner .designerSteps button{min-height:58px;padding:8px 3px}
 .planner .finishOption{min-height:52px}
 .planner :is(button,summary){scroll-margin-top:calc(29svh + 16px)}
 .showroomSlide,.showroomSlide[data-orientation=landscape]{height:auto;align-self:flex-start;align-content:start;grid-template-rows:auto auto}
 .showroomSlide figcaption,.showroomSlide[data-orientation=landscape] figcaption{min-height:0;padding:20px 18px;gap:14px;align-items:flex-start;justify-content:flex-start}
 .showroomSlide figcaption h2,.showroomSlide[data-orientation=landscape] figcaption h2{font-size:24px;margin:6px 0 10px}
 .showroomSlide figcaption p{font-size:13px;line-height:1.65}
 .showroomSlide .showroomPhotoNumber{font-size:30px}
 .showroomGalleryTop{flex-wrap:wrap;gap:6px}
}
/* Responsive layout repair: fixed image tracks, readable controls and unobstructed pages. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
*,*:before,*:after{box-sizing:border-box}
.products{grid-template-columns:repeat(4,minmax(0,1fr))}
.products .product,.products .product>*{min-width:0}
.products.productList .product{grid-template-columns:112px minmax(0,1fr) 160px;grid-template-rows:auto auto auto;column-gap:24px;row-gap:6px;align-items:center;padding:18px}
.products.productList .product>.productArt{grid-column:1;grid-row:1/4;width:112px;height:112px;aspect-ratio:1;min-width:0;align-self:center}
.products.productList .product>small{grid-column:2;grid-row:1;margin:0;display:block;font-size:11px!important}
.products.productList .product>h3{grid-column:2;grid-row:2;margin:0;font-size:16px;line-height:1.45}
.products.productList .product>p{grid-column:2;grid-row:3;margin:0;font-size:13px;line-height:1.5}
.products.productList .product>.textLink{grid-column:3;grid-row:1/4;margin:0;border:0;min-height:44px;align-items:center;gap:8px;padding:10px 0}
.products.productList .productArt>img{display:block;width:100%;height:100%;padding:6px;object-fit:contain}
.mobileNavToggle{display:none}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #126b35;outline-offset:3px}
@media(max-width:1050px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 body>header,body.scrolled>header{position:relative;top:auto;padding:12px 5%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;box-shadow:none;backdrop-filter:none;background:#fff;transition:none}
 header .brand{min-width:0;gap:8px}header .brand img{width:40px;height:40px;flex-shrink:0}header .brand span{display:block;font-size:9px;letter-spacing:.5px;line-height:1.5}header .brand b{font-size:8px}
 header .account{display:none}header .basketBtn{margin:0;padding:9px 10px;font-size:12px;min-height:44px;border-radius:5px}header .basketBtn b{min-width:22px;height:22px;margin-left:5px}
 header .search{grid-column:1/-1;order:0;width:100%;min-width:0;margin:0;padding:6px 10px;gap:8px;border-radius:6px;min-height:48px}header .search input{min-width:0;font-size:16px;flex:1;width:0}header .searchSubmit{font-size:13px;min-height:36px;padding:4px 6px}header .searchSubmit span{display:none}
 .searchSuggestions{max-height:55dvh}
 .mobileNavToggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:12px 5%;border:0;border-block:1px solid var(--line);background:#fff;color:var(--ink);font:600 13px var(--body);text-align:left}.mobileNavToggle>span:last-child{font-size:22px}
 body>nav{display:flex;flex-wrap:nowrap;overflow-x:auto;padding:0 5%;gap:20px;z-index:2}body>nav>a,body>nav>a:nth-of-type(n){display:block;min-height:44px;padding:13px 0;font-size:13px}
 .mobileNavReady body>nav{display:none}.mobileNavReady body>nav.mobileNavOpen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:8px 5% 16px;white-space:normal}.mobileNavOpen>a{border-bottom:1px solid #eee;line-height:1.4}
 .service{padding:8px 5%;font-size:10px}.service>span:last-child{display:none}.readingProgress{display:none}
 .pageIntro{padding:28px 5% 20px}.pageIntro h1{font-size:clamp(32px,8vw,44px);line-height:1.1;letter-spacing:-1px}.pageIntro>p{font-size:14px}
 .wrap.catalogue{padding:0 5% 36px}.filterBar{gap:8px;margin-bottom:18px}.filterBar button{min-height:44px;padding:10px 13px;font-size:13px}.filterBar select{width:100%;min-width:0;min-height:46px;font-size:16px;margin:0;border-radius:6px}
 .catalogueTools{gap:12px;margin:18px 0 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.catalogueTools>label{min-width:0;max-width:none;font-size:12px}.catalogueTools select{font-size:16px;min-height:46px;border-radius:6px}.catalogueTools .viewControls{margin:0;gap:0;border:1px solid var(--line);border-radius:6px;overflow:hidden}.viewControls button{min-height:46px;padding:10px 12px;border:0;font-size:13px}.catalogueCount{font-size:12px;line-height:1.6;margin:14px 0 20px}
 .products{gap:12px}.products .product{padding:10px;border-radius:6px}.products .product h3{font-size:13px;line-height:1.45}.products .product p{font-size:12px;line-height:1.55}.products .product small{font-size:10px!important;letter-spacing:.6px;margin:12px 0 8px}.products .product>.textLink{font-size:12px;min-height:44px;align-items:center}.products:not(.productList) .product h3{min-height:0}.products:not(.productList) .product>.productArt>img{padding:6px}
 .products.productList .product{grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto auto auto;gap:7px 14px;padding:12px;align-items:start}.products.productList .product>.productArt{grid-column:1;grid-row:1/4;width:88px;height:88px;align-self:start}.products.productList .product>small{display:none}.products.productList .product>h3{grid-column:2;grid-row:1;font-size:14px;line-height:1.45}.products.productList .product>p{grid-column:2;grid-row:2;font-size:12px}.products.productList .product>.textLink{grid-column:2;grid-row:3;border-top:1px solid var(--line);padding:8px 0 0;min-height:40px;font-size:12px}
 .merchantRange .sectionHead{flex-direction:column;gap:12px}.merchantRange .sectionHead h2{font-size:34px;max-width:320px;margin-bottom:0}.familyGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.familyCard h3{font-size:16px;line-height:1.3;letter-spacing:-.3px}.familyCard p{font-size:13px;line-height:1.55}.merchantServices b{font-size:13px}.merchantServices span{font-size:12px;line-height:1.55}
 .heroSlideBar{flex-wrap:wrap;gap:14px}.slideButtons button{min-width:44px;min-height:44px}.merchantHeroCopy{padding-bottom:155px}.merchantHero h1{font-size:clamp(42px,11vw,60px)}
 .refinedProduct .productOrderForm select,.quantityAndQuote input{font-size:16px}.quantityAndQuote{grid-template-columns:76px minmax(0,1fr)}.quantityAndQuote .btn{white-space:normal;line-height:1.4}
 .footerCallout{align-items:flex-start;flex-direction:column}.footerColumns{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footerAddress{grid-column:1/-1}.footerColumns a{overflow-wrap:anywhere}
 .cookieBanner{bottom:12px;left:12px;right:12px;max-height:70dvh;overflow:auto;padding:18px;gap:14px;flex-direction:column;align-items:stretch}.cookieBanner .cookieButtons{max-width:none;flex-direction:row}.cookieButtons button{flex:1;min-height:44px}
}
@media(max-width:360px){header .brand span{font-size:8px}header .brand b{font-size:7px}header .brand img{width:34px;height:34px}header .basketBtn{font-size:11px;padding:8px}.products.productList .product{grid-template-columns:68px minmax(0,1fr);gap:8px 10px}.products.productList .product>.productArt{width:68px;height:68px}.catalogueTools{grid-template-columns:1fr}.catalogueTools .viewControls{justify-self:start}}
@media(hover:none){.product:hover,.familyCard:hover img{transform:none}.motionReady{opacity:1;transform:none}}

.enquiryTrap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}.formGrid[hidden]{display:none!important}.formGrid button:disabled{opacity:.65;cursor:wait}#preparedEnquiry:empty{display:none}#preparedEnquiry{scroll-margin-top:100px}

/* Clear, comfortable enquiry forms and visible contact routes. */
.contactNav{font-weight:800;color:var(--red)}
.heroContact{background:transparent;border:1px solid #fff9;color:white}
.heroContact:hover{background:#fff;color:#192532}
.enquiryFieldGuide{font-size:13px;color:var(--muted);margin:14px 0 0}
.formGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}
.formGrid>label{min-width:0;line-height:1.5}
.formGrid .enquiryWide,.formGrid>.sample,.formGrid>button{grid-column:1/-1}
.fieldRequired,.fieldOptional{display:inline-block;font-size:11px;font-weight:500;margin-left:5px;color:var(--muted)}
.fieldRequired{color:var(--red)}
.formGrid input,.formGrid select,.formGrid textarea{border-radius:7px;min-height:48px;transition:border-color .18s,box-shadow .18s}
.formGrid textarea{min-height:130px}
.formGrid input:focus,.formGrid textarea:focus,.formGrid select:focus{outline:2px solid var(--navy);outline-offset:2px;border-color:var(--navy)}
.formGrid>.sample{margin:0;font-weight:400;line-height:1.6}
.formGrid>button{width:100%;border-radius:7px;min-height:52px}
#preparedEnquiry .notice{margin-top:20px;padding:22px;border-radius:9px;border:1px solid var(--line);overflow-wrap:anywhere}
#preparedEnquiry .notice h3{margin-top:0;font-size:21px}
#preparedEnquiry .notice p{font-size:14px}
[data-theme=night] .fieldRequired{color:#ffafa7}
@media(max-width:620px){.formGrid{grid-template-columns:minmax(0,1fr);gap:17px}.formGrid input,.formGrid select,.formGrid textarea{font-size:16px}.merchantHeroCopy .actions{gap:12px}.merchantHeroCopy .heroPhone{flex-basis:100%;margin-top:4px}}
@media(prefers-reduced-motion:reduce){.formGrid input,.formGrid select,.formGrid textarea{transition:none}}

/* A balanced showroom invitation, using the real showroom photograph. */
.merchantShowroom{max-width:1180px;width:92%;margin:56px auto;padding:clamp(20px,3vw,40px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,60px);align-items:center;border-radius:12px}
.merchantShowroom>img{width:100%;max-width:none;height:510px;aspect-ratio:auto;object-fit:cover;object-position:50% 63%;border-radius:7px}
.merchantShowroom>div{padding:12px 0;max-width:490px;justify-self:center}
.merchantShowroom h2{font-size:clamp(30px,3.1vw,45px)}
.showroomHomeActions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin:22px 0}
.merchantShowroom .showroomHomeNote{display:block;margin:22px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:13px;line-height:1.8}
.rangeAvailability{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;background:#eee9dd;border-left:3px solid var(--green);margin:0 0 26px;border-radius:0 8px 8px 0}
.rangeAvailability p{margin:5px 0 0;font-size:14px;max-width:720px}.rangeAvailability .textLink{flex-shrink:0}.productRangeNote{margin:36px 0}
.bathroomWelcome{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,70px);align-items:center;padding-bottom:70px}.bathroomWelcome img{width:100%;height:560px;object-fit:cover;object-position:50% 65%;border-radius:10px}.bathroomWelcome article{min-width:0}.bathroomWelcome h2{font-size:clamp(30px,3.5vw,45px)}
[data-theme=night] .rangeAvailability{background:#202c2a}
@media(max-width:700px){.merchantShowroom{grid-template-columns:1fr;padding:20px;gap:22px;margin:32px auto}.merchantShowroom>img{height:380px;max-width:none;object-position:50% 65%}.merchantShowroom>div{padding:0;max-width:none;justify-self:stretch}.rangeAvailability{align-items:flex-start;flex-direction:column;gap:13px;padding:18px}.rangeAvailability .textLink{white-space:normal}.bathroomWelcome{grid-template-columns:1fr;gap:26px}.bathroomWelcome img{height:380px}.showroomHomeActions{gap:16px}}

/* Forms follow their panel width, rather than the width of the screen. */
.dateHelp{padding:14px 16px;background:#edf0e7;border-radius:6px;border-left:3px solid var(--green)}
.dateHelp p{font-size:13px;line-height:1.65;margin:0 0 8px}.dateHelp p:last-child{margin-bottom:0}.dateHelp a{text-decoration:underline;text-underline-offset:3px}
.dateError{flex-basis:100%;font-size:13px;font-weight:500;color:#ac211b;line-height:1.5}.dateError:empty{display:none}
.preferredDateField input{font-variant-numeric:tabular-nums;letter-spacing:.5px}
#basketBody,#enquiryPanel{container-type:inline-size;min-width:0}
.formGrid{grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.formGrid>label:not(.enquiryTrap){display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 6px;font-size:14px;line-height:1.5}
.formGrid .fieldRequired,.formGrid .fieldOptional{margin-left:0;font-size:11px}
.formGrid input,.formGrid select,.formGrid textarea{flex:0 0 100%;min-width:0;max-width:100%;margin:5px 0 0;font-size:16px;font-weight:400;color:var(--ink)}
.formGrid input[type=hidden],.formGrid [hidden]{display:none!important}
.formGrid textarea{min-height:132px}
.formGrid .sample a{text-decoration:underline;text-underline-offset:3px}
@container(min-width:560px){.formGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.formGrid>label:not(.enquiryTrap){align-content:end;align-self:stretch}}
#basketDialog{width:min(560px,100%);max-width:100%;height:100dvh;max-height:100dvh;overflow-y:auto;overflow-x:hidden;scroll-padding-block:110px 24px}
#basketDialog .drawerHead{position:sticky;top:0;z-index:2;background:var(--paper);padding:18px 26px;border-bottom:1px solid var(--line);gap:16px;align-items:center}
#basketDialog .drawerHead>div{min-width:0}
#basketDialog .drawerHead h2{font-size:26px;line-height:1.2;margin:0}
#basketDialog .drawerHead .eyebrow{font-size:10px;letter-spacing:1px;margin:0 0 5px}
#basketDialog .close{width:44px;min-width:44px;height:44px;display:grid;place-items:center;padding:0}
#basketBody{padding:24px 26px max(28px,env(safe-area-inset-bottom))}
.enquiryTitle{font-size:clamp(27px,3vw,36px);line-height:1.15;letter-spacing:-.8px;margin:20px 0 16px;overflow-wrap:break-word}
.enquiryTitle:focus{outline:none}
#basketBody>p{font-size:14px;line-height:1.75}
#basketBody .enquiryDeliveryNote{padding:14px 16px;margin:18px 0;font-size:13px}
#backBasket{min-height:44px;display:inline-flex;align-items:center;margin:0}
.basketLine>div,.contactGrid>*,.tradeLayout>*,.footerColumns>*,.merchantSupport>*,.aboutVisit>*,.aboutWelcome>*,.productPurchase,.productMedia{min-width:0}
.basketLine select{max-width:100%;min-width:0;font-size:16px;min-height:44px}
.contactGrid a,.policyLayout a{overflow-wrap:anywhere}
.actions{flex-wrap:wrap}
.cataloguePagination{flex-wrap:wrap;gap:8px}
.productThumbnails{max-width:100%;overflow-x:auto}
.openingHours>div{gap:14px}.openingHours dd{margin-left:0;text-align:right}
/* Tablet portrait: full-width search and comfortably spaced navigation. */
@media(min-width:761px) and (max-width:1100px){
 body>header,body.scrolled>header{display:flex;flex-wrap:wrap;gap:14px;padding:16px 4%;position:relative;top:auto}
 header .brand{flex:1;min-width:0}header .account{margin-left:auto}header .basketBtn{margin-left:0}
 header .search{order:4;flex:0 0 100%;width:100%;min-width:0;margin:0}
 header .search input{min-width:0;flex:1;font-size:16px}
 body>nav{gap:0 24px;padding:4px 4%;justify-content:flex-start;flex-wrap:wrap;white-space:normal}
 body>nav>a,body>nav>a:nth-of-type(n){display:block;min-height:44px;padding:12px 0;font-size:13px}
 .contactGrid,.tradeApplication{grid-template-columns:minmax(0,1fr);gap:30px}
 .contactGrid>#enquiryPanel,.tradeApplication>#enquiryPanel{width:100%;max-width:800px;justify-self:center}
 .refinedProduct .detail{gap:24px}.refinedProduct .productPurchase h1{font-size:32px;line-height:1.2}
 .quantityAndQuote{grid-template-columns:70px minmax(0,1fr);gap:12px}.quantityAndQuote .btn{white-space:normal;padding-inline:14px}
 .footerColumns{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 #basketDialog .drawerHead{padding:14px 18px}#basketBody{padding:18px 20px max(26px,env(safe-area-inset-bottom))}
 .contactGrid h2.enquiryTitle{font-size:30px}
 .contactGrid .panel{padding:22px 18px}
 .formGrid{gap:18px}
 .merchantShowroom>img,.bathroomWelcome img{height:auto;max-height:460px;aspect-ratio:4/5}
 .merchantShowroom h2{overflow-wrap:break-word}
 .footerCallout>a{white-space:normal;font-size:clamp(20px,5vw,26px)}
 .footerSignature{max-width:100%;min-width:0}.footerSignature img{flex-shrink:0}
 .cookieButtons{flex-wrap:wrap}.cookieButtons button{flex-basis:120px}
}
@media(max-width:380px){.familyGrid,.products:not(.productList){grid-template-columns:minmax(0,1fr)}.familyCard img{max-height:250px;object-fit:cover}.products:not(.productList) .productArt{max-height:260px}.footerColumns{gap:22px 14px}.showroomSlide figcaption{flex-direction:column;gap:8px}}
@media(min-width:761px) and (max-width:1000px){
 .planner{display:grid;grid-template-columns:minmax(0,1fr);isolation:isolate}
 .planner>.plannerStage{display:contents;animation:none}
 .plannerStage>.houseViewport{grid-column:1;grid-row:1;position:sticky;top:0;z-index:5;align-self:start;width:100%;height:clamp(220px,32svh,330px);aspect-ratio:auto;background:#e8ece3;box-shadow:0 8px 18px #19253220}
 .planner>.plannerControls{grid-column:1;grid-row:2;animation:none}
 .plannerStage>.stageBar{grid-column:1;grid-row:3}
 .plannerStage>.designerExtras{grid-column:1}
 .plannerStage>.eavesPermanent{grid-column:1;grid-row:6}
 .planner :is(button,summary){scroll-margin-top:calc(32svh + 20px)}
}
@media(max-height:500px) and (max-width:1000px){.plannerStage>.houseViewport{position:relative;top:auto;height:220px}.planner :is(button,summary){scroll-margin-top:20px}}
@media(prefers-reduced-motion:reduce){#basketDialog[open]{animation:none}}

/* Keep gallery controls stationary when switching between photo orientations. */
.showroomTrack{scroll-behavior:auto;overflow-anchor:none}
.showroomSlide,.showroomSlide[data-orientation=landscape]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto;align-items:stretch}
.showroomSlide .showroomImage{height:clamp(390px,43vw,580px);aspect-ratio:auto;display:flex;align-items:center;background:#e5dfd2}
.showroomSlide .showroomImage img,.showroomSlide[data-orientation=landscape] .showroomImage img{width:100%;height:100%;max-height:100%;object-fit:contain}
.showroomSlide figcaption,.showroomSlide[data-orientation=landscape] figcaption{min-height:0;flex-direction:column;justify-content:center;padding:clamp(24px,3.5vw,48px);gap:18px}
.showroomSlide figcaption h2,.showroomSlide[data-orientation=landscape] figcaption h2{font-size:clamp(25px,3vw,39px);margin:8px 0 16px}
.showroomSlide figcaption p{font-size:14px}
.showroomDots{flex-wrap:wrap;gap:8px}.showroomDots button{min-width:44px;min-height:44px}
.plannerLink{position:relative;overflow:hidden;background:linear-gradient(110deg,#f0eee4,#faf7ef);border:1px solid #d8d7ca;border-top:3px solid #315b49;border-radius:10px;padding:clamp(24px,3vw,40px);gap:30px}
.plannerLink:after{content:'';position:absolute;right:-55px;top:-105px;width:270px;height:270px;border:1px solid #315b4912;transform:rotate(35deg);pointer-events:none}
.plannerInviteCopy,.plannerInviteAction{position:relative;z-index:1;min-width:0}
.plannerLink h2{font-size:clamp(27px,3vw,36px);letter-spacing:-1px;line-height:1.2}
.plannerInviteFinishes{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px}
.plannerInviteFinishes>span{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.plannerInviteFinishes i{display:block;width:21px;height:21px;border-radius:50%;border:1px solid #0002;box-shadow:inset 0 1px 2px #fff7}
.moreDepartments{border-top:1px solid var(--line);margin-top:26px;padding-top:26px}
.moreDepartments>h3{font-size:21px;margin:0 0 7px;letter-spacing:-.4px}
.moreDepartments>p{font-size:14px;color:var(--muted);margin:0 0 18px}
.moreDepartments .rangeExtra{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:0;padding:0;margin:0}
.moreDepartments .rangeExtra a,.moreDepartments .rangeExtra a:last-child{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:20px 18px;min-width:0;min-height:100px;color:var(--ink);background:#fffdf7;border:1px solid var(--line);border-radius:7px;text-decoration:none}
.rangeExtra a>span:first-child{min-width:0}.rangeExtra strong{display:block;font-size:14px;line-height:1.45;font-weight:700}.rangeExtra small{display:block;font-size:12px!important;font-weight:400;line-height:1.5;margin-top:7px;color:var(--muted)}
.rangeExtra .departmentArrow{font-size:20px;color:var(--green);flex-shrink:0}
[data-theme=night] .moreDepartments .rangeExtra a{background:#202c2a;border-color:#40564c;color:var(--ink)}
@media(max-width:1100px){.moreDepartments .rangeExtra{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.moreDepartments .rangeExtra{grid-template-columns:minmax(0,1fr);gap:10px}.moreDepartments .rangeExtra a{min-height:78px;padding:16px}.moreDepartments{margin-top:22px;padding-top:22px}.rangeExtra strong{font-size:15px}.rangeExtra small{margin-top:4px}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.moreDepartments .rangeExtra a{transition:border-color .2s,background .2s}.moreDepartments .rangeExtra a:hover{border-color:#547360;background:#edf1e8}}

/* Basket thumbnails must fit their grid track, independent of catalogue ratios. */
#basketDialog .basketLine{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px 16px;width:100%;min-width:0;max-width:100%;padding:22px 0;align-items:start}
#basketDialog .basketLine>.productArt{grid-column:1;grid-row:1;width:76px;max-width:100%;min-width:0;height:76px;aspect-ratio:1;margin:0;border-radius:6px;background:#fff;border:1px solid var(--line)}
#basketDialog .basketLine>.productArt>img,#basketDialog .basketLine>.productArt>svg{display:block;width:100%;height:100%;max-width:100%;aspect-ratio:auto;object-fit:contain;padding:4px}
#basketDialog .basketItemInfo{display:contents}
#basketDialog .basketItemHeading{grid-column:2;grid-row:1;align-self:center;min-width:0}
#basketDialog .basketItemHeading h3{font-size:15px;line-height:1.45;white-space:normal;overflow-wrap:anywhere;margin:5px 0 0}
#basketDialog .basketDepartment{display:block;font-size:10px;line-height:1.4}
#basketDialog .basketItemInfo>p,#basketDialog .designerBasketNote,#basketDialog .basketItemActions{grid-column:1/-1;min-width:0;max-width:100%;margin:0}
#basketDialog .basketItemInfo>p{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
#basketDialog .designerBasketNote{padding:14px 16px;border-radius:0 6px 6px 0}
#basketDialog .designerBasketNote p{font-size:13px;line-height:1.65;margin:0 0 12px}
#basketDialog .designerBasketNote select{width:100%;max-width:none;min-width:0;min-height:46px;font-size:16px}
#basketDialog .basketItemActions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding-top:3px}
#basketDialog .basketItemActions label{display:flex;align-items:center;gap:12px;min-width:0;font-size:13px}
#basketDialog .basketItemActions input{width:72px;max-width:100%;min-height:44px;font-size:16px}
#basketDialog .basketItemActions .remove{flex-shrink:0;min-height:44px;padding:10px 4px;font-size:13px;white-space:normal}
#basketDialog .drawerHead{width:100%;min-width:0}
#basketDialog .drawerHead .close{flex:0 0 44px}
#basketDialog .quoteSteps{flex-wrap:wrap;row-gap:12px}
#basketDialog .quoteBasketFooter .btn{max-width:100%;white-space:normal;gap:12px}
@media(max-width:380px){#basketDialog .basketLine{grid-template-columns:64px minmax(0,1fr);column-gap:12px}#basketDialog .basketLine>.productArt{width:64px;height:64px}#basketDialog .basketItemHeading h3{font-size:14px}#basketDialog .drawerHead .eyebrow{font-size:9px;letter-spacing:.7px}}
.inviteWhite{background:#fff}.inviteBlack{background:#161719}.inviteGrey{background:#454b50}
.plannerInviteAction{display:flex;flex-direction:column;gap:13px;flex-shrink:0}
.plannerInviteHint{font-family:Georgia,serif;font-style:italic;font-size:17px;color:#315b49}
.plannerInviteAction .btn{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;border-radius:5px;min-height:48px;margin:0}
[data-theme=night] .plannerLink{background:#202c2a;border-color:#40564c}[data-theme=night] .plannerInviteHint{color:#c3d9cb}
@media(max-width:760px){
 .showroomSlide,.showroomSlide[data-orientation=landscape]{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto}
 .showroomSlide .showroomImage{height:clamp(280px,48svh,410px)}
 .showroomSlide figcaption,.showroomSlide[data-orientation=landscape] figcaption{padding:22px;gap:8px;min-height:240px;justify-content:flex-start}
 .showroomSlide .showroomPhotoNumber{display:none}
 .showroomSlide figcaption h2,.showroomSlide[data-orientation=landscape] figcaption h2{font-size:26px;margin:8px 0 12px}
 .showroomSlide .showroomCaptionRule,.showroomSlide .showroomCaptionVisit{display:none}
 .plannerLink{display:flex;flex-direction:column;align-items:stretch;gap:25px}
 .plannerInviteAction{padding-top:20px;border-top:1px solid var(--line);align-items:flex-start}
 .plannerInviteAction .btn{width:100%;white-space:normal}
}
/* Supplier context stays secondary to products and ordering controls. */
.supplierPanel{margin:0 0 24px;padding:20px;border:1px solid var(--line,#d8d5cc);border-radius:8px;background:var(--paper,#fff);min-width:0}
.supplierLabel{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;color:var(--muted,#58616c)}
.supplierNames{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px}
.supplierNames a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:16px;font-weight:600;color:inherit;text-decoration:none;max-width:100%}
.supplierNames a:hover{text-decoration:underline}.supplierNames a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.supplierNames img{display:block;width:auto;max-width:155px;height:32px;object-fit:contain;background:#fff;padding:4px;box-sizing:content-box;border-radius:3px}
.supplierNames a>span{font-size:14px;color:var(--muted,#58616c)}
.supplierPanel p{font-size:14px;line-height:1.65;margin:12px 0 0;max-width:78ch;overflow-wrap:anywhere}
.supplierPanelCatalogue{margin:0 0 24px}.supplierPanelCatalogue p{max-width:100ch}
@media(max-width:600px){.supplierPanel{padding:16px}.supplierNames{gap:8px 20px}.supplierPanel p{font-size:13px}}
