:root{--black:#060605;--cream:#e5ddd1;--gold:#b68a42}
*{box-sizing:border-box}html{scroll-padding-top:76px}body{margin:0;background:var(--black);color:var(--cream);font-family:Montserrat,Arial,sans-serif;overflow-x:hidden}
.site-header{height:76px;padding:0 5.3%;display:flex;align-items:center;border-bottom:1px solid #3d3224;background:linear-gradient(90deg,#070706,#0a0907);position:relative;z-index:10}.brand{display:flex;align-items:center;text-decoration:none;color:var(--gold);min-width:305px}.brand-mark{font:500 4.3rem/.8 "Cormorant Garamond",serif;margin-right:19px;background:linear-gradient(120deg,#755020,#d5ab61,#7a5424);-webkit-background-clip:text;color:transparent}.brand-name{font:500 1.38rem "Cormorant Garamond",serif;letter-spacing:.02em}.main-nav{display:flex;align-items:center;justify-content:center;gap:5rem;flex:1;height:100%}.main-nav a{position:relative;color:#b9b1a6;text-decoration:none;font-size:.65rem;letter-spacing:.35em;white-space:nowrap}.main-nav a::after{content:"";position:absolute;left:0;right:.35em;bottom:-22px;height:1px;background:transparent}.main-nav a:hover,.main-nav a.active{color:var(--cream)}.main-nav a.active::after{background:var(--gold)}.start-button{margin-left:auto;padding:13px 22px;color:#c7a360;border:1px solid #735522;text-decoration:none;font-size:.65rem;letter-spacing:.32em;white-space:nowrap;transition:.2s}.start-button:hover{background:#b68a42;color:#090806}.menu-toggle{display:none}
.hero{height:494px;background:url('assets/brick-hero-clean.webp') center/cover no-repeat;position:relative}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 55%,rgba(0,0,0,.08))}.hero-copy{position:relative;z-index:1;padding:150px 0 0 5.7%}.hero h1{margin:0;font:400 4rem/.99 "Cormorant Garamond",serif;letter-spacing:-.025em;color:#e8e0d5;text-shadow:0 2px 10px #000}.gold-rule{display:block;width:55px;height:2px;background:#b8944d;margin-top:31px}.hero p{margin:22px 0 0;color:#afa8a0;font-size:.76rem;letter-spacing:.43em}
.local-panels{height:276px;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border-bottom:1px solid #40372c;background:#080706}.local-panels article{background-image:linear-gradient(180deg,rgba(5,4,3,.12),rgba(5,4,3,.78)),var(--photo);background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:center}.local-panels article:not(:last-child){border-right:8px solid #080706}.local-panels article div{padding-bottom:24px;text-align:center}.local-panels h2{margin:0;color:#eee8df;font-weight:400;font-size:.8rem;letter-spacing:.38em;text-shadow:0 2px 8px #000}.local-panels span{display:block;width:48px;height:2px;background:#b48b46;margin:17px auto 0}
.process{height:128px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:linear-gradient(180deg,#090908,#060605);border-bottom:1px solid #171512}.process article{text-align:center;color:#d7d0c5}.process svg{width:35px;height:35px;fill:none;stroke:#bfb6a7;stroke-width:1.2;margin-bottom:4px}.process h2{font-weight:400;font-size:.72rem;letter-spacing:.38em;margin:0}.process article>span{display:block;width:40px;height:1px;background:#a77b36;margin:17px auto 0}
footer{height:51px;padding:0 5.3%;display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:34px;background:#070706;color:#6d6862;font-size:.58rem;letter-spacing:.4em}footer i{height:1px;background:#28251f}footer strong{font-weight:400;color:#5f5b56;white-space:nowrap}
@media (max-width:1050px){.main-nav{gap:3rem}.brand{min-width:245px}.brand-name{font-size:1.15rem}.start-button{display:none}}
@media (max-width:760px){html{scroll-padding-top:68px}.site-header{height:68px;padding:0 22px}.brand{min-width:auto}.brand-mark{font-size:3.6rem;margin-right:13px}.brand-name{font-size:1.05rem}.menu-toggle{display:flex;margin-left:auto;width:42px;height:42px;border:0;background:none;flex-direction:column;justify-content:center;gap:8px;align-items:flex-end}.menu-toggle span{display:block;width:26px;height:1px;background:#c5a263}.menu-toggle span:last-child{width:18px}.main-nav{position:absolute;left:0;right:0;top:68px;height:auto;padding:28px 22px;background:#090806;display:none;flex-direction:column;align-items:flex-start;gap:28px;border-bottom:1px solid #49371d}.main-nav.open{display:flex}.main-nav a::after{display:none}.hero{height:480px}.hero-copy{padding:124px 24px 0}.hero h1{font-size:3.35rem}.hero p{font-size:.62rem;letter-spacing:.27em;line-height:2}.local-panels{height:auto;grid-template-columns:1fr}.local-panels article{height:190px}.local-panels article:not(:last-child){border-right:0;border-bottom:4px solid #070706}.process{height:auto;grid-template-columns:repeat(2,1fr);padding:30px 0;gap:38px 0}.process article>span{margin-top:12px}footer{height:auto;min-height:90px;grid-template-columns:1fr;text-align:center;gap:9px;padding:18px}footer i{display:none}}
@media (max-width:420px){.brand-name{font-size:.95rem}.hero h1{font-size:3rem}.hero p{font-size:.56rem}}

/* Refinements: undistorted brickwork, angled photo panels, and distinct navigation targets. */
.site-header{position:relative}
.hero{background-image:url('assets/brick-hero-clean.webp')}
.local-panels{display:block;position:relative;background:#080706}
.local-panels article{position:absolute;top:0;bottom:0;width:35%;border:0;background-image:linear-gradient(180deg,rgba(5,4,3,.12),rgba(5,4,3,.78)),var(--photo)}
.local-panels article:not(:last-child){border:0}
.local-panels article:nth-child(1){left:0}.local-panels article:nth-child(2){left:32.5%}.local-panels article:nth-child(3){left:65%}.local-panels::before,.local-panels::after{content:"";position:absolute;z-index:2;top:-12px;bottom:-12px;width:18px;background:#080706;transform:skewX(-11deg);pointer-events:none}.local-panels::before{left:32.4%}.local-panels::after{left:65.1%}
.services{position:relative;isolation:isolate;overflow:hidden;padding:82px 24px 78px;text-align:center;background:linear-gradient(180deg,#0a0908,#060605);border-bottom:1px solid #211d18}.services::before{content:"H";position:absolute;z-index:-1;right:5%;top:-42px;color:#b68a42;opacity:.035;font:500 19rem/1 "Cormorant Garamond",serif}.services>p:first-child{margin:0;color:#8f8981;font-size:.68rem;letter-spacing:.4em}.services h2{margin:18px 0 0;color:#e8e0d5;font:400 2.75rem/1 "Cormorant Garamond",serif;letter-spacing:.01em}.services>span{display:block;width:52px;height:2px;margin:24px auto;background:#b48b46}.services-copy{max-width:700px;margin:0 auto;color:#aaa39a;font-size:1rem;line-height:1.75}.service-note{max-width:620px;margin:28px auto 0;color:#c2a36d;font-size:.72rem;line-height:1.6;letter-spacing:.18em;text-transform:uppercase}
.process,.contact-section{scroll-margin-top:76px}
.contact-section{min-height:285px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(rgba(5,5,4,.86),rgba(5,5,4,.96)),url('assets/brick-hero-clean.webp') center/cover no-repeat;border-bottom:1px solid #282218}
.contact-section p{margin:0;color:#9c958c;font-size:.68rem;letter-spacing:.4em}
.contact-section h2{margin:18px 0 0;font:400 2.65rem/1 "Cormorant Garamond",serif;letter-spacing:.02em;color:#e8e0d5}
.contact-section span{width:52px;height:2px;background:#b48b46;margin:22px 0}
.process{min-height:55vh;height:auto;padding:70px 0}
.contact-section{min-height:100vh}
.process{display:flex;flex-direction:column;justify-content:center;gap:58px}
.approach-intro{max-width:760px;margin:0 auto;text-align:center;padding:0 24px}.approach-intro>p:first-child{margin:0;color:#8f8981;font-size:.68rem;letter-spacing:.4em}.approach-intro>h2{margin:18px 0 0;color:#e8e0d5;font:400 2.6rem/1 "Cormorant Garamond",serif;letter-spacing:.01em}.approach-intro>span{display:block;width:52px;height:2px;background:#b48b46;margin:22px auto}.approach-intro .approach-copy{max-width:650px;margin:0 auto;color:#aaa39a;font-size:1rem;line-height:1.75}.approach-intro .values{margin:22px 0 0;color:#c2a36d;font-size:.7rem;letter-spacing:.32em}.process-grid{width:100%;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}
.contact-phone{margin-top:14px;color:#d4ad68;text-decoration:none;font-family:Montserrat,Arial,sans-serif;font-size:1.15rem;font-weight:400;line-height:1.4;letter-spacing:.14em;border-bottom:1px solid rgba(180,139,70,.45);padding:0 2px 6px;transition:color .2s,border-color .2s}
.contact-phone:hover,.contact-phone:focus-visible{color:#f0d39c;border-color:#d4ad68}
@media (max-width:760px){.process,.contact-section{scroll-margin-top:68px}.local-panels{height:auto}.local-panels::before,.local-panels::after{display:none}.local-panels article{position:relative;left:auto!important;width:100%;height:190px}.services{padding:64px 22px}.services h2{font-size:2.15rem}.services-copy{font-size:.95rem}.service-note{font-size:.67rem;letter-spacing:.12em}.process{min-height:80vh;padding:70px 0;gap:48px}.process-grid{grid-template-columns:repeat(2,1fr);gap:38px 0}.approach-intro>h2{font-size:2.1rem}.approach-intro .approach-copy{font-size:.95rem}.approach-intro .values{font-size:.62rem;line-height:1.8}.contact-section{min-height:100svh}.contact-section h2{font-size:2.2rem}.contact-phone{font-size:1rem}}

/* Values section */
.process-grid{width:min(1180px,90%);margin:0 auto;grid-template-columns:repeat(3,1fr);align-items:stretch;gap:0;border-top:1px solid #28241e;border-bottom:1px solid #28241e}
.value-card{padding:34px 42px 38px;text-align:left!important}
.value-card:not(:last-child){border-right:1px solid #28241e}
.value-card strong{display:block;color:#735b35;font-size:.66rem;font-weight:400;letter-spacing:.25em}
.value-card h3{margin:18px 0 0;color:#e1d9cd;font-size:.82rem;font-weight:400;letter-spacing:.34em}
.value-card>span{display:block;width:38px;height:1px;background:#a77b36;margin:20px 0!important}
.value-card p{margin:0;color:#9f9890;font-size:.9rem;line-height:1.75;text-align:left}
@media (max-width:760px){.process-grid{grid-template-columns:1fr;width:min(560px,88%);gap:0}.value-card{padding:28px 26px}.value-card:not(:last-child){border-right:0;border-bottom:1px solid #28241e}}

.contact-section .email-label{margin-top:30px}
.contact-email{margin-top:12px;color:#d4ad68;text-decoration:none;font-family:Montserrat,Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.4;letter-spacing:.08em;border-bottom:1px solid rgba(180,139,70,.45);padding:0 2px 6px;transition:color .2s,border-color .2s}
.contact-email:hover,.contact-email:focus-visible{color:#f0d39c;border-color:#d4ad68}

.contact-section{min-height:68vh;padding:72px 24px}
@media (max-width:760px){.contact-section{min-height:72svh;padding:64px 22px}}

.start-button{background:transparent;font-family:Montserrat,Arial,sans-serif;cursor:pointer}
.contact-overlay[hidden]{display:none}.contact-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.84)}.modal-open{overflow:hidden}.contact-dialog{position:relative;width:min(620px,100%);padding:54px 52px 50px;background:linear-gradient(145deg,#100e0b,#070706);color:#e8e0d5;border:1px solid #6b5128;box-shadow:0 24px 80px rgba(0,0,0,.75);text-align:center}.contact-dialog>p:first-of-type{margin:0;color:#9c958c;font-size:.68rem;letter-spacing:.4em}.contact-dialog h2{margin:18px 0 0;font:400 2.45rem/1 "Cormorant Garamond",serif}.dialog-close{position:absolute;top:13px;right:17px;width:36px;height:36px;border:0;background:transparent;color:#a79e91;font:300 1.8rem/1 Arial,sans-serif;cursor:pointer}.dialog-close:hover,.dialog-close:focus-visible{color:#d4ad68}.dialog-rule{display:block;width:48px;height:2px;background:#b48b46;margin:22px auto}.dialog-copy{margin:0;color:#9f9890;font-size:.9rem}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}.dialog-actions a{min-height:94px;padding:18px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #3d3325;color:#ddd4c7;text-decoration:none;transition:.2s}.dialog-actions a:hover,.dialog-actions a:focus-visible{border-color:#a77b36;background:#15110b}.dialog-actions small{color:#9c958c;font-size:.6rem;letter-spacing:.28em}.dialog-actions strong{margin-top:10px;font-size:.86rem;font-weight:400;letter-spacing:.06em;overflow-wrap:anywhere}
@media (max-width:620px){.contact-dialog{padding:48px 24px 30px}.contact-dialog h2{font-size:2rem}.dialog-actions{grid-template-columns:1fr}.dialog-actions a{min-height:78px}}
@media (min-width:761px) and (max-width:1050px){.start-button{display:block}}

/* Restrained motion: text reveals without heavy blur or clipping effects. */
.motion-ready .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}.motion-ready .reveal.is-visible{opacity:1;transform:none}.motion-ready .value-card:nth-child(2){transition-delay:.1s}.motion-ready .value-card:nth-child(3){transition-delay:.2s}.services>span,.approach-intro>span,.contact-section>span{transform-origin:center}.motion-ready .services>span.reveal,.motion-ready .approach-intro>span.reveal,.motion-ready .contact-section>span.reveal{transition:opacity .7s ease,transform .7s ease,width .7s cubic-bezier(.22,1,.36,1)}.motion-ready .services>span.reveal.is-visible,.motion-ready .approach-intro>span.reveal.is-visible,.motion-ready .contact-section>span.reveal.is-visible{width:72px}
@media (prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none;transition:none}.motion-ready .value-card:nth-child(2),.motion-ready .value-card:nth-child(3){transition-delay:0}.motion-ready .services>span.reveal,.motion-ready .approach-intro>span.reveal,.motion-ready .contact-section>span.reveal{width:72px;transition:none}}
