.quote-builder{background:linear-gradient(180deg,#f7f5ee 0%,#eef5f5 100%);padding:44px 0 56px}.quote-shell{display:block}.quote-panel{position:relative;width:min(100%,820px);margin:0 auto;border:1px solid rgba(111,246,255,.16);border-radius:30px;background:rgba(255,255,255,.90);box-shadow:0 22px 60px rgba(7,54,66,.10);padding:24px;overflow:hidden}.quote-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(111,246,255,.10),transparent 35%,rgba(242,195,0,.10));pointer-events:none}.quote-panel>*{position:relative;z-index:1}.quote-head{margin-bottom:22px}.quote-head h2{font-size:clamp(30px,4vw,48px);line-height:1.02;letter-spacing:-.045em;margin:0 0 10px;color:#073642}.quote-head p{font-size:17px;line-height:1.5;color:#556;margin:0;max-width:680px}.quote-step{margin-top:18px}.quote-step h3{font-size:20px;line-height:1.15;margin:0 0 8px;color:#073642}.quote-step small{display:block;color:#6b6b6b;margin:-2px 0 10px;font-weight:700}.quote-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-select-card{display:grid;gap:8px}.quote-select-card.full{grid-column:1/-1}.quote-select-card label,.quote-field label{font-weight:950;color:#073642;font-size:14px}.quote-select,.quote-select-card input,.quote-field input,.quote-field textarea{width:100%;border:1px solid rgba(7,54,66,.14);border-radius:20px;padding:16px 46px 16px 16px;font:inherit;font-weight:850;color:#10292f;background:linear-gradient(180deg,#fff 0%,#f8fbfb 100%);box-shadow:0 10px 26px rgba(7,54,66,.06),inset 0 1px 0 rgba(255,255,255,.80);outline:none}.quote-select{appearance:none;background-image:linear-gradient(180deg,#fff 0%,#f8fbfb 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23073642' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat;background-position:center,right 16px center;background-size:auto,18px}.quote-select:focus,.quote-select-card input:focus,.quote-field input:focus,.quote-field textarea:focus{border-color:rgba(111,246,255,.55);box-shadow:0 0 0 4px rgba(111,246,255,.14),0 12px 30px rgba(7,54,66,.08)}.quote-field textarea{min-height:106px;resize:vertical;padding-right:16px}.quote-field{display:grid;gap:7px}.multi-dropdown{border:1px solid rgba(7,54,66,.14);border-radius:22px;background:white;box-shadow:0 10px 26px rgba(7,54,66,.06);overflow:hidden}.multi-dropdown summary{list-style:none;cursor:pointer;padding:16px 46px 16px 16px;font-weight:950;color:#10292f;position:relative}.multi-dropdown summary::-webkit-details-marker{display:none}.multi-dropdown summary:after{content:"⌄";position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:22px;color:#073642}.multi-dropdown[open] summary:after{transform:translateY(-50%) rotate(180deg)}.multi-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 12px}.multi-option{display:flex;gap:9px;align-items:center;border:1px solid rgba(7,54,66,.12);border-radius:16px;padding:11px 10px;background:#f8fbfb;font-weight:900;color:#10292f;cursor:pointer}.multi-option input{accent-color:#f2c300;width:18px;height:18px;flex:0 0 auto}.multi-option:has(input:checked){background:linear-gradient(180deg,#ffe16c 0%,#f3c411 100%);border-color:rgba(7,54,66,.22);box-shadow:0 8px 18px rgba(242,195,0,.18)}.photo-checklist{display:grid;gap:8px;margin-top:12px}.photo-checklist span{display:flex;gap:8px;align-items:center;color:#526366;font-weight:800}.photo-checklist span:before{content:"✓";display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#073642;color:#f2c300;font-size:13px;font-weight:950}.quote-final-actions{display:grid;gap:10px;margin-top:22px}.quote-final-actions .btn{width:100%;text-align:center}.quote-modal[hidden]{display:none!important}.quote-modal{position:fixed;inset:0;z-index:999;background:rgba(2,16,20,.68);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:grid;place-items:center;padding:22px}.quote-modal-card{position:relative;width:min(100%,560px);max-height:min(86vh,760px);overflow:auto;border-radius:30px;background:linear-gradient(135deg,#073642,#0b4b56);color:white;padding:24px;box-shadow:0 34px 90px rgba(0,0,0,.38),0 0 0 1px rgba(111,246,255,.16)}.quote-modal-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:white;font-size:22px;font-weight:900}.quote-modal-card h2{font-size:clamp(28px,5vw,40px);line-height:1.02;margin:10px 0 10px;letter-spacing:-.04em}.quote-modal-card p{font-size:15.5px;line-height:1.45;color:#dcebed}.summary-box{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);border-radius:22px;padding:16px;margin:16px 0;backdrop-filter:blur(14px)}.summary-line{display:grid;gap:4px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.11)}.summary-line:last-child{border-bottom:0}.summary-line b{color:#f2c300;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.summary-line span{color:#eef8f9;font-weight:850;line-height:1.35}.quote-actions{display:grid;gap:10px;margin-top:16px}.quote-actions .btn{width:100%;text-align:center}.quote-hint{font-size:13px!important;line-height:1.45!important;color:#cfe2e5!important;margin:14px 0 0!important}.quote-back{border:1px solid rgba(255,255,255,.65)!important;color:white!important;background:transparent!important}@media(max-width:900px){.quote-builder{padding:30px 0 42px}.quote-panel{border-radius:24px;padding:18px}.quote-head h2{font-size:32px}.quote-head p{font-size:15.5px}.quote-select-grid{grid-template-columns:1fr}}@media(max-width:640px){.quote-builder{padding:22px 0 34px}.quote-panel{border-radius:22px;padding:16px}.quote-head{margin-bottom:16px}.quote-head h2{font-size:28px;line-height:1.04}.quote-head p{font-size:14.5px;line-height:1.45}.quote-step{margin-top:16px}.quote-step h3{font-size:19px}.quote-step small{font-size:13.5px}.quote-select,.quote-select-card input,.quote-field textarea,.multi-dropdown summary{border-radius:18px;padding-top:15px;padding-bottom:15px;font-size:16px}.multi-options{grid-template-columns:1fr;gap:7px}.multi-option{padding:10px}.quote-modal{padding:14px}.quote-modal-card{border-radius:24px;padding:20px}.summary-box{padding:14px;border-radius:20px}.quote-actions .btn,.quote-final-actions .btn{min-height:56px}}@media(max-width:380px){.quote-panel,.quote-modal-card{padding:14px}.quote-head h2{font-size:26px}}