:root {
  --fire: #FF4500;
  --gold: #FFB800;
  --dark: #0A0A0A;
  --dark2: #111111;
  --dark3: #1A1A1A;
  --text: #F0F0F0;
  --muted: #888;
  --card-bg: rgba(255,255,255,0.04);
  --border: rgba(255,69,0,0.3);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--dark);color:var(--text);font-family:'Barlow',sans-serif;overflow-x:hidden;}

::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:var(--dark);}
::-webkit-scrollbar-thumb{background:var(--fire);}

#bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;}
#model-canvas{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;}

nav{position:fixed;top:0;width:100%;z-index:1000;padding:18px 5%;display:flex;justify-content:space-between;align-items:center;transition:all .4s;}
nav.scrolled{background:rgba(10,10,10,0.95);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
.logo{font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:4px;background:linear-gradient(135deg,var(--fire),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.nav-links{display:flex;gap:36px;list-style:none;}
.nav-links a{color:var(--muted);text-decoration:none;font-size:.85rem;letter-spacing:2px;text-transform:uppercase;transition:.3s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--fire);transition:.3s;}
.nav-links a:hover{color:var(--text);}
.nav-links a:hover::after{width:100%;}
.nav-cta{background:var(--fire);color:#fff;padding:10px 24px;border:none;font-family:'Barlow Condensed',sans-serif;font-size:.9rem;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:.3s;clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);}
.nav-cta:hover{background:var(--gold);transform:scale(1.05);}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;}
.hamburger span{width:24px;height:2px;background:var(--text);transition:.3s;}

#hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:1;}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%, rgba(255,69,0,0.15) 0%, transparent 60%),radial-gradient(ellipse at 70% 20%, rgba(255,184,0,0.1) 0%, transparent 50%);}
.hero-lines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 49px,rgba(255,69,0,0.06) 50px);pointer-events:none;}
.hero-content{text-align:center;position:relative;z-index:2;}
.hero-badge{display:inline-block;border:1px solid var(--fire);color:var(--fire);font-size:.75rem;letter-spacing:4px;text-transform:uppercase;padding:6px 20px;margin-bottom:24px;animation:fadeUp .8s .2s both;}
.hero-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(5rem,14vw,13rem);line-height:.9;margin-bottom:16px;animation:fadeUp .8s .4s both;}
.hero-title span.line1{display:block;background:linear-gradient(135deg,#fff 30%,var(--muted));-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.hero-title span.fire{display:block;background:linear-gradient(135deg,var(--fire),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.hero-sub{font-family:'Barlow Condensed',sans-serif;font-size:1.2rem;letter-spacing:6px;color:var(--muted);text-transform:uppercase;margin-bottom:48px;animation:fadeUp .8s .6s both;}
.hero-buttons{display:flex;gap:20px;justify-content:center;animation:fadeUp .8s .8s both;}
.btn-primary{background:var(--fire);color:#fff;padding:16px 40px;font-family:'Barlow Condensed',sans-serif;font-size:1rem;letter-spacing:3px;text-transform:uppercase;border:none;cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);transition:.3s;text-decoration:none;display:inline-block;}
.btn-primary:hover{background:var(--gold);transform:scale(1.05);}
.btn-ghost{border:1px solid rgba(255,255,255,0.3);color:var(--text);padding:16px 40px;font-family:'Barlow Condensed',sans-serif;font-size:1rem;letter-spacing:3px;text-transform:uppercase;background:transparent;cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);transition:.3s;text-decoration:none;display:inline-block;}
.btn-ghost:hover{border-color:var(--fire);color:var(--fire);}
.hero-stats{position:absolute;bottom:60px;left:0;right:0;display:flex;justify-content:center;gap:60px;animation:fadeUp .8s 1s both;}
.stat{text-align:center;}
.stat-num{font-family:'Bebas Neue',sans-serif;font-size:2.5rem;background:linear-gradient(135deg,var(--fire),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.stat-label{font-size:.7rem;letter-spacing:3px;color:var(--muted);text-transform:uppercase;}
.scroll-hint{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;animation:bounce 2s infinite;}
.scroll-hint span{font-size:.65rem;letter-spacing:3px;color:var(--muted);}
.scroll-arrow{width:1px;height:40px;background:linear-gradient(var(--fire),transparent);}

section{position:relative;z-index:2;}
.section-label{font-size:.7rem;letter-spacing:5px;color:var(--fire);text-transform:uppercase;margin-bottom:12px;}
.section-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.5rem,6vw,5rem);line-height:1;margin-bottom:20px;}
.section-desc{color:var(--muted);font-size:1rem;line-height:1.8;max-width:560px;}

#about{padding:120px 5%;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.about-visual{position:relative;}
.about-img-wrap{position:relative;border:1px solid var(--border);overflow:hidden;}
.about-img-wrap img{width:100%;height:500px;object-fit:cover;display:block;filter:grayscale(20%);}
.about-img-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,69,0,0.3),transparent);}
.about-tag{position:absolute;bottom:-20px;right:-20px;background:var(--fire);color:#fff;padding:24px;font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:2px;text-align:center;line-height:1.2;}
.about-text .section-desc{margin-bottom:32px;}
.about-features{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.about-feat{display:flex;align-items:center;gap:12px;font-size:.9rem;color:var(--muted);}
.about-feat::before{content:'';width:6px;height:6px;background:var(--fire);clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);flex-shrink:0;}

#facilities{padding:120px 5%;background:var(--dark2);}
.facilities-header{text-align:center;margin-bottom:72px;}
.facilities-header .section-desc{margin:0 auto;}
.fac-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2px;}
.fac-card{background:var(--dark3);padding:48px 36px;border:1px solid transparent;transition:all .4s;cursor:default;position:relative;overflow:hidden;}
.fac-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,69,0,0.08),transparent);opacity:0;transition:.4s;}
.fac-card:hover{border-color:var(--border);transform:translateY(-8px);}
.fac-card:hover::before{opacity:1;}
.fac-icon{width:64px;height:64px;background:rgba(255,69,0,0.1);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:24px;font-size:1.8rem;transition:.3s;}
.fac-card:hover .fac-icon{background:var(--fire);border-color:var(--fire);}
.fac-name{font-family:'Barlow Condensed',sans-serif;font-size:1.3rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;}
.fac-desc{color:var(--muted);font-size:.9rem;line-height:1.7;}

#trainers{padding:120px 5%;}
.trainers-header{text-align:center;margin-bottom:72px;}
.trainers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;}
.trainer-card{perspective:1000px;height:420px;cursor:pointer;}
.trainer-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,0,.2,1);}
.trainer-card:hover .trainer-inner{transform:rotateY(180deg);}
.trainer-front,.trainer-back{position:absolute;inset:0;backface-visibility:hidden;}
.trainer-front{overflow:hidden;}
.trainer-front img{width:100%;height:100%;object-fit:cover;filter:grayscale(30%);transition:.4s;}
.trainer-card:hover .trainer-front img{filter:grayscale(0%);}
.trainer-front-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,transparent 50%);}
.trainer-front-info{position:absolute;bottom:0;left:0;right:0;padding:28px;}
.trainer-name{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:2px;}
.trainer-role{font-size:.75rem;letter-spacing:3px;color:var(--fire);text-transform:uppercase;}
.trainer-back{background:linear-gradient(135deg,var(--dark3),#1f1000);border:1px solid var(--border);transform:rotateY(180deg);padding:36px;display:flex;flex-direction:column;justify-content:center;}
.trainer-back .trainer-name{margin-bottom:4px;}
.trainer-back .trainer-role{margin-bottom:20px;}
.trainer-bio{color:var(--muted);font-size:.9rem;line-height:1.7;margin-bottom:20px;}
.trainer-certs{display:flex;flex-wrap:wrap;gap:8px;}
.cert-tag{font-size:.7rem;letter-spacing:1px;border:1px solid var(--border);color:var(--fire);padding:4px 12px;text-transform:uppercase;}
.trainer-social{display:flex;gap:12px;margin-top:auto;}
.t-social-btn{width:36px;height:36px;border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.85rem;text-decoration:none;transition:.3s;}
.t-social-btn:hover{border-color:var(--fire);color:var(--fire);}

#gallery{padding:120px 5%;background:var(--dark2);}
.gallery-header{text-align:center;margin-bottom:72px;}
.gallery-tabs{display:flex;gap:0;justify-content:center;margin-bottom:48px;border:1px solid var(--border);}
.tab-btn{padding:12px 32px;background:transparent;border:none;color:var(--muted);font-family:'Barlow Condensed',sans-serif;font-size:.9rem;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:.3s;}
.tab-btn.active{background:var(--fire);color:#fff;}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,200px);gap:4px;}
.gallery-item{overflow:hidden;position:relative;cursor:pointer;}
.gallery-item.large{grid-column:span 2;grid-row:span 2;}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1),filter .4s;}
.gallery-item:hover img{transform:scale(1.1);filter:brightness(1.1);}
.gallery-item-overlay{position:absolute;inset:0;background:rgba(255,69,0,0);display:flex;align-items:center;justify-content:center;transition:.4s;}
.gallery-item:hover .gallery-item-overlay{background:rgba(255,69,0,0.3);}
.gallery-item-overlay span{font-size:2rem;opacity:0;transition:.3s;}
.gallery-item:hover .gallery-item-overlay span{opacity:1;}

#schedule{padding:120px 5%;}
.schedule-header{text-align:center;margin-bottom:72px;}
.schedule-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:0;border:1px solid rgba(255,255,255,0.06);}
.schedule-day{border-right:1px solid rgba(255,255,255,0.06);}
.schedule-day:last-child{border-right:none;}
.day-header{background:var(--dark3);padding:16px;text-align:center;font-family:'Barlow Condensed',sans-serif;letter-spacing:2px;font-size:.85rem;text-transform:uppercase;border-bottom:1px solid var(--border);}
.day-header.today{background:var(--fire);}
.class-slot{padding:12px;border-bottom:1px solid rgba(255,255,255,0.04);min-height:70px;}
.class-slot .class-time{font-size:.7rem;color:var(--muted);margin-bottom:4px;}
.class-slot .class-name{font-size:.85rem;font-weight:600;margin-bottom:4px;}
.class-slot .class-trainer{font-size:.7rem;color:var(--muted);}
.class-badge{display:inline-block;font-size:.65rem;padding:2px 8px;margin-bottom:4px;letter-spacing:1px;text-transform:uppercase;}
.badge-strength{background:rgba(255,69,0,0.2);color:var(--fire);border:1px solid rgba(255,69,0,0.3);}
.badge-cardio{background:rgba(255,184,0,0.2);color:var(--gold);border:1px solid rgba(255,184,0,0.3);}
.badge-yoga{background:rgba(100,200,150,0.2);color:#64c896;border:1px solid rgba(100,200,150,0.3);}
.badge-hiit{background:rgba(200,100,255,0.2);color:#c864ff;border:1px solid rgba(200,100,255,0.3);}

#pricing{padding:120px 5%;background:var(--dark2);}
.pricing-header{text-align:center;margin-bottom:72px;}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1000px;margin:0 auto;}
.price-card{background:var(--dark3);border:1px solid rgba(255,255,255,0.06);padding:48px 36px;position:relative;transition:all .4s;}
.price-card.featured{border-color:var(--fire);transform:scale(1.05);}
.price-card.featured::before{content:'MOST POPULAR';position:absolute;top:-1px;left:50%;transform:translateX(-50%);background:var(--fire);color:#fff;font-size:.65rem;letter-spacing:3px;padding:6px 20px;white-space:nowrap;}
.price-card:hover{transform:translateY(-8px);}
.price-card.featured:hover{transform:scale(1.05) translateY(-8px);}
.plan-name{font-family:'Barlow Condensed',sans-serif;font-size:1rem;letter-spacing:4px;text-transform:uppercase;color:var(--muted);margin-bottom:16px;}
.plan-price{font-family:'Bebas Neue',sans-serif;font-size:4rem;line-height:1;margin-bottom:4px;}
.plan-price sup{font-size:1.5rem;vertical-align:super;}
.plan-period{color:var(--muted);font-size:.85rem;margin-bottom:32px;}
.plan-features{list-style:none;margin-bottom:36px;}
.plan-features li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.04);font-size:.9rem;display:flex;align-items:center;gap:12px;color:var(--muted);}
.plan-features li.active{color:var(--text);}
.plan-features li::before{content:'';width:6px;height:6px;flex-shrink:0;}
.plan-features li.active::before{background:var(--fire);}
.plan-features li:not(.active)::before{border:1px solid rgba(255,255,255,0.1);}
.plan-btn{width:100%;padding:14px;background:transparent;border:1px solid rgba(255,255,255,0.2);color:var(--text);font-family:'Barlow Condensed',sans-serif;font-size:.9rem;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:.3s;}
.plan-btn:hover,.price-card.featured .plan-btn{background:var(--fire);border-color:var(--fire);}

#reviews{padding:120px 5%;}
.reviews-header{text-align:center;margin-bottom:72px;}
.review-stars-big{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:12px;}
.star-display{font-size:2rem;color:var(--gold);}
.rating-num{font-family:'Bebas Neue',sans-serif;font-size:3rem;color:var(--gold);}
.rating-sub{color:var(--muted);font-size:.85rem;}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:48px;}
.review-card{background:var(--dark3);border:1px solid rgba(255,255,255,0.06);padding:32px;position:relative;transition:.3s;}
.review-card:hover{border-color:var(--border);}
.review-card::before{content:'"';position:absolute;top:16px;right:24px;font-size:5rem;color:rgba(255,69,0,0.1);font-family:serif;line-height:1;}
.review-stars{color:var(--gold);font-size:.9rem;margin-bottom:16px;}
.review-text{color:var(--muted);font-size:.9rem;line-height:1.8;margin-bottom:20px;}
.reviewer{display:flex;align-items:center;gap:12px;}
.reviewer-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--fire),var(--gold));display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1.1rem;flex-shrink:0;}
.reviewer-name{font-weight:600;font-size:.9rem;}
.reviewer-date{color:var(--muted);font-size:.75rem;}
.google-badge{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:.85rem;margin-top:24px;}

#location{padding:0;}
.map-wrapper{position:relative;}
.map-container{width:100%;height:500px;background:var(--dark3);border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;}
.map-container iframe{width:100%;height:100%;border:none;filter:grayscale(40%) contrast(1.1);}
.map-info-panel{position:absolute;top:50%;left:8%;transform:translateY(-50%);background:rgba(10,10,10,0.95);backdrop-filter:blur(20px);border:1px solid var(--border);padding:40px;max-width:340px;z-index:10;}
.map-title{font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:2px;margin-bottom:24px;}
.map-detail{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px;}
.map-icon{width:36px;height:36px;background:rgba(255,69,0,0.1);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.9rem;}
.map-detail-text{font-size:.9rem;color:var(--muted);line-height:1.6;}
.map-detail-text strong{color:var(--text);display:block;margin-bottom:2px;}
.directions-btn{display:inline-flex;align-items:center;gap:8px;color:var(--fire);font-size:.8rem;letter-spacing:2px;text-transform:uppercase;text-decoration:none;margin-top:8px;border-bottom:1px solid transparent;padding-bottom:2px;transition:.3s;}
.directions-btn:hover{border-color:var(--fire);}

#instagram{padding:80px 5%;background:var(--dark2);}
.insta-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px;}
.insta-title{display:flex;align-items:center;gap:16px;}
.insta-logo{width:48px;height:48px;background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;}
.insta-handle{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:2px;}
.insta-follow{border:1px solid var(--border);color:var(--fire);padding:10px 24px;font-family:'Barlow Condensed',sans-serif;letter-spacing:2px;font-size:.85rem;text-transform:uppercase;text-decoration:none;transition:.3s;}
.insta-follow:hover{background:var(--fire);color:#fff;}
.insta-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;}
.insta-post{aspect-ratio:1;overflow:hidden;cursor:pointer;position:relative;}
.insta-post img{width:100%;height:100%;object-fit:cover;transition:.4s;}
.insta-post:hover img{transform:scale(1.1);filter:brightness(1.1);}
.insta-post-overlay{position:absolute;inset:0;background:rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;gap:12px;transition:.3s;}
.insta-post:hover .insta-post-overlay{background:rgba(0,0,0,0.5);}
.insta-stat{color:#fff;font-size:.8rem;font-weight:600;opacity:0;transition:.3s;display:flex;align-items:center;gap:4px;}
.insta-post:hover .insta-stat{opacity:1;}

#contact{padding:120px 5%;}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.contact-form{display:flex;flex-direction:column;gap:20px;}
.form-group{display:flex;flex-direction:column;gap:8px;}
.form-group label{font-size:.75rem;letter-spacing:3px;color:var(--muted);text-transform:uppercase;}
.form-group input,.form-group textarea,.form-group select{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);color:var(--text);padding:14px 18px;font-family:'Barlow',sans-serif;font-size:.95rem;transition:.3s;outline:none;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--fire);}
.form-group textarea{resize:vertical;min-height:120px;}
.form-group select option{background:var(--dark3);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.submit-btn{background:var(--fire);color:#fff;padding:18px 40px;border:none;font-family:'Barlow Condensed',sans-serif;font-size:1rem;letter-spacing:4px;text-transform:uppercase;cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);transition:.3s;align-self:flex-start;}
.submit-btn:hover{background:var(--gold);transform:scale(1.02);}

footer{background:var(--dark2);border-top:1px solid rgba(255,255,255,0.05);padding:80px 5% 40px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px;}
.footer-brand .logo{font-size:2.5rem;display:block;margin-bottom:16px;}
.footer-brand p{color:var(--muted);font-size:.9rem;line-height:1.8;margin-bottom:24px;}
.footer-social{display:flex;gap:12px;}
.social-link{width:40px;height:40px;border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;color:var(--muted);text-decoration:none;transition:.3s;font-size:.9rem;}
.social-link:hover{border-color:var(--fire);color:var(--fire);background:rgba(255,69,0,0.1);}
.footer-col h4{font-family:'Barlow Condensed',sans-serif;font-size:.9rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:24px;color:var(--text);}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:12px;}
.footer-col ul li a{color:var(--muted);text-decoration:none;font-size:.9rem;transition:.3s;}
.footer-col ul li a:hover{color:var(--fire);}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.05);padding-top:32px;display:flex;justify-content:space-between;align-items:center;}
.footer-bottom p{color:var(--muted);font-size:.8rem;}

.whatsapp-float{position:fixed;bottom:32px;right:32px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.whatsapp-btn{width:60px;height:60px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 30px rgba(37,211,102,0.4);cursor:pointer;transition:.3s;text-decoration:none;animation:pulse-green 2s infinite;}
.whatsapp-btn:hover{transform:scale(1.1);}
.whatsapp-btn svg{width:32px;height:32px;fill:#fff;}
.wa-tooltip{background:rgba(10,10,10,0.95);border:1px solid rgba(37,211,102,0.3);color:#fff;padding:8px 16px;font-size:.8rem;white-space:nowrap;border-radius:4px;opacity:0;transition:.3s;pointer-events:none;}
.whatsapp-float:hover .wa-tooltip{opacity:1;}

@keyframes fadeUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(-10px);}}
@keyframes pulse-green{0%,100%{box-shadow:0 4px 30px rgba(37,211,102,0.4);}50%{box-shadow:0 4px 50px rgba(37,211,102,0.7);}}
@keyframes countUp{from{opacity:0;}to{opacity:1;}}
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s,transform .8s;}
.reveal.visible{opacity:1;transform:translateY(0);}

#loader{position:fixed;inset:0;background:var(--dark);z-index:99999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;}
.loader-logo{font-family:'Bebas Neue',sans-serif;font-size:4rem;letter-spacing:8px;background:linear-gradient(135deg,var(--fire),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:pulse 1s infinite alternate;}
.loader-bar{width:200px;height:2px;background:rgba(255,255,255,0.1);}
.loader-bar-fill{height:100%;background:linear-gradient(90deg,var(--fire),var(--gold));animation:load 1.5s ease-in-out forwards;}
@keyframes pulse{from{opacity:.5;}to{opacity:1;}}
@keyframes load{from{width:0;}to{width:100%;}}

/* Toast notification */
#toast{position:fixed;bottom:100px;right:32px;z-index:99999;background:var(--dark3);border:1px solid var(--fire);color:var(--text);padding:16px 24px;font-family:'Barlow Condensed',sans-serif;letter-spacing:1px;transform:translateX(200%);transition:transform .4s ease;max-width:320px;}
#toast.show{transform:translateX(0);}

@media(max-width:1024px){
  #about{grid-template-columns:1fr;}
  .pricing-grid{grid-template-columns:1fr;}
  .price-card.featured{transform:none;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .schedule-grid{grid-template-columns:repeat(4,1fr);overflow-x:auto;}
}
@media(max-width:768px){
  .nav-links,.nav-cta{display:none;}
  .hamburger{display:flex;}
  .hero-stats{gap:32px;flex-wrap:wrap;}
  .contact-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;}
  .gallery-item.large{grid-column:span 1;grid-row:span 1;}
  .insta-grid{grid-template-columns:repeat(3,1fr);}
  .footer-grid{grid-template-columns:1fr;}
  .map-info-panel{position:relative;top:auto;left:auto;transform:none;max-width:100%;border:none;border-top:1px solid var(--border);}
  .map-container{height:350px;}
}
