.elementor-1502 .elementor-element.elementor-element-4804f4e:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-4804f4e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:radial-gradient(at center center, #3D2E24 0%, #0F0D0B 100%);}.elementor-1502 .elementor-element.elementor-element-4804f4e > .elementor-container{min-height:400px;}.elementor-1502 .elementor-element.elementor-element-4804f4e > .elementor-background-overlay{opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-4804f4e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-21320a0 .elementor-wrapper{--video-aspect-ratio:0.5625;}.elementor-1502 .elementor-element.elementor-element-8aa8117 > .elementor-widget-container{margin:66px 0px -64px 0px;}.elementor-1502 .elementor-element.elementor-element-8aa8117 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:0.4vw;font-weight:200;text-transform:uppercase;letter-spacing:1.9px;word-spacing:1px;-webkit-text-stroke-color:#000;stroke:#000;color:#E8C5B0;}.elementor-1502 .elementor-element.elementor-element-ad5b8a6 > .elementor-widget-container{margin:0px 0px -51px 0px;}.elementor-1502 .elementor-element.elementor-element-ad5b8a6{text-align:start;}.elementor-1502 .elementor-element.elementor-element-ad5b8a6 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:4vw;-webkit-text-stroke-color:#000;stroke:#000;color:#FDFAF6;}.elementor-1502 .elementor-element.elementor-element-d4f9c35 > .elementor-widget-container{margin:0px 0px -25px 0px;}.elementor-1502 .elementor-element.elementor-element-d4f9c35 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:4vw;font-weight:200;font-style:italic;color:#E8C5B0;}.elementor-1502 .elementor-element.elementor-element-7008fc3 > .elementor-widget-container{margin:0px 0px 15px 0px;}.elementor-1502 .elementor-element.elementor-element-7008fc3 .elementor-heading-title{font-family:"Playfair Display", Sans-serif;font-size:4vw;color:#FDFAF6;}.elementor-1502 .elementor-element.elementor-element-ee5e4e0{text-align:start;}.elementor-1502 .elementor-element.elementor-element-ee5e4e0 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-size:0.6vw;font-weight:400;line-height:16px;letter-spacing:-0.2px;word-spacing:0px;color:#A89C93;}.elementor-1502 .elementor-element.elementor-element-fffe7fd:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-fffe7fd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FDFAF6;}.elementor-1502 .elementor-element.elementor-element-fffe7fd{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;}.elementor-1502 .elementor-element.elementor-element-fffe7fd > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-4df6722:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-1502 .elementor-element.elementor-element-4df6722 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FDFAF6;}.elementor-1502 .elementor-element.elementor-element-4df6722 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-4df6722 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-9ed8f4a .elementor-heading-title{font-family:"Playfair", Sans-serif;color:#1C1714;}.elementor-1502 .elementor-element.elementor-element-2ebfaeb .elementor-heading-title{font-family:"Playfair Display", Sans-serif;}.elementor-1502 .elementor-element.elementor-element-a33dd24 .elementor-heading-title{font-family:"DM Sans", Sans-serif;font-weight:300;-webkit-text-stroke-color:#000;stroke:#000;color:#8A7060;}.elementor-1502 .elementor-element.elementor-element-4404c7c:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-4404c7c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:radial-gradient(at center center, #3D2E24 0%, #0F0D0B 100%);}.elementor-1502 .elementor-element.elementor-element-4404c7c{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-4404c7c > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-546fef7{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-151d2c6:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-151d2c6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FDFAF6;}.elementor-1502 .elementor-element.elementor-element-151d2c6{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;}.elementor-1502 .elementor-element.elementor-element-151d2c6 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-ef5b6b9{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-2019dcc:not( .elementor-widget-image ) .elementor-widget-container, .elementor-1502 .elementor-element.elementor-element-2019dcc.elementor-widget-image .elementor-widget-container img{-webkit-mask-image:url( https://lifetellers.it/wp-content/plugins/elementor/assets/mask-shapes/pill-horizontal.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-1502 .elementor-element.elementor-element-2019dcc .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-1502 .elementor-element.elementor-element-3520bc4:not( .elementor-widget-image ) .elementor-widget-container, .elementor-1502 .elementor-element.elementor-element-3520bc4.elementor-widget-image .elementor-widget-container img{-webkit-mask-image:url( https://lifetellers.it/wp-content/plugins/elementor/assets/mask-shapes/pill-horizontal.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-1502 .elementor-element.elementor-element-3520bc4 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-1502 .elementor-element.elementor-element-aa69555:not( .elementor-widget-image ) .elementor-widget-container, .elementor-1502 .elementor-element.elementor-element-aa69555.elementor-widget-image .elementor-widget-container img{-webkit-mask-image:url( https://lifetellers.it/wp-content/plugins/elementor/assets/mask-shapes/pill-horizontal.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-1502 .elementor-element.elementor-element-aa69555 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-1502 .elementor-element.elementor-element-ab63b56:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-ab63b56 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #1C1714 0%, #1C1714 100%);}.elementor-1502 .elementor-element.elementor-element-ab63b56{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-ab63b56 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-6d0bba3{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-4550e2d{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-228309b:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-228309b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #1C1714 0%, #1C1714 100%);}.elementor-1502 .elementor-element.elementor-element-228309b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-228309b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-4ab111a{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-18d0026{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-40beaca:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-40beaca > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8F8F8;}.elementor-1502 .elementor-element.elementor-element-40beaca{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-40beaca > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-1502 .elementor-element.elementor-element-75874af{--spacer-size:50px;}.elementor-1502 .elementor-element.elementor-element-3831b1c:not(.elementor-motion-effects-element-type-background), .elementor-1502 .elementor-element.elementor-element-3831b1c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1C1714;}.elementor-1502 .elementor-element.elementor-element-3831b1c{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-1502 .elementor-element.elementor-element-3831b1c > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}@media(max-width:767px){.elementor-1502 .elementor-element.elementor-element-4804f4e{margin-top:0px;margin-bottom:-40px;padding:0px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-21320a0 > .elementor-widget-container{margin:-2vw -2vw -62vw -2vw;}.elementor-1502 .elementor-element.elementor-element-46fc3aa > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-8aa8117 > .elementor-widget-container{margin:3px 0px -32px 0px;}.elementor-1502 .elementor-element.elementor-element-8aa8117 .elementor-heading-title{font-size:2.5vw;letter-spacing:1.6px;word-spacing:0.1em;}.elementor-1502 .elementor-element.elementor-element-ad5b8a6 > .elementor-widget-container{margin:0px 0px -54px 0px;}.elementor-1502 .elementor-element.elementor-element-ad5b8a6 .elementor-heading-title{font-size:42px;}.elementor-1502 .elementor-element.elementor-element-d4f9c35 > .elementor-widget-container{margin:0px 0px -41px 0px;}.elementor-1502 .elementor-element.elementor-element-d4f9c35 .elementor-heading-title{font-size:42px;}.elementor-1502 .elementor-element.elementor-element-7008fc3 > .elementor-widget-container{margin:0px 0px 13px 0px;}.elementor-1502 .elementor-element.elementor-element-7008fc3 .elementor-heading-title{font-size:42px;}.elementor-1502 .elementor-element.elementor-element-ee5e4e0 > .elementor-widget-container{margin:-5px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-ee5e4e0 .elementor-heading-title{font-size:3.8vw;line-height:1.6em;}.elementor-1502 .elementor-element.elementor-element-f5340f5 .elementor-column-gap-custom .elementor-column > .elementor-element-populated{padding:0px;}.elementor-1502 .elementor-element.elementor-element-f5340f5{margin-top:0%;margin-bottom:7%;}.elementor-1502 .elementor-element.elementor-element-a0f8a4b > .elementor-widget-container{margin:6px 0px 6px 0px;}.elementor-1502 .elementor-element.elementor-element-69e0ad8 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-4df6722 > .elementor-element-populated{padding:0vw 0vw 0vw 0vw;}.elementor-1502 .elementor-element.elementor-element-b9b9240{margin-top:0px;margin-bottom:0px;}.elementor-1502 .elementor-element.elementor-element-0ed6198 > .elementor-widget-container{margin:40px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-829b507 > .elementor-element-populated{margin:-53px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-1502 .elementor-element.elementor-element-9ed8f4a > .elementor-widget-container{margin:3vw 0vw 0vw 2vw;}.elementor-1502 .elementor-element.elementor-element-9ed8f4a .elementor-heading-title{font-size:10vw;letter-spacing:-1.5px;}.elementor-1502 .elementor-element.elementor-element-2ebfaeb > .elementor-widget-container{margin:-10vw 0vw 0vw 2vw;}.elementor-1502 .elementor-element.elementor-element-2ebfaeb .elementor-heading-title{font-size:7.3vw;letter-spacing:-1.5px;}.elementor-1502 .elementor-element.elementor-element-a33dd24 > .elementor-widget-container{margin:4vw 5vw 0vw 5vw;}.elementor-1502 .elementor-element.elementor-element-a33dd24 .elementor-heading-title{font-size:3.8vw;line-height:1.8em;}.elementor-1502 .elementor-element.elementor-element-a12e694 > .elementor-widget-container{margin:-5vw 0vw 4vw 0vw;}.elementor-1502 .elementor-element.elementor-element-ef5b6b9{--spacer-size:3vh;}.elementor-1502 .elementor-element.elementor-element-2019dcc > .elementor-widget-container{margin:0px 0px 0px 0px;padding:54px 54px 54px 54px;}.elementor-1502 .elementor-element.elementor-element-2019dcc:not( .elementor-widget-image ) .elementor-widget-container, .elementor-1502 .elementor-element.elementor-element-2019dcc.elementor-widget-image .elementor-widget-container img{-webkit-mask-size:81vw;}.elementor-1502 .elementor-element.elementor-element-1fffc53 > .elementor-widget-container{margin:-5vw 0vw 3vw 0vw;padding:0px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-3520bc4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:54px 54px 54px 54px;}.elementor-1502 .elementor-element.elementor-element-3520bc4:not( .elementor-widget-image ) .elementor-widget-container, .elementor-1502 .elementor-element.elementor-element-3520bc4.elementor-widget-image .elementor-widget-container img{-webkit-mask-size:81vw;}.elementor-1502 .elementor-element.elementor-element-42df3e0 > .elementor-widget-container{margin:-5vw 0vw 3vw 0vw;padding:0px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-aa69555 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:54px 54px 54px 54px;}.elementor-1502 .elementor-element.elementor-element-aa69555:not( .elementor-widget-image ) .elementor-widget-container, .elementor-1502 .elementor-element.elementor-element-aa69555.elementor-widget-image .elementor-widget-container img{-webkit-mask-size:81vw;}.elementor-1502 .elementor-element.elementor-element-b84c200 > .elementor-widget-container{margin:-5vw 0vw 3vw 0vw;padding:0px 0px 0px 0px;}.elementor-1502 .elementor-element.elementor-element-6d0bba3{--spacer-size:12px;}.elementor-1502 .elementor-element.elementor-element-4550e2d{--spacer-size:28px;}.elementor-1502 .elementor-element.elementor-element-4ab111a{--spacer-size:28px;}.elementor-1502 .elementor-element.elementor-element-61a8e14 > .elementor-widget-container{margin:5vw 0vw 0vw 0vw;}.elementor-1502 .elementor-element.elementor-element-c171c65 > .elementor-widget-container{margin:-12vw 0vw 0vw 0vw;}.elementor-1502 .elementor-element.elementor-element-18d0026{--spacer-size:16px;}.elementor-1502 .elementor-element.elementor-element-75874af{--spacer-size:6px;}}/* Start custom CSS for html, class: .elementor-element-8336262 */.hero-desktop {
  position: relative !important;
  height: 100vh !important;
  min-height: 700px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: flex-end !important;
}

.hero-bg-desktop {
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse at 55% 40%, #3d2e24 0%, #1C1714 55%, #0f0d0b 100%) !important;
  z-index: 0 !important;
}

.hero-video-desktop {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 0.4 !important;
  z-index: 1 !important;
}

.hero-overlay-desktop {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to top, rgba(28,23,20,0.95) 0%, rgba(28,23,20,0.5) 40%, rgba(28,23,20,0.2) 100%) !important;
  z-index: 2 !important;
}

.hero-content-desktop {
  position: relative !important;
  z-index: 4 !important;
  padding: 0 6% 80px !important;
  max-width: 800px !important;
}

.hero-eyebrow-desktop {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 24px !important;
}

.eyebrow-dot-desktop {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #E8C5B0 !important;
  flex-shrink: 0 !important;
  animation: pulseHero 2s ease-in-out infinite !important;
}

@keyframes pulseHero {
  0%, 100% { box-shadow: 0 0 0 0 rgba(232,197,176,0.6); }
  50% { box-shadow: 0 0 0 8px rgba(232,197,176,0); }
}

.hero-eyebrow-desktop span {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  color: #E8C5B0 !important;
}

.hero-title-desktop {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(60px, 8vw, 120px) !important;
  line-height: 0.95 !important;
  font-weight: 400 !important;
  color: #FDFAF6 !important;
  margin-bottom: 32px !important;
  display: flex !important;
  flex-direction: column !important;
}

.hero-title-desktop span {
  display: block !important;
}

.hero-italic {
  font-style: italic !important;
  color: #E8C5B0 !important;
}

.hero-sub-desktop {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 300 !important;
  line-height: 1.8 !important;
  color: rgba(255,255,255,0.55) !important;
  max-width: 500px !important;
  margin-bottom: 48px !important;
}

.hero-btn-primary-desktop {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: #E8C5B0 !important;
  color: #1C1714 !important;
  padding: 16px 36px !important;
  border-radius: 100px !important;
  text-decoration: none !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  transition: all 0.4s ease !important;
}

.hero-btn-primary-desktop:hover {
  background: #C9956E !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 48px rgba(201,149,110,0.4) !important;
}

.hero-scroll-desktop {
  position: absolute !important;
  bottom: 32px !important;
  right: 6% !important;
  z-index: 4 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
}

.hero-scroll-line {
  width: 1px !important;
  height: 80px !important;
  background: linear-gradient(to bottom, transparent, #E8C5B0) !important;
  animation: scrollAnim 2s ease-in-out infinite !important;
}

@keyframes scrollAnim {
  0% { transform: scaleY(0); transform-origin: top; }
  50% { transform: scaleY(1); transform-origin: top; }
  51% { transform: scaleY(1); transform-origin: bottom; }
  100% { transform: scaleY(0); transform-origin: bottom; }
}

.hero-scroll-desktop span {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 9px !important;
  font-weight: 300 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.3) !important;
  writing-mode: vertical-rl !important;
}

/* NASCONDI SU MOBILE */
@media (max-width: 768px) {
  .hero-desktop {
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-46fc3aa */.scroll-hint {
  position: absolute;
  bottom: 70px;
  right: 0% !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a0f8a4b */.hero-buttons {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}
.btn-scopri {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #E8C5B0;
  color: #1C1714;
  padding: 16px 36px;
  border-radius: 100px;
  text-decoration: none;
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
.btn-prenota {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: rgba(255,255,255,0.7);
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}
.play-circle-btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}.hero-buttons {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 24px !important;
  flex-wrap: nowrap !important;
}.btn-prenota span {
  color: rgba(255,255,255,0.7) !important;
}

.btn-prenota {
  color: rgba(255,255,255,0.7) !important;
}@media (max-width: 767px) .btn-scopri {
  white-space: nowrap !important;
  padding: 14px 28px !important;
  font-size: 11px !important;
}

.btn-prenota {
  white-space: nowrap !important;
  font-size: 11px !important;
}

.btn-scopri svg circle {
  stroke-width: 0.8 !important;
}

.btn-scopri svg path {
  fill: #1C1714 !important;
}

@media (max-width: 767px) {
  .btn-scopri {
    font-size: 10px !important;
    padding: 12px 20px !important;
  }
  .btn-prenota {
    font-size: 10px !important;
  }
}.btn-scopri:hover {
  background: #C9956E !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 48px rgba(201,149,110,0.4) !important;
  transition: all 0.4s ease !important;
}

.btn-prenota:hover {
  color: #FDFAF6 !important;
}

.btn-prenota:hover .play-circle-btn {
  border-color: #E8C5B0 !important;
  background: rgba(232,197,176,0.1) !important;
}

.btn-scopri, .btn-prenota, .play-circle-btn {
  transition: all 0.4s ease !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-69e0ad8 */.marquee-wrap {
  background: #2D2520;
  border-top: 1px solid rgba(232,197,176,0.2);
  border-bottom: 1px solid rgba(232,197,176,0.2);
  padding: 14px 0;
  overflow: hidden;
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}
.marquee-track {
  display: flex;
  white-space: nowrap;
  animation: marquee 18s linear infinite;
}
.marquee-item2 {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 0 28px;
  font-family: 'Playfair Display', serif;
  font-size: 16px;
  font-style: italic;
  color: rgba(232,197,176,0.5);
  flex-shrink: 0;
}
.marquee-dot2 {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #C9956E;
  flex-shrink: 0;
}
@keyframes marquee {
  to { transform: translateX(-50%); }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-4804f4e */.elementor-section.hero-section {
  background-size: 800px 600px !important;
  background-position: 55% 40% !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-87cc179 */.about-section {
  padding: 120px 6%;
  background: #FDFAF6;
  max-width: 800px;
}

.about-label {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
}

.about-label-line {
  width: 28px !important;
  height: 1px !important;
  background: #C9956E !important;
}

.about-label span {
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  color: #C9956E !important;
}

.about-title-wrap {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(36px, 5vw, 62px) !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  color: #1C1714 !important;
  margin-bottom: 24px !important;
  display: flex !important;
  flex-direction: column !important;
}

.about-title-line {
  display: block !important;
}

.about-title-em {
  font-style: italic !important;
  color: #C9956E !important;
}

.about-body {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 300 !important;
  line-height: 2 !important;
  color: #8A7060 !important;
  margin-bottom: 40px !important;
}

.about-body strong {
  color: #1C1714 !important;
  font-weight: 400 !important;
}

.about-awards {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

.award-badge-wrap {
  position: relative !important;
  display: inline-block !important;
}

.award-pill {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  border: 1px solid rgba(201,149,110,0.3) !important;
  border-radius: 100px !important;
  padding: 6px 16px !important;
  white-space: nowrap !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  color: #C9956E !important;
}

.award-stars {
  position: absolute !important;
  top: -12px !important;
  right: -8px !important;
  font-size: 10px !important;
  color: #C9956E !important;
  animation: starSpin 2s ease-in-out infinite !important;
}

.award-spark {
  position: absolute !important;
  font-size: 8px !important;
  color: #C9956E !important;
  pointer-events: none !important;
  animation: sparkFly 1s ease-out forwards !important;
  z-index: 10 !important;
}

@keyframes awardPulse {
  0%, 100% { border-color: rgba(201,149,110,0.3); box-shadow: none; }
  50% { border-color: rgba(201,149,110,0.8); box-shadow: 0 0 16px rgba(201,149,110,0.3); }
}

@keyframes starSpin {
  0%, 100% { transform: rotate(0deg) scale(1); opacity: 0.6; }
  50% { transform: rotate(180deg) scale(1.3); opacity: 1; }
}

@keyframes sparkFly {
  0% { opacity: 1; transform: translateY(0) scale(1); }
  100% { opacity: 0; transform: translateY(-20px) scale(0.5); }
}

@media (max-width: 768px) {
  .about-section {
    padding: 80px 5% !important;
  }
  .about-awards {
    justify-content: center !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0ed6198 */.about-label {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
}
.about-label-line {
  width: 28px;
  height: 1px;
  background: #C9956E;
}
.about-label span {
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #C9956E;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a12e694 */.award-badge-wrap {
  position: relative;
  display: inline-block;
}

.award-stars {
  position: absolute;
  top: -12px;
  right: -8px;
  font-size: 10px;
  color: #C9956E;
  animation: starSpin 2s ease-in-out infinite;
}

.award-spark {
  position: absolute;
  font-size: 8px;
  color: #C9956E;
  pointer-events: none;
  animation: sparkFly 1s ease-out forwards;
  z-index: 10;
}

@keyframes awardPulse {
  0%, 100% {
    border-color: rgba(201,149,110,0.3);
    box-shadow: none;
  }
  50% {
    border-color: rgba(201,149,110,0.8);
    box-shadow: 0 0 16px rgba(201,149,110,0.3);
  }
}

@keyframes starSpin {
  0%, 100% { transform: rotate(0deg) scale(1); opacity: 0.6; }
  50% { transform: rotate(180deg) scale(1.3); opacity: 1; }
}

@keyframes sparkFly {
  0% { opacity: 1; transform: translateY(0) scale(1); }
  100% { opacity: 0; transform: translateY(-20px) scale(0.5); }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-237461c */.servizi-section {
  padding: 120px 6%;
  background: #1C1714;
}

.servizi-grid-desktop {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
}

.sg-card {
  padding: 48px 40px;
  border: 1px solid rgba(232,197,176,0.2);
  background: rgba(255,255,255,0.02);
  transition: all 0.4s ease;
}

.sg-card:hover {
  background: rgba(255,255,255,0.05) !important;
  border-color: rgba(232,197,176,0.3) !important;
}

.sg-num {
  font-family: 'Playfair Display', serif !important;
  font-size: 56px !important;
  font-weight: 400 !important;
  color: rgba(232,197,176,0.3) !important;
  line-height: 1 !important;
  margin-bottom: 24px !important;
}

.sg-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: #FDFAF6 !important;
  margin-bottom: 16px !important;
}

.sg-desc {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  line-height: 1.9 !important;
  color: rgba(255,255,255,0.5) !important;
}


@media (max-width: 768px) {
  .servizi-section {
    display: none !important;
  }
} @media (min-width: 769px) {
  .servizi-section {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f0c804c */.ss-wrap {
  margin-top: 60px;
  position: relative;
}

.ss-slider {
  position: relative;
  min-height: 500px;
}

.ss-card {
  display: none;
  padding: 48px 40px;
  border: 1px solid rgba(232,197,176,0.2);
  background: rgba(255,255,255,0.03);
  border-radius: 4px;
  animation: ssFade 0.6s ease;
}

.ss-card.active {
  display: block;
}

@keyframes ssFade {
  from { opacity: 0; transform: translateX(30px); }
  to { opacity: 1; transform: translateX(0); }
}

.ss-num {
  font-family: 'Playfair Display', serif;
  font-size: 56px;
  font-weight: 400;
  color: rgba(232,197,176,0.3);
  line-height: 1;
  margin-bottom: 24px;
}

.ss-title {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  font-weight: 400;
  font-style: italic;
  color: #FDFAF6;
  margin-bottom: 20px;
}

.ss-desc {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.9;
  color: rgba(255,255,255,0.6);
  margin-bottom: 40px;
}

.ss-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(232,197,176,0.25);
  border-radius: 100px;
  padding: 14px 32px;
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 0.2em;
  color: rgba(255,255,255,0.5);
  text-decoration: none;
  background: transparent;
  transition: all 0.3s ease;
}

.ss-btn:hover {
  border-color: #E8C5B0;
  color: #FDFAF6;
}

.ss-dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 32px;
}

.ss-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(232,197,176,0.3);
  cursor: pointer;
  transition: all 0.3s ease;
}

.ss-dot.active {
  background: #E8C5B0;
  transform: scale(1.3);
}.ss-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: #FDFAF6 !important;
  margin-bottom: 20px !important;
}

.ss-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  border: 1px solid rgba(232,197,176,0.25) !important;
  border-radius: 100px !important;
  padding: 14px 32px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 300 !important;
  letter-spacing: 0.2em !important;
  color: rgba(255,255,255,0.5) !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: all 0.3s ease !important;
}.ss-btn {
  border: none !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
}.ss-slider {
  position: relative;
  min-height: 500px;
}

.ss-card {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 48px 40px;
  border: 1px solid rgba(232,197,176,0.2);
  background: rgba(255,255,255,0.03);
  border-radius: 4px;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.6s ease !important;
}

.ss-card.active {
  opacity: 1 !important;
  pointer-events: all !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4139920 */.portfolio-section {
  padding: 120px 6%;
  background: #FDFAF6;
}

.portfolio-header {
  margin-bottom: 60px;
}

.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.pv-card {
  border-radius: 8px;
  overflow: hidden;
  background: #1C1714;
}

.pv-thumb {
  position: relative;
  aspect-ratio: 16/9;
  width: 100%;
}

.pv-thumb iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.pv-cover {
  position: absolute;
  inset: 0;
  z-index: 2;
  cursor: pointer;
  overflow: hidden;
}

.pv-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.pv-cover:hover img {
  transform: scale(1.05);
}

.pv-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(28,23,20,0.6);
  border: 1px solid rgba(255,255,255,0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.pv-cover:hover .pv-play-btn {
  background: rgba(232,197,176,0.3);
  border-color: #E8C5B0;
  transform: translate(-50%, -50%) scale(1.1);
}

.pv-info {
  padding: 16px 20px;
  background: #1C1714;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.pv-location {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 9px !important;
  font-weight: 300 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.4) !important;
}

.pv-names {
  font-family: 'Playfair Display', serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  font-style: italic !important;
  color: #FDFAF6 !important;
}

@media (max-width: 768px) {
  .portfolio-section {
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1d35e8c */.portfolio-mobile {
  padding: 8vw 6vw;
  background: #FDFAF6;
}

@media (min-width: 769px) {
  .portfolio-mobile {
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9725f33 */.pkg-section {
  padding: 8vw 6vw;
  background: #1C1714;
}

.pkg-header {
  margin-bottom: 60px;
}

.pkg-grid-desktop {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

.pkg-card {
  position: relative !important;
  border: 1px solid rgba(232,197,176,0.2) !important;
  border-radius: 12px !important;
  padding: 48px 40px !important;
  background: rgba(255,255,255,0.02) !important;
  display: flex !important;
  flex-direction: column !important;
  transition: all 0.3s ease !important;
}

.pkg-featured {
  border-color: rgba(232,197,176,0.4) !important;
  background: rgba(232,197,176,0.04) !important;
}

.pkg-badge {
  position: absolute !important;
  top: 24px !important;
  right: 24px !important;
  background: #E8C5B0 !important;
  color: #1C1714 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  letter-spacing: 0.2em !important;
  padding: 6px 16px !important;
  border-radius: 100px !important;
}

.pkg-label {
  font-family: 'Playfair Display', serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  color: #E8C5B0 !important;
  margin-bottom: 8px !important;
}

.pkg-name {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(36px, 4vw, 56px) !important;
  font-weight: 400 !important;
  color: #FDFAF6 !important;
  margin-bottom: 32px !important;
  line-height: 1.1 !important;
}

.pkg-features {
  list-style: none !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  margin-bottom: 48px !important;
  flex: 1 !important;
}

.pkg-features li {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.6) !important;
}

.pkg-features li::before {
  content: '' !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(232,197,176,0.4) !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(232,197,176,0.6)' stroke-width='2'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat !important;
  flex-shrink: 0 !important;
}

.pkg-btn {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  border: 1px solid rgba(232,197,176,0.3) !important;
  border-radius: 100px !important;
  padding: 18px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: all 0.3s ease !important;
  margin-top: auto !important;
}

.pkg-btn:hover {
  border-color: #E8C5B0 !important;
  color: #FDFAF6 !important;
}

.pkg-btn-featured {
  background: #E8C5B0 !important;
  border-color: #E8C5B0 !important;
  color: #1C1714 !important;
}

.pkg-btn-featured:hover {
  background: #C9956E !important;
  border-color: #C9956E !important;
  color: #1C1714 !important;
}

@media (max-width: 768px) {
  .pkg-grid-desktop {
    grid-template-columns: 1fr !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96aacb2 */.pkg-section {
  padding: 8vw 6vw;
  background: #1C1714;
}

.pkg-card {
  position: relative;
  border: 1px solid rgba(232,197,176,0.2);
  border-radius: 12px;
  padding: 48px 40px;
  margin-bottom: 24px;
  background: rgba(255,255,255,0.02);
}

.pkg-featured {
  border-color: rgba(232,197,176,0.4);
  background: rgba(232,197,176,0.04);
}

.pkg-badge {
  position: absolute;
  top: 24px;
  right: 24px;
  background: #E8C5B0;
  color: #1C1714;
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.2em;
  padding: 6px 16px;
  border-radius: 100px;
}

.pkg-label {
  font-family: 'Playfair Display', serif;
  font-size: 14px;
  font-style: italic;
  color: #E8C5B0;
  margin-bottom: 8px;
}

.pkg-name {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(36px, 7vw, 72px) !important;
  font-weight: 400 !important;
  color: #FDFAF6 !important;
  margin-bottom: 32px !important;
  line-height: 1.1 !important;
}

.pkg-features {
  list-style: none !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  margin-bottom: 48px !important;
}

.pkg-features li {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.6) !important;
}

.pkg-features li::before {
  content: '' !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(232,197,176,0.4) !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='rgba(232,197,176,0.6)' stroke-width='2'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat !important;
  flex-shrink: 0 !important;
}

.pkg-btn {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  border: 1px solid rgba(232,197,176,0.3) !important;
  border-radius: 100px !important;
  padding: 18px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: all 0.3s ease !important;
}

.pkg-btn:hover {
  border-color: #E8C5B0 !important;
  color: #FDFAF6 !important;
}

.pkg-btn-featured {
  background: #E8C5B0 !important;
  border-color: #E8C5B0 !important;
  color: #1C1714 !important;
}

.pkg-btn-featured:hover {
  background: #C9956E !important;
  border-color: #C9956E !important;
  color: #1C1714 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-57c3a52 */.process-grid {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 60px !important;
}

.process-step {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  max-width: 500px !important;
  width: 100% !important;
}

.process-num {
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  background: #F5EDE6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #C9956E !important;
  margin-bottom: 24px !important;
  letter-spacing: 0.05em !important;
  transition: all 0.5s ease !important;
}

.process-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  font-weight: 400 !important;
  color: #1C1714 !important;
  margin-bottom: 16px !important;
  line-height: 1.2 !important;
}

.process-desc {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 300 !important;
  line-height: 1.9 !important;
  color: #8A7060 !important;
}

.process-num.glow {
  background: #C9956E !important;
  color: #FDFAF6 !important;
  box-shadow: 0 0 32px rgba(201,149,110,0.6) !important;
}@media (min-width: 769px) {
  .process-grid {
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 40px !important;
  }

  .process-step {
    max-width: 260px !important;
  }
}@media (min-width: 769px) {
  .process-grid {
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 0 !important;
    position: relative !important;
  }

  .process-step {
    max-width: 260px !important;
    flex: 1 !important;
    position: relative !important;
    padding: 0 20px !important;
  }

  .process-step::after {
    content: '' !important;
    position: absolute !important;
    top: 32px !important;
    left: calc(50% + 32px) !important;
    width: calc(100% - 64px) !important;
    height: 1px !important;
    background: linear-gradient(90deg, rgba(201,149,110,0.4), rgba(201,149,110,0.1)) !important;
  }

  .process-step:last-child::after {
    display: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c171c65 */.rev-main {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 40px;
  align-items: start;
  margin-top: 48px;
}

.rev-slider-wrap {
  position: relative;
}

.rev-slider {
  position: relative;
  min-height: 380px;
}

.rev-card {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 40px !important;
  border: 1px solid rgba(232,197,176,0.15) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.03) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.6s ease !important;
  box-sizing: border-box !important;
}

.rev-card.active {
  opacity: 1 !important;
  pointer-events: all !important;
}

.rev-stars {
  color: #C9956E !important;
  font-size: 14px !important;
  letter-spacing: 2px !important;
  margin-bottom: 16px !important;
}

.rev-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 18px !important;
  font-style: italic !important;
  font-weight: 400 !important;
  color: #FDFAF6 !important;
  margin-bottom: 16px !important;
  line-height: 1.4 !important;
}

.rev-text {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.9 !important;
  color: rgba(255,255,255,0.55) !important;
  margin-bottom: 28px !important;
}

.rev-author {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.rev-avatar {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: rgba(232,197,176,0.15) !important;
  border: 1px solid rgba(232,197,176,0.3) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 16px !important;
  color: #E8C5B0 !important;
  flex-shrink: 0 !important;
}

.rev-name {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #FDFAF6 !important;
  margin-bottom: 3px !important;
}

.rev-date {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.35) !important;
}

.rev-dots {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-top: 32px !important;
}

.rev-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: rgba(232,197,176,0.3) !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.rev-dot.active {
  background: #E8C5B0 !important;
  transform: scale(1.3) !important;
}

.matrim-banner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: 1px solid rgba(232,197,176,0.25) !important;
  border-radius: 16px !important;
  padding: 32px 24px !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  background: rgba(255,255,255,0.03) !important;
  text-align: center !important;
  position: sticky !important;
  top: 100px !important;
}

.matrim-banner:hover {
  border-color: #E8C5B0 !important;
  background: rgba(232,197,176,0.06) !important;
}

.matrim-stars {
  color: #C9956E !important;
  font-size: 18px !important;
  letter-spacing: 4px !important;
}

.matrim-score {
  font-family: 'Playfair Display', serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: #FDFAF6 !important;
}

.matrim-count {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.4) !important;
  letter-spacing: 0.1em !important;
}

.matrim-text {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10px !important;
  font-weight: 300 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #E8C5B0 !important;
  margin-top: 8px !important;
}

@media (max-width: 768px) {
  .rev-main {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .matrim-banner {
    position: static !important;
  }
  .rev-slider {
    min-height: 500px !important;
  }
} @media (min-width: 769px) {
  .rev-main {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  .matrim-banner {
    position: static !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    padding: 24px 40px !important;
    border-radius: 100px !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d3b2ec0 */.usb-section {
  padding: 8vw 6vw;
  background: #FDFAF6;
  overflow: hidden;
}

.usb-visual {
  position: relative;
  opacity: 1 !important;
  transform: translateX(0) !important;
  transition: opacity 0.9s ease, transform 0.9s ease;
}

.usb-glow {
  position: absolute;
  inset: -40px;
  background: radial-gradient(circle, rgba(201,149,110,0.1), transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}

.usb-video {
  width: 100%;
  border-radius: 12px;
  box-shadow: 0 40px 100px rgba(28,23,20,0.15);
  animation: floatVideo 6s ease-in-out infinite;
}

@keyframes floatVideo {
  0%, 100% { transform: translateY(0) rotate(-1deg); }
  50% { transform: translateY(-12px) rotate(1deg); }
}

.usb-text {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

/* MOBILE */
@media (max-width: 768px) {
  .usb-section {
    display: flex !important;
    flex-direction: column !important;
    gap: 40px !important;
  }
}

/* DESKTOP */
@media (min-width: 769px) {
  .usb-section {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 60px !important;
  }

  .usb-visual {
    width: 60% !important;
    max-width: 700px !important;
  }

  .usb-text {
    width: 100% !important;
    text-align: center !important;
    max-width: 800px !important;
  }
} @media (min-width: 769px) {
  .usb-text {
    text-align: left !important;
    align-self: flex-start !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-056374d */.cta-section {
  padding: 140px 6%;
  background: #1C1714;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.cta-section::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 800px;
  height: 400px;
  background: radial-gradient(ellipse, rgba(232,197,176,0.06), transparent 60%);
  pointer-events: none;
}

.cta-ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(232,197,176,0.06);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: ctaRing 4s ease-in-out infinite;
}

.cta-ring:nth-child(1) { width: 300px; height: 300px; animation-delay: 0s; }
.cta-ring:nth-child(2) { width: 500px; height: 500px; animation-delay: 1s; }
.cta-ring:nth-child(3) { width: 700px; height: 700px; animation-delay: 2s; }

@keyframes ctaRing {
  0%, 100% { opacity: 0.3; transform: translate(-50%, -50%) scale(1); }
  50% { opacity: 0.7; transform: translate(-50%, -50%) scale(1.03); }
}

.cta-pre {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  letter-spacing: 0.3em !important;
  text-transform: uppercase !important;
  color: #E8C5B0 !important;
  margin-bottom: 24px !important;
  position: relative;
  z-index: 2;
}

.cta-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(44px, 6vw, 80px) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  color: #FDFAF6 !important;
  margin-bottom: 28px !important;
  position: relative;
  z-index: 2;
}

.cta-title em {
  font-style: italic !important;
  color: #E8C5B0 !important;
}

.cta-sub {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.4) !important;
  margin-bottom: 56px !important;
  line-height: 1.8 !important;
  position: relative;
  z-index: 2;
}

.cta-btn-primary {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: #E8C5B0 !important;
  color: #1C1714 !important;
  padding: 18px 44px !important;
  border-radius: 100px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: all 0.4s ease !important;
  position: relative !important;
  z-index: 2 !important;
}

.cta-btn-primary:hover {
  background: #C9956E !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 20px 60px rgba(201,149,110,0.4) !important;
}

.cta-note {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.3) !important;
  letter-spacing: 0.1em !important;
  margin-top: 16px !important;
  position: relative !important;
  z-index: 2 !important;
}/* End custom CSS */