@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;600;700&family=DM+Sans:wght@300;400;500&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--gold:#c9a84c;--gold-light:#e8c96d;--black:#0a0a0a;--dark:#111;--dark2:#1a1a1a;--dark3:#222;--white:#f5f5f0;--gray:#888;--font-display:"Cormorant Garamond", serif;--font-body:"DM Sans", sans-serif}body{background:var(--black);color:var(--white);font-family:var(--font-body);font-weight:300}nav{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0a0af2;border-bottom:1px solid #c9a84c33;justify-content:space-between;align-items:center;width:100%;height:70px;padding:0 2rem;display:flex;position:fixed;top:0}.nav-logo{font-family:var(--font-display);color:var(--gold);letter-spacing:1px;font-size:1.6rem;font-weight:700;text-decoration:none}.nav-links{background:#c9a84c0f;border:1px solid #c9a84c26;border-radius:50px;gap:0;padding:.3rem;list-style:none;display:flex}.nav-links li{align-items:center;display:flex}.nav-links a{color:var(--white);letter-spacing:1.5px;text-transform:uppercase;white-space:nowrap;border-radius:50px;padding:.45rem 1rem;font-size:.78rem;text-decoration:none;transition:all .25s}.nav-links a:hover{color:var(--gold);background:#c9a84c14}.nav-link-active{border-radius:50px;color:var(--black)!important;background:var(--gold)!important}.nav-link-active:after{display:none}.nav-btn-pill{color:var(--gold);border:1px solid var(--gold);font-family:var(--font-body);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:0 0;border-radius:50px;padding:.45rem 1.2rem;font-size:.78rem;font-weight:500;text-decoration:none;transition:all .25s}.nav-btn-pill:hover{background:var(--gold);color:var(--black)}.hero{text-align:center;background:linear-gradient(135deg,#0a0a0a 0%,#1a1200 50%,#0a0a0a 100%);justify-content:center;align-items:center;min-height:100vh;padding:6rem 2rem 4rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(#c9a84c14 0%,#0000 70%);position:absolute;inset:0}.hero-content{z-index:1;max-width:800px;position:relative}.hero-badge{border:1px solid var(--gold);color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:2rem;padding:.4rem 1.2rem;font-size:.75rem;display:inline-block}.hero h1{font-family:var(--font-display);margin-bottom:1.5rem;font-size:clamp(3rem,8vw,6rem);font-weight:700;line-height:1.05}.hero h1 span{color:var(--gold)}.hero p{color:var(--gray);max-width:500px;margin:0 auto 2.5rem;font-size:1.1rem;line-height:1.7}.hero-btns{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn-primary{background:var(--gold);color:var(--black);font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;cursor:pointer;border:none;padding:1rem 2.5rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary:hover{background:var(--gold-light);transform:translateY(-2px)}.btn-outline{color:var(--gold);border:1px solid var(--gold);font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;cursor:pointer;background:0 0;padding:1rem 2.5rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.btn-outline:hover{background:var(--gold);color:var(--black)}section{padding:6rem 2rem}.section-label{color:var(--gold);letter-spacing:4px;text-transform:uppercase;margin-bottom:1rem;font-size:.75rem}.section-title{font-family:var(--font-display);margin-bottom:1rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700}.section-sub{color:var(--gray);max-width:500px;font-size:1rem;line-height:1.7}.services{background:var(--dark)}.services-header{text-align:center;margin-bottom:4rem}.services-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;max-width:1100px;margin:0 auto;display:grid}.service-card{background:var(--dark2);border:1px solid #c9a84c26;border-radius:16px;flex-direction:column;padding:2.5rem 2rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--gold);height:2px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{border-color:#c9a84c66;transform:translateY(-4px)}.service-card:hover:before{transform:scaleX(1)}.service-icon{margin-bottom:1.2rem;font-size:2.5rem}.service-name{font-family:var(--font-display);color:var(--white);margin-bottom:.8rem;font-size:1.4rem;font-weight:600}.service-desc{color:var(--gray);margin-bottom:1.5rem;font-size:.9rem;line-height:1.6}.service-price{color:var(--gold);font-size:1.1rem;font-weight:500}.service-features{margin-bottom:1.5rem;list-style:none}.service-features li{color:var(--gray);border-bottom:1px solid #ffffff0d;align-items:center;gap:.5rem;padding:.3rem 0;font-size:.85rem;display:flex}.service-features li:before{content:"✦";color:var(--gold);font-size:.6rem}.promo-banner{text-align:center;letter-spacing:1px;background:linear-gradient(90deg,#1a1200,#2a1f00,#1a1200);border-top:1px solid #c9a84c4d;border-bottom:1px solid #c9a84c4d;padding:1.2rem 2rem;font-size:.9rem}.promo-banner span{color:var(--gold);font-weight:500}.booking{background:var(--black)}.booking-container{max-width:700px;margin:0 auto}.booking-header{text-align:center;margin-bottom:3rem}.form-grid{grid-template-columns:1fr 1fr;gap:1.2rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group.full{grid-column:1/-1}.form-group label{letter-spacing:2px;text-transform:uppercase;color:var(--gold);font-size:.75rem}.form-group input,.form-group select,.form-group textarea{background:var(--dark2);color:var(--white);font-family:var(--font-body);appearance:none;border:1px solid #c9a84c33;outline:none;padding:.9rem 1rem;font-size:.95rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold)}.form-group select option{background:var(--dark2)}.form-group textarea{resize:vertical;min-height:100px}.form-submit{grid-column:1/-1;margin-top:1rem}.form-submit button{background:var(--gold);width:100%;color:var(--black);font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;cursor:pointer;border:none;padding:1.1rem;font-size:.9rem;font-weight:500;transition:all .3s}.form-submit button:hover{background:var(--gold-light)}.auth-page{background:var(--black);justify-content:center;align-items:center;min-height:100vh;padding:6rem 2rem 2rem;display:flex}.auth-box{background:var(--dark);border:1px solid #c9a84c33;width:100%;max-width:440px;padding:3rem}.auth-logo{font-family:var(--font-display);color:var(--gold);text-align:center;margin-bottom:.5rem;font-size:2rem}.auth-sub{text-align:center;color:var(--gray);margin-bottom:2.5rem;font-size:.85rem}.auth-form{flex-direction:column;gap:1.2rem;display:flex}.auth-form .form-group input{width:100%}.auth-switch{text-align:center;color:var(--gray);margin-top:1.5rem;font-size:.85rem}.auth-switch a{color:var(--gold);text-decoration:none}.auth-switch a:hover{text-decoration:underline}.success-msg{border:1px solid var(--gold);color:var(--gold);text-align:center;background:#c9a84c1a;margin-bottom:1rem;padding:1rem;font-size:.9rem}.error-msg{color:#ff5050;text-align:center;background:#ff50501a;border:1px solid #ff5050;margin-bottom:1rem;padding:1rem;font-size:.9rem}.promos{background:var(--black);min-height:100vh;padding-top:8rem}.promos-header{text-align:center;margin-bottom:4rem}.promos-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto;display:grid}.promo-card{background:var(--dark);border:1px solid #c9a84c33;padding:2rem;position:relative;overflow:hidden}.promo-card:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:2px;position:absolute;bottom:0;left:0;right:0}.promo-tag{background:var(--gold);color:var(--black);letter-spacing:2px;text-transform:uppercase;margin-bottom:1rem;padding:.3rem .8rem;font-size:.7rem;font-weight:500;display:inline-block}.promo-title{font-family:var(--font-display);margin-bottom:.8rem;font-size:1.6rem}.promo-desc{color:var(--gray);margin-bottom:1rem;font-size:.9rem;line-height:1.6}.promo-expiry{color:var(--gold);letter-spacing:1px;font-size:.8rem}footer{background:var(--dark);text-align:center;border-top:1px solid #c9a84c26;padding:3rem 2rem}.footer-logo{font-family:var(--font-display);color:var(--gold);margin-bottom:1rem;font-size:1.8rem}footer p{color:var(--gray);font-size:.85rem;line-height:1.8}.contact-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.gallery-ba{grid-template-columns:1fr 1fr}.pill-tabs{border-radius:50px;gap:.4rem;padding:.4rem;display:flex}.admin-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}@keyframes tagSwing{0%{transform:rotate(-6deg)}30%{transform:rotate(6deg)}55%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}90%{transform:rotate(-1deg)}to{transform:rotate(-6deg)}}.page-wrap{perspective:1200px;overflow:hidden}.page-transition{transform-style:preserve-3d;backface-visibility:hidden;will-change:transform, opacity}.page-enter{animation:.7s cubic-bezier(.25,.46,.45,.94) forwards pageFlyIn}.page-exit{animation:.7s cubic-bezier(.25,.46,.45,.94) forwards pageFlyOut}@keyframes pageFlyOut{0%{opacity:1;transform:translateZ(0)translate(0%)rotateY(0)}to{opacity:0;transform:translateZ(-300px)translate(-8%)rotateY(8deg)}}@keyframes pageFlyIn{0%{opacity:0;transform:translateZ(-300px)translate(8%)rotateY(-8deg)}to{opacity:1;transform:translateZ(0)translate(0%)rotateY(0)}}.nav-btn{background:var(--gold);color:var(--black);font-family:var(--font-body);letter-spacing:1px;text-transform:uppercase;cursor:pointer;border:none;border-radius:50px;padding:.6rem 1.5rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:background .3s}.nav-btn:hover{background:var(--gold-light)}.nav-hamburger{cursor:pointer;z-index:200;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;padding:.4rem;display:none}.nav-hamburger span{background:var(--white);width:24px;height:2px;transition:all .3s;display:block}.nav-right{align-items:center;gap:.6rem;display:flex}.nav-mobile-action{display:none}@media (width<=768px){.form-grid{grid-template-columns:1fr}.nav-hamburger{display:flex}.nav-right{display:none}.nav-mobile-action{margin-top:.5rem;display:block}.nav-links{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:99;background:#0a0a0afa;border:none;border-bottom:1px solid #c9a84c33;border-radius:0;flex-direction:column;gap:0;padding:1.5rem 2rem 2rem;display:none;position:fixed;top:70px;left:0;right:0}.nav-links.nav-open{display:flex}.nav-links li{border-bottom:1px solid #ffffff0d}.nav-links a{border-radius:0;padding:.9rem 0;font-size:.9rem;display:block;color:var(--white)!important;background:0 0!important}.nav-links a:hover{color:var(--gold)!important}.nav-link-active{color:var(--gold)!important;background:0 0!important}.hero-btns{flex-direction:column;align-items:center}section{padding:4rem 1.2rem}.services-grid,.promos-grid{grid-template-columns:1fr}.booking-container{padding:0}.auth-box{padding:2rem 1.5rem}.contact-grid{grid-template-columns:1fr!important;gap:2rem!important}.gallery-grid{grid-template-columns:1fr!important}.gallery-ba{grid-template-columns:1fr 1fr!important}.pill-tabs{overflow-x:auto;flex-wrap:nowrap!important;width:100%!important}.admin-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (width<=480px){nav{padding:0 1rem}.nav-logo{font-size:1.2rem}.hero p{font-size:.95rem}.btn-primary,.btn-outline{padding:.8rem 1.6rem;font-size:.78rem}.services-grid{gap:1.2rem}.service-card{padding:1.5rem 1.2rem}.service-name{font-size:1.2rem}.promos-grid{grid-template-columns:1fr}.auth-box{padding:2rem 1.2rem}section{padding:3rem 1rem}footer{padding:2rem 1rem}.gallery-ba{grid-template-columns:1fr!important}}@media (width>=769px) and (width<=1024px){.nav-links a{padding:.4rem .7rem;font-size:.72rem}.services-grid,.promos-grid{grid-template-columns:repeat(2,1fr)}.section-title{font-size:clamp(1.8rem,4vw,3rem)}.contact-grid{grid-template-columns:1fr!important;gap:2rem!important}.gallery-grid{grid-template-columns:repeat(2,1fr)!important}}
