:root{--transition-fast: .18s ease}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:var(--bg)}img{display:block;max-width:100%}section{scroll-margin-top:calc(var(--space-10) + var(--space-8))}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 92%,transparent);border-bottom:var(--border-width) solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:72px}.wordmark{font-family:var(--font-display);font-size:var(--step-1);font-weight:600;line-height:1.1}.desktop-nav,.desktop-cta{display:none}.menu-button{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;border:var(--border-width) solid var(--border);background:var(--surface);color:var(--text);border-radius:4px;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.mobile-panel{display:none;border-top:var(--border-width) solid var(--border);background:var(--surface)}.mobile-panel.is-open{display:block}.mobile-nav{display:grid;gap:var(--space-2);padding-block:var(--space-4) var(--space-5)}.mobile-nav a{min-height:44px;display:flex;align-items:center}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-4);border:var(--border-width) solid currentColor;border-radius:4px;font-weight:500;text-decoration:none;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.button-primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.button-on-accent{background:transparent;color:var(--accent-text)}.section-label{margin:0 0 var(--space-2);font-size:var(--step-n1);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.heading-rule{display:block;width:min(96px,30vw);height:1px;margin-top:var(--space-3);background:var(--border)}.section-intro,.contact-block{max-width:75ch}.hero{padding-top:var(--space-8)}.hero-grid{display:grid;gap:var(--space-6);align-items:start}.hero-copy h1{max-width:12ch;font-size:clamp(var(--step-5),10vw,var(--step-7))}.hero-side{max-width:34rem}.hero-side p{margin-bottom:var(--space-4)}.hero-image-wrap{margin-top:var(--space-7)}.hero-image,.section-image{width:100%;height:auto;object-fit:cover;border-radius:4px}.services-media{margin-top:var(--space-6)}.services-list{margin-top:var(--space-7);display:grid;gap:var(--space-4)}.service-row{display:grid;gap:var(--space-3);align-items:start;padding-block:var(--space-3);border-top:var(--border-width) solid var(--border);isolation:isolate}.service-row h3{margin:0;font-family:var(--font-display);font-size:var(--step-4)}.offset-wrap{position:relative;isolation:isolate}.offset-panel{position:relative;background:var(--accent-soft);padding:var(--space-4);border-radius:4px}.offset-panel:before{content:"";position:absolute;top:20px;right:-20px;bottom:-20px;left:20px;background:var(--accent-soft);z-index:-1;border-radius:4px}.service-row.is-reversed .offset-panel:before,.craftsmanship-copy .offset-panel:before{top:20px;right:20px;bottom:-20px;left:-20px}.craftsmanship-grid{display:grid;gap:var(--space-6);align-items:start}.craftsmanship-copy{max-width:75ch}.craftsmanship blockquote{margin:var(--space-5) 0 var(--space-5);font-family:var(--font-display);font-size:clamp(var(--step-3),5vw,var(--step-6));line-height:1.05;max-width:12ch}.process-grid{display:grid;gap:var(--space-4);margin-top:var(--space-6)}.process-card{border-top:var(--border-width) solid var(--border);padding-top:var(--space-3)}.process-card h3{margin-bottom:var(--space-2)}.consultation-band{padding-block:var(--space-8);background:var(--accent);color:var(--accent-text)}.consultation-band .section-label{color:color-mix(in srgb,var(--accent-text) 72%,transparent)}.consultation-band .heading-rule{background:color-mix(in srgb,var(--accent-text) 32%,transparent)}.consultation-inner{display:grid;gap:var(--space-4);align-items:center}.consultation-inner p{max-width:60ch}.contact-rows{margin-top:var(--space-6);display:grid;gap:var(--space-3)}.contact-row{display:grid;gap:var(--space-1);padding-top:var(--space-3);border-top:var(--border-width) solid var(--border)}.contact-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--step-n1);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.site-footer{background:var(--surface-alt);border-top:var(--border-width) solid var(--border)}.footer-stack{padding-block:var(--space-7) var(--space-4);display:grid;gap:var(--space-4)}.footer-name{font-family:var(--font-display);font-size:var(--step-2);margin-bottom:var(--space-2)}.footer-note{max-width:60ch}.footer-links{display:flex;flex-wrap:wrap;gap:var(--space-3)}.footer-bottom{padding-top:var(--space-3);border-top:var(--border-width) solid var(--border)}[data-reveal]{opacity:1;transform:none}.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .22s ease,transform .22s ease}.js [data-reveal].is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.js [data-reveal]{opacity:1;transform:none;transition:none}.button,.menu-button,a{transition:none}}@media (min-width: 768px){.desktop-nav{display:flex;align-items:center;gap:var(--space-4)}.desktop-cta{display:inline-flex}.menu-button,.mobile-panel{display:none!important}.hero-grid{grid-template-columns:1.5fr 1fr}.hero-side{padding-top:40%}.service-row{grid-template-columns:1fr 1.4fr;gap:var(--space-6)}.service-row.is-reversed{grid-template-columns:1.4fr 1fr}.service-row.is-reversed .offset-panel{grid-column:2}.service-row.is-reversed p{grid-column:1;grid-row:1}.process-grid{grid-template-columns:1.4fr .8fr .8fr;align-items:start}.consultation-inner{grid-template-columns:1.6fr auto}.contact-row{grid-template-columns:minmax(9rem,13rem) 1fr;gap:var(--space-4);align-items:start}}@media (min-width: 1024px){.hero-grid,.craftsmanship-grid,.process-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.hero-copy{grid-column:1 / span 8}.hero-side{grid-column:9 / span 4}.craftsmanship-media{grid-column:1 / span 7}.craftsmanship-copy{grid-column:8 / span 5;padding-top:var(--space-6)}.craftsmanship blockquote{margin-left:calc(var(--space-8) * -1)}.process-card-primary{grid-column:1 / span 6}.process-grid>:nth-child(2){grid-column:7 / span 3}.process-grid>:nth-child(3){grid-column:10 / span 3}}@media (hover: hover){a:hover,.button:hover,.menu-button:hover{opacity:.86}.button:hover,.menu-button:hover{transform:translateY(-1px)}}a:focus-visible,.button:focus-visible,.menu-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a:active,.button:active,.menu-button:active{transform:translateY(0);opacity:.72}
