:root{--color-primary: #C41E24;--color-mahogany: #4A0E0E;--color-gold: #D4A853;--color-cream: #FDF6ED;--color-dark: #1A1210;--color-text: #2C1810;--color-whatsapp: #25D366;--font-display: "Playfair Display", Georgia, serif;--font-body: "Outfit", system-ui, sans-serif;--font-accent: "Dancing Script", cursive;--nav-height: 64px;--section-padding: 5rem 1.5rem}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--color-gold) var(--color-dark)}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-cream);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}::selection{background:var(--color-gold);color:var(--color-dark)}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}.section-label{display:block;font-family:var(--font-accent);font-size:1.1rem;color:var(--color-gold);margin-bottom:.5rem;text-align:center}.section-label--light{color:var(--color-gold)}.section-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);color:var(--color-mahogany);text-align:center;margin-bottom:2.5rem;line-height:1.2}.section-title--light{color:var(--color-cream)}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:.75rem 0;transition:background .4s,box-shadow .4s,padding .3s}.nav-scrolled{background:#1a1210f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 20px #0000004d;padding:.5rem 0}.nav__container{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}.nav__logo{display:flex;align-items:center;gap:.5rem;color:var(--color-cream);font-family:var(--font-display);font-size:1.25rem;font-weight:600;z-index:1001}.nav__logo img{border-radius:50%;width:40px;height:40px;object-fit:cover}.nav__menu{display:flex;align-items:center;gap:.25rem}.nav__link{color:#fdf6edcc;font-size:.9rem;font-weight:400;padding:.5rem .75rem;border-radius:6px;transition:color .3s,background .3s}.nav__link:hover,.nav__link.active{color:var(--color-gold)}.nav__link--cta{background:var(--color-primary);color:#fff!important;font-weight:500;padding:.5rem 1.25rem}.nav__link--cta:hover{background:#a81820}.nav__toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;z-index:1001}.nav__toggle-bar{display:block;width:24px;height:2px;background:var(--color-cream);border-radius:2px;transition:transform .3s,opacity .3s}.nav.nav-open .nav__toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav.nav-open .nav__toggle-bar:nth-child(2){opacity:0}.nav.nav-open .nav__toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:768px){.nav__toggle{display:flex}.nav__menu{position:fixed;top:0;right:0;width:280px;height:100vh;background:#1a1210fa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;align-items:flex-start;padding:5rem 2rem 2rem;gap:.5rem;transform:translate(100%);transition:transform .35s ease}.nav.nav-open .nav__menu{transform:translate(0)}.nav__link{font-size:1.1rem;padding:.75rem 0;width:100%}}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--color-mahogany) 0%,var(--color-dark) 70%);overflow:hidden;padding:2rem 1.5rem}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:1}.hero__geo-lines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero__geo-svg{width:100%;height:100%}.hero__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem}.hero__logo-wrapper{opacity:0;transform:scale(0);transition:opacity .8s ease-out,transform .8s cubic-bezier(.175,.885,.32,1.275)}.hero__logo-wrapper.visible{opacity:1;transform:scale(1)}.hero__logo{width:180px;height:180px;border-radius:50%;object-fit:cover;box-shadow:0 0 60px #c41e244d,0 0 120px #4a0e0e33}.hero__tagline{font-family:var(--font-accent);font-size:clamp(1.5rem,4vw,2.5rem);color:var(--color-gold);opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.hero__tagline.visible{opacity:1;transform:translateY(0)}.hero__badges{display:flex;align-items:center;gap:1.5rem;opacity:0;transform:translateY(20px);transition:opacity .6s ease .1s,transform .6s ease .1s}.hero__badges.visible{opacity:1;transform:translateY(0)}.hero__badge{display:flex;flex-direction:column;align-items:center}.hero__badge-value{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:var(--color-gold)}.hero__badge-label{font-size:.8rem;color:#fdf6ed99;text-transform:uppercase;letter-spacing:.1em}.hero__badge-divider{width:1px;height:40px;background:#d4a8534d}.hero__cta{display:inline-block;font-family:var(--font-body);font-size:1rem;font-weight:600;color:#fff;background:var(--color-primary);padding:.875rem 2.5rem;border-radius:50px;transition:transform .3s,box-shadow .3s,background .3s;opacity:0;transform:translateY(20px)}.hero__cta.visible{opacity:1;transform:translateY(0);transition:opacity .6s ease,transform .6s ease}.hero__cta:hover{transform:translateY(-2px);box-shadow:0 8px 30px #c41e2466;background:#a81820}.hero__scroll-indicator{position:absolute;bottom:2rem;z-index:2}.hero__scroll-indicator span{display:block;width:24px;height:40px;border:2px solid rgba(212,168,83,.4);border-radius:12px;position:relative}.hero__scroll-indicator span:after{content:"";position:absolute;top:6px;left:50%;width:4px;height:8px;background:var(--color-gold);border-radius:2px;transform:translate(-50%);animation:scrollBounce 2s infinite}@keyframes scrollBounce{0%,to{transform:translate(-50%) translateY(0);opacity:1}50%{transform:translate(-50%) translateY(12px);opacity:.3}}.about{position:relative;padding:var(--section-padding);background:var(--color-cream);overflow:hidden}.about__pattern{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.04;background-image:linear-gradient(45deg,var(--color-mahogany) 25%,transparent 25%),linear-gradient(-45deg,var(--color-mahogany) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--color-mahogany) 75%),linear-gradient(-45deg,transparent 75%,var(--color-mahogany) 75%);background-size:40px 40px;background-position:0 0,0 20px,20px -20px,-20px 0}.about__container{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;position:relative;z-index:1}.about__text{opacity:0;transform:translate(-40px);transition:opacity .8s ease,transform .8s ease}.about__text.visible{opacity:1;transform:translate(0)}.about__description{font-size:1.05rem;color:var(--color-text);margin-bottom:1rem;line-height:1.7}.about__stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;opacity:0;transform:translate(40px);transition:opacity .8s ease,transform .8s ease}.about__stats.visible{opacity:1;transform:translate(0)}.about__stat{text-align:center;padding:1.5rem 1rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #2c18100f;transition:transform .3s,box-shadow .3s}.about__stat:hover{transform:translateY(-4px);box-shadow:0 8px 30px #2c18101a}.about__stat-number{display:block;font-family:var(--font-display);font-size:2.5rem;font-weight:700;color:var(--color-gold);line-height:1.1}.about__stat-label{display:block;font-size:.85rem;color:var(--color-text);opacity:.7;margin-top:.25rem}@media(max-width:768px){.about__container{grid-template-columns:1fr;gap:2rem}.about__text,.about__stats{transform:translateY(30px)}}.services{padding:var(--section-padding);background:linear-gradient(170deg,var(--color-mahogany) 0%,#2d0808 100%)}.services__container{max-width:1100px;margin:0 auto}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.services__card{background:#ffffff0a;border:1px solid rgba(212,168,83,.1);border-radius:16px;padding:2rem 1.5rem;text-align:center;transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease;opacity:0;transform:translateY(30px)}.services__card.visible{opacity:1;transform:translateY(0)}.services__card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #0000004d;border-color:var(--color-gold)}.services__icon{margin-bottom:1rem}.services__icon svg{margin:0 auto}.services__card-title{font-family:var(--font-display);font-size:1.25rem;color:var(--color-cream);margin-bottom:.75rem}.services__card-text{font-size:.9rem;color:#fdf6eda6;line-height:1.6}@media(max-width:1200px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.services__grid{grid-template-columns:1fr}}.package{padding:var(--section-padding);background:var(--color-cream);position:relative;overflow:hidden}.package__container{max-width:800px;margin:0 auto;position:relative}.package__notes{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.package__note{position:absolute;font-size:2rem;color:var(--color-gold);opacity:.15;animation:floatNote 6s ease-in-out infinite}.package__note--1{top:10%;left:5%;animation-delay:0s}.package__note--2{top:30%;right:5%;animation-delay:1.5s;font-size:1.5rem}.package__note--3{bottom:20%;left:10%;animation-delay:3s;font-size:2.5rem}.package__note--4{bottom:10%;right:10%;animation-delay:4.5s;font-size:1.8rem}@keyframes floatNote{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-15px) rotate(5deg)}75%{transform:translateY(10px) rotate(-3deg)}}.package__card{position:relative;z-index:1;background:#fff;border:2px solid var(--color-gold);border-radius:20px;padding:3rem 2.5rem;box-shadow:0 10px 50px #2c181014;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.package__card.visible{opacity:1;transform:translateY(0)}.package__badge{position:absolute;top:-14px;right:2rem;background:var(--color-gold);color:var(--color-dark);font-family:var(--font-display);font-weight:700;font-size:.95rem;padding:.4rem 1.25rem;border-radius:50px;box-shadow:0 4px 12px #d4a8534d}.package__subtitle{font-family:var(--font-display);font-size:1.3rem;color:var(--color-mahogany);margin-bottom:1.5rem;text-align:center}.package__list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.package__item{display:flex;align-items:flex-start;gap:.75rem;font-size:1rem;line-height:1.5}.package__check{flex-shrink:0;margin-top:2px}.package__cta-area{text-align:center;border-top:1px solid rgba(212,168,83,.2);padding-top:1.5rem}.package__note-text{font-size:.9rem;color:var(--color-text);opacity:.7;margin-bottom:1rem}.package__cta{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:1rem;font-weight:600;color:#fff;background:var(--color-whatsapp);padding:.875rem 2rem;border-radius:50px;transition:transform .3s,box-shadow .3s}.package__cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px #25d3664d}@media(max-width:768px){.package__card{padding:2.5rem 1.5rem}.package__badge{right:1rem;font-size:.85rem}}.repertoire{padding:var(--section-padding);background:var(--color-cream);position:relative;overflow:hidden}.repertoire__container{max-width:900px;margin:0 auto;position:relative;z-index:1}.repertoire__wave{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);pointer-events:none}.repertoire__wave svg{width:100%;height:60px}.repertoire__tabs{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem}.repertoire__tab{font-family:var(--font-body);font-size:.95rem;font-weight:500;color:var(--color-text);background:transparent;border:2px solid rgba(74,14,14,.15);padding:.6rem 1.5rem;border-radius:50px;cursor:pointer;transition:all .3s}.repertoire__tab:hover{border-color:var(--color-gold);color:var(--color-mahogany)}.repertoire__tab--active,.repertoire__tab.active{background:var(--color-mahogany);color:var(--color-cream);border-color:var(--color-mahogany)}.repertoire__panel{display:none;text-align:center;margin-bottom:2.5rem}.repertoire__panel--active,.repertoire__panel.active{display:block}.repertoire__panel-description{font-size:1rem;color:var(--color-text);opacity:.75;margin-bottom:1.25rem}.repertoire__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.repertoire__chip{display:inline-block;font-size:.85rem;font-weight:500;padding:.4rem 1rem;border-radius:50px;background:var(--color-mahogany);color:var(--color-cream);transition:transform .2s,box-shadow .2s}.repertoire__chip:hover{transform:scale(1.05)}.repertoire__chip--outline{background:transparent;color:var(--color-mahogany);border:1.5px solid var(--color-mahogany)}.repertoire__chip--outline:hover{background:var(--color-mahogany);color:var(--color-cream)}.repertoire__styles,.repertoire__formations{margin-top:2.5rem;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.repertoire__styles.visible,.repertoire__formations.visible{opacity:1;transform:translateY(0)}.repertoire__styles-title,.repertoire__formations-title{font-family:var(--font-display);font-size:1.3rem;color:var(--color-mahogany);text-align:center;margin-bottom:1rem}.repertoire__formation-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.repertoire__formation{display:flex;align-items:center;gap:.4rem;font-size:.95rem;padding:.5rem 1.25rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #2c18100f;transition:transform .2s}.repertoire__formation:hover{transform:translateY(-2px)}.repertoire__formation-icon{color:var(--color-gold);font-size:1rem}.awards{padding:var(--section-padding);background:linear-gradient(170deg,var(--color-dark) 0%,#2a1008 100%)}.awards__container{max-width:1000px;margin:0 auto}.awards__consecutive{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem;opacity:0;transform:scale(.8);transition:opacity .6s ease,transform .6s cubic-bezier(.175,.885,.32,1.275)}.awards__consecutive.visible{opacity:1;transform:scale(1)}.awards__consecutive-number{font-family:var(--font-display);font-size:4rem;font-weight:700;color:var(--color-gold);line-height:1}.awards__consecutive-text{font-size:1rem;color:#fdf6ed99;text-transform:uppercase;letter-spacing:.15em}.awards__timeline{position:relative;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;margin-bottom:2rem}.awards__timeline-line{position:absolute;top:50%;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--color-gold),transparent);transform:translateY(-50%)}.awards__year{position:relative;display:flex;flex-direction:column;align-items:center;gap:.75rem;opacity:0;transform:scale(0) translateY(10px);transition:opacity .5s ease,transform .5s cubic-bezier(.175,.885,.32,1.275)}.awards__year.visible{opacity:1;transform:scale(1) translateY(0)}.awards__year-dot{width:18px;height:18px;border-radius:50%;background:var(--color-gold);border:3px solid var(--color-dark);box-shadow:0 0 0 2px var(--color-gold);z-index:1}.awards__year-label{font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--color-cream)}.awards__year--latest .awards__year-dot{background:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary),0 0 15px #c41e2466}.awards__year--latest .awards__year-label{color:var(--color-gold);font-size:1.1rem}.awards__source{text-align:center;font-size:.9rem;color:#fdf6ed80;margin-bottom:2.5rem}.awards__source a{color:var(--color-gold);text-decoration:underline;text-underline-offset:2px}.awards__source a:hover{color:var(--color-cream)}.awards__testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.awards__testimonials.visible{opacity:1;transform:translateY(0)}.awards__testimonial{background:#ffffff0a;border:1px solid rgba(212,168,83,.15);border-radius:16px;padding:1.75rem;position:relative}.awards__testimonial:before{content:"“";position:absolute;top:.5rem;left:1rem;font-family:var(--font-display);font-size:4rem;color:var(--color-gold);opacity:.2;line-height:1}.awards__testimonial-text{font-size:.95rem;font-style:italic;color:#fdf6edcc;line-height:1.6;margin-bottom:1rem;position:relative;z-index:1}.awards__testimonial-author{display:flex;justify-content:space-between;align-items:center}.awards__testimonial-name{font-size:.85rem;font-weight:600;color:var(--color-gold)}.awards__testimonial-rating{color:var(--color-gold);font-size:.8rem;letter-spacing:2px}@media(max-width:768px){.awards__testimonials{grid-template-columns:1fr}.awards__timeline{gap:.25rem;padding:1rem 0}.awards__year-label{font-size:.8rem}}.contact{padding:var(--section-padding);padding-bottom:2rem;background:var(--color-dark)}.contact__container{max-width:1000px;margin:0 auto}.contact__header{text-align:center;margin-bottom:3rem}.contact__subtitle{font-size:1.05rem;color:#fdf6ed99;max-width:500px;margin:0 auto}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:3rem}.contact__info{display:flex;flex-direction:column;gap:1.25rem;opacity:0;transform:translate(-30px);transition:opacity .8s ease,transform .8s ease}.contact__info.visible{opacity:1;transform:translate(0)}.contact__item{display:flex;align-items:center;gap:1rem}.contact__icon{flex-shrink:0}.contact__item-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#fdf6ed66;margin-bottom:.15rem}.contact__item-value{font-size:.95rem;color:var(--color-cream);transition:color .3s}a.contact__item-value:hover{color:var(--color-gold)}.contact__coverage{opacity:0;transform:translate(30px);transition:opacity .8s ease,transform .8s ease}.contact__coverage.visible{opacity:1;transform:translate(0)}.contact__coverage-title{font-family:var(--font-display);font-size:1.4rem;color:var(--color-cream);margin-bottom:.5rem}.contact__coverage-text{font-size:.9rem;color:#fdf6ed80;margin-bottom:1rem}.contact__states{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.contact__state{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:#fdf6edb3;padding:.35rem .75rem;background:#ffffff0a;border-radius:8px;border:1px solid rgba(212,168,83,.1)}.contact__recommendation{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#d4a8531a;border:1px solid rgba(212,168,83,.25);border-radius:12px;opacity:0;transform:scale(.8);transition:opacity .6s ease,transform .6s cubic-bezier(.175,.885,.32,1.275)}.contact__recommendation.visible{opacity:1;transform:scale(1)}.contact__recommendation-number{font-family:var(--font-display);font-size:2rem;font-weight:700;color:var(--color-gold)}.contact__recommendation-text{font-size:.85rem;color:#fdf6ed99}.contact__social{display:flex;justify-content:center;gap:1rem;margin-bottom:2.5rem;padding-top:2rem;border-top:1px solid rgba(212,168,83,.1);opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.contact__social.visible{opacity:1;transform:translateY(0)}.contact__social-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#ffffff0f;border:1px solid rgba(212,168,83,.15);color:#fdf6ed99;transition:all .3s}.contact__social-link:hover{color:var(--color-gold);border-color:var(--color-gold);transform:translateY(-3px)}.contact__bottom{text-align:center;padding-top:1.5rem;border-top:1px solid rgba(212,168,83,.08)}.contact__bottom-logo{width:40px;height:40px;border-radius:50%;margin:0 auto .75rem;opacity:.5}.contact__copyright{font-size:.8rem;color:#fdf6ed59;margin-bottom:.25rem}.contact__location{font-size:.75rem;color:#fdf6ed40}@media(max-width:768px){.contact__grid{grid-template-columns:1fr;gap:2rem}.contact__info,.contact__coverage{transform:translateY(30px)}}.whatsapp-float{position:fixed;bottom:24px;right:24px;width:56px;height:56px;background:var(--color-whatsapp);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #25d36659;z-index:999;transition:transform .3s,box-shadow .3s}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 24px #25d36673}.whatsapp-float.pulse{animation:whatsappPulse 1s ease}@keyframes whatsappPulse{0%{box-shadow:0 4px 16px #25d36659}50%{box-shadow:0 4px 16px #25d36659,0 0 0 12px #25d36626}to{box-shadow:0 4px 16px #25d36659,0 0 0 24px #25d36600}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}.stagger-children>*{opacity:0;transform:translateY(20px);transition:opacity .5s ease var(--delay, 0s),transform .5s ease var(--delay, 0s)}.stagger-children>.visible{opacity:1;transform:translateY(0)}:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}body.nav-open{overflow:hidden}@media(max-width:768px){body.nav-open:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:999}}.gallery{padding:var(--section-padding);background:linear-gradient(170deg,#2d0808 0%,var(--color-dark) 100%);overflow:hidden}.gallery__header{text-align:center;max-width:700px;margin:0 auto 3rem}.gallery__subtitle{color:#fdf6ed8c;font-size:1.05rem;margin-top:-1.5rem}.gallery__carousel{position:relative;max-width:1000px;margin:0 auto;overflow:hidden;border-radius:16px;box-shadow:0 20px 60px #00000080}.gallery__track{display:flex;transition:transform .55s cubic-bezier(.25,.46,.45,.94);will-change:transform}.gallery__slide{flex:0 0 100%;min-width:0;position:relative;aspect-ratio:16 / 9;overflow:hidden}.gallery__slide-bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;transition:transform .8s ease}.gallery__slide:hover .gallery__slide-bg{transform:scale(1.04)}.gallery__slide-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1a121038;z-index:1;pointer-events:none}.gallery__slide-bg--1{background-image:url(/fotos/foto-recepcion.jpg);background-size:cover;background-position:center top}.gallery__slide-bg--2{background-image:url(/fotos/foto-escenario.jpg);background-size:cover;background-position:center}.gallery__slide-bg--3{background-image:url(/fotos/foto-banda.jpg);background-size:cover;background-position:center top}.gallery__slide-bg--4{background-image:url(/fotos/foto-boda-exterior.jpg);background-size:cover;background-position:center}.gallery__slide-bg--5{background-image:url(/fotos/foto-palapa.jpg);background-size:cover;background-position:center}.gallery__slide-overlay{position:absolute;bottom:0;left:0;right:0;padding:2rem 2rem 1.75rem;background:linear-gradient(to top,rgba(26,18,16,.92) 0%,rgba(26,18,16,.4) 60%,transparent 100%);z-index:2}.gallery__slide-tag{display:inline-block;padding:.25rem .8rem;background:var(--color-gold);color:var(--color-dark);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;border-radius:100px;margin-bottom:.6rem}.gallery__slide-caption{color:var(--color-cream);font-family:var(--font-display);font-size:clamp(1rem,2.5vw,1.4rem);font-style:italic;line-height:1.3}.gallery__btn{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:#1a1210a6;border:1px solid rgba(212,168,83,.35);color:var(--color-gold);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease;z-index:10}.gallery__btn:hover{background:var(--color-gold);color:var(--color-dark);border-color:var(--color-gold);transform:translateY(-50%) scale(1.1)}.gallery__btn--prev{left:1rem}.gallery__btn--next{right:1rem}.gallery__counter{position:absolute;top:1rem;right:1rem;background:#1a121099;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(212,168,83,.2);color:var(--color-cream);font-size:.85rem;padding:.3rem .8rem;border-radius:100px;font-variant-numeric:tabular-nums;z-index:10;line-height:1.5}#galleryCurrentSlide{color:var(--color-gold);font-weight:700}.gallery__counter-sep{margin:0 .2rem;opacity:.4}.gallery__dots{display:flex;justify-content:center;gap:.4rem;margin-top:1.25rem}.gallery__dot{width:8px;height:8px;border-radius:100px;background:#d4a8534d;border:none;cursor:pointer;transition:all .3s ease;padding:0}.gallery__dot--active{background:var(--color-gold);width:28px}@media(max-width:768px){.gallery__carousel{border-radius:8px}.gallery__btn{width:40px;height:40px}.gallery__slide-deco{width:80px;height:80px}}.quote{padding:var(--section-padding);background:var(--color-cream);position:relative;overflow:hidden}.quote:before{content:"";position:absolute;top:-120px;right:-120px;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(196,30,36,.04) 0%,transparent 70%);pointer-events:none}.quote__container{max-width:800px;margin:0 auto}.quote__header{text-align:center;margin-bottom:3rem}.quote__subtitle{color:var(--color-text);opacity:.65;font-size:1.05rem;margin-top:-1.5rem;max-width:540px;margin-left:auto;margin-right:auto}.quote__form{background:#fff;border-radius:20px;padding:2.5rem;box-shadow:0 8px 40px #2c181014;border:1px solid rgba(212,168,83,.15)}.quote__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.quote__field{display:flex;flex-direction:column;gap:.4rem}.quote__field--full{grid-column:1 / -1}.quote__label{font-size:.9rem;font-weight:600;color:var(--color-mahogany)}.quote__label-required{color:var(--color-primary);margin-left:2px}.quote__label-optional{font-weight:400;font-size:.82rem;color:var(--color-text);opacity:.55;margin-left:2px}.quote__input{width:100%;padding:.75rem 1rem;border:1.5px solid rgba(74,14,14,.15);border-radius:10px;font-family:var(--font-body);font-size:.95rem;color:var(--color-text);background:#fafafa;transition:border-color .2s,box-shadow .2s,background .2s;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.quote__input:focus{border-color:var(--color-gold);background:#fff;box-shadow:0 0 0 3px #d4a85326}.quote__input::placeholder{color:#2c181059}.quote__select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234A0E0E' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;background-color:#fafafa;padding-right:2.5rem}.quote__textarea{resize:vertical;min-height:110px}.quote__actions{display:flex;justify-content:center;margin-top:.5rem}.quote__submit{display:inline-flex;align-items:center;gap:.6rem;padding:1rem 2.5rem;background:var(--color-primary);color:#fff;font-family:var(--font-body);font-size:1rem;font-weight:600;border:none;border-radius:100px;cursor:pointer;transition:all .25s ease;letter-spacing:.02em}.quote__submit:hover:not(:disabled){background:#a51a20;transform:translateY(-2px);box-shadow:0 8px 24px #c41e244d}.quote__submit:active:not(:disabled){transform:translateY(0)}.quote__submit:disabled{opacity:.65;cursor:not-allowed}.quote__feedback{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;border-radius:12px;margin-top:1.25rem}.quote__feedback[hidden]{display:none}.quote__feedback--success{background:#25d36614;border:1px solid rgba(37,211,102,.3);color:#1a7a40}.quote__feedback--error{background:#c41e240f;border:1px solid rgba(196,30,36,.25);color:var(--color-primary)}.quote__feedback svg{flex-shrink:0;margin-top:2px}.quote__feedback strong{display:block;margin-bottom:.2rem;font-size:.95rem}.quote__feedback p{font-size:.88rem;opacity:.85;margin:0;line-height:1.4}@media(max-width:768px){.quote__grid{grid-template-columns:1fr}.quote__form{padding:1.5rem}}
