@keyframes scrollAnimation{0%,to{transform:translateY(0);opacity:.8}50%{transform:translateY(15px);opacity:.4}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes logoFadeIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.hero{width:100%;height:100vh;height:100dvh;position:relative;overflow:hidden;cursor:default}.hero__background{background-image:url(../media/images/hero-background.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;transition:transform .5s ease-out;will-change:transform;z-index:1}.hero__background,.hero__hover-ray,.hero__overlay{position:absolute;top:0;left:0;width:100%;height:100%}.hero__overlay{background:rgba(0,0,0,.4);z-index:2;transition:background .5s ease}.hero__hover-ray{background:radial-gradient(circle 400px at var(--x, 50%) var(--y, 50%),rgba(255,255,255,.2) 0%,rgba(255,255,255,.1) 30%,transparent 60%);opacity:0;z-index:3;pointer-events:none;transition:opacity .3s ease;mix-blend-mode:overlay}.hero:hover .hero__overlay{background:rgba(0,0,0,.2)}.hero:hover .hero__background{transform:scale(1.02)}.hero:hover .hero__hover-ray,.hours__note a:hover{opacity:.7}.hero__content{position:absolute;z-index:4;text-align:center;width:90%;max-width:600px;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center}.hero__logo{max-width:100%;height:auto;filter:drop-shadow(0 0 10px rgba(0,0,0,.3));opacity:0;will-change:opacity,transform}.hero__logo.loaded{animation:logoFadeIn 1.5s ease-out forwards}.hero__title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scroll-indicator{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:5;opacity:0;animation:fadeIn 1s ease 1.5s forwards;transition:opacity .3s ease}.scroll-indicator__circle{width:32px;height:52px;border:2px solid rgba(255,255,255,.3);border-radius:25px;position:relative;display:flex;justify-content:center}.scroll-indicator__dot{width:4px;height:4px;background-color:#fff;border-radius:50%;position:absolute;top:8px;animation:scrollAnimation 2s infinite;opacity:.8}.content{width:100%;max-width:1600px;margin:0 auto;padding:6rem 2rem;display:flex;align-items:center;gap:6rem;background-color:#fff;position:relative}.content::before,.content__video::before{content:"";position:absolute;pointer-events:none}.content::before{top:-30%;right:-5%;width:70%;height:200%;background-image:url(../media/images/decorative-bg.png);background-size:contain;background-repeat:no-repeat;background-position:top center;opacity:.04;z-index:0}.content__video{flex:0 0 auto;width:600px;max-width:100%;height:700px;position:relative;z-index:1}.content__video-element{width:100%;height:100%;object-fit:cover;display:block}.content__video::before{top:-10px;left:-10px;right:-10px;bottom:-10px;border:2px solid var(--primary-burgundy);opacity:.15;z-index:10}.content__text{flex:1;position:relative;z-index:1}.testimonial,.testimonial__content{position:relative;margin:0 auto;width:100%;background-color:#fff}.testimonial{max-width:1600px;padding:6rem 2rem;font-family:"Montserrat",sans-serif;color:#1a1a1a}.testimonial__content{border:2px solid silver;padding:5rem;text-align:center;box-shadow:0 3px 10px rgba(0,0,0,.05)}.testimonial__quote,.testimonial__quote-symbol{margin-bottom:2.5rem;font-family:"Montserrat",sans-serif}.testimonial__quote{margin-bottom:.8rem}.testimonial__quote-symbol{font-size:150px;line-height:0;color:#e0e0e0;margin-top:1rem;text-align:center}.testimonial__quote{font-size:2.2rem;line-height:1.5;color:#1a1a1a;font-weight:300;max-width:85%;margin-left:auto;margin-right:auto}.testimonial__quote strong{font-weight:500;color:#000}.testimonial__author{font-size:1.6rem;color:var(--primary-burgundy);margin-bottom:.3rem;font-weight:500;font-family:"Montserrat",sans-serif}.testimonial__role{font-size:.9rem;color:#505050;text-transform:uppercase;letter-spacing:1.5px;font-family:"Montserrat",sans-serif;font-weight:400}.location__description,.location__title{font-family:"Montserrat",sans-serif;text-align:center}.location__title{font-size:4.5rem;color:var(--primary-burgundy);margin-bottom:2rem;font-weight:500;line-height:1.1}.location__description{font-size:1.15rem;line-height:1.7;color:var(--text-dark);max-width:1600px;margin:0 auto 3rem;font-weight:300}.location__map-container{position:relative;width:100%;max-width:1600px;margin:0 auto;border-radius:4px;overflow:hidden;box-shadow:0 15px 40px rgba(0,0,0,.1)}.location__map{width:100%;height:500px;border:0;display:block}.hours,.hours__content{position:relative;background-color:#fff}.hours{width:100%;max-width:1600px;margin:0 auto;padding:6rem 2rem;font-family:"Montserrat",sans-serif;color:#2c2c2c;overflow:visible}.hours__content{box-shadow:0 20px 50px rgba(0,0,0,.08);border-radius:2px;padding:4rem;z-index:2}.hours__card,.hours__title{position:relative;text-align:center}.hours__title{font-size:4.5rem;color:var(--primary-burgundy);font-weight:500;margin-bottom:3rem;padding-bottom:1rem}.hours__title::after{content:"";bottom:0;width:40px;height:1px;opacity:.5}.hours__card{display:flex;flex-direction:column;align-items:center;padding:1.5rem .5rem;transition:transform .3s ease,box-shadow .3s ease;border-radius:2px;background-color:#fff}.hours__card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.05);background-color:#fdfdfd}.hours__day,.hours__note a{color:var(--primary-burgundy)}.hours__day{font-size:1.1rem;font-weight:500;margin-bottom:1rem;position:relative;padding-bottom:.8rem}.hours__card--today::before,.hours__day::after,.hours__title::after{position:absolute;left:50%;transform:translateX(-50%);background-color:var(--primary-burgundy)}.hours__day::after{content:"";bottom:0;width:15px;height:1px;opacity:.3}.hours__time{font-size:.95rem;color:#505050;line-height:1.6;font-weight:400}.hours__time--closed{font-style:italic;opacity:.7}.hours__card--today{border:1px solid rgba(127,31,43,.1);background-color:rgba(127,31,43,.02)}.hours__card--today .hours__day{font-weight:600}.hours__card--today::before{content:"Oggi";top:-10px;color:#fff;font-size:.7rem;padding:.2rem .7rem;border-radius:2px;letter-spacing:.5px;font-weight:500}.hours__note{text-align:center;margin-top:3rem;font-size:.95rem;color:#505050;font-weight:300;max-width:600px;margin-left:auto;margin-right:auto}.hours__note a{text-decoration:none;transition:opacity .3s ease}.cta{padding:0;font-family:"Montserrat",sans-serif;color:#fff;position:relative;height:45vh;min-height:350px;display:flex;align-items:center;justify-content:center;overflow:hidden}.cta__background,.cta__overlay{position:absolute;top:0;left:0;width:100%;height:100%}.cta__background{background-image:url(../media/images/cta-background.jpg);background-size:cover;background-position:center center;z-index:1;transition:transform .8s var(--transition-cubic);will-change:transform}.cta__overlay{background:linear-gradient(to bottom,rgba(0,0,0,.4),rgba(0,0,0,.6));z-index:2}.cta__container{max-width:1600px;margin:0 auto;padding:0 2rem;position:relative;z-index:3;text-align:center;width:100%}.cta__content{display:flex;flex-direction:column;align-items:center;color:#fff}.cta .decorative-wrapper{z-index:3}.cta .decorative{border-color:#fff;opacity:.15}.cta .decorative--top-left{top:30px;left:30px;width:100px;height:100px}.cta .decorative--bottom-right{bottom:30px;right:30px;width:100px;height:100px}.cta:hover .decorative--top-left{transform:translate(5px,5px);opacity:.2}.cta:hover .decorative--bottom-right{transform:translate(-5px,-5px);opacity:.2}
