:root{--ink:#17181b;--paper:#f5f4f1;--white:#fff;--gold:#bd9556;--rose:#a66f6e;--muted:#67696e;--line:#d9d7d0;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}a{color:inherit}.skip-link{position:absolute;left:-999px;top:8px;background:#fff;padding:10px;z-index:99}.skip-link:focus{left:8px}.alert-bar{height:36px;background:var(--ink);color:#e9e7e0;text-align:center;font-size:.82rem;letter-spacing:.04em;padding:7px}.alert-bar a{color:#e5c289;font-weight:700;text-underline-offset:3px}.site-header{height:92px;display:grid;grid-template-columns:240px 1fr 190px;align-items:center;padding:0 clamp(24px,5vw,80px);background:rgba(245,244,241,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand img{display:block;width:180px;max-height:74px;object-fit:contain}.site-header nav{display:flex;justify-content:center;gap:clamp(18px,3vw,44px)}.site-header nav a{text-decoration:none;font-size:.9rem;font-weight:600}.site-header nav a:hover{color:var(--rose)}.header-call{text-decoration:none;text-align:right;line-height:1.25}.header-call small{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.header-call strong{font-family:var(--display);font-size:1rem}.menu-button{display:none}.hero{min-height:680px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);border-bottom:1px solid var(--line)}.hero-copy{padding:clamp(70px,9vw,130px) clamp(28px,7vw,110px);position:relative;overflow:hidden}.hero-copy:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(189,149,86,.28);border-radius:50%;right:-180px;bottom:-280px}.eyebrow{margin:0 0 24px;color:var(--rose);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.18em}.hero h1,.intro h2,.why h2,.process h2,.service-area h2,.contact h2{font-family:var(--display);letter-spacing:-.05em;line-height:1.02;margin:0}.hero h1{font-size:clamp(3.2rem,6.7vw,7rem);max-width:1050px}.hero h1 em{font-style:normal;color:var(--rose)}.hero-lead{font-size:clamp(1.08rem,1.5vw,1.3rem);color:#55575b;max-width:700px;margin:30px 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;min-height:54px;align-items:center;justify-content:center;padding:0 24px;text-decoration:none;font-weight:700;font-size:.92rem}.button.primary{background:var(--ink);color:#fff}.button.primary:hover{background:var(--rose)}.button.secondary{border:1px solid var(--ink)}.credibility{display:flex;gap:30px;margin-top:64px;padding-top:22px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}.credibility span{max-width:145px}.credibility b{display:block;font-family:var(--display);font-size:1.1rem;color:var(--ink)}.hero-panel{background:var(--ink);color:#fff;padding:70px 42px 48px;display:flex;flex-direction:column;justify-content:flex-end}.monogram{font-family:Georgia,serif;color:var(--gold);font-size:9rem;line-height:1;text-align:center;margin:auto;border:1px solid #4b4540;border-radius:50%;width:240px;height:240px;display:grid;place-items:center}.hero-panel>p{color:#b6a891;font-size:.65rem;letter-spacing:.22em;font-weight:700}.service-index a{display:grid;grid-template-columns:36px 1fr auto;gap:12px;padding:18px 0;border-top:1px solid #3b3c40;text-decoration:none;font-weight:600}.service-index a:hover{color:#e6c68f}.service-index span{color:#888}.service-index b{font-size:1.1rem}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:110px clamp(28px,7vw,110px) 70px}.intro h2,.why h2,.process h2,.service-area h2{font-size:clamp(2.5rem,4.8vw,4.8rem)}.intro>p{max-width:660px;font-size:1.15rem;color:var(--muted);margin:45px 0 0}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:0 clamp(28px,5vw,80px) 120px;border:1px solid var(--line)}.service-card{padding:38px 30px 42px;min-height:500px;border-right:1px solid var(--line);position:relative;display:flex;flex-direction:column}.service-card:last-child{border:0}.service-card.featured{background:#ece4df}.icon{width:52px;height:52px;border:1px solid var(--gold);display:grid;place-items:center;font-size:1.6rem;color:var(--rose)}.number{position:absolute;right:25px;top:30px;font-size:.75rem;color:#999}.service-card h3{font-family:var(--display);font-size:1.45rem;margin:32px 0 14px}.service-card>p{color:var(--muted);font-size:.94rem}.service-card ul{list-style:none;padding:0;margin:auto 0 0}.service-card li{padding:10px 0;border-top:1px solid rgba(23,24,27,.12);font-size:.85rem}.why{background:var(--ink);color:#fff;display:grid;grid-template-columns:40% 60%;min-height:760px}.why-mark{display:grid;place-items:center;background:linear-gradient(135deg,#202126,#111214);border-right:1px solid #34353a}.why-mark img{width:72%;max-width:420px;filter:drop-shadow(0 22px 42px rgba(0,0,0,.4))}.why-copy{padding:100px clamp(30px,7vw,110px)}.why-copy>p:not(.eyebrow){font-size:1.08rem;color:#b8b8bb;max-width:760px}.principles{margin-top:55px}.principles>div{display:grid;grid-template-columns:50px 200px 1fr;gap:18px;padding:20px 0;border-top:1px solid #393a3e;align-items:start}.principles span{color:var(--gold);font-size:.75rem}.principles h3{margin:0;font-size:1rem}.principles p{margin:0;color:#a3a4a8;font-size:.88rem}.process{padding:120px clamp(28px,7vw,110px)}.section-heading{margin-bottom:65px}.process ol{padding:0;margin:0;border-top:1px solid var(--line)}.process li{display:grid;grid-template-columns:80px 1fr;list-style:none;border-bottom:1px solid var(--line);padding:30px 0}.process li>span{color:var(--rose);font-weight:700}.process li div{display:grid;grid-template-columns:260px 1fr;gap:30px}.process h3{font-family:var(--display);margin:0;font-size:1.25rem}.process li p{margin:0;color:var(--muted);max-width:650px}.service-area{margin:0 clamp(28px,5vw,80px) 120px;padding:80px clamp(30px,7vw,100px);background:#d8c1bb;position:relative;overflow:hidden}.service-area:after{content:"OH";position:absolute;right:-20px;bottom:-90px;font:800 15rem/1 var(--display);color:rgba(255,255,255,.22)}.service-area p:last-child{max-width:600px;font-size:1.1rem}.contact{background:var(--gold);padding:100px clamp(28px,7vw,110px);display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact .eyebrow{color:#5d4232}.contact h2{font-size:clamp(2.3rem,4.1vw,4.3rem)}.contact-actions a{display:grid;grid-template-columns:1fr auto;align-items:end;border-top:1px solid rgba(23,24,27,.3);padding:20px 0;text-decoration:none}.contact-actions small{grid-column:1/3;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.contact-actions strong{font:700 clamp(1rem,1.6vw,1.3rem) var(--display)}.contact-actions span{font-size:1.5rem}.contact-actions a:hover{padding-left:10px}footer{background:var(--ink);color:#a7a8ac;padding:40px clamp(28px,5vw,80px);display:grid;grid-template-columns:200px 1fr auto;align-items:center;gap:30px;font-size:.78rem}footer img{width:160px;filter:brightness(1.25)}footer p:last-child{text-align:right}.mobile-call{display:none}.service-card,.button,.contact-actions a{transition:.2s ease}
@media(max-width:1000px){.site-header{grid-template-columns:170px 1fr 165px}.site-header nav{gap:18px}.brand img{width:150px}.hero{grid-template-columns:1fr}.hero-panel{min-height:560px}.services-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.why{grid-template-columns:1fr}.why-mark{min-height:420px}.contact{grid-template-columns:1fr}.contact-actions{max-width:700px}}
@media(max-width:720px){body{padding-bottom:58px}.alert-bar{font-size:.7rem}.site-header{height:76px;padding:0 20px;grid-template-columns:1fr auto}.brand img{width:142px;max-height:65px}.header-call{display:none}.menu-button{display:flex;width:44px;height:44px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px;align-items:flex-end}.menu-button span{width:24px;height:2px;background:var(--ink)}.menu-button b{font-size:0}.site-header nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:18px 24px 28px;border-bottom:1px solid var(--line);flex-direction:column}.site-header nav.open{display:flex}.hero-copy{padding:65px 24px}.hero h1{font-size:clamp(2.8rem,14vw,4.4rem)}.hero-lead{font-size:1rem}.hero-actions{flex-direction:column}.credibility{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hero-panel{min-height:490px;padding:45px 24px 30px}.monogram{width:180px;height:180px;font-size:7rem}.intro{grid-template-columns:1fr;padding:85px 24px 50px;gap:10px}.intro>p{margin-top:10px}.services-grid{grid-template-columns:1fr;margin:0 24px 80px}.service-card{border-right:0;border-bottom:1px solid var(--line)!important;min-height:440px}.why-mark{min-height:330px}.why-copy{padding:75px 24px}.principles>div{grid-template-columns:36px 1fr}.principles p{grid-column:2}.process{padding:85px 24px}.process li{grid-template-columns:45px 1fr}.process li div{grid-template-columns:1fr;gap:6px}.service-area{margin:0 24px 80px;padding:55px 24px}.service-area:after{font-size:10rem}.contact{padding:75px 24px;gap:45px}.contact-actions strong{font-size:.95rem}.contact-actions a:first-child strong{font-size:1.3rem}footer{grid-template-columns:1fr;padding:40px 24px 70px}footer p:last-child{text-align:left}.mobile-call{display:flex;position:fixed;z-index:30;bottom:0;left:0;right:0;height:58px;background:var(--rose);color:#fff;text-decoration:none;align-items:center;justify-content:center;font-weight:800;box-shadow:0 -5px 20px rgba(0,0,0,.2)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card,.button,.contact-actions a{transition:none}}
.footer-social{display:inline-block;margin-top:8px;color:#e5c289;font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.footer-social:hover{color:#fff}
.hero-logo{width:min(100%,320px);min-height:255px;margin:auto auto 48px;display:grid;place-items:center;padding:26px;border:1px solid #4b4540;background:radial-gradient(circle,rgba(189,149,86,.1),transparent 68%)}
.hero-logo img{display:block;width:100%;max-height:230px;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(0,0,0,.38))}
.service-index a{align-items:center}
.service-index .service-symbol{width:30px;height:30px;border:1px solid #5a5044;border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:.9rem;line-height:1}
@media(max-width:720px){.hero-logo{width:min(100%,260px);min-height:205px;margin-bottom:35px;padding:20px}.hero-logo img{max-height:185px}}
.certification-band{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:34px;padding:30px clamp(28px,7vw,110px);background:#fff;border-bottom:1px solid var(--line);border-top:4px solid var(--gold)}.certification-band img{display:block;width:110px;height:110px;object-fit:contain;background:var(--ink);padding:8px}.certification-band .eyebrow{margin:0 0 6px}.certification-band h2{font:800 clamp(1.6rem,2.5vw,2.4rem)/1.1 var(--display);letter-spacing:-.03em;margin:0 0 8px}.certification-band p:last-child{margin:0;color:var(--muted);max-width:710px}@media(max-width:720px){.certification-band{grid-template-columns:82px 1fr;gap:20px;padding:24px}.certification-band img{width:82px;height:82px;padding:6px}.certification-band h2{font-size:1.45rem}.certification-band p:last-child{font-size:.85rem}}
.icon{width:64px;height:64px;font-size:0;background:linear-gradient(145deg,#fff 0 55%,#eee7e2 55%);box-shadow:7px 7px 0 rgba(166,111,110,.13)}.icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.mold-icon{color:#77787c}.fire-icon{color:var(--rose)}.rebuild-icon{color:var(--gold)}
.hero-logo{position:relative;background:radial-gradient(circle,rgba(189,149,86,.12),transparent 66%)}.hero-logo:before,.hero-logo:after{content:"";position:absolute;inset:12px;border:1px solid rgba(166,111,110,.2);pointer-events:none}.hero-logo:after{inset:-22px;border-color:rgba(189,149,86,.12)}
.service-index .service-symbol{width:34px;height:34px;border-radius:0;background:linear-gradient(135deg,rgba(189,149,86,.14),rgba(166,111,110,.08));transform:rotate(45deg)}.service-index .service-symbol svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-45deg)}.service-index .service-symbol.mold{color:#b9b9bd}.service-index .service-symbol.fire{color:#c98c89}.service-index .service-symbol.rebuild{color:#e0b56f}
