
[hidden]{display:none!important}
body{background:#f6f4f1}
.quote-heading{padding-bottom:38px}
.quote-heading h1{max-width:800px}
.quote-layout{padding:0 5% 70px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.8fr);gap:6%;align-items:start}
.quote-main,.quote-aside{min-width:0}
.quote-card{background:#fff;border:1px solid #dcd6d0;border-radius:5px;padding:32px}
.quote-group{margin:0;padding:0;border:0;min-width:0}
.quote-group+.quote-group{margin-top:30px;padding-top:30px;border-top:1px solid #e3ddd7}
.quote-group legend{font-size:23px;font-weight:500;line-height:1.25;letter-spacing:-.5px;margin-bottom:20px;padding:0;float:left;width:100%}
.quote-group legend+*{clear:both}
.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.quote-field{min-width:0}
.quote-field.full{grid-column:1/-1}
.quote-field label{display:block;font-size:15px;font-weight:600;margin-bottom:8px;line-height:1.5}
.optional{font-weight:400;color:#706862;font-size:13px}
.quote-field input,.quote-field textarea{display:block;width:100%;min-height:48px;background:#fff;border:1px solid #aaa09a;border-radius:4px;font:inherit;font-size:16px;line-height:1.5;padding:11px 13px;color:#171717}
.quote-field textarea{resize:vertical;min-height:132px}
.quote-field input::placeholder,.quote-field textarea::placeholder{color:#7a726c;opacity:1}
.quote-field input:focus-visible,.quote-field textarea:focus-visible,.part-option input:focus-visible,button:focus-visible,.privacy-note summary:focus-visible{outline:3px solid #bd1c31;outline-offset:3px}
.quote-help{display:block;margin:7px 0 0;font-size:13px;line-height:1.55;color:#665e58}
.parts-grid{display:grid;grid-template-columns:1fr;gap:10px;clear:both}
.part-option{display:flex;align-items:center;gap:13px;min-height:56px;padding:14px;border:1px solid #c5bcb5;border-radius:4px;cursor:pointer;font-size:16px;line-height:1.4}
.part-option:has(input:checked){border-color:#bd1c31;background:#fbf0f1;box-shadow:inset 0 0 0 1px #bd1c31}
.part-option input{width:19px;height:19px;margin:0;accent-color:#bd1c31;flex-shrink:0}
.form-note{font-size:14px;line-height:1.7;color:#5e5650;margin:24px 0 18px}
button.button{border:0;font-family:inherit;cursor:pointer;justify-content:center;min-height:48px;line-height:1.5;gap:18px}
button.button:hover{background:#a6172a}
.quote-primary{background:#bd1c31}
.quote-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
.quote-actions .secondary{color:#171717;background:#eee9e3}
.quote-actions .secondary:hover{background:#e2dbd3}
.quote-aside{padding:3px 0}
.aside-block{border-top:3px solid #bd1c31;padding-top:23px}
.aside-block h2{font-weight:500;font-size:30px;letter-spacing:-.8px;line-height:1.15;margin:0 0 22px}
.aside-block p{font-size:16px;line-height:1.75;color:#5e5650}
.aside-steps{list-style:none;padding:0;margin:25px 0}
.aside-steps li{display:grid;grid-template-columns:24px 1fr;gap:10px;padding:17px 0;border-top:1px solid #d4d0cc;font-size:15px;line-height:1.65}
.aside-steps span{color:#bd1c31;font-size:12px;padding-top:2px}
.aside-contact{margin-top:30px;padding-top:23px;border-top:1px solid #d4d0cc}
.aside-contact p{font-size:15px;line-height:1.7;color:#5e5650}
.aside-contact a{font-size:23px;display:inline-block;text-underline-offset:5px}
.privacy-note{margin-top:25px;padding-top:20px;border-top:1px solid #d4d0cc;font-size:14px;line-height:1.7}
.privacy-note summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding:5px 0}
.privacy-note p{margin:12px 0 0;color:#5e5650}
.quote-summary h2{font-size:30px;line-height:1.15;letter-spacing:-.8px;font-weight:500;margin:15px 0 20px}
.summary-notice{padding:16px;background:#eee9e3;font-size:15px;line-height:1.7;border-left:3px solid #bd1c31;margin:20px 0}
.summary-list{margin:0}
.summary-row{padding:16px 0;border-bottom:1px solid #e3ddd7}
.summary-row dt{font-size:12px;line-height:1.6;color:#6d625e;margin-bottom:6px;text-transform:uppercase;letter-spacing:1px}
.summary-row dd{margin:0;font-size:17px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}
.demo-result{background:#f5f7f0;border:1px solid #bac4a5;border-radius:4px;margin:20px 0 0;padding:20px;font-size:16px;line-height:1.7}
.send-status{font-size:15px;line-height:1.7;margin:18px 0 0;color:#514943}
.send-error{margin:18px 0 0;padding:17px;border-left:3px solid #bd1c31;background:#fbf0f1;font-size:15px;line-height:1.7;color:#6d1724}
button.button:disabled{cursor:wait;opacity:.65}
.required-note{font-size:14px;color:#665e58;margin:0 0 24px;line-height:1.7}
.quote-page footer{border-top:1px solid #d4d0cc}
@media(max-width:1000px){.quote-layout{grid-template-columns:minmax(0,1fr) minmax(230px,.7fr);gap:4%}.quote-card{padding:25px}}
@media(max-width:760px){.preview-notice{padding:12px 6%;font-size:13px}.quote-heading{padding-bottom:28px}.quote-layout{padding:0 6% 45px;grid-template-columns:1fr;gap:35px}.quote-card{padding:23px 20px}.quote-aside{padding:0}.quote-field input,.quote-field textarea{font-size:16px}.quote-grid{gap:17px}.quote-group legend{font-size:22px}.quote-actions>*{width:100%}.quote-actions{align-items:stretch}.quote-primary{width:100%}.aside-block h2{font-size:28px}}
@media(max-width:420px){.quote-grid{grid-template-columns:1fr}.quote-field.full{grid-column:auto}.quote-card{padding:22px 17px}.quote-heading h1{font-size:42px;letter-spacing:-2px}.quote-group legend{font-size:21px}}
