.interior-estimate .quote-shell{grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);grid-template-areas:"intro form" "proof form";grid-template-rows:auto 1fr}
.interior-estimate .quote-intro{grid-area:intro;padding:42px clamp(28px,5vw,78px) 28px}
.interior-estimate .quote-panel{grid-area:form}
.project-proof{grid-area:proof;min-width:0;background:#024bb5;color:#fff;padding:0 clamp(28px,5vw,78px) 40px}
.crew-photo,.estimate-review{margin:0}
.crew-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 60%;border-radius:6px}
.crew-photo figcaption{font-size:.875rem;line-height:1.5;margin-top:10px;color:#e2ecff}
.estimate-review{padding:22px 0 0;margin-top:22px;border-top:1px solid #ffffff50}
.review-stars{color:#ffdf8a;font-size:1rem;letter-spacing:.16em}
.estimate-review blockquote{margin:10px 0 16px;font-size:1.0625rem;line-height:1.65;font-weight:400;letter-spacing:0}
.estimate-review figcaption{display:grid;gap:4px;line-height:1.5}
.estimate-review figcaption strong{font-size:.9375rem}
.estimate-review figcaption span{font-size:.875rem;color:#e2ecff}
.estimate-review a{display:inline-block;font-size:.875rem;line-height:1.5;margin-top:12px;color:#fff;text-decoration:underline;text-underline-offset:3px}
.estimate-review a:focus-visible{outline:3px solid #fff;outline-offset:5px}
.review-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.interior-estimate .eyebrow{font-size:14px;line-height:1.5;letter-spacing:.06em}
.interior-estimate .quote-intro h1{font-size:clamp(42px,4.6vw,66px);line-height:1.05;margin:35px 0 24px;letter-spacing:-.035em}
.interior-estimate .lead{font-size:18px;margin-bottom:40px}
.interior-estimate .trust-list{gap:22px}
.interior-estimate .trust-list strong{font-size:17px}
.interior-estimate .trust-list small{font-size:14px;line-height:1.5}
.interior-estimate .trust-list li>span{font-size:13px}
.interior-estimate .quote-panel{margin:30px clamp(24px,4vw,60px);padding:30px;min-height:0}
.interior-estimate .quote-panel h2{font-size:32px;line-height:1.15;letter-spacing:-.025em}
.interior-estimate .helper{font-size:16px;line-height:1.5;margin:12px 0 22px}
.interior-estimate .text-field{margin:15px 0}
.interior-estimate .text-field>span{font-size:14px;color:#354764}
.interior-estimate .text-field em{font-size:13px;color:#60718b;margin-left:6px}
.interior-estimate .text-field input,.interior-estimate .text-field textarea,.interior-estimate .text-field select{font-size:16px;line-height:1.4;min-width:0}
.interior-estimate .text-field textarea{min-height:100px;resize:vertical}
.interior-estimate .text-field .field-note{margin:0 0 7px}
.interior-estimate .text-field textarea::placeholder{color:#60718b;opacity:1}
.interior-estimate .text-field select{width:100%;min-height:48px;padding:12px 14px;border:1px solid #b9c9e3;border-radius:4px;background:#fff;color:var(--ink);font-family:inherit}
.interior-estimate .text-field select:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,.43fr);gap:14px}
.contact-grid .text-field{margin:0}
.field-note{font-size:13px;line-height:1.4;color:#60718b;margin:6px 0 0}
.interior-estimate .consent{font-size:14px;line-height:1.5;margin:18px 0 6px}
.interior-estimate .consent input{flex-shrink:0;margin-top:3px}
.interior-estimate .form-error{font-size:14px;min-height:0;margin:10px 0}
.interior-estimate .primary-action{justify-content:center;font-size:16px;text-align:center}
.interior-estimate .fine-print{font-size:13px;line-height:1.5;color:#60718b}
.service-fieldset{border:0;padding:0;margin:22px 0}
.service-fieldset legend{font-size:1.0625rem;font-weight:600;color:var(--ink);padding:0}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.service-choice{display:flex;align-items:flex-start;gap:11px;border:1px solid #b9c9e3;border-radius:6px;padding:15px 13px;cursor:pointer;background:#fff;min-width:0}
.service-choice input{flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;accent-color:var(--blue);cursor:pointer}
.service-choice span{min-width:0;overflow-wrap:anywhere}
.service-choice strong{display:block;font-size:1rem;line-height:1.35;font-weight:600;color:var(--ink)}
.service-choice small{display:block;font-size:.875rem;line-height:1.4;color:#53617e;margin-top:4px}
.service-choice:hover{border-color:var(--blue);background:#f7faff}
.service-choice:has(input:checked){border-color:var(--blue);background:#edf4ff;box-shadow:inset 0 0 0 1px var(--blue)}
.service-choice:focus-within{outline:3px solid var(--ink);outline-offset:3px}
.service-fieldset[aria-invalid="true"] .service-choice{border-color:#a62a32}
.interior-estimate #services-error:empty{display:none}
.contact-method-fieldset{border:0;padding:0;margin:22px 0 15px;min-width:0}
.contact-method-fieldset legend{font-size:1rem;font-weight:600;color:var(--ink);padding:0}
.contact-method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.contact-method-choice{display:flex;align-items:center;gap:10px;min-width:0;padding:14px 13px;border:1px solid #b9c9e3;border-radius:6px;cursor:pointer;font-size:1rem;line-height:1.4}
.contact-method-choice input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:var(--blue);cursor:pointer}
.contact-method-choice:hover{border-color:var(--blue);background:#f7faff}
.contact-method-choice:has(input:checked){border-color:var(--blue);background:#edf4ff;box-shadow:inset 0 0 0 1px var(--blue)}
.contact-method-choice:focus-within{outline:3px solid var(--ink);outline-offset:3px}
.contact-method-fieldset[aria-invalid="true"] .contact-method-choice{border-color:#a62a32}
.interior-estimate #contact-method-error:empty{display:none}
.interior-estimate .success-note strong,.interior-estimate .success-note span{font-size:15px;line-height:1.5}
.interior-estimate [hidden]{display:none!important}
.interior-estimate input[aria-invalid="true"],.interior-estimate textarea[aria-invalid="true"],.interior-estimate select[aria-invalid="true"]{border-color:#a62a32}
@media(max-width:1000px){.interior-estimate .quote-shell{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr)}.interior-estimate .quote-intro{padding:42px 28px}.interior-estimate .quote-panel{margin:24px 20px;padding:25px}.interior-estimate .quote-intro h1{font-size:48px}}
@media(max-width:760px){.interior-estimate .quote-shell{display:flex;flex-direction:column}.interior-estimate .quote-intro{padding:25px 6% 28px}.interior-estimate .eyebrow{font-size:13px;margin:0}.interior-estimate .quote-intro h1{font-size:38px;line-height:1.1;margin:16px 0}.interior-estimate .quote-intro h1 br{display:none}.interior-estimate .lead{font-size:16px;line-height:1.5;margin:0}.interior-estimate .trust-list{display:none}.interior-estimate .quote-panel{margin:0;padding:28px 6%;max-width:none}.interior-estimate .quote-panel h2{font-size:29px}.interior-estimate .quote-panel:before{content:"No deposit. Pay after completion.";display:block;color:var(--blue);font-size:14px;font-weight:600;margin-bottom:14px}.interior-estimate .quote-footer{font-size:12px}.interior-estimate .header-phone{font-size:14px}}
@media(max-width:380px){.contact-grid,.service-grid{grid-template-columns:1fr}.contact-grid .text-field+.text-field{margin-top:14px}.interior-estimate .quote-intro h1{font-size:34px}}
@media(min-width:761px) and (max-width:1000px){.project-proof{padding:0 28px 36px}}
@media(max-width:760px){.project-proof{padding:28px 6% 36px}.crew-photo img{aspect-ratio:1/1;object-position:50% 62%}.estimate-review blockquote{font-size:1rem}}

/* Campaign-specific proof is inside the introduction, before the form on mobile. */
.interior-campaign .quote-intro h1{font-size:clamp(36px,3.7vw,52px);line-height:1.1;margin:24px 0 20px}
.interior-campaign .lead{font-size:17px;line-height:1.6;margin-bottom:22px}
.campaign-project{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:420px;margin:22px 0 28px}
.campaign-estimate-link{grid-column:1/-1;display:block;background:#fff;color:#0757bf;padding:14px 18px;text-align:center;border-radius:5px;text-decoration:none;font-size:16px;font-weight:600;line-height:1.4;margin-bottom:4px}
.campaign-estimate-link:hover{background:#edf4ff}.campaign-estimate-link:focus-visible{outline:3px solid #fff;outline-offset:5px}
.campaign-project figure{margin:0;min-width:0}
.campaign-project img{display:block;width:100%;height:auto;border-radius:5px}
.campaign-project figcaption{font-size:13px;line-height:1.4;margin-top:7px;color:#e2ecff}
.website-analytics-toggle{font:inherit;color:inherit;background:transparent;border:0;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.website-analytics-toggle:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.analytics-status:empty{display:none}
.analytics-status{font-size:12px;max-width:320px}
@media(max-width:760px){.interior-campaign .quote-intro h1{font-size:35px;margin:16px 0}.interior-campaign .lead{font-size:16px;line-height:1.5}.campaign-project{gap:12px;margin:20px 0 0;max-width:380px}.campaign-project figcaption{font-size:12px}}
