/* Destination Widget: styles are strictly scoped to this Elementor widget. */
.elementor-widget-destination_widget .destination-widget-root,
.elementor-widget-destination_widget .destination-widget-root *{
  box-sizing:border-box !important;
}
.elementor-widget-destination_widget .destination-widget-root{
  position:relative !important;
  display:block !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  isolation:isolate !important;
  font-style:normal;
}
.elementor-widget-destination_widget .destination-widget-section{
  width:100% !important;
  max-width:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  overflow:visible !important;
}
.elementor-widget-destination_widget .destination-cards{
  --dw-height:455px;
  --dw-gap:11px;
  --dw-closed:105px;
  --dw-active:730px;
  --dw-glass-width:52%;
  --dw-content-width:50%;
  --dw-blur:9px;
  --dw-glass-start:rgba(7,18,62,.72);
  --dw-glass-mid:rgba(19,35,73,.58);
  --dw-glass-end:rgba(43,64,94,0);
  --dw-speed:800ms;
  --dw-inactive-brightness:88%;
  height:var(--dw-height) !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:center !important;
  gap:var(--dw-gap) !important;
  margin:0 auto !important;
  padding:0 !important;
  overflow:visible !important;
}
.elementor-widget-destination_widget .destination-card{
  position:relative !important;
  width:var(--dw-closed) !important;
  height:100% !important;
  min-width:0 !important;
  max-width:none !important;
  flex:0 0 auto !important;
  overflow:hidden !important;
  cursor:pointer !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  filter:saturate(.9) brightness(var(--dw-inactive-brightness));
  isolation:isolate !important;
  outline:none !important;
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
  transition:width var(--dw-speed) cubic-bezier(.2,.8,.2,1), transform 450ms ease, filter 450ms ease !important;
}
.elementor-widget-destination_widget .destination-card:hover:not(.is-active){
  transform:translateY(-4px);
  filter:saturate(1) brightness(96%);
}
.elementor-widget-destination_widget .destination-card.is-active{
  width:var(--dw-active) !important;
  filter:none !important;
}
.elementor-widget-destination_widget .destination-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:0 !important;
  opacity:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:linear-gradient(90deg,var(--dw-glass-start) 0%,var(--dw-glass-mid) 48%,var(--dw-glass-end) 100%) !important;
  -webkit-backdrop-filter:blur(var(--dw-blur));
  backdrop-filter:blur(var(--dw-blur));
  transition:width calc(var(--dw-speed) * .94) cubic-bezier(.2,.8,.2,1), opacity 500ms ease !important;
}
.elementor-widget-destination_widget .destination-card.is-active::before{
  width:var(--dw-glass-width) !important;
  opacity:1 !important;
}
.elementor-widget-destination_widget .destination-content{
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  width:var(--dw-content-width) !important;
  max-width:100% !important;
  opacity:0 !important;
  transform:translateX(-18px);
  pointer-events:none !important;
  margin:0 !important;
  transition:opacity 420ms ease 180ms, transform 550ms cubic-bezier(.2,.8,.2,1) 120ms !important;
}
.elementor-widget-destination_widget .destination-card.is-active .destination-content{
  opacity:1 !important;
  transform:translateX(0);
  pointer-events:auto !important;
}
.elementor-widget-destination_widget .destination-badge{
  position:absolute !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  width:max-content !important;
  max-width:calc(100% - 32px) !important;
  padding:6px 8px !important;
  border:0 !important;
  border-radius:5px;
  line-height:1 !important;
  font-size:10px;
  font-weight:700;
  white-space:nowrap !important;
  box-shadow:0 4px 15px rgba(0,0,0,.08);
  margin:0 !important;
}
.elementor-widget-destination_widget .destination-badge svg{
  width:14px !important;
  height:14px !important;
  flex:0 0 14px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2 !important;
}
.elementor-widget-destination_widget .destination-copy{
  margin:25px 0 0 0 !important;
  padding:0 !important;
}
.elementor-widget-destination_widget .destination-title{
  margin:0 0 11px 0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  font-size:16px;
  line-height:1.25;
  font-weight:700;
  text-transform:none;
  letter-spacing:normal;
  text-shadow:0 1px 4px rgba(0,0,0,.18);
}
.elementor-widget-destination_widget .destination-text{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  max-width:310px;
  font-size:13px;
  line-height:1.45;
}
.elementor-widget-destination_widget .destination-divider{
  height:1px !important;
  margin:14px 0 !important;
  padding:0 !important;
  border:0 !important;
}
.elementor-widget-destination_widget .destination-button,
.elementor-widget-destination_widget .destination-button:visited,
.elementor-widget-destination_widget .destination-button:focus{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:7px 22px !important;
  border:0 !important;
  text-decoration:none !important;
  box-shadow:none !important;
  line-height:1.2;
  font-size:12px;
  font-weight:600;
  text-transform:none;
  letter-spacing:normal;
  outline:none !important;
  transition:transform 250ms ease, background-color 250ms ease !important;
}
.elementor-widget-destination_widget .destination-button:hover{
  transform:translateY(-2px);
  text-decoration:none !important;
}

@media (max-width: 767px){
  .elementor-widget-destination_widget .destination-cards{
    height:auto !important;
    min-height:0 !important;
    flex-direction:column !important;
  }
  .elementor-widget-destination_widget .destination-card,
  .elementor-widget-destination_widget .destination-card.is-active{
    width:100% !important;
    height:76px !important;
    transition:height var(--dw-speed) cubic-bezier(.2,.8,.2,1), filter 400ms ease !important;
  }
  .elementor-widget-destination_widget .destination-card.is-active{
    height:var(--dw-height) !important;
  }
  .elementor-widget-destination_widget .destination-card.is-active::before{
    width:min(var(--dw-glass-width),88%) !important;
  }
  .elementor-widget-destination_widget .destination-content{
    width:min(var(--dw-content-width),88%) !important;
  }
}

/* Responsive-only fix for the destination tab/card section. */
@media (min-width: 768px) and (max-width: 1200px){
  .elementor-widget-destination_widget .destination-widget-section,
  .elementor-widget-destination_widget .destination-cards{
    width:100% !important;
    max-width:100% !important;
  }
  .elementor-widget-destination_widget .destination-cards{
    overflow:hidden !important;
  }
  .elementor-widget-destination_widget .destination-card{
    width:auto !important;
    flex:1 1 0 !important;
  }
  .elementor-widget-destination_widget .destination-card.is-active{
    width:auto !important;
    flex:7 1 0 !important;
  }
  .elementor-widget-destination_widget .destination-content{
    width:min(var(--dw-content-width), 72%) !important;
  }
}

@media (max-width: 767px){
  .elementor-widget-destination_widget .destination-widget-root,
  .elementor-widget-destination_widget .destination-widget-section,
  .elementor-widget-destination_widget .destination-cards{
    width:100% !important;
    max-width:100% !important;
  }
  .elementor-widget-destination_widget .destination-cards{
    overflow:hidden !important;
  }
  .elementor-widget-destination_widget .destination-card,
  .elementor-widget-destination_widget .destination-card.is-active{
    min-width:100% !important;
    max-width:100% !important;
  }
  .elementor-widget-destination_widget .destination-card.is-active::before{
    width:min(var(--dw-glass-width), 100%) !important;
  }
  .elementor-widget-destination_widget .destination-content{
    width:min(var(--dw-content-width), 100%) !important;
    max-width:100% !important;
  }
  .elementor-widget-destination_widget .destination-badge{
    max-width:calc(100% - 20px) !important;
  }
  .elementor-widget-destination_widget .destination-title,
  .elementor-widget-destination_widget .destination-text{
    overflow-wrap:anywhere;
    word-break:normal;
  }
}
