.quote-page{background:#f8f8f2;color:#222b23}.quote-layout{display:grid;grid-template-columns:2fr 1fr}.quote-panel{background:#eaf0e2;padding:62px 8% 48px}.quote-content{max-width:650px;margin:0 auto}.quote-content h1{font-size:clamp(38px,3.7vw,58px);font-weight:400;line-height:1.08;letter-spacing:-.045em;margin:22px 0 18px}.quote-subtitle{font-size:16px;line-height:1.5;color:#48543f;margin:0}.quote-assurances{display:flex;flex-wrap:wrap;gap:12px 26px;font-size:13px;color:#3a4d31;margin:27px 0}.quote-divider{height:2px;background:#bacda8;margin-bottom:29px}.project-options{border:0;margin:0 0 25px;padding:0;min-width:0}.project-options legend{font-size:17px;font-weight:500}.field-hint{font-size:12px;color:#5f6b57;margin:7px 0 14px}.service-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.service-choices label{position:relative;cursor:pointer}.service-choices input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.service-choices label>span{display:flex;align-items:center;gap:10px;border:1px solid #adbd9e;background:#f5f8f0;border-radius:5px;padding:14px 12px;font-size:14px;transition:background .15s,border-color .15s}.service-choices i{display:grid;place-items:center;border:1px solid #9bad8b;width:19px;height:19px;border-radius:50%;color:transparent;font-style:normal;font-size:12px}.service-choices input:checked+span{background:#d9e5cd;border-color:#678c47}.service-choices input:checked+span i{background:#678c47;color:white;border-color:#678c47}.service-choices label:hover>span{border-color:#678c47;background:#e2ead9}.service-choices input:focus-visible+span{outline:2px solid #52700a;outline-offset:3px}.field{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.11em;margin-bottom:20px}.field>span{color:#678c47}.field input{display:block;width:100%;box-sizing:border-box;margin-top:9px;height:49px;background:#fff;border:0;border-bottom:2px solid #b8cba4;border-radius:0;padding:12px 14px;font:inherit;font-size:16px;font-weight:400;text-transform:none;letter-spacing:normal;color:#24321e}.field input:focus{outline:2px solid #678c47;outline-offset:2px}.zip-field{max-width:155px}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-expectation{font-size:13px;line-height:1.6;color:#55624b;margin:25px 0}.quote-submit{display:flex;align-items:center;justify-content:center;gap:25px;width:100%;border:0;border-radius:4px;background:#c6f729;color:#233019;font:inherit;font-size:13px;font-weight:600;letter-spacing:.075em;text-transform:uppercase;min-height:56px;padding:16px 22px;cursor:pointer}.quote-submit:hover{background:#aacc00}.quote-submit>span{font-size:21px}.form-note{font-size:11px;color:#627257;margin:14px 0 0;text-align:center}.quote-visual{position:relative;min-height:100%;overflow:hidden;background:#233021}.quote-visual>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:55% center}.quote-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,#132015bb)}.quote-image-copy{position:absolute;left:40px;right:25px;bottom:48px;color:white;z-index:1}.quote-image-copy>span{font-size:10px;letter-spacing:.14em}.quote-image-copy p{font-size:clamp(30px,3vw,46px);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:19px 0 0}.quote-phone-strip{background:white;padding:35px 0}.quote-phone-strip>.wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.quote-phone-strip h2{font-size:15px;text-transform:uppercase;letter-spacing:.08em;font-weight:500;margin:0 0 9px}.quote-phone-strip p{font-size:14px;color:#65705c;margin:0;line-height:1.5}.quote-phone-strip a{display:flex;align-items:center;justify-content:center;gap:25px;padding:16px 26px;border:1px solid #678c47;border-radius:4px;color:#425c32;font-size:14px;font-weight:500;white-space:nowrap}.quote-phone-strip a:hover{background:#eaf0e2}#service-error{font-size:13px;color:#9a3322;margin-bottom:0}#quote-confirmation{padding:30px 0;min-height:400px}#quote-confirmation h2{font-size:32px;font-weight:400}#quote-confirmation p{font-size:16px;line-height:1.7}#quote-confirmation a{color:#426030}#restart{background:#c6f729;border:0;padding:15px 25px;font:inherit;cursor:pointer}.confirmation-mark{font-size:38px;color:#678c47}[hidden]{display:none!important}@media(min-width:1500px){.quote-panel{padding-top:75px;padding-bottom:65px}}@media(max-width:960px){.quote-layout{grid-template-columns:1.65fr 1fr}.quote-panel{padding:40px 6%}.service-choices{gap:7px}.service-choices label>span{font-size:12px;padding:12px 8px;gap:6px}.quote-image-copy{left:25px}}@media(max-width:760px){.quote-layout{grid-template-columns:1fr}.quote-panel{padding:35px 24px}.quote-content h1{font-size:40px}.quote-assurances{font-size:12px;gap:10px}.quote-visual{min-height:290px}.quote-visual>img{object-position:center 45%}.quote-image-copy{bottom:28px}.quote-image-copy p{font-size:32px}.quote-phone-strip>.wrap{flex-direction:column;align-items:stretch;gap:23px}.quote-phone-strip{padding:28px 0}.name-fields{gap:14px}.quote-submit{font-size:12px}.quote-content .eyebrow{font-size:10px}}@media(max-width:360px){.name-fields{grid-template-columns:1fr;gap:0}.service-choices label>span{flex-direction:column}}
/* Urban type, surfaces and controls on the approved split layout. */
.quote-page{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;letter-spacing:-.035em;background:#f9f9f5;color:#202b1b}.quote-panel{background:#f1f3e9}.quote-content h1{font-weight:400;letter-spacing:-.065em;line-height:1.02}.quote-subtitle{color:#72776d;letter-spacing:-.035em;font-size:18px}.quote-assurances{letter-spacing:-.015em;color:#526747}.quote-divider{height:1px;background:#cbd3c0}.project-options legend{font-weight:500;letter-spacing:-.035em;font-size:19px}.field-hint{letter-spacing:-.015em;color:#72776d}.service-choices label>span{border-radius:999px;background:transparent;border-color:#c3cbb8;font-size:14px;font-weight:400;padding:13px 16px;letter-spacing:-.025em}.service-choices input:checked+span{background:#e1e9d7;border-color:#678c47}.service-choices i{width:20px;height:20px;flex-shrink:0}.field{font-size:14px;font-weight:500;text-transform:none;letter-spacing:-.025em}.field input{border:1px solid #d6ddcc;border-radius:12px;background:#ffffffcf;letter-spacing:-.015em;font-size:16px;font-weight:400;box-shadow:none}.field input:hover{border-color:#9aaa8b}.field input:focus{border-color:#678c47;outline:2px solid #678c4740;outline-offset:2px;background:white}.contact-expectation{letter-spacing:-.015em;color:#72776d;font-size:13px}.quote-submit{border-radius:999px;letter-spacing:-.025em;text-transform:none;font-weight:500;font-size:16px;min-height:54px}.quote-submit>span{font-weight:400}.quote-phone-strip{background:#f9f9f5}.quote-phone-strip h2{text-transform:none;letter-spacing:-.045em;font-size:26px;font-weight:400}.quote-phone-strip p{letter-spacing:-.025em;color:#72776d;font-size:15px}.quote-phone-strip a{border-radius:999px;letter-spacing:-.025em;padding:14px 25px;font-weight:500}.quote-phone-strip a:hover{background:#678c47;color:white}.quote-image-copy p{letter-spacing:-.06em;font-weight:400}.quote-image-copy>span{display:inline-block;border:1px solid #ffffff70;border-radius:999px;padding:5px 9px;letter-spacing:-.015em;font-size:11px}.form-note{letter-spacing:0;color:#72776d}#restart{border-radius:999px;font-size:15px}#quote-confirmation h2{letter-spacing:-.055em}.quote-submit:focus-visible,.quote-phone-strip a:focus-visible,#restart:focus-visible{outline:2px solid #52700a;outline-offset:4px}@media(max-width:960px){.service-choices label>span{padding:12px 9px;font-size:13px}}@media(max-width:760px){.quote-subtitle{font-size:16px}.quote-content h1{font-size:40px}.quote-phone-strip h2{font-size:25px}.service-choices label>span{justify-content:center;font-size:13px;padding:12px 8px}.quote-assurances{font-size:12px}}
.quote-subtitle+.quote-divider{margin-top:28px}.quote-next-steps{background:#f9f9f5;padding:44px 0}.quote-next-steps>.wrap{display:grid;grid-template-columns:.65fr 2fr;gap:40px;align-items:start}.next-heading h2{font-size:34px;font-weight:400;letter-spacing:-.055em;line-height:1.1;margin:15px 0 0}.quote-next-steps ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.quote-next-steps li{display:flex;flex-direction:column;gap:16px}.next-number{display:grid;place-items:center;width:35px;height:35px;border:1px solid #bdcbb0;border-radius:50%;color:#678c47;font-size:12px;letter-spacing:0}.quote-next-steps h3{font-size:18px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 9px}.quote-next-steps p{font-size:14px;line-height:1.55;color:#72776d;letter-spacing:-.015em;margin:0}@media(max-width:960px){.quote-next-steps>.wrap{grid-template-columns:1fr;gap:28px}}@media(max-width:760px){.quote-next-steps{padding:32px 0}.quote-next-steps ol{grid-template-columns:1fr;gap:24px}.quote-next-steps li{flex-direction:row;gap:16px}.next-number{flex-shrink:0}.next-heading h2{font-size:30px}}
.quote-consent{display:flex;align-items:flex-start;gap:12px;margin:24px 0;font-size:12px;line-height:1.6;color:#65705c;letter-spacing:-.01em;cursor:pointer}.quote-consent input{appearance:auto;width:18px;height:18px;flex-shrink:0;margin:2px 0 0;accent-color:#678c47}.quote-consent input:focus-visible{outline:2px solid #678c47;outline-offset:3px}
/* Final hierarchy and readability refinements. */
.quote-panel{padding-top:44px;padding-bottom:40px}.quote-content h1{margin:18px 0 15px}.quote-subtitle{max-width:520px;font-size:16px;line-height:1.55}.quote-subtitle+.quote-divider{margin-top:23px;margin-bottom:23px}.project-options{margin-bottom:20px}.quote-page .name-fields .field{margin-bottom:20px}.quote-page .service-choices{margin-top:0}.quote-page .field-hint{font-size:13px;color:#58624f;margin-bottom:12px}.service-choices i{border-radius:5px}.quote-consent{font-size:13px;color:#535e4b;line-height:1.6}.quote-next-steps p{color:#626b59;font-size:15px}.quote-brand-mark{width:33px;height:33px;margin-right:9px;flex-shrink:0;color:#202b1b}.quote-page .footer-contact p>a{display:inline;font:inherit;letter-spacing:inherit;margin:0}.quote-page .project-options{padding-bottom:0}.quote-page .service-choices label{margin-bottom:0}@media(min-width:1500px){.quote-panel{padding-top:52px;padding-bottom:48px}}@media(max-width:760px){.quote-panel{padding:30px 24px}.quote-brand-mark{width:27px;height:27px;margin-right:7px}}
.quote-page .service-choices label>.illustrated-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:12px 17px 16px;border:1px solid #d4dccb;border-radius:16px;background:#fafbf6;overflow:hidden;transition:background .18s,border-color .18s,box-shadow .18s}.illustrated-choice .service-illustration{width:108px;height:108px;align-self:center;transition:transform .2s}.illustrated-choice strong{font-size:15px;font-weight:500;letter-spacing:-.025em}.quote-page .illustrated-choice i{position:absolute;top:12px;right:12px;width:18px;height:18px;border-radius:5px;background:#ffffff80;z-index:1}.quote-page .service-choices label:hover>.illustrated-choice{background:#f3f6ed;border-color:#97aa84}.service-choices label:hover .service-illustration{transform:translateY(-3px)}.quote-page .service-choices input:checked+.illustrated-choice{background:#e3ecd9;border-color:#678c47;box-shadow:inset 0 0 0 1px #678c47}.quote-page .service-choices input:checked+.illustrated-choice i{background:#678c47;color:white}.quote-page .service-choices input{z-index:2}@media(max-width:760px){.quote-page .service-choices label>.illustrated-choice{padding:12px 10px;border-radius:12px}.illustrated-choice .service-illustration{width:82px;height:82px}.illustrated-choice strong{font-size:13px}.quote-page .illustrated-choice i{top:8px;right:8px;width:16px;height:16px}}@media(prefers-reduced-motion:reduce){.illustrated-choice .service-illustration,.quote-page .service-choices label>.illustrated-choice{transition:none}}
/* Compact photo-led service choices. */
.quote-page .service-choices label>.photo-choice{height:78px;box-sizing:border-box;position:relative;display:flex;flex-direction:row;align-items:center;gap:10px;padding:7px 30px 7px 7px;border-radius:13px;background:#fafbf6;border:1px solid #d4dccb;overflow:hidden;transition:background .18s,border-color .18s}.photo-choice img{display:block;width:57px;height:62px;object-fit:cover;border-radius:8px;flex-shrink:0}.service-choices label:first-child .photo-choice img{object-position:73% center}.photo-choice strong{font-size:14px;font-weight:500;letter-spacing:-.025em}.quote-page .photo-choice i{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:4px;background:#fff}.quote-page .service-choices label:hover>.photo-choice{border-color:#97aa84;background:#f2f6ec}.quote-page .service-choices input:checked+.photo-choice{background:#e3ecd9;border-color:#678c47;box-shadow:inset 0 0 0 1px #678c47}.quote-page .service-choices input:checked+.photo-choice i{background:#678c47;color:white}@media(max-width:960px){.photo-choice img{width:40px}.quote-page .service-choices label>.photo-choice{gap:7px;padding-right:24px}.quote-page .photo-choice i{right:6px;width:14px;height:14px}.photo-choice strong{font-size:12px}}@media(max-width:760px){.quote-page .service-choices{grid-template-columns:1fr;gap:8px}.quote-page .service-choices label>.photo-choice{height:66px;padding:6px 40px 6px 6px;gap:14px}.photo-choice img{width:66px;height:52px}.photo-choice strong{font-size:15px}.quote-page .photo-choice i{width:18px;height:18px;right:15px}}
/* Soft photographic pills. */
.quote-page .service-choices label>.photo-choice{height:56px;border-radius:999px;padding:0 44px 0 20px;background:#263520;border:1px solid #67785d;isolation:isolate}.photo-choice img{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:cover;opacity:.4;filter:saturate(.65);z-index:-2}.photo-choice:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#17231480,#17231440);z-index:-1;pointer-events:none}.photo-choice strong{font-size:14px;font-weight:500;color:#fff;letter-spacing:-.02em}.quote-page .photo-choice i{right:17px;width:17px;height:17px;background:#ffffff14;border-color:#ffffffa0}.quote-page .service-choices label:hover>.photo-choice{background:#34482a;border-color:#678c47}.quote-page .service-choices input:checked+.photo-choice{background:#405833;border-color:#678c47;box-shadow:0 0 0 2px #bacda8}.quote-page .service-choices input:checked+.photo-choice i{background:#f0f5e9;border-color:#f0f5e9;color:#425b32}.quote-page .service-choices input:focus-visible+.photo-choice{outline:2px solid #52700a;outline-offset:4px}@media(max-width:960px){.quote-page .service-choices label>.photo-choice{padding-left:14px;padding-right:32px}.quote-page .photo-choice i{right:11px;width:15px;height:15px}.photo-choice strong{font-size:13px}}@media(max-width:760px){.quote-page .service-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quote-page .service-choices label>.photo-choice{height:54px;padding:0 25px 0 10px;gap:0}.photo-choice img{width:100%;height:100%}.photo-choice strong{font-size:12px}.quote-page .photo-choice i{right:8px;width:13px;height:13px}}@media(max-width:360px){.quote-page .service-choices{grid-template-columns:1fr}.quote-page .service-choices label>.photo-choice{height:50px;padding-left:20px}.photo-choice strong{font-size:14px}.quote-page .photo-choice i{right:18px;width:17px;height:17px}}
/* Light photographic finish. */
.quote-page .service-choices label>.photo-choice{background:#f5f5eb;border-color:#bdc8b2}.photo-choice img{opacity:.48;filter:saturate(.55)}.photo-choice:after{background:linear-gradient(90deg,#f8f8edc9,#f8f8ed80)}.photo-choice strong{color:#293d23}.quote-page .photo-choice i{background:#fafbf2c9;border-color:#829473}.quote-page .service-choices label:hover>.photo-choice{background:#edf2e4;border-color:#819b6c}.quote-page .service-choices input:checked+.photo-choice{background:#dce8d0;border-color:#678c47;box-shadow:0 0 0 2px #c4d5b4}.quote-page .service-choices input:checked+.photo-choice:after{background:linear-gradient(90deg,#e0ebd3d9,#e0ebd3a6)}.quote-page .service-choices input:checked+.photo-choice i{background:#678c47;border-color:#678c47;color:white}
/* Natural photo colors; contrast is applied to labels only. */
.quote-page .photo-choice img{opacity:1;filter:none}.quote-page .photo-choice:after,.quote-page .service-choices input:checked+.photo-choice:after{background:none}.quote-page .photo-choice strong{color:#fff;font-weight:600;text-shadow:0 1px 3px #000,0 0 7px #000b}.quote-page .photo-choice i{background:#fffffff0;border-color:#fff;box-shadow:0 1px 4px #0005}.quote-page .service-choices input:checked+.photo-choice i{background:#678c47;border-color:white;color:white}.quote-page .service-choices input:checked+.photo-choice{box-shadow:0 0 0 2px #678c47}
/* Simple service selectors: icon, name, checkbox. */
.quote-page .service-choices label>.simple-choice{position:relative;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;height:54px;box-sizing:border-box;padding:0 40px 0 17px;border:1px solid #c3cdb8;border-radius:999px;background:#edf2e6;color:#293d23}.simple-choice .choice-icon{flex-shrink:0;color:#678c47}.simple-choice strong{font-size:14px;font-weight:500;letter-spacing:-.025em}.quote-page .simple-choice i{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:1px solid #94a485;border-radius:4px;background:#ffffff70;color:transparent}.quote-page .service-choices label:hover>.simple-choice{background:#e4ecd9;border-color:#8ba476}.quote-page .service-choices input:checked+.simple-choice{background:#dce8d0;border-color:#678c47;box-shadow:inset 0 0 0 1px #678c47}.quote-page .service-choices input:checked+.simple-choice i{background:#678c47;border-color:#678c47;color:#fff}.quote-page .service-choices input:focus-visible+.simple-choice{outline:2px solid #52700a;outline-offset:3px}@media(max-width:960px){.quote-page .service-choices label>.simple-choice{gap:6px;padding-left:12px;padding-right:30px}.simple-choice .choice-icon{width:19px;height:19px}.simple-choice strong{font-size:12px}.quote-page .simple-choice i{right:10px;width:14px;height:14px}}@media(max-width:760px){.quote-page .service-choices{grid-template-columns:1fr;gap:8px}.quote-page .service-choices label>.simple-choice{height:50px;padding-left:18px;gap:12px}.simple-choice strong{font-size:14px}.simple-choice .choice-icon{width:23px;height:23px}.quote-page .simple-choice i{right:18px;width:17px;height:17px}}
.quote-field-error{display:block;color:#a32d25;font-size:12px;font-weight:400;line-height:1.45;letter-spacing:0;margin-top:7px}.quote-consent+.quote-field-error{margin:-15px 0 22px 30px}.field input[aria-invalid=true]{border-color:#b13c32;background:#fffafa}.quote-consent input[aria-invalid=true]{outline:1px solid #b13c32;outline-offset:2px}
.quote-visual>img{object-position:59% center}.quote-visual:after{background:linear-gradient(180deg,transparent 62%,#132015a6 100%)}@media(max-width:760px){.quote-visual>img{object-position:55% 56%}}

#quote-confirmation #restart{display:inline-flex;align-items:center;gap:9px;background:transparent;border:0;border-radius:0;padding:0;margin-top:18px;color:#678c47;font-size:15px;text-decoration:none}#quote-confirmation #restart:hover{text-decoration:underline;text-underline-offset:4px}#restart svg{flex-shrink:0}.confirmation-preview-note{display:block;margin-top:24px;font-size:11px;color:#72776d}

/* Confirmation follows the form's typography and spacing scale. */
.quote-content.is-confirmed>.eyebrow,.quote-content.is-confirmed>h1,.quote-content.is-confirmed>.quote-subtitle,.quote-content.is-confirmed>.quote-divider{display:none}.quote-content.is-confirmed{min-height:560px;display:flex;align-items:center}#quote-confirmation{padding:30px 0;min-height:0;max-width:560px;width:100%;font-family:inherit}#quote-confirmation .confirmation-mark{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#e1ead6;color:#678c47;margin-bottom:26px}#quote-confirmation h2{font-family:inherit;font-size:clamp(34px,3.4vw,46px);font-weight:400;line-height:1.08;letter-spacing:-.055em;margin:0 0 24px;max-width:500px}#quote-confirmation p{font-family:inherit;font-size:16px;font-weight:400;line-height:1.65;letter-spacing:-.02em;color:#626e57;margin:0 0 18px;max-width:490px}#quote-confirmation p a{font-weight:500;white-space:nowrap;color:#526f39}#quote-confirmation #restart{margin-top:14px;font-family:inherit;font-size:15px;font-weight:500;line-height:1.4;letter-spacing:-.025em;padding:8px 0;gap:10px}#quote-confirmation .confirmation-preview-note{border-top:1px solid #dce1d3;padding-top:18px;margin-top:28px;font:400 11px/1.5 'Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:0;color:#72776d}@media(max-width:760px){.quote-content.is-confirmed{min-height:480px}#quote-confirmation{padding:16px 0}#quote-confirmation h2{font-size:36px}}

#quote-confirmation #restart{margin-top:48px}

#quote-confirmation #restart{gap:5px}#quote-confirmation #restart svg{pointer-events:none}
