/* A more grounded, less generic service-site direction. */
:root{--forest:#143f38;--forest-2:#0b2924;--green:#d1865a;--cream:#f8f6f1;--ink:#182f2a;--muted:#5d6c65;--line:#d9e0d8}
.photo-helper::after{content:none}.site-header{border-bottom:1px solid rgba(20,63,56,.12)}.brand-mark{background:var(--forest);color:#f7d6bf}.button{background:var(--forest);border-color:var(--forest);color:#fff}.button:hover{background:#0b2924}.header-link{border-color:#d1865a}.section{padding-top:104px;padding-bottom:104px}.service-card{border-top:3px solid transparent;box-shadow:none}.service-card:hover{border-top-color:#d1865a;box-shadow:0 16px 34px rgba(20,63,56,.08)}.service-card.featured{background:var(--forest)}.service-number{color:#a45c36}.quality-mark,.process,.request-result{background:var(--forest)}.quality-mark:before{border-color:rgba(209,134,90,.6)}.quality-mark>span{border-color:#d1865a;color:#f7d6bf}.market-guide{border-color:#d1865a}.market-guide span{color:#a45c36}.photo-guidance>span,.booking-step>span{color:#c76d41}.contact-panel{border-left-color:#d1865a}.area{background:#d1865a}.area .button{background:#143f38}.mobile-bar a:last-child{background:#d1865a}.result-actions .handoff-action{background:#d1865a}.result-actions .handoff-email{background:transparent}.footer-contact-info a:hover{color:#f7d6bf}@media(max-width:850px){.section{padding-top:76px;padding-bottom:76px}}
.choice-row input:checked+span{background:#d1865a;border-color:#d1865a;color:#fff}.check-row input{accent-color:#d1865a}.result-details{border-color:rgba(247,214,191,.35)}.result-price{color:#f7d6bf!important}:focus-visible{outline-color:#d1865a}.copy-estimate:hover{border-color:#f7d6bf;color:#f7d6bf}.service-facts{background:#143f38;color:#fff}.service-facts .section-heading>p{color:#d8e5dc}.service-facts .eyebrow{color:#f7d6bf}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(247,214,191,.25)}.facts-grid article{padding:28px 24px 20px 0;margin-right:24px;border-right:1px solid rgba(247,214,191,.2)}.facts-grid article:last-child{border:0}.facts-grid span{color:#d1865a;font-size:.8rem;font-weight:800;letter-spacing:.12em}.facts-grid h3{font-size:1.35rem;margin:28px 0 11px}.facts-grid p{color:#d8e5dc;font-size:.92rem}@media(max-width:850px){.facts-grid{grid-template-columns:1fr 1fr}.facts-grid article{margin:0;padding:22px 16px;border-bottom:1px solid rgba(247,214,191,.2)}.facts-grid article:nth-child(2){border-right:0}}@media(max-width:480px){.facts-grid{grid-template-columns:1fr}.facts-grid article{border-right:0}.facts-grid h3{margin:18px 0 8px}}

/* Quote assistant and browser-safe contact controls. */
.dimension-fields{grid-template-columns:1fr 1fr;gap:14px}.dimension-fields:not([hidden]){display:grid}.dimension-fields>small{grid-column:1/-1;color:var(--muted);font-size:.76rem;line-height:1.5}.dimension-fields input{display:block;width:100%;border:1px solid #cad7cb;background:#fbfcfa;color:var(--ink);font:inherit;font-size:15px;padding:13px;margin-top:8px;border-radius:2px}.photo-preview{align-items:center}.photo-preview img{width:72px;height:72px;border-radius:6px;border:1px solid #d7ded8}.photo-preview small{flex-basis:100%;line-height:1.45}.booking>.request-result{grid-column:1/-1;margin-top:0}.assistant-panel{margin-top:26px;padding-top:22px;border-top:1px solid rgba(247,214,191,.35)}.assistant-kicker{font-size:.7rem;font-weight:800;letter-spacing:.14em;color:#f7d6bf}.assistant-answer{min-height:68px;margin:10px 0 14px;padding:14px;background:rgba(255,255,255,.08);color:#edf4ef;font-size:.9rem;line-height:1.55}.assistant-controls{display:grid;grid-template-columns:1fr auto;gap:8px}.assistant-controls label{grid-column:1/-1;color:#f7d6bf!important;font-size:.76rem!important}.assistant-controls input{min-width:0;border:1px solid #81998d;background:#fff;color:#182f2a;font:inherit;padding:12px}.assistant-controls button{border:0;background:#d1865a;color:#fff;font-weight:800;padding:0 18px;cursor:pointer}.assistant-note{font-size:.72rem;color:#bfd0c5;margin-top:10px;line-height:1.45}.handoff-gmail{background:#fff!important;color:#143f38!important}.mobile-handoff{display:none!important}.contact-value{display:grid!important;grid-template-columns:1fr auto;align-items:end;gap:4px 14px;padding-bottom:14px;border-bottom:1px solid #d9e0d8}.contact-value small,.contact-value strong{grid-column:1}.contact-value .copy-value,.contact-value .contact-buttons{grid-column:2;grid-row:1/3}.copy-value,.contact-buttons a{border:1px solid #9eb0a4;background:#fff;color:#143f38;font:700 .76rem 'DM Sans',sans-serif;padding:9px 11px;cursor:pointer;text-decoration:none}.contact-buttons{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.contact-buttons .copy-value{padding:9px 11px}.desktop-contact-values>span{display:none}.result-details span{background:rgba(255,255,255,.08);border:1px solid rgba(247,214,191,.2);padding:7px 9px;border-radius:999px}.form-note{font-size:.76rem;color:var(--muted);line-height:1.45}.booking-form .check-row label{line-height:1.45}.booking-form .photo-helper{margin-top:-12px}.request-result .result-actions{align-items:stretch}.request-result .result-actions>*{min-height:46px;display:inline-flex;align-items:center;justify-content:center}.request-result .copy-estimate{font-weight:800}
@media(max-width:850px){.dimension-fields:not([hidden]){grid-template-columns:1fr}.dimension-fields>small{grid-column:1}.mobile-handoff{display:inline-flex!important}.handoff-gmail{display:none!important}.assistant-controls{grid-template-columns:1fr}.assistant-controls button{min-height:46px}.photo-preview img{width:64px;height:64px}}
@media(max-width:480px){.booking-form{padding:20px}.choice-row span{padding:10px}.assistant-panel{margin-left:-4px;margin-right:-4px}.contact-buttons{display:grid}.request-result .result-actions{grid-template-columns:1fr}}
.availability-calendar{border:1px solid #cad7cb;background:#fbfcfa;padding:18px}.calendar-toolbar{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px}.calendar-toolbar strong{text-align:center;font:800 1rem Manrope,sans-serif;color:var(--ink)}.calendar-toolbar button{width:42px;height:42px;border:1px solid #b8c8bc;background:#fff;color:var(--forest);font-size:1.1rem;cursor:pointer}.calendar-toolbar button:disabled{opacity:.32;cursor:not-allowed}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekdays{margin:17px 0 7px}.calendar-weekdays span{text-align:center;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.calendar-day{aspect-ratio:1;border:1px solid #d7e0d8;background:#fff;color:var(--ink);font:700 .84rem 'DM Sans',sans-serif;cursor:pointer}.calendar-day:hover:not(:disabled){border-color:#d1865a;background:#fff6f0}.calendar-day.is-selected{background:#d1865a;border-color:#d1865a;color:#fff}.calendar-day.is-unavailable{background:repeating-linear-gradient(135deg,#f1f2ef,#f1f2ef 5px,#e3e7e2 5px,#e3e7e2 10px);color:#8c958e;text-decoration:line-through}.calendar-day:disabled:not(.is-unavailable){opacity:.28;cursor:not-allowed}.calendar-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:.7rem}.calendar-legend span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:13px;height:13px;border:1px solid #c9d4ca;background:#fff}.calendar-legend .legend-selected{background:#d1865a;border-color:#d1865a}.calendar-legend .legend-unavailable{background:repeating-linear-gradient(135deg,#f1f2ef,#f1f2ef 3px,#d9ded9 3px,#d9ded9 6px)}.calendar-status{margin-top:13px;color:var(--forest);font-size:.82rem;font-weight:800}.calendar-availability-note{margin:9px 0 0;color:var(--muted);font-size:.72rem}.schedule-grid.single{grid-template-columns:1fr}.service-area-notice{border-left:3px solid #d1865a;background:#fff6f0;padding:15px 17px}.service-area-notice strong{font-size:.8rem;color:var(--forest)}.service-area-notice p{margin-top:5px;color:#5f6f68;font-size:.76rem;line-height:1.5}@media(max-width:480px){.availability-calendar{padding:13px}.calendar-weekdays,.calendar-days{gap:4px}.calendar-day{font-size:.78rem}.calendar-legend{display:grid;gap:7px}}

/* Compact scheduling controls: calendar stays available without dominating the form. */
.schedule-picker{display:grid;gap:0;border:1px solid #d1ddd2;background:#fff}.schedule-selection{display:grid;grid-template-columns:minmax(0,1.25fr) auto minmax(150px,.8fr);align-items:stretch}.selected-date,.time-select{padding:17px 18px}.selected-date{border-right:1px solid #dbe3dc}.selected-date small,.time-select>span{display:block;color:#66766f;font-size:.66rem;font-weight:800;letter-spacing:.12em}.selected-date strong{display:block;margin-top:6px;color:#143f38;font:800 1.06rem Manrope,sans-serif;letter-spacing:-.025em}.selected-date span{display:block;margin-top:3px;color:#66766f;font-size:.74rem}.open-calendar{align-self:center;justify-self:center;margin:0 14px;border:1px solid #143f38;background:#143f38;color:#fff;font:800 .76rem 'DM Sans',sans-serif;padding:13px 15px;white-space:nowrap;cursor:pointer}.open-calendar span{margin-left:5px;color:#f7d6bf;font-size:1rem}.time-select{border-left:1px solid #dbe3dc}.time-select select{display:block;width:100%;min-height:42px;margin-top:7px;border:0;border-bottom:1px solid #9eafa3;background:#fff;color:#143f38;font:800 .88rem 'DM Sans',sans-serif;padding:0 24px 0 0}.time-select select:disabled{color:#89958d}.availability-message{margin:0;padding:11px 18px;border-top:1px solid #e4e9e4;background:#f7faf7;color:#587066;font-size:.76rem;line-height:1.45}.availability-calendar{margin:0;border:0;border-top:1px solid #d1ddd2;background:#fbfcfa;box-shadow:none}.availability-calendar[hidden]{display:none}.calendar-toolbar{grid-template-columns:42px 1fr 42px 34px}.calendar-close{width:34px;height:34px;border:0;background:transparent;color:#143f38;font-size:1.2rem;cursor:pointer}.calendar-day.is-limited{border-color:#d1865a;box-shadow:inset 0 -3px 0 #d1865a}.calendar-legend{padding-top:4px}.service-area-notice{margin-top:0}@media(max-width:760px){.schedule-selection{grid-template-columns:1fr 1fr}.selected-date{border-right:1px solid #dbe3dc}.open-calendar{grid-column:1/-1;grid-row:2;width:calc(100% - 28px);margin:0 14px 14px}.time-select{border-left:0}.calendar-open .mobile-bar{visibility:hidden;pointer-events:none;transform:translateY(100%)}}@media(max-width:420px){.schedule-selection{grid-template-columns:1fr}.selected-date,.time-select{border:0;border-bottom:1px solid #dbe3dc}.open-calendar{grid-column:auto;grid-row:auto;margin:0 14px 14px;width:calc(100% - 28px)}.calendar-toolbar{grid-template-columns:38px 1fr 38px 30px}.calendar-toolbar button{width:38px;height:38px}}

/* Direct day selection and a single, clear final-quote handoff. */
.selected-date input{display:block;width:100%;min-height:42px;margin-top:7px;border:0;border-bottom:1px solid #9eafa3;background:#fff;color:#143f38;font:800 .88rem 'DM Sans',sans-serif;padding:0 2px;cursor:pointer}.selected-date input:focus{outline:2px solid #d1865a;outline-offset:3px}.selected-date input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.75}.request-send{margin-top:24px;padding:22px;border:1px solid rgba(247,214,191,.36);background:rgba(255,255,255,.06)}.request-send-kicker{color:#f7d6bf;font-size:.68rem!important;font-weight:800;letter-spacing:.13em}.request-send h3{margin:7px 0 18px;color:#fff;font-size:1.35rem}.request-send label{display:block;color:#f7d6bf;font-size:.78rem;font-weight:800}.request-send input{display:block;width:100%;min-height:46px;margin-top:7px;border:1px solid #8ca498;background:#fff;color:#143f38;font:inherit;padding:10px 12px}.send-request{display:flex;width:100%;align-items:center;justify-content:space-between;margin-top:13px;border:1px solid #d1865a;background:#d1865a;color:#fff;font:800 .9rem 'DM Sans',sans-serif;padding:15px 16px;cursor:pointer}.send-request:hover{background:#bd633b}.send-request:disabled{cursor:wait;opacity:.68}.request-send-status{min-height:22px;margin-top:11px!important;color:#d9e8dd!important;font-size:.75rem!important;line-height:1.5}.request-send-status.is-error{color:#ffd5c2!important}@media(max-width:760px){.selected-date{border-right:1px solid #dbe3dc}.request-send{padding:19px}.send-request{min-height:50px}}@media(max-width:420px){.selected-date input{font-size:.83rem}.request-send{margin-left:-2px;margin-right:-2px}}
.request-fallback{display:inline-block;margin-top:9px;color:#f7d6bf;font-size:.78rem;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.address-field{margin:20px 0 24px;padding:18px 18px 16px;border:1px solid #d1ddd2;background:#f7faf7}.address-field label{display:block;color:var(--forest);font-size:.8rem;font-weight:800}.address-field .field-optional{margin-left:7px;color:#a45c36;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.address-field input{display:block;width:100%;min-height:46px;margin-top:8px;border:1px solid #aebfb2;background:#fff;color:var(--ink);font:inherit;padding:11px 12px}.address-field input:focus{outline:2px solid #d1865a;outline-offset:2px}.address-field small{display:block;margin-top:8px;color:var(--muted);font-size:.71rem;line-height:1.5;font-weight:400}.address-review{margin:12px 0 0;padding:10px 12px;border-left:3px solid #9eafa3;background:#fff;color:#5f6f68;font-size:.74rem;line-height:1.5}.address-review.is-nearby{border-left-color:#6c9676;background:#edf6ee;color:#386045}.address-review.is-review{border-left-color:#d1865a;background:#fff6f0;color:#7a4b33}@media(max-width:480px){.address-field{margin:16px -2px 21px;padding:16px 14px}.address-field input{font-size:.9rem}}
