.quote-page{--quote-coral:#c9424d;--quote-coral-dark:#a92f3b;--quote-peach:#ffc98a;--quote-sage:#cde5c1;--quote-cream:#faf8f3;--quote-charcoal:#252723;--quote-muted:#676b64;--quote-line:#e5ded2;background:radial-gradient(circle at 7% 15%, #ffc98a52 0 82px, transparent 83px), radial-gradient(circle at 94% 30%, #cde5c161 0 120px, transparent 121px), var(--quote-cream);min-height:100vh;color:var(--quote-charcoal)}.quote-page *,.quote-page :before,.quote-page :after{box-sizing:border-box}.quote-page button,.quote-page input,.quote-page select,.quote-page textarea{font:inherit}.quote-page button,.quote-page a,.quote-page label{-webkit-tap-highlight-color:#c9424d24}:is(.quote-page button:focus-visible,.quote-page a:focus-visible,.quote-page input:focus-visible,.quote-page select:focus-visible,.quote-page textarea:focus-visible){outline-offset:3px;outline:3px solid #235b4a}.quote-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf8f3e6;border-bottom:1px solid #25272314;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:13px clamp(20px,6vw,88px);display:flex}.quote-brand{min-height:44px;color:inherit;letter-spacing:-.03em;align-items:center;gap:10px;font-size:18px;text-decoration:none;display:inline-flex}.quote-brand>span{background:var(--quote-coral);color:#fff;border-radius:11px 11px 11px 3px;place-items:center;width:36px;height:36px;font-size:19px;font-weight:800;display:grid}.quote-header>p{color:#79512c;background:#fff0dc;border-radius:999px;margin:0;padding:7px 11px;font-size:11px;font-weight:700}.quote-hero{text-align:center;max-width:850px;margin:0 auto;padding:58px 24px 34px}.quote-eyebrow{color:#9e3d46;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:800}.quote-hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(50px,8vw,88px);line-height:.98}.quote-hero h1 span:first-child{color:var(--quote-coral-dark)}.quote-hero h1 span:nth-child(2){color:#936026}.quote-hero h1 span:nth-child(3){color:#37664a}.quote-hero__lede{max-width:690px;color:var(--quote-muted);margin:22px auto 0;font-size:16px;line-height:1.7}.quote-promises{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:25px;display:flex}.quote-promises span{color:#405749;background:#fffc;border:1px solid #dce5d7;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:700;display:inline-flex}.quote-promises b{color:#417253}.quote-progress{grid-template-columns:repeat(3,1fr);gap:10px;max-width:880px;margin:0 auto;padding:0 24px 24px;display:grid}.quote-progress button{border:1px solid var(--quote-line);color:#7b7d77;text-align:left;cursor:pointer;background:#ffffffc2;border-radius:15px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:11px;min-width:0;padding:13px;display:grid}.quote-progress button:disabled{opacity:.6;cursor:default}.quote-progress button>span{background:#ece8e1;border-radius:11px;grid-row:1/3;place-items:center;width:35px;height:35px;font-size:12px;font-weight:800;display:grid}.quote-progress button strong{color:var(--quote-charcoal);align-self:end;font-size:15px}.quote-progress button small{align-self:start;margin-top:2px;font-size:10px}.quote-progress button.is-current{border-color:var(--quote-coral);background:#fff;box-shadow:0 8px 28px #55432d17}.quote-progress button.is-current>span{background:var(--quote-coral);color:#fff}.quote-progress button.is-complete>span{background:var(--quote-sage);color:#315b42}.quote-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:22px;max-width:1080px;margin:0 auto;padding:0 24px 64px;display:grid}.quote-card,.quote-summary,.quote-confirmation{border:1px solid var(--quote-line);background:#fffffff7;border-radius:22px;box-shadow:0 20px 54px #4e412f17}.quote-card{min-width:0;overflow:hidden}.quote-step{border:0;min-width:0;margin:0;padding:34px}.quote-step>legend{letter-spacing:-.045em;width:100%;margin:0 0 26px;padding:0;font-size:clamp(26px,3.2vw,34px);font-weight:800;line-height:1.18;display:block}.quote-step>legend>span,.quote-step>legend>small{display:block}.quote-step>legend>span{color:#9e3d46;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800}.quote-step>legend>small{max-width:620px;color:var(--quote-muted);letter-spacing:0;margin-top:9px;font-size:13px;font-weight:400;line-height:1.55}.quote-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quote-choice-card{border:1px solid var(--quote-line);cursor:pointer;background:#fff;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;min-width:0;min-height:112px;padding:14px;transition:border-color .16s,transform .16s,box-shadow .16s;display:grid;position:relative}.quote-choice-card:hover{border-color:#cfc5b7;transform:translateY(-1px);box-shadow:0 8px 20px #4d423312}.quote-choice-card:has(input:focus-visible){outline-offset:3px;outline:3px solid #235b4a}.quote-plan-card:has(input:focus-visible){outline-offset:3px;outline:3px solid #235b4a}.quote-area-grid label:has(input:focus-visible){outline-offset:3px;outline:3px solid #235b4a}.quote-choice-card:has(input:checked){border-color:var(--quote-coral);box-shadow:0 0 0 1px var(--quote-coral);background:#fff9f7}.quote-choice-card input,.quote-plan-card input{opacity:0;position:absolute}.quote-choice-card>span{color:#775023;background:#fff0dc;border-radius:13px;grid-row:1/3;place-items:center;width:42px;height:42px;font-size:15px;font-weight:800;display:grid}.quote-choice-card:nth-child(2)>span{color:#40634b;background:#e9f4e4}.quote-choice-card:nth-child(3)>span{color:#963c43;background:#ffe5e1}.quote-choice-card:nth-child(4)>span{color:#525550;background:#ededeb}.quote-choice-card>strong{align-self:end;font-size:13px}.quote-choice-card>small{color:var(--quote-muted);align-self:start;margin-top:3px;font-size:10px;line-height:1.45}.quote-choice-card>i{background:var(--quote-coral);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;font-weight:800;display:none;position:absolute;top:9px;right:9px}.quote-choice-card:has(input:checked)>i{display:grid}.quote-fields{gap:13px;margin-top:21px;display:grid}.quote-fields--site{grid-template-columns:1fr 1fr .55fr}.quote-fields--two{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-fields--address{grid-template-columns:1.5fr .8fr .65fr}.quote-fields--flush{margin-top:0}.quote-field{min-width:0;display:block}.quote-field>span{color:#454842;align-items:baseline;gap:5px;min-height:18px;margin-bottom:7px;font-size:12px;font-weight:700;display:flex}.quote-field>span b{color:var(--quote-coral-dark)}.quote-field>span small{color:#8a8d86;margin-left:auto;font-size:10px;font-weight:500}.quote-field input,.quote-field select,.quote-field textarea{width:100%;color:var(--quote-charcoal);background:#fff;border:1px solid #d7d1c7;border-radius:11px;font-size:16px}.quote-field input,.quote-field select{min-height:48px}.quote-field input{padding:0 13px}.quote-field select{padding:0 34px 0 13px}.quote-field textarea{resize:vertical;min-height:92px;padding:12px 13px;line-height:1.55}.quote-field input::placeholder,.quote-field textarea::placeholder{color:#969992}.quote-field.has-error input,.quote-field.has-error select,.quote-field.has-error textarea{border-color:#ad343e;box-shadow:0 0 0 2px #ad343e1a}.quote-unit-field{position:relative}.quote-unit-field input{padding-right:48px}.quote-unit-field span{color:#747870;font-size:12px;font-weight:700;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.quote-help-note,.quote-privacy-note{color:#664b2d;background:#fff2df;border-radius:11px;align-items:center;gap:9px;margin:18px 0 0;padding:11px 12px;font-size:11px;line-height:1.5;display:flex}.quote-help-note>span{background:var(--quote-peach);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-weight:800;display:grid}.quote-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quote-plan-card{border:1px solid var(--quote-line);cursor:pointer;border-radius:14px;align-items:center;gap:12px;min-height:88px;padding:14px;display:flex;position:relative}.quote-plan-card:has(input:checked){background:#f4faf1;border-color:#62816a;box-shadow:0 0 0 1px #62816a}.quote-plan-card>span{color:#3d684a;background:#edf5e9;border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-size:14px;font-weight:800;display:grid}.quote-plan-card:first-child>span{color:#7a5126;background:#fff0dc}.quote-plan-card p{margin:0}.quote-plan-card strong,.quote-plan-card small{display:block}.quote-plan-card strong{font-size:13px}.quote-plan-card small{color:var(--quote-muted);margin-top:4px;font-size:10px;line-height:1.4}.quote-group-label{justify-content:space-between;align-items:baseline;gap:18px;margin:22px 0 10px;display:flex}.quote-group-label strong{font-size:12px}.quote-group-label small{color:var(--quote-muted);font-size:10px}.quote-area-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:21px;display:grid}.quote-area-grid label{border:1px solid var(--quote-line);color:#484b45;cursor:pointer;border-radius:11px;align-items:center;gap:9px;min-height:48px;padding:9px 11px;font-size:11px;font-weight:700;display:flex;position:relative}.quote-area-grid label:has(input:checked){background:#f5faf2;border-color:#78927d}.quote-area-grid input{opacity:0;position:absolute}.quote-area-grid span{color:#0000;background:#fff;border:1px solid #cbc5ba;border-radius:7px;flex:none;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.quote-area-grid label:has(input:checked) span{background:var(--quote-sage);color:#315a43;border-color:#5f8468}.quote-address{border:1px solid var(--quote-line);background:#fcfbf8;border-radius:14px;margin-top:22px;padding:16px}.quote-address .quote-group-label{margin:0 0 12px}.quote-no-payment{color:#3b5943;background:#edf7e9;border:1px solid #bcd4b6;border-radius:14px;grid-template-columns:auto 1fr;gap:13px;margin-top:20px;padding:15px;display:grid}.quote-no-payment>span{background:var(--quote-sage);border-radius:12px;place-items:center;width:38px;height:38px;font-size:16px;font-weight:800;display:grid}.quote-no-payment strong{font-size:13px}.quote-no-payment p{margin:4px 0 0;font-size:11px;line-height:1.55}.quote-privacy-note{color:#5d605a;background:#f4f2ed;display:block}.quote-privacy-note a{color:#8f343c;text-underline-offset:2px;font-weight:700;text-decoration:underline}.quote-error{color:#843039;background:#fff0ef;border:1px solid #e9aeb2;border-radius:10px;align-items:center;gap:9px;margin:0 34px 18px;padding:11px 13px;font-size:12px;font-weight:700;display:flex}.quote-error span{background:var(--quote-coral);color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.quote-actions{border-top:1px solid var(--quote-line);background:#fcfbf8;justify-content:space-between;align-items:center;gap:15px;min-height:78px;padding:13px 34px;display:flex}.quote-back-button,.quote-next-button{cursor:pointer;border-radius:11px;justify-content:center;align-items:center;min-height:46px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.quote-back-button{color:#555952;background:0 0;border:0;padding:0 6px}.quote-next-button{background:var(--quote-coral);color:#fff;border:0;gap:18px;min-width:184px;padding:0 18px;transition:transform .16s,background .16s;box-shadow:0 9px 22px #b2374133}.quote-next-button:hover{background:var(--quote-coral-dark);transform:translateY(-1px)}.quote-next-button:active{transform:translateY(1px)}.quote-summary{padding:23px 21px 20px;position:sticky;top:20px;overflow:hidden}.quote-summary__art{background:var(--quote-peach);place-items:center;height:74px;margin:-23px -21px 22px;display:grid;position:relative;overflow:hidden}.quote-summary__art:before,.quote-summary__art:after{content:"";border-radius:50%;position:absolute}.quote-summary__art:before{background:var(--quote-coral);width:95px;height:95px;bottom:-55px;left:-25px}.quote-summary__art:after{background:var(--quote-sage);width:110px;height:110px;top:-58px;right:-20px}.quote-summary__art span{color:#fff;font-size:18px;position:absolute;top:14px;left:31px}.quote-summary__art b{z-index:1;letter-spacing:.12em;font-size:13px;position:relative}.quote-summary h2{letter-spacing:-.04em;margin:0;font-size:21px;line-height:1.25}.quote-summary dl{background:#f5f3ee;border-radius:12px;gap:9px;margin:19px 0 0;padding:14px;display:grid}.quote-summary dl div{justify-content:space-between;gap:12px;display:flex}.quote-summary dt{color:var(--quote-muted);font-size:10px}.quote-summary dd{text-align:right;margin:0;font-size:10px;font-weight:700}.quote-summary__status,.quote-summary__payment{grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-top:16px;display:grid}.quote-summary__status>span,.quote-summary__payment>span{color:#765026;background:#fff0dc;border-radius:12px;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:grid}.quote-summary__status p,.quote-summary__payment p{margin:0}.quote-summary__status strong,.quote-summary__status small,.quote-summary__payment strong,.quote-summary__payment small{display:block}.quote-summary__status strong,.quote-summary__payment strong{font-size:11px}.quote-summary__status small,.quote-summary__payment small{color:var(--quote-muted);margin-top:3px;font-size:10px;line-height:1.4}.quote-summary__payment{border-top:1px solid var(--quote-line);margin-top:19px;padding-top:18px}.quote-summary__payment>span{background:var(--quote-sage);color:#315b42}.quote-footer{border-top:1px solid var(--quote-line);color:#6c6f68;background:#f2eee6;justify-content:space-between;align-items:center;gap:24px;padding:25px clamp(20px,6vw,88px);display:flex}.quote-footer p{margin:0;font-size:10px}.quote-footer nav{gap:18px;display:flex}.quote-footer a{color:inherit;font-size:10px}.quote-confirmation{text-align:center;max-width:880px;margin:56px auto 72px;padding:clamp(30px,5vw,56px)}.quote-confirmation__mark{background:var(--quote-sage);color:#315b42;border-radius:20px 20px 20px 6px;place-items:center;width:64px;height:64px;margin:0 auto 22px;font-size:27px;font-weight:800;display:grid}.quote-confirmation h1{letter-spacing:-.055em;max-width:640px;margin:0 auto;font-size:clamp(36px,5.7vw,58px);line-height:1.06}.quote-confirmation__lede{max-width:650px;color:var(--quote-muted);margin:18px auto 0;font-size:14px;line-height:1.7}.quote-confirmation__summary{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:30px;display:grid}.quote-confirmation__summary>div{border:1px solid var(--quote-line);background:#fcfbf8;border-radius:12px;padding:14px 15px}.quote-confirmation__summary span,.quote-confirmation__summary strong{display:block}.quote-confirmation__summary span{color:var(--quote-muted);font-size:10px}.quote-confirmation__summary strong{margin-top:4px;font-size:12px}.quote-next-steps{text-align:left;background:#edf7e9;border-radius:18px;margin-top:36px;padding:27px}.quote-next-steps>div{text-align:center}.quote-next-steps h2{letter-spacing:-.04em;margin:0;font-size:25px}.quote-next-steps ol{grid-template-columns:repeat(2,1fr);gap:18px 24px;margin:25px 0 0;padding:0;list-style:none;display:grid}.quote-next-steps li{grid-template-columns:auto 1fr;gap:10px;display:grid}.quote-next-steps li>span{color:#3e684a;background:#fff;border-radius:9px;place-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:grid}.quote-next-steps li p{margin:0}.quote-next-steps li strong,.quote-next-steps li small{display:block}.quote-next-steps li strong{font-size:11px}.quote-next-steps li small{color:#536a58;margin-top:3px;font-size:10px;line-height:1.45}.quote-confirmation__actions{justify-content:center;gap:10px;margin-top:28px;display:flex}.quote-confirmation__actions a,.quote-confirmation__actions button{cursor:pointer;border-radius:11px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-size:12px;font-weight:800;display:inline-flex}.quote-confirmation__actions a{background:var(--quote-coral);color:#fff;text-decoration:none}.quote-confirmation__actions button{border:1px solid var(--quote-line);color:var(--quote-charcoal);background:#fff}.quote-confirmation__footnote{color:#777b73;margin:18px 0 0;font-size:10px}@media (max-width:850px){.quote-layout{grid-template-columns:1fr;max-width:760px}.quote-summary{position:static}.quote-summary__art{display:none}.quote-summary dl{grid-template-columns:repeat(4,minmax(0,1fr))}.quote-summary dl div{display:block}.quote-summary dd{text-align:left;margin-top:3px}.quote-summary__status{display:none}.quote-summary__payment{padding-top:14px}.quote-fields--site{grid-template-columns:1fr 1fr}.quote-fields--site .quote-field:last-child{grid-column:1/-1}.quote-fields--address{grid-template-columns:1fr 1fr}.quote-fields--address .quote-field:first-child{grid-column:1/-1}}@media (max-width:620px){.quote-header{min-height:66px;padding-block:11px;padding-inline:max(17px, env(safe-area-inset-left)) max(17px, env(safe-area-inset-right))}.quote-brand{font-size:16px}.quote-brand>span{width:33px;height:33px;font-size:17px}.quote-header>p{text-align:right;background:0 0;max-width:154px;padding:0;font-size:12px;line-height:1.35}.quote-hero{padding:32px max(18px, env(safe-area-inset-right)) 24px max(18px, env(safe-area-inset-left))}.quote-hero h1{font-size:clamp(44px,14vw,58px)}.quote-eyebrow,.quote-step>legend>span{font-size:12px}.quote-hero__lede{font-size:14px}.quote-promises{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:stretch;width:min(100%,430px);margin:20px auto 0;display:grid}.quote-promises span{text-align:left;justify-content:center;padding-inline:8px;font-size:12px}.quote-progress{padding-block:0 16px;padding-inline:max(14px, env(safe-area-inset-left)) max(14px, env(safe-area-inset-right));gap:6px}.quote-progress button{text-align:center;flex-direction:column;gap:5px;padding:9px 5px;display:flex}.quote-progress button>span{width:32px;height:32px}.quote-progress button strong{font-size:13px}.quote-progress button small{display:none}.quote-layout{padding-block:0 44px;padding-inline:max(14px, env(safe-area-inset-left)) max(14px, env(safe-area-inset-right));gap:12px}.quote-summary{border-radius:17px;padding:18px}.quote-summary>.quote-eyebrow,.quote-summary>h2{display:none}.quote-summary dl{grid-template-columns:repeat(2,1fr);margin:0}.quote-step{padding:25px 20px}.quote-step>legend{font-size:27px}.quote-choice-grid,.quote-plan-grid,.quote-fields--two,.quote-fields--site,.quote-fields--address,.quote-area-grid{grid-template-columns:1fr}.quote-fields--site .quote-field:last-child,.quote-fields--address .quote-field:first-child{grid-column:auto}.quote-choice-card{min-height:92px}.quote-choice-card>small,.quote-help-note,.quote-privacy-note,.quote-plan-card small,.quote-group-label small,.quote-area-grid label,.quote-no-payment p,.quote-summary dt,.quote-summary dd,.quote-summary__status strong,.quote-summary__status small,.quote-summary__payment strong,.quote-summary__payment small,.quote-footer p,.quote-footer a,.quote-confirmation__summary span,.quote-next-steps li strong,.quote-next-steps li small,.quote-confirmation__footnote{font-size:12px;line-height:1.5}.quote-field input,.quote-field select,.quote-field textarea{font-size:16px}.quote-group-label{align-items:flex-start}.quote-address{padding:13px}.quote-actions{min-height:76px;padding:12px 20px max(12px, env(safe-area-inset-bottom))}.quote-next-button{min-width:0;padding:0 14px}.quote-error{margin:0 20px 14px}.quote-footer{padding-bottom:max(24px, env(safe-area-inset-bottom));text-align:center;justify-content:center;display:grid}.quote-footer nav{justify-content:center}.quote-footer a{align-items:center;min-height:44px;padding-inline:6px;display:inline-flex}.quote-confirmation{margin:28px 14px 48px;padding:28px 20px}.quote-confirmation__summary,.quote-next-steps ol{grid-template-columns:1fr}.quote-next-steps{padding:22px 17px}.quote-confirmation__actions{display:grid}}@media (max-width:360px){.quote-hero h1{font-size:42px}.quote-actions{gap:8px;display:grid}.quote-back-button,.quote-next-button{width:100%;min-width:0;min-height:48px}.quote-next-button{white-space:nowrap}}@media (prefers-reduced-motion:reduce){.quote-page *,.quote-page :before,.quote-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
