.particles-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.particle{position:absolute;border-radius:50%;opacity:0;animation:particleFloat linear infinite}.particle--1{width:4px;height:4px;background:var(--gold);left:8%;top:15%;animation-duration:18s;animation-delay:0s}.particle--2{width:3px;height:3px;background:var(--blue);left:22%;top:65%;animation-duration:22s;animation-delay:-3s}.particle--3{width:5px;height:5px;background:var(--gold);left:45%;top:30%;animation-duration:20s;animation-delay:-7s}.particle--4{width:3px;height:3px;background:var(--blue);left:70%;top:80%;animation-duration:24s;animation-delay:-2s}.particle--5{width:4px;height:4px;background:var(--gold);left:85%;top:20%;animation-duration:19s;animation-delay:-10s}.particle--6{width:2px;height:2px;background:var(--blue);left:55%;top:50%;animation-duration:25s;animation-delay:-5s}.particle--7{width:6px;height:6px;background:var(--gold);left:15%;top:85%;animation-duration:21s;animation-delay:-12s}.particle--8{width:3px;height:3px;background:var(--blue);left:92%;top:55%;animation-duration:17s;animation-delay:-8s}.particle--9{width:4px;height:4px;background:var(--gold);left:35%;top:10%;animation-duration:23s;animation-delay:-14s}.particle--10{width:2px;height:2px;background:var(--blue);left:65%;top:40%;animation-duration:26s;animation-delay:-6s}.particle--11{width:5px;height:5px;background:var(--gold);left:50%;top:72%;animation-duration:20s;animation-delay:-9s}.particle--12{width:3px;height:3px;background:var(--blue);left:3%;top:45%;animation-duration:22s;animation-delay:-15s}@keyframes particleFloat{0%{opacity:0;transform:translateY(0) translate(0) scale(.5)}10%{opacity:.6}50%{opacity:.3;transform:translateY(-120px) translate(40px) scale(1)}90%{opacity:.5}to{opacity:0;transform:translateY(-250px) translate(-30px) scale(.5)}}.particle-line{position:absolute;height:1px;border-radius:1px;opacity:0;animation:shootLine linear infinite}.particle-line--1{width:80px;background:linear-gradient(90deg,transparent,var(--gold),transparent);top:25%;left:-80px;animation-duration:6s;animation-delay:0s}.particle-line--2{width:120px;background:linear-gradient(90deg,transparent,var(--blue),transparent);top:60%;left:-120px;animation-duration:8s;animation-delay:-3s}.particle-line--3{width:60px;background:linear-gradient(90deg,transparent,var(--gold),transparent);top:82%;left:-60px;animation-duration:7s;animation-delay:-5s}@keyframes shootLine{0%{opacity:0;transform:translate(0) rotate(-3deg)}5%{opacity:.4}50%{opacity:.15}95%{opacity:.3}to{opacity:0;transform:translate(calc(100vw + 200px)) rotate(-3deg)}}.bg-rosary{position:absolute;width:60px;height:700px;color:var(--white);opacity:.4;animation:rosaryDrift 30s ease-in-out infinite alternate}.bg-rosary--1{left:4%;top:10%;animation-delay:0s}.bg-rosary--2{right:5%;top:35%;animation-delay:-15s;opacity:.35;transform:scaleY(-1)}@keyframes rosaryDrift{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(20px) rotate(2deg)}to{transform:translateY(-15px) rotate(-1deg)}}.bg-icon{position:absolute;color:var(--white);opacity:.4;animation:iconFloat 25s ease-in-out infinite alternate}.bg-icon--maria{width:200px;height:340px;right:5%;top:5%;opacity:.45;animation-duration:28s}.bg-icon--cross1{width:80px;height:130px;left:12%;top:55%;animation-delay:-5s;animation-duration:22s}.bg-icon--cross2{width:60px;height:100px;right:12%;top:70%;opacity:.35;animation-delay:-12s;animation-duration:26s}.bg-icon--heart{width:120px;height:135px;left:70%;top:40%;opacity:.4;animation-delay:-8s;animation-duration:24s}.bg-icon--dove{width:160px;height:112px;left:20%;top:22%;opacity:.4;animation-delay:-3s;animation-duration:20s}.bg-icon--rosary-ring{width:180px;height:180px;left:55%;top:12%;opacity:.35;animation-delay:-10s;animation-duration:30s}.bg-icon--chirho{width:110px;height:140px;left:6%;top:75%;opacity:.4;animation-delay:-18s;animation-duration:27s}.bg-icon--alpha-omega{width:160px;height:70px;right:15%;top:88%;opacity:.35;animation-delay:-7s;animation-duration:23s}@keyframes iconFloat{0%{transform:translateY(0) translate(0) rotate(0);opacity:var(--icon-opacity, .25)}25%{transform:translateY(-12px) translate(5px) rotate(1deg)}50%{transform:translateY(8px) translate(-8px) rotate(-1deg);opacity:calc(var(--icon-opacity, .25) * 1.3)}75%{transform:translateY(-5px) translate(3px) rotate(.5deg)}to{transform:translateY(10px) translate(-4px) rotate(-.5deg);opacity:var(--icon-opacity, .25)}}@media (max-width: 768px){.bg-rosary--2,.bg-icon--cross2,.bg-icon--chirho,.bg-icon--alpha-omega{display:none}.bg-icon--maria{width:120px;height:200px;opacity:.35}.bg-icon--rosary-ring{width:100px;height:100px}}.icon-gold{background:linear-gradient(135deg,var(--gold),#e8c95a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.icon-gold-dark{background:linear-gradient(135deg,var(--gold),#d4b366);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:.75rem 2rem;display:flex;justify-content:space-between;align-items:center;transition:all .4s ease}.navbar.scrolled{background:#0e0e12eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 4px 30px #0000004d}.navbar-brand img{height:5rem;width:auto}.navbar-links{display:flex;gap:2rem;align-items:center}.navbar-links a{font-size:.8rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#ffffffbf;position:relative;transition:color .3s ease;padding:.25rem 0}.navbar-links a:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:var(--gold);transition:all .3s ease;transform:translate(-50%);border-radius:2px}.navbar-links a:hover{color:var(--white)}.navbar-links a:hover:after{width:100%}.navbar-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}.navbar-toggle span{display:block;width:22px;height:2px;background:var(--white);border-radius:2px;transition:transform .3s ease,opacity .3s ease}.navbar-toggle.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.navbar-toggle.open span:nth-child(2){opacity:0}.navbar-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media (max-width: 768px){.navbar-toggle{display:flex}.navbar-links{position:fixed;top:0;right:-100%;width:75%;height:100vh;flex-direction:column;justify-content:center;align-items:center;background:#0e0e12fa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:right .4s cubic-bezier(.22,1,.36,1);gap:2.5rem}.navbar-links.open{right:0}.navbar-links a{font-size:1rem}}.hero{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;overflow:hidden;background:#0e0e1280}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.hero-bg-blob{position:absolute;border-radius:50%;filter:blur(120px);opacity:.15;animation:blobFloat 20s ease-in-out infinite alternate}.hero-bg-blob--gold{width:500px;height:500px;background:var(--gold);top:-10%;left:-10%}.hero-bg-blob--blue{width:400px;height:400px;background:var(--blue);bottom:-10%;right:-5%;animation-delay:-10s}.hero-bg-blob--small{width:250px;height:250px;background:var(--gold);top:60%;left:50%;opacity:.08;animation-delay:-5s}@keyframes blobFloat{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}to{transform:translate(10px,-10px) scale(1.02)}}.hero-content{position:relative;z-index:1;padding:0 2rem}.hero-title{margin-bottom:.5rem;line-height:1.1;display:flex;justify-content:center;width:100%}.hero-title img{height:clamp(5rem,14vw,12rem);width:auto;display:block;animation:logoEntrance 1.2s ease-out forwards,logoPulse 4s ease-in-out 1.5s infinite;opacity:0;filter:drop-shadow(0 0 20px rgba(212,175,55,.3))}@keyframes logoEntrance{0%{opacity:0;transform:scale(.6) translateY(30px);filter:drop-shadow(0 0 0 rgba(212,175,55,0))}60%{opacity:1;transform:scale(1.05) translateY(-5px);filter:drop-shadow(0 0 30px rgba(212,175,55,.5))}to{opacity:1;transform:scale(1) translateY(0);filter:drop-shadow(0 0 20px rgba(212,175,55,.3))}}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 20px rgba(212,175,55,.3));transform:scale(1)}50%{filter:drop-shadow(0 0 35px rgba(212,175,55,.5));transform:scale(1.02)}}.hero-subtitle{font-size:clamp(.9rem,2.5vw,1.15rem);font-weight:400;letter-spacing:5px;text-transform:uppercase;color:#ffffff8c;margin-bottom:2rem}.hero-description{max-width:520px;margin:0 auto 2.5rem;font-size:1rem;line-height:1.8;color:#ffffff80}.hero-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:.5rem}.hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 2.25rem;background:linear-gradient(135deg,var(--gold),#d4b366);color:var(--dark);font-family:var(--font-body);font-size:.85rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;border:none;border-radius:50px;transition:all .4s ease;box-shadow:0 4px 25px #c8a24f40}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 35px #c8a24f66}.hero-cta-arrow{font-size:1.1rem;transition:transform .3s ease}.hero-cta:hover .hero-cta-arrow{transform:translate(4px)}.hero-instagram{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 2.25rem;border-radius:50px;font-family:var(--font-body);font-size:.85rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);text-decoration:none;cursor:pointer;border:none;transition:all .4s ease;box-shadow:0 4px 25px #e1306c40}.hero-instagram:hover{transform:translateY(-2px);box-shadow:0 4px 20px #e1306c66}.hero-instagram svg{flex-shrink:0}.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--gold);font-size:.7rem;letter-spacing:3px;text-transform:uppercase;animation:scrollBounce 2.5s ease-in-out infinite}.hero-scroll-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);opacity:.6}@keyframes scrollBounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.section{padding:5rem 2rem;position:relative;z-index:1}.section-header{text-align:center;margin-bottom:4rem}.section-label{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--blue);margin-bottom:.75rem;padding:.35rem 1rem;background:#42abfb14;border-radius:20px;border:1px solid rgba(66,171,251,.15)}.section-title{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,2.75rem);font-weight:700;color:var(--white);margin-bottom:.5rem}.section-title-gold{color:var(--gold)}.section-divider{width:50px;height:3px;background:var(--gold);margin:1rem auto 0;border:none;border-radius:2px}.section-description{max-width:560px;margin:1.25rem auto 0;font-size:.95rem;line-height:1.8;color:#ffffff80;text-align:center}.timeline-section{background:#0e0e128c;padding-bottom:4rem}.timeline-path{max-width:1100px;margin:0 auto;position:relative}.timeline-path:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;background:var(--blue);transform:translate(-50%);opacity:.18;border-radius:2px;z-index:0}.path-era-marker{text-align:center;margin:1rem 0 2.5rem;position:relative;z-index:2}.path-era-pill{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem 1.75rem;background:#c8a24f1f;border:1px solid rgba(200,162,79,.25);border-radius:50px;font-family:var(--font-heading);font-size:1.1rem;font-weight:700;color:var(--gold);letter-spacing:2px}.path-era-subtitle{display:block;margin-top:.5rem;font-size:.8rem;letter-spacing:3px;text-transform:uppercase;color:var(--blue);font-weight:600}.path-era-text{max-width:500px;margin:.75rem auto 0;font-size:.9rem;line-height:1.7;color:#ffffff73}.path-node{position:relative;z-index:2;display:flex;align-items:center;margin-bottom:2rem}.path-node--left{justify-content:flex-start;padding-right:55%}.path-node--right{justify-content:flex-end;padding-left:55%}.path-node-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;background:var(--blue);border:3px solid var(--dark);z-index:3;box-shadow:0 0 20px #42abfb66,0 0 6px #42abfb99}.path-node-connector{position:absolute;top:50%;height:2px;z-index:1;border-radius:1px}.path-node--left .path-node-connector{left:calc(45% + 7px);right:50%;background:#42abfb33}.path-node--right .path-node-connector{left:50%;right:calc(45% + 7px);background:#42abfb33}.path-card{width:100%;max-width:380px;cursor:pointer;position:relative;transition:transform .4s cubic-bezier(.22,1,.36,1)}.path-card:hover{transform:scale(1.03) translateY(-4px)}.path-card-img{width:100%;height:auto;object-fit:contain;border-radius:16px;transition:filter .4s ease,box-shadow .4s ease;box-shadow:0 8px 30px #0006}.path-card:hover .path-card-img{filter:brightness(1.1);box-shadow:0 12px 40px #c8a24f26,0 8px 25px #00000080}.path-card-caption{margin:.6rem 0 0;font-size:.82rem;font-weight:500;color:#ffffffb3;text-align:center;line-height:1.4;letter-spacing:.02em;transition:color .3s ease;pointer-events:none}.path-card:hover .path-card-caption{color:var(--gold)}.path-card-number{position:absolute;top:-10px;right:-10px;width:36px;height:36px;border-radius:50%;background:var(--blue);color:var(--dark);font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #42abfb4d;z-index:4}@media (max-width: 900px){.timeline-path:after{left:24px}.path-node,.path-node--left,.path-node--right{padding-left:56px;padding-right:0;justify-content:flex-start}.path-node-dot{left:24px}.path-node-connector{display:none}.path-card{max-width:100%}.path-card-img{height:auto}.path-node{margin-bottom:1.5rem}}@media (max-width: 500px){.path-card-img{height:auto;border-radius:12px}}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f0;z-index:2000;display:flex;justify-content:center;align-items:center;padding:2rem;cursor:pointer;animation:lbFadeIn .25s ease}@keyframes lbFadeIn{0%{opacity:0}to{opacity:1}}.lightbox-overlay img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:12px;box-shadow:0 0 80px #c8a24f26;cursor:default}.lightbox-close{position:absolute;top:1.25rem;right:1.5rem;font-size:1.75rem;color:var(--white);cursor:pointer;background:#ffffff14;border:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.lightbox-close:hover{background:#c8a24f33;color:var(--gold)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);font-size:2rem;color:var(--white);cursor:pointer;background:#ffffff0f;border:none;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease;-webkit-user-select:none;user-select:none}.lightbox-nav:hover{background:#c8a24f26;color:var(--gold)}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.playlist-section{background:#13131a8c;position:relative;overflow:hidden}.playlist-section:before{content:"";position:absolute;width:350px;height:350px;background:var(--blue);border-radius:50%;filter:blur(140px);opacity:.06;top:-100px;right:-100px}.playlist-content{max-width:700px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:2rem}.playlist-card{display:flex;align-items:center;gap:2.5rem;padding:2.5rem;background:#ffffff08;border:1px solid rgba(200,162,79,.12);border-radius:20px;width:100%;max-width:600px;transition:border-color .3s ease}.playlist-card:hover{border-color:#c8a24f4d}.qr-wrapper{flex-shrink:0;width:160px;height:160px;background:var(--white);border-radius:16px;display:flex;align-items:center;justify-content:center;padding:12px;position:relative;overflow:hidden;box-shadow:0 8px 30px #0003}.qr-wrapper img{width:100%;height:100%;object-fit:contain}.qr-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;color:var(--dark);font-size:.7rem;font-weight:600;text-align:center;letter-spacing:1px}.qr-placeholder-icon{font-size:2.5rem}.playlist-info h3{font-family:var(--font-heading);font-size:1.35rem;color:var(--gold);margin-bottom:.5rem}.playlist-info p{font-size:.9rem;color:#ffffff80;line-height:1.7;margin-bottom:1rem}.playlist-link{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:linear-gradient(135deg,var(--blue),#5ab8fc);color:var(--white);font-size:.8rem;font-weight:700;letter-spacing:1px;border-radius:50px;transition:all .3s ease;box-shadow:0 4px 20px #42abfb33}.playlist-link:hover{transform:translateY(-2px);box-shadow:0 6px 25px #42abfb59}@media (max-width: 768px){.playlist-card{flex-direction:column;text-align:center;padding:2rem;gap:1.5rem}.qr-wrapper{width:140px;height:140px}}.footer{padding:2.5rem 2rem;text-align:center;background:#0e0e128c;border-top:1px solid rgba(255,255,255,.05);position:relative;z-index:1}.footer-brand{display:flex;justify-content:center;margin-bottom:.5rem}.footer-brand img{height:4rem;width:auto;filter:brightness(.8)}.footer-tagline{font-size:.75rem;color:#ffffff59;letter-spacing:2px;text-transform:uppercase;margin-bottom:1rem}.footer-divider{width:30px;height:2px;background:var(--gold);margin:0 auto 1rem;border:none;border-radius:1px}.footer-instagram{display:inline-flex;align-items:center;justify-content:center;color:#ffffff73;transition:color .3s,transform .3s;margin-bottom:1rem}.footer-instagram:hover{color:var(--gold);transform:scale(1.15)}.footer-copy{font-size:.75rem;color:#fff3}.bg-video-section{position:relative;z-index:1;width:100%;max-width:900px;margin:2rem auto 3rem;padding:0 1.5rem}.bg-video-wrapper{position:relative;width:100%;border-radius:16px;overflow:hidden;box-shadow:0 8px 40px #00000080;border:1px solid rgba(200,162,79,.15)}.bg-video{display:block;width:100%;height:auto;border-radius:16px}.bg-music-btn{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1000;display:flex;align-items:center;gap:.4rem;padding:.75rem;border:1px solid rgba(200,162,79,.3);border-radius:50%;background:#0e0e12d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--gold);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #0006}.bg-music-btn:hover{border-color:var(--gold);box-shadow:0 4px 25px #c8a24f40;transform:scale(1.08)}.bg-music-btn.playing{border-color:var(--gold);animation:musicPulse 2s ease-in-out infinite}@keyframes musicPulse{0%,to{box-shadow:0 4px 20px #c8a24f33}50%{box-shadow:0 4px 30px #c8a24f73}}.bg-music-bars{display:flex;align-items:flex-end;gap:2px;height:14px}.bg-music-bar{width:3px;background:var(--gold);border-radius:2px;animation:barBounce .8s ease-in-out infinite}.bg-music-bar:nth-child(1){height:6px;animation-delay:0s}.bg-music-bar:nth-child(2){height:10px;animation-delay:.15s}.bg-music-bar:nth-child(3){height:4px;animation-delay:.3s}@keyframes barBounce{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}:root{--white: #ffffff;--gold: #c8a24f;--blue: #42abfb;--dark: #0e0e12;--dark-secondary: #13131a;--dark-tertiary: #1a1a24;--font-heading: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, sans-serif}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--dark);color:var(--white);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul,ol{list-style:none}#root{max-width:100%;margin:0;padding:0}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.fade-in.visible{opacity:1;transform:translateY(0)}.fade-in-left{opacity:0;transform:translate(-50px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.fade-in-left.visible{opacity:1;transform:translate(0)}.fade-in-right{opacity:0;transform:translate(50px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.fade-in-right.visible{opacity:1;transform:translate(0)}.pop-in{opacity:0;transform:scale(.85);transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1)}.pop-in.visible{opacity:1;transform:scale(1)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--dark)}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:3px}
