*{box-sizing:border-box;margin:0;padding:0}:root{--dark:#111315;--light:#f4f2ee;--white:#fff;--accent:#c98b32;--text:#222629;--muted:#73777b}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;color:var(--text);background:var(--light);line-height:1.6}h1,h2,h3,.eyebrow,.logo strong,.logo small{font-family:Oswald,sans-serif}a{text-decoration:none;color:inherit}.container{width:min(1180px,92%);margin:auto}.section{padding:110px 0}.site-header{position:fixed;top:0;left:0;width:100%;z-index:100;background:rgba(17,19,21,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:12px;color:white}.logo-mark{width:43px;height:43px;display:grid;place-items:center;border:2px solid var(--accent);font-family:Oswald;font-size:17px;color:var(--accent)}.logo strong{display:block;letter-spacing:1.5px;font-size:19px;line-height:1}.logo small{display:block;font-size:10px;letter-spacing:1.5px;color:#aaa;margin-top:4px}.nav{display:flex;align-items:center;gap:30px;color:#eee;font-size:14px;font-weight:600}.nav a:not(.nav-cta):hover{color:var(--accent)}.nav-cta{background:var(--accent);color:#111!important;padding:13px 20px;font-weight:700}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:24px}.hero{min-height:760px;background:linear-gradient(90deg,rgba(10,12,13,.92),rgba(10,12,13,.48),rgba(10,12,13,.28)),url("images/hero.jpg") center/cover;position:relative;display:flex;align-items:center;color:#fff}.hero-content{padding-top:80px}.eyebrow{font-size:13px;letter-spacing:2.5px;font-weight:700;color:var(--accent);margin-bottom:18px}.eyebrow.dark{color:#8b642d}.hero h1{font-size:clamp(54px,7vw,92px);line-height:.95;letter-spacing:1px;max-width:900px}.hero h1 span,h2 span{color:var(--accent)}.hero-copy{max-width:600px;color:#ddd;font-size:19px;margin:28px 0}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 24px;font-weight:800;font-size:13px;letter-spacing:.5px;border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--accent);color:#111}.btn-outline{border-color:#fff;color:#fff}.btn-outline:hover{background:#fff;color:#111}.scroll-down{position:absolute;bottom:25px;left:50%;color:#fff}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}h2{font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:.5px}.lead{font-size:18px;color:#5f6468;line-height:1.8}.text-link{display:inline-block;margin-top:26px;font-weight:800;font-size:13px;letter-spacing:1px;border-bottom:2px solid var(--accent);padding-bottom:8px}.services{background:#ece9e3}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:55px}.section-heading>p{max-width:440px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#d7d3cb}.service-card{background:#fff;padding:42px 34px;min-height:250px;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 35px rgba(0,0,0,.1)}.service-icon{font-size:28px;color:var(--accent);margin-bottom:25px}.service-card h3{font-size:25px;margin-bottom:10px}.service-card p{color:var(--muted)}.statement{padding:130px 0;background:linear-gradient(90deg,rgba(15,17,18,.92),rgba(15,17,18,.65)),url("images/statement.jpg") center/cover;color:#fff;text-align:center}.statement h2{font-size:clamp(44px,6vw,76px)}.statement p:last-child{margin-top:20px;color:#ccc;font-size:18px}.work{background:#fff}.gallery{display:grid;grid-template-columns:1.4fr .8fr .8fr;grid-template-rows:250px 250px;gap:12px}.gallery-item{background:#aaa center/cover;display:flex;align-items:end;padding:20px;color:#fff;font-weight:800;letter-spacing:1px;position:relative;overflow:hidden}.gallery-item:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.65))}.gallery-item span{position:relative;z-index:1}.gallery-one{grid-row:span 2;background-image:linear-gradient(45deg,#777,#aaa),url("images/project-1.jpg")}.gallery-two{background-image:linear-gradient(45deg,#777,#aaa),url("images/project-2.jpg")}.gallery-three{background-image:linear-gradient(45deg,#777,#aaa),url("images/project-3.jpg")}.gallery-four{grid-column:2/4;background-image:linear-gradient(45deg,#777,#aaa),url("images/project-4.jpg")}.process{background:var(--dark);color:#fff}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.process-step{border-top:1px solid #444;padding-top:25px}.process-step>span{color:var(--accent);font-family:Oswald;font-size:17px}.process-step i{font-size:25px;display:block;margin:35px 0 20px;color:#ddd}.process-step h3{font-size:22px;margin-bottom:10px}.process-step p{color:#aaa}.about{background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-photo{min-height:560px;background:linear-gradient(45deg,#777,#aaa),url("images/about.jpg") center/cover;display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:1px}.checks{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:14px;color:#333;font-weight:600}.checks i{color:var(--accent);margin-right:8px}.contact{background:#ece9e3}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.contact-details{margin-top:35px;display:grid;gap:15px}.contact-details i{width:22px;color:var(--accent)}.estimate-form{background:#fff;padding:40px;box-shadow:0 15px 45px rgba(0,0,0,.08)}.estimate-form label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:18px}.estimate-form input,.estimate-form textarea{display:block;width:100%;margin-top:7px;padding:14px;border:1px solid #d8d5ce;background:#fafafa;font:inherit;outline:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.estimate-form button{width:100%;justify-content:center;margin-top:5px}footer{background:#0e1011;color:#aaa;padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:55px}.footer-grid>a,.footer-grid>div>a{display:block;margin:7px 0;color:#aaa}.footer-title{font-family:Oswald;color:#fff;letter-spacing:2px!important;margin-top:0!important}.footer-logo{margin-bottom:18px}.copyright{border-top:1px solid #292b2d;padding-top:20px;font-size:12px}@media(max-width:800px){.nav{display:none;position:absolute;top:84px;left:0;width:100%;background:#111315;padding:20px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:15px}.menu-toggle{display:block}.hero{min-height:680px}.hero h1{font-size:55px}.intro-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.section{padding:75px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.service-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:220px 220px}.gallery-one{grid-row:auto}.gallery-four{grid-column:auto}.about-photo{min-height:400px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.hero h1{font-size:45px}.hero-copy{font-size:16px}.service-grid,.process-grid,.checks,.form-row,.footer-grid{grid-template-columns:1fr}.estimate-form{padding:25px}.gallery{grid-template-columns:1fr;grid-template-rows:260px}.gallery-item,.gallery-one,.gallery-four{grid-column:auto;grid-row:auto}}
.seasonal{background:#f0eee9}
.seasonal-hero{background:var(--dark);color:#fff;padding:65px;display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:12px}
.seasonal-hero h2{max-width:800px}
.discount-badge{flex:0 0 155px;height:155px;border:2px solid var(--accent);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(5deg)}
.discount-badge strong{font:700 48px/1 Oswald;color:var(--accent)}
.discount-badge span{font:700 12px/1.25 Oswald;letter-spacing:1px}
.seasonal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#d7d3cb}
.seasonal-card{background:#fff;padding:38px 32px;min-height:310px}
.seasonal-icon{font-size:28px;color:var(--accent);margin-bottom:20px}
.seasonal-card h3{font-size:25px;margin-bottom:10px}
.seasonal-card p{color:var(--muted);margin-bottom:18px}
.seasonal-card ul{list-style:none;color:#444;display:grid;gap:7px;font-size:14px}
.seasonal-card li:before{content:"✓";color:var(--accent);font-weight:800;margin-right:8px}
.seasonal-signup{margin-top:12px;background:#fff;padding:55px;display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;box-shadow:0 12px 35px rgba(0,0,0,.06)}
.seasonal-signup h3{font:700 34px/1 Oswald;margin-bottom:18px}
.seasonal-signup p{color:var(--muted)}
.small-note{font-size:11px!important;margin-top:18px}
.seasonal-form label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px}
.seasonal-form input,.seasonal-form textarea,.seasonal-form select{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #d8d5ce;background:#fafafa;font:inherit;outline:none}
.seasonal-form input:focus,.seasonal-form textarea:focus,.seasonal-form select:focus{border-color:var(--accent)}
@media(max-width:800px){.seasonal-hero{padding:40px;display:block}.discount-badge{margin:35px auto 0}.seasonal-grid{grid-template-columns:1fr}.seasonal-signup{grid-template-columns:1fr;gap:35px;padding:35px}}
