*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--white:#fff;--off-white:#f8f7f4;--light-sand:#f0ede6;--dark:#1a1a1a;--mid:#555;--light-border:#e0ddd6;--accent:#c9a96e;--accent-dark:#a87f42;--font-display:"Cormorant Garamond", serif;--font-body:"Montserrat", sans-serif}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--dark);background:var(--white);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.nav{z-index:100;background:var(--white);border-bottom:1px solid var(--light-border);justify-content:space-between;align-items:center;height:72px;padding:0 48px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--dark);font-size:.8rem;font-weight:700}.nav-links{gap:36px;list-style:none;display:flex}.nav-links a{letter-spacing:.14em;text-transform:uppercase;color:var(--mid);font-size:.7rem;font-weight:500;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--dark)}.page{min-height:100vh;padding-top:72px}.hero{grid-template-columns:1fr 1fr;min-height:calc(100vh - 72px);display:grid}.hero-left{background:var(--off-white);flex-direction:column;justify-content:center;padding:80px 64px;display:flex}.hero-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:24px;font-size:.65rem;font-weight:600}.hero-headline{font-family:var(--font-display);color:var(--dark);margin-bottom:12px;font-size:clamp(2.8rem,4.5vw,5rem);font-weight:300;line-height:1.1}.hero-sub{font-family:var(--font-display);color:var(--mid);margin-bottom:48px;font-size:clamp(1rem,1.8vw,1.4rem);font-style:italic;font-weight:300}.btn{letter-spacing:.18em;text-transform:uppercase;border:1.5px solid var(--dark);color:var(--dark);cursor:pointer;background:0 0;align-self:flex-start;padding:14px 36px;font-size:.65rem;font-weight:600;transition:background .2s,color .2s;display:inline-block}.btn:hover{background:var(--dark);color:var(--white)}.btn-accent{border-color:var(--accent);color:var(--accent)}.btn-accent:hover{background:var(--accent);color:var(--white)}.hero-right{position:relative;overflow:hidden}.hero-right img{object-fit:cover;width:100%;height:100%}.section{padding:96px 80px}.section-alt{background:var(--off-white)}.section-label{letter-spacing:.25em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:.6rem;font-weight:600}.section-title{font-family:var(--font-display);color:var(--dark);margin-bottom:56px;font-size:clamp(2rem,3vw,3.2rem);font-weight:300}.about-grid{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:24px;display:grid}.about-card img{object-fit:cover;width:100%;height:220px;margin-bottom:24px}.about-card-title{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:.65rem;font-weight:700}.about-card p{color:var(--mid);font-size:.85rem;line-height:1.8}.services-grid{background:var(--light-border);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.service-item{background:var(--white);padding:48px 36px}.service-num{font-family:var(--font-display);color:var(--light-border);margin-bottom:16px;font-size:3rem;font-weight:300;line-height:1}.service-title{letter-spacing:.2em;text-transform:uppercase;color:var(--dark);margin-bottom:16px;font-size:.65rem;font-weight:700}.service-item ul{padding:0;list-style:none}.service-item li{color:var(--mid);border-bottom:1px solid var(--light-border);padding:5px 0;font-size:.8rem}.service-item li:last-child{border-bottom:none}.testimonial-section{background:var(--dark);color:var(--white);text-align:center;padding:96px 80px}.testimonial-section .section-label{color:var(--accent)}.testimonial-section .section-title{color:var(--white);margin-bottom:48px}blockquote{font-family:var(--font-display);color:#e8e4da;max-width:700px;margin:0 auto 24px;font-size:clamp(1.2rem,2vw,1.8rem);font-style:italic;font-weight:300;line-height:1.6}.testimonial-author{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-size:.7rem}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:80px;display:grid}.contact-form{flex-direction:column;gap:20px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-field{flex-direction:column;gap:8px;display:flex}.form-field label{letter-spacing:.14em;text-transform:uppercase;color:var(--dark);font-size:.65rem;font-weight:600}.form-field input,.form-field textarea{border:1px solid var(--light-border);font-family:var(--font-body);color:var(--dark);background:0 0;outline:none;padding:12px 16px;font-size:.85rem;transition:border-color .2s}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent)}.form-field textarea{resize:vertical;min-height:120px}.contact-info h3{font-family:var(--font-display);margin-bottom:32px;font-size:2rem;font-weight:300}.contact-info-item{color:var(--mid);align-items:center;gap:12px;margin-bottom:16px;font-size:.85rem;display:flex}.contact-info-item svg{color:var(--accent);flex-shrink:0}.about-page-hero{background:var(--off-white);grid-template-columns:1fr 1fr;align-items:center;gap:80px;min-height:60vh;padding:80px;display:grid}.about-page-title{font-family:var(--font-display);color:var(--dark);margin-bottom:32px;font-size:clamp(3rem,5vw,6rem);font-weight:300}.about-page-body{color:var(--mid);margin-bottom:24px;font-size:.9rem;line-height:1.9}.about-page-img{object-fit:cover;width:100%;height:500px}.portfolio-hero{background:var(--dark);color:var(--white);text-align:center;padding:96px 80px 64px}.portfolio-hero .section-label{color:var(--accent)}.portfolio-hero h1{font-family:var(--font-display);margin-bottom:16px;font-size:clamp(2.5rem,4vw,5rem);font-weight:300}.portfolio-hero p{font-family:var(--font-display);color:#bbb;font-size:1.3rem;font-style:italic}.portfolio-grid{background:var(--light-border);grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.portfolio-item{background:var(--white);aspect-ratio:4/3;cursor:pointer;position:relative;overflow:hidden}.portfolio-item:nth-child(2){aspect-ratio:3/4}.portfolio-item:nth-child(5),.portfolio-item:nth-child(6){aspect-ratio:1}.portfolio-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.portfolio-item:hover img{transform:scale(1.04)}.contact-page{grid-template-columns:1fr 1fr;min-height:calc(100vh - 72px);display:grid}.contact-page-left{background:var(--off-white);flex-direction:column;justify-content:center;padding:80px;display:flex}.contact-page-right{flex-direction:column;justify-content:center;padding:80px;display:flex}footer{background:var(--dark);color:var(--white);justify-content:space-between;align-items:center;padding:56px 80px;display:flex}.footer-logo{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;font-size:.8rem;font-weight:700}.footer-links{gap:24px;display:flex}.footer-links a{letter-spacing:.12em;text-transform:uppercase;color:#999;font-size:.7rem;transition:color .2s}.footer-links a:hover{color:var(--white)}.footer-social{align-items:center;gap:16px;display:flex}.social-icon{border:1px solid #444;justify-content:center;align-items:center;width:36px;height:36px;transition:border-color .2s,background .2s;display:flex}.social-icon:hover{border-color:var(--accent);background:var(--accent)}.footer-copy{color:#666;letter-spacing:.08em;border-top:1px solid #333;margin-top:32px;padding-top:24px;font-size:.7rem}.divider{background:var(--light-border);height:1px;margin:0}.approach-section{background:var(--white);text-align:center;padding:80px}.approach-text{font-family:var(--font-display);max-width:700px;color:var(--mid);margin:0 auto;font-size:clamp(1.2rem,2vw,1.8rem);font-style:italic;font-weight:300;line-height:1.6}@media (width<=768px){.nav{padding:0 24px}.nav-links{gap:20px}.nav-links a{font-size:.6rem}.hero{grid-template-columns:1fr}.hero-right{height:300px}.hero-left{padding:48px 28px}.section{padding:64px 28px}.about-grid{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr;gap:40px}.form-row{grid-template-columns:1fr}.about-page-hero{grid-template-columns:1fr;gap:40px;padding:40px 28px}.portfolio-hero{padding:64px 28px}.portfolio-grid{grid-template-columns:1fr 1fr}.contact-page{grid-template-columns:1fr}.contact-page-left{min-height:auto;padding:48px 28px}.contact-page-right{padding:48px 28px}footer{text-align:center;flex-direction:column;gap:24px;padding:40px 28px}.footer-links{flex-wrap:wrap;justify-content:center}.testimonial-section,.approach-section{padding:64px 28px}}
