.mobile-price{display:none}.navigation[hidden]{display:none}label .muted{font-weight:400}
.address-input{position:relative}.address-input>span{position:absolute;left:15px;top:11px;color:var(--blue);font-size:25px;pointer-events:none}.address-input #address{padding-left:43px}#search-status:empty{display:none}.address-block{margin-bottom:21px}
.map-panel{background:white;border:1px solid var(--line);border-radius:17px;overflow:hidden}.persistent-map-heading{display:flex;justify-content:space-between;align-items:center;padding:18px 18px 14px}.persistent-map-heading .eyebrow{margin-bottom:6px}.persistent-map-heading h2{font-size:17px;letter-spacing:-.3px}.map-heading-icon{color:var(--blue);font-size:29px}.map-panel .map-shell{margin:0;border:0;border-radius:0}.map-panel .map{height:clamp(220px,38vh,390px)}.map-panel .map-status{font-size:11px}.map-panel .map-address{border-top:1px solid var(--line)}#right-panel{min-width:0}#sidebar{position:static;margin-top:14px}.side-photo,.side-reassurance,#sidebar .help-link{display:none}#sidebar .side-content{padding:17px 19px}#sidebar .small-gap{font-size:18px;margin-top:7px}#sidebar .big-price{font-size:27px}#sidebar .price-row{margin-top:11px;font-size:12px}#sidebar .price-row small{font-size:10px;margin-top:2px}#sidebar .price-row strong{font-size:12px}#sidebar .price-total{margin-top:12px;padding-top:10px}
@media(min-width:1024px){.layout{grid-template-columns:minmax(0,1fr) 420px;gap:24px}#right-panel{position:sticky;top:20px}#sidebar{position:static}.map-panel .map{min-height:220px}.map-header{margin-top:27px}}
@media(min-width:1024px) and (max-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 350px;gap:18px}.workspace{padding:25px}.package-grid{grid-template-columns:1fr}.package{padding:16px;display:grid;grid-template-columns:1fr auto;gap:0 12px}.package .pkg-price{margin:0}.pkg-caption{grid-column:2;text-align:right}.features,.pkg-choice{grid-column:1/-1}}
@media(max-width:1023px){#right-panel{display:none}#mobile-map-slot{margin-top:21px}.persistent-map-heading{padding:13px 14px}.persistent-map-heading h2{font-size:15px}.map-panel{border-radius:11px}.map-panel .map{height:300px}.map-panel .map-status{font-size:10px}.map-panel .map-address{font-size:10px}}
@media(min-width:1024px){.header{height:91px}.progress{padding-top:14px;padding-bottom:23px}.workspace{padding:29px 33px}.service-grid{margin-top:23px;gap:10px}.service{padding:15px 17px}.navigation{margin-top:23px;padding-top:19px}.sub-note{margin-top:14px}}
@media(max-width:1023px){.navigation{position:fixed;bottom:0;left:0;right:0;z-index:1100;display:grid;grid-template-columns:1fr auto;gap:2px 15px;padding:13px 20px max(13px,env(safe-area-inset-bottom));margin:0;background:white;box-shadow:0 -4px 20px #17364912;border-top:1px solid var(--line)}.mobile-price{display:block;grid-column:1;grid-row:1}.mobile-price small{display:block;font-size:10px;color:var(--muted);line-height:1.5}.mobile-price strong{display:block;font:800 17px Manrope;margin-top:2px}.navigation .primary{grid-column:2;grid-row:1/3;max-width:190px;font-size:12px;gap:13px}.navigation .back{grid-column:1;grid-row:2;padding:2px 0;text-align:left;font-size:10px;width:100%}#sidebar{display:none}.foot{padding-bottom:125px}.toast{bottom:115px}.map{height:340px}.map-status{font-size:10px}.map-tools{margin-top:13px}.navigation:has(.back[hidden]) .primary{grid-row:1}.navigation:has(.back[hidden]){padding-top:15px;padding-bottom:max(15px,env(safe-area-inset-bottom))}.workspace{padding-bottom:25px}}

.wall-section{margin-top:25px;padding-top:23px;border-top:1px solid var(--line)}.wall-section h3{max-width:480px;line-height:1.5}.wall-choices{display:flex;gap:9px;margin:15px 0}.wall-choice{border:1px solid var(--line);border-radius:8px;background:white;padding:10px 24px;min-width:82px;color:var(--ink);font-weight:600}.wall-choice.chosen{border-color:var(--blue);background:var(--pale);box-shadow:inset 0 0 0 .5px var(--blue)}.wall-tools{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.wall-summary p{margin-top:12px}.wall-summary h3{font-size:15px}.wall-price-note{margin-top:12px;font-size:11px}.map-draw-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;border-top:1px solid var(--line);background:#f8fcfe}.map-draw-tools .primary{font-size:12px;padding:12px 14px}.map-draw-tools .text-button{font-size:11px}.map-draw-tools[hidden],.wall-tools[hidden],.map-tools button[hidden],.map-draw-tools button[hidden]{display:none}.wall-price-row strong{font-size:11px!important;color:var(--muted)}
@media(max-width:1023px){.wall-tools .outline{flex:1;min-width:120px}.wall-row{flex-wrap:wrap}.wall-row>div{flex:1;min-width:100px;max-width:none}.wall-summary p{font-size:12px}.map-draw-tools{gap:7px;padding:10px}.map-draw-tools .primary{padding:10px;font-size:11px}.map-draw-tools .outline{padding:10px;font-size:10px}.break-total{gap:12px}.break-total>span{font-size:12px}}

/* The map receives roughly the same desktop share as the reference calculator. */
@media(min-width:1024px){main{max-width:none;padding:0 24px}.header{max-width:none;padding:0 28px;height:80px}.layout{grid-template-columns:minmax(340px,38%) minmax(0,1fr);gap:20px}.workspace{padding:24px}.progress{max-width:none;padding:0 0 27px}.step{font-size:10px;gap:6px}.step:after{width:12px;margin-right:6px}.map-panel .map{height:calc(100dvh - 140px);min-height:460px;max-height:920px}.persistent-map-heading{display:none}.map-panel{border-radius:14px}.package-grid{grid-template-columns:1fr}.package{padding:16px;display:grid;grid-template-columns:1fr auto;gap:0 12px}.package .pkg-price{margin:0}.pkg-caption{grid-column:2;text-align:right}.features,.pkg-choice{grid-column:1/-1}.break-total{gap:12px}.break-total>span{font-size:12px}.break-total strong{font-size:24px}}
@media(max-width:1023px){.workspace .progress{margin-bottom:2px;padding-top:0}.map-panel .map{height:clamp(340px,58dvh,520px)}}

.house-marker{pointer-events:none}.house-marker svg{width:44px;height:54px;fill:var(--blue);stroke:white;stroke-width:3;stroke-linejoin:round;filter:drop-shadow(0 2px 4px #102b4970)}.house-label{background:white;color:var(--dark);border:0;border-radius:7px;font:700 11px Manrope;padding:5px 9px;box-shadow:0 2px 8px #102b4930}.house-label:before{display:none}.house-direction{position:absolute;z-index:650;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:3px;background:white;border:2px solid var(--blue);border-radius:11px;padding:7px 10px;color:var(--dark);box-shadow:0 2px 12px #102b4935;min-width:63px;pointer-events:auto}.house-direction svg{width:26px;height:26px;fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.house-direction span{font-size:10px;font-weight:700;white-space:nowrap}.house-direction[hidden]{display:none}

.map-panel{scroll-margin-top:20px}
.measure-guide .primary{background:var(--blue);color:white;border:0}.measure-guide .primary:hover{background:#078bc6}

#right-panel[hidden]{display:none}.layout:not(.has-map){display:block;max-width:1023px;margin:0 auto}.layout:not(.has-map) .workspace{width:100%}.measure-guide{margin-top:20px;border:1px solid #c3e3f1;border-radius:12px;padding:18px;background:#f5fbfe}.guide-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.guide-heading h3{font-size:16px;line-height:1.4}.guide-diagram{width:85px;height:65px;flex-shrink:0;overflow:visible}.guide-diagram .guide-fill{fill:#0e9eda20;stroke:var(--blue);stroke-width:2}.guide-diagram circle{fill:var(--blue);stroke:white;stroke-width:2}.guide-diagram text{fill:white;text-anchor:middle;font:700 11px 'DM Sans',sans-serif}.guide-diagram .guide-arrow{fill:none;stroke:var(--blue);stroke-width:2}.measure-guide ol{list-style:none;padding:0;margin:12px 0 0;counter-reset:guide}.measure-guide li{counter-increment:guide;display:flex;align-items:flex-start;gap:10px;padding:9px 0}.measure-guide li:before{content:counter(guide);background:white;border:1px solid #bddfea;color:#1379a8;flex-shrink:0;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-size:12px;font-weight:700}.measure-guide li strong{font-size:13px;display:block;line-height:1.5}.measure-guide li small{display:block;font-size:12px;line-height:1.6;color:var(--muted);margin-top:3px}.measure-guide .map-tools{margin-top:16px;align-items:center;gap:14px}.measure-guide .primary{padding:13px 17px;font-size:13px}.guide-reassurance{font-size:11px;color:var(--muted);margin-top:12px}.map-panel .map-status{background:white;border:1px solid #d1e3ec;padding:12px 14px;font-size:12px;line-height:1.5;right:56px;pointer-events:none}.map-status strong{display:block;color:var(--dark);font:700 15px/1.4 Manrope;margin-bottom:4px}.map-status>span{display:block;font-size:12px;color:var(--muted)}.drawing .map-status{border:2px solid var(--blue);background:#f5fbfe}.measure-point-marker{clip-path:circle(50%)}.numbered-dot{width:var(--point-size,16px);height:var(--point-size,16px);border:1.5px solid white;font:700 10px/1 'DM Sans',sans-serif;display:grid;place-items:center;color:white;cursor:grab}.close-point{border-width:2px;cursor:pointer}.close-point-label{border:0;border-radius:7px;color:var(--dark);font:700 11px 'DM Sans',sans-serif;padding:7px 9px;box-shadow:0 2px 7px #112b4930}.drawing .leaflet-container{cursor:crosshair}
@media(max-width:1023px){.measure-guide{padding:15px}.guide-heading h3{font-size:15px}.guide-diagram{width:72px;height:57px}.measure-guide li strong{font-size:12px}.measure-guide li small{font-size:11px}.measure-guide .map-tools{flex-direction:column;align-items:stretch;gap:12px}.measure-guide .text-button{text-align:center}.map-panel .map-status{padding:9px 10px;font-size:11px;left:8px;top:8px;right:45px}.map-status strong{font-size:12px}.map-status>span{font-size:10px;line-height:1.5}.guide-reassurance{font-size:10px}.map-draw-tools .primary{font-size:10px}.layout:not(.has-map){max-width:none}}

.map-address{position:relative}.map-address-actions{display:flex;align-items:center;gap:14px}.map-credit summary{list-style:none;cursor:pointer;color:var(--muted);font-size:17px;line-height:1;padding:4px}.map-credit summary::-webkit-details-marker{display:none}.map-credit summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}.map-credit>div{position:absolute;right:10px;bottom:calc(100% + 8px);z-index:700;max-width:260px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 3px 15px #17364925;color:var(--muted);font-size:10px;line-height:1.6}.map-address-title{min-width:0}

@media(min-width:1024px){.navigation{flex-wrap:wrap;align-items:center}.navigation .mobile-price{display:block;flex:0 0 100%;margin-bottom:3px}.navigation .mobile-price[data-ready="false"]{display:none}.navigation .mobile-price small{display:block;font-size:10px;color:var(--muted);line-height:1.5}.navigation .mobile-price strong{display:block;font:800 23px Manrope;margin-top:3px}}

.map-status[hidden]{display:none}
.service-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0 24px}.service-route:has(.service-stage:only-child){grid-template-columns:1fr}.service-route:has(.service-stage:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.service-stage{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid var(--line);background:white;border-radius:10px;padding:12px 10px;color:var(--dark);min-width:0}.service-stage-number{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;border-radius:50%;background:#edf3f6;color:var(--muted);font-weight:700;font-size:12px}.service-stage strong{display:block;font-size:12px;line-height:1.4}.service-stage small{display:block;font-size:10px;line-height:1.5;margin-top:2px;color:var(--muted)}.service-stage:disabled{cursor:default;opacity:.6}.service-stage.current{border-color:var(--blue);background:#f1faff}.service-stage.current .service-stage-number,.service-stage.finished .service-stage-number{background:var(--blue);color:white}.service-stage.finished{border-color:#bcdfec}.service-stage.finished small{color:#147aa4}.service-stage:focus-visible{outline:3px solid #0e9eda50;outline-offset:3px}
@media(max-width:1023px){.service-route{gap:5px;margin:18px 0}.service-stage{padding:10px 7px;gap:6px}.service-stage-number{width:21px;height:21px;font-size:11px}.service-stage strong{font-size:10px}.service-stage small{font-size:9px}}

/* Saved measurements retain their service colors throughout the flow. */
.map-legend{display:flex;flex-wrap:wrap;gap:9px 18px;padding:11px 15px;background:white;border-top:1px solid var(--line)}.map-legend span{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:var(--dark)}.map-legend i{width:20px;height:4px;border-radius:3px;background:var(--service-color)}.map-legend:empty{display:none}
.service-route:has(.service-stage:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
.measure-guide .guide-fill{stroke:var(--service-color);fill:color-mix(in srgb,var(--service-color) 12%,transparent)}.measure-guide .guide-line{stroke:var(--service-color);stroke-width:2;fill:none}.measure-guide .guide-diagram circle{fill:var(--service-color)}
.numbered-dot{background:var(--service-color)}.close-point{border-width:2px}.drawing .map-status{border-color:var(--service-color)}
.service-label-fliser{border-left:4px solid #0e9eda}.service-label-tag{border-left:4px solid #8b5cf6}.service-label-trae{border-left:4px solid #16a06a}.service-label-tagrender{border-left:4px solid #f28c28}
@media(max-width:1023px){.map-legend{padding:10px 12px;gap:8px 14px}.map-legend span{font-size:10px}.map-legend i{width:15px}}

/* Select individual extras and a separate agreement for each service. */
.cleaning-base{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px;background:#f4f9fc;border:1px solid var(--line);border-radius:10px;margin-top:16px}.cleaning-base>div{min-width:0}.cleaning-base strong{font-size:15px}.cleaning-base>strong{white-space:nowrap}.cleaning-base small{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:5px}.addon-heading{font-size:15px;margin:23px 0 13px}.addon-heading .muted{font-size:12px;font-weight:400}.addon-list{display:grid;gap:10px}.addon-choice,.maintenance-choice{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:15px;border-radius:10px;background:white;cursor:pointer}.addon-choice:has(input:checked),.maintenance-choice:has(input:checked){border-color:var(--blue);background:#f2fbff}.addon-choice input,.maintenance-choice input{width:20px;height:20px;accent-color:var(--blue);flex-shrink:0;margin:0}.addon-choice>span{flex:1;min-width:0}.addon-choice strong,.maintenance-choice strong{font-size:13px;line-height:1.5;display:block}.addon-choice small,.maintenance-choice small{display:block;font-size:11px;color:var(--muted);line-height:1.7;margin-top:4px}.addon-choice>b{font-size:12px;white-space:nowrap}.cleaning-total{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:16px;margin-top:18px;font-size:13px}.cleaning-total strong{font-size:21px;white-space:nowrap}.maintenance-section{border-top:1px solid var(--line);margin-top:28px;padding-top:26px}.maintenance-section h2,.maintenance-summary h2{font-size:21px}.maintenance-choice{margin-top:15px;align-items:flex-start}.maintenance-choice input{margin-top:3px}.maintenance-payment{font-size:11px;line-height:1.7;color:var(--muted);margin-top:12px}.maintenance-payment[hidden]{display:none}.maintenance-summary{border:1px solid #b9dfef;background:#f5fbfe;padding:19px;border-radius:12px;margin-top:25px}.maintenance-summary-row{border-top:1px solid #d1e6ef;padding-top:14px;margin-top:14px}.maintenance-summary-row h3{font-size:13px;margin-bottom:7px}.maintenance-summary-row strong{font-size:13px}.maintenance-summary-row small{display:block;font-size:11px;color:var(--muted);line-height:1.7;margin-top:4px}
@media(max-width:1023px){.addon-choice{padding:13px;gap:9px;flex-wrap:wrap}.addon-choice>span{flex:1}.addon-choice>b{margin-left:29px;width:100%}.cleaning-base{padding:14px;gap:10px}.maintenance-choice{padding:13px;gap:10px}.cleaning-total strong{font-size:19px}.maintenance-summary{padding:16px}}

.measure-guide li>span{font-size:12px;line-height:1.65;padding-top:2px}.persistent-map-heading{display:none}.measure-hint:empty,.help:empty{display:none}.maintenance-section h2>.muted{font-size:12px;font-weight:400}.maintenance-section h2{line-height:1.5}.cleaning-base{margin-top:0}.addon-choice{min-height:65px}

/* Keep the house shortcut inside the map; no separate address row. */
.map-corner-controls{position:absolute;right:12px;bottom:12px;z-index:650;display:flex;align-items:center;gap:7px;pointer-events:auto}.map-corner-controls #center-map{border:1px solid #d3e0e7;border-radius:8px;background:white;color:var(--blue);font-size:12px;font-weight:700;padding:10px 14px;min-height:40px;box-shadow:0 2px 9px #152b3b26}.map-corner-controls #center-map:hover{background:#f1faff}.map-corner-controls .map-credit summary{background:white;border:1px solid #d3e0e7;border-radius:8px;width:36px;min-height:40px;display:grid;place-items:center;padding:0;box-shadow:0 2px 9px #152b3b26}.map-corner-controls .map-credit>div{right:0;max-width:min(260px,calc(100vw - 70px));width:260px}.map-corner-controls [hidden]{display:none}
@media(max-width:1023px){.map-corner-controls{right:9px;bottom:9px}.map-corner-controls #center-map{font-size:11px;padding:9px 12px}}

/* Measurement details stay with each drawing, without dialogs. */
.measurement-fields .building-description{grid-column:1/-1}.measurement-fields [hidden]{display:none}
.measurement-card{border:1px solid var(--line);border-left:3px solid var(--service-color);border-radius:10px;padding:13px 14px;margin-top:10px;background:white}.measurement-header{display:flex;align-items:center;gap:10px}.measurement-header>strong{font-size:13px;flex:1;min-width:0}.measurement-header .area-value{font-size:13px;font-weight:700;white-space:nowrap}.measurement-header>button{border:0;background:transparent;padding:6px;color:var(--muted);font-size:12px}.measurement-header>button:last-child{font-size:20px;line-height:1}.measurement-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:11px}.measurement-fields label{font-size:11px;margin:0;font-weight:600;line-height:1.6}.measurement-fields input,.measurement-fields select{display:block;width:100%;min-height:42px;margin-top:5px;padding:9px 11px;font-size:12px;border:1px solid #cad9e2;border-radius:7px;background:white}.measurement-error{margin-top:9px;font-size:11px;color:#ab3025}.measurement-error[hidden]{display:none}.measurement-fields input:user-invalid,.measurement-fields select:user-invalid{border-color:#ab3025}
@media(max-width:1023px){.measurement-card{padding:12px}.measurement-fields{grid-template-columns:1fr}.measurement-header{gap:7px}.measurement-header>strong,.measurement-header .area-value{font-size:12px}}

.brand-gutter-icon{display:block;width:38px;height:30px;background:currentColor;mask:url('assets/tagrende-forside.png') center/contain no-repeat;-webkit-mask:url('assets/tagrende-forside.png') center/contain no-repeat}
.leaflet-marker-icon.house-marker svg{width:100%;height:100%}.leaflet-marker-icon.house-marker{pointer-events:none!important;cursor:default}.drawing .house-label{display:none}
.measurement-card{padding:10px 12px}.measurement-fields{gap:10px;margin-top:8px}.measurement-fields input,.measurement-fields select{min-height:36px;margin-top:3px;padding:7px 9px}.measurement-header{gap:8px}.measurement-saved{color:#17815a;font-size:10px;white-space:nowrap}.measurement-saved[hidden]{display:none}.manual-basic .area-value{display:none}.compact-number{display:flex;align-items:center;gap:5px;margin:0!important;flex:0 0 auto;font-weight:500!important}.compact-number input{width:85px;min-height:36px;padding:7px 8px;margin:0;border:1px solid #cad9e2;border-radius:7px;font-size:13px}.compact-number>span:last-child{font-size:12px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1023px){.compact-number input{width:65px}.manual-basic .measurement-header{gap:6px}.manual-basic .measurement-header>strong{font-size:11px}.measurement-saved{font-size:9px}.measurement-fields{gap:8px}.brand-gutter-icon{width:32px;height:26px}}

.close-point-label{pointer-events:none}

/* All measurements precede the shared options step. */
.service-options{border:1px solid var(--line);border-left:3px solid var(--service-color);border-radius:11px;margin-top:14px;background:white;overflow:hidden}.service-options>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:16px 14px;cursor:pointer}.service-options>summary::-webkit-details-marker{display:none}.options-heading{flex:1;min-width:0}.options-heading>strong{display:block;font:700 15px/1.4 Manrope;color:var(--dark)}.options-heading small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.5}.option-price{font-size:13px;white-space:nowrap;color:var(--dark)}.options-chevron{font-size:19px;color:var(--muted)}.service-options[open] .options-chevron{transform:rotate(180deg)}.service-options[open]>summary{border-bottom:1px solid var(--line);background:#f7fbfd}.options-body{padding:0 14px 17px}.options-body .package-section{margin-top:15px}.options-body .maintenance-section{margin-top:20px;padding-top:18px}.options-body .maintenance-section h2{font-size:16px}.options-body .addon-heading{margin-top:18px}.shared-details{margin-top:26px}.service-options>summary:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
@media(max-width:1023px){.service-options>summary{padding:14px 11px;gap:7px}.options-heading>strong{font-size:13px}.option-price{font-size:12px}.options-body{padding:0 11px 14px}}

/* A compact, readable recap before the shared contact form. */
.task-question label{position:relative}.task-question input[type=radio]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap;border:0}.task-question label:has(input:focus-visible){outline:3px solid #0e9eda55;outline-offset:3px}.task-question label:hover{border-color:var(--blue)}
.photo-section{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}.photo-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.photo-heading h3{font-size:13px;line-height:1.5;letter-spacing:0}.photo-heading h3 .muted{font-size:11px;font-weight:400}.photo-count{color:#087fab;background:var(--pale);border-radius:6px;padding:4px 8px;font-size:10px;white-space:nowrap}.photo-upload-zone{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;border:1.5px dashed #acd5e9;border-radius:12px;background:linear-gradient(135deg,#f7fcff,#edf7fc);padding:22px 16px;text-align:center;transition:border-color .15s,background .15s}.photo-upload-zone.drag-over{background:#def3fe;border-color:var(--blue)}.photo-upload-zone>svg{width:34px;height:34px;stroke:var(--blue);stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.photo-upload-zone>strong{font-size:13px;line-height:1.5;color:var(--dark);font-weight:600}.photo-upload-zone .photo-choose{display:flex;align-items:center;gap:22px;background:white;border-color:#90cae5;border-radius:8px;color:#087fab;padding:10px 18px;font-size:12px;font-weight:600}.photo-choose span{font-size:19px;line-height:1}.photo-choose:disabled{opacity:.55;cursor:default}.photo-upload-zone>p{font-size:10px;color:var(--muted);line-height:1.5}.photo-input{position:absolute;width:1px;height:1px;padding:0!important;opacity:0;pointer-events:none;overflow:hidden;clip-path:inset(50%)}.photo-section .file-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.photo-section .file-list:empty{display:none}.photo-section .file-item{width:auto;min-width:0;position:relative;overflow:visible}.photo-section .file-item img,.photo-placeholder{width:100%;height:65px;object-fit:cover;border:1px solid var(--line);border-radius:8px}.photo-placeholder{display:grid;place-items:center;color:var(--blue);font-size:28px;background:var(--pale)}.photo-filename{display:block;margin-top:5px;font-size:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.photo-section .file-item button{position:absolute;right:-5px;top:-5px;width:22px;height:22px;padding:0;border:1px solid #c5dbe6;border-radius:6px;background:white;box-shadow:0 1px 5px #17364915;color:var(--dark);font-size:17px;line-height:1}.photo-section .file-item button:hover{color:#ab3025;border-color:#ab3025}
@media(max-width:1023px){.photo-section .file-list{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-section .file-item img,.photo-placeholder{height:78px}.photo-upload-zone{padding:20px 12px}.photo-heading h3{font-size:12px}}
[hidden]{display:none!important}
.task-question{border:0;padding:0;margin:20px 0}.task-question legend{font-size:13px;font-weight:600;line-height:1.5;padding:0;margin-bottom:10px}.task-question>div{display:flex;gap:10px}.task-question label{display:flex!important;align-items:center;justify-content:center;gap:8px;min-width:86px;border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin:0!important;cursor:pointer}.task-question label:has(input:checked){border-color:var(--blue);background:var(--pale);color:#087fab}.task-question input[type=radio]{width:15px;height:15px;margin:0;padding:0;accent-color:var(--blue)}
.recap-service-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.recap-service-actions>strong{font-size:14px;color:var(--dark);white-space:nowrap}
.maintenance-info-button{display:inline-block;margin-top:8px;font-size:11px}.service-info-dialog{width:min(490px,calc(100% - 30px));max-height:calc(100dvh - 30px);overflow:auto;padding:28px}.service-info-close{position:absolute;right:16px;top:16px}.service-info-dialog h2{font-size:23px;padding-right:22px;line-height:1.4}.service-info-intro{margin-top:12px;font-size:13px;color:var(--muted)}.service-info-price{margin-top:18px;background:var(--pale);border:1px solid #c3e5f4;border-radius:10px;padding:17px}.service-info-price strong{font:800 28px Manrope;display:block;color:var(--dark)}.service-info-price span,.service-info-price small{display:block;margin-top:4px;font-size:12px;color:var(--muted)}.service-info-price small{font-size:10px}.service-info-details{font-size:12px;line-height:1.65;margin:18px 0 0}.service-info-details>div{margin-top:13px}.service-info-details dt{font-weight:700}.service-info-details dd{margin:2px 0 0;color:var(--muted)}.service-info-guarantee{font-size:11px;line-height:1.65;background:#f5f8fa;border-radius:8px;padding:12px;margin-top:16px}.service-info-dialog .primary{margin-top:20px}.recap-photo-count{font-size:12px;color:var(--muted);margin-top:14px}
.quote-recap{margin-top:23px}.recap-service{border:1px solid var(--line);border-radius:11px;margin-top:11px;padding:16px}.recap-service-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.recap-service-heading h2{display:flex;align-items:center;gap:8px;font-size:16px;letter-spacing:-.2px;line-height:1.4}.recap-service-heading h2 i{background:var(--service-color);border-radius:50%;width:9px;height:9px;flex-shrink:0}.recap-service-heading span{display:block;font-size:12px;color:var(--muted);margin:4px 0 0 17px}.recap-service-heading button{white-space:nowrap;font-size:11px}.recap-lines{margin:12px 0 0;font-size:12px}.recap-lines>div{display:flex;justify-content:space-between;gap:18px;padding:5px 0;line-height:1.5}.recap-lines dt{min-width:0}.recap-lines dd{margin:0;font-weight:600;white-space:nowrap;color:var(--dark)}.recap-agreement{margin-top:10px;padding:10px 12px;border-radius:7px;background:#f4f8fa;font-size:11px;line-height:1.65}.recap-agreement strong,.recap-agreement span{display:block}.recap-agreement strong{color:var(--muted);font-weight:500}.recap-walls{padding:14px 16px;font-size:12px;line-height:1.6;background:#f5f9fb;border-radius:10px;margin-top:12px}.recap-walls p{margin-top:4px}.recap-walls small{display:block;color:var(--muted);margin-top:5px}.recap-total{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--pale);border:1px solid #c3e5f4;border-radius:11px;margin-top:15px;padding:18px 16px}.recap-total>span{font-weight:700;font-size:15px}.recap-total small{font-weight:400;display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:4px}.recap-total>strong{font:800 27px/1.3 Manrope;letter-spacing:-.8px;white-space:nowrap}.contact-section{padding-top:26px;border-top:1px solid var(--line);margin-top:25px}.contact-section>h2{font-size:21px;line-height:1.4}.contact-reassurance{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.65}.contact-reassurance strong{color:var(--dark)}.customer-types{padding:0;border:0;display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 0}.customer-types label{display:flex!important;gap:6px;align-items:center;font-size:11px!important;padding:8px 10px;margin:0!important;border:1px solid var(--line);border-radius:7px;font-weight:500!important;cursor:pointer}.customer-types label:has(input:checked){border-color:var(--blue);background:var(--pale);color:#087fab}.customer-types input[type=radio]{width:14px;height:14px;padding:0;margin:0;accent-color:var(--blue)}.business-fields[hidden]{display:none!important}.contact-section input[type=hidden]{display:none}.contact-section .optional-code{margin-top:17px;font-size:12px;color:var(--muted)}.optional-code summary{cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:3px}.optional-code label{margin-top:10px!important}.newsletter-choice{font-size:11px!important}.contact-submit{margin-top:20px;width:100%;font-size:14px;gap:12px}.contact-test-note{text-align:center;font-size:10px}.shared-contact-preview{max-width:100%}.shared-contact-preview input,.shared-contact-preview textarea{min-width:0}
@media(max-width:1023px){.recap-service{padding:13px}.recap-service-heading h2{font-size:14px}.recap-total{padding:15px 13px}.recap-total>strong{font-size:23px}.recap-total>span{font-size:13px}.customer-types{gap:5px}.customer-types label{padding:8px}.contact-section .form-grid{grid-template-columns:1fr 1fr;gap:0 10px}.contact-section .form-grid>div:has([data-contact=company]),.contact-section .form-grid>div:has([data-contact=billingEmail]){grid-column:1/-1}.contact-section label{font-size:11px}.contact-section input{padding:12px 10px}.contact-section>h2{font-size:19px}}

/* The first-treatment price stays visible while options and contact details scroll. */
.tax-section{margin:10px 0 14px;border:1px solid #c8e1ee;border-radius:10px;padding:12px 14px;background:#f5faff}.tax-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.tax-heading h2{font-size:13px;line-height:1.4;letter-spacing:0}.tax-heading button{font-size:10px;white-space:nowrap}.tax-saving{margin-top:9px}.tax-saving>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.tax-saving span{font-size:11px;line-height:1.5}.tax-saving strong{font:800 22px/1.3 Manrope;color:#16804a;white-space:nowrap;letter-spacing:-.4px}.tax-saving p{font-size:11px;color:#16804a;margin-top:5px;line-height:1.5}.tax-saving small{display:block;font-size:9px;line-height:1.65;color:var(--muted);margin-top:7px}.tax-summary{margin:10px 0 14px;padding:12px 14px;border:1px solid #c8e1ee;border-radius:10px;background:#f5faff}.tax-summary .tax-saving{margin-top:0}.tax-used{margin-top:18px;font-size:12px}.tax-used summary{cursor:pointer;line-height:1.6;color:#087fab}.tax-used label{font-size:11px!important;margin-top:13px!important}.tax-source{display:inline-block;margin-top:14px;font-size:11px}
@media(max-width:1023px){.tax-section,.tax-summary{padding:12px}.tax-heading h2{font-size:13px}.tax-saving strong{font-size:20px}.tax-saving span{max-width:135px}.tax-saving small{font-size:9px}}
.navigation.priced{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px 10px;background:white;border:1px solid #c8e1ee;box-shadow:0 -6px 30px #152b3b12;z-index:1100}.navigation.priced .mobile-price{display:block;grid-column:1;grid-row:1;margin:0}.navigation.priced .mobile-price small{font-size:10px;letter-spacing:.5px;font-weight:700;text-transform:uppercase;color:var(--muted)}.navigation.priced .mobile-price strong{font:800 29px/1.3 Manrope;letter-spacing:-.8px;margin-top:3px;color:var(--dark);white-space:nowrap}.mobile-price>span{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:3px}.navigation.priced .price-spec-button{grid-column:2;grid-row:1;border:1px solid #8ecbe6;border-radius:9px;color:#087fab;font-size:11px;padding:12px 13px;background:#f6fcff}.navigation.priced .back{grid-column:1;grid-row:2;text-align:left;font-size:12px;padding:8px 0}.navigation.priced .primary{grid-column:2;grid-row:2;gap:12px;padding:13px 20px;font-size:13px;max-width:none}.quote-spec-dialog{width:min(550px,calc(100% - 26px));max-height:calc(100dvh - 26px);overflow:auto;padding:24px}.quote-spec-dialog h2{font-size:23px;line-height:1.4}.quote-spec-dialog .icon-button{flex-shrink:0}.quote-spec-dialog .quote-recap{margin-top:15px}.quote-spec-dialog .recap-service-actions button{display:none}.quote-spec-dialog .primary{margin-top:20px}.contact-section{scroll-margin-top:24px}.recap-agreement button{margin-top:5px;font-size:10px}
@media(min-width:1024px){.navigation.priced{position:fixed;left:24px;bottom:14px;width:max(340px,calc((100vw - 68px)*.38));margin:0;padding:18px 24px;border-radius:13px}.workspace:has(.navigation.priced){padding-bottom:185px}}
@media(max-width:1023px){.navigation.priced{left:0;right:0;bottom:0;padding:14px 18px max(14px,env(safe-area-inset-bottom));border-left:0;border-right:0;gap:10px}.navigation.priced .mobile-price strong{font-size:25px}.navigation.priced .price-spec-button{font-size:10px;padding:10px}.navigation.priced .primary{font-size:12px;padding:12px 16px}.navigation.priced .back{font-size:11px}.foot{padding-bottom:190px}.toast{bottom:175px}.workspace:has(.navigation.priced){padding-bottom:35px}.quote-spec-dialog{padding:20px}.quote-spec-dialog h2{font-size:20px}.contact-submit{margin-bottom:0}}

.timing-help{margin-top:9px;font-size:11px;line-height:1.65;color:var(--muted)}

.navigation #mobile-price[hidden],.navigation #quote-spec[hidden]{display:none!important}

/* Contact fields precede the review and the only request button. */
#content>#contact-form{margin-top:18px;padding-top:0;border-top:0}
.final-review{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.final-review>h2{font-size:21px;line-height:1.4}
.review-address{font-size:12px;line-height:1.6;color:var(--muted);margin-top:7px}
.final-review .quote-recap{margin-top:13px}
.recap-offer{margin-top:13px;border-top:1px solid var(--line);padding-top:12px}
.recap-offer-prices{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.recap-offer-prices>div:last-child{text-align:right}
.recap-offer-prices span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}
.recap-offer-prices del{color:var(--muted);font-size:14px;line-height:1.5}
.recap-offer-prices strong{color:var(--dark);font:800 22px/1.5 Manrope}
.recap-offer-saving{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#edf8f3;border:1px solid #b7dfcb;border-radius:8px;padding:10px 12px;margin-top:10px;color:#17674b}
.recap-offer-saving>span{font-size:12px;font-weight:600;line-height:1.5}
.recap-offer-saving small{display:block;font-size:10px;font-weight:500}
.recap-offer-saving>strong{font:600 14px/1.5 Manrope;white-space:nowrap}
.recap-offer-note{font-size:10px;line-height:1.6;color:var(--muted);margin-top:7px}
.recap-savings-total{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#17674b;padding:12px 2px 0;font-size:13px;font-weight:700}
.recap-savings-total strong{white-space:nowrap}
@media(max-width:420px){.recap-offer-prices strong{font-size:20px}.recap-offer-saving>strong{font-size:13px}.recap-offer-prices del{font-size:13px}.recap-offer-saving{padding:9px 10px}}
.contact-section>.contact-reassurance{margin-top:24px}
.navigation.summary-nav{position:static;display:flex;justify-content:flex-start;align-items:center;gap:12px;width:auto;margin:22px 0 0;padding:16px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent}
.navigation.summary-nav .back{width:auto;padding:0;font-size:12px}
.navigation #next[hidden]{display:none!important}
@media(min-width:1024px){.workspace:has(.navigation.summary-nav){padding-bottom:24px}}
@media(max-width:1023px){.final-review>h2{font-size:19px}.workspace:has(.navigation.summary-nav){padding-bottom:24px}main:has(.summary-nav) .foot{padding-bottom:24px}}

/* Keep the five steps within the form column at every screen width. */
.request-confirmation{margin-top:0;padding:25px 22px;text-align:left;background:#edf8f3;border-color:#b7dfcb;border-left:5px solid #23956a}.request-confirmation .success-symbol{width:48px;height:48px;background:#23956a;margin-bottom:15px}.request-confirmation .eyebrow{color:#217853;margin-bottom:8px}.request-confirmation h1{font-size:30px;line-height:1.25;letter-spacing:-.8px;margin-bottom:12px}.request-confirmation p{color:var(--ink);line-height:1.65}.request-confirmation .confirmation-reassurance{margin-top:10px;font-size:12px;color:var(--muted)}.confirmation-download{margin-top:22px}.confirmation-download .primary{gap:15px}.confirmation-download .help{margin-top:8px}.sent-review{margin-top:24px;padding-top:22px}.review-timing{margin-top:6px;font-size:12px;color:var(--muted);line-height:1.6}.confirmation-reset{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.sent-review #summary-map-anchor{margin-top:20px}
@media(max-width:1023px){.request-confirmation{padding:21px 17px}.request-confirmation h1{font-size:26px;letter-spacing:-.6px}.confirmation-download .primary{width:100%}.confirmation-reset .outline{width:100%}main:has(.request-confirmation) .foot{padding-bottom:24px}}
.progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.step{min-width:0;flex-direction:column;gap:6px;justify-content:center;min-height:52px;font-size:10px}
.step:after{position:absolute;top:16px;left:calc(50% + 20px);width:calc(100% - 40px);margin:0}
.step .num{position:relative;z-index:1;width:30px;height:30px;flex-shrink:0}
.workspace,#content,.form-grid>div{min-width:0}
.map-legend{flex-direction:row;justify-content:flex-start}
.newsletter-choice{flex-wrap:wrap;column-gap:8px}
.newsletter-choice .muted{margin-left:28px}
@media(max-width:1023px){
 .map-panel .map{height:clamp(320px,52dvh,500px);min-height:0}
 input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea{font-size:16px!important;min-height:44px}
 .primary,.outline,.text-button,.wall-choice,.task-question label,.customer-types label,.icon-button,.measurement-header>button{min-height:44px}
 .measurement-header>button,.icon-button{min-width:36px}
 .map-corner-controls #center-map,.map-corner-controls .map-credit summary{min-height:44px}
 .leaflet-control-zoom a{width:38px!important;height:38px!important;line-height:38px!important}
 .measure-guide{padding:14px}
 .measure-guide li{padding:6px 0}
 .measure-guide .map-tools{margin-top:10px;gap:6px}
 .compact-number input{width:66px;min-height:44px}
 .manual-basic .measurement-header{flex-wrap:wrap}
 .photo-section .file-item button{width:32px;height:32px;right:-3px;top:-3px}
 .contact-section .form-grid{grid-template-columns:1fr}
 .navigation .back{min-height:30px}
 .navigation .primary{max-width:none}
 #content,#progress{scroll-margin-top:14px}
}
@media(min-width:600px) and (max-width:1023px){
 main{max-width:850px;padding:0 28px}
 .workspace{padding:28px}
 .service-grid{grid-template-columns:1fr 1fr}
 .service{align-items:flex-start}
 .service .icon{width:36px;height:36px;flex-shrink:0}
 .service-title{font-size:14px}
 .service-route:has(.service-stage:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}
 .measure-guide .map-tools{flex-direction:row}
 .form-grid,.contact-section .form-grid{grid-template-columns:1fr 1fr;gap:0 16px}
 .measurement-fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
 .photo-section .file-list{grid-template-columns:repeat(5,minmax(0,1fr))}
 .navigation{padding-left:28px;padding-right:28px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
