.price-estimator{--est-accent:#a85f35;--est-dark:#2d2019;container-type:inline-size;margin:34px 0;border:1px solid #dfd3c8;border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(57,39,27,.08);overflow:hidden;color:#2c241f}
.price-estimator__header{padding:28px 32px 24px;background:linear-gradient(125deg,#3c271d,#71442d);color:#fff}
.price-estimator__header>span{display:block;margin-bottom:7px;color:#edc7ad;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.price-estimator__header h2{margin:0;color:#fff;font-size:clamp(24px,3vw,36px);line-height:1.18}
.price-estimator__header p{max-width:720px;margin:10px 0 0;color:#f3e9e1;font-size:13px;line-height:1.65}
.price-estimator__body{display:grid;grid-template-columns:1fr;gap:0}
.price-estimator.has-result .price-estimator__body{grid-template-columns:minmax(0,1.18fr) minmax(260px,.82fr)}
.price-estimator__steps{display:grid;gap:17px;padding:28px 32px;background:#fff}
.price-estimator__field{display:grid;gap:8px;margin:0}
.price-estimator__field>span{display:flex;align-items:center;gap:9px;color:#36271f;font-size:13px;font-weight:700}
.price-estimator__field>span i{display:grid;width:25px;height:25px;border-radius:50%;place-items:center;background:#efe3da;color:#844528;font-size:11px;font-style:normal}
.price-estimator select,.price-estimator input[type=number],.price-estimator__multi summary{box-sizing:border-box;width:100%;min-height:48px;border:1px solid #d9cec5;border-radius:12px;background:#faf8f5;color:#2d2621;font:inherit;font-size:13px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.price-estimator select,.price-estimator input[type=number]{padding:0 14px}
.price-estimator select:focus,.price-estimator input[type=number]:focus,.price-estimator__multi[open] summary{border-color:var(--est-accent);background:#fff;box-shadow:0 0 0 3px rgba(168,95,53,.12)}
.price-estimator [aria-disabled=true]{cursor:not-allowed;color:#817a75;background:#f1eeeb}
.price-estimator.needs-type [data-estimator-type]{border-color:#bd5b36;box-shadow:0 0 0 4px rgba(189,91,54,.15);animation:estimator-nudge .35s ease}
@keyframes estimator-nudge{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.price-estimator__multi{position:relative}
.price-estimator__multi summary{display:flex;align-items:center;justify-content:space-between;padding:0 44px 0 14px;cursor:pointer;list-style:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.price-estimator__multi summary::-webkit-details-marker{display:none}
.price-estimator__multi summary:after{position:absolute;right:17px;content:'⌄';font-size:18px;transition:transform .2s}
.price-estimator__multi[open] summary:after{transform:rotate(180deg)}
.price-estimator__multi-menu{position:absolute;z-index:20;top:calc(100% + 7px);left:0;width:100%;max-height:290px;padding:7px;border:1px solid #ded2c8;border-radius:13px;background:#fff;box-shadow:0 16px 35px rgba(47,31,21,.16);overflow:auto}
.price-estimator__multi-menu label{display:flex;gap:11px;padding:10px;border-radius:8px;cursor:pointer;transition:background .18s}
.price-estimator__multi-menu label:hover{background:#f7f1ec}
.price-estimator__multi-menu input{flex:0 0 auto;margin-top:3px;accent-color:var(--est-accent)}
.price-estimator__multi-menu span{display:grid;gap:2px;font-size:12px;line-height:1.45}
.price-estimator__multi-menu strong{color:#9a5532;font-size:11px;font-weight:600}
.price-estimator__message{min-height:18px;margin:0;color:#a84626;font-size:11px;font-weight:600}
.price-estimator__result{align-self:stretch;padding:30px;background:#f4f2ec;border-left:1px solid #e5d9cf}
.price-estimator__result[hidden]{display:none}
.price-estimator__result>span{color:#8e5a3a;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.price-estimator__result>strong{display:block;margin:7px 0 2px;color:#a33f2c;font-size:clamp(25px,3vw,34px);line-height:1.2}
.price-estimator__result>small{color:#847870;font-size:11px}
.price-estimator__result dl{display:grid;margin:24px 0 0;border-top:1px solid #dfd3ca}
.price-estimator__result dl div{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.25fr);gap:12px;padding:11px 0;border-bottom:1px solid #e4dad2;font-size:11px;line-height:1.5}
.price-estimator__result dt{color:#81756d}
.price-estimator__result dd{margin:0;color:#33271f;font-weight:600;text-align:right;overflow-wrap:anywhere}
.price-estimator__cta{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding:13px 16px;border-radius:11px;background:var(--est-accent);color:#fff!important;font-size:12px;font-weight:700;text-decoration:none!important;transition:transform .2s,background .2s}
.price-estimator__cta:hover{background:#8c4828;transform:translateY(-2px)}
.price-estimator__note{margin:0;padding:16px 32px;border-top:1px solid #e7ddd5;background:#faf8f5;color:#746a63;font-size:11px;line-height:1.65}
.price-estimator__note strong{color:#8b4c2e}
.estimator-empty{padding:18px;border:1px dashed #c99f86;border-radius:12px;background:#fff7f1}
@media(max-width:760px){.price-estimator{border-radius:16px}.price-estimator__header,.price-estimator__steps{padding:22px 18px}.price-estimator__body{grid-template-columns:1fr}.price-estimator__result{padding:24px 18px;border-top:1px solid #e5d9cf;border-left:0}.price-estimator__note{padding:15px 18px}.price-estimator__multi-menu{position:static;margin-top:7px}.price-estimator__result dl div{grid-template-columns:1fr}.price-estimator__result dd{text-align:left}}
@container(max-width:760px){.price-estimator.has-result .price-estimator__body{grid-template-columns:1fr}.price-estimator__header,.price-estimator__steps{padding:22px 18px}.price-estimator__result{padding:24px 18px;border-top:1px solid #e5d9cf;border-left:0}.price-estimator__note{padding:15px 18px}.price-estimator__multi-menu{position:static;margin-top:7px}.price-estimator__result dl div{grid-template-columns:1fr}.price-estimator__result dd{text-align:left}}
@media(prefers-reduced-motion:reduce){.price-estimator *{animation:none!important;transition:none!important}}
