:root {
  --floorPrevButtonIcon: url('data: image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.28851 13.0001L10 5.28857L17.7115 13.0001L16.5914 14.1203L10 7.52893L3.40867 14.1203L2.28851 13.0001Z" fill="white" /></svg>');
  --floorNextButtonIcon: url('data: image/svg+xml;utf8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.7115 6.9999L9.99997 14.7114L2.28845 6.9999L3.40862 5.87974L9.99997 12.4711L16.5913 5.87974L17.7115 6.9999Z" fill="white" /></svg>');
  --floorZoomInButtonIcon: url('data: image/svg+xml;utf8,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.5422 17.577L10.2615 11.2962C9.76146 11.7091 9.18646 12.0321 8.53646 12.2655C7.88646 12.4988 7.21403 12.6155 6.51916 12.6155C4.80999 12.6155 3.36348 12.0237 2.17961 10.8401C0.995742 9.65655 0.403809 8.21041 0.403809 6.50169C0.403809 4.79296 0.995592 3.34628 2.17916 2.16167C3.36273 0.977065 4.80888 0.384766 6.51761 0.384766C8.22633 0.384766 9.67299 0.9767 10.8576 2.16057C12.0422 3.34443 12.6345 4.79095 12.6345 6.50012C12.6345 7.21422 12.5147 7.89627 12.2749 8.54627C12.0352 9.19627 11.7153 9.76165 11.3153 10.2424L17.5961 16.5232L16.5422 17.577ZM6.51916 11.1155C7.80763 11.1155 8.89897 10.6684 9.79321 9.77417C10.6874 8.87993 11.1346 7.78858 11.1346 6.50012C11.1346 5.21165 10.6874 4.1203 9.79321 3.22607C8.89897 2.33183 7.80763 1.88472 6.51916 1.88472C5.23069 1.88472 4.13934 2.33183 3.24511 3.22607C2.35089 4.1203 1.90378 5.21165 1.90378 6.50012C1.90378 7.78858 2.35089 8.87993 3.24511 9.77417C4.13934 10.6684 5.23069 11.1155 6.51916 11.1155ZM5.76918 9.19239V7.25009H3.82688V5.75014H5.76918V3.80784H7.26916V5.75014H9.21146V7.25009H7.26916V9.19239H5.76918Z" fill="white" /></svg>');
  --floorZoomOutButtonIcon: url('data: image/svg+xml;utf8,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.5422 17.577L10.2615 11.2962C9.76146 11.7091 9.18646 12.0321 8.53646 12.2655C7.88646 12.4988 7.21403 12.6155 6.51916 12.6155C4.80999 12.6155 3.36348 12.0237 2.17961 10.8401C0.995742 9.65655 0.403809 8.21041 0.403809 6.50169C0.403809 4.79296 0.995592 3.34628 2.17916 2.16167C3.36273 0.977065 4.80888 0.384766 6.51761 0.384766C8.22633 0.384766 9.67299 0.9767 10.8576 2.16057C12.0422 3.34443 12.6345 4.79095 12.6345 6.50012C12.6345 7.21422 12.5147 7.89627 12.2749 8.54627C12.0352 9.19627 11.7153 9.76165 11.3153 10.2424L17.5961 16.5232L16.5422 17.577ZM6.51916 11.1155C7.80763 11.1155 8.89897 10.6684 9.79321 9.77417C10.6874 8.87993 11.1346 7.78858 11.1346 6.50012C11.1346 5.21165 10.6874 4.1203 9.79321 3.22607C8.89897 2.33183 7.80763 1.88472 6.51916 1.88472C5.23069 1.88472 4.13934 2.33183 3.24511 3.22607C2.35089 4.1203 1.90378 5.21165 1.90378 6.50012C1.90378 7.78858 2.35089 8.87993 3.24511 9.77417C4.13934 10.6684 5.23069 11.1155 6.51916 11.1155ZM4.13456 7.25009V5.75014H8.90378V7.25009H4.13456Z" fill="white" /></svg>');
  --floorCloseButtonIcon: url('data: image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.40002 18.6538L5.34619 17.6L10.9462 12L5.34619 6.40002L6.40002 5.34619L12 10.9462L17.6 5.34619L18.6538 6.40002L13.0538 12L18.6538 17.6L17.6 18.6538L12 13.0538L6.40002 18.6538Z" fill="white" /></svg>');
  --iconFullscreenExit: url('data: image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M296.923-160v-136.923H160v-40h176.923V-160h-40Zm326.923 0v-176.923h176.923v40H663.846V-160h-40ZM160-623.077v-40h136.923V-800h40v176.923H160Zm463.846 0V-800h40v136.923h136.923v40H623.846Z" fill="white"/></svg>');
  --iconFullscreen: url('data: image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 -960 960 960" width="24"><path d="M160-160v-176.923h40V-200h136.923v40H160Zm463.846 0v-40h136.923v-136.923h40V-160H623.846ZM160-623.077V-800h176.923v40H200v136.923h-40Zm600.769 0V-760H623.846v-40h176.923v176.923h-40Z" fill="white"/></svg>');
}

main[data-page-url="floor-plan-viewer"] .pageBg {
  background-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0.9) 0%,
      rgba(0, 0, 0, 0) 100%
    ),
    url("/wp-content/uploads/floor-bg.webp") !important;
}

main[data-page-url="floor-plan-viewer"] #request-documents {
  top: 1rem !important;
  right: 1rem !important;
  left: auto !important;
  transform: none !important;
}

.ggskin_container,
.rightSide {
  display: none !important;
}
.gg_contextmenu {
  display: none !important;
}

div[style*="z-index: 2147483647"] {
  display: none !important;
  opacity: none !important;
}

#hotspots div.ggdefaulthotspot {
  width: 88px !important;
  height: fit-content !important;
  background-color: var(--colorBrandPrimary90) !important;
  color: white !important;
  font-family: var(--fontHeader) !important;
  font-size: 14px !important;
  border-radius: 6px !important;
  border: 1px solid white !important;
  padding: 6px 12px !important;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.3) !important;
  text-align: center !important;
  transition: opacity 0.3s ease-in-out, transform 0.2s ease-in-out !important;
  transform: translateY(10px) !important;
  left: -40px !important;
}

.menuOpenButton {
  /* display: none !important;  */
}

.ggskin_container {
  display: none;
}

#radarPath {
  transform: scale(0.3);
  transform-origin: center center;
}

.ggskin_container > .ggskin_map:first-child {
  transform-origin: right bottom !important;
}

.statusFilter {
  display: none;
  width: 100%;
  margin: auto;
  font-size: 14px;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
  margin-top: 16px;
  align-items: start;
  justify-content: center;
}

.statusFilter label {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 4px;
  font-size: 14px;
  white-space: nowrap;
}

input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #cccccc73;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  vertical-align: bottom;
  margin-right: 8px;
}

#pageNavigator {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  margin: auto;
  position: fixed;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.15);
  top: 0;
  z-index: 10;
  left: 0.5rem;
  z-index: 4;
  transform-origin: left center;
  scale: 0.6;
  font-family: var(--fontHeader);
  font-weight: bold;
  text-transform: capitalize;
  border-radius: 8px;
  user-select: none;
  box-shadow: 0 0 10px #8080807d;
}

#pageNavigator img {
  display: none;
}

#pageNavigator button {
  background-color: rgba(255, 255, 255, 1);

  padding: 0.1rem 0.75rem;
  border: none;
  color: var(--colorBrandPrimary);

  transition: all 0.3s;
  height: 36px;
  white-space: nowrap;
  font-family: Poppins-Light;
  font-weight: inherit;
  text-transform: inherit;
  font-size: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-left: 1px solid #ffffff21;
}

#pageNavigator button:hover {
  cursor: pointer;
  background-color: var(--colorBrandPrimary90);
  color: white;
}

#logoContainer {
  position: fixed;
  top: 0.75rem;
  right: 0.75rem;
  z-index: 4;
  width: 45px;
  height: auto;
}
#logoContainer img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#bottomContainer {
  position: fixed;
  bottom: 0.5rem;
  right: 0.5rem;
  z-index: 4;
  width: 32px;
  height: auto;
}
#bottom img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.btnActive {
  background: white !important;
  color: var(--colorBrandPrimary90) !important;
}

#Home:hover img {
  content: url("/wp-content/uploads/icons/home-blue.svg");
}

.enterButton,
.exitButton {
  position: fixed;
  z-index: 4;
  bottom: 0.75rem;
  right: 2rem;
}
.fullscreenButtonEnter {
  background-image: var(--iconFullscreen);
  display: block !important;
}
.fullscreenButtonExit {
  background-image: var(--iconFullscreenExit);
}
#backToFloorBtn span {
  display: none;
}
.floorCompass,
.floorZoomButtons {
  display: none;
}

div[hsname^="spotpoint"]:hover {
  background: var(--colorBrandPrimary) !important;
  color: white;
  font-weight: bold;
}
/* header {
  display: none !important;
} */

div.ggskin_map {
  height: 226px;
  border-radius: 10px;
  box-sizing: border-box;
  background-color: rgba(0, 0, 0, 0.5);
  border: solid 5px rgba(255, 255, 255);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: -5px -5px 20px rgba(0, 0, 0, 0.25);
  transition: all 0.4s ease;
  transform-origin: bottom right;
}

div.ggskin_map button {
  background-color: white !important;
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out;
  transform-origin: right center;
}

div.ggskin_map button:hover img {
  filter: invert(1);
}

div.ggskin_map img:not(:first-child) {
  transform-origin: center bottom;
  transition: all 0.3s ease-in-out;
}

div.ggskin_map img:not(:first-child):hover {
  filter: brightness(1.5);
}

.floorMain {
  background-color: rgba(0, 0, 0, 0.85);
  -webkit-backdrop-filter: blur(40px);
  backdrop-filter: blur(40px);
  overflow: hidden;
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
}

.floorViewContainer,
.floorMain {
  color: white;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 20;
  top: 0;
  left: 0;
  border: none;
  display: flex;
  flex-direction: column;
}

.floorArea {
  display: none !important;
  margin-bottom: 3rem !important;
}

.floorArea .floorTableRow {
  justify-content: center;
  align-items: center;
  width: 35%;
  border: none !important;
  white-space: nowrap;
  text-align: left;
}

.floorArea .floorTableRow div {
  font-size: 14px !important;
  font-weight: bold !important;
}

.floorArea .floorTableRow img {
  width: 30px !important;
  height: auto !important;
}

.floorTableRowFeatured div {
  text-align: left !important;
}

div[data-apartament-type="Balcony (sqft)"] {
  display: none !important;
}

div[data-apartament-type="Internal Area (sqft)"] {
  display: none !important;
}

.floorPlanSkinElement {
  top: calc(var(--footerHeight) * -1) !important;
}
.floorPlanContainer {
  height: min(300px, calc(100vh - var(--footerHeight))) !important;
  width: min(300px, calc(100vh - var(--footerHeight))) !important;
}

.floorPlanContainerBig {
  height: calc(100vh - var(--footerHeight) - var(--headerHeight)) !important;
  width: calc(100vh - var(--footerHeight) - var(--headerHeight)) !important;
}
/* .floorViewCloseButton {
  position: absolute;
  top: 1rem;
  right: 1rem;
  cursor: pointer;
  border-radius: 50%;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.3) !important;
  z-index: 21;
} */

/* .floorViewCloseButton::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-image: var(--floorCloseButtonIcon);
  background-position: center;
  background-repeat: no-repeat;
}

.floorViewCloseButton::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--buttonOverGradient);
  z-index: 0;
  transform: scaleY(0);
  transition: transform 0.3s ease;
  transform-origin: top;
}

body.hasHover .floorViewCloseButton:hover::after {
  transform: scaleY(1);
} */

.floorViewContainer,
.krpano360viewer {
  visibility: hidden;
  transition: visibility 0s ease 0.5s, transform 0.5s ease 0s;
  transform: translateY(-100%);
}

.floorViewContainerShow {
  visibility: visible;
  transform: translate(0);
  transition: visibility 0s, transform 0.5s ease;
}

body.hasHover .floorViewCloseButton:hover {
  box-shadow: var(--buttonOverOutline);
}

.floorCompass {
  position: absolute;
  width: 44px;
  height: 88px;
  bottom: 60px;
  right: 20px;
  z-index: 1;
}

.floorLeftPanel {
  width: 100%;
  /* width: 260px;
  max-width: 260px; */
  min-height: 40vh;
  order: 2;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-evenly;
  z-index: 2;
  position: relative;
  padding: 0.5rem 0;
  user-select: none;
}

.floorLeftPanel {
  padding: 0 0 7rem 0.75rem !important;
  min-height: 45vh !important;
}

.floorLeftPanel div {
  position: relative;
}

.floorLeftPanelTop,
.unitLeftPanelTop {
  font-size: 24px;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  width: fit-content;
  margin-top: 0;
  order: 1;
  width: 90px;
  align-self: center;
}

.statusFilter {
  display: none;
  width: 100%;
  margin: auto;
  font-size: 14px;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
  align-items: start;
  justify-content: center;
}

.statusFilter label {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 4px;
  font-size: 14px;
  white-space: nowrap;
}

.floorApartments .floorTableRow:last-child {
}

input[type="radio"],
input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #cccccc73;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  vertical-align: bottom;
  margin-right: 8px;
  transition: border 0.2s;
}

input[type="radio"],
input[type="checkbox"]:hover {
  border: 2px solid white;
}

/* #registerBtnContainer {
  display: flex;
  justify-content: center;
  margin: 0;
  margin-bottom: 1rem;
  position: fixed;
  top: 1rem;
  right: 1rem;
} */

#registerBtnContainer {
  display: flex;
  justify-content: center;
  margin: 0;
  margin-bottom: 1rem;
  position: fixed;
  bottom: 4rem;
  right: 50%;
  transform: translateX(50%);
}

.statusFilter .registerBtn {
  margin-top: 3rem;
  background-color: var(--colorBrandPrimary90) !important;
  align-self: center !important;
}
.statusFilter .registerBtn:hover {
  background-color: black !important;
}

input[value="available"]:checked {
  background-color: green !important;
}

input[value="reserved"]:checked {
  background-color: orange !important;
}

input[value="stage-2-release"]:checked {
  background-color: rgba(55, 18, 221, 0.965) !important;
}

input[value="stage-3-release"]:checked {
  background-color: rgba(55, 18, 221, 0.965) !important;
}

input[value="future-release"]:checked {
  background-color: rgba(55, 18, 221, 0.965) !important;
}

input[value="sold"]:checked {
  background-color: red !important;
}

input[value="0"]:checked {
  background-color: rgba(0, 0, 255, 0.6) !important;
}
input[value="1"]:checked {
  background-color: rgba(0, 128, 0, 0.6) !important;
}
input[value="2"]:checked {
  background-color: rgba(0, 0, 255, 0.9) !important;
}
input[value="3"]:checked {
  background-color: rgba(255, 0, 0, 0.6) !important;
}
input[value="4"]:checked {
  background-color: rgba(128, 0, 128, 0.6) !important;
}
input[value="5"]:checked {
  background-color: rgba(255, 166, 0, 0.6) !important;
}

#availableType:checked {
  background-color: green;
  pointer-events: none;
  cursor: auto;
}
#reservedType:checked {
  background-color: orange;
  pointer-events: none;
  cursor: auto;
}
#soldType:checked {
  background-color: red;
  pointer-events: none;
  cursor: auto;
}

#bedroomFilter {
  display: none;
  max-width: 100%;
  flex-direction: column;
  align-items: center;
}

#bedroomFilterInputs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#bedroomFilterTitle {
  text-align: left;
  white-space: nowrap;
  margin: 0;
  margin-top: 2rem;
  font-size: 16px;
  font-weight: bolder !important;
  font-family: var(--fontRegular);
}

.bedroomFilterStatus {
  user-select: none;
  pointer-events: no;
  display: flex;
  flex-direction: column;
}

.bedroomFilterStatus > div {
  display: flex;
  justify-content: center;
}

#bedroomFilter label {
  display: flex;
  flex-direction: row !important;
  align-items: center;
  font-size: 16px;
  /* font-weight: bold; */
  cursor: pointer;
}

label {
  margin-left: 8px;
  cursor: pointer;
}

.floorLeftPanelCenter {
  width: fit-content;
  min-width: 60%;
  overflow: auto;
  max-height: 100%;
  padding: 0.5rem 1rem 0.5rem 0;
}

.floorLeftPanelTitle {
  margin: 10px 0;
  white-space: nowrap;
  font-family: var(--fontHeader);
  color: var(--colorBrandPrimary);
}

.floorLeftPanelTitle span {
  font-weight: 700;
  color: var(--lightGoldColor);
}

.floorPrevButton,
.floorNextButton {
  width: 68px;
  height: 30px;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0.3);
  cursor: pointer;
  transition: var(--buttonOverTransition);
  overflow: hidden;
}

.floorPrevNextButtonDisabled {
  pointer-events: none;
  cursor: default;
  opacity: 0.3;
  background-color: rgba(255, 255, 255, 0.1);
}

.floorPrevButton::before,
.floorNextButton::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-image: var(--floorPrevButtonIcon);
  z-index: 1;
}

.floorNextButton::before {
  background-image: var(--floorNextButtonIcon);
}

.floorPrevButton::after,
.floorNextButton::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--colorBrandPrimary);
  z-index: 0;
  transform: scaleY(0);
  transition: transform 0.3s ease;
  transform-origin: top;
}

body.hasHover .floorPrevButton:hover,
body.hasHover .floorNextButton:hover {
  box-shadow: var(--buttonOverOutline);
}

body.hasHover .floorPrevButton:hover::after,
body.hasHover .floorNextButton:hover::after {
  transform: scaleY(1);
}

.menuClose {
  left: -460px !important;
  opacity: 0.2 !important;
}

.floorValuesTable {
  width: 100%;
  max-width: 300px;
  margin: auto;
  font-size: 12px;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  width: 100%;
  margin-top: 1rem;
  margin-top: 0;
}
.floorValuesTable:empty {
  margin-top: 0 !important;
}

.floorTableRow[data-apartament-type="Price (AED)"] {
  display: none;
}

.floorTableRow {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 6px 10px;
  border-bottom: dotted 1px #5f5f5f70;
  transition: background 0.3s ease;
}

.floorParkings {
  /* display: none !important; */
}

.floorParkings .floorTableRow:first-child {
  border-bottom: none !important;
}

.floorTableRow > div:nth-child(1) {
  width: 70%;
}

.floorTableRow > div:nth-child(2) {
  width: 30%;
  text-align: right;
  font-weight: 500;
}

.floorTableRow > div:nth-child(2) span {
  font-weight: 400;
}

div[data-apartament-type="Totals"] {
  font-weight: 700;
}

div[data-apartament-type="Total SQM"] {
}

.floorShowAvailable {
  cursor: pointer;
  margin-top: 30px;
  border-bottom: none;
}
.floorShowAvailable > div {
  width: 100% !important;
}
.apartmentFilter {
  cursor: pointer;
}
.apartmentFilterCheckbox {
  width: 14px;
  height: 14px;
  position: absolute;
  background-color: var(--lightGoldColor);
  box-shadow: inset 0 0 0 1px black, 0 0 0 1px rgba(255, 255, 255, 0.3);
  display: inline-block;
  cursor: pointer;
  margin-right: 10px;
  border-radius: 50%;
  top: 3px;
  transition: all 0.3s ease !important;
}

body.hasHover .apartmentFilterCheckbox:hover,
body.hasHover .floorTableRow:hover .apartmentFilterCheckbox {
  background: var(--buttonOverGradient);
  box-shadow: inset 0 0 0 1px black, 0 0 0 3px rgba(255, 255, 255, 0.2);
}

.apartmentFilterCheckboxHide {
  background: black !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}
mapviewer body.hasHover .apartmentFilterCheckboxHide:hover {
  box-shadow: var(--buttonOverOutline);
}

.unitTabs,
.floorTabs {
  display: none;
  order: 2;
  position: static;
  left: 320px;
  justify-content: center !important;
  height: 100%;
  z-index: 1;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.25);
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: start;
  overflow-y: auto;
  user-select: none;
  padding: 5vh 0;
  margin: 0;
  position: relative;
  left: 0;
  min-width: fit-content;
  transition: all 1s ease-in-out;
  white-space: nowrap;
}

.unitTabs > div,
.floorTabs > div {
  position: relative;
  text-align: center;
  font-size: 12px;
  padding: 8px;
  transition: background 0.5s ease;
  cursor: pointer;
  width: 47px;
}

body.hasHover .unitTabs > div:hover,
body.hasHover .floorTabs > div:hover {
  background-color: rgba(0, 0, 0, 0.5);
  background-color: var(--colorBrandSecondary90);
  transition: background 0s ease;
}

.floorTabSelected {
  background-color: var(--colorBrandPrimary90);
  cursor: default !important;
}

body.hasHover .floorTabSelected:hover {
  background: var(--colorBrandPrimary);
  box-shadow: var(--buttonOverOutline);
}

.floorZoomButtons {
  position: absolute;
  width: 48px;
  height: 96px;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.floorZoomInButton,
.floorZoomOutButton {
  position: relative;
  width: 48px;
  height: 48px;
  background-color: rgba(0, 0, 0, 0.3);
  cursor: pointer;
  transition: var(--buttonOverTransition);
  border-radius: 50% 50% 0 0;
  overflow: hidden;
}

.floorZoomOutButton {
  border-radius: 0 0 50% 50%;
}

.floorZoomInButton::before,
.floorZoomOutButton::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
}

.floorZoomInButton::before {
  background-image: var(--floorZoomInButtonIcon);
}

.floorZoomOutButton::before {
  background-image: var(--floorZoomOutButtonIcon);
}

.floorZoomInButton::after,
.floorZoomOutButton::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--buttonOverGradient);
  z-index: 0;
  transform: scaleY(0);
  transition: transform 0.3s ease;
  transform-origin: top;
}

body.hasHover .floorZoomInButton:hover,
body.hasHover .floorZoomOutButton:hover {
  box-shadow: var(--buttonOverOutline);
}

body.hasHover .floorZoomInButton:hover:after,
body.hasHover .floorZoomOutButton:hover::after {
  transform: scaleY(1);
}

.floorImageContainer {
  right: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
}

.floorImage {
  background-color: transparent !important;
  width: 90%;
  height: auto;
  background-image: var(--loadingSpinner) !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.floorImageVisible {
  background: none !important;
}

.floorImage img {
  margin: inherit;
  transition: opacity 0.3s ease;
}

.f-spinner {
  display: none !important;
}

.floorImageVisible img {
  opacity: 1;
}

.floorViewHotspot {
  transition: opacity 0.3s ease;
}

.floorViewHotspotHidden {
  opacity: 0;
}

.floorViewHotspotHiddenSold {
  opacity: 0 !important;
}

.floorViewHotspotCircle {
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--apartmentHotspot);
  transform: translate(-50%, -50%);
  border: solid 2px rgba(255, 255, 255, 1);
}

.floorViewHotspotCircle::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  font-size: 12px;
  font-weight: 700;
  color: black;
  text-align: center;
}

.floorViewHotspot[data-apartment-type="3 Bed"] .floorViewHotspotCircle::before {
  content: "3";
}

.floorViewHotspot[data-apartment-type="2 Bed"] .floorViewHotspotCircle::before {
  content: "2";
}

.floorViewHotspot[data-apartment-type="1 Bed"] .floorViewHotspotCircle::before {
  content: "1";
}

.floorViewHotspot[data-apartment-type="Studio"]
  .floorViewHotspotCircle::before {
  content: "S";
}

.floorViewHotspot[data-status="sold"] .floorViewHotspotCircle {
  background-color: var(--apartmentSold);
}

.floorViewHotspot[data-status="available"] .floorViewHotspotCircle {
  background-color: var(--apartmentAvailable);
}

.floorViewDrawButton {
  display: none;
  z-index: 21;
  position: absolute;
  bottom: 5px;
  left: 20px;
}

.floorSelectorSummary {
  border-top: 1px solid var(--lightGoldColor);
  border-bottom: 1px solid var(--lightGoldColor);
  background: rgba(0, 0, 0, 0.11);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  padding: 0 !important;
  display: inline-block;
  pointer-events: all;
}

.floorSelectorSummary table {
  border-spacing: 0px;
}

.floorSelectorSummary tr td,
.floorSelectorSummary tr th {
  text-align: center;
  font-size: 0.8em;
  padding: 5px 5px;
  font-weight: 300;
}

.floorSelectorSummary tr th {
  font-weight: 500;
}

.floorSelectorSummary tr th:first-child,
.floorSelectorSummary tr td:first-child {
  text-align: left;
  padding-left: 10px;
}

.floorSelectorSummary tr th:last-child,
.floorSelectorSummary tr td:last-child {
  text-align: right;
  padding-right: 10px;
}

.floorSelectorSummary tbody tr:nth-child(even) {
  background-color: rgba(255, 255, 255, 0.05);
  transition: background 0.5s ease;
}

body.hasHover .floorSelectorSummary tbody tr:hover {
  background-color: var(--tableRowHover);
  transition: background 0s ease;
}

.floorSelectorSummary thead tr {
  color: var(--lightGoldColor);
  background-color: rgba(0, 0, 0, 0.35);
}

.f-panzoom {
  order: 1;
  position: relative;
  width: 100%;
  height: 100%;
  margin: auto 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transform: translate3d(0, 0, 0);
  background: #fff;
}

.f-panzoom__content {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  transform: translate3d(0, 0, 0) scale(1) rotate(0) skew(0);
  transform-origin: center center;
  transition: none;
  -webkit-user-select: none;
  user-select: none;
}

.f-panzoom__container div {
  position: absolute;
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.f-panzoom__container div:hover div {
  display: flex !important;
}

.f-panzoom__container div div {
  display: none;
  min-width: 20px;
  min-height: 20px;
  font-size: 12px;
  max-width: 90%;
  max-height: 90%;
  border-radius: 50%;
  z-index: 1001;
  background-color: var(--colorBrandPrimary) !important;
  color: white !important;
  opacity: 1;
  justify-content: center;
  align-items: center;
  transition: all 0.3s;
}

#buildingControl {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.5rem;
  background-color: var(--colorBrandNeutral) !important;
  margin: auto;
  position: absolute;
  border-radius: 2em;
  overflow: hidden;
  z-index: 10;
  bottom: calc(var(--footerHeight));
  left: 50%;
  transform: translate(-50%, 0);
  font-family: var(--fontHeader);
  font-weight: bold;
  text-transform: capitalize;
  transition: all 0.3s ease;
  border: 1px solid white;
}

#buildingControl:hover {
  box-shadow: var(--buttonOverOutline);
}

#buildingControl button {
  background: var(--colorBrandPrimary90);
  padding: 4px 8px;
  border: none !important;
  color: white;
  white-space: nowrap;
  font-family: inherit;
  font-weight: inherit;
  text-transform: inherit;
  width: auto;
  font-size: 10px;
  user-select: none;
}

#buildingControl button:hover {
  cursor: pointer;
}

#showHideBtn {
  min-width: 104px !important;
  border-radius: 2em;
}

.btnActive {
  background: var(--colorBrandPrimary) !important;
  color: white !important;
  cursor: default;
  pointer-events: none;
  font-family: "POPPINS-LIGHT" !important;
}

.pointsHospot {
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  font-family: var(--fontRegular);
  font-size: calc(min(1.5vh, 1vw));
  pointer-events: none !important;
  background: none !important;
  /* background-color: var(--colorBrandPrimary90) !important; */
  border-radius: 50% !important;
  color: white;
  font-weight: bold;
  /* border: 1px solid var(--colorBrandYellow) !important;
  padding: 0.25rem; */
}

.available {
  fill: rgba(0, 125, 0, 0.4) !important;
  stroke: white;
  transition: fill 0.4s, stroke-width 0.4s;
  display: block !important;
  pointer-events: auto !important;
}

.available:hover {
  fill: rgba(0, 125, 0, 0.6) !important;
  stroke-width: 3;
}

.reserved {
  fill: rgba(255, 165, 0, 0.4) !important;
  stroke: white;
  transition: fill 0.4s, stroke-width 0.4s;
  display: block !important;
  pointer-events: none !important;
}

.future-release {
  fill: rgba(55, 18, 221, 0.4) !important;
  stroke: white;
  transition: fill 0.4s, stroke-width 0.4s;
  display: block !important;
  pointer-events: none !important;
}

.stage-2-release {
  fill: rgba(55, 18, 221, 0.4) !important;
  stroke: white;
  transition: fill 0.4s, stroke-width 0.4s;
  display: block !important;
  pointer-events: none !important;
}

.stage-3-release {
  fill: rgba(55, 18, 221, 0.4) !important;
  stroke: white;
  transition: fill 0.4s, stroke-width 0.4s;
  display: block !important;
  pointer-events: none !important;
}

.sold {
  fill: rgba(255, 0, 0, 0.4) !important;
  stroke: white;
  transition: fill 0.4s, stroke-width 0.4s;
  display: block !important;
  pointer-events: none !important;
}

.unavailable {
  color: rgb(241, 78, 78);
}

.under {
  color: orange;
}

.green-status {
  fill: rgba(0, 128, 0, 0.5) !important;
}

.green-status-int {
  fill: rgba(0, 128, 0, 0.15) !important;
}

.orange-status {
  fill: rgba(225, 166, 0, 0.5) !important;
}

.orange-status-int {
  fill: rgba(225, 166, 0, 0.15) !important;
}

.red-status {
  fill: rgba(255, 0, 0, 0.5) !important;
  pointer-events: none !important;
}

.red-status-int {
  fill: rgba(255, 0, 0, 0.15) !important;
  pointer-events: none !important;
}

.filtered-out {
  pointer-events: none !important;
  opacity: 0.4;
}

.hidden {
  display: none !important;
  pointer-events: none !important;
}

.highlight {
  color: greenyellow;
}

.statusFilter .registerBtn {
  margin-top: 3rem;
  background-color: var(--colorBrandPrimary90) !important;
  align-self: center !important;
}
.statusFilter .registerBtn:hover {
  background-color: black !important;
}

.highlight {
  color: greenyellow;
}

.unavailable {
  color: rgb(241, 78, 78);
}

.under {
  color: orange;
}

.one-bed-status {
  fill: rgba(23, 185, 23, 0.4) !important;
  stroke: white;
  transition: fill 0.15s, stroke-width 0.2s;
}

.one-bed-status:hover {
  fill: rgba(23, 185, 23, 0.7) !important;
  stroke-width: 2;
}

.two-bed-status {
  stroke: white;
  fill: rgba(23, 50, 185, 0.4) !important;
  transition: fill 0.15s, stroke-width 0.2s;
}

.two-bed-status:hover {
  fill: rgba(23, 50, 185, 0.7) !important;
  stroke-width: 2;
}

.three-bed-status {
  stroke: white;
  fill: rgba(255, 0, 0, 0.4) !important;
  transition: fill 0.15s, stroke-width 0.2s;
}

.three-bed-status:hover {
  fill: rgba(255, 0, 0, 0.7) !important;
  stroke-width: 2;
}

.four-bed-status {
  stroke: white;
  fill: rgba(185, 23, 169, 0.4) !important;
  transition: fill 0.15s, stroke-width 0.2s;
}

.four-bed-status:hover {
  fill: rgba(185, 23, 169, 0.7) !important;
  stroke-width: 2;
}

.five-bed-status {
  stroke: white;
  fill: rgba(255, 157, 0, 0.4) !important;
  transition: fill 0.15s, stroke-width 0.2s;
}

.five-bed-status:hover {
  fill: rgba(255, 157, 0, 0.7) !important;
  stroke-width: 2;
}

.zero-bed-status-int {
  stroke: white;
  fill: rgba(23, 50, 185, 0.15) !important;
  transition: fill 0.15s, stroke-width 0.2s;
}

.zero-bed-status-int:hover {
  fill: rgba(23, 50, 185, 0.25) !important;
  stroke-width: 3;
}

.one-bed-status-int {
  fill: rgba(23, 185, 23, 1) !important;
  stroke: white;
  transition: fill 0.15s, stroke-width 0.2s;
  display: block !important;
}

.one-bed-status-int:hover {
  fill: rgba(23, 185, 23, 0.25) !important;
  stroke-width: 3;
}

.three-bed-status-int {
  stroke: white;
  fill: rgba(255, 0, 0, 0.15) !important;
  transition: fill 0.15s, stroke-width 0.2s;
  display: block !important;
}

.three-bed-status-int:hover {
  fill: rgba(255, 0, 0, 0.25) !important;
  stroke-width: 3;
}

.four-bed-status-int {
  stroke: white;
  fill: rgba(185, 23, 169, 0.15) !important;
  transition: fill 0.15s, stroke-width 0.2s;
  display: block !important;
}

.four-bed-status-int:hover {
  fill: rgba(185, 23, 169, 0.25) !important;
  stroke-width: 3;
}

.five-bed-status-int {
  stroke: white;
  fill: rgba(255, 157, 0, 0.15) !important;
  transition: fill 0.15s, stroke-width 0.2s;
  display: block !important;
}

.five-bed-status-int:hover {
  fill: rgba(255, 157, 0, 0.25) !important;
  stroke-width: 3;
}

.floorsTitle {
  display: none;
  background: var(--colorBrandPrimary);
  padding: 8px 4px;
  font-family: var(--fontHeader);
  font-size: 9px;
  font-weight: bold;
  margin-bottom: 0.5rem;
}

#sizeDisclaimer {
  display: none;
}

/* #downloadBtn {
  pointer-events: none !important;
} */

#ShareBtn {
  pointer-events: none !important;
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  align-items: center;
  width: 120px !important;
  height: 32px !important;
  z-index: 1000;
  padding: 12px 36px;
  background-color: #007bff;
  color: white;
  cursor: pointer;
  border-radius: 20px;
  margin-top: 1.5rem;
  background-color: var(--colorBrandPrimary) !important;
  border: 1px solid white;
  text-align: center;
  align-self: center;
  text-transform: uppercase;
  font-size: 14px;
}

#ShareBtn:hover {
  background-color: #0056b3;
}

#backToFloorBtn {
  display: none;
  position: fixed;
  top: 1rem;
  white-space: nowrap;
  left: 1rem;
  z-index: 1000;
  margin-bottom: 10px;
  /* font-size: 14px; */
  gap: 0.3rem;
}

#backToFloorIcon {
  display: none;
}

#backToFloorBtn:hover {
  /* background-color: var(--colorBrandPrimary90) !important; */
}

div#mapviewer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100% !important;
  height: 100% !important;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
  overflow: hidden;
}

div#mapviewer::before {
  content: "";
  position: absolute;
  width: calc(100% + 32px);
  height: calc(100% + 32px);
  left: -16px;
  top: -16px;

  background-image: linear-gradient(
      to right,
      rgba(0, 0, 0, 0.95) 0%,
      rgba(0, 0, 0, 0.9) 100%
    ),
    url("/wp-content/uploads/floor-bg.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  filter: blur(8px);
  -webkit-filter: blur(8px);
  z-index: -1;
}

#krpanoSWFObject {
  width: 95% !important;
  height: 70% !important;
  background-color: transparent !important;
  margin-top: 10vw;
  display: none;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* ----------Responsive---------------------------- */

@media screen and (min-width: 576px) {
  .floorLeftPanelTop,
  .unitLeftPanelTop {
    position: static !important;
    transform: translateY(0);
  }

  .floorLeftPanel {
    align-items: center;
    justify-content: space-evenly;
    min-height: 25vh;
  }
  .floorLeftPanelCenter {
    width: 50%;
  }
  #pageNavigator {
    scale: 1;
    left: 0.5rem;
    top: 0.5rem;
  }
  #pageNavigator button {
    padding: 0.5rem 0.5rem;
  }
  #bottomContainer {
    bottom: 0.75rem;
    right: 0.75rem;
  }
  #bedroomFilterBuilding {
    left: 0.5rem;
    transform-origin: left;
    scale: 1;
  }

  #krpanoSWFObject {
    margin-top: 0;
  }
  #backToFloorBtn span {
    display: block !important;
  }
}

@media screen and (min-width: 576px) and (orientation: landscape) {
  main {
    padding: 40px 0;
  }
  .floorMain {
    flex-direction: row;
  }
  .floorLeftPanel {
    order: 1;
    height: 100%;
    flex-direction: column;
    max-width: 260px;
    justify-content: space-between;
    align-items: center;
  }
  .f-panzoom {
    order: 2;
  }
  .floorLeftPanelCenter {
    width: 95%;
    margin-top: 1.5rem;
  }
  .floorLeftPanelTop {
    transform: initial !important;
    margin-top: 2rem;
    margin-bottom: 1rem;
  }
  .statusFilter {
    max-width: 300px;
    padding: 1rem 0;
  }

  #backToFloorBtn {
    left: 270px;
  }
  #backToFloorBtn span {
    display: block !important;
  }

  #registerBtnContainer {
    display: flex;
    justify-content: center;
    margin: 0;
    margin-bottom: 1rem;
    position: fixed;
    bottom: auto;
    top: 1rem;
    right: 1.5rem;
    transform: translateX(-75%);
  }
}

@media screen and (min-width: 768px) {
  .col3 {
    justify-content: center;
  }
  main {
    flex-direction: row;
    padding: 40px 0;
  }
  .leftSide {
    height: auto;
    align-items: flex-start;
    text-align: left;
    padding: 0 2% 1rem calc(5% + 40px);
    line-height: 1.7;
  }
  .rightSide {
    width: 67%;
    margin-top: 0;
  }
  .leftSide hr {
    margin: 1.5rem 0;
    background-color: rgba(255, 255, 255, 0.15) !important;
  }
  .pageBg {
    background-image: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.847) 0%,
        rgba(0, 0, 0, 0) 30%
      ),
      none !important;
  }
  #pageNavigator img {
    display: inline;
  }
  #bedroomFilterInputsBuilding {
    display: flex;
    flex-direction: row;
    justify-content: start;
  }
  #bedroomFilterTitleBuilding {
    font-size: 14px;
    font-weight: bold;
    margin: 0.5rem 0 0.75rem 0;
  }

  .floorValuesTable {
    font-size: 14px;
  }
  #backToFloorBtn span {
    display: block !important;
  }

  main[data-page-url="floor-plan-viewer"] .floorLeftPanel {
    padding: 0.5rem 0 6rem 0.75rem !important;
    min-height: 35vh !important;
  }
}

@media screen and (min-width: 992px) {
  #bedroomFilter {
    align-items: start;
  }
  #loaderContainer::before {
    width: 40%;
  }

  #backToFloorIcon {
    display: inline;
  }

  #krpanoSWFObject {
    width: 90% !important;
    height: 75% !important;
    margin-top: 0;
  }

  main[data-page-url="floor-plan-viewer"] #backToFloorBtn {
    top: 4rem !important;
  }

  .floorLeftPanel {
    order: 1;
    height: 100%;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
  }

  #bedroomFilter {
    width: 100%;
  }
  .statusFilter {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  .floorLeftPanelCenter {
    width: 100%;
    margin-top: 1.5rem;
  }

  .floorLeftPanelTop {
    transform: initial !important;
    margin-top: 2rem;
    margin-bottom: 1rem;
    order: 0;
  }

  main[data-page-url="floor-plan-viewer"] .floorLeftPanelTop {
    margin-top: 4rem !important;
  }

  #registerBtnContainer {
    position: static;
    top: 0;
    right: 0;
    margin-top: 1rem;
    transform: translateX(0%);
  }

  .pointsHospot {
    border: 1px solid var(--colorBrandYellow) !important;
    padding: 0.1rem;
  }
  #backToFloorBtn span {
    display: block !important;
  }
}

@media screen and (min-width: 1025px) {
  .unitTabs,
  .floorTabs {
    display: flex;
  }

  #backToFloorBtn {
    left: 320px;
  }
  .f-panzoom {
    order: 2;
  }
  .floorLeftPanel {
    max-width: 260px;
    padding: 0.5rem;
  }
  .floorTableRow {
    padding: 10px 10px;
  }
  .floorParkings {
    margin-top: 1.5rem;
  }

  #bedroomFilter {
    display: flex;
  }
  #backToFloorBtn span {
    display: block !important;
  }

  #sizeDisclaimer {
    display: block;
  }
}

@media screen and (min-width: 1200px) {
  .leftSide {
    padding: 0 2% 1rem calc(5% + 15px);
  }
  .ggskin_container > .ggskin_map:first-child {
    scale: 1;
  }
  #backToFloorBtn span {
    display: block !important;
  }
}
