/* ------Global Fonts---- */

@font-face {
  font-family: Gelasio-Regular;
  src: url("/wp-content/themes/visionpitch/vp-components/fonts/Gelasio--Regular.ttf");
}
@font-face {
  font-family: Gelasio-Italic;
  src: url("/wp-content/themes/visionpitch/vp-components/fonts/Gelasio-Italic.ttf");
  font-weight: normal;
  font-style: italic !important;
}

@font-face {
  font-family: LatoRegular;
  src: url("/wp-content/themes/visionpitch/vp-components/fonts/Lato-Regular.ttf");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: LatoLight;
  src: url("/wp-content/themes/visionpitch/vp-components/fonts/Lato-Light.ttf");
}

* {
  --fontHeader: "Gelasio-Italic";
  --fontRegular: LatoRegular;
  --fontLight: LatoLight;
  --fontBig: "Gelasio-Regular";
  --fontSerif: "Gelasio-Regular";
}

/* Global Colors */

:root {
  --colorBrandPrimary: rgb(29, 37, 45);
  --colorBrandPrimary90: rgba(29, 37, 45, 0.9);
  --colorBrandPrimary70: rgba(29, 37, 45, 0.7);
  --colorBrandPrimary50: rgba(29, 37, 45, 0.5);
  --colorBrandPrimary30: rgba(29, 37, 45, 0.3);
  --colorBrandPrimary20: rgba(29, 37, 45, 0.2);
  --colorBrandSecondary: rgba(46, 70, 94, 1);
  --colorBrandSecondary90: rgba(46, 70, 94, 0.9);
  --colorBrandSecondary50: rgba(46, 70, 94, 0.5);
  --colorBrandNeutral: #f6f0ff;
  --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>');
}

@keyframes pulseOutline {
  0% {
    outline-width: 0px;
    outline-color: rgba(255, 255, 255, 1);
  }

  100% {
    outline-width: 50px;
    outline-color: rgba(255, 255, 255, 0); /* Outline fades out */
  }
}

.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;
}

/* --------Layout-------- */
#header,
footer.footer {
  /* background-color: var(--colorBrandPrimary70); */
  border: none;
}

#header {
  display: none;
  background: none;
}

footer.footer {
  background: linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.9) 0%,
    rgba(0, 0, 0, 0.55) 0%,
    rgba(0, 0, 0, 0) 100%
  );
}

.headerProjectTitle span {
  display: none;
}

/* .leftSide {
  padding: 0 2% 0.5rem 5%;
  pointer-events: none !important;
  overflow: hidden !important;
} */

.leftSide {
  width: 100%;
  padding: 0 2% 0.5rem 5%;
  pointer-events: none !important;
  overflow: hidden !important;
  height: fit-content;
  min-height: fit-content;
}

.main[data-page-url="executive-summary"] .leftSide {
  text-align: center;
}

.rightSide hr,
.leftSide hr {
  background-color: rgb(255 255 255 / 15%);
  margin: 1.5rem auto;
  width: 60%;
}

.leftSide div,
.leftSide ul {
  font-family: var(--fontRegular);
  user-select: none;
  pointer-events: inherit !important;
}

.mainMenu {
  background-color: var(--colorBrandPrimary);
}

.menuTop {
  display: flex;
  align-items: center;
  padding-left: 2.5rem;
  background-color: var(--colorBrandSecondary);
  border-bottom: solid 1px #ffffff20;
}

.topMenuLogo {
  height: 60px;
  position: static;
  transform: initial;
}

.menuBottom {
  background-color: var(--colorBrandSecondary);
  border-top: none;
  /* color: black; */
}

.menuCloseButton {
  top: 25px;
}

.menuActive a,
.current-menu-item a {
  background-color: var(--colorBrandSecondary);
}

/* -------Buttons-------- */

.buttonPrimary {
  /* background-color: var(--colorBrandPrimary70) !important; */
  background-color: var(--colorBrandPrimary90) !important;
  color: white !important;
}

.buttonPrimaryWithText {
  background-color: var(--colorBrandSecondary90);
  color: white;
  border: solid 1px var(--colorWhite50);
  cursor: pointer !important;
  display: flex;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
}

.buttonPrimaryWithText:hover {
  box-shadow: var(--buttonOverOutline);
  background-color: var(--colorBrandPrimary);
}

/* ------Elements------- */

a,
a:link,
a:visited {
  color: #cfc4c0;
}

h1,
h3,
img {
  user-select: none !important;
}

.leftSide h3 {
  display: none;
}

.material-icons {
  color: white !important;
}

body.hasHover .menu-item a:hover {
  background-color: var(--colorBrandSecondary) !important;
  color: var(--colorBrandNeutral);
}

/* ------fancyBox------- */

.f-button::after {
  background: var(--colorBrandSecondary90) !important;
}

.f-button {
  background-color: var(--colorBrandSecondary90) !important;
  color: var(--colorBrandPrimary);
  border: solid 1px #ffffff80 !important;
}

.popupCloseButton {
  border: solid 1px #ffffff80;
}

/* ------Switcher------- */

.switcherContainer {
  /* background-color: var(--colorBrandPrimary90) !important; */
}

.switcherSelector {
  /* background: var(--colorBrandSecondary) !important; */
  background: rgb(0 112 255) !important;
}

.switherItem {
  user-select: none;
  color: white;
}

/* -----Enquire Form-------- */

.form-container {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  justify-content: center;
  align-items: flex-start;
  z-index: 9998;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  overflow: auto;
  padding: 1rem;
}

#contact-form {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  justify-content: space-between;
  width: 350px;
  height: fit-content;
  padding: 3rem 1rem 1rem 1rem;
  background: var(--colorBrandPrimary90);
  border-radius: 1rem;
  color: white;
  position: relative;
}

.form-container.active {
  display: flex;
}

.form-container label {
  display: flex;
  margin: 8px 0;
  font-weight: bold;
  flex-direction: column;
  gap: 0.5rem;
  font-family: var(--fontHeader);
  font-size: 14px;
  user-select: none;
}

#message {
  height: 100px;
  min-height: 40px;
  max-height: 200px;
  width: 100%;
  max-width: 100%;
  min-width: 100%;
}

.form-container input,
textarea {
  width: 100%;
  padding: 10px;
  /* margin-bottom: 15px; */
  border: 1px solid #ddd;
  border-radius: 5px;
  background: #ededed;
}

.form-container button {
  padding: 12px 20px;
  background: var(--colorBrandSecondary);
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-family: var(--fontHeader);
  font-size: 16px;
  transition: all 0.2s ease;
  margin-top: 1rem;
  user-select: none;
}

.form-container button:hover {
  box-shadow: var(--buttonOverOutline);
}

.form-container button[type="submit"] {
  /* pointer-events: none !important; */
}

.form-container .close-btn {
  background: none;
  border: none;
  color: white;
  font-size: 16px;
  cursor: pointer;
  padding: 5px 10px;
  border-radius: 2rem;
  position: absolute;
  top: 1rem;
  right: 1rem;
  margin: 0;
  font-family: var(--fontRegular);
  font-size: 14px;
}

.form-container .close-btn:hover {
  /* color: var(--colorBrandPrimary); */
}

/* ---------------------------------------------------- */
/* Mobile Landscape (481px to 767px) */
/* Styles for mobile landscape screens */
@media only screen and (min-width: 481px) and (max-height: 430px) and (orientation: landscape) {
  .contentContainerLeft {
    display: flex;
  }
  .rightSide hr,
  .leftSide hr {
    margin: 1.5rem 0;
  }

  .leftSide h3 {
    display: block;
  }

  .leftSide {
    text-align: left;
    width: 33%;
  }
  .main[data-page-url="executive-summary"] .leftSide {
    text-align: left;
  }
}

/* Styles for tablet portrait screens */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .leftSide hr {
    /* margin: 1.5rem 0; */
    margin: 1.5rem auto;
  }
}

/* Tablet Landscape (1024px to 1279px) */
/* Styles for tablet landscape screens */
@media only screen and (min-width: 1024px) {
  .leftSide {
    width: 33%;
  }
  #header {
    display: block;
  }

  .leftSide h3 {
    display: block;
  }

  .rightSide hr,
  .leftSide hr {
    margin: 1rem 0;
  }

  .leftSide {
    text-align: left;
  }
  .form-container {
    align-items: center;
  }
  .main[data-page-url="executive-summary"] .leftSide {
    text-align: left;
  }
}

/* Small Desktop (1280px to 1440px) */
@media only screen and (min-width: 1280px) {
  /* Styles for small desktop screens */
}

/* Desktop (1441px to 1920px) */
@media only screen and (min-width: 1441px) and (max-width: 1920px) {
  /* Styles for desktop screens */
}

/* Large Desktop (1921px and above) */
@media only screen and (min-width: 1921px) {
  /* Styles for large desktop screens */
}

/* Portrait Orientation */
@media only screen and (orientation: portrait) {
}

/* Landscape Orientation */
@media only screen and (orientation: landscape) {
  /* Styles for landscape orientation */
}

/* Large Devices and Tablets in Landscape Mode */
/* Styles for large screens and tablets in landscape orientation */
@media (min-width: 1024px) and (orientation: landscape) {
  .contentContainerLeft {
    display: flex;
  }
}
