/* General */
.uv-flex {
  display: flex;
}

.uv-flex-col {
  flex-direction: column;
}

/* Pop Up - Loader */
.uv-pop-cont,
.uws-gloader-cont {
  visibility: hidden;
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: rgba(0, 0, 0, 0.72);
  z-index: 999999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  height: 100%;
  overflow-x: hidden;
  overflow-y: hidden;
  padding-left: 15px;
  padding-right: 15px;
  outline: 0;
  transition: all 250ms linear;
}

.uv-pop-cont:not(#uws-gloader) {
  z-index: 99999;
}

.uv-pop-cont-tab {
  height: 100%;
  display: table;
  width: 100%;
  table-layout: auto;
}

.uv-pop-cont-cell {
  display: table-cell;
  vertical-align: middle;
}

.uv-pop-cont.visible,
.uws-gloader-cont.visible {
  opacity: 1;
  visibility: visible;
}

.uv-pop-cont .uwsloadermsg {
  color: #ffffff;
  font-size: 1.3em;
  margin-top: 0.8em;
  max-width: 30em;
  line-height: 1.5;
  text-align: center;
}

.uv-pop-cont .uwsloadermsg:empty {
  display: none;
}

.uv-pop-box {
  display: block;
  border-radius: 3px;
  min-height: 150px;
  margin: 30px auto;
  width: 100%;
  max-width: 800px;
  position: relative;
  background-color: #171717;
  color: #ffffff;
  transform: translate(0, -25%);
  transition: transform 250ms ease-out;
}

.uv-pop-cont.visible .uv-pop-box {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.uv-pop-cont .uv-pop-box>.uv-closepop {
  color: inherit;
  font-size: 28px;
  line-height: 45px;
  height: 45px;
  width: 45px;
  position: absolute;
  z-index: 11;
  right: 0;
  top: 0;
  text-align: center;
  cursor: pointer;
  box-shadow: inset 0 0 100px 100px rgba(0, 0, 0, 0.05);
}

.uv-pop-cont .uv-pop-box>.uv-closepop svg {
  width: 1em;
  height: auto;
}

.uv-pop-cont .uv-pop-box>.uv-closepop>svg path {
  fill: #FFF;
}

.uv-pop-cont .uv-pop-box>.uv-closepop:hover,
.uv-pop-cont .uv-pop-box>.uv-closepop:focus,
.uv-pop-cont .uv-pop-box>.uv-closepop:active {
  box-shadow: inset 0 0 100px 100px rgba(0, 0, 0, 0.1);
}

body:has(.uv-pop-cont.visible) {
  overflow: hidden;
}

.uv-pop-cont .uv-pop-box>.uv-closepop {
  display: flex;
  top: -42px;
  right: -4px;
  height: 28px;
  width: 1em;
}

.uv-pop-cont .uv-pop-box {
  max-width: 500px;
}

.uvviewlinksiframe:not(.uvsevenrooms) .uv-pop-box {
  max-width: 100%;
  width: 85%;
  height: 75dvh;
}

.uvviewlinksiframe:not(.uvsevenrooms) .uv-linkstree-cont .uv-itemback {
  display: none;
}

.uv-pop-cont .uv-pop-charge {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  background-color: #171717;
  color: #ffffff;
  font-size: 1.3em;
  line-height: 1.5;
  text-align: center;
  position: relative;
}

#uv-treelinks-pop .uv-pop-charge {
  padding: 2em 1em;
}

.uv-linkstree-cont .uv-links-tree {
  flex-direction: column;
  gap: 1em;
  min-width: 90%;
}

.uvtreebtn {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  cursor: pointer;
  background-color: #333;
  text-transform: uppercase;
  color: #ffffff;
  padding: 0.8rem;
  border-radius: .3em;
}

.uvtreebtn:is(:hover, :focus) {
  background-color: #000;
}

#uv-sevenrooms-pop .uv-pop-charge,
.uv-links-iframe-cont {
  padding-bottom: 160%;
}

.uv-pop-cont iframe {
  width: 100%;
  height: 100%;
  border: 0;
  position: absolute;
  top: 0;
  left: 0;
}

/*******/
#uv-popup .uv-pop-box {
  max-width: 600px;
  background-color: transparent;
}

.uv-pop-header {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border-radius: 3px 3px 0 0;
  background-color: #343434;
  min-height: 45px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 50px;
  padding-left: 20px;
}

/*UV icon Loader*/
.uws-loader-uvicon {
  display: inline-block;
  position: relative;
  padding: 0;
  width: 40px;
  height: 40px;
  background: url(./assets/urvenueicon.png) center center no-repeat;
  background-size: 20px 20px;
}

.uws-loader-uvicon:before {
  position: absolute;
  display: block;
  content: " ";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 3px solid transparent;
  border-top: 3px solid #0063c1;
  border-radius: 50%;
  animation: uviconspin 1s linear infinite;
}

/* General */
body:not(.uv-landing-loaded) :is(.uv-main-container, .footer) {
  overflow: hidden;
  opacity: 0;
  transition: all .3s ease-in-out;
}

.uv-logo>a {
  display: flex;
}

.uv-landing {
  display: none;
}

.uv-overmenu-list ul {
  display: flex;
  flex-wrap: wrap;
}

.uv-overmenu-list ul li {
  width: 50%;
}

.uv-landing-venuelink-1121562,
.uv-overmenu-list ul li[data-venuename="liv-miami"] {
  order: 0;
}

.uv-landing-venuelink-1121561,
.uv-overmenu-list ul li[data-venuename="liv-las-vegas"] {
  order: 1;
}

.uv-landing-venuelink-1214881,
.uv-overmenu-list ul li[data-venuename="liv-beach"] {
  order: 2;
}

.uv-landing-venuelink-1121563,
.uv-overmenu-list ul li[data-venuename="strawberry-moon-pool"] {
  order: 3;
}

.uv-landing-venuelink-1300892,
.uv-overmenu-list ul li[data-venuename="gekko-lounge"] {
  order: 4;
}

.uv-landing-venuelink-1324328,
.uv-overmenu-list ul li[data-venuename="komodo-lounge-dallas"] {
  order: 5;
}

.uv-landing-venuelink-1300966,
.uv-overmenu-list ul li[data-venuename="komodo-lounge-miami"] {
  order: 6;
}

.uv-landing-venuelink-1301005,
.uv-overmenu-list ul li[data-venuename="swan-lounge"] {
  order: 7;
}

.uv-landing-venuelink-1150779,
.uv-overmenu-list ul li[data-venuename="fontainebleau-miami-pool"] {
  order: 8;
}

.uv-navbar-container {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem 3rem;
  background-color: #1c1c1c;
  height: 5em;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 22;
  transition: height 0.3s ease;
}

.uv-pagescrolled .uv-navbar-container {
  height: 4em;
  transition: height 0.3s ease;
}

.uv-img-logo {
  width: 10rem;
}

.uv-main-container {
  padding: 8em 1rem 5em 1em;
  min-height: 85dvh;
}

.filter-container {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem;
  background-color: #1e1e1e;
  color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
  max-width: 1200px;
  margin: 0 auto;
}

.dropdown {
  position: relative;
  width: 100%;
  cursor: pointer;
  background-color: #333;
  color: #ffffff;
  padding: 0.8rem;
  text-align: left;
}

.dropdown-selected {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.dropdown-options {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: #333;
  color: #ffffff;
  overflow: hidden;
  z-index: 10;
  width: 100%;
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.dropdown-options li {
  padding: 0.8rem;
  transition: background-color 0.3s;
  width: 100%;
}

.dropdown-options li:hover {
  background-color: #444;
}

.dropdown-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
}

.uv-city-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 4em 0 2em;
  transition: padding .18s ease;
}

.uv-grid-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

.uv-section-title {
  font-size: 1.72rem;
  font-weight: 600;
  grid-column: 1 / -1;
  margin: 0 0 1em;
  text-transform: capitalize;
}

.uv-card-link {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: all 0.18s linear;
}

.uvhide,
.uvhide *,
.uvhide-item {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  height: 0;
  padding: 0;
  transition: padding .18s ease;
}

.uvhide-item {
  width: 0;
  position: absolute;
  transition: all .18s ease;
}

.uv-card-link:hover {
  transform: translateY(-8px);
  transition: transform 0.18s linear;
}

.card {
  background-color: #2c2c2c;
  color: #f1f1f1;
  border-radius: 8px;
  box-shadow: 0px 2px 8px rgba(20, 20, 20, 0.12);
  overflow: hidden;
  height: 100%;
}

.img-card-container {
  display: flex;
  position: relative;
}

.img-card-container::after {
  background: #000;
  color: #fff;
  position: absolute;
  top: .5em;
  right: .5em;
  padding: 0.5em 1em;
  font-size: 0.76rem;
  font-weight: 600;
  text-transform: uppercase;
  border-radius: .6em;
}

.uv-card-link[data-venue="culinary"] .img-card-container::after {
  content: 'CULINARY';
}

.uv-card-link[data-venue="lounges"] .img-card-container::after {
  content: 'LOUNGE';
}

.uv-card-link[data-venue="nightclub"] .img-card-container::after {
  content: 'NIGHTCLUB';
}

.uv-card-link[data-venue="lounges"]:is(.uv-newyearseve-fontainebleaumiamibeach) .img-card-container::after {
  content: 'SPECIAL EVENT';
}

.uv-card-link[data-venue="lounges"]:is(.uv-rüfüsdusolliv-skydeckviptables) .img-card-container::after,
.uv-card-link[data-venue="lounges"]:is(.uv-rüfüsdusol-livskydeckviptables) .img-card-container::after {
  content: 'EVENT';
}

.uv-card-link[data-venue="nightclub"]:is(.uv-livbeachlasvegas) .img-card-container::after,
.uv-card-link[data-venue="lounges"]:is(.uv-livbeachlasvegas, .uv-strawberrymoonpool) .img-card-container::after {
  content: 'DAYCLUB';
}

.card-img {
  width: 100%;
  height: 200px;
  margin: 0;
  object-fit: cover;
}

.content-card-container {
  padding: 1.5em 1em;
}

.card-title {
  font-size: 1.062rem;
  font-weight: 600;
  line-height: 1.32;
  max-width: 100%;
  overflow: hidden;
  margin: 0;
}

.cardextrainfo {
  font-size: .88rem;
  line-height: 1;
  font-style: italic;
}

.footer {
  border-top: 1px solid #e0e0e0;
  color: #d3d3d3;
  padding: 2rem 0;
  font-size: 0.9rem;
}

.footer-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
  gap: 1rem;
}

.footer-links a {
  color: #d3d3d3;
  text-decoration: none;
  margin: 0 0.5rem;
}

.footer-links a:hover {
  color: #ffffff;
}

.hidden {
  display: none;
}

/* Custom order for LV regions */
.uv-main-container .uv-content {
  display: flex;
  flex-direction: column;
}

.uv-main-container .uv-livnightclub {
  order: 0;
}

/* west */
.uv-region-west .uv-lasvegas {
  order: 1;
}

.uv-region-west .uv-dallas {
  order: 2;
}

.uv-region-west .uv-miami {
  order: 3;
}

/* east */
.uv-region-east .uv-miami {
  order: 1;
}

.uv-region-east .uv-dallas {
  order: 2;
}

.uv-region-east .uv-lasvegas {
  order: 3;
}

/* central */
.uv-region-central .uv-dallas {
  order: 1;
}

.uv-region-central .uv-miami {
  order: 2;
}

.uv-region-central .uv-lasvegas {
  order: 3;
}

/* Footer */
.footer a {
  font-weight: 600;
  color: #FFF;
  position: relative;
}

.footer a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: -2px;
  left: 0;
  background-color: #FFF;
  visibility: hidden;
  transform: scaleX(0);
  transition: all 0.3s ease-in-out 0s;
}

.footer a:is(:hover, :focus)::after {
  visibility: visible;
  transform: scaleX(1);
  transition: all 0.3s ease-in-out 0s;
}

/* Views Container */
.uvviewscontainer {
  transition: all 200ms ease-in-out;
}

.uwsviewinfix {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 200ms ease-in-out;
}

.uvviewscontainer.uwsviewstoanim {
  overflow: hidden;
  transition: all 500ms ease-in-out;
}

.uwsviewtoin {
  display: block;
  transition: all 200ms ease-in-out;
  opacity: 0;
  visibility: hidden;
}

.uwsviewhidden {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all .3s linear;
}

.uwsviewshown {
  display: flex;
  opacity: 1;
  visibility: visible;
  transition: all .3s linear;
}

/* .uwsviewaltern .uwsviewhidden,
.uwsviewdispnone {
  display: none;
} */

.uvviewscontainer.uwsblockcontainerview:before {
  position: absolute;
  display: block;
  content: " ";
  background: #171717;
  z-index: 20;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 1;
  height: 100%;
  visibility: visible;
  outline: 0;
  transition: all 150ms linear;
}

.uv-linkstree-cont .uv-itemback {
  position: absolute;
  display: flex;
  z-index: 1;
  color: var(--uws-main-color);
  height: 45px;
  width: 45px;
  z-index: 10;
  left: 0;
  top: 6px;
  text-align: center;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  box-shadow: inset 0 0 100px 100px var(--uws-subtle-hover);
}

.uv-linkstree-cont .uv-itemback:hover,
.uv-linkstree-cont .uv-itemback:focus,
.uv-linkstree-cont .uv-itemback:active {
  opacity: 0.8;
}

.uv-linkstree-cont .uv-itemback svg {
  width: 75%;
  height: 75%;
}

.uv-linkstree-cont .uv-itemback span {
  display: none;
}

.uv-links-iframe .uvtreebtn {
  position: absolute;
  bottom: -4em;
  left: 50%;
  transform: translateX(-50%);
}

.uv-links-iframe .uvtreebtn:is(:hover, :focus) {
  background-color: #FFF;
  color: #333;
}

/* @egt */
/* a.uv-card-link.uv-grootoffsiteevents.uv-venue-lounges {
  display: none;
} */

/* @egt */
.uv-city-container:has(.uv-grid-container:empty) {
    display: none;
}

/* Animations */
@keyframes uviconspin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Media Queries */
@media (min-width: 600px) {
  .uv-grid-container {
    grid-template-columns: repeat(2, 1fr);
  }

  .filter-container {
    flex-direction: row;
  }

  .uv-section-title {
    font-size: 2rem;
  }

  .dropdown {
    width: 250px;
  }
}

@media (min-width: 1201px) {
  .uv-grid-container {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 1439px) {
  #uv-sevenrooms-pop .uv-pop-charge {
    padding-bottom: 130%;
  }
}

@media (max-width: 1200px) {
  #uv-sevenrooms-pop .uv-pop-charge {
    padding-bottom: 75vh;
  }
}

@media (max-width: 900px) {
  .uws-loader-uvicon {
    width: 32px;
    height: 32px;
    background-size: 18px 18px;
  }

  .uws-loader-uvicon:before {
    border: 2px solid transparent;
    border-top: 2px solid #0063c1;
  }
}

@media (min-width: 601px) {
  .uv-linkstree-cont {
    width: 90%;
    margin: 0 auto;
  }

  .uvviewlinksiframe:not(.uvsevenrooms) .uv-links-iframe .uvtreebtn {
    max-width: 35%;
  }
}

@media (max-width: 600px) {
  .uv-main-container {
    padding: 6em 1rem 2em 1em;
  }

  .uv-city-container:not(.uvhide) {
    padding: 3em 0 1em;
  }

  .card-img {
    height: 180px;
  }

  #uv-sevenrooms-pop .uv-pop-box>.uv-closepop {
    top: -37px;
  }

  #uv-sevenrooms-pop .uv-pop-charge {
    padding-bottom: 70vh;
  }

  #uv-treelinks-pop .uv-pop-charge {
    min-height: 150px;
    padding: 1em;
  }

  #uv-treelinks-pop .uv-pop-cont .uv-pop {
    font-size: 1.15em;
  }

  .uv-linkstree-cont {
    width: 100%;
  }

  .uv-linkstree-cont .uv-links-tree {
    min-width: 100%;
  }

  .uvtreebtn {
    font-size: 1.1rem;
  }

  .uvviewlinksiframe:not(.uvsevenrooms) .uv-pop-box {
    width: 100%;
  }

  .uv-links-iframe .uvtreebtn {
    bottom: -3.5em;
  }
}

@media (max-width: 375px) {}