.quote-page{grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr);align-items:start;gap:clamp(48px,6.5vw,96px);padding-block:76px 104px;display:grid}.quote-intro{position:sticky;top:112px}.quote-intro h1{letter-spacing:-.025em;font-family:Fraunces,Georgia,serif;font-size:clamp(44px,4.3vw,62px);font-weight:520;line-height:1.12}.quote-intro h1 em{color:#706e63;font-style:normal;font-weight:420}.quote-intro>p{max-width:32ch;margin-top:24px;font-size:17px;line-height:1.7}.quote-progress{margin-top:36px}.quote-progress ol{margin:0;padding:0;list-style:none}.quote-progress button{width:100%;min-height:54px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:2px;align-items:center;gap:14px;padding:10px 14px 10px 0;font-size:15px;font-weight:500;display:flex}.quote-progress button:disabled{cursor:default;color:var(--muted)}.quote-progress button:not(:disabled):hover{color:var(--ink)}.quote-progress button[aria-current=step]{color:var(--ink);font-weight:650}.quote-progress__number{font-variant-numeric:tabular-nums;border:1px solid #a5a59c;border-radius:50%;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:550;display:grid}.quote-progress__number svg{display:none}.quote-progress button[aria-current=step] .quote-progress__number{color:var(--paper);background:var(--ink);border-color:var(--ink)}.quote-progress button.is-complete .quote-progress__number>span{display:none}.quote-progress button.is-complete .quote-progress__number svg{display:block}.quote-progress__arrow{visibility:hidden;margin-left:auto}.quote-progress button[aria-current=step] .quote-progress__arrow{visibility:visible}.quote-direct{border-top:1px solid var(--rule);margin-top:32px;padding-top:26px}.quote-direct p{margin-bottom:10px;font-size:14px}.quote-direct a{width:fit-content;min-height:40px;color:var(--ink);align-items:center;gap:12px;font-size:14px;display:flex}.quote-direct .footer-link{background-size:100% .08em}.quote-panel{background:var(--white);border-radius:8px;min-width:0;padding:36px;scroll-margin-top:12px}.quote-position{border-bottom:1px solid var(--rule);color:var(--muted);justify-content:space-between;gap:16px;margin-bottom:28px;padding-bottom:24px;font-size:13px;display:flex}.quote-position span:first-child{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.quote-panel form{position:relative}.quote-panel fieldset{border:0;min-width:0;margin:0;padding:0}.quote-panel fieldset+fieldset{margin-top:48px}.quote-panel[data-enhanced] fieldset+fieldset{margin-top:0}.quote-panel legend{width:100%;color:var(--ink);letter-spacing:-.025em;text-wrap:balance;margin:0;padding:0;font-family:Inter,sans-serif;font-size:28px;font-weight:600;line-height:1.3}.quote-panel legend:focus{outline:none}.quote-step-intro{margin-top:14px;font-size:15px;line-height:1.7}.quote-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;display:grid}.quote-choice{min-width:0;min-height:130px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #bcbdb5;border-radius:8px;align-items:flex-start;gap:14px;padding:24px 38px 22px 20px;transition:background-color .18s,border-color .18s;display:flex;position:relative}.quote-choice input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.quote-choice__icon{flex:0 0 23px;margin-top:2px}.quote-choice__copy{flex-direction:column;gap:9px;min-width:0;display:flex}.quote-choice__copy strong{letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:1.45}.quote-choice__copy>span{color:var(--muted);font-size:13px;line-height:1.6}.quote-choice__indicator{border:1px solid #a5a59c;border-radius:50%;place-items:center;width:19px;height:19px;display:grid;position:absolute;top:15px;right:13px}.quote-choice__indicator svg{visibility:hidden}.quote-choice:has(input[type=checkbox]) .quote-choice__indicator{border-radius:4px}.quote-choice--wide{grid-column:1/-1;min-height:92px;padding-block:20px}.quote-choice:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--paper)}.quote-choice:has(input:checked) .quote-choice__copy>span{color:#ddddd6}.quote-choice:has(input:checked) .quote-choice__indicator{background:var(--paper);border-color:var(--paper);color:var(--ink)}.quote-choice:has(input:checked) .quote-choice__indicator svg{visibility:visible}.quote-choice:has(input:focus-visible){outline-offset:4px;outline:3px solid #687fff}.quote-choice:has(input:disabled){cursor:default}@media (hover:hover) and (pointer:fine){.quote-choice:not(:has(input:checked)):not(:has(input:disabled)):hover{background:var(--paper);border-color:var(--ink)}}.quote-choices--simple .quote-choice{align-items:center;min-height:142px}.quote-fields{gap:24px;margin-top:28px;display:grid}.quote-fields--contact{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-field{min-width:0}.quote-field label{margin-bottom:10px;font-size:14px;font-weight:600;line-height:1.6;display:block}.quote-field label span{color:var(--muted);font-size:12px;font-weight:400}.quote-field input,.quote-field textarea{background:var(--white);width:100%;min-height:52px;color:var(--ink);font:inherit;caret-color:var(--accent);border:1px solid #a5a59c;border-radius:2px;padding:14px;font-size:16px;line-height:1.6;display:block}.quote-field textarea{resize:vertical;min-height:180px}.quote-field input::placeholder,.quote-field textarea::placeholder{color:var(--muted);opacity:1}.quote-field input:hover,.quote-field textarea:hover{border-color:var(--ink)}.quote-field input:focus-visible,.quote-field textarea:focus-visible{outline-offset:3px;border-color:var(--ink);outline:3px solid #687fff}.quote-field [aria-invalid=true]{border-color:var(--accent-hover)}.quote-hint{margin-top:9px;font-size:12px;line-height:1.6}.quote-review{border-top:1px solid var(--rule);margin-top:28px;padding-top:24px}.quote-review h2{letter-spacing:0;font-family:Inter,sans-serif;font-size:14px;font-weight:600;line-height:1.5}.quote-review dl{margin:12px 0 0}.quote-review dl>div{grid-template-columns:70px minmax(0,1fr) 44px;align-items:center;gap:12px;min-height:44px;font-size:13px;line-height:1.6;display:grid}.quote-review dt{color:var(--muted)}.quote-review dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.quote-review button{min-height:44px;color:var(--ink);text-underline-offset:4px;background:0 0;border:0;padding:0;font-size:12px;font-weight:550;text-decoration:underline}.quote-review button:hover{color:var(--accent-hover)}.quote-review__details{margin-top:12px}.quote-review__details button{align-items:center;gap:10px;display:inline-flex}.quote-actions{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:24px;display:flex}.quote-next,.quote-submit{min-height:52px;color:var(--paper);background:var(--ink);border-color:var(--ink);padding:14px 22px;font-size:15px}.quote-next:hover,.quote-submit:hover{background:#45443f;border-color:#45443f}.quote-actions .quote-next,.quote-actions .quote-submit{margin-left:auto}.quote-back{min-height:48px;color:var(--ink);background:0 0;border:0;align-items:center;gap:9px;padding:10px 0;font-size:14px;font-weight:550;display:inline-flex}.quote-back:hover{color:var(--accent-hover)}.quote-panel button:disabled{cursor:default}.quote-submit:disabled{background:#585650;border-color:#585650}.quote-error{color:var(--accent-hover);margin-top:22px;font-size:14px;line-height:1.7}.quote-submit-error{border:1px solid var(--accent-hover);border-radius:2px;margin-top:24px;padding:20px}.quote-submit-error p{color:var(--accent-hover);margin-bottom:12px;font-size:14px;line-height:1.7}.quote-submit-error a{color:var(--ink);font-size:14px;font-weight:550;text-decoration:underline}.quote-privacy{margin-top:20px;font-size:12px;line-height:1.7}.quote-privacy a,.quote-nojs a{color:var(--ink);text-decoration:underline}.quote-nojs{margin-top:24px;font-size:15px;line-height:1.7}.quote-honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.quote-thanks{padding:36px 4px 56px}.quote-thanks>svg{color:var(--ink);margin-bottom:30px}.quote-thanks h2{letter-spacing:-.025em;font-size:clamp(38px,3.8vw,54px);line-height:1.15}.quote-thanks h2 em{color:#706e63;font-style:normal;font-weight:420}.quote-thanks h2:focus{outline:none}.quote-thanks p{color:var(--ink);margin-top:24px;font-size:20px;line-height:1.6}.quote-thanks>.quote-thanks__detail{max-width:42ch;color:var(--muted);margin-top:14px;font-size:16px;line-height:1.75}.quote-thanks>a{margin-top:34px}@media (width<=1100px){.quote-page{grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);gap:40px}.quote-panel{padding:28px}.quote-choice{flex-direction:column;gap:12px;padding-inline:18px 28px}.quote-choice--wide{flex-direction:row}}@media (width<=960px){.quote-page{grid-template-columns:1fr;gap:32px;max-width:800px;padding-top:48px}.quote-intro{position:static}.quote-intro h1{font-size:44px}.quote-intro h1 br{display:none}.quote-intro>p{max-width:52ch;margin-top:18px}.quote-progress{margin-top:26px}.quote-panel .quote-progress{border-bottom:1px solid var(--rule);margin:-8px 0 24px;padding-bottom:16px}.quote-progress ol{grid-template-columns:repeat(5,minmax(44px,1fr));gap:4px;display:grid}.quote-progress button{justify-content:center;min-width:44px;min-height:44px;padding:8px 0}.quote-progress button>span:not(.quote-progress__number),.quote-progress__arrow{display:none}.quote-progress button>.sr-only{display:block}.quote-progress__number{flex-basis:32px;width:32px;height:32px;font-size:13px}.quote-position{border-bottom:0;margin-bottom:16px;padding-bottom:16px;font-size:14px}.quote-direct{flex-wrap:wrap;align-items:center;gap:0 24px;margin-top:0;padding-top:20px;display:flex}.quote-direct p{width:100%;margin-bottom:3px}.quote-direct a{min-height:44px;font-size:15px}.quote-choice{flex-direction:row;min-height:122px}.quote-choice__copy>span{font-size:14px}.quote-choices--simple .quote-choice{min-height:128px}.quote-step-intro,.quote-field label{font-size:16px}.quote-field label span,.quote-hint,.quote-review dl>div,.quote-review button,.quote-privacy{font-size:14px}}@media (width<=600px){.quote-page{gap:26px;padding-block:36px 64px}.quote-intro h1{font-size:38px;line-height:1.15}.quote-intro>p,.quote-direct p{font-size:16px}.quote-panel{padding:24px 20px}.quote-position{margin-bottom:12px;padding-bottom:12px;font-size:14px;line-height:1.5}.quote-panel legend{font-size:25px}.quote-step-intro{font-size:16px;line-height:1.6}.quote-choices{grid-template-columns:1fr;gap:10px;margin-top:22px}.quote-choice{touch-action:manipulation;align-items:center;gap:12px;min-height:88px;padding:16px 44px 16px 14px}.quote-choice__icon{margin-top:0}.quote-choice__copy{gap:4px}.quote-choice__copy strong{font-size:16px}.quote-choice__copy>span{font-size:14px;line-height:1.5}.quote-choice__indicator{width:20px;height:20px;top:50%;right:14px;transform:translateY(-50%)}.quote-choice--wide{grid-column:auto;min-height:88px}.quote-choices--simple .quote-choice{min-height:88px}.quote-fields--contact{grid-template-columns:1fr}.quote-field label{font-size:16px}.quote-field label span{font-size:14px}.quote-field input,.quote-field textarea{border-radius:4px}.quote-field input{min-height:56px}.quote-field textarea{min-height:164px}.quote-hint{font-size:14px}.quote-review h2{font-size:16px}.quote-review dl>div{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) 48px;gap:4px 12px;padding-block:12px}.quote-review dt{grid-column:1;font-size:14px}.quote-review dd{grid-column:1;font-size:15px}.quote-review dl button{grid-area:1/2/3;min-width:48px;min-height:48px;font-size:14px}.quote-review__details button{min-height:48px;font-size:15px}.quote-actions{gap:12px}.quote-actions .quote-next,.quote-actions .quote-submit{flex:1;margin-left:0}.quote-back{gap:7px;min-width:64px;min-height:52px;font-size:15px}.quote-next,.quote-submit{gap:8px;padding-inline:12px;font-size:15px}.quote-field .quote-error{margin:0 0 12px}.quote-error,.quote-submit-error p,.quote-submit-error a,.quote-privacy{font-size:14px}.quote-submit-error{padding:16px}.quote-submit-error a{align-items:center;min-height:44px;display:inline-flex}.quote-privacy{line-height:1.7}.quote-thanks{padding:24px 0 32px}.quote-thanks h2{font-size:38px}.quote-thanks p{font-size:18px}}@media (prefers-reduced-motion:reduce){.quote-choice{transition:none}}
