:root { --surface-bg:#fff; --surface-raised:#f5f5f3; --surface-border:#d5d5d0; --text-muted:#555; --hero-gradient:linear-gradient(120deg,#fafaf8 0%,#fff 58%,#fff0e3 100%); }
html[data-theme="dark"] { --surface-bg:#0d0d0d; --surface-raised:#171717; --surface-border:#3b3b3b; --text-muted:#d5d5d5; --hero-gradient:linear-gradient(120deg,#111 0%,#0d0d0d 58%,#241509 100%); }
.contact-page,.services-page { background:var(--body-bg); color:var(--body-text); }
.services-section,.contact-cta { background:var(--body-bg); color:var(--body-text); }
.services-all-link,.contact-cta-content h2,.contact-cta-link { color:var(--body-text); }
.contact-cta-content p { color:var(--text-muted); }
.contact-security-note { margin:20px 0 0; font-size:11px; line-height:1.7; color:var(--text-muted); }
.contact-security-note a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.contact-hero { background:var(--hero-gradient); border-color:var(--surface-border); }
.contact-hero h1,.contact-content h2,.contact-map-heading h2,.contact-detail { color:var(--body-text); }
.contact-hero p,.contact-detail strong,.contact-field label,.about-lead,.about-text p,.about-values p,#serviceDialogContent,#contactFormStatus { color:var(--text-muted); }
.contact-form-card { background:var(--surface-raised); border-color:var(--surface-border); }
.contact-detail-list,.contact-detail,.contact-map-frame,.blog-publish-date { border-color:var(--surface-border); }
.contact-field input,.contact-field textarea { color:var(--body-text); border-color:var(--surface-border); caret-color:var(--color-orange); }
.service-dialog,.service-dialog-close { background:var(--surface-bg); color:var(--body-text); border-color:var(--surface-border); }
.service-dialog-copy h2 { color:var(--body-text); }
.contact-form-actions button,.service-dialog-contact { color:#111; }
.site-header,.site-footer { background:var(--header-bg); color:var(--header-text); }
.site-footer .footer-social-link:not(.is-disabled) { color:var(--header-text); }
.site-footer .footer-social-link:not(.is-disabled):hover,.site-footer .footer-social-link:not(.is-disabled):focus-visible { color:#111; }
html[data-theme="light"] .contact-geo-shape { border-color:rgba(0,0,0,.14); }
html[data-theme="light"] .contact-map-frame iframe { filter:grayscale(.25); }
.project-lightbox,.project-lightbox button { background:var(--surface-bg); color:var(--body-text); }
.project-lightbox figcaption { color:var(--text-muted); }
.project-lightbox button:hover,.project-lightbox button:focus-visible { background:var(--color-orange); color:#111; }
html[data-theme="light"] .contact-kicker,html[data-theme="light"] .contact-cta-eyebrow,html[data-theme="light"] .services-eyebrow { color:#b94700; }
