.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.estimate-mobile-bar{display:none}.estimator[data-long-estimate=true] .estimator-result{position:static}.estimator-result{scroll-margin-top:7rem}.configurator-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem;display:flex}.configurator-heading>p{color:var(--color-muted);font-size:.95rem}.estimator{grid-template-columns:1.25fr .75fr;align-items:start;gap:4rem;display:grid}.estimator fieldset{border:0;min-width:0;margin:0;padding:0}.estimator legend,.estimator-step{text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent);margin-bottom:1rem;font-size:.7rem}.project-mode{flex-wrap:wrap;gap:1rem;display:flex}.project-mode label{border:var(--border-default);cursor:pointer;align-items:center;gap:.7rem;padding:.8rem 1.2rem;display:flex}.project-mode label:has(:checked){border-color:var(--color-accent)}.estimator input{accent-color:var(--color-accent);flex-shrink:0;width:1.1rem;height:1.1rem;margin:0}.estimator-base{margin-block:1.5rem 2.5rem;font-size:.9rem}.estimator-base>span{color:var(--color-muted);margin-top:.5rem;font-size:.8rem;display:block}.option-group{border-top:var(--border-default)}.option-group:last-of-type{border-bottom:var(--border-default)}.option-group summary{cursor:pointer;align-items:center;gap:.75rem;padding-block:1.2rem;font-size:1.15rem;list-style:none;display:flex}.option-category-name{flex:1}.option-toggle{color:var(--color-accent)}.option-group[open] .option-toggle{transform:rotate(45deg)}.option-category-count{border:var(--border-default);height:1.5rem;color:var(--color-muted);font-variant-numeric:tabular-nums;flex:0 0 1.5rem;place-items:center;font-size:.65rem;display:grid}.option-category-count[data-active=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg)}.option-row{background:var(--color-bg);cursor:pointer;border:1px solid #0000;grid-template-columns:1.1rem 1fr;gap:.5rem 1rem;margin-bottom:.65rem;padding:1.2rem;display:grid}.option-row:has(:checked){border-color:var(--color-accent);background:var(--color-indigo)}.option-row input{margin-top:.3rem}.option-row strong{font-size:.95rem;font-weight:500;display:block}.option-row small{color:var(--color-muted);margin-top:.5rem;font-size:.8rem;line-height:1.6;display:block}.option-price{color:var(--color-accent);grid-column:2;font-size:.85rem}.estimator-result{border-top:2px solid var(--color-accent);min-width:0;padding-top:1.5rem;position:sticky;top:2rem}.estimator-result h3{font-size:2.6rem;font-weight:450;line-height:1.1}.estimator-result h3 em{font-family:var(--font-editorial);color:var(--color-accent);font-weight:400}.estimate-totals{border-block:var(--border-default);margin-block:2rem;padding-block:1.2rem}.estimate-label{color:var(--color-muted);margin-bottom:.5rem;font-size:.8rem}.estimate-amount{letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(2rem,3vw,3rem);line-height:1.2}.estimate-amount small{letter-spacing:0;font-size:.85rem}.estimate-monthly,[data-quote-notice]{font-size:.85rem}[data-quote-notice]{color:var(--color-accent)}.estimate-selection{color:var(--color-muted);padding-left:1.1rem;font-size:.85rem}.estimate-selection li{padding-bottom:.35rem}.estimator-note{color:var(--color-muted);font-size:.8rem}.estimator .button{border-radius:0;width:100%;margin-top:.8rem}.estimate-reset{width:100%;min-height:2.75rem;color:var(--color-muted);background:0 0;border:0;margin-top:.75rem;font-size:.8rem;text-decoration:underline;display:block}.estimate-feedback{color:var(--color-accent);margin-top:1rem;font-size:.8rem}@media (width<=63.99rem){.estimator{grid-template-columns:1fr .8fr;gap:2rem}.estimator-result{position:static}}@media (width<=47.99rem){.configurator-heading{flex-direction:column;align-items:start;gap:0}.estimator{grid-template-columns:1fr;gap:3rem}.estimator-result h3{font-size:2.4rem}.estimate-amount{font-size:2.5rem}.option-row{padding:1rem}.project-mode label{flex:1}.estimate-mobile-bar{z-index:5;background:var(--color-indigo);border-bottom:1px solid var(--color-accent);justify-content:space-between;align-items:center;gap:1rem;padding:1rem;font-size:.7rem;display:flex;position:sticky;top:0}.estimate-mobile-bar strong,.estimate-mobile-bar small{display:block}.estimate-mobile-bar a{white-space:nowrap;align-items:center;min-height:2.75rem;font-size:.75rem;display:flex}}.configurator-chapter{background:#19171f}.configurator-heading>p{max-width:25rem}.configurator-heading>p>span{margin-top:1rem;font-size:.75rem;display:block}.estimator[data-context=home]{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3.5rem clamp(2rem,5vw,4.5rem)}.project-starts{grid-column:1/-1}.project-starts-heading{border-top:1px solid var(--color-accent);justify-content:space-between;align-items:baseline;gap:2rem;margin-bottom:1.5rem;padding-top:1.5rem;display:flex}.project-starts-heading h3{margin:0;font-size:1.45rem;font-weight:450}.project-starts-heading p{color:var(--color-muted);margin:0;font-size:.8rem}.project-presets{border:var(--border-default);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-preset{text-align:left;color:var(--color-text);background:0 0;border:0;flex-direction:column;align-items:stretch;min-width:0;padding:1.5rem;display:flex}.project-preset+.project-preset{border-left:var(--border-default)}.project-preset:is(:hover,:focus-visible){background:#262230}.project-preset:focus-visible{outline-offset:-4px}.preset-index{color:var(--color-accent);letter-spacing:.12em;justify-content:space-between;margin-bottom:2rem;font-size:.65rem;display:flex}.preset-index>span{font-size:1rem;line-height:1;transition:transform .18s}.project-preset:hover .preset-index>span{transform:translate(2px,-2px)}.project-preset strong{letter-spacing:-.025em;font-size:1.35rem;font-weight:450;line-height:1.25}.preset-description{color:var(--color-muted);margin-block:.8rem 1.5rem;font-size:.8rem;line-height:1.65;display:block}.preset-additions{border-top:var(--border-default);color:var(--color-accent);margin-top:auto;padding-top:1rem;font-size:.7rem}.preset-note,.preset-feedback{color:var(--color-muted);margin-block:.8rem 0;font-size:.75rem}.preset-feedback{color:var(--color-accent)}.preset-feedback:empty{display:none}.estimator[data-context=home] .estimator-options{padding-top:1rem}.estimator[data-context=home] .project-mode label{flex:1;min-height:3.25rem;padding:1rem;font-size:.85rem}.estimator[data-context=home] .option-row{background:#131218;border-left:2px solid #0000}.estimator[data-context=home] .option-row:has(:checked){border-color:var(--color-accent);background:#282333}.estimator[data-context=home] .estimator-result{background:#211d2a;border:1px solid #655873;padding:1.5rem clamp(1.2rem,2.5vw,2rem) 2rem;position:static}.estimator[data-context=home] .estimator-result h3{margin-bottom:1.5rem;font-size:clamp(2.1rem,3.4vw,3.2rem)}.project-composition{margin-inline:calc(-1*clamp(1.2rem,2.5vw,2rem))}.composition-art{color:#2d2637;background-color:#dcd5c8;background-image:linear-gradient(#2d263708 1px,#0000 1px),linear-gradient(90deg,#2d263708 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:18px 18px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;padding:1.1rem 1.25rem 2.5rem;position:relative;overflow:hidden}.composition-ruler{letter-spacing:.11em;justify-content:space-between;gap:1rem;padding-bottom:1rem;font-size:.5rem;display:flex}.composition-page{background:#f7f1e5;border:1px solid #a69aa9;margin:.4rem .4rem 1rem;padding:1rem;position:relative;transform:rotate(-2deg);box-shadow:7px 8px #2f27361c}.composition-nav{border-bottom:1px solid #bfb5c1;justify-content:space-between;align-items:center;padding-bottom:.7rem;font-size:.55rem;display:flex}.composition-nav b{font-weight:600}.composition-hero{grid-template-columns:1fr .65fr;align-items:center;gap:.75rem;min-height:10rem;display:grid}.composition-hero small{letter-spacing:.1em;font-size:.43rem}.composition-hero strong{letter-spacing:-.05em;margin-block:.5rem 1rem;font-size:clamp(1.3rem,2.1vw,1.95rem);font-weight:500;line-height:1.05;display:block}.composition-hero em{color:#6d4797;font-family:var(--font-editorial);font-weight:400}.composition-line{background:#b1a7b5;width:90%;height:2px;margin-top:.25rem;display:block}.composition-line--short{width:65%}.composition-shape{background:#ccc0dc;border:1px solid #ac9fbb;height:8rem;position:relative;overflow:hidden}.composition-shape i{background:#e2d6ee;border:1px solid #57416d;border-radius:50% 50% 0 0;width:65%;height:87%;display:block;position:absolute;bottom:-2px;left:7%;transform:rotate(-14deg)}.composition-shape i:nth-child(2){background:#8d70aa;left:30%;transform:rotate(13deg)}.composition-shape i:nth-child(3){background:#5f407b;left:62%;transform:rotate(35deg)}.composition-content{border-top:1px solid #bfb5c1;grid-template-columns:1fr 1fr;gap:.75rem;padding-block:.9rem 1.3rem;font-size:.45rem;display:grid}.composition-content span{border-bottom:4px solid #d8d0da;padding-bottom:.7rem}.composition-module{background:#ece4f2;border:1px solid #c5b8ce;align-items:center;gap:.7rem;margin-bottom:.5rem;padding:.65rem .7rem;animation:.24s ease-out both compose-module;display:flex}.composition-module>span{color:#62407f;font-size:1.3rem;line-height:1}.composition-module>div{min-width:0}.composition-module b{font-size:.6rem;font-weight:600;display:block}.composition-module small{margin-top:.15rem;font-size:.5rem;line-height:1.5;display:block}.composition-module--ai{color:#f7f1e5;background:#392a49;border-color:#392a49;margin-left:1.4rem}.composition-module--ai>span{color:#cbbbde}.composition-module--automation{background:#e2d9cb}.composition-module--care{background:0 0;border:0;padding:.45rem 0}.composition-footer{letter-spacing:.04em;border-top:1px solid #bfb5c1;justify-content:space-between;padding-top:.7rem;font-size:.45rem;display:flex}.composition-stamp{color:#fff8ec;text-align:center;background:#705191;border:1px solid #fff8ec;padding:.4rem .7rem;font-size:.6rem;line-height:1.2;position:absolute;bottom:.9rem;right:1.15rem;transform:rotate(5deg)}.composition-stamp em{font-family:var(--font-editorial);font-size:.9rem}.composition-caption{color:var(--color-muted);padding:.8rem clamp(1.2rem,2.5vw,2rem) 0;font-size:.65rem}.composition-status{color:var(--color-accent);padding-top:.8rem;font-size:.75rem}.estimator[data-context=home] .estimate-totals{margin-block:1.3rem;padding-block:1.2rem}.estimator[data-context=home] .estimate-amount{font-size:clamp(2.2rem,3.5vw,3.2rem)}.estimate-scope-label{text-transform:uppercase;letter-spacing:.08em;margin-bottom:.6rem;font-size:.7rem}.estimator[data-context=home] .estimate-selection{margin-block:.5rem 1.5rem;padding-left:1rem}.estimator[data-context=home] .estimate-selection li{color:var(--color-text);padding-bottom:.75rem}.estimator[data-context=home] .estimate-selection small{color:var(--color-muted);margin-top:.3rem;font-size:.7rem;line-height:1.5;display:block}.estimator[data-context=home] .estimator-note{font-size:.75rem}@keyframes compose-module{0%{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (width<=63.99rem){.project-preset{padding:1.2rem}.project-preset strong{font-size:1.15rem}.estimator[data-context=home]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:1.5rem}.estimator[data-context=home] .option-row{gap:.4rem .6rem;padding:1rem .75rem}.composition-art{padding-inline:.65rem}}@media (width<=47.99rem){.estimator[data-context=home]{grid-template-columns:minmax(0,1fr);row-gap:2rem}.project-starts-heading{display:block}.project-starts-heading h3{margin-bottom:.75rem;font-size:1.3rem}.project-presets{grid-template-columns:minmax(0,1fr)}.project-preset{padding:1.15rem 1.2rem 1.15rem 3.5rem;position:relative}.project-preset+.project-preset{border-left:0;border-top:var(--border-default)}.preset-index{gap:.6rem;margin:0;display:grid;position:absolute;top:1.3rem;left:1.1rem}.preset-description{margin-block:.4rem .75rem;font-size:.75rem}.preset-additions{padding-top:.6rem;font-size:.65rem}.estimator[data-context=home] .estimate-mobile-bar{margin-top:-.5rem}.estimator[data-context=home] .estimator-options{padding-top:0}.composition-art{padding-inline:1rem}.composition-hero strong{font-size:1.8rem}}@media (prefers-reduced-motion:reduce){.composition-module{animation:none}.preset-index>span{transition:none}}
