:root{--color-beige: #f3efe7;--color-raisin: #5d3f6a;--color-apricot: #f28c6c;--color-teal: #3e6e78;--color-sage: #c9dbc8;--color-charcoal: #2e2e2e;--color-light: #fdfdfd;--color-white: #ffffff;--font-heading: "Montserrat", sans-serif;--font-body: "Lato", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 3rem;--spacing-xl: 4rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);--shadow-md: 0 4px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-charcoal);background-color:var(--color-light);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;margin-bottom:var(--spacing-sm)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:var(--spacing-sm)}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;transition:all .3s ease}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.bg-beige{background-color:var(--color-beige)}.bg-raisin{background-color:var(--color-raisin)}.bg-apricot{background-color:var(--color-apricot)}.bg-teal{background-color:var(--color-teal)}.bg-sage{background-color:var(--color-sage)}.bg-white{background-color:var(--color-white)}.hidden{display:none!important}.text-raisin{color:var(--color-raisin)}.text-apricot{color:var(--color-apricot)}.text-teal{color:var(--color-teal)}.text-light{color:var(--color-light)}.text-charcoal{color:var(--color-charcoal)}.card-sage{background-color:var(--color-sage);background-image:linear-gradient(135deg,var(--color-sage) 0%,rgba(201,219,200,.8) 100%)}.navbar{position:fixed;top:0;width:100%;background-color:#fdfdfdf2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);z-index:1000;transition:all .3s ease}.navbar .container{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);flex-wrap:nowrap;gap:var(--spacing-md)}.nav-brand{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.nav-logo{height:50px;width:auto;object-fit:contain}.logo{font-size:1.5rem;font-weight:700;margin:0}.nav-menu{display:flex;list-style:none;align-items:center;gap:var(--spacing-md)}.nav-link{font-weight:500;color:var(--color-charcoal);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all .3s ease;position:relative}.nav-link:hover{color:var(--color-raisin);background-color:#5d3f6a1a}.nav-link.active{color:var(--color-raisin);font-weight:600}.nav-link.active:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--color-apricot);border-radius:1px}.nav-cta{margin-left:var(--spacing-sm)}.nav-btn{padding:.5rem 1rem;font-size:.9rem;white-space:nowrap}.nav-btn i{margin-right:.5rem}.btn-language{background-color:transparent;border:2px solid var(--color-raisin);color:var(--color-raisin);padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .3s ease}.btn-language:hover{background-color:var(--color-raisin);color:var(--color-light)}.nav-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:.5rem;margin-left:auto}.nav-toggle span{width:25px;height:3px;background-color:var(--color-charcoal);margin:3px 0;transition:all .3s ease;border-radius:2px}.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--color-raisin);padding-top:clamp(120px,12vh,180px)}@media(min-width:1200px){.hero{padding-top:180px}}.hero-bg-video{position:absolute;top:0;left:0;width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;z-index:1}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#5d3f6a66,#5d3f6a80);z-index:2}.hero-content{position:relative;text-align:center;z-index:3;max-width:800px;padding:var(--spacing-lg)}.hero-content .btn{box-shadow:0 8px 20px #f28c6c66;background-color:var(--color-apricot);transition:all .3s ease}.hero-content .btn:hover{box-shadow:0 12px 30px #f28c6c99;transform:translateY(-2px)}.hero-logos{margin-top:var(--spacing-md)}.hero-logos-panel{display:inline-block;margin:0 auto;padding:.6rem .9rem;border-radius:var(--radius-lg);background:#fdfdfde6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 12px 30px #00000040;border:1px solid rgba(255,255,255,.6)}.hero-logos-img{width:100%;max-width:680px;margin:0 auto;display:block;opacity:.95}.hero-logo{display:flex;flex-direction:column;align-items:center;line-height:.95;margin-bottom:var(--spacing-md);animation:fadeInUp 1s ease;text-shadow:2px 4px 16px rgba(0,0,0,.5);font-family:Comfortaa,sans-serif;font-weight:700;color:var(--color-light);text-transform:lowercase;letter-spacing:-.01em}.hero-logo-line1{font-size:clamp(1.8rem,8vw,6rem)}.hero-logo-line2{font-size:clamp(1.2rem,5.5vw,4.5rem);margin-top:.15em}.hero-logo-line3{font-size:clamp(.9rem,3.5vw,2.8rem);letter-spacing:.3em;opacity:.85}.hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:var(--spacing-md);animation:fadeInUp 1s ease;text-shadow:2px 2px 8px rgba(0,0,0,.7);color:var(--color-light);text-transform:uppercase;letter-spacing:.5px}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.5rem);color:var(--color-light);margin-bottom:var(--spacing-lg);opacity:.95;animation:fadeInUp 1s ease .2s backwards;text-shadow:1px 1px 4px rgba(0,0,0,.6)}.btn{display:inline-block;padding:.75rem 2rem;border-radius:var(--radius-md);font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;cursor:pointer;border:none;font-size:.95rem}.btn-apricot{background-color:var(--color-apricot);color:var(--color-white);border:2px solid var(--color-apricot);box-shadow:0 4px 12px #f28c6c4d}.btn-apricot:hover{background-color:#e87b5a;transform:translateY(-2px);box-shadow:0 6px 20px #f28c6c66}.btn-teal{background-color:var(--color-teal);color:var(--color-white)}.btn-teal:hover{background-color:#2f5861;transform:translateY(-2px)}.btn-outline-raisin{background-color:transparent;color:var(--color-raisin);border:2px solid var(--color-raisin)}.btn-outline-raisin:hover{background-color:var(--color-raisin);color:var(--color-white)}.btn-outline-white{background-color:transparent;color:var(--color-white);border:2px solid var(--color-white)}.btn-outline-white:hover{background-color:var(--color-white);color:var(--color-raisin)}.btn-small{padding:.5rem 1.5rem;font-size:.875rem}section{padding:var(--spacing-xl) 0}.section-title{text-align:center;font-size:2.5rem;margin-bottom:var(--spacing-lg);position:relative}.section-title:after{content:"";display:block;width:60px;height:4px;background-color:var(--color-apricot);margin:var(--spacing-sm) auto 0;border-radius:2px}.welcome{background-color:var(--color-light);padding:var(--spacing-xl) 0}.welcome-text{max-width:780px;margin:0 auto;text-align:center;font-size:1.15rem;line-height:1.8;color:var(--color-charcoal)}.welcome-closing{font-size:1.35rem;font-weight:600;color:var(--color-raisin);margin-top:var(--spacing-md)}.category-accordion{margin-bottom:var(--spacing-md)}.category-banner{position:relative;width:100%;height:120px;border:none;border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;padding:0;display:block;text-align:left;transition:box-shadow .3s ease}.category-banner:hover{box-shadow:var(--shadow-lg)}.category-banner-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.category-banner-img--blurred{filter:blur(6px);transform:scale(1.05)}.course-single-card{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);max-width:900px;margin:0 auto;padding:var(--spacing-lg)}#studios .course-single-card{grid-template-columns:2fr 1fr;max-width:1400px}#studios .studio-image{cursor:pointer;transition:transform .3s ease}#studios .studio-image:hover{transform:scale(1.02)}.course-single-card .studio-image-wrapper{padding-top:0;aspect-ratio:auto;border-radius:var(--radius-lg)}.course-single-card .studio-image{position:relative;width:100%;height:auto;object-fit:contain}@media(max-width:768px){.course-single-card{grid-template-columns:1fr}}.legal-page{padding:var(--spacing-xl) 0;background:var(--color-beige);min-height:70vh}.legal-page h1{color:var(--color-raisin);margin-bottom:var(--spacing-lg);font-family:var(--font-heading)}.legal-page h2{color:var(--color-raisin);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);font-family:var(--font-heading)}.legal-page h3{color:var(--color-raisin);margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs);font-family:var(--font-heading)}.legal-page p,.legal-page li{line-height:1.6;margin-bottom:var(--spacing-sm);color:var(--color-raisin)}.legal-page a{color:var(--color-teal);text-decoration:underline}.legal-page ul{margin-left:var(--spacing-md);margin-bottom:var(--spacing-sm)}.mieter-divider{border:none;border-top:2px solid var(--color-sage);margin:var(--spacing-lg) 0;opacity:.4}.category-banner-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#5d3f6ad9,#3e6e78bf);display:flex;align-items:center;gap:var(--spacing-md);padding:0 var(--spacing-lg);color:var(--color-light)}.category-banner-overlay>i:first-child{font-size:2rem;opacity:.9}.category-banner-label{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;flex:1}.category-chevron{font-size:1.2rem;transition:transform .3s ease}.category-banner[aria-expanded=true] .category-chevron{transform:rotate(180deg)}.category-panel{max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.4,0,.2,1)}.category-panel .studios-grid{margin-top:var(--spacing-lg)}.studios{background-color:var(--color-beige);padding:var(--spacing-xl) 0}.studios-carousel .studios-scroll{display:flex;gap:var(--spacing-md);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:var(--spacing-sm)}.studios-carousel .studios-scroll::-webkit-scrollbar{height:8px}.studios-carousel .studios-scroll::-webkit-scrollbar-track{background:var(--color-beige);border-radius:4px}.studios-carousel .studios-scroll::-webkit-scrollbar-thumb{background:var(--color-sage);border-radius:4px}.studio-slide{flex:0 0 80%;scroll-snap-align:start;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.studio-slide:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.studio-slide-image{width:100%;height:360px;overflow:hidden}.studio-slide-image img{width:100%;height:100%;object-fit:cover;display:block}.studio-slide-content{padding:var(--spacing-md)}.studio-slide-content h3{margin-bottom:var(--spacing-sm);color:var(--color-raisin)}.studios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.studio-card{background:var(--color-white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);transition:all .4s ease;position:relative}.studio-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.studio-image-wrapper{position:relative;width:100%;padding-top:100%;overflow:hidden}.studio-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.studio-image-gradient{background:linear-gradient(135deg,var(--color-sage) 0%,var(--color-teal) 100%)}.studio-card:hover .studio-image{transform:scale(1.1)}.studio-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#5d3f6acc,#3e6e7899);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease}.studio-card:hover .studio-overlay{opacity:1}.studio-icon{font-size:3rem;color:var(--color-light);text-shadow:0 2px 8px rgba(0,0,0,.3);transform:scale(.8);transition:transform .4s ease}.studio-card:hover .studio-icon{transform:scale(1)}.studio-content{padding:var(--spacing-lg)}.studio-name{font-size:1.5rem;color:var(--color-raisin);margin-bottom:var(--spacing-sm);font-weight:600}.studio-description{color:var(--color-charcoal);line-height:1.6;margin-bottom:var(--spacing-sm);font-size:.95rem}.studio-features{color:var(--color-teal);font-size:.9rem;font-weight:500;margin-bottom:var(--spacing-md);line-height:1.5}.studio-content .btn{width:100%;justify-content:center;margin-top:var(--spacing-sm)}.testimonials{background:linear-gradient(135deg,var(--color-light) 0%,var(--color-beige) 100%);padding:var(--spacing-xl) 0;position:relative;overflow:hidden}.testimonials:before{content:"";position:absolute;top:-50%;right:-20%;width:40%;height:200%;background:radial-gradient(circle,rgba(93,63,106,.05) 0%,transparent 70%);border-radius:50%}.testimonials-carousel{position:relative;max-width:1000px;margin:0 auto;padding:var(--spacing-lg) 0}.testimonials-track{display:flex;width:400%;transition:transform .4s cubic-bezier(.4,0,.2,1);will-change:transform}.testimonial-card{flex:0 0 25%;background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-right:var(--spacing-lg);box-shadow:0 10px 30px #0000001a;position:relative;transition:all .3s ease}.testimonial-card:last-child{margin-right:0}.testimonial-card:before{content:"“";position:absolute;top:-20px;left:30px;font-size:4rem;color:var(--color-apricot);font-family:Georgia,serif;opacity:.3}.testimonial-content{position:relative;z-index:2}.stars{display:flex;gap:4px;margin-bottom:var(--spacing-md)}.stars i{color:gold;font-size:1.2rem}.testimonial-text{font-size:1.1rem;line-height:1.7;color:var(--color-charcoal);margin-bottom:var(--spacing-lg);font-style:italic}.testimonial-author{display:flex;align-items:center;gap:var(--spacing-md)}.author-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;flex-shrink:0}.author-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-raisin) 0%,var(--color-teal) 100%);display:flex;align-items:center;justify-content:center;color:var(--color-light);font-weight:600;font-size:1.2rem}.author-info h4{margin:0 0 4px;color:var(--color-raisin);font-weight:600}.author-info span{color:var(--color-teal);font-size:.9rem}.testimonials-nav{display:flex;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.nav-dot{width:12px;height:12px;border-radius:50%;border:none;background:#5d3f6a4d;cursor:pointer;transition:all .3s ease}.nav-dot.active{background:var(--color-raisin);transform:scale(1.2)}.nav-dot:hover{background:var(--color-apricot);transform:scale(1.1)}.trust-indicators{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid rgba(93,63,106,.1)}.trust-item{text-align:center;padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all .3s ease}.trust-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.trust-number{font-size:2.5rem;font-weight:700;color:var(--color-raisin);margin-bottom:var(--spacing-xs);font-family:var(--font-heading)}.trust-label{color:var(--color-charcoal);font-size:.95rem;opacity:.8}.testimonial-card{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.4,0,.2,1)}.testimonial-card.animate-in{opacity:1;transform:translateY(0)}.trust-item{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.4,0,.2,1)}.trust-item.animate-in{opacity:1;transform:translateY(0)}.trust-item:nth-child(1){transition-delay:.1s}.trust-item:nth-child(2){transition-delay:.2s}.trust-item:nth-child(3){transition-delay:.3s}.trust-item:nth-child(4){transition-delay:.4s}.faq{background-color:var(--color-beige);padding:var(--spacing-xl) 0}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.faq-category{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:all .3s ease}.faq-category:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.faq-category-title{color:var(--color-raisin);font-size:1.5rem;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-apricot);position:relative}.faq-category-title:after{content:"";position:absolute;bottom:-2px;left:0;width:30%;height:2px;background:var(--color-teal)}.faq-item{margin-bottom:var(--spacing-md);border:1px solid rgba(93,63,106,.1);border-radius:var(--radius-sm);overflow:hidden;transition:all .3s ease}.faq-item:hover{border-color:var(--color-apricot);box-shadow:0 4px 12px #f28c6c1a}.faq-question{width:100%;background:none;border:none;padding:var(--spacing-md);text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:1rem;font-weight:600;color:var(--color-charcoal);transition:all .3s ease}.faq-question:hover{background:#5d3f6a0d;color:var(--color-raisin)}.faq-question[aria-expanded=true]{background:#f28c6c1a;color:var(--color-raisin)}.faq-icon{color:var(--color-apricot);transition:transform .3s ease;font-size:.9rem}.faq-question[aria-expanded=true] .faq-icon{transform:rotate(180deg);color:var(--color-raisin)}.faq-answer{max-height:0;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);opacity:0}.faq-answer.open{max-height:200px;opacity:1}.faq-answer p{padding:0 var(--spacing-md) var(--spacing-md);line-height:1.6;color:var(--color-charcoal);margin:0}.faq-contact{background:linear-gradient(135deg,var(--color-raisin) 0%,var(--color-teal) 100%);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;margin-top:var(--spacing-xl);color:var(--color-light)}.faq-contact h3{color:var(--color-light);margin-bottom:var(--spacing-sm)}.faq-contact p{color:#ffffffe6;margin-bottom:var(--spacing-lg)}.faq-contact-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.faq-contact-buttons .btn{min-width:160px}.faq-contact-buttons .btn i{margin-right:var(--spacing-xs)}.faq-category{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.4,0,.2,1)}.faq-category.animate-in{opacity:1;transform:translateY(0)}.faq-category:nth-child(1){transition-delay:.1s}.faq-category:nth-child(2){transition-delay:.2s}.faq-category:nth-child(3){transition-delay:.3s}.faq-category:nth-child(4){transition-delay:.4s}.studio-card{opacity:0;transform:translateY(40px) scale(.95);transition:all .8s cubic-bezier(.4,0,.2,1)}.studio-card.animate-in{opacity:1;transform:translateY(0) scale(1)}.studio-card:nth-child(1){transition-delay:.1s}.studio-card:nth-child(2){transition-delay:.2s}.studio-card:nth-child(3){transition-delay:.3s}.studio-card:nth-child(4){transition-delay:.4s}.studio-card:nth-child(5){transition-delay:.5s}.studio-card:nth-child(6){transition-delay:.6s}.studio-card{position:relative;overflow:hidden}.studio-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s ease;z-index:2}.studio-card:hover:before{left:100%}.section-title{opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.4,0,.2,1)}.section-title.animate-in{opacity:1;transform:translateY(0)}.event-card{opacity:0;transform:translate(-30px) rotate(-2deg);transition:all .6s cubic-bezier(.4,0,.2,1)}.event-card.animate-in{opacity:1;transform:translate(0) rotate(0)}.event-card:nth-child(odd).animate-in{transform:translate(0) rotate(1deg)}.event-card:nth-child(2n).animate-in{transform:translate(0) rotate(-1deg)}.events{background-color:var(--color-light);overflow:hidden}.events-scroll{display:flex;gap:var(--spacing-md);overflow-x:auto;scroll-snap-type:x mandatory;padding:var(--spacing-sm) 0;scrollbar-width:thin;scrollbar-color:var(--color-sage) var(--color-beige)}.findus-wrapper{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-xl);align-items:start}.map-embed iframe{width:100%;height:420px;border:0;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.findus-info h3{color:var(--color-raisin);margin-bottom:var(--spacing-sm)}@media(max-width:768px){.findus-wrapper{grid-template-columns:1fr}}@media(max-width:1100px){.nav-toggle{display:flex}.nav-menu{position:fixed;left:-100%;top:70px;flex-direction:column;background-color:#fdfdfdfa;width:100%;text-align:center;transition:.3s;box-shadow:0 10px 27px #0000000d;padding:var(--spacing-md);gap:var(--spacing-sm)}.nav-menu.active{left:0}.nav-cta{margin-left:0;margin-top:var(--spacing-sm)}.nav-btn{width:100%;justify-content:center}}@media(max-width:1280px){.nav-menu{gap:var(--spacing-sm)}.nav-btn{padding:.4rem .8rem}}.events-scroll::-webkit-scrollbar{height:8px}.events-scroll::-webkit-scrollbar-track{background:var(--color-beige);border-radius:4px}.events-scroll::-webkit-scrollbar-thumb{background:var(--color-sage);border-radius:4px}.event-card{flex:0 0 300px;padding:var(--spacing-md);border-radius:var(--radius-md);box-shadow:var(--shadow-md);scroll-snap-align:start;transition:all .3s ease}.event-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.event-image-container{width:100%;height:150px;margin-bottom:var(--spacing-sm);border-radius:var(--radius-sm);overflow:hidden}.event-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.event-card:hover .event-image{transform:scale(1.03)}.event-date{display:inline-flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);border-radius:var(--radius-sm);color:var(--color-white);margin-bottom:var(--spacing-sm)}.event-date .day{font-size:1.5rem;font-weight:700;line-height:1}.event-date .month{font-size:.875rem;text-transform:uppercase}.event-title{font-size:1.25rem;margin-bottom:var(--spacing-sm);color:var(--color-charcoal)}.event-info{font-size:.9rem;color:var(--color-charcoal);opacity:.7;margin-bottom:var(--spacing-xs)}.event-info i{margin-right:.5rem;color:var(--color-teal)}.event-description{font-size:.9rem;color:var(--color-charcoal);opacity:.8;line-height:1.5;margin:var(--spacing-sm) 0}.schedule{background-color:var(--color-beige)}.schedule-wrapper{overflow-x:auto;margin-top:var(--spacing-lg)}.schedule-table{width:100%;min-width:800px;border-collapse:collapse;background-color:var(--color-white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}.schedule-table th,.schedule-table td{padding:var(--spacing-sm);text-align:center;border:1px solid rgba(0,0,0,.05)}.schedule-table th{background-color:var(--color-raisin);color:var(--color-white);font-weight:600;text-transform:uppercase;font-size:.875rem;letter-spacing:.5px}.schedule-table .time{background-color:var(--color-beige);font-weight:600;color:var(--color-charcoal)}.class-yoga{background-color:#f28c6c33;color:var(--color-charcoal);font-weight:500}.class-fitness{background-color:#3e6e7833;color:var(--color-charcoal);font-weight:500}.class-dance{background-color:#5d3f6a33;color:var(--color-charcoal);font-weight:500}.class-creative{background-color:#c9dbc880;color:var(--color-charcoal);font-weight:500}.class-kids{background-color:#f3efe7cc;color:var(--color-charcoal);font-weight:500}.schedule-table small{display:block;font-size:.75rem;opacity:.7;margin-top:.25rem}.booking{background-color:var(--color-light);padding:var(--spacing-xl) 0}.booking-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);align-items:center;margin-top:var(--spacing-lg)}.booking-info h3{font-size:1.75rem;margin-bottom:var(--spacing-md);color:var(--color-raisin)}.booking-features{list-style:none;margin:var(--spacing-md) 0}.booking-features li{padding:var(--spacing-sm) 0;display:flex;align-items:center;gap:var(--spacing-sm)}.booking-features i{font-size:1.2rem}.placeholder-image{width:100%;height:400px;border-radius:var(--radius-lg);position:relative;overflow:hidden}.placeholder-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--color-sage) 0%,rgba(201,219,200,.6) 100%)}.booking-photo{width:100%;height:400px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.host-event{background-color:var(--color-beige)}.weddings-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);align-items:stretch}.weddings-images{display:flex;flex-direction:column;gap:.4rem;min-height:600px}.wedding-img{width:100%;flex:1;object-fit:cover;border-radius:var(--radius-md);display:block;min-height:0}.weddings-text p{margin-bottom:var(--spacing-md);line-height:1.7}.weddings-features{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin:var(--spacing-md) 0}.weddings-feature-group h4{font-size:1rem;margin-bottom:.5rem}.weddings-feature-group ul{list-style:none;padding:0;margin:0}.weddings-feature-group ul li{font-size:.9rem;color:#555;padding:.3rem 0;border-bottom:1px solid #eee;display:flex;align-items:center;gap:.5rem}.weddings-feature-group ul li i{flex-shrink:0;font-size:.85rem}.weddings-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin:var(--spacing-md) 0}@media(max-width:768px){.weddings-content{grid-template-columns:1fr}}.host-event-content{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--spacing-xl);align-items:start;margin-top:var(--spacing-lg)}.host-event-intro h3{font-size:1.75rem;margin-bottom:var(--spacing-sm);color:var(--color-raisin)}.host-event-features{list-style:none;margin:var(--spacing-md) 0 var(--spacing-sm)}.host-event-features li{display:flex;align-items:center;gap:var(--spacing-sm);padding:.4rem 0}.host-event-badges{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin:var(--spacing-md) 0 var(--spacing-md)}.badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border-radius:999px;background:var(--color-white);box-shadow:var(--shadow-sm);font-size:.9rem}.host-event-ctas{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-top:var(--spacing-sm)}.event-form{padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.event-form h3{color:var(--color-raisin);margin-bottom:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.event-form .form-input,.event-form select{border:2px solid var(--color-beige);min-width:0;text-overflow:ellipsis;padding-right:2rem;font-size:.85rem}.form-hint{font-size:.9rem;opacity:.8;margin-top:var(--spacing-sm)}.host-event-intro,.event-form{opacity:0;transform:translateY(30px);transition:all .7s cubic-bezier(.4,0,.2,1)}.host-event-intro.animate-in,.event-form.animate-in{opacity:1;transform:translateY(0)}.about{background-color:var(--color-beige)}.lead-text{font-size:1.25rem;text-align:center;max-width:800px;margin:0 auto var(--spacing-xl);color:var(--color-charcoal);line-height:1.8}.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.about-item{text-align:center;padding:var(--spacing-md)}.about-item i{font-size:3rem;margin-bottom:var(--spacing-md)}.about-images-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.about-dual-image{width:100%;height:350px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.about-text-block{max-width:900px;margin:0 auto;text-align:center;padding:0 var(--spacing-md)}.about-text-block p{font-size:1.1rem;line-height:1.8;margin-bottom:var(--spacing-md)}.cafe{background:var(--color-beige)}.cafe-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--spacing-xl);align-items:start;margin-top:var(--spacing-lg)}.cafe-copy h3{color:var(--color-raisin);margin-bottom:var(--spacing-sm)}.cafe-features{list-style:none;margin:var(--spacing-md) 0 0}.cafe-features li{display:flex;align-items:center;gap:var(--spacing-sm);padding:.4rem 0}.cafe-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.cafe-photo{width:100%;height:220px;object-fit:cover;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.cafe-copy{opacity:0;transform:translateY(30px);transition:all .7s cubic-bezier(.4,0,.2,1)}.cafe-photo{opacity:0;transform:translateY(20px);transition:all .6s cubic-bezier(.4,0,.2,1)}.cafe-copy.animate-in,.cafe-photo.animate-in{opacity:1;transform:translateY(0)}@media(max-width:992px){.cafe-grid{grid-template-columns:1fr}.cafe-gallery{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.cafe-gallery{grid-template-columns:1fr 1fr}.cafe-photo{height:180px}}.about-item h3{margin-bottom:var(--spacing-sm);color:var(--color-charcoal)}.teachers{background-color:var(--color-light);padding:var(--spacing-xl) 0}.teachers-hero-image{text-align:center;margin-bottom:var(--spacing-xl);display:flex;justify-content:center}.trainers-group-photo{width:100%;max-width:800px;height:400px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin:0 auto}.teachers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.teacher-card{text-align:center;padding:var(--spacing-md);background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:all .3s ease}.teacher-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.teacher-image{width:150px;height:150px;border-radius:50%;margin:0 auto var(--spacing-md);position:relative;overflow:hidden}.teacher-image:before{content:none}.teacher-photo{width:100%;height:100%;object-fit:cover;display:block}.teacher-name{font-size:1.25rem;color:var(--color-raisin);margin-bottom:.5rem}.teacher-role{font-size:1rem;color:var(--color-apricot);font-weight:600;margin-bottom:var(--spacing-sm)}.teacher-bio{font-size:.95rem;color:var(--color-charcoal);opacity:.8;line-height:1.6}.contact{background-color:var(--color-light);padding:var(--spacing-xl) 0}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.contact-item{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.contact-item i{font-size:1.5rem;flex-shrink:0}.contact-item h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--color-raisin)}.contact-map iframe{width:100%;height:420px;border:0;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.form-input{width:100%;padding:var(--spacing-sm);margin-bottom:var(--spacing-sm);border:2px solid var(--color-beige);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:1rem;transition:all .3s ease}.form-input:focus{outline:none;border-color:var(--color-sage)}textarea.form-input{resize:vertical}.footer{background-color:var(--color-teal);color:var(--color-light);padding:var(--spacing-xl) 0 var(--spacing-md)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.footer-brand{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.footer-logo{height:45px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}.footer-section h3,.footer-section h4{margin-bottom:var(--spacing-md)}.social-links{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:#ffffff1a;border-radius:50%;transition:all .3s ease}.social-link:hover{background-color:#fff3;transform:translateY(-2px)}.footer-links{list-style:none}.footer-links li{margin-bottom:var(--spacing-xs)}.footer-links a{opacity:.9;transition:opacity .3s ease}.footer-links a:hover{opacity:1}.footer-bottom{text-align:center;padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);opacity:.8}.studio-slide-image{position:relative;cursor:pointer}.studio-slide-zoom-hint{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:36px;height:36px;background:#00000080;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-white);font-size:.9rem;opacity:0;transition:opacity .3s ease;pointer-events:none}.studio-slide-image:hover .studio-slide-zoom-hint{opacity:1}.studio-lightbox{position:fixed;inset:0;z-index:2000;background:#000000d9;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}.studio-lightbox.active{opacity:1;pointer-events:auto}.studio-lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-sm);box-shadow:0 8px 40px #00000080}.studio-lightbox-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:none;border:none;color:var(--color-white);font-size:2.5rem;cursor:pointer;line-height:1;padding:.25rem .5rem;transition:opacity .3s ease;z-index:2001}.studio-lightbox-close:hover{opacity:.7}.studio-lightbox-caption{color:var(--color-white);font-family:var(--font-heading);font-size:1.1rem;font-weight:500;margin-top:var(--spacing-sm);text-align:center;opacity:.9}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.nav-toggle{display:flex}.nav-logo{height:42px}.logo{font-size:1.25rem}.nav-menu{position:fixed;left:-100%;top:70px;flex-direction:column;background-color:#fdfdfdfa;width:100%;text-align:center;transition:.3s;box-shadow:0 10px 27px #0000000d;padding:var(--spacing-md);gap:var(--spacing-sm)}.nav-menu.active{left:0}.nav-cta{margin-left:0;margin-top:var(--spacing-sm)}.nav-btn{width:100%;justify-content:center}.hero{height:80vh;min-height:500px}.hero-overlay{background:linear-gradient(135deg,#5d3f6a80,#5d3f6a99)}.hero-content{padding:var(--spacing-md)}.testimonial-card{padding:var(--spacing-md);margin-right:var(--spacing-sm)}.testimonial-text{font-size:1rem}.hero-title{text-shadow:2px 2px 12px rgba(0,0,0,.8)}.hero-subtitle{text-shadow:1px 1px 6px rgba(0,0,0,.7)}.hero-bg-video{pointer-events:none}.hero-title{font-size:2rem}.hero-subtitle{font-size:1.1rem}.hero-logos{margin-top:var(--spacing-sm)}.hero-logos-panel{padding:.5rem .7rem;border-radius:var(--radius-md);box-shadow:0 8px 20px #0003}.hero-logos-img{max-width:90%;opacity:1}.welcome-text{font-size:1.05rem}.category-banner{height:90px}.category-banner-overlay{padding:0 var(--spacing-md);gap:var(--spacing-sm)}.category-banner-label{font-size:1.15rem}.category-banner-overlay>i:first-child{font-size:1.5rem}.studios-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.studio-card{margin-bottom:var(--spacing-sm)}.studio-image-wrapper{height:auto}.studio-content{padding:var(--spacing-md)}.studio-name{font-size:1.25rem}.studio-description{font-size:.9rem}.booking-content{grid-template-columns:1fr}.placeholder-image{height:300px}.studio-slide{flex-basis:100%}.studio-slide-image{height:280px}.contact-content,.host-event-content,.form-row{grid-template-columns:1fr}.schedule-table{font-size:.875rem}.schedule-table th,.schedule-table td{padding:.5rem}section{padding:var(--spacing-lg) 0}.section-title{font-size:2rem}.container{padding:0 var(--spacing-sm)}.about-images-row{grid-template-columns:1fr}.about-dual-image{height:220px}.trainers-group-photo{height:auto}.studio-image-container{height:150px}.event-image-container{height:120px}}@media(max-width:480px){.btn{padding:.6rem 1.5rem;font-size:.875rem}.event-card{flex:0 0 250px}.footer-content{grid-template-columns:1fr;text-align:center}.social-links{justify-content:center}.hero{height:70vh;min-height:400px}.hero-overlay{background:linear-gradient(135deg,#5d3f6a99,#5d3f6ab3)}.hero-content{padding:var(--spacing-sm);margin:0 var(--spacing-sm)}.hero-title{text-shadow:3px 3px 15px rgba(0,0,0,.9);margin-bottom:var(--spacing-sm)}.hero-subtitle{text-shadow:2px 2px 8px rgba(0,0,0,.8);margin-bottom:var(--spacing-md)}.hero-bg-video{display:block}.nav-brand{gap:.5rem}.nav-logo{height:38px}.logo{font-size:1.1rem}.footer-logo{height:38px}}@media(prefers-reduced-motion:reduce){.studio-card{transition:none;opacity:1;transform:none}.studio-card:hover{transform:translateY(-8px)}.studio-image{transition:none}.studio-card:hover .studio-image{transform:none}.studio-overlay,.studio-icon{transition:none}}@media print{.navbar,.footer,.btn,.nav-toggle{display:none}body{font-size:12pt}.hero{height:auto;min-height:auto;padding:2cm 0}}
