@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600;700&family=Montserrat:wght@200;300;400;500&display=swap";.navbar{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fdfaf5f2;border-bottom:1px solid #c4a48433;width:100%;padding:1.5rem 5%;position:fixed;top:0;left:0}.nav-content{justify-content:space-between;align-items:center;max-width:1440px;margin:0 auto;display:flex}.logo-wrapper{align-items:center;display:inline-flex;position:relative}.sparkle{background:var(--color-accent);pointer-events:none;opacity:0;clip-path:polygon(50% 0%,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0% 50%,40% 40%);width:8px;height:8px;filter:drop-shadow(0 0 2px var(--color-accent));position:absolute}.s1{animation:3s ease-in-out infinite sparkle-float;top:-5px;right:-10px}.s2{animation:4s ease-in-out 1s infinite sparkle-float;bottom:-2px;left:-15px}.s3{animation:5s ease-in-out .5s infinite sparkle-float;top:10px;right:-20px}@keyframes sparkle-float{0%,to{opacity:0;transform:translate(0)scale(.5)}50%{opacity:.8;transform:translate(5px,-10px)scale(1.2)}}.logo{font-family:var(--font-display);letter-spacing:.1rem;color:var(--color-primary);opacity:0;font-size:1.8rem;font-weight:500;text-decoration:none;animation:1.2s cubic-bezier(.34,1.56,.64,1) forwards logo-entrance,8s ease-in-out 1.2s infinite logo-breathe;display:inline-block}@keyframes logo-entrance{0%{opacity:0;transform:rotateX(-360deg)translateY(-20px)}to{opacity:1;transform:rotateX(0)translateY(0)}}@keyframes logo-breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.03)}}.nav-links a{color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em;margin-left:2.5rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--color-accent)}.nav-book-btn{background:var(--color-accent);border-radius:4px;color:#fff!important;padding:.5rem 1.2rem!important;transition:all .3s!important}.nav-book-btn:hover{background:var(--color-primary)!important;color:var(--color-bg-base)!important}.mobile-menu-btn{cursor:pointer;display:none}.hero{align-items:center;height:100vh;padding-top:80px;display:flex;position:relative;overflow:hidden}.hero-content{z-index:2;max-width:600px;position:relative}.hero-subtitle{text-transform:uppercase;letter-spacing:.3em;color:var(--color-accent);margin-bottom:1rem;font-size:.8rem;font-weight:500;display:block}.hero-title{margin-bottom:2rem;font-size:clamp(3rem,8vw,5.5rem);line-height:1}.hero-description{opacity:.8;max-width:500px;margin-bottom:2.5rem;font-size:1.1rem}.hero-actions{gap:1.5rem;display:flex}.hero-image-container{z-index:1;width:55%;height:100%;position:absolute;top:0;right:0}.hero-image{object-fit:cover;object-position:center 20%;width:100%;height:100%}.hero-image-overlay{z-index:2;background:linear-gradient(to bottom, var(--color-bg-base) 0%, transparent 20%), linear-gradient(to top, var(--color-bg-base) 0%, transparent 20%), linear-gradient(to right, var(--color-bg-base) 0%, transparent 40%);width:100%;height:100%;position:absolute;top:0;left:0}.services-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;display:grid}.service-card{background:var(--color-bg-alt);border:1px solid var(--color-accent);border-radius:8px;padding:2.5rem;transition:all .4s}.service-card:hover{background:var(--color-bg-base);transform:translateY(-5px);box-shadow:0 10px 30px #c4a48426}.service-header{justify-content:space-between;align-items:baseline;margin-bottom:.5rem;display:flex}.service-name{font-size:1.8rem}.service-price{font-family:var(--font-body);color:var(--color-accent);font-size:1.2rem;font-weight:400}.service-meta{text-transform:uppercase;letter-spacing:.05em;opacity:.6;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.8rem;display:flex}.service-desc{opacity:.7;font-size:.9rem;line-height:1.8}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.gallery-item{aspect-ratio:1;background:#eee;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.23,1,.32,1)}.gallery-item:hover img{transform:scale(1.1)}.reviews-marquee-container{padding:2rem 0;position:relative;overflow:hidden}.reviews-marquee{width:max-content;animation:40s linear infinite marquee;display:flex}.review-card{background:var(--color-bg-alt);border:1px solid var(--color-accent);border-radius:8px;flex-direction:column;gap:1.5rem;width:400px;margin-right:2rem;padding:3rem;display:flex}.stars{color:var(--color-accent);gap:.3rem;display:flex}.review-text{font-family:var(--font-display);font-size:1.4rem;font-style:italic;line-height:1.4}.review-author{text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:500}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.contact-grid{grid-template-columns:1fr 1.2fr;align-items:start;gap:5rem;display:grid}.contact-item{gap:1.5rem;margin-bottom:2.5rem;display:flex}.contact-icon{color:var(--color-accent);flex-shrink:0;margin-top:.3rem}.contact-item h4{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;opacity:.6;margin-bottom:.5rem;font-size:.8rem}.hours-list{list-style:none}.hours-list li{justify-content:space-between;width:250px;margin-bottom:.3rem;display:flex}.contact-map{border:1px solid var(--color-accent);padding:1rem}.footer{background:var(--color-primary);color:var(--color-bg-base);text-align:center;padding:5rem 5% 3rem}.footer-logo{font-family:var(--font-display);margin-bottom:1rem;font-size:2.5rem}.footer-tagline{opacity:.6;letter-spacing:.2em;text-transform:uppercase;margin-bottom:2.5rem;font-size:.7rem}.social-links{justify-content:center;gap:2rem;margin-bottom:4rem;display:flex}.social-links a{color:inherit;transition:color .3s}.social-links a:hover{color:var(--color-accent)}.footer-bottom{opacity:.4;border-top:1px solid #ffffff1a;padding-top:2rem;font-size:.8rem}@media (width<=1024px){.hero-image-container{width:45%}.gallery-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr;gap:3rem}}@media (width<=768px){.desktop-only{display:none}.mobile-menu-btn{display:block}.hero{text-align:center;flex-direction:column;height:auto;min-height:100vh}.hero-content{padding:4rem 0}.hero-description{margin:0 auto 2.5rem}.hero-actions{justify-content:center}.hero-image-container{width:100%;height:400px;position:relative}.hero-image-overlay{background:linear-gradient(to bottom, var(--color-bg-base) 0%, #fdfaf500 30%)}.services-grid,.gallery-grid{grid-template-columns:1fr}.mobile-menu-overlay{background:var(--color-bg-base);z-index:999;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:fixed;top:0;left:0}.mobile-nav-links{flex-direction:column;align-items:center;gap:2rem;display:flex}.mobile-nav-links a{font-family:var(--font-display);color:var(--color-primary);font-size:2.5rem;text-decoration:none}}:root{--color-primary:#121212;--color-accent:#c4a484;--color-bg-base:#fdfaf5;--color-bg-alt:#f5f1ea;--font-display:"Cormorant Garamond", serif;--font-body:"Montserrat", sans-serif;--spacing-section:120px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-bg-base);color:var(--color-primary);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;font-weight:400}section{padding:var(--spacing-section) 5%;max-width:1440px;margin:0 auto}.section-title{text-align:center;margin-bottom:3rem;font-size:clamp(2.5rem,5vw,4rem)}.btn{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--color-primary);cursor:pointer;color:var(--color-primary);background:0 0;padding:1rem 2.5rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.23,1,.32,1);display:inline-block}.btn:hover{background:var(--color-primary);color:var(--color-bg-base)}.btn-accent{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn-accent:hover{color:var(--color-accent);background:0 0}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg-base)}::-webkit-scrollbar-thumb{background:var(--color-accent)}@media (width<=768px){:root{--spacing-section:80px}}
