:root{--primary:#e4007c;--primary-light:#ff5ba8;--primary-dark:#b10054;--secondary:#00e49e;--secondary-light:#5affba;--secondary-dark:#00b47b;--dark:#222;--light:#fff;--gray:#f5f5f5;--transition:all .3s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--dark);background-color:var(--light);font-family:Poppins,sans-serif;position:relative;overflow-x:hidden}a{color:inherit;text-decoration:none}ul{list-style:none}.noise{opacity:.05;z-index:9999;pointer-events:none;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAUVBMVEWFhYWDg4N3d3dtbW17e3t1dXWBgYGHh4d5eXlzc3OLi4ubm5uVlZWPj4+NjY19fX2JiYl/f39ra2uRkZGZmZlpaWmXl5dvb29xcXGTk5NnZ2c4zIguAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAO0lEQVRIiWNgGAWkAcYEJpCBzQQlsJlCkQpJA0A1GFUyqlQKQJZScYbR1IV0AiM6xkbNGDVj1Iz+NBMAQCkDVqZC2QAAAABJRU5ErkJggg==);width:100%;height:100%;position:fixed;top:0;left:0}.container{width:90%;max-width:1200px;margin:0 auto;padding:2rem 0;position:relative}h1,h2,h3{font-weight:700;line-height:1.2}h1{margin-bottom:1rem;font-size:4rem}h2{margin-bottom:2rem;font-size:2.5rem;display:inline-block;position:relative}h2:after{content:"";background:var(--primary);border-radius:2px;width:50%;height:4px;position:absolute;bottom:-10px;left:0}h3{margin-bottom:1rem;font-size:1.5rem}p{margin-bottom:1rem;line-height:1.6}header{z-index:1000;width:100%;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;justify-content:space-between;align-items:center;padding:1.5rem 5%;display:flex;position:fixed;top:0;left:0;box-shadow:0 2px 10px #0000001a}header.scroll-down{transform:translateY(-100%)}header.scroll-up{transform:translateY(0)}.logo{align-items:center;display:flex}.logo-text{color:var(--primary);transition:var(--transition);font-size:2.5rem;font-weight:700}.logo-text:hover{text-shadow:0 0 15px #e4007c80;transform:scale(1.05)}nav ul{gap:2rem;display:flex}nav ul li a{transition:var(--transition);font-weight:600;position:relative}nav ul li a:after{content:"";background:var(--primary);width:0;height:2px;transition:var(--transition);position:absolute;bottom:-5px;left:0}nav ul li a:hover{color:var(--primary)}nav ul li a:hover:after{width:100%}.language-toggle{align-items:center;gap:.5rem;margin-left:2rem;display:flex}.language-btn{color:var(--dark);cursor:pointer;opacity:.5;transition:var(--transition);background:0 0;border:none;font-family:Poppins,sans-serif;font-size:.9rem;font-weight:600}.language-btn.active{opacity:1;color:var(--primary)}.language-btn:hover{opacity:1}.triptych-gallery{width:100%;height:100vh;margin-top:80px;position:relative;overflow:hidden}.triptych-container{background:#000;width:100%;height:100%;display:flex}.triptych-panel{opacity:0;flex:1;min-width:0;transition:flex .7s cubic-bezier(.61,.03,.12,.9);position:relative;overflow:hidden;transform:translateY(30px)}.triptych-panel.panel-loaded{opacity:1;transition:flex .7s cubic-bezier(.61,.03,.12,.9),opacity .8s,transform .8s;transform:translateY(0)}.triptych-panel.panel-visible{animation:.5s forwards panel-pop}@keyframes panel-pop{0%{transform:scale(.95)}50%{transform:scale(1.02)}to{transform:scale(1)}}.triptych-panel:hover,.triptych-panel.touch-active{flex:1.6}.triptych-panel img{object-fit:cover;width:100%;height:100%;transition:transform .8s;transform:scale(1.1)}.triptych-panel:hover img,.triptych-panel.touch-active img{transform:scale(1)}.panel-overlay{width:100%;color:var(--light);opacity:0;background:linear-gradient(#0000,#000000b3);padding:1.5rem;transition:all .5s;position:absolute;bottom:0;left:0;transform:translateY(20px)}.triptych-panel:hover .panel-overlay,.triptych-panel.touch-active .panel-overlay{opacity:1;transform:translateY(0)}.panel-overlay h3{text-shadow:1px 1px 3px #00000080;margin-bottom:.5rem;font-size:1.8rem;display:inline-block;position:relative}.panel-overlay h3:after{content:"";background:var(--primary);width:0;height:2px;transition:width .4s .3s;position:absolute;bottom:-5px;left:0}.triptych-panel:hover .panel-overlay h3:after,.triptych-panel.touch-active .panel-overlay h3:after{width:100%}.panel-overlay:before{content:"";background:var(--primary);transform-origin:0;width:50px;height:3px;transition:transform .5s .2s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.triptych-panel:hover .panel-overlay:before,.triptych-panel.touch-active .panel-overlay:before{transform:scaleX(1)}.about{background-color:var(--gray);padding:5rem 0;position:relative}.about-content{align-items:center;gap:4rem;display:flex}.about-text{flex:1}.menu{background-color:var(--light);padding:5rem 0}.menu-items{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;display:grid}.menu-item-image{height:300px;transition:var(--transition);cursor:pointer;border-radius:10px;position:relative;overflow:hidden}.menu-item-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.menu-item-image:hover img{transform:scale(1.05)}.menu-overlay{width:100%;color:var(--light);opacity:0;text-align:left;background:linear-gradient(#0000,#000c);padding:2rem;transition:all .5s;position:absolute;bottom:0;left:0;transform:translateY(20px)}.menu-item-image:hover .menu-overlay{opacity:1;transform:translateY(0)}.menu-overlay h3{color:var(--light);margin-bottom:.5rem;font-size:1.8rem}.menu-overlay p{color:#ffffffe6;font-size:1rem;line-height:1.4}.menu-item-image:hover{transform:translateY(-5px);box-shadow:0 15px 30px #e4007c33}.gallery{background-color:var(--gray);padding:5rem 0}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.gallery-item{aspect-ratio:1;cursor:pointer;opacity:0;border-radius:10px;transition:transform .5s,opacity .5s,box-shadow .3s;position:relative;overflow:hidden;transform:translateY(20px)}.gallery-item.animated{opacity:1;transform:translateY(0)}.gallery-item:hover{z-index:2;transform:translateY(-5px);box-shadow:0 8px 15px #e4007c26}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item:after{content:"";background:linear-gradient(#0000,#e4007c99);width:100%;height:0;transition:height .5s;position:absolute;bottom:0;left:0}.gallery-item:hover:after{height:25%}.events{background-color:var(--light);padding:5rem 0}.event-items{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem;display:grid}.event-item{background:var(--gray);text-align:center;transition:var(--transition);border-radius:10px;padding:2rem;box-shadow:0 5px 15px #0000000d}.event-item:hover{transform:translateY(-10px);box-shadow:0 10px 25px #e4007c26}.event-item h3{color:var(--primary);margin-bottom:1rem}.event-item p{margin-bottom:.5rem}.event-date{color:var(--dark);opacity:.7;margin-top:1rem;font-size:.9rem;font-style:italic}.event-main{flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;display:flex}.event-info{flex:0 420px}.event-image{border-radius:10px;flex:0 480px;width:100%;max-width:480px;height:auto;margin:0 auto;display:block;box-shadow:0 5px 15px #0000001a}.event-next{border-top:1px solid #0000001a;margin-top:3rem;padding-top:2.5rem}.event-subtitle{color:var(--primary);margin-top:0}.event-social-link{vertical-align:middle;color:var(--dark);transition:var(--transition);align-items:center;margin:0 .3rem;display:inline-flex}.event-social-link:hover{color:var(--primary)}.event-social-link .fa-icon{width:1.25rem;height:1.25rem}.parallax-section{height:400px;color:var(--light);text-align:center;background-image:url(https://images.unsplash.com/photo-1497935586047-9395ee1e9fc0);background-position:50%;background-size:cover;background-attachment:fixed;justify-content:center;align-items:center;display:flex;position:relative}.parallax-section:before{content:"";background:linear-gradient(135deg,#e4007ccc 0%,#00e49ecc 100%);width:100%;height:100%;position:absolute;top:0;left:0}.parallax-content{z-index:10;padding:2rem;position:relative}.parallax-content h2{text-shadow:2px 2px 10px #0000004d;will-change:transform;font-size:3rem}.parallax-content h2:after{background:var(--light);width:100px;left:50%;transform:translate(-50%)}.team{background-color:var(--light);padding:5rem 0}.team-members{flex-wrap:wrap;justify-content:center;gap:3rem;display:flex}.team-member{text-align:center;background-color:var(--gray);min-width:300px;max-width:400px;transition:var(--transition);opacity:0;border-radius:10px;flex:1;padding:2rem;transition:transform .5s,opacity .5s,box-shadow .3s;position:relative;overflow:hidden;transform:translateY(20px)}.team-member.animated{opacity:1;transform:translateY(0)}.team-member:hover{transform:translateY(-10px);box-shadow:0 15px 30px #e4007c33}.team-member h3{color:var(--dark);margin-bottom:.5rem}.member-bio{margin-bottom:1.5rem;font-size:.95rem}.partners{background-color:var(--gray);padding:5rem 0}.partners-content{text-align:center}.partners-content p{max-width:800px;margin-bottom:3rem;margin-left:auto;margin-right:auto;font-size:1.1rem}.partners-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.partner-item{background:var(--light);text-align:center;transition:var(--transition);opacity:0;color:inherit;border-radius:10px;padding:1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .5s,opacity .5s,box-shadow .3s;display:block;transform:translateY(20px);box-shadow:0 5px 15px #0000000d}.partner-item.animated{opacity:1;transform:translateY(0)}.partner-item:hover{color:var(--primary);transform:translateY(-5px);box-shadow:0 10px 25px #e4007c26}.location{background-color:var(--light);padding:5rem 0}.location-wrapper{align-items:center;gap:4rem;display:flex}.map-container{border-radius:10px;flex:1;height:400px;position:relative;overflow:hidden;box-shadow:0 15px 30px #e4007c33}.map-container iframe{border:none;border-radius:10px;width:100%;height:100%}.location-info{flex:1}.location-detail{align-items:center;margin-bottom:1.5rem;display:flex}.location-detail i,.location-detail .fa-icon{width:1.5rem;height:1.5rem;color:var(--primary);flex-shrink:0;margin-right:1rem;font-size:1.5rem}footer{background-color:var(--dark);color:var(--light);padding:3rem 0 1rem}.footer-content{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.footer-logo p{opacity:.8;margin-top:1rem}.social-links{gap:1rem;display:flex}.social-links a{width:40px;height:40px;transition:var(--transition);background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-links .fa-icon{width:20px;height:20px;color:var(--light)}.social-links a:hover{background-color:var(--primary);transform:translateY(-5px)}.copyright{text-align:center;opacity:.7;border-top:1px solid #ffffff1a;padding-top:2rem;font-size:.9rem}.menu-item-image,.about-content,.location-wrapper,.event-item,.partners-content{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(30px)}.menu-item-image.animated,.about-content.animated,.location-wrapper.animated,.event-item.animated,.partners-content.animated{opacity:1;transform:translateY(0)}@media (max-width:992px){h1{font-size:3rem}h2{font-size:2rem}.about-content,.location-wrapper{flex-direction:column}.map-container{height:300px}.triptych-panel h3{font-size:1.5rem}.gallery-grid{grid-template-columns:repeat(2,1fr)}}.lightbox-modal{z-index:9999;opacity:0;background:#000000e6;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.lightbox-modal.active{opacity:1}.lightbox-content{justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.lightbox-close{color:#fff;cursor:pointer;z-index:10001;transition:var(--transition);font-size:3rem;font-weight:300;line-height:1;position:absolute;top:-50px;right:0}.lightbox-close:hover{color:var(--primary);transform:scale(1.1)}#lightbox-image{object-fit:contain;border-radius:10px;max-width:100%;max-height:100%;transition:transform .3s;box-shadow:0 20px 60px #000c}.lightbox-nav{pointer-events:none;justify-content:space-between;width:100%;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav-btn{color:#fff;cursor:pointer;transition:var(--transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;padding:1rem;font-size:1.5rem;display:flex}.lightbox-nav-btn .fa-icon{width:1.2rem;height:1.2rem}.lightbox-nav-btn:hover{border-color:var(--primary);color:var(--primary);background:#e4007c33;transform:scale(1.1)}.lightbox-nav-btn:active{transform:scale(.95)}#lightbox-prev{margin-left:20px}#lightbox-next{margin-right:20px}@media (max-width:768px){header{flex-direction:column;padding:1rem 5%}nav ul{gap:1rem;margin-top:1rem}.language-toggle{margin-top:1rem;margin-left:0}h1{font-size:2.5rem}.parallax-content h2{font-size:2rem}.footer-content{text-align:center;flex-direction:column;gap:2rem}.triptych-container{flex-direction:column}.triptych-panel{height:33.333%}.triptych-panel:hover{flex:1.3}.triptych-gallery{aspect-ratio:1;height:auto;margin-top:180px}.team-members{flex-direction:column;align-items:center}.team-member{width:100%}.lightbox-close{font-size:2.5rem;top:-40px}.lightbox-nav-btn{width:50px;height:50px;padding:.8rem;font-size:1.2rem}#lightbox-prev{margin-left:10px}#lightbox-next{margin-right:10px}.lightbox-content{max-width:95vw;max-height:95vh}}@media (max-width:576px){.menu-items{grid-template-columns:1fr}.menu-item-image{height:250px}.menu-overlay{opacity:1;padding:1.5rem;transform:translateY(0)}.menu-overlay h3{font-size:1.5rem}nav ul{flex-wrap:wrap;justify-content:center}.triptych-panel .panel-overlay{opacity:1;transform:translateY(0)}.triptych-gallery{margin-top:200px}.gallery-grid{grid-template-columns:1fr}.lightbox-nav-btn{width:40px;height:40px;padding:.6rem;font-size:1rem}.lightbox-close{font-size:2rem;top:-35px}}@media (max-width:768px){.parallax-section{background-attachment:scroll}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.parallax-section{background-attachment:scroll}.parallax-content h2{will-change:auto}}:root{--xmas-red:#9b1c2e;--xmas-red-dark:#6e1220;--xmas-green:#1f5f4a;--xmas-green-dark:#143d30;--xmas-cream:#faf3e7;--xmas-cream-dark:#f1e6d2;--xmas-gold:#c9a25c;--xmas-gold-light:#e8d5ac}.xmas-nav-item a{color:var(--xmas-red);font-weight:600;position:relative}.xmas-nav-item a:after{background:var(--xmas-gold)}.xmas-nav-item a:hover{color:var(--xmas-red-dark)}.xmas-section{background:radial-gradient(circle at 12% 20%, #c9a25c1a, transparent 34%), radial-gradient(circle at 88% 80%, #1f5f4a1a, transparent 38%), var(--xmas-cream);padding:4.5rem 0 3.5rem}.xmas-section-head{text-align:center;max-width:760px;margin:0 auto 2.5rem}.xmas-label{background:var(--xmas-green);color:var(--xmas-cream);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--xmas-gold);border-radius:999px;margin-bottom:1.2rem;padding:.4rem 1.1rem;font-size:.75rem;font-weight:600;display:inline-block}.xmas-section h2{margin-bottom:1.4rem;display:block}.xmas-section h2:after{background:linear-gradient(to right, var(--xmas-red), var(--xmas-gold));width:60%}.xmas-subheading{color:var(--xmas-green-dark);font-size:1.15rem;font-weight:300;line-height:1.5}.xmas-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:3rem;display:grid}.xmas-announcement{background:var(--light);border:1px solid var(--xmas-gold-light);opacity:0;border-radius:16px;padding:2rem;transition:transform .5s,opacity .5s;transform:translateY(20px);box-shadow:0 10px 30px #6e122014}.xmas-announcement.animated{opacity:1;transform:translateY(0)}.xmas-announcement p{margin-bottom:1.1rem}.xmas-closing{color:var(--xmas-red-dark);font-weight:600}.xmas-actions{text-align:center;margin-top:1.4rem}.xmas-visit{color:var(--xmas-green-dark);margin-top:1.3rem;font-weight:500}.xmas-address{color:var(--xmas-green-dark);justify-content:center;align-items:flex-start;gap:.5rem;margin:.6rem auto 0;font-size:.95rem;display:flex}.xmas-address .fa-icon{width:1rem;height:1rem;color:var(--xmas-red);flex-shrink:0;margin-top:.25rem}.xmas-gallery{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.xmas-gallery-item{aspect-ratio:1;cursor:pointer;border:1px solid var(--xmas-gold-light);opacity:0;border-radius:12px;transition:transform .5s,opacity .5s,box-shadow .3s;position:relative;overflow:hidden;transform:translateY(20px);box-shadow:0 4px 14px #143d301a}.xmas-gallery-item.animated{opacity:1;transform:translateY(0)}.xmas-gallery-item:hover{z-index:2;transform:translateY(-5px);box-shadow:0 10px 22px #9b1c2e33}.xmas-gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.xmas-gallery-item:hover img{transform:scale(1.05)}.xmas-gallery-item:after{content:"";background:linear-gradient(#0000,#6e12208c);width:100%;height:0;transition:height .5s;position:absolute;bottom:0;left:0}.xmas-gallery-item:hover:after{height:25%}.xmas-gallery-featured{aspect-ratio:auto;grid-row:span 2}.xmas-gallery-item:last-child{aspect-ratio:auto;grid-column:span 2}.xmas-popup-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;background:#0f1914a6;justify-content:center;align-items:center;padding:1.25rem;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.xmas-popup-overlay.open{animation:.3s both xmas-overlay-in;display:flex}.xmas-popup{background:var(--xmas-cream);border:1px solid var(--xmas-gold);border-radius:18px;width:100%;max-width:640px;max-height:min(88vh,620px);animation:.35s both xmas-dialog-in;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000073}.xmas-popup-media{flex:0 0 42%;min-height:280px}.xmas-popup-media img{object-fit:cover;width:100%;height:100%;display:block}.xmas-popup-body{flex-direction:column;flex:1;justify-content:center;padding:1.6rem 1.5rem;display:flex;overflow-y:auto}.xmas-popup-title{color:var(--xmas-red-dark);margin-bottom:.8rem;font-size:1.35rem;line-height:1.3}.xmas-popup-message{color:var(--xmas-green-dark);margin-bottom:1.2rem}.xmas-popup-cta{background:var(--xmas-green);color:var(--xmas-cream);text-align:center;border:2px solid var(--xmas-gold);min-height:48px;transition:var(--transition);border-radius:999px;padding:.8rem 1.2rem;font-weight:600;display:inline-block}.xmas-popup-cta:hover{background:var(--xmas-green-dark);transform:translateY(-2px)}.xmas-popup-note{color:var(--xmas-red);text-align:center;margin:.9rem 0 0;font-size:.82rem}.xmas-popup-close{width:40px;height:40px;color:var(--xmas-green-dark);cursor:pointer;transition:var(--transition);z-index:2;background:#faf3e7eb;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;line-height:1;display:flex;position:absolute;top:.6rem;right:.6rem;box-shadow:0 2px 8px #00000040}.xmas-popup-close:hover{background:var(--xmas-red);color:var(--xmas-cream);transform:scale(1.08)}.xmas-popup-close:focus-visible{outline:3px solid var(--xmas-gold);outline-offset:2px}.xmas-popup-cta:focus-visible{outline:3px solid var(--xmas-gold);outline-offset:2px}@keyframes xmas-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes xmas-dialog-in{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:992px){.xmas-layout{grid-template-columns:1fr}.xmas-gallery{grid-template-columns:repeat(3,1fr)}.xmas-gallery-item:last-child{aspect-ratio:1;grid-column:auto}}@media (max-width:768px){.xmas-section{padding:3.5rem 0 2.5rem}.xmas-gallery{grid-template-columns:repeat(2,1fr)}.xmas-gallery-item:last-child{aspect-ratio:auto;grid-column:span 2}.xmas-popup{flex-direction:column;max-height:92vh;overflow-y:auto}.xmas-popup-media{flex:none;height:220px;min-height:0}.xmas-popup-body{padding:1.3rem 1.2rem 1.5rem}.xmas-popup-title{font-size:1.2rem}}@media (prefers-reduced-motion:reduce){.xmas-popup-overlay.open,.xmas-popup{animation:none}.xmas-gallery-item,.xmas-gallery-item img,.xmas-announcement,.xmas-popup-cta{transition:none}}
