/* Approved graphite direction. Keep the photographed terrace and its motion as the visual lead. */
:root {
  --ink: #232522;
  --ink-soft: #343632;
  --paper: #f7f6f2;
  --paper-deep: #e9e7e1;
  --muted: #535952;
  --pine: #292b27;
  --pine-deep: #222522;
  --accent: #e1dcd2;
  --line-dark: rgba(35,37,34,.16);
}
body { background: var(--paper); }
.eyebrow.dark { color: #70482f; }
.inline-cta, .phone-dark, .consent a { color: #674631; }
.field input:focus-visible, .field select:focus-visible, .field textarea:focus-visible { outline-color: #674631; }
.consent input { accent-color: #292b27; }
.form-status { color: #292b27; }
.page-hero { background: #222522; }
.fit.yes { background: #e5e4dd; }
.fit.no { background: #f0eee8; }
.callout, .case-action { background: #e9e7e1; }
.case-facts dt { color: #535952; }

/* The case follows the hero with a graphite fact strip and clean photographic surfaces. */
.concept-case { background: #f7f6f2; }
.concept-case__metrics { color: #f7f6f2; background: #222522; }
.concept-case__metrics-label, .concept-case__facts span, .concept-case__metrics-note { color: #d0d0c9; }
.concept-case__metrics-label span { color: #bfa28c; }
.concept-case__facts span { border-color: #ffffff38; }
.concept-case__link:hover, .concept-case__link:focus-visible { color: #222522; }
.concept-case__intro h2 { color: #232522; }
.concept-case__intro h2 span, .intro-copy h2 span { color: #865439; }
.concept-case__intro > p { color: #50564f; }
.concept-case__result, .concept-case__paper { background: #e9e7e1; }
.concept-case__paper { border-color: #d4d2ca; }
.concept-case__result figcaption, .concept-case__paper span { background: #222522e8; }

/* The photo and chat share a quiet stone field; all chat controls remain distinct. */
.intro-section { color: #232522; background: #eeece6; }
.intro-heading h2 { color: #232522; }
.intro-heading .intro-lead, .intro-lead { color: #50564f; }
.intro-section .intro-photo { border-color: #cfcdc4; background: #d8d6d0; }
.intro-section .intro-photo figcaption { background: #222522e8; }
.intro-section .weather-list span { border-color: #c8c6bd; color: #353732; background: #ffffff94; }
.intro-section .chat-card { border-color: #d1d0c9; box-shadow: 0 20px 48px #22252218; }
.chat-head { background: #292b27; }
.chat-avatar { color: #292b27; background: #e1dcd2; }
.chat-head div span { color: #d3d4cd; }
.chat-online { background: #ddd8cd; box-shadow: 0 0 0 4px #ddd8cd29; }
.chat-conversation { background: #f7f6f2; }
.chat-message { color: #292b27; background: #e9e7e1; }
.chat-message.user { color: #fff; background: #3c3f39; }
.chat-prompts, .chat-compose { background: #f7f6f2; }
.chat-prompts button { border-color: #cac9c1; color: #343632; }
.chat-prompts button:hover, .chat-prompts button:focus-visible { background: #e9e7e1; }
.chat-compose input { border-color: #cac9c1; }
.chat-compose button, .chat-float { background: #292b27; }
.chat-foot { border-color: #e3e1da; }
.chat-foot span, .chat-note { color: #5d635d; }
.chat-foot button { color: #353732; }

/* Keep the six order steps readable without the paused flower illustration. */
.mo-sequence-process { color: #232522; background: radial-gradient(1100px 620px at 75% 55%,#faf9f4,#f1efe9 72%); }
.mo-process-head .eyebrow, .mo-step>span { color: #70482f; }
.mo-process-head h2 span, .mo-window-copy h2 span { color: #b89273; }
.mo-process-head>p, .mo-step p, .mo-process-foot>p { color: #535952; }
.mo-steps, .mo-step { border-color: #c9c7bd; }
.mo-step h3 { color: #232522; }
.mo-step.is-current h3 { color: #70482f; }
.mo-sequence-controls input { accent-color: #70482f; }
.mo-sequence-controls button:hover { background: #9c8b6a29; }
.mo-sequence-controls button:focus-visible, .mo-sequence-controls input:focus-visible { outline-color: #a67d5e; }
.mo-sequence-windows, .mo-window-toolbar { background: #222522; }
.mo-window-media { background: #343632; }
.mo-window-shade { background: linear-gradient(90deg,#111411db,#111411a8 27%,transparent 70%),linear-gradient(180deg,#0d100d70,transparent 35%,transparent 72%,#0d100dad); }
.mo-window-copy .eyebrow, .mo-window-toolbar>span { color: #e1dcd2; }
@media (max-width:680px) { .mo-window-shade { background: linear-gradient(180deg,#111411d6,transparent 47%,#111411ae); } }

/* Main conversion and proof sections alternate light neutrals with graphite. */
.cases-section, .calculator-section, .reviews-section { background: #f7f6f2; }
.price-section, .trust-section, .faq-section { background: #eeece6; }
.form-section { background: #dedbd3; }
.section-heading-row > p, .micro-copy, .case-copy p, .calculator-copy p:not(.eyebrow),
.photo-caption, .trust-grid p, .reviews-grid p, .faq-grid p { color: #535952; }
.case-label, .case-facts dt { color: #674631; }
.budget-card span { color: #535952; }
.budget-card strong, .lite-result { color: #232522; }
.budget-card p, .budget-note p { color: #535952; }
.budget-note { color: #fff; background: #292b27; }
.budget-note p { color: #d3d4cd; }
.lite-card .btn.primary, .form-section .btn.primary { background: #292b27; }
.lite-card .btn.primary:hover, .lite-card .btn.primary:focus-visible,
.form-section .btn.primary:hover, .form-section .btn.primary:focus-visible { background: #444740; }
.trust-grid article { border-color: #d1cfc7; }
.trust-grid b { color: #70482f; }
.production-section { color: #fff; background: #222522; }
.production-section .section-heading-row > p, .production-section .micro-copy { color: #d0d0c9; }
.production-section .eyebrow, .production-grid figcaption span { color: #e1dcd2; }
.production-grid figure { background: #40433d; }
.production-grid figcaption { background: #222522e8; }
.site-footer { background: #1c1e1b; }

/* Contact block matches the approved graphite variant. The map still loads normally. */
.contacts-section { color: #f7f6f2; background: #222522; }
.contacts-copy h2 em, .contacts-details span { color: #e1dcd2; }
.contacts-intro, .contacts-details p { color: #c8cbc4; }
.contacts-details > div { border-color: #ffffff36; }
.contacts-phone:hover, .contacts-phone:focus-visible { color: #e1dcd2; }
.contacts-call { color: #222522; background: #f7f6f2; }
.contacts-call span { color: #f7f6f2; background: #4d4a43; }
.contacts-call:hover, .contacts-call:focus-visible { background: #e1dcd2; }
.contacts-map-shell { border-color: #ffffff36; background: #eeece7; box-shadow: 0 24px 45px #0000001c; }
.contacts-map-head, .contacts-map-link { color: #292b27; }
.contacts-map-head__dot { background: #a78a72; }
.contacts-map-head__brand { color: #5b615b; }
.contacts-map-shell iframe { background: #e1dfd8; }
.contacts-map-loading { color: #292b27; background: #e1dfd8; }
.contacts-map-loading > span { border-color: #8e928a; color: #292b27; }
.contacts-map-loading p { color: #5b615b; }
.contacts-map-loading a { border-color: #8e928a; }
.contacts-map-loading a:hover, .contacts-map-loading a:focus-visible { background: #eeece7; }
