:root{--brand:#741b1b;--brand-dark:#451010;--accent:#e8b34b;--ink:#192027;--muted:#66717c;--cream:#f6f3ed}body{color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif}.announcement{padding:.55rem;background:var(--brand-dark);text-align:center}.announcement a{color:#fff;text-decoration:none}.site-header{position:sticky;top:0;z-index:1030;background:rgba(255,255,255,.97);box-shadow:0 2px 16px rgba(0,0,0,.08)}.navbar-brand{display:flex;align-items:center;gap:.75rem;color:var(--ink);font-weight:800}.navbar-brand img{width:58px;height:52px;object-fit:contain}.nav-link{color:var(--ink);font-weight:650;margin:.25rem}.phone-link{color:var(--brand)}.btn-brand{background:var(--brand);border-color:var(--brand);color:#fff}.btn-brand:hover{background:var(--brand-dark);color:#fff}.btn-accent{background:var(--accent);border-color:var(--accent);color:#211806;font-weight:750}.hero{position:relative;min-height:720px;display:flex;align-items:center;background:linear-gradient(120deg,#1b2023,#4c2727);overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(8,12,15,.9),rgba(8,12,15,.6) 55%,rgba(8,12,15,.22))}.hero-content{position:relative;color:#fff;padding-block:7rem;max-width:1200px}.hero-content h1{max-width:850px;font-size:clamp(3rem,7vw,6.4rem);font-weight:850;letter-spacing:-.045em;line-height:.96}.hero-content>p{max-width:680px;font-size:clamp(1.1rem,2vw,1.4rem);color:#e2e5e7;margin:1.5rem 0 2rem}.eyebrow{display:block;color:var(--accent);font-size:.8rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:.75rem}.hero-trust{margin-top:2.5rem;color:#e5e8ea}.trust-strip{background:var(--cream);border-bottom:1px solid #e4dfd5}.trust-strip .container{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-block:1.3rem}.trust-strip div{display:flex;flex-direction:column;text-align:center}.trust-strip span{color:var(--muted);font-size:.88rem}.section{padding:clamp(4rem,8vw,7.5rem) 1rem}.section-heading{max-width:720px;margin:0 auto 3rem;text-align:center}.section-heading h2,.cta-section h2{font-size:clamp(2.2rem,4vw,3.7rem);font-weight:800;letter-spacing:-.035em}.section-heading p{color:var(--muted);font-size:1.1rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.service-card{overflow:hidden;border:1px solid #e2e4e6;border-radius:1rem;background:#fff;color:var(--ink);text-decoration:none;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(20,25,30,.12)}.service-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.service-card>div{padding:1.5rem}.service-card h3{font-weight:750;margin:.8rem 0}.service-card p{color:var(--muted)}.section-dark{background:#161c20}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.project-card{position:relative;overflow:hidden;border-radius:.8rem;aspect-ratio:4/3}.project-card img{width:100%;height:100%;object-fit:cover;transition:.35s}.project-card:hover img{transform:scale(1.04)}.project-card>span{position:absolute;inset:auto 0 0;padding:2.5rem 1rem 1rem;color:#fff;font-weight:750;background:linear-gradient(transparent,rgba(0,0,0,.85))}.project-card small{display:block;font-weight:400}.process-list{list-style:none;padding:0}.process-list li{display:flex;gap:1.5rem;padding:1.4rem;border-bottom:1px solid #ddd}.process-list li>span{color:var(--brand);font-weight:800;font-size:1.4rem}.process-list p{color:var(--muted);margin:0}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.testimonial-grid blockquote{padding:2rem;background:#fff;border-radius:1rem;box-shadow:0 8px 25px rgba(0,0,0,.06)}.testimonial-grid blockquote>p{font-size:1.08rem}.testimonial-grid footer span{display:block;color:var(--muted);font-size:.85rem}.stars{color:#d69213}.cta-section{padding:4rem 1rem;background:var(--brand);color:#fff}.cta-section .container{display:flex;align-items:center;justify-content:space-between;gap:2rem}.form-shell{max-width:900px}.form-shell .card{border:0;box-shadow:0 12px 40px rgba(0,0,0,.1)}.site-footer{padding:5rem 1rem 1.5rem;background:#11171b;color:#d6dade}.site-footer a{display:block;color:#d6dade;text-decoration:none;margin:.45rem 0}.footer-logo{width:85px;height:70px;object-fit:contain;background:#fff;border-radius:.5rem}.footer-bottom{border-top:1px solid #32393e;margin-top:3rem;padding-top:1.5rem;color:#8f999f}.mobile-call{display:none}.page-hero{padding:6rem 1rem;background:var(--brand-dark);color:#fff}.page-hero h1{font-size:clamp(2.7rem,6vw,5rem);font-weight:800}.content-prose{max-width:820px;font-size:1.1rem;line-height:1.8}.gallery-grid{columns:3 280px;column-gap:1rem}.gallery-tile{display:block;break-inside:avoid;margin-bottom:1rem;border-radius:.75rem;overflow:hidden;background:#eee}.gallery-tile img{width:100%;height:auto}.lightbox{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.92);padding:2rem}.lightbox.open{display:flex}.lightbox img{max-width:95vw;max-height:88vh}.lightbox button{position:absolute;top:1rem;right:1rem}.mobile-call{position:fixed;bottom:1rem;right:1rem;z-index:1000;background:var(--accent);color:#211806;padding:.8rem 1rem;border-radius:2rem;text-decoration:none;font-weight:800}@media(max-width:991px){.hero{min-height:620px}.service-grid,.testimonial-grid{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr 1fr}.mobile-call{display:block}}@media(max-width:575px){.trust-strip .container,.service-grid,.testimonial-grid,.project-grid{grid-template-columns:1fr}.hero-content h1{font-size:3.2rem}.cta-section .container{display:block}.cta-section .btn{margin-top:1rem}}
.estimate-form-card{max-width:780px}.estimate-confirmation{max-width:780px;margin-inline:auto;padding:3rem 1.5rem;border:1px solid #cfe6d6;border-radius:1.25rem;background:#f2fbf5;box-shadow:0 16px 42px rgba(20,80,44,.12)}.confirmation-icon{display:grid;place-items:center;width:5rem;height:5rem;margin:0 auto 1.25rem;border-radius:50%;background:#198754;color:#fff;font-size:2.5rem}.confirmation-reference{font-size:1.05rem}@media(max-width:575.98px){.estimate-confirmation{padding:2rem 1rem}}
