:root{--cream:#f5f1e9;--cream2:#faf8f3;--ink:#50483f;--muted:#83796e;--line:rgba(80,72,63,.25);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream2);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hidden{position:absolute!important;left:-9999px!important}.site-header{height:112px;padding:18px 6.5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(250,248,243,.97);position:relative;z-index:20;border-bottom:1px solid rgba(80,72,63,.08)}.brand img{width:112px;height:auto}.nav{display:flex;align-items:center;gap:36px;font-size:17px}.nav a{position:relative;padding:8px 0}.nav a:not(.phone):after{content:"";position:absolute;left:0;bottom:2px;width:0;height:1px;background:var(--ink);transition:.25s}.nav a:hover:after,.nav a[aria-current="page"]:after{width:100%}.nav .phone{padding-left:28px;border-left:1px solid var(--line);letter-spacing:.04em}.hero{height:calc(100vh - 112px);min-height:620px;background:#e7dfd3;overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover;object-position:center}.page-kicker{font-family:var(--sans);font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--muted)}.projects-page{padding:90px 6.5vw 130px}.projects-page h1,.project-detail h1,.contact-panel h1,.thank-page h1{font-size:clamp(52px,6vw,92px);font-weight:400;line-height:.9;margin:18px 0 64px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:68px 38px}.project-card figure{margin:0;overflow:hidden}.project-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eee8df;transition:transform .45s ease}.project-card figcaption{background:var(--cream2);padding-top:15px;font-size:30px;display:flex;align-items:center;justify-content:space-between}.project-card:hover img{transform:scale(1.012)}.project-card:nth-child(5){grid-column:1/-1;max-width:calc(50% - 19px)}.project-detail{padding:68px 6.5vw 110px}.back-link{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}.project-detail h1{margin-bottom:54px}.gallery{columns:2;column-gap:20px}.gallery-item{appearance:none;border:0;background:none;padding:0;margin:0 0 20px;width:100%;display:block;break-inside:avoid;cursor:zoom-in}.gallery-item img{width:100%;height:auto;background:#eee8df}.lightbox{position:fixed;inset:0;background:rgba(31,28,25,.94);z-index:100;display:none;align-items:center;justify-content:center;padding:40px}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:90vh;object-fit:contain}.lightbox-close{position:absolute;top:18px;right:26px;border:0;background:none;color:#fff;font-size:42px;font-family:var(--serif);cursor:pointer}.contact-page{min-height:calc(100vh - 112px);display:grid;grid-template-columns:52% 48%}.contact-photo{min-height:780px;background:#e8e0d5}.contact-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.contact-panel{padding:86px 9vw 90px 8vw;display:flex;flex-direction:column;justify-content:center}.contact-panel h1{font-size:clamp(50px,5vw,80px);margin:18px 0 22px}.contact-phone{font-size:27px;margin-bottom:42px;display:inline-block;width:max-content;border-bottom:1px solid var(--line);padding-bottom:5px}form{display:grid;gap:22px;max-width:570px}label{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);display:grid;gap:7px}input,textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 0 12px;color:var(--ink);font:22px var(--serif);outline:none;border-radius:0}textarea{resize:vertical}input:focus,textarea:focus{border-color:var(--ink)}button[type="submit"]{width:max-content;border:1px solid var(--ink);background:transparent;padding:13px 28px;margin-top:8px;color:var(--ink);font:11px var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}button[type="submit"]:hover{background:var(--ink);color:var(--cream2)}.footer{display:flex;justify-content:space-between;align-items:center;padding:28px 6.5vw;border-top:1px solid rgba(80,72,63,.12);font-size:16px}.footer a{font-family:var(--sans);font-size:11px;letter-spacing:.14em}.thank-page{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px}.thank-page h1{margin-bottom:14px}.thank-page p{font-size:24px;margin:0 0 22px}.thank-page a{border-bottom:1px solid var(--line)}.mobile-call{display:none}@media(max-width:850px){.site-header{height:86px;padding:12px 22px}.brand img{width:88px}.nav{gap:18px;font-size:15px}.nav .phone{display:none}.hero{height:calc(100svh - 86px);min-height:0}.projects-page{padding:60px 22px 90px}.projects-page h1,.project-detail h1{margin-bottom:42px}.project-grid{grid-template-columns:1fr;gap:42px}.project-card:nth-child(5){grid-column:auto;max-width:none}.project-card figcaption{font-size:26px}.project-detail{padding:48px 18px 80px}.gallery{columns:1}.contact-page{grid-template-columns:1fr}.contact-photo{min-height:62svh}.contact-panel{padding:62px 24px 84px}.footer{padding:24px 22px;margin-bottom:56px}.mobile-call{display:block;position:fixed;z-index:50;left:0;right:0;bottom:0;background:var(--ink);color:#fff;text-align:center;padding:16px;font:12px var(--sans);letter-spacing:.1em;text-transform:uppercase}}@media(max-width:520px){.nav{gap:14px;font-size:14px}.brand img{width:76px}.site-header{padding-left:16px;padding-right:16px}.nav a{padding:6px 0}.project-card figcaption{font-size:24px}.contact-photo{min-height:55svh}}
/* Final minimal project/contact refinements */
.projects-page-minimal{padding-top:46px}
.projects-page-minimal .project-grid{margin-top:0}
.contact-page-minimal{min-height:calc(100vh - 112px)}
.contact-panel-minimal{align-items:flex-start;justify-content:center}
.contact-eyebrow{font-family:var(--sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}
.contact-phone-large{font-size:clamp(34px,4vw,58px);line-height:1.05;margin:0;border-bottom:1px solid var(--line);padding-bottom:8px}
@media(max-width:850px){.projects-page-minimal{padding-top:28px}.contact-page-minimal{min-height:auto}.contact-panel-minimal{padding-top:52px;padding-bottom:92px}.contact-phone-large{font-size:38px}}

/* Contractor license */
.brand{display:block}
.contact-license{font:10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:14px 0 0}
