:root{--gold:#c9a96e;--gold-light:#e8d5a3;--gold-dark:#8a6c3e;--cream:#fdf8f0;--deep:#0a0705;--glass-bg:#ffffff0a;--glass-border:#c9a96e33;--glass-blur:blur(20px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--deep);color:var(--cream);cursor:none;font-family:Montserrat,sans-serif;overflow-x:hidden}.cursor{background:var(--gold);pointer-events:none;z-index:9999;border-radius:50%;width:10px;height:10px;transition:transform .1s;position:fixed;transform:translate(-50%,-50%)}.cursor-ring{pointer-events:none;z-index:9998;border:1px solid #c9a96e80;border-radius:50%;width:36px;height:36px;transition:all .18s;position:fixed;transform:translate(-50%,-50%)}.bg-layer{z-index:0;background:radial-gradient(80% 60% at 20% 20%,#8c643226 0%,#0000 60%),radial-gradient(60% 50% at 80% 80%,#64461e1f 0%,#0000 60%),radial-gradient(40% 40%,#c9a96e0a 0%,#0000 70%),linear-gradient(160deg,#0f0b07 0%,#080503 50%,#0c0a06 100%);position:fixed;inset:0}.bg-noise{z-index:1;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-size:180px;position:fixed;inset:0}.wrap{z-index:2;position:relative}@keyframes fadeDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}nav{z-index:100;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0a070580;border-bottom:1px solid #c9a96e1a;justify-content:space-between;align-items:center;padding:28px 56px;animation:1s forwards fadeDown;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{letter-spacing:.3em;color:var(--gold-light);text-transform:uppercase;font-family:Cormorant Garamond,serif;font-size:28px;font-weight:300}.nav-logo span{color:var(--gold);font-style:italic}.nav-links{gap:40px;list-style:none;display:flex}.nav-links a{letter-spacing:.25em;text-transform:uppercase;color:#fdf8f099;font-size:10px;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--gold)}.nav-cta{letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--gold);color:var(--gold);background:0 0;padding:11px 28px;font-size:10px;text-decoration:none;transition:all .3s}.nav-cta:hover{background:var(--gold);color:var(--deep)}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:140px 40px 80px;display:flex;position:relative;overflow:hidden}.hero-eyebrow{letter-spacing:.4em;text-transform:uppercase;color:var(--gold);opacity:0;margin-bottom:32px;font-size:10px;animation:1s .4s forwards fadeUp}.hero-title{letter-spacing:-.01em;opacity:0;margin-bottom:16px;font-family:Cormorant Garamond,serif;font-size:clamp(72px,12vw,140px);font-weight:300;line-height:.9;animation:1s .6s forwards fadeUp}.hero-title em{color:var(--gold);font-style:italic;display:block}.hero-sub{color:#fdf8f080;opacity:0;margin-bottom:60px;font-family:Cormorant Garamond,serif;font-size:clamp(18px,2.5vw,26px);font-style:italic;font-weight:300;animation:1s .8s forwards fadeUp}.hero-actions{opacity:0;align-items:center;gap:20px;animation:1s 1s forwards fadeUp;display:flex}.btn-primary{background:linear-gradient(135deg, var(--gold-dark), var(--gold), var(--gold-light));color:var(--deep);letter-spacing:.25em;text-transform:uppercase;clip-path:polygon(12px 0%,100% 0%,calc(100% - 12px) 100%,0% 100%);cursor:none;padding:16px 48px;font-size:10px;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary:hover{opacity:.85;transform:translateY(-2px)}.btn-secondary{color:var(--cream);letter-spacing:.25em;text-transform:uppercase;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);cursor:none;border:1px solid #c9a96e66;padding:16px 40px;font-size:10px;text-decoration:none;transition:all .3s}.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}.hero-badge{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);text-align:center;opacity:0;background:#c9a96e14;border:1px solid #c9a96e40;padding:24px 32px;animation:1s 1.2s forwards fadeUp;position:absolute;bottom:15%;right:8%}.badge-num{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:52px;font-weight:300;line-height:1}.badge-stars{color:var(--gold);letter-spacing:3px;margin:6px 0;font-size:12px}.badge-label{letter-spacing:.25em;text-transform:uppercase;color:#fdf8f080;font-size:9px}.hero-line{background:linear-gradient(to bottom, transparent, var(--gold), transparent);opacity:0;width:1px;height:80px;animation:1s 1.4s forwards fadeUp;position:absolute;bottom:25%;left:8%}.divider{align-items:center;gap:24px;margin:20px 0;padding:0 56px;display:flex}.divider-line{background:linear-gradient(90deg,#0000,#c9a96e4d,#0000);flex:1;height:1px}.divider-gem{border:1px solid var(--gold);flex-shrink:0;width:8px;height:8px;transform:rotate(45deg)}section{padding:100px 56px;position:relative}.section-label{letter-spacing:.4em;text-transform:uppercase;color:var(--gold);align-items:center;gap:16px;margin-bottom:16px;font-size:9px;display:flex}.section-label:before{content:"";background:var(--gold);width:32px;height:1px}.section-title{margin-bottom:24px;font-family:Cormorant Garamond,serif;font-size:clamp(40px,5vw,68px);font-weight:300;line-height:1.1}.section-title em{color:var(--gold);font-style:italic}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:80px;max-width:1100px;margin:0 auto;display:grid}.about-text p{color:#fdf8f0a6;margin-bottom:20px;font-size:14px;font-weight:300;line-height:2}.about-stats{grid-template-columns:1fr 1fr;gap:2px;margin-top:40px;display:grid}.stat-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:28px 24px;transition:border-color .3s}.stat-card:hover{border-color:#c9a96e80}.stat-num{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:42px;font-weight:300;line-height:1}.stat-desc{letter-spacing:.2em;text-transform:uppercase;color:#fdf8f066;margin-top:8px;font-size:10px}.about-visual{height:500px;position:relative}.about-glass-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#c9a96e0a;border:1px solid #c9a96e26;padding:40px;position:absolute}.about-glass-card.main{flex-direction:column;justify-content:flex-end;display:flex;inset:0}.about-glass-card.accent{text-align:center;background:#c9a96e1a;border-color:#c9a96e59;flex-direction:column;justify-content:center;align-items:center;width:160px;height:160px;display:flex;top:-24px;right:-24px}.accent-icon{margin-bottom:8px;font-size:32px}.accent-text{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-size:9px}.glass-inner-content .tag{background:var(--gold);color:var(--deep);letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px;padding:6px 14px;font-size:9px;display:inline-block}.glass-inner-content h3{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:300;line-height:1.3}.services-grid{grid-template-columns:repeat(3,1fr);gap:2px;margin-top:60px;display:grid}.service-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);cursor:none;padding:48px 36px;transition:all .4s;position:relative;overflow:hidden}.service-card:before{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:2px;transition:transform .4s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{background:#c9a96e12;border-color:#c9a96e66;transform:translateY(-4px)}.service-card:hover:before{transform:scaleX(1)}.service-num{color:#c9a96e14;margin-bottom:8px;font-family:Cormorant Garamond,serif;font-size:64px;font-weight:300;line-height:1}.service-icon{margin-bottom:20px;font-size:28px;display:block}.service-name{color:var(--cream);margin-bottom:12px;font-family:Cormorant Garamond,serif;font-size:26px;font-weight:300}.service-desc{color:#fdf8f080;font-size:12px;font-weight:300;line-height:1.8}.service-tag{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid #c9a96e4d;margin-top:20px;padding-bottom:2px;font-size:9px;display:inline-block}.reviews-section{background:#c9a96e05}.reviews-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px;display:grid}.review-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:none;background:#ffffff08;border:1px solid #c9a96e1f;padding:36px 32px;transition:all .3s;position:relative}.review-card:hover{background:#c9a96e0d;border-color:#c9a96e4d}.review-quote{color:var(--gold);opacity:.4;margin-bottom:16px;font-family:Cormorant Garamond,serif;font-size:60px;line-height:.6}.review-text{color:#fdf8f0cc;margin-bottom:24px;font-family:Cormorant Garamond,serif;font-size:16px;font-style:italic;line-height:1.7}.review-stars{color:var(--gold);letter-spacing:3px;margin-bottom:12px;font-size:11px}.review-author{letter-spacing:.2em;text-transform:uppercase;color:#fdf8f066;font-size:10px}.hours-section{text-align:center}.hours-glass{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#c9a96e0a;border:1px solid #c9a96e2e;max-width:700px;margin:60px auto 0;padding:60px}.hours-row{letter-spacing:.15em;border-bottom:1px solid #c9a96e14;justify-content:space-between;align-items:center;padding:16px 0;font-size:12px;display:flex}.hours-row:last-child{border-bottom:none}.hours-day{text-transform:uppercase;color:#fdf8f080}.hours-time{color:var(--gold-light);font-family:Cormorant Garamond,serif;font-size:16px}.hours-badge{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;background:#c9a96e26;border:1px solid #c9a96e4d;margin-left:12px;padding:4px 12px;font-size:9px;display:inline-block}.info-section{grid-template-columns:repeat(4,1fr);gap:2px;padding:0 56px 100px;display:grid}.info-card{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:40px 28px;transition:all .3s}.info-card:hover{background:#c9a96e12;border-color:#c9a96e59}.info-icon{margin-bottom:16px;font-size:24px;display:block}.info-label{letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;font-size:9px}.info-value{color:#fdf8f0b3;font-size:13px;font-weight:300;line-height:1.7}.contact-section{text-align:center;padding:100px 56px}.contact-glass{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#c9a96e0a;border:1px solid #c9a96e33;max-width:650px;margin:0 auto;padding:80px 60px}.contact-phone{color:var(--gold-light);cursor:none;margin:24px 0 8px;font-family:Cormorant Garamond,serif;font-size:42px;font-weight:300;text-decoration:none;transition:color .3s;display:block}.contact-phone:hover{color:var(--gold)}.contact-addr{color:#fdf8f080;letter-spacing:.05em;margin:16px 0 40px;font-size:12px;line-height:1.8}.amenities{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:32px;display:flex}.amenity-tag{letter-spacing:.2em;text-transform:uppercase;color:#fdf8f080;background:#c9a96e0a;border:1px solid #c9a96e33;padding:8px 16px;font-size:9px}footer{border-top:1px solid #c9a96e1f;justify-content:space-between;align-items:center;padding:40px 56px;display:flex}.footer-logo{letter-spacing:.3em;color:#fdf8f04d;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:300}.footer-copy{letter-spacing:.15em;color:#fdf8f033;font-size:10px}.footer-tagline{color:#c9a96e66;font-family:Cormorant Garamond,serif;font-size:14px;font-style:italic}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(40px)}.reveal.visible{opacity:1;transform:translateY(0)}.hero-bg-photo{z-index:0;opacity:.18;background-position:50% 30%;background-size:cover;position:absolute;inset:0}.hero-bg-overlay{z-index:1;background:linear-gradient(#0a0705a6 0%,#0a070559 40%,#0a0705bf 100%);position:absolute;inset:0}.hero>:not(.hero-bg-photo):not(.hero-bg-overlay){z-index:2;position:relative}.hero-bottom-strip{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.15em;color:#fdf8f080;white-space:nowrap;opacity:0;background:#0a0705b3;border-top:1px solid #c9a96e1f;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:14px 40px;font-size:10px;animation:1s 1.6s forwards fadeUp;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-strip-dot{color:#c9a96e66}.photo-strip{grid-template-columns:repeat(5,1fr);gap:4px;height:240px;margin-top:60px;display:grid}.photo-strip-item{position:relative;overflow:hidden}.photo-strip-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.photo-strip-item:hover img{transform:scale(1.06)}.review-card-header{align-items:center;gap:14px;margin-bottom:20px;display:flex}.reviewer-avatar{object-fit:cover;border:1px solid #c9a96e40;border-radius:50%;flex-shrink:0;width:44px;height:44px}.review-service-tag{letter-spacing:.15em;text-transform:uppercase;color:#c9a96e99;margin-top:3px;font-size:9px}.review-tags-row{flex-wrap:wrap;justify-content:center;gap:10px;margin:16px 0 8px;display:flex}.review-chip{letter-spacing:.15em;text-transform:uppercase;color:#fdf8f080;cursor:none;background:#c9a96e0a;border:1px solid #c9a96e33;align-items:center;gap:6px;padding:6px 14px;font-size:9px;transition:all .25s;display:inline-flex}.review-chip:hover{color:var(--gold);border-color:#c9a96e66}.review-chip-count{color:var(--gold);font-family:Cormorant Garamond,serif;font-size:13px;font-style:italic}.popular-times-row{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:40px;display:flex}.popular-time-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center;background:#c9a96e0a;border:1px solid #c9a96e26;min-width:180px;padding:24px 32px}.popular-time-day{color:var(--gold-light);margin-bottom:4px;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:300}.popular-time-peak{letter-spacing:.2em;text-transform:uppercase;color:#fdf8f066;margin-bottom:14px;font-size:9px}.popular-time-bar{background:#c9a96e1a;border-radius:2px;height:3px;overflow:hidden}.popular-time-fill{background:linear-gradient(90deg, var(--gold-dark), var(--gold));border-radius:2px;height:100%;transition:width 1s}.gallery-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:4px;margin-top:60px;display:grid}.gallery-grid .gallery-item:first-child,.gallery-grid .gallery-item:nth-child(6){grid-area:span 2/span 2}.gallery-item{position:relative;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.gallery-item:hover img{transform:scale(1.05)}.gallery-overlay{opacity:0;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);background:#0a070580;justify-content:center;align-items:center;font-size:9px;transition:opacity .3s;display:flex;position:absolute;inset:0}.gallery-item:hover .gallery-overlay{opacity:1}.lightbox{z-index:9000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:none;background:#050302f2;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;border:1px solid #c9a96e33;max-width:90vw;max-height:85vh}.lightbox-close{color:var(--gold);cursor:none;background:0 0;border:1px solid #c9a96e4d;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;transition:all .3s;display:flex;position:absolute;top:28px;right:36px}.lightbox-close:hover{border-color:var(--gold);background:#c9a96e1a}@media (width<=900px){nav{padding:20px 24px}.nav-links{display:none}section{padding:70px 24px}.about-grid,.services-grid,.reviews-grid{grid-template-columns:1fr}.info-section{grid-template-columns:1fr 1fr;padding:0 24px 70px}.hero-badge{display:none}.about-visual{height:280px}footer{text-align:center;flex-direction:column;gap:12px;padding:32px 24px}.contact-glass{padding:48px 28px}.hours-glass{padding:40px 24px}.divider{padding:0 24px}.photo-strip{grid-template-columns:repeat(3,1fr);height:160px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.gallery-grid .gallery-item:first-child,.gallery-grid .gallery-item:nth-child(6){grid-area:span 1/span 1}.hero-bottom-strip{display:none}.popular-times-row{flex-direction:column;align-items:center}}
