:root{--bg:#fafaf9;--surface:#fff;--text:#1c1917;--muted:#57534e;--border:#e7e5e4;--accent:#44403c;--accent-hover:#1c1917;--focus:#78716c;--max:42rem;--wide:56rem;--space:1.25rem;--radius:.375rem;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:.15em;text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.skip-link{z-index:100;background:var(--surface);color:var(--text);padding:.5rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{top:.5rem;left:.5rem}.wrap{width:min(100% - 2 * var(--space), var(--wide));margin-inline:auto}.wrap--narrow{width:min(100% - 2 * var(--space), var(--max))}.site-header{background:color-mix(in srgb, var(--surface) 92%, transparent);border-bottom:1px solid var(--border);z-index:50;backdrop-filter:blur(10px);position:sticky;top:0}.header-inner{grid-template-columns:1fr auto;grid-template-areas:"brand phone""nav nav";align-items:center;gap:.75rem 1.5rem;padding:.875rem 0;display:grid}.brand{color:var(--text);letter-spacing:-.01em;grid-area:brand;font-weight:600;line-height:1.25;text-decoration:none}.header-inner>nav{grid-area:nav}.header-phone{color:var(--text);white-space:nowrap;grid-area:phone;justify-self:end;font-size:.9375rem;font-weight:500;text-decoration:none}.brand:hover{color:var(--text);text-decoration:none}.brand small{color:var(--muted);letter-spacing:0;margin-top:.15rem;font-size:.75rem;font-weight:400;display:block}.nav{flex-wrap:wrap;grid-column:1/-1;gap:.35rem 1rem;margin:0;padding:0;list-style:none;display:flex}.nav a{color:var(--muted);font-size:.9375rem;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--text);text-decoration:underline}.header-phone:hover{text-decoration:underline}main{min-height:55vh;padding:2.5rem 0 3.5rem}.page-home{background:#f6f1ea}.page-home main{padding-top:0}.hero{--porcelain:#f6f1ea;--gold:#9a7d55;--ink:#1c1917;background:var(--porcelain);color:var(--ink);padding:.75rem 0 2.25rem}.hero-grid{align-items:center;gap:1.5rem;min-height:calc(100dvh - 8.5rem);display:grid}.hero-photo-slot{background:#efe8de;min-height:16rem;margin:0;overflow:hidden}.hero-photo-slot img{object-fit:cover;aspect-ratio:4/3;width:100%;max-width:none;height:100%;min-height:16rem;display:block}.hero-copy{max-width:22rem}.hero-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:0 0 .7rem;font-size:.72rem;font-weight:600}.hero-kicker span{display:block}.hero-kicker span+span{margin-top:.28rem}.hero-kicker:after{content:"";background:var(--gold);width:2rem;height:1px;margin-top:.7rem;display:block}.hero .cta-row{margin-top:1.15rem}.home-lede{margin-top:1.75rem}@media (width>=720px){.hero{padding:1.25rem 0 2.75rem}.hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(16rem,.85fr);gap:2.75rem;min-height:calc(100dvh - 7.5rem)}.hero-photo-slot,.hero-photo-slot img{height:min(68vh,36rem);min-height:28rem}.hero h1{font-size:clamp(2rem,3vw,2.55rem)}}@media (width<=719px){.hero .cta-row .btn{text-align:center;flex:100%}.hero-kicker{letter-spacing:.1em;font-size:.66rem}}.home-after{padding-top:.5rem}.hero h1,h1{letter-spacing:-.02em;margin:0 0 .75rem;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:600;line-height:1.2}.lede{color:var(--muted);max-width:36rem;margin:0 0 1.5rem;font-size:1.125rem}.independence{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);margin:1.5rem 0;padding:1rem 1.15rem;font-size:.95rem}.independence strong{color:var(--text);margin-bottom:.25rem;font-weight:600;display:block}.cta-row{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 0;display:flex}.btn{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;padding:.65rem 1.15rem;font-family:inherit;font-size:.9375rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-block}.btn--primary{background:var(--accent);color:#fafaf9}.btn--primary:hover{background:var(--accent-hover);color:#fafaf9;text-decoration:none}.btn--ghost{border-color:var(--border);color:var(--text);background:0 0}.btn--ghost:hover{border-color:var(--muted);color:var(--text);text-decoration:none}h2{letter-spacing:-.015em;margin:2.25rem 0 .75rem;font-size:1.35rem;font-weight:600}h3{margin:1.5rem 0 .5rem;font-size:1.1rem;font-weight:600}p{margin:0 0 1rem}ul{margin:0 0 1rem;padding-left:1.25rem}li{margin-bottom:.35rem}.muted{color:var(--muted)}.meta-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:1.5rem 0;padding:1.15rem 1.25rem}.meta-block dl{gap:1rem;margin:0;display:grid}.meta-block dt{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0;font-size:.75rem}.meta-block dd{margin:.15rem 0 0;font-weight:500}.service-list{gap:1rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.service-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:1.15rem 1.25rem}.service-list h2{margin:0 0 .4rem;font-size:1.1rem}.service-list p{color:var(--muted);margin:0;font-size:.975rem}.map-note{color:var(--muted);font-size:.95rem}.contact-form{gap:1rem;max-width:28rem;margin:1.5rem 0;display:grid}.contact-form label{gap:.35rem;font-size:.9rem;font-weight:500;display:grid}.contact-form input,.contact-form textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);width:100%;padding:.55rem .7rem}.contact-form textarea{resize:vertical;min-height:7rem}.contact-form .btn{justify-self:start}.form-note{color:var(--muted);margin:0;font-size:.85rem}.site-footer{background:var(--surface);border-top:1px solid var(--border);padding:2rem 0 2.5rem;font-size:.9rem}.footer-nap{margin:0 0 1rem;font-style:normal;line-height:1.55}.footer-nap strong{margin-bottom:.35rem;font-size:1rem;display:block}.footer-nap a{text-decoration:none}.footer-nap a:hover{text-decoration:underline}.footer-legal{color:var(--muted);margin:0 0 .5rem;font-size:.8rem}.footer-legal:last-child{margin-bottom:0}.footer-nav{flex-wrap:wrap;gap:.5rem 1rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.footer-nav a{color:var(--muted);font-size:.875rem;text-decoration:none}.footer-nav a:hover,.footer-nav a[aria-current=page]{color:var(--text);text-decoration:underline}@media (width>=720px){.header-inner{grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav phone";padding:1rem 0}.nav{justify-content:center}}
