.quote-page{max-width:1280px;margin:0 auto;padding:48px 32px 90px}.quote-intro{margin-bottom:38px}.quote-eyebrow{font-family:var(--font-manrope), sans-serif;text-transform:uppercase;letter-spacing:.15em;color:var(--sten);font-size:.67rem;font-weight:600}.quote-intro h1{letter-spacing:-.035em;margin:14px 0;font-size:clamp(3rem,5.7vw,5.5rem);line-height:1.04}.quote-intro h1 em,.quote-aside h2 em{color:var(--tegel)}.quote-intro>p:not(.quote-eyebrow){color:var(--sten);font-size:1.03rem}.quote-mobile-break{display:none}.quote-promises{flex-wrap:wrap;gap:10px 26px;margin-top:20px;font-size:.77rem;display:flex}.quote-promises>span{align-items:center;gap:8px;display:flex}.quote-promises svg{width:15px;height:15px;color:var(--tegel)}.quote-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:64px;display:grid}.quote-form{background:var(--vit);border:1px solid var(--lin);border-radius:8px;min-width:0;padding:28px 32px 0}.quote-form [hidden],.quote-trap{display:none}.quote-progress{border-bottom:1px solid var(--lin);grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:24px;display:grid}.quote-progress li{border-bottom:2px solid var(--lin);padding-bottom:16px;position:relative}.quote-progress li.is-reached{border-color:var(--tegel)}.quote-progress button{color:var(--sten);text-align:left;align-items:center;gap:7px;font-size:.7rem;line-height:1.3;display:flex}.quote-progress button>span{border:1px solid var(--lin);border-radius:50%;place-items:center;min-width:24px;height:24px;display:grid}.quote-progress .is-reached button>span{background:var(--tegel);border-color:var(--tegel);color:#fff}.quote-progress [aria-current=step] button{color:var(--ek-mork);font-weight:650}.quote-progress button:disabled{cursor:default}.quote-stage-heading{margin:28px 0}.quote-stage-heading h2{margin:8px 0 12px;scroll-margin-top:120px;font-size:clamp(2rem,3vw,2.8rem);line-height:1.1}.quote-stage-heading>p:last-child{color:var(--sten);font-size:.86rem;line-height:1.75}.quote-stage{border:0;gap:28px;min-width:0;margin:0;padding:0;display:grid}.quote-label,.quote-field>label{margin-bottom:12px;font-size:.86rem;font-weight:650;display:block}.quote-label>span,.quote-field label>span,.quote-upload h3>span{color:var(--sten);font-size:.74rem;font-weight:400}.quote-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quote-service-choice{border:1px solid var(--lin);cursor:pointer;border-radius:5px;align-items:start;gap:10px;padding:16px 13px;transition:border-color .15s,background .15s;display:flex;position:relative}.quote-service-choice:last-child{grid-column:1/-1}.quote-service-choice:hover,.quote-choices label:hover{border-color:var(--ek);background:var(--kalksten)}.quote-service-choice input,.quote-choices input{opacity:0;width:1px;height:1px;position:absolute}.quote-service-choice>span:first-of-type{flex:1}.quote-service-choice strong{font-size:.89rem;font-weight:650;display:block}.quote-service-choice strong+span{color:var(--sten);margin-top:4px;font-size:.73rem;line-height:1.55;display:block}.quote-choice-check{border:1px solid var(--lin);border-radius:50%;flex-shrink:0;place-items:center;width:19px;height:19px;display:grid}.quote-choice-check svg{visibility:hidden}.quote-service-choice.is-selected,.quote-choices label.is-selected{border-color:var(--tegel);background:var(--tegel-ljus)}.quote-service-choice.is-selected .quote-choice-check{background:var(--tegel);color:#fff;border-color:var(--tegel)}.quote-service-choice.is-selected .quote-choice-check svg{visibility:visible}.quote-selected-service{background:var(--kalksten);border-left:3px solid var(--tegel);justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.quote-selected-service strong{font-size:1.2rem;display:block}.quote-selected-service strong+span{color:var(--sten);margin-top:3px;font-size:.75rem;display:block}.quote-selected-service button,.quote-context button,.quote-review-heading button{text-underline-offset:4px;white-space:nowrap;min-height:44px;font-size:.76rem;text-decoration:underline}.quote-field-row{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px;display:grid}.quote-field{min-width:0}.quote-field input,.quote-field textarea{border:1px solid var(--lin);width:100%;min-height:50px;color:var(--ek-mork);background:#fff;border-radius:5px;padding:13px 14px;font-size:16px}.quote-field textarea{resize:vertical;min-height:132px;line-height:1.65}.quote-field input::placeholder,.quote-field textarea::placeholder{color:#827971;font-size:.84rem}.quote-hint{color:var(--sten);margin-top:8px;font-size:.74rem;line-height:1.6}.quote-choices{flex-wrap:wrap;gap:8px;display:flex}.quote-choices label{border:1px solid var(--lin);cursor:pointer;border-radius:5px;align-items:center;gap:8px;min-height:46px;padding:11px 13px;font-size:.79rem;display:flex;position:relative}.quote-radio-mark{border:1px solid #b4aaa0;border-radius:50%;flex-shrink:0;place-items:center;width:15px;height:15px;display:grid}.quote-choices input[type=checkbox]+.quote-radio-mark{border-radius:3px}.quote-choices .is-selected .quote-radio-mark{background:var(--tegel);color:#fff;border-color:var(--tegel)}.quote-context{border-bottom:1px solid var(--lin);color:var(--tegel);justify-content:space-between;align-items:center;padding-bottom:12px;font-size:.85rem;display:flex}.quote-bathroom-details{border-block:1px solid var(--lin)}.quote-details-toggle{text-align:left;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:20px 0;display:flex}.quote-details-toggle strong{font-size:.88rem;font-weight:650;display:block}.quote-details-toggle strong>span{color:var(--sten);font-size:.75rem;font-weight:400}.quote-details-toggle>span:first-child>span{color:var(--sten);margin-top:5px;font-size:.76rem;display:block}.quote-details-toggle>span:last-child{color:var(--tegel);font-size:1.5rem}.quote-details-body{padding-bottom:26px}.quote-details-body>.quote-hint{margin:0 0 24px}.quote-details-group+.quote-details-group{border-top:1px solid var(--lin);margin-top:28px;padding-top:22px}.quote-details-group>legend{font-size:1.45rem;font-family:var(--font-serif), serif;margin-bottom:18px}.quote-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;display:grid}.quote-details-grid>.quote-choice-field{grid-column:1/-1}.quote-upload{background:var(--kalksten);border:1px dashed var(--ek);border-radius:6px;padding:22px}.quote-upload h3{font-family:var(--font-manrope), sans-serif;font-size:.95rem;font-weight:650}.quote-upload>p:not(.quote-hint):not(.quote-field-error):not(.sr-only){color:var(--sten);margin:10px 0 16px;font-size:.81rem;line-height:1.7}.quote-upload-button{border:1px solid var(--ek-mork);background:#fff;border-radius:4px;align-items:center;gap:10px;min-height:48px;padding:11px 16px;font-size:.81rem;font-weight:600;display:inline-flex}.quote-upload-button>span{font-size:1.3rem;line-height:1}.quote-files{gap:10px;margin-top:18px;display:grid}.quote-files li{border:1px solid var(--lin);background:#fff;border-radius:4px;align-items:center;gap:12px;padding:8px;display:flex}.quote-files img,.quote-pdf{object-fit:cover;border-radius:3px;flex-shrink:0;width:56px;height:56px}.quote-pdf{background:var(--lin-ljus);place-items:center;font-size:.7rem;display:grid}.quote-files li>span:not(.quote-pdf){overflow-wrap:anywhere;flex:1;font-size:.74rem}.quote-files small{color:var(--sten);margin-top:3px;display:block}.quote-files button{place-items:center;min-width:44px;min-height:44px;display:grid}.quote-review{border:1px solid var(--lin);border-radius:5px;padding:20px}.quote-review-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.quote-review h3{font-size:1.9rem}.quote-summary-list{margin:14px 0 18px}.quote-summary-list>div{border-bottom:1px solid var(--lin);grid-template-columns:1fr 1.2fr;gap:18px;padding:9px 0;font-size:.79rem;display:grid}.quote-summary-list dt{color:var(--sten)}.quote-summary-list dd{overflow-wrap:anywhere;white-space:pre-line}.quote-text-button{text-underline-offset:4px;align-items:center;gap:10px;min-height:44px;font-size:.78rem;text-decoration:underline;display:inline-flex}.quote-consent{cursor:pointer;align-items:start;gap:12px;font-size:.82rem;line-height:1.6;display:flex}.quote-consent input{width:20px;height:20px;accent-color:var(--tegel);flex-shrink:0;margin-top:2px}.quote-privacy{color:var(--sten);margin:12px 0 0 32px;font-size:.75rem}.quote-privacy summary{cursor:pointer;text-underline-offset:3px;min-height:32px;text-decoration:underline}.quote-privacy p{margin-top:10px;line-height:1.7}.quote-privacy a{text-decoration:underline}.quote-controls{border-top:1px solid var(--lin);z-index:20;background:#fff;border-radius:0 0 8px 8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:30px -32px 0;padding:20px 32px;display:flex;position:sticky;bottom:0}.quote-controls .btn{min-height:50px;padding-inline:25px;font-size:.85rem}.quote-back{align-items:center;gap:9px;min-height:46px;font-size:.8rem;display:flex}.quote-control-note,.quote-send-note{color:var(--sten);font-size:.71rem}.quote-send-note{text-align:right;width:100%}.quote-aside{position:sticky;top:126px}.quote-aside-photo{aspect-ratio:1.45;border-radius:46% 46% 0 0;margin-bottom:25px;position:relative;overflow:hidden}.quote-aside h2{margin:12px 0 18px;font-size:2.7rem;line-height:1.03}.quote-aside>p:not(.quote-eyebrow){color:var(--sten);font-size:.8rem;line-height:1.75}.quote-next-steps{gap:14px;margin:24px 0;font-size:.75rem;display:grid}.quote-next-steps li{align-items:baseline;gap:13px;display:flex}.quote-next-steps span{color:var(--tegel);font-size:.68rem}.quote-phone{border-top:1px solid var(--lin);align-items:center;gap:14px;padding-top:22px;font-size:.75rem;display:flex}.quote-phone strong{margin-top:3px;font-size:1.2rem;font-weight:500;display:block}.quote-aside .quote-aside-location{margin-top:16px;font-size:.69rem}.quote-errors{border-left:3px solid var(--tegel);background:var(--tegel-ljus);margin-bottom:22px;padding:16px 18px;font-size:.82rem}.quote-errors ul{margin-top:8px;padding-left:20px;list-style:outside}.quote-errors a{text-decoration:underline}.quote-field-error{color:var(--tegel);margin-top:8px;font-size:.79rem;line-height:1.5}.quote-field [aria-invalid=true]{border-color:var(--tegel)}.quote-form button:disabled{opacity:.55}.quote-progress button:disabled{opacity:1}.quote-form input:focus-visible,.quote-form textarea:focus-visible,.quote-form button:focus-visible,.quote-form a:focus-visible,.quote-form summary:focus-visible{outline:2px solid var(--tegel);outline-offset:4px}.quote-service-choice:has(input:focus-visible){outline:2px solid var(--tegel);outline-offset:4px}.quote-choices label:has(input:focus-visible){outline:2px solid var(--tegel);outline-offset:4px}.quote-success{max-width:740px;margin:0 auto;padding:70px 25px;scroll-margin-top:110px}.quote-success-mark{background:var(--lin-ljus);width:64px;height:64px;color:var(--tegel);border-radius:50%;place-items:center;margin-bottom:25px;display:grid}.quote-success h1{margin:12px 0 24px;font-size:clamp(3rem,6vw,5rem)}.quote-success>p:not(.quote-eyebrow){color:var(--sten);margin-bottom:20px;font-size:.95rem;line-height:1.8}.quote-success a:not(.btn){text-decoration:underline}.quote-success .quote-receipt{background:var(--lin-ljus);border-radius:5px;padding:18px}@media (max-width:1100px){.quote-layout{grid-template-columns:minmax(0,1fr) 270px;gap:32px}.quote-aside h2{font-size:2.3rem}}@media (max-width:999px){.quote-layout{display:block}.quote-aside{max-width:600px;margin:38px 0 0;position:static}.quote-aside-photo,.quote-aside>.quote-eyebrow,.quote-aside h2,.quote-aside>p:not(.quote-aside-location),.quote-next-steps{display:none}.quote-phone{border-top:0;padding-top:0}.quote-page{max-width:800px}}@media (max-width:599px){.quote-page{padding:26px 16px 55px}.quote-intro{margin-bottom:24px;padding:0 4px}.quote-intro h1{margin:12px 0;font-size:2.9rem}.quote-mobile-break{display:block}.quote-intro>p:not(.quote-eyebrow){max-width:310px;font-size:.86rem;line-height:1.65}.quote-promises{gap:10px 14px;margin-top:16px;font-size:.66rem}.quote-promises svg{width:13px;height:13px}.quote-form{padding:18px 18px 0}.quote-progress{gap:8px;padding-bottom:12px}.quote-progress button{flex-direction:column;align-items:start;gap:5px;font-size:.64rem}.quote-progress li{padding-bottom:10px}.quote-progress button>span{min-width:22px;height:22px}.quote-stage-heading{margin:22px 0}.quote-stage-heading h2{scroll-margin-top:100px;font-size:2rem}.quote-stage-heading>p:last-child{font-size:.79rem}.quote-stage{gap:25px}.quote-service-grid{gap:8px}.quote-service-choice{gap:4px;padding:12px 10px}.quote-service-choice strong{font-size:.77rem}.quote-service-choice strong+span{font-size:.68rem}.quote-choice-check{width:15px;height:15px}.quote-field-row{grid-template-columns:1fr;gap:22px}.quote-details-grid{grid-template-columns:1fr}.quote-selected-service{gap:10px;padding:13px}.quote-selected-service strong{font-size:1rem}.quote-selected-service strong+span{font-size:.68rem}.quote-selected-service button{font-size:.69rem}.quote-choices label{padding-inline:10px;font-size:.76rem}.quote-label,.quote-field>label{font-size:.81rem}.quote-upload{padding:17px}.quote-upload h3{font-size:.86rem}.quote-upload-button{justify-content:center;width:100%;font-size:.76rem}.quote-controls{padding:14px 18px max(14px, env(safe-area-inset-bottom));margin-inline:-18px;box-shadow:0 -8px 20px #2a272408}.quote-control-note{max-width:98px;font-size:.66rem}.quote-controls .btn{padding-inline:17px;font-size:.8rem}.quote-review{padding:16px}.quote-review h3{font-size:1.6rem}.quote-summary-list>div{grid-template-columns:1fr;gap:3px}.quote-summary-list dt{font-size:.72rem}}
