*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--stone:#1c1a17;--stone-mid:#2e2b27;--stone-light:#4a4540;--concrete:#f2ede8;--concrete-mid:#e0d9d0;--gold:#c9a84c;--gold-light:#e8c97a;--white:#faf8f5;--text-dark:#1c1a17;--text-muted:#7a7167;--radius:4px}html{scroll-behavior:smooth}body{background:var(--white);color:var(--text-dark);font-family:DM Sans,sans-serif;line-height:1.7;overflow-x:hidden}nav{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1c1a17f2;border-bottom:1px solid #c9a84c40;justify-content:space-between;align-items:center;height:70px;padding:0 5%;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{align-items:center;gap:12px;display:flex}.nav-logo-icon{border:2px solid var(--gold);width:36px;height:36px;color:var(--gold);justify-content:center;align-items:center;font-family:Playfair Display,serif;font-size:16px;font-weight:700;display:flex}.nav-logo-text{letter-spacing:.12em;text-transform:uppercase;color:#fff;font-size:13px;font-weight:600;line-height:1.2}.nav-logo-sub{letter-spacing:.08em;color:var(--gold-light);text-transform:uppercase;font-size:10px;font-weight:400}nav ul{gap:2rem;list-style:none;display:flex}nav ul a{color:#ffffffbf;letter-spacing:.06em;text-transform:uppercase;font-size:13px;text-decoration:none;transition:color .2s}nav ul a:hover{color:var(--gold-light)}.nav-cta{background:var(--gold);padding:8px 20px;color:var(--stone)!important;font-weight:600!important;transition:background .2s!important}.nav-cta:hover{background:var(--gold-light)!important;color:var(--stone)!important}#hero{align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-bg{background-image:url(https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1600&q=80);background-position:50%;background-size:cover;position:absolute;inset:0}.hero-overlay{background:linear-gradient(110deg,#1c1a17eb 45%,#1c1a1780 100%);position:absolute;inset:0}.hero-content{z-index:2;max-width:720px;padding:140px 8% 80px;position:relative}.hero-badge{border:1px solid var(--gold);color:var(--gold-light);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:2rem;padding:6px 14px;font-size:11px;display:inline-flex}.hero-badge:before{content:"";background:var(--gold);width:20px;height:1px}h1{color:#fff;margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:clamp(2.4rem,5vw,4rem);font-weight:700;line-height:1.15}h1 em{color:var(--gold-light);font-style:normal}.hero-desc{color:#ffffffb8;max-width:520px;margin-bottom:2.5rem;font-size:1.05rem;font-weight:300;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.btn-primary{background:var(--gold);color:var(--stone);letter-spacing:.08em;text-transform:uppercase;padding:14px 32px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s,transform .15s;display:inline-block}.btn-primary:hover{background:var(--gold-light);transform:translateY(-2px)}.btn-secondary{color:#fff;letter-spacing:.08em;text-transform:uppercase;border:1px solid #fff6;padding:14px 32px;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .2s,background .2s;display:inline-block}.btn-secondary:hover{border-color:var(--gold);background:#c9a84c1a}.hero-stats{z-index:2;background:#1c1a17e0;border-top:1px solid #c9a84c33;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-stat{text-align:center;border-right:1px solid #c9a84c26;flex:1;padding:1.4rem 2rem}.hero-stat:last-child{border-right:none}.hero-stat-num{color:var(--gold-light);font-family:Playfair Display,serif;font-size:2rem;line-height:1;display:block}.hero-stat-label{color:#ffffff8c;letter-spacing:.1em;text-transform:uppercase;margin-top:4px;font-size:11px;display:block}section{padding:6rem 8%}.section-header{margin-bottom:3.5rem}.section-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);align-items:center;gap:10px;margin-bottom:1rem;font-size:11px;font-weight:600;display:inline-flex}.section-eyebrow:after{content:"";background:var(--gold);width:40px;height:1px;display:block}h2{color:var(--stone);font-family:Playfair Display,serif;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;line-height:1.2}.section-desc{color:var(--text-muted);max-width:580px;margin-top:1rem;font-size:1rem;font-weight:300;line-height:1.8}#services{background:var(--white)}.services-grid{background:var(--concrete-mid);border:1.5px solid var(--concrete-mid);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5px;display:grid}.service-card{background:var(--white);padding:2.5rem 2rem;transition:background .25s;position:relative;overflow:hidden}.service-card:hover{background:var(--stone)}.service-card:hover .service-title,.service-card:hover .service-body{color:#ffffffd9}.service-card:hover .service-icon{border-color:var(--gold);color:var(--gold)}.service-card:hover .service-num{color:#c9a84c1f}.service-num{color:var(--concrete-mid);-webkit-user-select:none;user-select:none;font-family:Playfair Display,serif;font-size:4.5rem;font-weight:700;line-height:1;transition:color .25s;position:absolute;top:1.5rem;right:1.5rem}.service-icon{border:1.5px solid var(--concrete-mid);width:52px;height:52px;color:var(--stone-light);justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:22px;transition:border-color .25s,color .25s;display:flex}.service-title{color:var(--stone);margin-bottom:.75rem;font-family:Playfair Display,serif;font-size:1.2rem;font-weight:700;transition:color .25s}.service-body{color:var(--text-muted);font-size:.9rem;line-height:1.75;transition:color .25s}.service-tags{flex-wrap:wrap;gap:6px;margin-top:1.2rem;display:flex}.tag{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--concrete-mid);color:var(--text-muted);padding:3px 8px;font-size:10px}.service-card:hover .tag{color:#ffffff8c;border-color:#c9a84c4d}#why{background:var(--stone);color:#fff;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:6rem 8%;display:grid}#why h2{color:#fff}#why .section-eyebrow{color:var(--gold)}#why .section-desc{color:#fff9}.why-img{position:relative}.why-img img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.why-img-badge{background:var(--gold);padding:1.4rem 1.8rem;font-family:Playfair Display,serif;position:absolute;bottom:-1.5rem;left:-1.5rem}.why-img-badge strong{color:var(--stone);font-size:2.2rem;line-height:1;display:block}.why-img-badge span{color:var(--stone-mid);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.why-points{flex-direction:column;gap:1.4rem;margin-top:2rem;display:flex}.why-point{align-items:flex-start;gap:1rem;display:flex}.why-point-icon{width:36px;height:36px;color:var(--gold);background:#c9a84c26;border:1px solid #c9a84c4d;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:16px;display:flex}.why-point-title{color:#fff;margin-bottom:4px;font-size:.95rem;font-weight:600}.why-point-body{color:#ffffff8c;font-size:.85rem;line-height:1.7}#projects{background:var(--concrete)}.projects-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:0;display:grid}.project-card{cursor:pointer;position:relative;overflow:hidden}.project-card img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .5s;display:block}.project-card:hover img{transform:scale(1.06)}.project-card-overlay{opacity:.85;background:linear-gradient(#1c1a171a 45%,#1c1a17e6 100%);flex-direction:column;justify-content:flex-end;padding:1.5rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.project-card:hover .project-card-overlay{opacity:1}.project-cat{letter-spacing:.15em;text-transform:uppercase;color:var(--gold-light);margin-bottom:6px;font-size:10px}.project-name{color:#fff;font-family:Playfair Display,serif;font-size:1.1rem;font-weight:700}.project-loc{color:#ffffff8c;margin-top:4px;font-size:12px}#process{background:var(--white);text-align:center}#process .section-header{text-align:center}#process .section-desc{margin:1rem auto 0}#process .section-eyebrow{justify-content:center}#process .section-eyebrow:after{display:none}#process .section-eyebrow:before{content:"";background:var(--gold);width:40px;height:1px;display:block}.process-steps{grid-template-columns:repeat(4,1fr);gap:0;margin-top:3.5rem;display:grid;position:relative}.process-steps:before{content:"";background:var(--concrete-mid);height:1px;position:absolute;top:28px;left:12.5%;right:12.5%}.process-step{flex-direction:column;align-items:center;padding:0 1.5rem;display:flex}.step-num{border:1.5px solid var(--gold);width:56px;height:56px;color:var(--gold);background:var(--white);z-index:1;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:1.2rem;font-weight:700;display:flex}.step-title{color:var(--stone);margin-bottom:.5rem;font-size:.95rem;font-weight:600}.step-body{color:var(--text-muted);font-size:.85rem;line-height:1.7}#contact{background:var(--stone);grid-template-columns:1fr 1fr;align-items:start;gap:5rem;padding:6rem 8%;display:grid}#contact h2{color:#fff}#contact .section-eyebrow{color:var(--gold)}.contact-intro{color:#ffffff8c;margin-top:1rem;font-size:.95rem;font-weight:300;line-height:1.8}.contact-infos{flex-direction:column;gap:1.2rem;margin-top:2.5rem;display:flex}.contact-info-item{align-items:center;gap:1rem;display:flex}.contact-info-icon{width:44px;height:44px;color:var(--gold);border:1px solid #c9a84c4d;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.contact-info-label{text-transform:uppercase;letter-spacing:.1em;color:#ffffff59;margin-bottom:2px;font-size:11px}.contact-info-value{color:#fff;font-size:.95rem;font-weight:500}.contact-info-value a{color:#fff;text-decoration:none;transition:color .2s}.contact-info-value a:hover{color:var(--gold-light)}.contact-form{flex-direction:column;gap:1rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff73;font-size:11px}.form-group input,.form-group select,.form-group textarea{color:#fff;resize:vertical;-webkit-appearance:none;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:0;outline:none;width:100%;padding:12px 14px;font-family:DM Sans,sans-serif;font-size:.9rem;transition:border-color .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#ffffff40}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold);background:#c9a84c0f}.form-group select option{background:var(--stone-mid);color:#fff}.form-submit{background:var(--gold);color:var(--stone);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;align-self:flex-start;width:100%;margin-top:.5rem;padding:15px 36px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:background .2s,transform .15s}.form-submit:hover{background:var(--gold-light);transform:translateY(-1px)}.form-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.form-note{color:#ffffff4d;text-align:center;margin-top:.5rem;font-size:11px}.form-success{color:var(--gold-light);text-align:center;background:#c9a84c1a;border:1px solid #c9a84c66;margin-top:.5rem;padding:1.2rem;font-size:.9rem}.form-error{color:#f87171;text-align:center;background:#dc26261a;border:1px solid #dc262666;margin-top:.5rem;padding:1.2rem;font-size:.9rem}footer{background:#111009;border-top:1px solid #c9a84c1f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 8%;display:flex}.footer-copy{color:#ffffff4d;letter-spacing:.04em;font-size:12px}.footer-links{gap:1.5rem;display:flex}.footer-links a{color:#ffffff59;letter-spacing:.06em;text-transform:uppercase;font-size:11px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--gold-light)}@media (max-width:900px){#why{grid-template-columns:1fr}.why-img{display:none}#contact{grid-template-columns:1fr;gap:3rem}.projects-grid{grid-template-columns:1fr 1fr}.process-steps{grid-template-columns:1fr 1fr;gap:2rem}.process-steps:before,nav ul{display:none}}@media (max-width:600px){section{padding:4rem 5%}.projects-grid,.form-row{grid-template-columns:1fr}.hero-stats{flex-direction:column}.hero-stat{border-bottom:1px solid #c9a84c26;border-right:none}.process-steps{grid-template-columns:1fr}}
