:root{--primary-color: #9b87f5;--secondary-color: #7e69ab;--dark-color: #333;--light-color: #fff;--soft-purple: #e5deff;--sky-blue: #33c3f0;--soft-blue: #d3e4fd;--gray-light: #f4f4f4;--gray-medium: #ddd;--gray-dark: #666;--success-color: #28a745;--error-color: #dc3545;--transition: all 0.3s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:"Montserrat",sans-serif;line-height:1.6;color:var(--dark-color);background-color:var(--light-color)}h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",serif;font-weight:700;line-height:1.2;margin-bottom:1rem}p{margin-bottom:1.5rem}a{text-decoration:none;color:var(--primary-color);transition:var(--transition)}a:hover{color:var(--secondary-color)}ul{list-style:none}img{max-width:100%;height:auto;display:block}.container{width:90%;max-width:1200px;margin:0 auto;padding:0 15px}.section-title{text-align:center;margin-bottom:3rem;position:relative;padding-bottom:1rem}.section-title::after{content:"";position:absolute;width:60px;height:3px;background-color:var(--primary-color);bottom:0;left:50%;transform:translateX(-50%)}.btn{display:inline-block;padding:.8rem 1.5rem;font-weight:600;text-align:center;border-radius:5px;cursor:pointer;transition:var(--transition);text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.btn-primary{background-color:var(--primary-color);color:var(--light-color);border:2px solid var(--primary-color)}.btn-primary:hover{background-color:var(--secondary-color);border-color:var(--secondary-color);color:var(--light-color)}.btn-secondary{background-color:rgba(0,0,0,0);color:var(--primary-color);border:2px solid var(--primary-color)}.btn-secondary:hover{background-color:var(--primary-color);color:var(--light-color)}.center-btn{text-align:center;margin-top:2rem}.header{position:fixed;top:0;left:0;width:100%;z-index:1000;background-color:hsla(0,0%,100%,.95);box-shadow:0 2px 10px rgba(0,0,0,.1)}.header-content{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.logo{font-family:"Playfair Display",serif;font-size:2rem;font-weight:700;color:var(--secondary-color)}.logo:hover{color:var(--primary-color)}.main-nav{display:flex}.nav-links{display:flex}.nav-links li{margin-left:1.5rem}.nav-links a{color:var(--dark-color);font-weight:500;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--primary-color)}.nav-links a.active::after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:2px;background-color:var(--primary-color)}.phone-btn{display:inline-block;padding:.5rem 1rem;background-color:var(--soft-purple);color:var(--secondary-color);border-radius:50px;font-weight:600;transition:var(--transition)}.phone-btn:hover{background-color:var(--primary-color);color:var(--light-color)}.mobile-menu-btn{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--dark-color)}.hero{padding:10rem 0 6rem;background:linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),url("https://images.unsplash.com/photo-1518495973542-4542c06a5843?auto=format&fit=crop&q=80&w=1920") center/cover no-repeat;color:var(--light-color);text-align:center}.hero-content h1{font-size:3.5rem;margin-bottom:1.5rem;font-weight:700}.hero-content p{font-size:1.2rem;max-width:800px;margin:0 auto 2rem}.hero-buttons{display:flex;justify-content:center;gap:1rem}.features{padding:6rem 0;background-color:var(--light-color)}.features-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:2rem}.feature-card{padding:2rem;border-radius:10px;background-color:var(--light-color);box-shadow:0 5px 15px rgba(0,0,0,.05);text-align:center;transition:var(--transition)}.feature-card:hover{transform:translateY(-10px);box-shadow:0 10px 25px rgba(0,0,0,.1)}.feature-icon{font-size:3rem;margin-bottom:1.5rem}.feature-card h3{margin-bottom:1rem;color:var(--secondary-color)}.feature-card p{color:var(--gray-dark)}.about{padding:6rem 0;background-color:var(--soft-purple)}.about-content{display:grid;grid-template-columns:repeat(2, 1fr);gap:3rem;align-items:center}.about-image img{border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.1);width:100%}.about-text h2{color:var(--secondary-color);margin-bottom:1.5rem}.about-text p{margin-bottom:1.5rem}.classes{padding:6rem 0;background-color:var(--light-color)}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:2rem}.class-card{border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.05);transition:var(--transition)}.class-card:hover{transform:translateY(-10px);box-shadow:0 10px 25px rgba(0,0,0,.1)}.class-image{height:200px;overflow:hidden}.class-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.class-card:hover .class-image img{transform:scale(1.1)}.class-content{padding:1.5rem}.class-content h3{color:var(--secondary-color);margin-bottom:.5rem}.class-content p{color:var(--gray-dark);margin-bottom:1rem}.class-price{display:block;font-weight:600;color:var(--primary-color)}.testimonials{padding:6rem 0;background-color:var(--soft-blue);text-align:center}.testimonial-slider{max-width:800px;margin:0 auto 2rem;position:relative}.testimonial{display:none;padding:0 2rem}.testimonial.active{display:block;animation:fadeIn 1s}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.testimonial-content{background-color:var(--light-color);padding:2rem;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.05);position:relative}.testimonial-content::after{content:"";position:absolute;bottom:-15px;left:50%;transform:translateX(-50%);border-width:15px 15px 0;border-style:solid;border-color:var(--light-color) rgba(0,0,0,0) rgba(0,0,0,0)}.testimonial-content p{font-style:italic;color:var(--gray-dark);margin-bottom:1rem}.testimonial-author{margin-top:2rem;font-weight:600;color:var(--secondary-color)}.testimonial-dots{display:flex;justify-content:center;gap:.5rem}.dot{width:12px;height:12px;border-radius:50%;background-color:var(--gray-medium);cursor:pointer;transition:var(--transition)}.dot.active{background-color:var(--primary-color)}.booking{padding:6rem 0;background:linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)),url("https://images.unsplash.com/photo-1470071459604-3b5ec3a7fe05?auto=format&fit=crop&q=80&w=1920") center/cover no-repeat;color:var(--light-color);text-align:center}.booking-content h2{margin-bottom:1.5rem}.booking-info{display:flex;justify-content:center;gap:3rem;margin:3rem 0}.booking-phone h3,.booking-hours h3{margin-bottom:1rem}.phone-link{font-size:1.5rem;font-weight:600;color:var(--primary-color)}.phone-link:hover{color:var(--light-color)}.footer{background-color:var(--dark-color);color:var(--light-color);padding:4rem 0 0}.footer-content{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:2rem;margin-bottom:2rem}.footer-logo h3{color:var(--primary-color);margin-bottom:1rem}.footer-links h4,.footer-contact h4,.footer-hours h4{color:var(--primary-color);margin-bottom:1rem}.footer-links ul li{margin-bottom:.5rem}.footer-links a{color:var(--gray-medium);transition:var(--transition)}.footer-links a:hover{color:var(--primary-color)}.footer-contact p,.footer-hours p{color:var(--gray-medium);margin-bottom:.5rem}.footer-bottom{display:flex;justify-content:space-between;text-align:center;padding:1.5rem 0;border-top:1px solid hsla(0,0%,100%,.1)}.footer-bottom a{color:var(--gray-medium);margin-bottom:0;font-size:.9rem}.footer-bottom a:hover{color:var(--primary-color)}.page-banner{padding:10rem 0 4rem;background:linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),url(assets/images/nice-pose-67f92441b2fb9.webp) center/cover no-repeat;color:var(--light-color);text-align:center}.page-banner h1{font-size:3rem;margin-bottom:1rem}.gallery-categories{padding:6rem 0}.gallery-filters{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1.5rem;background-color:var(--gray-light);border:none;border-radius:5px;cursor:pointer;transition:var(--transition);font-weight:500}.filter-btn.active,.filter-btn:hover{background-color:var(--primary-color);color:var(--light-color)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));gap:1.5rem}.gallery-item{position:relative;border-radius:10px;overflow:hidden;height:280px;transition:var(--transition)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.gallery-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.7);display:flex;flex-direction:column;justify-content:center;align-items:center;color:var(--light-color);padding:1.5rem;text-align:center;opacity:0;transition:var(--transition)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay h3{margin-bottom:.5rem}.gallery-overlay p{margin-bottom:0;font-size:.9rem}.gallery-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.9);display:flex;justify-content:center;align-items:center;z-index:2000;cursor:pointer}.modal-content{position:relative;max-width:90%;max-height:90vh}.modal-content img{max-width:100%;max-height:90vh;border:5px solid var(--light-color)}.modal-close{position:absolute;top:-40px;right:-40px;color:var(--light-color);font-size:2rem;cursor:pointer}.cta-section{padding:5rem 0;background-color:var(--soft-purple);text-align:center}.cta-content h2{color:var(--secondary-color);margin-bottom:1rem}.cta-content p{max-width:600px;margin:0 auto 2rem}.contact-section{padding:6rem 0}.contact-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:4rem;align-items:start}.contact-info h2,.contact-form-container h2{margin-bottom:2rem;color:var(--secondary-color)}.contact-details{margin-bottom:3rem}.contact-item{display:flex;margin-bottom:2rem}.contact-icon{font-size:2rem;margin-right:1.5rem;color:var(--primary-color)}.contact-text h3{margin-bottom:.5rem}.social-links h3{margin-bottom:1rem}.social-icons{display:flex;gap:1rem}.social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:var(--soft-purple);color:var(--primary-color);transition:var(--transition);font-weight:600}.social-icon:hover{background-color:var(--primary-color);color:var(--light-color)}.contact-form{background-color:var(--light-color);padding:2rem;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.05)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.8rem;border:1px solid var(--gray-medium);border-radius:5px;font-family:"Montserrat",sans-serif}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.checkbox-group{display:flex;align-items:start}.checkbox-group input{width:auto;margin-right:.8rem;margin-top:.3rem}.checkbox-group label{font-size:.9rem;margin-bottom:0}.form-message{margin-top:1.5rem;padding:1rem;border-radius:5px;font-weight:500}.form-message.success{background-color:var(--success-color);color:var(--light-color)}.form-message.error{background-color:var(--error-color);color:var(--light-color)}.map-section{padding:6rem 0;background-color:var(--gray-light)}.map-container{margin-bottom:3rem;border-radius:10px;overflow:hidden;box-shadow:0 5px 15px rgba(0,0,0,.1)}.directions h3{text-align:center;margin-bottom:2rem;color:var(--secondary-color)}.directions-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:2rem;text-align:center}.direction-item{background-color:var(--light-color);padding:1.5rem;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.05)}.direction-icon{font-size:2rem;margin-bottom:1rem;color:var(--primary-color)}.direction-item h4{margin-bottom:.5rem}.direction-item p{font-size:.9rem;margin-bottom:0}@media screen and (max-width: 992px){.about-content{grid-template-columns:1fr}.about-image{margin-bottom:2rem}.contact-grid{grid-template-columns:1fr}}@media screen and (max-width: 768px){h1{font-size:2.5rem}h2{font-size:2rem}.hero-content h1{font-size:2.5rem}.mobile-menu-btn{display:block}.main-nav{position:absolute;top:100%;left:0;width:100%;background-color:hsla(0,0%,100%,.95);box-shadow:0 5px 10px rgba(0,0,0,.1);clip-path:polygon(0 0, 100% 0, 100% 0, 0 0);transition:var(--transition)}.nav-links{flex-direction:column;padding:1rem 0}.nav-links li{margin:.5rem 0;text-align:center}.nav-links.active{clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%)}.phone-btn{display:none}.booking-info{flex-direction:column;gap:2rem}.hero-buttons{flex-direction:column;align-items:center}.hero-buttons .btn{width:80%;margin-bottom:1rem}}@media screen and (max-width: 576px){.gallery-filters{flex-direction:column;align-items:center}.filter-btn{width:80%}.feature-card,.class-card{padding:1.5rem}.footer-content{grid-template-columns:1fr;text-align:center}}.brew-terms{padding:100px 0 0}.brew-privacy{padding:100px 0 0}.brew-cookies-policy{padding:100px 0 0}
