@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--black:#090a0b;--gold:#c9a15a;--white:#fff;--cream:#f4f0e9;--muted:#b8b6b0;--line:#2b2c2d;--max:1280px}*{box-sizing:border-box}body{margin:0;background:var(--white);color:#151515;font-family:'DM Sans',sans-serif}a{text-decoration:none;color:inherit}.site-header{background:var(--black);color:#fff;display:flex;align-items:center;gap:28px;padding:12px 34px;min-height:104px}.brand img{width:225px;height:auto;display:block}.nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:13px}.nav>a,.dropdown-toggle{color:#eee;cursor:pointer}.nav>a:hover,.dropdown:hover .dropdown-toggle{color:var(--gold)}.nav-cta{background:var(--gold);color:#fff!important;padding:15px 20px}.dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:28px;left:-18px;background:#111;padding:12px 0;min-width:245px;border:1px solid #333;z-index:20}.dropdown:hover .dropdown-menu{display:block}.dropdown-menu a{display:block;padding:10px 18px;color:#eee;font-size:12px}.dropdown-menu a:hover{background:#222;color:var(--gold)}.menu-toggle{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:26px}.hero{background:linear-gradient(120deg,#090a0b 0%,#111315 55%,#090a0b 100%);color:#fff;text-align:center;padding:48px 25px 28px}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600;margin:0 0 16px}.hero h1{font-family:'Playfair Display',serif;font-weight:500;font-size:clamp(42px,5vw,72px);margin:0 0 10px}.hero p:not(.eyebrow){font-size:18px;max-width:650px;margin:0 auto 25px;color:#e5e5e5}.gallery-feature{display:grid;grid-template-columns:1fr 1fr;background:#111;gap:3px}.gallery-feature .photo{height:560px;position:relative;overflow:hidden}.gallery-feature img{width:100%;height:100%;object-fit:cover;display:block}.photo-card{position:absolute;left:28px;bottom:25px;background:rgba(10,10,10,.82);padding:18px 22px;color:#fff;max-width:360px;border-left:2px solid var(--gold)}.photo-card h3{margin:0 0 5px;font-size:15px;letter-spacing:.05em}.photo-card p{margin:0;color:#ddd;font-size:13px}.intro-strip{background:var(--cream);display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px max(30px,calc((100vw - var(--max))/2));}.intro-strip h2{font-size:20px;margin:0 0 5px;letter-spacing:.03em}.intro-strip p{margin:0;color:#555;max-width:620px}.button{display:inline-block;padding:17px 25px;background:var(--gold);color:#fff;font-weight:600;font-size:13px;white-space:nowrap}.section{max-width:var(--max);margin:auto;padding:90px 30px}.section-title{text-align:center;margin-bottom:50px}.section-title h2{font-family:'Playfair Display',serif;font-size:50px;font-weight:500;margin:0}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{border:1px solid #ddd;padding:28px 22px;min-height:215px}.service-card:hover{border-color:var(--gold)}.service-card h3{font-size:19px;margin:48px 0 10px}.service-card p{font-size:13px;color:#666;margin:0}.service-number{color:var(--gold);font-size:12px;letter-spacing:.15em}.cta{background:var(--black);color:#fff;text-align:center;padding:90px 25px}.cta h2{font-family:'Playfair Display',serif;font-size:50px;font-weight:500;margin:0 0 15px}.cta p{color:#ccc;margin:0 auto 28px}.footer{background:var(--black);color:#fff;padding:45px 34px;display:grid;grid-template-columns:1.3fr 1fr 1fr 1.3fr;gap:40px;max-width:none}.footer img{width:210px}.footer h4{color:var(--gold);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 15px}.footer a,.footer p{font-size:13px;color:#ddd;display:block;margin:8px 0}.copyright{grid-column:1/-1;border-top:1px solid #333;padding-top:20px;text-align:center;color:#999!important}.page-hero{background:var(--black);color:#fff;text-align:center;padding:75px 25px}.page-hero h1{font-family:'Playfair Display',serif;font-size:64px;font-weight:500;margin:0}.page-hero p:last-child{color:#ccc;max-width:600px;margin:20px auto 0}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery-item{height:430px;position:relative;overflow:hidden;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover}.gallery-item span{position:absolute;left:20px;bottom:20px;background:rgba(0,0,0,.75);color:#fff;padding:12px 15px;font-size:13px;border-left:2px solid var(--gold)}.about-grid,.schedule-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-grid h2,.schedule-layout h2{font-family:'Playfair Display',serif;font-size:48px;font-weight:500;margin:0 0 20px}.about-grid p,.schedule-layout p{color:#666;line-height:1.8}.estimate-form{display:flex;flex-direction:column;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:12px;font-weight:600}input,select,textarea{display:block;width:100%;margin-top:7px;padding:14px;border:1px solid #ddd;font:inherit}.steps{background:var(--cream);padding:35px}.step{border-top:1px solid #d8d0c3;padding:20px 0;display:flex;gap:18px}.step span{color:var(--gold);font-weight:700}.step p{margin:0}.mobile-only{display:none}@media(max-width:900px){.site-header{padding:15px 20px;min-height:80px}.brand img{width:190px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--black);padding:20px;flex-direction:column;align-items:stretch;z-index:30}.nav.open{display:flex}.dropdown-menu{position:static;display:block;border:0;padding:0 0 0 15px}.nav-cta{text-align:center}.gallery-feature{grid-template-columns:1fr}.gallery-feature .photo{height:420px}.intro-strip{flex-direction:column;align-items:flex-start}.services-grid{grid-template-columns:1fr 1fr}.footer{grid-template-columns:1fr 1fr}.about-grid,.schedule-layout{grid-template-columns:1fr;gap:40px}}@media(max-width:560px){.brand img{width:170px}.hero{padding-top:35px}.hero h1{font-size:42px}.gallery-feature .photo{height:360px}.section{padding:65px 20px}.services-grid,.gallery-grid{grid-template-columns:1fr}.gallery-item{height:350px}.section-title h2,.cta h2,.about-grid h2,.schedule-layout h2{font-size:38px}.footer{grid-template-columns:1fr;padding:40px 20px}.form-row{grid-template-columns:1fr}}

.project-photo{position:relative;overflow:hidden;background:#111;min-height:260px}
.project-photo img{width:100%;height:100%;display:block;object-fit:cover}
.project-photo span{position:absolute;left:20px;bottom:18px;color:#fff;background:rgba(0,0,0,.62);padding:9px 13px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.bathroom-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:35px}
.bathroom-project-grid .project-photo{height:430px}
@media(max-width:800px){.bathroom-project-grid{grid-template-columns:1fr}.bathroom-project-grid .project-photo{height:320px}}
