html{scroll-behavior:smooth}:root{--color-primary: #00e5ff;--color-secondary: #ff4081;--text-main: #ffffff;--bg-dark: #0a1e3f;--font-heading: "Playfair Display", serif;--font-body: "Outfit", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);color:var(--text-main);background-color:var(--bg-dark);overflow-x:hidden}#bg-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}.container{max-width:1200px;margin:0 auto;padding:0 2rem}section{position:relative;min-height:100vh;padding:100px 0}.hero{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.hero-video-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-1;opacity:.5}.hero-play-container{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.header-image-link{display:inline-block;text-decoration:none;cursor:pointer;border-radius:50%;margin:.75rem auto 0}.header-image{width:216px;height:216px;border-radius:50%;object-fit:cover;margin:0;display:block;box-shadow:0 0 30px #00e5ff66;animation:float-avatar 3s infinite ease-in-out;border:4px solid var(--color-primary);transition:transform .3s ease,box-shadow .3s ease}.header-image:hover{transform:scale(1.05);box-shadow:0 0 50px #00e5ffcc}.play-text-link{display:inline-block;font-family:var(--font-body);font-weight:800;font-size:1rem;color:var(--color-primary);text-decoration:none;margin:0 auto;text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 10px rgba(0,229,255,.5);transition:all .3s ease;animation:play-text-pulse 2s infinite ease-in-out;cursor:pointer}.play-text-link:hover{color:var(--color-secondary);text-shadow:0 0 20px rgba(255,64,129,.8);transform:scale(1.05)}@keyframes play-text-pulse{0%,to{opacity:.8;text-shadow:0 0 8px rgba(0,229,255,.4);transform:translateY(0)}50%{opacity:1;text-shadow:0 0 18px rgba(0,229,255,.9);transform:translateY(-3px)}}.hero-logo-container{margin-bottom:1rem}.hero-logo{max-width:80%;max-height:200px;width:auto;filter:drop-shadow(0 0 15px rgba(0,229,255,.6))}.subtitle{font-size:1.5rem;letter-spacing:2px;opacity:.9}.scroll-indicator{position:absolute;bottom:50px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;animation:float 2s infinite ease-in-out;text-decoration:none;color:var(--text-main);cursor:pointer;transition:opacity .3s ease}.scroll-indicator:hover{opacity:.85}.arrow-down{width:20px;height:20px;border-right:2px solid var(--color-primary);border-bottom:2px solid var(--color-primary);transform:rotate(45deg)}@keyframes float{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,15px)}}@keyframes float-avatar{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.story-section{background:linear-gradient(to bottom,transparent,rgba(0,0,0,.4));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.story-section .container{display:flex;align-items:center;justify-content:space-between;gap:4rem;flex-wrap:wrap}.story-text{flex:1;min-width:300px}.story-text h2{font-family:var(--font-heading);font-size:4rem;color:var(--color-primary);margin-bottom:1.5rem}.story-text p{font-size:1.25rem;line-height:1.6;max-width:500px}.story-image-placeholder{width:400px;max-width:100%;height:auto;background:#ffffff1a;border-radius:20px;overflow:hidden;border:1px solid rgba(0,229,255,.3);box-shadow:0 20px 50px #00000080}.story-image-placeholder img,.story-image-placeholder video{width:100%;height:auto;display:block;object-fit:contain}.character-section{background:#0a1e3fcc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.char-container{display:flex;align-items:center;gap:4rem;flex-wrap:wrap}.char-image{flex:1;min-width:300px;max-width:400px;width:100%}.char-text{flex:1;min-width:300px}.char-image img,.char-image video{width:100%;height:auto;display:block;border-radius:20px;box-shadow:0 20px 50px #0009;border:1px solid rgba(0,229,255,.2);object-fit:contain}.char-text h2{font-family:var(--font-heading);font-size:3.5rem;color:var(--color-secondary);margin-bottom:1.5rem}.char-text p{font-size:1.25rem;line-height:1.6}.parallax-section{position:relative;overflow:hidden;min-height:450px;display:flex;align-items:center;justify-content:center;text-align:center;z-index:1}.parallax-video{position:absolute;top:-15%;left:0;width:100%;height:130%;object-fit:cover;z-index:-2;opacity:.55;pointer-events:none}.parallax-content{position:relative;z-index:2}.gallery-section{padding-bottom:50px}.gallery-section h2{font-family:var(--font-heading);font-size:3.5rem;text-align:center;margin-bottom:3rem;color:var(--text-main)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:20px 0}@media(max-width:992px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.story-text h2,.char-text h2,.gallery-section h2,.media-section h2,.tour-section .section-title{font-size:2.8rem}}@media(max-width:768px){.story-text h2,.char-text h2,.gallery-section h2,.media-section h2,.tour-section .section-title{font-size:2.2rem}.story-section .container,.char-container{gap:2rem}.story-text,.char-text{text-align:center}.story-image-placeholder,.char-image{margin:0 auto}.story-text p,.char-text p{max-width:100%}}@media(max-width:576px){.gallery-grid{grid-template-columns:1fr}}.gallery-item{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0006;background:linear-gradient(135deg,#ffffff0d,#ffffff03);border:1px solid rgba(0,229,255,.2);display:flex;align-items:center;justify-content:center;transition:transform .5s ease,box-shadow .5s ease,border-color .5s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:pointer}.gallery-item:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 20px 50px #00e5ff4d;border-color:#00e5ffcc;z-index:2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.165,.84,.44,1)}.gallery-item:hover img{transform:scale(1.06)}.gallery-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,rgba(10,30,63,.9) 0%,rgba(10,30,63,.2) 70%,transparent 100%);display:flex;align-items:flex-end;justify-content:center;padding-bottom:25px;opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:1}.character-name{font-family:var(--font-heading);font-size:1.8rem;color:var(--color-primary);text-shadow:0 2px 10px rgba(0,229,255,.5);transform:translateY(20px);transition:transform .4s cubic-bezier(.165,.84,.44,1);font-weight:700;letter-spacing:1px}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-item:hover .character-name{transform:translateY(0)}.gallery-placeholder{font-size:1.5rem;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:2px}.tour-section{background:#0a1e3ff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tour-section .section-title{text-align:center;margin-bottom:4rem;color:var(--text-main)}.tour-content{display:flex;gap:4rem;align-items:flex-start;flex-wrap:wrap}.tour-poster{flex:1;min-width:300px;max-width:450px;width:100%}.tour-poster img{width:100%;border-radius:20px;box-shadow:0 20px 50px #0009;border:1px solid rgba(0,229,255,.3);transition:transform .5s cubic-bezier(.165,.84,.44,1),box-shadow .5s,border-color .5s}.tour-poster img:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 25px 60px #00e5ff66;border-color:#00e5ffcc}.tour-dates-wrapper{flex:1.2;min-width:300px;background:#ffffff08;border-radius:20px;border:1px solid rgba(255,255,255,.08);padding:30px;box-shadow:0 15px 35px #0000004d;height:600px;display:flex;flex-direction:column}.tour-dates-title{font-family:var(--font-heading);font-size:2.2rem;color:var(--color-primary);margin-bottom:25px;text-shadow:0 0 15px rgba(0,229,255,.4);border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:15px}.tour-dates-list{overflow-y:auto;flex:1;padding-right:15px}.tour-dates-list::-webkit-scrollbar{width:6px}.tour-dates-list::-webkit-scrollbar-track{background:#ffffff05;border-radius:10px}.tour-dates-list::-webkit-scrollbar-thumb{background:#00e5ff4d;border-radius:10px}.tour-dates-list::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.month-group{margin-bottom:30px}.month-title{font-size:1.4rem;color:var(--color-secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:15px;border-left:3px solid var(--color-secondary);padding-left:10px;font-weight:800}.date-item{display:flex;align-items:center;gap:20px;padding:15px;background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.05);margin-bottom:12px;transition:all .3s ease}.date-item:hover{background:#00e5ff0d;border-color:#00e5ff4d;transform:translate(5px)}.date-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary),#00a8cc);color:var(--bg-dark);border-radius:10px;min-width:70px;height:70px;text-align:center;box-shadow:0 5px 15px #00e5ff40}.date-number{font-size:1.2rem;font-weight:800;line-height:1.1}.date-month{font-size:.7rem;text-transform:uppercase;font-weight:500;letter-spacing:1px}.date-info{display:flex;flex-direction:column;gap:4px}.date-location{font-size:1.1rem;font-weight:500;color:var(--text-main)}.date-city{font-size:.95rem;color:var(--color-primary);font-weight:800;letter-spacing:.5px}.date-details{font-size:.9rem;color:#fff9}@media(max-width:992px){.tour-content{gap:3rem}.tour-poster{margin:0 auto}}@media(max-width:768px){.tour-dates-wrapper{height:auto;max-height:500px;padding:20px}.tour-dates-title{font-size:1.8rem}}.media-section h2{font-family:var(--font-heading);font-size:3.5rem;text-align:center;margin-bottom:4rem}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:2rem;width:100%}.video-card.youtube-card{width:100%;height:0;padding-bottom:56.25%;background:linear-gradient(45deg,#0a1e3f,#1a8b9d);border-radius:15px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0006;border:1px solid rgba(0,229,255,.2);transition:transform .4s cubic-bezier(.165,.84,.44,1),box-shadow .4s,border-color .4s}.video-card.youtube-card iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;border-radius:14px;pointer-events:auto}.video-overlay{position:absolute;bottom:0;left:0;width:100%;padding:15px 20px;background:linear-gradient(to top,rgba(10,30,63,.95),transparent);display:flex;justify-content:space-between;align-items:center;z-index:2;pointer-events:none;transition:opacity .3s ease}.video-overlay h3{font-size:1.1rem;font-weight:500;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.8)}.video-card.youtube-card:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 20px 40px #00e5ff59;border-color:#00e5ffb3}.video-card.youtube-card:hover .video-overlay{opacity:.15}.site-footer{background:#0a1e3ff2;padding:60px 0 30px;border-top:1px solid rgba(0,229,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:25px;text-align:center}.footer-logo{max-width:180px;filter:drop-shadow(0 0 10px rgba(0,229,255,.4))}.social-links{display:flex;gap:15px;flex-wrap:wrap;justify-content:center}.social-icon{color:var(--text-main);text-decoration:none;font-weight:500;padding:10px 25px;border:1px solid rgba(0,229,255,.4);border-radius:30px;transition:all .3s;background:#0003}.social-icon:hover{background:var(--color-primary);color:var(--bg-dark);border-color:var(--color-primary);box-shadow:0 0 15px #00e5ff80;transform:translateY(-3px)}.company-info{opacity:.8;font-size:.95rem;margin-top:15px;line-height:1.6;letter-spacing:.5px}.footer-phone{color:var(--color-primary);text-decoration:none;font-weight:800;transition:color .3s ease,text-shadow .3s ease}.footer-phone:hover{color:#fff;text-shadow:0 0 10px var(--color-primary)}.copyright{opacity:.6;font-size:.9rem;margin-top:10px}.wave-text{display:inline-block;animation:waveMotion 4s ease-in-out infinite;transform-origin:center center}@keyframes waveMotion{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-5px) rotate(-2deg)}75%{transform:translateY(5px) rotate(2deg)}}.bubble-trail{position:fixed;width:12px;height:12px;background:radial-gradient(circle at 30% 30%,#4dd0e1cc,#00e5ff33);border:1px solid rgba(255,255,255,.6);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);animation:floatBubble 1.2s forwards ease-out;will-change:transform,opacity}@keyframes floatBubble{0%{transform:translate(-50%,-50%) scale(1) translateY(0);opacity:1}to{transform:translate(-50%,-50%) scale(2.8) translateY(-60px) translate(var(--random-x, 15px));opacity:0}}.char-image img,.char-image video,.gallery-item{transition:transform .6s cubic-bezier(.165,.84,.44,1),box-shadow .6s,border-color .6s;will-change:transform}
