:root{--primary-orange: #b81d3a;--primary-orange-dark: #b54700;--primary-orange-light: #ff7f2a;--gold: #f4b223;--gold-bright: #ffd066;--gold-dark: #c1880a;--text-white: #ffffff;--text-muted: #120b02;--text-dark: #120b02;--bg-dark: #120b02;--bg-light: #fdfaf6;--bg-alt: #fbf8f5;--bg-card: #ffffff;--font-serif: "Playfair Display", Georgia, serif;--font-sans: "Montserrat", Helvetica, Arial, sans-serif;--max-width: 1260px;--header-height: 80px;--transition-smooth: all .3s cubic-bezier(.25, .8, .25, 1);--shadow-card: 0 4px 15px rgba(184, 29, 58, .03);--shadow-card-hover: 0 12px 25px rgba(184, 29, 58, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;background-color:var(--bg-light)}body{font-family:var(--font-sans);color:var(--text-dark);line-height:1.6;overflow-x:hidden;background-color:var(--bg-light)}body.menu-open{overflow:hidden;height:100vh}a{text-decoration:none;color:inherit;transition:var(--transition-smooth)}ul{list-style:none}.main-header{background-color:var(--bg-dark);height:var(--header-height);position:fixed;top:0;left:0;width:100%;z-index:1000;display:flex;align-items:center;border-bottom:2px solid var(--primary-orange)}.header-container{max-width:var(--max-width);width:100%;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:8px;font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:var(--text-white)}.logo-img{height:60px;width:auto;display:block}.nav-menu ul{display:flex;gap:20px}.nav-link{color:var(--text-white);font-size:.9rem;font-weight:500;padding:8px 4px;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--primary-orange);transition:var(--transition-smooth)}.nav-link:hover{color:var(--gold-bright)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active{color:var(--gold-bright)}.btn-header-cotizar{background-color:var(--primary-orange);color:var(--text-white);font-weight:600;font-size:.95rem;border-radius:18px 0;padding:8px 20px;border:none;transition:var(--transition-smooth)}.btn-header-cotizar:hover{background-color:var(--primary-orange-light);transform:translateY(-2px);box-shadow:0 4px 10px #b81d3a40}.menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;border-radius:50%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);cursor:pointer;z-index:1010;transition:all .3s ease;-webkit-tap-highlight-color:transparent;padding:0;gap:5px}.menu-toggle:focus{outline:none}.menu-toggle:hover{background:#ffffff1a;border-color:var(--primary-orange)}.menu-toggle .bar{width:20px;height:2px;background-color:var(--text-white);border-radius:1px;transition:all .3s cubic-bezier(.4,0,.2,1)}@media(max-width:900px){.menu-toggle{display:flex}.nav-menu{position:fixed;top:0;left:-100%;width:100%;height:100vh;background:radial-gradient(circle at center,#1e0e02fa,#0a0400fc);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:all .5s cubic-bezier(.77,.2,.05,1);padding:120px 24px 60px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;z-index:999;box-shadow:10px 0 30px #00000080;overflow-y:auto;opacity:0;visibility:hidden}.nav-menu.active{left:0;opacity:1;visibility:visible}.nav-menu ul{flex-direction:column;align-items:center;gap:15px;width:100%;margin:auto 0}.nav-menu ul li{width:100%;text-align:center;opacity:0;transform:translateY(20px) scale(.95);transition:all .5s cubic-bezier(.165,.84,.44,1)}.nav-menu.active ul li{opacity:1;transform:translateY(0) scale(1)}.nav-menu.active ul li:nth-child(1){transition-delay:.08s}.nav-menu.active ul li:nth-child(2){transition-delay:.12s}.nav-menu.active ul li:nth-child(3){transition-delay:.16s}.nav-menu.active ul li:nth-child(4){transition-delay:.2s}.nav-menu.active ul li:nth-child(5){transition-delay:.24s}.nav-menu.active ul li:nth-child(6){transition-delay:.28s}.nav-menu.active ul li:nth-child(7){transition-delay:.32s}.nav-menu.active ul li:nth-child(8){transition-delay:.36s}.nav-menu.active ul li:nth-child(9){transition-delay:.4s}.nav-link{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;color:#fff;letter-spacing:1.5px;padding:8px 0;display:inline-block;transition:all .3s cubic-bezier(.25,.8,.25,1);position:relative}.nav-link:after{content:"";position:absolute;bottom:2px;left:50%;width:0;height:2px;background:linear-gradient(90deg,transparent,var(--primary-orange),transparent);transition:all .3s ease;transform:translate(-50%)}.nav-link:hover,.nav-link:focus{color:var(--primary-orange-light);transform:scale(1.08);text-shadow:0 0 15px rgba(184,29,58,.4)}.nav-link:hover:after{width:70%}.header-cta{display:none}.menu-toggle.active .bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.active .bar:nth-child(2){opacity:0}.menu-toggle.active .bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-menu-footer{display:flex;flex-direction:column;align-items:center;gap:15px;width:100%;margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.05);opacity:0;transform:translateY(20px);transition:all .5s ease .5s}.nav-menu.active .nav-menu-footer{opacity:1;transform:translateY(0)}.nav-menu-contact{color:#bca085;font-size:.9rem;font-family:var(--font-sans);display:flex;align-items:center;gap:8px;text-decoration:none;transition:color .3s ease}.nav-menu-contact:hover{color:var(--primary-orange-light)}}.subpage-hero{position:relative;padding:9rem 1.25rem 5.5rem;color:#fff;text-align:center;border-bottom:3px solid var(--primary-orange);overflow:hidden;display:flex;align-items:center;justify-content:center}.subpage-hero-bg-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:1}.subpage-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,#0e0702e0,#0c0601f0);z-index:2}.subpage-hero-container{position:relative;max-width:800px;margin:0 auto;z-index:3}.subpage-hero h1{font-family:var(--font-serif);font-size:clamp(3.2rem,7.5vw,5rem);font-weight:800;margin-bottom:1rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5)}.subpage-hero p{font-size:1.2rem;color:#e0d0c0;max-width:600px;margin:0 auto}.repertorio-section{padding:3.5rem 0 7rem;background:var(--bg-alt);position:relative}.repertorio-container{width:100%;max-width:1140px;margin:0 auto;padding-inline:1.25rem}.repertorio-head{text-align:center;max-width:800px;margin:0 auto 3rem}.repertorio-eyebrow{display:inline-block;background:#cca428;color:#4f0d18;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.35rem .9rem;border-radius:999px;margin-bottom:1rem;box-shadow:0 4px 10px #0000000d}.repertorio-title{font-family:var(--font-serif);font-weight:500;font-size:clamp(2rem,5vw,3rem);color:#000;line-height:1.2;margin:0 0 .75rem}.repertorio-title .text-highlight{color:var(--primary-orange)}.repertorio-intro{color:var(--text-dark);font-size:1.08rem;line-height:1.6;font-weight:500}.repertorio-nav{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:2.2rem;background:#fff;border:1px solid rgba(184,29,58,.1);border-radius:20px;padding:1.2rem;box-shadow:0 5px 15px #b81d3a05}@media(min-width:900px){.repertorio-nav{flex-direction:row;align-items:center;justify-content:space-between;padding:.9rem 1.5rem;border-radius:100px}}.repertorio-search-wrapper{position:relative;width:100%}@media(min-width:900px){.repertorio-search-wrapper{max-width:350px}}.repertorio-search-wrapper input{width:100%;padding:.75rem 1rem .75rem 2.8rem;border-radius:30px;border:1px solid rgba(184,29,58,.18);font-size:.95rem;font-family:var(--font-sans);background:#fff;color:var(--text-dark);outline:none;transition:var(--transition-smooth)}.repertorio-search-wrapper input:focus{border-color:var(--primary-orange);box-shadow:0 4px 12px #b81d3a14}.search-icon{position:absolute;left:1.1rem;top:50%;transform:translateY(-50%);width:1.1rem;height:1.1rem;color:var(--primary-orange);pointer-events:none}.repertorio-tabs-wrapper{display:flex;flex-direction:column;width:100%}@media(min-width:900px){.repertorio-tabs-wrapper{width:auto}}.swipe-hint{display:none;font-size:.82rem;color:var(--primary-orange);text-align:center;margin-top:.5rem;font-weight:700;letter-spacing:.5px;animation:swipeHintAnim 2.5s infinite ease-in-out}@media(max-width:900px){.swipe-hint{display:block}}@keyframes swipeHintAnim{0%{transform:translate(-6px);opacity:.7}50%{transform:translate(6px);opacity:1}to{transform:translate(-6px);opacity:.7}}.repertorio-tabs{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.4rem;scrollbar-width:thin;scrollbar-color:var(--primary-orange) transparent;width:100%}@media(min-width:900px){.repertorio-tabs{width:auto;padding-bottom:0}}.repertorio-tabs::-webkit-scrollbar{height:4px}.repertorio-tabs::-webkit-scrollbar-thumb{background:var(--primary-orange);border-radius:2px}.repertorio-tab{background:#fff;border:1px solid rgba(184,29,58,.1);color:#5c5450;font-family:var(--font-sans);font-weight:600;font-size:.88rem;padding:.55rem 1.05rem;border-radius:30px;cursor:pointer;white-space:nowrap;transition:var(--transition-smooth)}.repertorio-tab:hover{background:#b81d3a0d;color:var(--primary-orange);border-color:var(--primary-orange)}.repertorio-tab.active{background:linear-gradient(135deg,var(--primary-orange) 0%,var(--primary-orange-light) 100%);color:#fff;border-color:transparent;box-shadow:0 4px 12px #b81d3a2e}.repertorio-grid-container{min-height:250px;position:relative}.repertorio-category-info{background:#fff;border:1px solid rgba(184,29,58,.08);border-left:4px solid var(--primary-orange);padding:1rem 1.3rem;border-radius:4px 12px 12px 4px;margin-bottom:1.8rem;font-size:.98rem;line-height:1.6;color:var(--text-dark);font-weight:500;box-shadow:0 4px 12px #00000003}.repertorio-grid{display:grid;grid-template-columns:1fr;gap:.9rem}@media(min-width:600px){.repertorio-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.repertorio-grid{grid-template-columns:repeat(3,1fr)}}.song-card{background:var(--bg-card);border:1px solid rgba(184,29,58,.08);border-radius:30px;padding:10px 22px;display:flex;align-items:center;justify-content:space-between;gap:.8rem;box-shadow:var(--shadow-card);transition:var(--transition-smooth);cursor:pointer;position:relative;user-select:none}.song-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover);border-color:#b81d3a40;background:linear-gradient(135deg,#fff,#fffdfb)}.song-card.selected{background:#fffbf7;border-color:var(--primary-orange);box-shadow:0 6px 18px #b81d3a1a}.song-left{display:flex;align-items:center;gap:.8rem;flex-grow:1}.song-icon-container{display:grid;place-items:center;width:28px;height:28px;background:#b81d3a14;color:var(--primary-orange);border-radius:50%;flex-shrink:0;transition:var(--transition-smooth)}.song-icon-container svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.song-card:hover .song-icon-container{background:var(--primary-orange);color:#fff;transform:scale(1.08) rotate(12deg)}.song-card.selected .song-icon-container{background:var(--primary-orange);color:#fff}.song-details{flex-grow:1}.song-title{font-weight:600;font-size:.95rem;color:var(--text-dark);line-height:1.35;transition:var(--transition-smooth)}.song-card:hover .song-title{color:var(--primary-orange-dark)}.song-desc{font-size:.8rem;color:#8c3b00;margin-top:.15rem;font-style:italic;line-height:1.3}.repertorio-empty{text-align:center;padding:3rem 1rem;font-size:1.02rem;color:#8c3b00;background:#fff;border-radius:12px;border:1px dashed rgba(184,29,58,.2)}.repertorio-footer{margin-top:3.5rem;text-align:center}.repertorio-footer p{font-size:1.02rem;color:#1c1614;margin-bottom:1.2rem}.repertorio-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;background-color:#25d366;color:#fff;font-family:var(--font-serif);font-weight:600;font-size:1.12rem;padding:15px 32px;border-radius:28px 0;text-decoration:none;box-shadow:0 4px 15px #25d3664d;transition:var(--transition-smooth)}.repertorio-btn:hover{background-color:#20ba5a;transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #25d36680}.selection-bar{position:fixed;bottom:-100px;left:0;width:100%;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:3px solid var(--primary-orange);padding:1.1rem 1.5rem;box-shadow:0 -8px 30px #b81d3a14;z-index:1000;transition:bottom .4s cubic-bezier(.175,.885,.32,1.275);color:var(--text-dark)}.selection-bar.active{bottom:0}.selection-bar-container{max-width:var(--max-width);margin:0 auto;display:flex;flex-direction:column;gap:.8rem;align-items:center;justify-content:space-between}@media(min-width:680px){.selection-bar-container{flex-direction:row;gap:0}}.selection-bar-info{display:flex;align-items:center;gap:.8rem}.selection-bar-icon{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;animation:pulseNote 1.5s ease-in-out infinite;color:var(--primary-orange)}.selection-bar-icon svg{width:1.8rem;height:1.8rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@keyframes pulseNote{0%{transform:scale(1)}50%{transform:scale(1.15) rotate(5deg)}to{transform:scale(1)}}.selection-bar-title{font-weight:700;font-size:1.1rem;color:var(--text-dark)}.selection-bar-title span{color:var(--primary-orange)}.selection-bar-subtitle{font-size:.82rem;color:var(--text-muted)}.btn-whatsapp-selection{display:inline-flex;align-items:center;gap:.5rem;background:#25d366;color:#fff;font-weight:700;font-size:.92rem;padding:.7rem 1.6rem;border-radius:50px;border:none;cursor:pointer;transition:var(--transition-smooth);box-shadow:0 4px 15px #25d36633}.btn-whatsapp-selection:hover{background:#20ba5a;transform:translateY(-2px);box-shadow:0 6px 18px #25d36666}.whatsapp-icon{width:1.35rem;height:1.35rem;fill:currentColor;flex-shrink:0}.floating-contact-container{position:fixed;bottom:24px;right:24px;z-index:1100;display:flex;flex-direction:column;gap:14px;align-items:center;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),bottom .4s ease}.floating-contact-container.shift-up{bottom:110px}.floating-btn{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 6px 20px #0000002e;position:relative;cursor:pointer;transition:all .3s cubic-bezier(.25,.8,.25,1)}.floating-btn:hover{transform:scale(1.1) translateY(-3px);box-shadow:0 10px 25px #00000047}.floating-btn:active{transform:scale(.95)}.btn-floating-call{background-color:var(--primary-orange);border:2px solid #ffffff}.btn-floating-call:hover{background-color:var(--primary-orange-light)}.btn-floating-call svg{width:22px;height:22px}.btn-floating-whatsapp{background-color:#25d366;border:2px solid #ffffff}.btn-floating-whatsapp:hover{background-color:#20ba5a}.btn-floating-whatsapp svg{width:28px;height:28px}.whatsapp-ripple{position:absolute;width:100%;height:100%;border-radius:50%;background-color:#25d36666;top:0;left:0;z-index:-1;animation:whatsappPulse 2s infinite ease-out;pointer-events:none}@keyframes whatsappPulse{0%{transform:scale(1);opacity:1}to{transform:scale(1.6);opacity:0}}.floating-tooltip{position:absolute;right:76px;background-color:#120b02f2;color:#fff;font-family:var(--font-sans);font-size:.82rem;font-weight:600;padding:6px 14px;border-radius:6px;white-space:nowrap;opacity:0;visibility:hidden;box-shadow:0 4px 15px #00000026;transition:all .3s ease;pointer-events:none;border:1px solid rgba(184,29,58,.15)}.floating-tooltip:after{content:"";position:absolute;top:50%;right:-6px;transform:translateY(-50%) rotate(45deg);width:12px;height:12px;background-color:#120b02f2;border-right:1px solid rgba(184,29,58,.15);border-top:1px solid rgba(184,29,58,.15)}.floating-btn:hover .floating-tooltip{opacity:1;visibility:visible;right:70px}@media(max-width:600px){.floating-contact-container{bottom:20px;right:20px;gap:12px}.floating-btn{width:52px;height:52px}.btn-floating-call svg{width:20px;height:20px}.btn-floating-whatsapp svg{width:25px;height:25px}.floating-tooltip{display:none}.floating-contact-container.shift-up{bottom:120px}}.footer-social-link{color:#fcf8f2;transition:color .3s ease,transform .3s ease,background-color .3s ease;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.footer-social-link:hover{color:var(--primary-orange);transform:translateY(-3px);background-color:#ffffff1a}
