body{color:#302218;background:#f8f3ed;font-family:Arial,sans-serif;overflow-x:hidden}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}:root{--brown:#302218;--brown-light:#4a3528;--cream:#f8f3ed;--cream-dark:#eee4d8;--gold:#b28a52;--gold-light:#d2b47a;--text:#302218;--text-light:#6d6259;--white:#fff}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#2b2118;background:#fffaf5;font-family:Georgia,Times New Roman,serif}.app{min-height:100vh}.navbar{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;color:var(--white);background:#302218f5;border-bottom:1px solid #d2b47a40;justify-content:space-between;align-items:center;padding:20px 7%;display:flex;position:sticky;top:0}.logo{letter-spacing:1px;color:var(--gold-light);align-items:center;gap:12px;font-family:Georgia,serif;font-size:22px;font-weight:600;display:flex}.logo img{object-fit:contain;border-radius:50%;width:45px;height:45px}.navbar nav{align-items:center;gap:26px;display:flex}.navbar nav a{color:var(--white);text-transform:uppercase;letter-spacing:.8px;font-size:13px;text-decoration:none;transition:color .3s;position:relative}.navbar nav a:after{content:"";background:var(--gold-light);width:0;height:1px;transition:width .3s;position:absolute;bottom:-7px;left:0}.navbar nav a:hover{color:var(--gold-light)}.navbar nav a:hover:after{width:100%}section{scroll-margin-top:75px}.hero{min-height:calc(100vh - 72px);color:var(--white);text-align:center;background:linear-gradient(#302218b8,#302218d1) 50%/cover;justify-content:center;align-items:center;padding:100px 7%;display:flex;position:relative}.hero-content{max-width:850px;margin:0 auto;animation:1s ease-out heroContent}.hero-accent{border:1px solid var(--gold-light);width:46px;height:46px;color:var(--gold-light);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:18px;animation:3s ease-in-out infinite heroAccent;display:flex}.hero-subtitle{color:var(--gold-light);letter-spacing:4px;margin-bottom:22px;font-size:13px;font-weight:600}.hero h1{margin-bottom:28px;font-family:Georgia,serif;font-size:clamp(48px,7vw,88px);font-weight:500;line-height:1.05}.hero-description{color:#eee4d8;max-width:620px;margin:0 auto 38px;font-size:17px;line-height:1.8}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:15px;display:flex}.primary-button,.secondary-button{text-transform:uppercase;letter-spacing:1px;padding:15px 30px;font-size:13px;text-decoration:none;transition:transform .3s,background .3s;display:inline-block}.primary-button{background:var(--gold-light);color:var(--brown)}.secondary-button{border:1px solid var(--gold-light);color:var(--white)}.primary-button:hover,.secondary-button:hover{transform:translateY(-3px)}.primary-button:hover{background:var(--white)}.secondary-button:hover{background:#d2b47a26}@keyframes heroAccent{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes heroContent{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}#about,#classes,#performances,#gallery,#contact{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:500px;padding:100px 10%;display:flex}#about{background:#fffaf5}#classes{background:#f4ece3}#performances{background:#fffaf5}#gallery{background:#f4ece3}#contact{color:#fff;background:#302218}section h2{margin-bottom:25px;font-size:42px}section p{max-width:700px;font-size:17px;line-height:1.8}@media (width<=768px){.navbar{padding:0 5%}nav{display:none}#home{padding:60px 7%}#home h1{font-size:48px}section h2{font-size:34px}}.hero{position:relative}.hero-content{max-width:800px}.hero-subtitle{letter-spacing:5px;margin-bottom:25px;font-size:13px!important}.hero-description{max-width:650px;margin:0 auto;line-height:1.7;letter-spacing:0!important;font-size:18px!important}.hero-buttons{justify-content:center;gap:18px;margin-top:35px;display:flex}.primary-button,.secondary-button{padding:15px 30px;font-size:15px;text-decoration:none;transition:all .3s;display:inline-block}.primary-button{color:#302218;background:#fff}.primary-button:hover{transform:translateY(-3px)}.secondary-button{color:#fff;border:1px solid #fff}.secondary-button:hover{color:#302218;background:#fff}@media (width<=768px){.hero-buttons{flex-direction:column;align-items:center}.primary-button,.secondary-button{width:230px}}.about-section{background:var(--cream);grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding:120px 10%;display:grid}.about-image-wrapper{max-width:500px;margin:0 auto;position:relative}.about-image{aspect-ratio:4/5;background:var(--cream-dark);border:1px solid #b28a5259;width:100%;overflow:hidden}.about-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.about-image:hover img{transform:scale(1.03)}.about-image-caption{background:var(--brown);color:var(--white);flex-direction:column;gap:4px;min-width:190px;padding:18px 24px;display:flex;position:absolute;bottom:25px;right:-25px}.about-image-caption span{color:var(--gold-light);text-transform:uppercase;letter-spacing:2px;font-size:11px}.about-image-caption strong{font-family:Georgia,serif;font-size:17px;font-weight:500}.about-content{max-width:600px}.section-label{color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:15px;font-size:12px;font-weight:600}.about-content h2{margin-bottom:25px;font-family:Georgia,serif;font-size:clamp(36px,4vw,54px);font-weight:500;line-height:1.15}.about-content p{color:var(--text-light);margin-bottom:18px;font-size:16px;line-height:1.8}.about-button{background:var(--brown);color:var(--white);text-transform:uppercase;letter-spacing:1px;margin-top:15px;padding:14px 28px;font-size:13px;text-decoration:none;transition:background .3s,transform .3s;display:inline-block}.about-button:hover{background:var(--brown-light);transform:translateY(-3px)}@media (width<=768px){.about-section{grid-template-columns:1fr;gap:50px;padding:80px 7%}.about-image-wrapper{width:90%}.about-image-caption{right:-10px}}.classes-section{background:var(--cream-dark);text-align:center;padding:120px 10%}.section-heading{max-width:700px;margin:0 auto 65px}.section-heading h2{margin-bottom:20px;font-family:Georgia,serif;font-size:clamp(36px,4vw,54px);font-weight:500;line-height:1.15}.section-heading>p:last-child{color:var(--text-light);font-size:16px;line-height:1.8}.class-cards{text-align:left;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1100px;margin:0 auto;display:grid}.class-card{background:var(--cream);border:1px solid #b28a5240;padding:42px 32px;transition:transform .35s,box-shadow .35s,border-color .35s;position:relative}.class-card:hover{border-color:var(--gold);transform:translateY(-8px);box-shadow:0 18px 40px #3022181a}.class-number{color:var(--gold);letter-spacing:2px;margin-bottom:30px;font-family:Georgia,serif;font-size:18px}.class-card h3{margin-bottom:18px;font-family:Georgia,serif;font-size:28px;font-weight:500}.class-card p{min-height:115px;color:var(--text-light);margin-bottom:25px;font-size:15px;line-height:1.8}.class-card a{color:var(--brown);text-transform:uppercase;letter-spacing:1px;font-size:13px;font-weight:600;text-decoration:none}.class-card a:hover{color:var(--gold)}@media (width<=900px){.class-cards{grid-template-columns:1fr;max-width:550px}.class-card p{min-height:auto}}.performances-section{background:var(--cream);text-align:center;padding:120px 10%}.performance-cards{text-align:left;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1100px;margin:0 auto;display:grid}.performance-card{background:var(--white);border:1px solid #b28a5233;transition:transform .35s,box-shadow .35s;overflow:hidden}.performance-card:hover{transform:translateY(-8px);box-shadow:0 18px 40px #3022181f}.performance-image{background:var(--cream-dark);width:100%;height:280px;overflow:hidden}.performance-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.performance-card:hover .performance-image img{transform:scale(1.05)}.performance-content{padding:30px}.performance-category{color:var(--gold);letter-spacing:2px;margin-bottom:12px;font-size:11px;font-weight:600}.performance-content h3{margin-bottom:15px;font-family:Georgia,serif;font-size:25px;font-weight:500;line-height:1.25}.performance-content>p:not(.performance-category){color:var(--text-light);margin-bottom:22px;font-size:15px;line-height:1.7}.performance-content a{color:var(--brown);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:600;text-decoration:none}.performance-content a:hover{color:var(--gold)}.performance-cards{grid-template-columns:1fr;max-width:550px}.gallery-section{background:var(--cream-dark);text-align:center;padding:120px 10%}.gallery-grid{text-align:left;grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:15px;max-width:1100px;margin:0 auto;display:grid}.gallery-item{background:var(--brown);position:relative;overflow:hidden}.gallery-item.large{grid-row:span 2}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.gallery-item:hover img{transform:scale(1.06)}.gallery-overlay{color:var(--white);opacity:0;background:linear-gradient(#0000,#302218d9);padding:30px 20px 20px;transition:opacity .35s,transform .35s;position:absolute;bottom:0;left:0;right:0;transform:translateY(10px)}.gallery-item:hover .gallery-overlay{opacity:1;transform:translateY(0)}.gallery-overlay span{font-family:Georgia,serif;font-size:18px}.video-section{border-top:1px solid #b28a524d;max-width:650px;margin:90px auto 0;padding-top:70px}.video-section h3{margin-bottom:15px;font-family:Georgia,serif;font-size:34px;font-weight:500}.video-section>p:not(.section-label){color:var(--text-light);margin-bottom:25px;line-height:1.8}.video-button{background:var(--brown);color:var(--white);text-transform:uppercase;letter-spacing:1px;padding:14px 28px;font-size:12px;text-decoration:none;transition:background .3s,transform .3s;display:inline-block}.video-button:hover{background:var(--brown-light);transform:translateY(-3px)}@media (width<=900px){.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.gallery-item.large{grid-row:span 1}}@media (width<=768px){.gallery-grid{grid-template-columns:1fr;grid-auto-rows:280px}.gallery-overlay{opacity:1;transform:translateY(0)}}.events-section{background:var(--cream);padding:120px 10%}.event-cards{flex-direction:column;gap:20px;max-width:900px;margin:0 auto;display:flex}.event-card{background:var(--white);border:1px solid #b28a5233;grid-template-columns:110px 1fr;transition:transform .3s,box-shadow .3s;display:grid}.event-card:hover{transform:translate(6px);box-shadow:0 12px 30px #3022181a}.event-date{background:var(--brown);color:var(--white);flex-direction:column;justify-content:center;align-items:center;min-height:180px;display:flex}.event-date span{font-family:Georgia,serif;font-size:42px;line-height:1}.event-date small{color:var(--gold-light);letter-spacing:2px;margin-top:8px;font-size:11px}.event-info{padding:32px 36px}.event-type{color:var(--gold);letter-spacing:2px;margin-bottom:10px;font-size:11px;font-weight:600}.event-info h3{margin-bottom:12px;font-family:Georgia,serif;font-size:27px;font-weight:500}.event-info>p:not(.event-type):not(.event-location){color:var(--text-light);margin-bottom:18px;line-height:1.7}.event-location{color:var(--brown);font-size:13px;font-weight:600}@media (width<=768px){.event-card{grid-template-columns:80px 1fr}.event-date{min-height:150px}.event-date span{font-size:32px}.event-info{padding:24px 20px}.event-info h3{font-size:22px}}.testimonials-section{background:var(--brown);min-height:650px;color:var(--white);text-align:center;padding:120px 10%}.testimonials-section .section-heading{max-width:700px;margin:0 auto 60px}.testimonials-section .section-label{color:var(--gold-light)}.testimonials-section .section-heading>p:last-child{color:#d8cec4}.testimonial-cards{grid-template-columns:repeat(3,1fr);gap:25px;max-width:1100px;margin:0 auto;display:grid}.testimonial-card{background:var(--brown-light);text-align:left;border:1px solid #d2b47a40;padding:42px 32px;transition:transform .3s,border-color .3s,box-shadow .3s;position:relative}.testimonial-card:hover{border-color:var(--gold-light);transform:translateY(-6px);box-shadow:0 15px 35px #00000026}.quote{color:var(--gold-light);margin-bottom:20px;font-family:Georgia,serif;font-size:60px;line-height:.7}.testimonial-card>p{color:#eee4d8;margin-bottom:25px;font-size:16px;line-height:1.8}.testimonial-card h4{color:var(--gold-light);letter-spacing:1.5px;text-transform:uppercase;font-size:12px;font-weight:500}@media (width<=900px){.testimonial-cards{grid-template-columns:1fr;max-width:500px}}@media (width<=768px){.testimonials-section{padding:70px 7%}}.faq-section{background:var(--cream);padding:120px 10%}.faq-section .section-heading{text-align:center;max-width:700px;margin:0 auto 60px}.faq-list{max-width:850px;margin:0 auto}.faq-item{border-top:1px solid #b28a524d}.faq-item:last-child{border-bottom:1px solid #b28a524d}.faq-question{width:100%;color:var(--brown);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:30px;padding:25px 5px;font-family:inherit;font-size:16px;font-weight:500;display:flex}.faq-question span:last-child{color:var(--gold);flex-shrink:0;font-family:Georgia,serif;font-size:25px;font-weight:400}.faq-question:hover{color:var(--gold)}.faq-answer{color:var(--text-light);padding:0 45px 25px 5px;font-size:15px;line-height:1.8}.faq-answer p{margin:0}@media (width<=768px){.faq-section{padding:80px 7%}.faq-question{padding:22px 0;font-size:15px}.faq-answer{padding:0 30px 22px 0;font-size:14px}}.contact-section{background:var(--brown);min-height:650px;color:var(--white);text-align:center;padding:120px 10%}.contact-section .section-heading{max-width:700px;margin:0 auto 60px}.contact-section .section-label{color:var(--gold-light)}.contact-section .section-heading>p:last-child{color:#e5ddd5;max-width:650px;margin:0 auto;line-height:1.8}.contact-details{grid-template-columns:repeat(3,1fr);gap:25px;max-width:950px;margin:0 auto;display:grid}.contact-item{background:var(--brown-light);border:1px solid #d2b47a40;padding:35px 25px;transition:transform .3s,border-color .3s}.contact-item:hover{border-color:var(--gold-light);transform:translateY(-5px)}.contact-icon{color:var(--gold-light);margin-bottom:18px;font-size:28px;display:block}.contact-item h3{margin-bottom:10px;font-family:Georgia,serif;font-size:22px;font-weight:500}.contact-item p,.contact-item a{color:#e5ddd5;font-size:15px;line-height:1.6;text-decoration:none}.contact-locations{flex-direction:column;gap:8px;display:flex}.contact-locations p{margin:0}.contact-item a:hover{color:var(--gold-light)}.contact-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:15px;margin-top:50px;display:flex}.whatsapp-button,.instagram-button{text-transform:uppercase;letter-spacing:1px;padding:15px 30px;font-size:12px;font-weight:600;text-decoration:none;transition:transform .3s,background .3s;display:inline-block}.whatsapp-button{background:var(--gold-light);color:var(--brown)}.instagram-button{border:1px solid var(--gold-light);color:var(--gold-light)}.whatsapp-button:hover,.instagram-button:hover{transform:translateY(-3px)}.whatsapp-button:hover{background:var(--white)}.instagram-button:hover{background:var(--gold-light);color:var(--brown)}@media (width<=900px){.contact-details{grid-template-columns:1fr;max-width:500px}}@media (width<=768px){.contact-section{padding:80px 7%}.contact-buttons{flex-direction:column;align-items:center}.whatsapp-button,.instagram-button{text-align:center;width:220px}}.menu-button{cursor:pointer;background:0 0;border:1px solid #d2b47a80;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;padding:8px;display:none}.menu-button span{background:var(--gold-light);width:20px;height:1px;transition:transform .3s,opacity .3s;display:block}@media (width<=900px){.navbar{padding:16px 6%}.menu-button{display:flex}.navbar nav{background:var(--brown);border-top:1px solid #d2b47a33;flex-direction:column;align-items:stretch;gap:0;padding:10px 6% 20px;display:none;position:absolute;top:100%;left:0;right:0}.navbar nav.nav-open{display:flex}.navbar nav a{border-bottom:1px solid #ffffff14;padding:14px 0}.navbar nav a:after{display:none}}.footer{color:var(--white);background:#211810;padding:70px 10% 25px}.footer-content{grid-template-columns:2fr 1fr 1fr;gap:70px;max-width:1100px;margin:0 auto;padding-bottom:55px;display:grid}.footer-brand h3{color:var(--gold-light);margin-bottom:18px;font-family:Georgia,serif;font-size:25px;font-weight:500}.footer-brand p{color:#cfc3b8;max-width:380px;font-size:14px;line-height:1.8}.footer-links,.footer-social{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.footer-links h4,.footer-social h4{color:var(--gold-light);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-size:12px}.footer-links a,.footer-social a{color:#d8cec4;font-size:14px;text-decoration:none;transition:color .3s}.footer-links a:hover,.footer-social a:hover{color:var(--gold-light)}.footer-bottom{text-align:center;border-top:1px solid #d2b47a33;max-width:1100px;margin:0 auto;padding-top:25px}.footer-bottom p{color:#a99d92;font-size:12px}@media (width<=768px){.footer{padding:60px 7% 25px}.footer-content{grid-template-columns:1fr;gap:40px;padding-bottom:40px}}
