/* B&Ms bath inspiration and full-room concept planner. */
.bath-atlas{position:absolute;inset:0;display:block;overflow:hidden;isolation:isolate}
.bath-atlas>img{position:absolute;top:calc(var(--bath-row,1)*-100%);left:-100%;width:200%;height:300%;max-width:none;object-fit:fill}
.bath-atlas-before>img{left:0}
.bath-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:center;padding-block:44px 65px}
.bath-hero h1{font-size:clamp(49px,5.5vw,79px);line-height:1.05;letter-spacing:-.06em;color:var(--navy);margin:25px 0}
.bath-hero h1>span{color:var(--blue)}
.bath-hero>div>p{font-size:18px;line-height:1.75;max-width:500px}
.bath-hero .button-row{gap:20px}.bath-hero .button{font-size:15px;padding-inline:24px}.bath-hero .text-link{font-size:15px}
.bath-hero-facts{display:flex;gap:10px 17px;flex-wrap:wrap;margin-top:35px;color:#54708f;font-size:14px}
.bath-hero-facts>span{border-bottom:1px solid #c8d6e5;padding-bottom:6px}
.bath-hero>div>.bath-local{font-size:14px;margin-top:20px;line-height:1.6;color:#627288}
.bath-hero-photo{position:relative;aspect-ratio:1/1.1;border-radius:26px;overflow:hidden;background:#d5cfc5;min-width:0}
.bath-hero-photo>figcaption{position:absolute;left:23px;right:23px;bottom:23px;z-index:1;background:#fffffff0;backdrop-filter:blur(16px);border:1px solid #fff8;border-radius:15px;padding:22px 24px}
.bath-hero-photo figcaption>span{display:block;font-size:12px;color:#587296;letter-spacing:.08em;margin-bottom:8px}
.bath-hero-photo figcaption>strong{display:block;font-size:22px;line-height:1.3;letter-spacing:-.025em;font-weight:600}
.bath-hero-photo figcaption>small{display:block;font-size:14px;line-height:1.6;color:#66768a;margin-top:9px}
.bath-intro{padding:65px 0;max-width:1020px;text-align:center;border-top:1px solid var(--line)}
.bath-intro h2{font-size:clamp(32px,3.3vw,46px);margin-top:20px;line-height:1.15}
.bath-intro>p{font-size:18px;line-height:1.8;max-width:820px;margin:27px auto 0}
.bath-intro>.bath-disclosure{font-size:15px;line-height:1.75;max-width:760px;color:#647284;margin-top:19px}
.bath-ideas{padding-top:60px}.bath-ideas .section-heading>p{font-size:16px;line-height:1.8;max-width:360px}
.bath-gallery-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin:35px 0 22px}
.bath-style-filters{display:flex;gap:6px;padding:5px;background:#e9eef4;border:1px solid #dce4ee;border-radius:13px;flex-wrap:wrap}
.bath-style-filters>button{font-size:15px;font-weight:500;background:transparent;color:#697c93;padding:12px 17px;min-height:46px;border-radius:9px;line-height:1.4}
.bath-style-filters>button[aria-pressed=true]{background:#fff;color:var(--blue);box-shadow:0 2px 7px #1934510c}
.bath-form-filter{font-size:14px;color:#5b6e86;display:flex;flex-direction:column;gap:8px;min-width:260px}
.bath-form-filter select,.bath-planner-controls select{width:100%;max-width:100%;min-width:0;font:inherit;font-size:16px;line-height:1.5;color:#2b4362;background:#fff;border:1px solid #d3deea;border-radius:10px;padding:13px 34px 13px 13px;min-height:50px}
.bath-gallery-status{font-size:15px;line-height:1.7;margin:0 0 25px;color:#60748e}
.bath-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}
.bath-example-card{background:#fff;border:1px solid #e1e6ed;border-radius:21px;overflow:hidden;min-width:0;scroll-margin-top:120px;box-shadow:0 10px 35px -32px #0a16284d}
.bath-example-image{display:block;position:relative;aspect-ratio:1/1;width:100%;padding:0;overflow:hidden;background:#ddd7cd}
.bath-example-image>.bath-atlas{transition:transform .5s}.bath-example-image:hover>.bath-atlas{transform:scale(1.035)}
.bath-photo-pill{position:absolute;left:16px;right:auto;bottom:17px;z-index:1;display:flex;align-items:center;gap:14px;font-size:14px;color:#183757;background:#fffffff2;backdrop-filter:blur(10px);padding:10px 14px;border-radius:30px;box-shadow:0 3px 18px #0001}
.bath-photo-pill>span{font-size:21px;line-height:1}
.bath-example-copy{padding:24px}.bath-example-copy>.eyebrow{font-size:12px;letter-spacing:.05em;line-height:1.8;color:#5f7793}
.bath-example-copy h3{font-size:25px;line-height:1.2;letter-spacing:-.035em;margin-top:13px}
.bath-example-copy>p{font-size:16px;line-height:1.7;margin-top:14px}
.bath-example-copy>.text-link{margin-top:19px;font-size:15px;min-height:44px;text-align:left;line-height:1.5;max-width:100%}
.bath-gallery-more{display:flex;justify-content:center;margin-top:38px}.bath-gallery-more>.button{font-size:16px;gap:14px}
.bath-planner-section{padding:95px 0;background:#edf2f8;border-block:1px solid #e1e7ef}
.bath-planner-section .section-heading>p{font-size:16px;line-height:1.8}
.bath-planner-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(335px,1fr);gap:28px;align-items:start}
.bath-stage-column,.bath-planner-controls{min-width:0}
.bath-room-stage{border:1px solid #d3dfeb;border-radius:25px;background:radial-gradient(ellipse at 52% 38%,#fbfdff,#e4edf6 75%);overflow:hidden;padding:25px 23px 24px;box-shadow:0 20px 65px -55px #14375b8c}
.bath-stage-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.bath-stage-heading>.eyebrow{font-size:12px;letter-spacing:.09em}
.bath-motion-button{border:1px solid #cbd9e7;background:#f9fcff;color:#4d6b8c;width:44px;height:44px;min-height:44px;border-radius:50%;font-size:17px;flex:none}
.bath-view-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:19px}
.bath-view-controls>button{font-size:15px;min-height:46px;line-height:1.4;border:1px solid #cedae8;border-radius:8px;padding:11px 14px;background:#f8fbfd;color:#67809e}
.bath-view-controls>button[aria-pressed=true]{background:#173a62;color:#fff;border-color:#173a62}
.bath-view-controls>button:disabled,.bath-scene-toggles>button:disabled{opacity:.45;cursor:default}
.bath-scene{width:100%;touch-action:pan-y;cursor:grab;min-height:280px;margin-top:8px;border-radius:13px}
.bath-scene:active{cursor:grabbing}.bath-room-svg{display:block;width:100%;height:auto;overflow:visible}
.bath-room-svg .bath-scene-label{font-family:inherit;font-size:43px;font-weight:650;fill:#254465;paint-order:stroke;stroke:#f0f5f9;stroke-width:3;stroke-linejoin:round}
.bath-room-svg .bath-dimension-label{font-family:inherit;font-size:40px;font-weight:550;fill:#46617f}
.bath-dimension{stroke:#6c8aa7;stroke-width:1.8;fill:none;stroke-dasharray:4 6}
.bath-heat-flow{stroke-dasharray:12 5;animation:bathHeatFlow 3s linear infinite}
.bath-water-flow{stroke-dasharray:3 12;animation:bathRain 1s linear infinite;stroke-linecap:round}
.bath-rail-glow{animation:bathWarmth 3.2s ease-in-out infinite}
.bath-motion-off *{animation-play-state:paused!important}
.bath-scene-instruction{font-size:15px;line-height:1.7;color:#607a98;margin-top:10px}
.bath-object-legend{display:grid;grid-template-columns:1fr 1fr;gap:12px 17px;border-block:1px solid #cedbe8;padding:20px 0;margin-top:19px;font-size:15px;line-height:1.5;color:#536d8d}
.bath-object-legend>span{display:flex;align-items:flex-start;gap:8px}.bath-object-legend b{color:#284c76;flex:none;font-size:14px;font-weight:650}
.bath-scene-toggles{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.bath-scene-toggles>button{font-size:14px;line-height:1.5;border:1px solid #c9d7e5;border-radius:9px;min-height:46px;padding:11px 13px;background:#f9fcff;color:#446586;text-align:left}
.bath-scene-toggles>button[aria-pressed=true]{border-color:#8fa8c1;background:#d4e2ef;color:#153e6a}
.bath-scene-note{font-size:14px;line-height:1.75;color:#5c718a;margin-top:20px}
.bath-planner-controls{background:#fff;border:1px solid #dce4ee;border-radius:23px;padding:30px 26px;position:sticky;top:110px}
.bath-control-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:25px;flex-wrap:wrap}.bath-control-heading .eyebrow{font-size:12px}.bath-control-heading>button{font-size:14px;min-height:44px}
.bath-select-label{display:block;font-size:16px;line-height:1.5;font-weight:550;color:#3e5877;margin-bottom:9px;margin-top:14px}
.bath-planner-controls>p,.bath-control-details p{font-size:15px;line-height:1.7;color:#6b7e94;margin-top:13px}
.bath-material-options{display:flex;gap:7px;margin-top:24px}
.bath-material-options>button{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;border:1px solid #e1e7ee;background:#fff;border-radius:11px;padding:12px 7px;font-size:14px;line-height:1.5;color:#5b6d82}
.bath-material-options>button>i{display:block;width:100%;height:39px;border-radius:6px;background:linear-gradient(100deg,var(--bath-wall) 50%,var(--bath-wood) 50%)}
.bath-material-options>button[aria-pressed=true]{border-color:#759ac3;background:#f2f6fb;color:#1e528d;box-shadow:0 0 0 1px #759ac333}
.bath-control-details{border-top:1px solid #dfe6ef;margin-top:25px;padding-top:5px}
.bath-control-details>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;padding:19px 0;font-size:17px;line-height:1.5;font-weight:600;color:#243f61}
.bath-control-details>summary:after,.bath-calculation-details>summary:after{content:'+';flex:none;color:#6386ad;font-size:22px;font-weight:400}
.bath-control-details[open]>summary:after,.bath-calculation-details[open]>summary:after{content:'−'}
.bath-control-details>summary::-webkit-details-marker,.bath-calculation-details>summary::-webkit-details-marker{display:none}
.bath-field{margin:18px 0 25px}.bath-field>label{font-size:16px;line-height:1.6;color:#435f7f;font-weight:500;display:block;margin-bottom:9px}
.bath-number-row{display:flex;align-items:center;gap:11px;font-size:15px;color:#6c8098;line-height:1.5}
.bath-number-row>input{width:116px;max-width:55%;font:inherit;font-size:21px;line-height:1.4;text-align:right;border-radius:8px;border:1px solid #d0ddec;background:#f5f8fc;padding:9px 11px;color:#25588f;min-height:49px;font-weight:550;appearance:textfield}
.bath-number-row>input::-webkit-inner-spin-button{appearance:none}
.bath-field>input[type=range]{display:block;width:100%;margin:20px 0 7px;accent-color:var(--blue);height:6px}
.bath-field>p{font-size:14px;line-height:1.7;margin-top:12px;color:#6b7e94}
.bath-switch-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e5eaf0;padding-top:20px;margin-top:21px}
.bath-switch-row strong{font-size:16px;font-weight:550;line-height:1.5;display:block}.bath-switch-row p{font-size:14px;line-height:1.7;margin-top:7px;color:#6a7e96}
.bath-switch-row .solar-switch{flex:none;width:50px;height:30px;min-height:30px;padding:3px}.bath-switch-row .solar-switch>span{width:24px;height:24px}
.bath-switch-row .solar-switch[aria-checked=true]>span{transform:translateX(20px)}.bath-switch-row .solar-switch:disabled{opacity:.45}
.bath-planner-controls>.button{width:100%;margin-top:28px;font-size:15px;gap:13px}
.bath-selected-idea{display:grid;grid-template-columns:115px minmax(0,1fr);gap:20px;margin-top:20px;background:#fff;border:1px solid #dce4ee;border-radius:17px;padding:20px;align-items:start}
.bath-selected-thumb{position:relative;aspect-ratio:1;border-radius:11px;overflow:hidden}.bath-selected-idea .eyebrow{font-size:12px;line-height:1.6}
.bath-selected-idea h3{font-size:21px;line-height:1.25;margin-top:9px}.bath-selected-idea p{font-size:15px;line-height:1.7;margin-top:11px}.bath-selected-idea .text-link{font-size:15px;line-height:1.5;margin-top:13px;text-align:left;min-height:44px}
.bath-warnings{border:1px solid #ccd9e6;border-radius:15px;padding:22px 23px;background:#e3ecf5;margin-top:20px;color:#345779}
.bath-warnings>strong{font-size:17px;line-height:1.5;display:block}.bath-warnings ul{padding-left:21px;margin:13px 0 0}.bath-warnings li{font-size:16px;line-height:1.7;margin-top:9px}
.bath-warnings p{font-size:15px;line-height:1.75;color:#5b7390;margin-top:11px}
.bath-balance-section>.section-heading>p{font-size:16px;line-height:1.8}
.bath-balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:36px}
.bath-result-card{padding:30px 27px;border:1px solid #dce4ed;border-radius:20px;background:#fff;min-width:0}
.bath-result-card>.eyebrow{font-size:12px;letter-spacing:.08em}.bath-result-card>strong{font-size:48px;line-height:1.3;font-weight:600;color:#173a64;display:block;margin-top:21px;letter-spacing:-.05em}
.bath-result-card strong>em{font-size:20px;font-weight:450;letter-spacing:0;font-style:normal}.bath-result-card>p{font-size:16px;line-height:1.75;margin-top:20px}
.bath-result-card>.bath-result-verdict{font-size:15px;border-top:1px solid #e1e7ef;padding-top:17px;color:#4b6f92}
.bath-result-verdict[data-state=check]{color:#9c5f42}
.bath-usage-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:27px;align-items:start}
.bath-calculation-details{background:#eef3f8;border:1px solid #dbe4ee;border-radius:17px;padding:6px 25px 7px;min-width:0}
.bath-calculation-details>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;font-size:17px;line-height:1.55;color:#325374;padding:21px 0;cursor:pointer;font-weight:550}
.bath-calculation-details>.bath-field{margin:20px 0 27px}.bath-calculation-details>p{font-size:16px;line-height:1.8;margin:20px 0 25px;color:#5e748f}
.bath-electric-example{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:38px;border:1px solid #d6e0eb;border-radius:21px;background:#e8f0f7;margin-top:30px;align-items:start}
.bath-electric-example h3{font-size:31px;line-height:1.15;margin-top:17px}.bath-electric-example p{font-size:16px;line-height:1.8;margin-top:20px}.bath-electric-example strong{display:block;font-size:25px;line-height:1.4;margin-top:24px;color:#285a90;letter-spacing:-.02em}
.bath-electric-example .bath-calculation-details{background:#ffffffbf}.bath-plan-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 28px;margin-top:40px}
.bath-plan-actions>.button{font-size:16px;line-height:1.5;gap:18px}.bath-plan-actions>.text-link{font-size:16px;min-height:46px;text-align:left}
.bath-plan-status{font-size:15px;line-height:1.8;margin-top:23px;max-width:850px;color:#526c8c}
.bath-share-fallback{margin-top:20px}.bath-share-fallback label{display:block;font-size:16px;margin-bottom:10px}.bath-share-fallback input{width:100%;padding:12px;border:1px solid #c8d6e7;border-radius:8px;background:#fff;font-size:16px;min-height:48px}
.bath-renovation{background:var(--navy);padding:90px 0;color:#fff}.bath-renovation h2{font-size:clamp(34px,3.6vw,52px);line-height:1.1;margin-top:21px}
.bath-renovation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;margin:45px 0 37px}
.bath-renovation-grid article{border-top:1px solid #ffffff29;padding-top:25px}.bath-renovation-grid article>span{font-size:16px;color:#7ba0c9}
.bath-renovation-grid h3{font-size:24px;line-height:1.25;margin-top:20px}.bath-renovation-grid p{font-size:16px;line-height:1.8;margin-top:17px;color:#b0c1d5}
.bath-renovation .button{font-size:16px;line-height:1.5;gap:16px}.bath-local-contact>p{font-size:17px;line-height:1.85;max-width:780px;margin-inline:auto}
.bath-local-contact>.eyebrow{margin-bottom:21px}.bath-local-contact>.button{font-size:16px;line-height:1.5;gap:14px}
.bath-sources{margin-bottom:85px}.bath-sources>p,.bath-sources li>a{font-size:16px;line-height:1.8}.bath-sources .asset-note{font-size:14px;line-height:1.8}
.bath-home-comparison{aspect-ratio:1!important}.bath-home-comparison>.bath-atlas,.bath-home-comparison>.comparison-before{position:absolute;inset:0}
.bath-home-comparison .illustration-label{max-width:calc(100% - 26px);white-space:normal;text-align:center;line-height:1.5}
.bath-photo-dialog{width:min(1040px,calc(100% - 32px));max-height:94dvh;border:0;border-radius:22px;padding:30px;background:#f8fafc;overflow:auto;color:var(--navy)}
.bath-photo-dialog::backdrop{background:#08152ac7;backdrop-filter:blur(5px)}
.bath-dialog-heading{padding:7px 45px 24px 5px}.bath-dialog-heading .eyebrow{font-size:12px}.bath-dialog-heading h2{font-size:30px;line-height:1.2;margin-top:14px}.bath-dialog-heading p{font-size:15px;line-height:1.7;margin-top:12px}
.bath-photo-compare{position:relative;aspect-ratio:1;width:min(100%,62dvh);margin:auto;isolation:isolate;overflow:hidden;border-radius:16px;background:#d6d0c6}
.bath-photo-compare .bath-before-clip{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0);z-index:1;pointer-events:none}
.bath-photo-compare .compare-label{font-size:15px;padding:8px 14px;z-index:2}
.bath-photo-compare .compare-divider{z-index:2}.bath-photo-compare .compare-divider>span{width:44px;height:44px;font-size:23px}
.bath-photo-compare>input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3;margin:0;touch-action:pan-y}
.bath-photo-compare:focus-within{outline:3px solid #246bb8;outline-offset:4px}
.bath-photo-compare .illustration-label{font-size:14px;line-height:1.55;max-width:calc(100% - 24px);white-space:normal;text-align:center;z-index:2;padding:6px 12px}
.bath-dialog-help{font-size:15px;line-height:1.7;margin:23px auto;max-width:690px;text-align:center}
.bath-photo-dialog>.button{display:flex;width:fit-content;max-width:100%;margin:auto;font-size:16px;line-height:1.5;gap:15px}
@keyframes bathHeatFlow{to{stroke-dashoffset:-102}}@keyframes bathRain{to{stroke-dashoffset:-60}}@keyframes bathWarmth{50%{opacity:.65}}
@media(max-width:1150px){
  .bath-hero{gap:40px}.bath-hero h1{font-size:57px}.bath-hero>div>p{font-size:17px}.bath-hero .button-row{gap:18px}
  .bath-example-grid{gap:20px}.bath-example-copy{padding:21px}.bath-example-copy h3{font-size:24px}
  .bath-planner-layout{grid-template-columns:minmax(0,1.4fr) minmax(310px,1fr);gap:22px}.bath-room-stage{padding-inline:18px}
  .bath-view-controls{gap:6px}.bath-view-controls>button{padding-inline:11px}.bath-result-card{padding:27px 22px}
  .bath-renovation-grid{grid-template-columns:1fr 1fr;gap:35px}.bath-renovation-grid p{max-width:420px}
}
@media(max-width:950px){
  .bath-hero{grid-template-columns:1fr 1fr;gap:30px}.bath-hero h1{font-size:49px}.bath-hero-photo{aspect-ratio:1/1.4}
  .bath-hero-photo>figcaption{left:17px;right:17px;bottom:17px;padding:18px}.bath-hero-photo figcaption>strong{font-size:20px}
  .bath-gallery-toolbar{flex-direction:column;align-items:stretch;gap:20px}.bath-form-filter{width:100%;min-width:0}
  .bath-example-grid{grid-template-columns:1fr 1fr}.bath-planner-layout{grid-template-columns:1fr}.bath-planner-controls{position:static}
  .bath-material-options>button{font-size:16px}.bath-material-options>button>i{height:48px}
  .bath-stage-column{max-width:none}.bath-room-stage{padding:25px}.bath-scene{max-width:820px;margin-inline:auto}
  .bath-selected-idea{grid-template-columns:135px minmax(0,1fr)}.bath-balance-grid{grid-template-columns:1fr}
  .bath-result-card{padding:29px}.bath-result-card>strong{font-size:46px}.bath-usage-grid{gap:18px}
  .bath-electric-example{padding:30px;gap:25px}.bath-plan-actions{align-items:flex-start}
}
@media(max-width:680px){
  .bath-hero{grid-template-columns:1fr;gap:32px;padding:22px 0 42px}.bath-hero h1{font-size:clamp(36px,10vw,55px);line-height:1.08;margin:22px 0}
  .bath-hero>.eyebrow,.bath-hero>div>.eyebrow{font-size:13px;line-height:1.7}.bath-hero .button-row{margin-top:25px;gap:20px;align-items:flex-start;flex-direction:column}
  .bath-hero .button-row>.button{width:100%;font-size:16px;gap:13px;padding:15px 17px}
  .bath-hero .text-link{font-size:16px}.bath-hero-facts{gap:12px 18px;margin-top:25px;font-size:15px}
  .bath-hero>div>.bath-local{font-size:14px!important;margin-top:21px}.bath-hero-photo{aspect-ratio:1;border-radius:19px}
  .bath-hero-photo>figcaption{padding:18px 19px;border-radius:12px;left:17px;right:17px;bottom:17px}
  .bath-hero-photo figcaption>span{font-size:13px}.bath-hero-photo figcaption>strong{font-size:21px}.bath-hero-photo figcaption>small{font-size:14px}
  .bath-intro{padding-block:43px;text-align:left}.bath-intro h2{font-size:32px;margin-top:17px;line-height:1.2}
  .bath-intro>p{margin-top:24px}.bath-intro>.bath-disclosure{font-size:15px!important;line-height:1.75!important;margin-top:20px}
  .bath-ideas{padding-top:35px}.bath-ideas .section-heading{margin-bottom:25px}.bath-ideas .section-heading h2{font-size:33px;line-height:1.15}
  .bath-ideas .section-heading>p{margin-top:10px}.bath-gallery-toolbar{gap:20px;margin-top:27px;margin-bottom:20px}
  .bath-style-filters{display:grid;grid-template-columns:1fr 1fr;gap:5px}.bath-style-filters>button{font-size:16px;padding:13px 8px;line-height:1.45}
  .bath-form-filter{font-size:16px;gap:10px}.bath-form-filter select{font-size:16px;min-height:52px}
  .bath-gallery-status{font-size:15px!important;line-height:1.7!important;margin-bottom:25px}
  .bath-example-grid{grid-template-columns:minmax(0,1fr);gap:25px}.bath-example-card{border-radius:18px}
  .bath-example-copy{padding:25px 22px}.bath-example-copy .eyebrow{font-size:13px;line-height:1.7}.bath-example-copy h3{font-size:27px;line-height:1.18;margin-top:15px}
  .bath-example-copy>p{margin-top:15px}.bath-example-copy>.text-link{font-size:16px;line-height:1.5;margin-top:18px}
  .bath-photo-pill{font-size:15px;left:17px;bottom:17px;padding:11px 15px}.bath-gallery-more{margin-top:28px}.bath-gallery-more>.button{width:100%;font-size:16px;line-height:1.5;padding-inline:17px}
  .bath-planner-section{padding-block:52px}.bath-planner-section .section-heading h2{font-size:34px;line-height:1.15}
  .bath-planner-layout{gap:20px}.bath-room-stage{padding:21px 15px 22px;border-radius:19px}.bath-stage-heading{gap:13px;align-items:center}
  .bath-stage-heading>.eyebrow{font-size:12px!important;letter-spacing:.05em;max-width:200px}.bath-motion-button{width:44px;height:44px}
  .bath-view-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:18px}
  .bath-view-controls>button{font-size:16px!important;min-height:46px;padding:11px 5px;line-height:1.5}.bath-view-controls>button:nth-child(n+3){font-size:23px!important}
  .bath-scene{min-height:0;margin-top:13px}.bath-room-svg .bath-dimension-label{font-size:44px}.bath-scene-instruction{margin-top:16px;font-size:15px!important;line-height:1.7!important}
  .bath-object-legend{grid-template-columns:1fr;gap:12px;padding-block:20px;font-size:16px}.bath-object-legend b{font-size:15px;width:24px}
  .bath-scene-toggles{display:grid;grid-template-columns:1fr;gap:9px;margin-top:22px}.bath-scene-toggles>button{font-size:16px;line-height:1.5;padding:13px;min-height:49px}
  .bath-scene-note{font-size:14px!important;line-height:1.75!important;margin-top:21px}
  .bath-selected-idea{grid-template-columns:85px minmax(0,1fr);gap:16px;padding:19px 17px;border-radius:15px}
  .bath-selected-idea .eyebrow{font-size:12px!important;line-height:1.7;letter-spacing:.035em}.bath-selected-idea h3{font-size:21px;line-height:1.3}
  .bath-selected-idea p{font-size:15px!important;line-height:1.7!important}.bath-selected-idea .text-link{font-size:16px!important;line-height:1.5}
  .bath-warnings{padding:23px 20px;border-radius:15px}.bath-warnings>strong{font-size:18px;line-height:1.5}.bath-warnings p{font-size:15px!important;line-height:1.7!important}
  .bath-planner-controls{padding:25px 20px;border-radius:19px}.bath-control-heading{margin-bottom:22px}.bath-control-heading .eyebrow{font-size:13px;line-height:1.6}
  .bath-control-heading>button{font-size:16px}.bath-select-label{font-size:16px;line-height:1.6;margin-top:15px}
  .bath-planner-controls select{font-size:16px;padding:13px 30px 13px 12px;min-height:52px}
  .bath-planner-controls>p{font-size:16px!important;line-height:1.7!important}
  .bath-material-options{gap:7px;margin-top:24px}.bath-material-options>button{font-size:16px!important;padding:12px 5px;line-height:1.5}.bath-material-options>button>i{height:35px}
  .bath-control-details>summary{font-size:18px!important;line-height:1.5;padding-block:21px}
  .bath-field{margin:21px 0 29px}.bath-field>label{font-size:16px;line-height:1.65}.bath-number-row{font-size:16px;line-height:1.5}
  .bath-number-row>input{font-size:21px!important;max-width:58%;width:116px;padding:11px;min-height:51px}.bath-field>p{font-size:15px!important;line-height:1.7!important}
  .bath-switch-row{gap:18px;align-items:center}.bath-switch-row strong{font-size:17px;line-height:1.5}.bath-switch-row p{font-size:15px!important;line-height:1.7!important}
  .bath-switch-row .solar-switch{flex:none;width:50px;height:30px;min-height:30px}.bath-planner-controls>.button{font-size:16px;line-height:1.5;padding-inline:16px}
  .bath-balance-section>.section-heading h2{font-size:34px;line-height:1.15}.bath-balance-grid{gap:16px;margin-top:28px}.bath-result-card{padding:27px 23px;border-radius:17px}
  .bath-result-card>strong{font-size:45px;margin-top:19px}.bath-result-card strong>em{font-size:21px}.bath-result-card>p{margin-top:20px}
  .bath-result-card>.bath-result-verdict{font-size:16px!important;line-height:1.7!important}
  .bath-usage-grid{grid-template-columns:1fr;gap:16px;margin-top:21px}.bath-calculation-details{padding-inline:20px;border-radius:15px}
  .bath-calculation-details>summary{font-size:18px!important;line-height:1.5;padding-block:21px;gap:14px}
  .bath-calculation-details>p{font-size:16px!important;line-height:1.8!important;margin-bottom:26px}
  .bath-electric-example{grid-template-columns:1fr;padding:27px 21px;gap:25px;border-radius:18px}.bath-electric-example h3{font-size:29px;line-height:1.2}
  .bath-electric-example strong{font-size:24px;line-height:1.4}.bath-electric-example .bath-calculation-details{padding-inline:17px}
  .bath-plan-actions{flex-direction:column;align-items:stretch;gap:16px;margin-top:31px}.bath-plan-actions>.button{font-size:16px;line-height:1.5;padding:16px;gap:12px}
  .bath-plan-actions>.text-link{font-size:16px;line-height:1.5;justify-content:flex-start}.bath-plan-status{font-size:15px!important;line-height:1.75!important;margin-top:21px}
  .bath-renovation{padding-block:55px}.bath-renovation h2{font-size:34px;line-height:1.15;margin-top:20px}.bath-renovation-grid{grid-template-columns:1fr;gap:29px;margin:33px 0}
  .bath-renovation-grid article{padding-top:22px}.bath-renovation-grid article>span{font-size:16px}.bath-renovation-grid h3{font-size:25px;line-height:1.25;margin-top:16px}
  .bath-renovation-grid p{margin-top:17px;color:#bdccdf}.bath-renovation .button{font-size:16px;line-height:1.5;width:100%;padding:16px;gap:13px}
  .bath-local-contact>h2{font-size:33px;line-height:1.15}.bath-local-contact>.eyebrow{font-size:13px}.bath-local-contact>p{text-align:left}
  .bath-local-contact>.button{font-size:16px;line-height:1.5;padding:16px;gap:13px;width:100%}.bath-sources{margin-bottom:55px}
  .bath-photo-dialog{width:calc(100% - 20px);max-height:94dvh;padding:23px 15px 25px;border-radius:18px}
  .bath-dialog-heading{padding:32px 5px 24px}.bath-dialog-heading h2{font-size:27px;line-height:1.2;margin-top:15px}.bath-dialog-heading p{font-size:15px!important;line-height:1.7!important}
  .bath-dialog-heading .eyebrow{font-size:12px!important;line-height:1.7;letter-spacing:.04em}
  .bath-photo-compare{width:100%;border-radius:13px}.bath-photo-compare .compare-label{font-size:14px;padding:8px 12px}
  .bath-photo-compare .illustration-label{font-size:13px!important;line-height:1.6}.bath-photo-dialog>.button{font-size:16px;line-height:1.5;padding:15px 14px;gap:12px;width:100%}
  .bath-dialog-help{font-size:15px!important;line-height:1.7!important;text-align:left;margin:22px 3px}
}
@media(max-width:360px){
  .bath-view-controls{grid-template-columns:1fr 1fr;gap:7px}.bath-view-controls>button{font-size:16px!important}.bath-view-controls>button:nth-child(n+3){padding:5px;min-height:44px}
  .bath-selected-idea{grid-template-columns:1fr}.bath-selected-thumb{width:130px}.bath-material-options{flex-direction:column}
  .bath-material-options>button{flex-direction:row;align-items:center;justify-content:flex-start;font-size:16px!important;padding:12px;gap:14px}
  .bath-material-options>button>i{width:57px;height:36px;flex:none}.bath-hero h1{font-size:36px}
}
@media(prefers-reduced-motion:reduce){
  .bath-example-image>.bath-atlas{transition:none}.bath-room-stage *{animation:none!important}
}
