:root{color-scheme:light;--surface:#edf1e9;--emphasis:#65735e;--header-surface:#fafbf8f7;--accent-foreground:#172b23}:root[data-theme=dark]{color-scheme:dark;--background:#111b17;--foreground:#edf1e7;--primary:#dbe5cb;--primary-foreground:#15241b;--card:#1b2922;--card-foreground:#edf1e7;--popover:#1b2922;--popover-foreground:#edf1e7;--muted-foreground:#b8c4b6;--accent:#293b30;--accent-foreground:#edf1e7;--border:#3d5043;--input:#708473;--ring:#d4b888;--bronze:#c5a776;--surface:#19271f;--emphasis:#c0cfb2;--header-surface:#111b17f5}.site-header{gap:1.25rem}.site-header nav{order:1;margin-left:auto}.theme-toggle{order:2;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid var(--border);background:transparent;cursor:pointer;border-radius:50%}.theme-toggle:hover{background:var(--accent)}.menu-toggle{order:3}.appearance-menu{background:var(--popover);color:var(--popover-foreground);border-color:var(--border);width:14rem;max-width:calc(100vw - 2rem);border-radius:.25rem}.appearance-menu [role=menuitemradio]{min-height:44px;gap:.65rem;cursor:pointer}.appearance-menu [data-highlighted]{background:var(--accent);color:var(--accent-foreground)}[data-theme=dark] .site-header,[data-theme=dark] .site-header nav{background:var(--header-surface)}[data-theme=dark] :is(.header-brand img,.footer-logo img){mix-blend-mode:normal;background:#fafbf8;border-radius:50%}[data-theme=dark] :is(.process-section,.project-dialog){background:var(--background)}[data-theme=dark] :is(.services,.faq-section,.rendering-note,.owner-photo,.dialog-photo){background:var(--surface);border-color:var(--border)}[data-theme=dark] .owner-photo>span,[data-theme=dark] em{color:var(--emphasis)}[data-theme=dark] :is(.work-heading>p,.section-heading>p:last-child,.service-grid article>p,.project-caption p,.project-dialog>p,.gallery-controls>span,footer>span){color:var(--muted-foreground)}[data-theme=dark] :is(.project-index,.service-number,.process-steps li>span){color:var(--bronze)}[data-theme=dark] :is(.service-grid li,.service-grid article+article,.faq-list details,.faq-list details:last-child,.site-header nav>a:not(.button),.gallery-controls button){border-color:var(--border)}[data-theme=dark] .button,[data-theme=dark] .gallery-filters button[aria-pressed=true],[data-theme=dark] .mobile-contact>a{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}[data-theme=dark] .button:hover{background:#edf3e5;border-color:#edf3e5}[data-theme=dark] .project-dialog [data-slot=dialog-close],[data-theme=dark] .view-photo{background:var(--card);color:var(--foreground);border-color:var(--border)}[data-theme=dark] .gallery-controls button:hover,[data-theme=dark] .project-dialog [data-slot=dialog-close]:hover{background:var(--accent)}[data-theme=dark] .embedded-quote,[data-theme=dark] .skip-link{background:var(--card);color:var(--foreground)}[data-theme=dark] .embedded-quote .form-help{color:var(--muted-foreground)}.embedded-quote iframe{color-scheme:inherit}@media(hover:hover) and (pointer:fine){.service-grid li{transition:background-color .2s}.service-grid li:hover{background:color-mix(in srgb,var(--foreground) 4%,transparent)}.project:focus-visible .view-photo,.project:hover .view-photo{box-shadow:0 3px 18px #0002}.review-source{transition:color .2s}.review-source:hover{color:var(--bronze)}}@media(max-width:74rem){.site-header{gap:.75rem}.site-header nav{gap:1rem}.site-header nav .button{gap:.75rem;padding:.85rem 1rem}}@media(max-width:59.99rem){.site-header{gap:.6rem}.theme-toggle{margin-left:auto}.site-header nav{margin-left:0}}@media(max-width:40rem){.site-header{gap:.4rem}.menu-toggle span{display:none}.menu-toggle{width:44px;justify-content:center;flex-shrink:0}.header-brand{min-width:0;flex-shrink:1}.wordmark>span{font-size:clamp(.95rem,4.25vw,1.12rem)}.header-brand img{width:2.5rem;height:2.5rem;flex-shrink:0}}@media(max-width:22rem){.site-header{padding-left:.75rem;padding-right:.75rem}.header-brand{gap:.35rem}.header-brand img{width:2.1rem;height:2.1rem}.wordmark small{font-size:.55rem;letter-spacing:.14em}}@media(hover:hover) and (pointer:fine){:root:not([data-theme=dark]) .review-source:hover{color:#826a42}}@media(prefers-reduced-motion:reduce){.review-source,.service-grid li{transition:none}}