/* HSB brand refinement. Colours sampled from the supplied original logo:
   blue #2977B7, deep blue #234E98, graphite #464F54. */
@font-face{font-family:"HSB Satoshi";src:url("fonts/Satoshi-Variable.woff2") format("woff2");font-weight:300 900;font-style:normal;font-display:swap}
.hsb-bath{--ink:#243447;--blue:#234e98;--muted:#596b7b;--line:#dce5ed;font-family:"HSB Satoshi",Arial,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);background:linear-gradient(180deg,#f3f8fc 0%,#f8fafc 700px,#f8fafc 100%)}
.hsb-bath button,.hsb-bath input,.hsb-bath select,.hsb-bath textarea,.hsb-bath .hb-field input,.hsb-bath .hb-field select,.hsb-bath .hb-field textarea,.hsb-bath .hb-intro h1,.hsb-bath .hb-main h2,.hsb-bath .hb-aside h2,.hsb-bath .hb-intro em,.hsb-bath .hb-aside em{font-family:"HSB Satoshi",Arial,sans-serif}
.hb-header{max-width:none;background:#fff;padding:22px max(32px,calc((100% - 1200px)/2));border-bottom:1px solid #e3ebf2}
.hsb-bath .hb-header img{width:230px;height:auto;aspect-ratio:3806/1356;object-fit:contain}
.hb-call{font-size:12px!important;line-height:1.6;color:#596b7b!important}.hb-call strong{font-size:20px;font-weight:700;color:#234e98;letter-spacing:-.02em}
.hb-wrap{max-width:1280px;padding:52px 40px 30px}.hb-intro{max-width:900px;margin-bottom:38px}.hb-kicker{font-size:11px!important;letter-spacing:.16em;font-weight:750;color:#234e98;display:flex;align-items:center;gap:12px;margin-bottom:18px}.hb-intro>.hb-kicker:before{content:"";display:block;width:30px;height:2px;background:#2977b7}
.hsb-bath .hb-intro h1{font-size:clamp(38px,3.4vw,56px);line-height:1.12;letter-spacing:-.045em;font-weight:700;margin-bottom:20px}.hsb-bath .hb-intro em{font-weight:450;color:#2977b7;letter-spacing:-.045em}.hb-intro>p:last-child{font-size:17px;line-height:1.75;max-width:690px;color:#596b7b;margin-bottom:0}
.hb-planner{grid-template-columns:280px minmax(0,1fr);border:1px solid #dce5ed;border-radius:20px;box-shadow:0 18px 55px #1934550c,0 2px 8px #19345504}
.hb-aside{background:#1b304b;padding:36px 28px;color:#fff;border:0}.hb-tag{font-size:10px;letter-spacing:.16em;font-weight:700;color:#a8d3f3}.hsb-bath .hb-aside h2{font-size:34px;line-height:1.16;letter-spacing:-.035em;font-weight:650;margin:27px 0 20px}.hsb-bath .hb-aside h2 em{color:#a8d3f3;font-weight:450}.hb-aside p{font-size:14px;line-height:1.8;color:#d3dfeb}.hb-drawing{opacity:.055;color:#bedff5}
.hb-steps{margin:32px 0}.hb-steps li{font-size:13px;margin:15px 0;gap:13px;color:#b6c7d8}.hb-steps li>span{width:29px;height:29px;font-size:11px;border-color:#66839f75}.hb-steps .is-current>span{background:#c6e6fc;color:#1b304b;border-color:#c6e6fc}.hb-steps .is-current{color:#fff}.hb-steps .is-done{color:#dcebf7}.hb-aside-bottom{padding-top:22px}.hb-aside-bottom>span{font-size:12px}.hb-aside-bottom p{font-size:11px;line-height:1.8}
.hb-main{padding:36px 40px 28px}.hb-progress-label{font-size:12px;margin-bottom:12px}.hb-progress-label span:last-child{color:#234e98}.hb-track{height:4px;background:#e7eff6;margin-bottom:34px}.hb-track>span{background:linear-gradient(90deg,#234e98,#2977b7)}
.hsb-bath .hb-main h2{font-size:clamp(26px,2vw,32px);font-weight:700;line-height:1.23;letter-spacing:-.035em;margin-bottom:13px}.hsb-bath .hb-help{font-size:15px;line-height:1.75;color:#596b7b;margin-bottom:27px}
.hb-choices{gap:14px}.hsb-bath .hb-choice{padding:23px;min-height:183px;border:1px solid #d5e0ea;border-radius:13px;background:#fff;color:#243447;gap:15px;transition:border-color .16s,box-shadow .16s,background .16s,transform .16s}.hsb-bath .hb-choice:hover{background:#f8fbff;border-color:#80add2;box-shadow:0 5px 16px #234e980a;transform:translateY(-1px)}.hsb-bath .hb-choice[aria-pressed=true]{background:#f0f7fd;border-color:#234e98;box-shadow:inset 0 0 0 1px #234e98}
.hb-icon{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;background:#edf5fc;border-radius:12px}.hb-icon svg{width:30px;height:30px;stroke:#2977b7;stroke-width:1.7}.hsb-bath .hb-choice[aria-pressed=true] .hb-icon{background:#dfedfb}.hb-choice-text strong{font-size:15px;font-weight:700;line-height:1.4;letter-spacing:-.01em}.hsb-bath .hb-choice-text small{font-size:13px;line-height:1.6;color:#596b7b;margin-top:7px}.hb-tick{width:18px;height:18px;top:16px;right:16px;border-color:#a9bdce;line-height:16px}.hb-choice[aria-pressed=true] .hb-tick{background:#234e98;border-color:#234e98}
.hsb-bath .hb-multi .hb-choice{min-height:96px;padding:19px 32px 19px 18px;gap:14px}.hb-multi .hb-icon{width:43px;height:43px;border-radius:10px}.hb-multi .hb-icon svg{width:27px;height:27px}.hsb-bath .hb-multi .hb-choice-text strong{font-size:14px}.hb-multi .hb-tick{right:11px;top:11px}
.hsb-bath .hb-field{font-size:14px;font-weight:650;margin-bottom:22px}.hb-field>small{font-size:12px}.hsb-bath .hb-field input,.hsb-bath .hb-field select,.hsb-bath .hb-field textarea{font-size:16px;min-height:54px;border:1px solid #bacddd;background:#fff;border-radius:9px;padding:13px 15px;line-height:1.55}.hb-field input::placeholder,.hb-field textarea::placeholder{font-size:14px;color:#718394}.hb-note{font-size:12px;line-height:1.8;background:#f2f6fa;border-left:3px solid #7db2db;color:#536a7c;padding:14px 17px}.hb-consent{font-size:13px;line-height:1.75;color:#536a7c}.hb-consent a{color:#234e98}
.hb-actions{margin-top:30px}.hsb-bath #hb-next{min-height:54px;padding:14px 24px;min-width:156px;border-radius:9px;border:1px solid #234e98;background:#234e98;color:#fff;font-size:15px;font-weight:700;box-shadow:0 5px 15px #234e981a}.hsb-bath #hb-next:hover{background:#193f80;border-color:#193f80}.hsb-bath #hb-back{font-size:14px;color:#536a7c}.hb-footnote{font-size:11px;line-height:1.8;color:#60768a;margin-top:28px;padding-top:20px}.hb-bottom{font-size:12px;line-height:1.8;color:#596b7b;margin-top:22px}
.hb-footer{max-width:1200px;margin:auto;padding:25px 0 18px;font-size:12px;line-height:1.8;color:#596b7b;gap:20px;flex-wrap:wrap}.hb-footer-nav{display:flex;gap:24px}.hb-footer a:hover{color:#234e98}.hb-company-contact{display:block;max-width:1200px;margin:0 auto 30px;font-size:12px;line-height:1.9;color:#596b7b}.hb-company-contact a{text-underline-offset:3px}
.hsb-bath button:focus-visible,.hsb-bath a:focus-visible,.hsb-bath input:focus-visible,.hsb-bath select:focus-visible,.hsb-bath textarea:focus-visible{outline:3px solid #2977b7;outline-offset:4px}.hb-success-icon{background:#e6f1fa;color:#234e98}.hb-reference{font-size:13px}.hb-success-home{font-size:15px}.hb-success>p:not(.hb-kicker){font-size:16px;line-height:1.75}
.hsb-legal{max-width:880px;margin:0 auto;padding:40px 24px 80px;color:#243447;font:16px/1.85 "HSB Satoshi",Arial,sans-serif}.hsb-legal h1{font-size:clamp(34px,5vw,48px);line-height:1.15;letter-spacing:-.04em}.hsb-legal h2{font-size:24px;line-height:1.35;margin:34px 0 12px}.hsb-legal a{color:#234e98;text-underline-offset:3px}.hsb-legal .legal-nav{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid #dce5ed;padding-bottom:22px}.hsb-legal .legal-note{padding:17px 20px;background:#eef5fc;border-left:3px solid #2977b7}
@media(max-width:1100px){.hb-main{padding:30px}.hb-planner{grid-template-columns:245px minmax(0,1fr)}.hb-aside{padding:30px 24px}.hb-wrap{padding:42px 28px 26px}.hb-footer,.hb-company-contact{margin-left:28px;margin-right:28px}.hsb-bath .hb-choice{padding:20px}.hsb-bath .hb-choice-text small{font-size:12px}}
@media(max-width:760px){.hb-header{padding:19px 20px}.hsb-bath .hb-header img{width:180px}.hb-call{font-size:0!important}.hb-call strong{font-size:14px}.hb-wrap{padding:34px 18px 22px}.hb-intro{margin:0 3px 28px}.hb-kicker{font-size:9px!important;letter-spacing:.13em;gap:9px;margin-bottom:16px}.hb-intro>.hb-kicker:before{width:20px}.hsb-bath .hb-intro h1{font-size:32px;line-height:1.17;letter-spacing:-.04em;margin-bottom:17px}.hb-intro>p:last-child{font-size:15px;line-height:1.75}.hb-planner{display:block;border-radius:16px}.hb-aside{padding:17px 22px}.hb-aside-top>h2,.hb-aside-top>p,.hb-steps,.hb-drawing,.hb-aside-bottom{display:none}.hb-tag{font-size:10px}.hb-main{padding:25px 21px 23px}.hb-progress-label{font-size:11px}.hb-track{margin-bottom:29px}.hsb-bath .hb-main h2{font-size:27px;line-height:1.25}.hsb-bath .hb-help{font-size:14px;line-height:1.75;margin-bottom:24px}#hsb-bath-app .hb-choices{grid-template-columns:1fr;gap:12px}#hsb-bath-app .hb-choice{min-height:112px;flex-direction:row;align-items:center;padding:19px 29px 19px 15px;gap:14px}.hb-icon{width:42px;height:42px;border-radius:10px}.hb-icon svg{width:27px;height:27px}#hsb-bath-app .hb-choice-text strong{font-size:15px;line-height:1.4}#hsb-bath-app .hb-choice-text small{font-size:12px;line-height:1.65}#hsb-bath-app .hb-multi .hb-choice{min-height:88px}.hb-multi .hb-icon{width:38px;height:38px}.hb-tick{right:11px;top:11px;width:15px;height:15px;line-height:13px}.hb-field-grid{grid-template-columns:1fr;gap:0}.hb-consent{font-size:12px}.hb-note{font-size:12px}.hb-footnote{font-size:10px}.hb-bottom{display:block;font-size:11px;margin:20px 3px 0}.hb-bottom a{display:block;margin-top:9px}.hb-footer{font-size:11px;margin:0 21px;padding-top:22px}.hb-footer-nav{gap:18px}.hb-company-contact{font-size:11px;margin:0 21px 26px}.hsb-bath #hb-next{font-size:15px;min-height:52px;min-width:150px}.hsb-bath #hb-back{font-size:13px}}
@media(max-width:370px){.hsb-bath .hb-header img{width:155px}.hb-call strong{font-size:12px}.hsb-bath .hb-intro h1{font-size:32px}.hb-main{padding:23px 17px}.hb-wrap{padding-left:14px;padding-right:14px}.hsb-bath .hb-main h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.hsb-bath .hb-choice{transition:none;transform:none}}

/* Bathroom-led planner: clean photography, compact and readable mobile steps. */
.hb-planner{grid-template-columns:320px minmax(0,1fr);scroll-margin-top:12px}
.hb-aside{padding:30px 26px 0;overflow:hidden}.hb-tag{font-size:13px;letter-spacing:.14em;color:#c9e7ff}.hb-aside-top{display:flex;flex-direction:column;height:100%;min-height:0}.hsb-bath .hb-aside h2{margin:21px 0 12px}.hb-aside-top>p{margin:0 0 24px}.hb-aside-photo{margin:0 -26px;flex:1;min-height:310px;position:relative;display:flex;flex-direction:column}.hb-aside-photo img{display:block;width:100%;height:100%;min-height:310px;max-height:550px;flex:1;object-fit:cover;object-position:60% center}.hb-aside-photo figcaption{font-size:10px;line-height:1.5;padding:10px 26px;color:#bed4e8;background:#1b304b}.hb-main{padding-bottom:30px}
@media(max-width:1100px) and (min-width:761px){.hb-planner{grid-template-columns:270px minmax(0,1fr)}}
@media(max-width:760px){
 .hb-header{padding:10px 16px;min-height:68px}.hsb-bath .hb-header img{width:155px}.hb-call strong{font-size:13px}
 .hb-intro{display:none}.hb-wrap{padding:12px 12px 20px}.hb-planner{display:flex;flex-direction:column;max-height:calc(100svh - 92px);min-height:0;border-radius:14px}
 .hb-aside{padding:11px 18px;flex:none}.hb-aside-top{display:block}.hb-tag{font-size:12px;letter-spacing:.12em}.hb-aside-photo{display:none}
 .hb-main{padding:15px 17px 14px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.hb-progress-label{font-size:11px;margin-bottom:8px}.hb-track{margin-bottom:16px;flex-shrink:0}
 #hb-form{display:flex;flex-direction:column;min-height:0}#hb-content{overflow-y:auto;overscroll-behavior-y:contain;padding:3px 3px 4px;margin:-3px -3px 0;scrollbar-width:thin}
 #hb-content>.hb-kicker{display:none}.hsb-bath .hb-main h2{font-size:23px;line-height:1.2;margin-bottom:8px}.hsb-bath .hb-help{font-size:13px;line-height:1.5;margin-bottom:16px}
 #hsb-bath-app .hb-choices{grid-template-columns:1fr;gap:8px}#hsb-bath-app .hb-choice{min-height:64px;padding:11px 28px 11px 12px;gap:12px;border-radius:10px;transform:none}.hb-icon{width:34px;height:34px;border-radius:8px}.hb-icon svg{width:25px;height:25px}
 #hsb-bath-app .hb-choice-text strong{font-size:14px;line-height:1.35}#hsb-bath-app .hb-choice-text small{font-size:12px;line-height:1.4;margin-top:3px}
 #hsb-bath-app .hb-multi{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#hsb-bath-app .hb-multi .hb-choice{min-height:72px;padding:11px 20px 11px 10px;gap:8px}#hsb-bath-app .hb-multi .hb-icon{display:none}#hsb-bath-app .hb-multi .hb-choice-text strong{font-size:13px;line-height:1.4}.hb-multi .hb-tick{top:8px;right:7px}
 .hb-actions{margin-top:14px;padding-top:10px;border-top:1px solid #e4ecf3;flex:none}.hsb-bath #hb-next{min-height:46px;min-width:144px;padding:11px 18px}.hsb-bath #hb-back{min-height:46px}.hb-error{flex:none;font-size:12px;margin:8px 0;padding:8px 10px}
 .hsb-bath .hb-field{font-size:13px;margin-bottom:12px}.hsb-bath .hb-field input,.hsb-bath .hb-field select,.hsb-bath .hb-field textarea{min-height:46px;padding:10px 12px;margin-top:5px;font-size:16px}.hsb-bath .hb-field textarea{min-height:94px}.hb-note{margin:14px 0 0;padding:11px 13px;font-size:12px;line-height:1.55}.hb-bottom{margin:14px 5px 0}
}
@media(max-width:370px){.hb-main{padding:13px 13px 12px}.hsb-bath .hb-main h2{font-size:21px}#hsb-bath-app .hb-choice-text small{font-size:11px}#hsb-bath-app .hb-choice{gap:9px}.hb-icon{width:30px;height:30px}}
@media(max-width:760px) and (max-height:680px){.hb-header{min-height:58px;padding-top:7px;padding-bottom:7px}.hsb-bath .hb-header img{width:135px}.hb-wrap{padding-top:8px}.hb-planner{max-height:calc(100svh - 76px)}.hb-track{margin-bottom:11px}.hsb-bath .hb-help{margin-bottom:12px}.hb-aside{padding-top:8px;padding-bottom:8px}.hb-actions{margin-top:10px;padding-top:8px}}
.hb-footer-logo{display:block;background:#fff;padding:10px 12px;border-radius:6px}.hb-footer-logo img{display:block;width:190px;height:auto;aspect-ratio:3806/1356;object-fit:contain}.hb-footer{align-items:center}.hb-header a:first-child{background:#fff}.hb-footer-nav{flex-wrap:wrap}
@media(max-width:760px){.hb-footer-logo img{width:160px}.hb-footer-logo{padding:8px 10px}}
@media(max-width:760px){#hsb-bath-app .hb-choices:not(.hb-multi) .hb-choice-text small{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}#hsb-bath-app .hb-choices:not(.hb-multi) .hb-choice{min-height:62px}.hb-header{min-height:64px;padding-top:7px;padding-bottom:7px}}
@media(max-width:760px){#hsb-bath-app .hb-multi .hb-choice{min-height:60px;padding:9px 18px 9px 10px}#hsb-bath-app .hb-multi .hb-choice-text strong{padding-right:0;font-size:13px}.hb-multi .hb-choice-text{width:100%}.hb-multi .hb-tick{width:11px;height:11px;line-height:9px;top:6px;right:5px}}

.hb-auto-hint{font-size:12px;line-height:1.6;color:#536a7c;margin:18px 0 0}.hb-direct{display:flex;flex-direction:column;gap:5px;max-width:760px}.hb-direct strong{font-size:21px;line-height:1.3;color:#1b304b}.hb-direct>span{font-size:14px;font-weight:650;color:#234e98}.hb-direct small{font-size:12px;line-height:1.7}.hb-bottom{align-items:center}.hb-cookie-link{appearance:none;border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.hb-cookie-notice{position:fixed;z-index:9999;bottom:18px;left:18px;max-width:480px;width:calc(100% - 36px);padding:22px;background:#fff;border:1px solid #dce5ed;border-radius:15px;box-shadow:0 14px 65px #142d4933;color:#243447;font-size:13px;line-height:1.65}.hsb-bath .hb-cookie-notice h2{font-size:21px;letter-spacing:-.02em;line-height:1.25;margin:0 0 11px}.hb-cookie-notice p{margin:0 0 12px}.hb-cookie-notice>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.hb-cookie-notice a{color:#234e98;text-decoration:underline}.hb-cookie-notice button{background:#234e98;color:white;border:0;border-radius:8px;padding:12px 19px;font-size:14px;font-weight:650;min-height:44px}.hb-choices.hb-auto-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.hsb-bath .hb-auto-compact .hb-choice{min-height:94px;flex-direction:row;align-items:center;padding:16px 30px 16px 15px;gap:12px}.hsb-bath .hb-auto-compact .hb-icon{width:38px;height:38px}.hsb-bath .hb-auto-compact .hb-choice-text strong{font-size:14px}.hb-planner:not([data-question=contact]) .hb-actions{border:0;padding-top:0;margin-top:12px}.hsb-bath .hb-choice:disabled{opacity:1;cursor:default}.hb-planner[data-question=contact] .hb-auto-hint{display:none}
@media(max-width:760px){.hb-wrap{padding:0 0 20px}.hb-intro.hb-intro-auto{display:block;margin:0;padding:19px 20px 20px;background:#234e98;color:white;max-width:none}.hb-intro-auto>.hb-kicker{display:none}.hsb-bath .hb-intro-auto h1{font-size:24px;line-height:1.2;color:white;letter-spacing:-.03em;margin:0 0 9px}.hsb-bath .hb-intro-auto h1 br{display:none}.hsb-bath .hb-intro-auto h1 em{color:#c5e6ff;font-weight:600}.hb-intro-auto>p:last-child{font-size:14px;line-height:1.5;color:#e4f0fb}.hb-planner{border:0;border-radius:0;box-shadow:none;background:transparent;max-height:none;overflow:visible}.hb-aside{display:none}.hb-main{display:block;padding:20px 20px 10px;overflow:visible}.hb-main .hb-track{margin-bottom:20px}#hb-form{display:block}#hb-content{overflow:visible;margin:0;padding:0}.hsb-bath .hb-main h2{font-size:23px;line-height:1.25;margin-bottom:10px}.hsb-bath .hb-help{font-size:13px;line-height:1.5;margin-bottom:17px}#hsb-bath-app .hb-choice{min-height:66px;border-radius:12px;padding:13px 29px 13px 14px;gap:12px}#hsb-bath-app .hb-choice-text strong{font-size:15px}.hb-auto-hint{font-size:11px;margin-top:14px}.hb-bottom{margin:20px 20px 0}.hb-direct strong{font-size:20px}.hb-direct>span{font-size:14px}.hb-direct small{font-size:12px}.hb-cookie-notice{bottom:10px;left:10px;width:calc(100% - 20px);padding:18px;font-size:12px;max-height:48svh;overflow-y:auto}.hb-cookie-notice>div{gap:10px}.hb-cookie-notice button{padding:10px 16px}.hsb-bath .hb-cookie-notice h2{font-size:19px}.hb-choices.hb-auto-compact,#hsb-bath-app .hb-choices.hb-auto-compact{grid-template-columns:repeat(2,minmax(0,1fr))}#hsb-bath-app .hb-auto-compact .hb-choice{min-height:72px;padding:11px 20px 11px 11px}#hsb-bath-app .hb-auto-compact .hb-icon{display:none}#hsb-bath-app .hb-auto-compact .hb-choice-text strong{font-size:13px;line-height:1.4;padding-right:0}.hb-main{scroll-margin-top:10px}}
