@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Montserrat:wght@200;300;400;500&display=swap");:root{--color-cream:#faf9f6;--color-ivory:ivory;--color-charcoal:#2c2c2c;--color-gold:#c9a962;--color-sage:#9caf88;--color-blush:#e8d5d0;--font-serif:"Cormorant Garamond",serif;--font-sans:"Montserrat",sans-serif}*{box-sizing:border-box;padding:0;margin:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--color-cream);color:var(--color-charcoal);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:300;letter-spacing:.02em}h1{font-size:clamp(3rem,8vw,6rem);line-height:1.1}h2{font-size:clamp(2rem,5vw,3.5rem);line-height:1.2}h3{font-size:clamp(1.5rem,3vw,2rem)}p{font-weight:300;font-size:1rem;letter-spacing:.01em}.text-gold{color:var(--color-gold)}.text-muted{color:rgba(44,44,44,.6)}.text-center{text-align:center}.uppercase{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem}.container{max-width:1400px;margin:0 auto;padding:0 2rem}.section{padding:8rem 0;position:relative}.section-alt{background-color:var(--color-ivory)}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.5rem 2rem;background:linear-gradient(180deg,hsla(45,29%,97%,.95),transparent);transition:all .4s ease}.nav-scrolled{background:hsla(45,29%,97%,.98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px 20px rgba(0,0,0,.05)}.nav-inner{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;letter-spacing:.1em;text-decoration:none;color:var(--color-charcoal)}.nav-links{display:flex;gap:3rem;list-style:none}.nav-links a{text-decoration:none;color:var(--color-charcoal);font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;font-weight:400;position:relative;padding-bottom:.25rem;transition:color .3s ease}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background-color:var(--color-gold);transition:width .3s ease}.nav-links a:hover:after{width:100%}.nav-links a:hover{color:var(--color-gold)}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,var(--color-cream) 0,var(--color-ivory) 50%,var(--color-blush) 100%);overflow:hidden}.hero:before{content:"";position:absolute;top:-50%;right:-20%;width:80%;height:150%;background:radial-gradient(ellipse,rgba(201,169,98,.08) 0,transparent 70%);pointer-events:none}.hero-content{text-align:center;max-width:900px;padding:2rem;position:relative;z-index:1}.hero-subtitle{font-size:.8rem;text-transform:uppercase;letter-spacing:.3em;margin-bottom:2rem;color:var(--color-gold)}.hero-title{margin-bottom:1.5rem;font-style:italic;font-weight:300}.hero-tagline{font-size:1.1rem;font-weight:300;max-width:600px;margin:0 auto 3rem;color:rgba(44,44,44,.7);line-height:1.8}.btn{display:inline-block;padding:1rem 2.5rem;text-decoration:none;font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;font-weight:500;transition:all .4s ease;border:1px solid transparent;cursor:pointer;background:transparent}.btn-primary{background-color:var(--color-charcoal);color:var(--color-cream);border-color:var(--color-charcoal)}.btn-primary:hover{background-color:transparent;color:var(--color-charcoal)}.btn-outline{border-color:var(--color-charcoal);color:var(--color-charcoal)}.btn-outline:hover{background-color:var(--color-charcoal);color:var(--color-cream)}.section-header{text-align:center;margin-bottom:5rem}.section-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.3em;color:var(--color-gold);margin-bottom:1rem;display:block}.section-title{margin-bottom:1.5rem}.section-intro{max-width:700px;margin:0 auto;color:rgba(44,44,44,.7)}.grid{display:grid;grid-gap:3rem;gap:3rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.card{background:var(--color-ivory);padding:3rem;transition:transform .4s ease,box-shadow .4s ease}.card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.08)}.card-icon{font-size:2rem;margin-bottom:1.5rem;color:var(--color-gold)}.card-title{font-size:1.25rem;margin-bottom:1rem;font-family:var(--font-serif)}.card-text{font-size:.9rem;color:rgba(44,44,44,.7);line-height:1.8}.quote{padding:6rem 2rem;text-align:center;background:var(--color-charcoal);color:var(--color-cream)}.quote-text{font-family:var(--font-serif);font-size:clamp(1.5rem,4vw,2.5rem);font-style:italic;font-weight:300;max-width:900px;margin:0 auto 2rem;line-height:1.5}.quote-author{font-size:.8rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-gold)}.service-item{display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:center;margin-bottom:6rem}.service-item:last-child{margin-bottom:0}.service-item:nth-child(2n) .service-content{order:2}.service-image{aspect-ratio:4/5;background:linear-gradient(135deg,var(--color-blush),var(--color-cream));position:relative;overflow:hidden}.service-image:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c9a962' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}.service-content{padding:2rem}.service-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-gold);margin-bottom:1rem}.service-title{margin-bottom:1.5rem;font-size:2rem}.service-text{color:rgba(44,44,44,.7);margin-bottom:2rem;line-height:1.9}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}.gallery-item{aspect-ratio:3/4;background:linear-gradient(135deg,var(--color-blush),var(--color-cream));position:relative;overflow:hidden;cursor:pointer}.gallery-item:nth-child(2){grid-row:span 2}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;padding:2rem;background:linear-gradient(0deg,rgba(44,44,44,.8),transparent);color:var(--color-cream);transform:translateY(100%);transition:transform .4s ease}.gallery-item:hover .gallery-overlay{transform:translateY(0)}.gallery-title{font-family:var(--font-serif);font-size:1.25rem;font-style:italic}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6rem;gap:6rem}.contact-info h3{font-size:1.5rem}.contact-info h3,.contact-item{margin-bottom:2rem}.contact-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-gold);margin-bottom:.5rem}.contact-value{font-size:1.1rem;font-weight:300}.contact-value a{color:var(--color-charcoal);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}.contact-value a:hover{border-color:var(--color-gold)}.contact-form{background:var(--color-ivory);padding:3rem}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.5rem;color:rgba(44,44,44,.7)}.form-input{width:100%;padding:1rem;border:1px solid rgba(44,44,44,.2);background:transparent;font-family:var(--font-sans);font-size:.9rem;transition:border-color .3s ease}.form-input:focus{outline:none;border-color:var(--color-gold)}textarea.form-input{min-height:150px;resize:vertical}.footer{background:var(--color-charcoal);color:var(--color-cream);padding:4rem 0 2rem}.footer-inner{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:flex-start}.footer-brand{font-family:var(--font-serif);font-size:1.5rem;letter-spacing:.1em}.footer-tagline{font-size:.8rem;opacity:.6;margin-top:.5rem}.footer-links{display:flex;gap:3rem;list-style:none}.footer-links a{color:var(--color-cream);text-decoration:none;font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;opacity:.7;transition:opacity .3s ease}.footer-links a:hover{opacity:1}.footer-bottom{max-width:1400px;margin:3rem auto 0;padding:2rem 2rem 0;border-top:1px solid hsla(0,0%,100%,.1);display:flex;justify-content:space-between;font-size:.75rem;opacity:.5}@media (max-width:1024px){.grid-3{grid-template-columns:repeat(2,1fr)}.service-item{grid-template-columns:1fr;gap:2rem}.service-item:nth-child(2n) .service-content{order:0}.contact-grid{grid-template-columns:1fr;gap:3rem}}@media (max-width:768px){.nav-links{display:none}.gallery,.grid-2,.grid-3{grid-template-columns:1fr}.gallery-item:nth-child(2){grid-row:span 1}.section{padding:4rem 0}.footer-inner{flex-direction:column;gap:2rem;text-align:center}.footer-links{flex-wrap:wrap;justify-content:center}.footer-bottom{flex-direction:column;text-align:center;gap:1rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .8s ease forwards}.animate-delay-1{animation-delay:.2s}.animate-delay-2{animation-delay:.4s}.animate-delay-3{animation-delay:.6s}