@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700&family=Inter:wght@300;400;600&display=swap";:root{--primary: #0F172A;--secondary: #38BDF8;--accent: #94A3B8;--bg-dark: #1E293B;--bg-light: #F8FAFC;--text-primary: #F1F5F9;--text-secondary: #94A3B8;--glass: rgba(30, 41, 59, .7);--glass-border: rgba(255, 255, 255, .1);--shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:var(--primary);color:var(--text-primary);line-height:1.6;overflow-x:hidden}h1,h2,h3{font-family:Playfair Display,serif;font-weight:700}section{padding:5rem 2rem;max-width:1200px;margin:0 auto}.glass-card{background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--shadow)}.btn-primary{background-color:var(--secondary);color:var(--primary);padding:.8rem 2rem;border-radius:50px;text-decoration:none;font-weight:600;transition:var(--transition);display:inline-block;border:none;cursor:pointer}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #38bdf866;background-color:#7dd3fc}.grid{display:grid;gap:2rem}@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .8s ease-out,transform .8s ease-out}.fade-in.visible{opacity:1;transform:translateY(0)}.hero-load-in{animation:heroFadeIn 1.2s cubic-bezier(.22,1,.36,1) forwards}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.navbar{position:fixed;top:1rem;left:50%;transform:translate(-50%);width:90%;max-width:1000px;z-index:1000;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{font-family:Playfair Display,serif;font-size:1.5rem;color:var(--secondary)}.nav-menu{display:flex;gap:2rem}.nav-link{color:var(--text-primary);text-decoration:none;font-weight:500}.nav-book-btn{padding:.5rem 1.2rem;font-size:.9rem}@media(max-width:768px){.navbar{width:95%;padding:.8rem 1rem}.nav-logo{font-size:1.2rem}.nav-menu{gap:1rem}.nav-link{font-size:.85rem}}@media(max-width:480px){.nav-menu{display:none}.navbar{padding:.8rem 1.5rem}}.hero-section{height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;overflow:hidden;padding-top:5rem}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.hero-background img{width:100%;height:100%;object-fit:cover;filter:brightness(.4)}.hero-title{font-size:clamp(2.5rem,8vw,5rem);margin-bottom:.5rem}.hero-subtitle{font-size:1.8rem;color:var(--secondary);margin-bottom:1rem;font-family:Playfair Display,serif}.hero-text{font-size:1.1rem;margin-bottom:2rem;color:var(--text-secondary);max-width:600px;margin-inline:auto}.section-header{text-align:center;font-size:2.5rem;margin-bottom:3rem}.section-header-small{text-align:center;margin-bottom:2rem}.service-card-reset{overflow:hidden;text-align:center;transition:var(--transition)}.service-image{width:100%;height:200px;object-fit:cover}.service-card-body{padding:1.5rem}.service-price{color:var(--secondary);font-weight:600;font-size:1.2rem;margin:.5rem 0}.service-desc{font-size:.9rem;color:var(--text-secondary)}.booking-section{background-color:var(--bg-dark)}.booking-card{max-width:800px;margin:0 auto;padding:2rem;text-align:center}.booking-card h2{margin-bottom:2rem}.vagaro-wrapper{min-height:600px;background:#ffffff0d;border-radius:8px;overflow:hidden;padding:1rem}.vagaro-title{font-size:23px;color:var(--text-primary);font-family:Playfair Display,serif;line-height:24px;padding:18px 10px 8px;text-align:center;box-sizing:border-box}.vagaro-embed{width:100%;padding:0;border:0;margin:0 auto;text-align:center}.about-title{font-size:2.5rem;margin-bottom:1.5rem}.about-p{margin-bottom:1.5rem}.info-card{padding:2rem}.info-card h3{margin-bottom:1rem}.info-card h3.hours-title{margin-top:1.5rem}.info-list{list-style:none}.info-list li{margin-bottom:.8rem}.info-list a{color:var(--secondary);text-decoration:none}.hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;font-size:.9rem}.hours-highlight{color:var(--secondary)}.map-wrapper{height:400px;border-radius:12px;overflow:hidden}.parking-card{padding:2rem}.parking-card h3,.parking-card p{margin-bottom:1rem}.parking-list{padding-left:1.2rem}.parking-list li{margin-bottom:.5rem}.map-btn{margin-top:1.5rem}.footer-area{padding:3rem 2rem;border-top:1px solid var(--glass-border);text-align:center;color:var(--text-secondary)}.map-frame{border:0}.vagaro-link{font-size:14px;color:#aaa;text-decoration:none}
