html, body {
  min-height: 100vh;
  width: 100vw;
  overflow-x: hidden;
  overflow-y: overlay;
  scroll-behavior: smooth;
  background-color: #0e0e0e;
  cursor: url('../media/cursor.png'), default;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a {
  cursor: url('../media/pointer.png'), default !important;
}

::selection {
  background: rgba(100,100,100,0.6);
}
::-moz-selection {
  background: rgba(100,100,100,0.6);
}

::-webkit-scrollbar {
  width: 5px;
  height: 10px;
}
::-webkit-scrollbar-thumb {
  background: rgba(80, 80, 80, 0.8);
}
::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.15);
}

#cursorImg {
  position: absolute;
  z-index: 0;
  width: 70px;
  height: 70px;
  border-style: solid;
  border-width: 1px;
  border-color: #fff;
  border-radius: 50%;
  opacity: 0.32;
}

.spacer {
  width: 100%;
  height: 50px;
}
nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 15vh;
  width: 100vw;
  z-index: 1000;
}

#bookCallButton {
  cursor: url(../media/pointer.png), default !important;
    border-radius: 10px;
    /* background: #5182BC; */
    background-image: linear-gradient(90deg, #5183aA 0%, #5182BC 100%);
    padding: 1vw 1.5vw;
    box-shadow: 5px 5px 5px rgba(100, 100, 100, 0.7);
}
#bookCallButton a {
  font-family: 'Roboto Mono', monospace;
  font-weight: 500;
  font-size: 1vw;
  letter-spacing: 1px;
  color: #e5e5e5 !important;
  text-transform: uppercase;
  text-decoration: none !important;
}

nav .contain {
  display: flex;
  position: absolute;
  width: 45% !important;
  height: 100%;
  top: 0;
  right: 12.5%;
  align-items: center;
  justify-content: space-between;
  -webkit-transition: all ease-in-out 0.2s;
  -moz-transition: all ease-in-out 0.2s;
  -ms-transition: all ease-in-out 0.2s;
  -o-transition: all ease-in-out 0.2s;
  transition: all ease-in-out 0.2s;
}
nav li {
  -webkit-flex: auto;
  -ms-flex: auto;
  flex: auto;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-transition:all ease-in-out 0.2s;
  -moz-transition:all ease-in-out 0.2s;
  -ms-transition:all ease-in-out 0.2s;
  -o-transition:all ease-in-out 0.2s;
  transition:all ease-in-out 0.2s;
}
nav li a {
  font-family: 'Roboto Mono', monospace;
  font-weight: 400;
  font-size: 1.1vw;
  letter-spacing: 1px;
  color: #e5e5e5 !important;
  text-transform: uppercase;
  text-decoration: none !important;
  cursor: url('../media/pointer.png'), default !important;
   background-image: linear-gradient(#5182BC, #5182BC) !important;
   background-size: 0% 0.4vh;
   background-position-y: 100% !important;
   background-position-x: 0% !important;
   background-repeat: no-repeat !important;
   transition: background-size 0.2s ease-in-out !important;
}
nav li a:hover, nav li a:active, nav li a:focus {
  background-size: 100% 0.4vh ;
}


#backgroundNoise {
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: url(../backgrounds/noise.png) repeat 0 0;
}

.coldlogo {
  position: absolute;
  top: 0;
  left: 7.5vh;
  height: 15vh;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1001;
  cursor: url('../media/pointer.png'), default !important;
}
.coldlogo img {
  height: 25%;
  margin-top: 1vh;
}

.burger {
  position: fixed;
  cursor: url('../media/pointer.png'), default !important;
  z-index: 1002;
  top: 0;
  right: 7.5vh;
  height: 15vh;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-transition:all ease-in-out 1s;
  -moz-transition:all ease-in-out 1s;
  -ms-transition:all ease-in-out 1s;
  -o-transition:all ease-in-out 1s;
  transition:all ease-in-out 1s;
}
 .burger img {
   height: 25%;
   margin-top: 1vh;
 }


 .mobilemenu {
   height: 120vh;
   padding-top: 15vh;
   width: 30vw;
   top: 0;
   position: fixed;
   margin-left: 100vw;
   background-color: #111;
   z-index: 1001;
   -webkit-transition:all ease-in-out 0.5s;
   -moz-transition:all ease-in-out 0.5s;
   -ms-transition:all ease-in-out 0.5s;
   -o-transition:all ease-in-out 0.5s;
   transition:all ease-in-out 0.5s;
 }
 .mobilemenu a {
   text-decoration: none;
   cursor: url('../media/pointer.png'), default !important;
   -webkit-transition:all ease-in-out 1s;
   -moz-transition:all ease-in-out 1s;
   -ms-transition:all ease-in-out 1s;
   -o-transition:all ease-in-out 1s;
   transition:all ease-in-out 1s;
 }
 .mmopen {
   margin-left: 70vw;
 }
 .navmessage {
   height: 8vh;
   width: max-content;
   margin-left: 4vw;
   display: block;
   justify-content: center;
   align-items: center;
   line-height: 25px;
   text-align: left;
   -webkit-transition:all ease-in-out 0.2s;
   -moz-transition:all ease-in-out 0.2s;
   -ms-transition:all ease-in-out 0.2s;
   -o-transition:all ease-in-out 0.2s;
   transition:all ease-in-out 0.2s;
 }
 .navmessage a {
   font-family: 'Roboto Mono', monospace;
   font-weight: 600;
   text-transform: capitalize;
   font-size: 4rem;
   letter-spacing: -2.4px;
   color: #e5e5e5;
   cursor: url('../media/pointer.png'), default !important;
   width: 100%;
   text-decoration: none;
    background-image: linear-gradient(#5182BC, #5182BC);
    background-size: 0% 0.1em;
    background-position-y: 100%;
    background-position-x: 0%;
    background-repeat: no-repeat;
    transition: background-size 0.2s ease-in-out;
 }
 .navmessage a:hover, .navmessage a:active, .navmessage a:focus {
   background-size: 100% 0.1em;
 }
 #navbreak{
   height: 20vh;
 }
 .navsuboptions .navmessage a {
   color: #c5c5c5;
   line-height: 20px;
   font-size: 3.5rem;
   cursor: url('../media/pointer.png'), default !important;
 }

 #maintitle {
   width: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   color: #e5e5e5;
   opacity: 0.09;
   transform: skewY(-10deg) translate(0vh, 10vh) scale(1.2);
 }

 #maintitle img{
   width: 7.5%;
   margin-right: 2.5%;
 }

 #maintitle h3 {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 600;
  font-size: 15vw;
  line-height: 1.1;
  letter-spacing: -1vw;
  margin: 0 0 20pt 0;
  padding: 6vh 0 2vh 0;
  text-transform: uppercase;
 }

 #maintitle h1 {
  position: absolute;
  color: white;
  transform: translateY(360%);
  text-transform: lowercase;
  font-family: 'Roboto Mono';
  letter-spacing: -3px;
  font-size: 1.7vw;
 }

 .secBook{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
 }
 .secBookContainer{
  width: 40%;
  border: 1px solid rgba(200,200,200, 0.6);
  padding: 1vw;
  border-radius: 25px;
 }

 .secBookContainer #header {
  display: none;
 }
 /* .secBookContainer *{
  transform: scale(0.8)
 } */

 #bookBody{
  font-family: 'Roboto Mono', sans-serif;
    font-weight: 300;
    font-size: 1vw;
    padding-right: 40%;
    line-height: 110%;
    letter-spacing: -1.2px;
 }



/* CONTACT SECTION */

 #secContactus{
   width: 100vw;
 }
 .contactform {
   width: 45%;
   margin: 10vh;
   display: block;
   z-index: 2;
   position: relative;
   border: 1px dashed rgba(240,240,240,0.3);
   padding: 3vh;
   background-color: rgba(240,240,240,0.1);
   box-shadow: 10px 10px 10px #000;
   border-radius: 3pt;
 }

 #contleftc {
   display: flex;
   align-items: center;
   justify-content: center;
   padding: 0 50px;
 }

 #contrightc {
   padding: 0 50px !important;
 }

 .contactform * {
   -moz-transform: scale(0.95, 0.95);
   zoom: 0.95;
   zoom: 95%;
 }

 .contactGrid {
   display: grid;
   width: 100%;
   grid-template-columns: auto;
   grid-column-gap: 40pt;
   grid-row-gap: 40pt;
   align-items: center;
   margin-bottom: 30pt;
 }

 #commercialdiv {
   display: none;
 }

 .contactGrid div{
   width: 100%;
   display: flex;
   justify-content: center;
 }

 #quotenotes {
   width: 100%;
   height: 17.5vh;
 }

 #quotesubmit {
   display: flex;
   align-items: flex-end;
   justify-content: center;
   width: 100%;
   height: 20vh;
 }

 #quotesubmit input {
   color: #e5e5e5;
   font-family: 'Roboto Mono', sans-serif;
   font-weight: 400;
   font-size: 3.25rem;
   line-height: 100%;
   letter-spacing: -1px;
   width: 50%;
   backdrop-filter: blur(2px) !important;
   -webkit-backdrop-filter: blur(2px) !important;
   border: 2px solid #e5e5e5;
   padding: 25pt;
   outline: none;
   border-radius: 2pt;
 }
 #quotesubmit input:hover {
   background: rgba(240, 240, 240, 0.2);
   box-shadow: 0 0 10pt -1pt #000;
 }

 .contactform input, .contactform select, .contactform option, .contactform textarea {
   color: #e5e5e5;
   font-family: 'Roboto Mono', sans-serif;
   font-weight: 400;
   font-size: 3.25rem;
   line-height: 100%;
   letter-spacing: -1px;
   width: 100%;
   background: transparent;
   padding: 0 0 10pt 0;
   border: none;
   border-bottom: 2px solid #111;
   line-height: normal;
   outline: none;
   -webkit-transition: 0.2s ease all;
   -moz-transition: 0.2s ease all;
   transition: 0.2s ease all;
 }

 .contactform input::placeholder {
   line-height: normal;
   outline: none;
   color: #e5e5e5;
   font-family: 'Roboto Mono', sans-serif;
   font-weight: 400;
   font-size: 3.25rem;
   line-height: 100%;
   letter-spacing: -1px;
   width: 100%;
   background: transparent;
 }

 .contactform input:focus, .contactform select:hover, .contactform option:hover, .contactform input:hover  {
   /* box-shadow: 0 0 10pt -1pt #000; */
   -webkit-transform: translateY(-5pt);
   -moz-transform: translateY(-5pt);
   transform: translateY(-5pt);
   -webkit-transition: 0.2s ease all;
   -moz-transition: 0.2s ease all;
   transition: 0.2s ease all;
 }

 .contactform input:focus:valid {
   border-color: #44ff77;
 }

 .contactform input:focus:invalid {
   border-color: #ff8383;
 }

 .contactform textarea {
   padding-top: 10pt;
   height: 100%;
   width: 100%;
 }

 .contactform p, .contactform textarea::placeholder {
   color: #e5e5e5;
   font-family: 'Roboto Mono', sans-serif;
   font-weight: 400;
   font-size: 3.25rem;
   line-height: 100%;
   letter-spacing: -1px;
 }
 .contactWrap {
   display: flex;
   width: 100%;
   position: relative;
   padding: 8vh 10vh;
 }

 .contactWrap .layer {
   pointer-events: auto !important;
 }

 .contactDetails {
   width: 60%;
   display: flex;
   flex-direction: column;
   justify-content: space-evenly;
   align-items: center;
   padding-left: 5%;
 }
 
 .contactDetails span {
   color: rgba(229,229,229, 0.9);
   font-family: 'Roboto Mono', sans-serif;
   font-weight: 500;
   font-size: 4vw;
   line-height: 100%;
   letter-spacing: -1px;
   z-index: 2;
   position: relative;
 }
#contact-address {
   margin-bottom: 2vh;
 }
 .contactDetails a {
   z-index: 2;
   position: relative;
 }

 #contact-number{
 margin-bottom: -10%;
 }

 #contact-number, #contact-email {
   color: rgba(229,229,229, 0.95);
 }

 #contactSocials {
   display: flex;
   width: 100%;
   justify-content: start;
   align-items: center;
   margin-top: 5%;
 }
 #contactSocials div {
  border: 1px solid rgba(229,229,229, 0.9);
  border-radius: 50%;
  height: 5vh;
  width: 5vh;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 1vw;
  font-size: 2.5vh;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
  transition: 0.2s ease all;
  z-index: 2;
  position: relative;
 }
 #contactSocials div:hover {
  background: #e5e5e5;
  color: #fff;
 }
 #contactSocial1 {
  margin-left: unset !important;
 }


 .contactButton {
   display: flex;
   align-items: center;
   justify-content: center;
   width: fit-content;
   padding: 1.4vh;
   border-radius: 2pt;
   z-index: 3;
   margin-top: 3vh;
   border: 1px solid rgba(220,220,220,0.8);
   backdrop-filter: blur(2.5px);
   -webkit-backdrop-filter: blur(2.5px);
   background: rgba(220, 220, 220, 0.2);
   box-shadow: 0 0 10pt -1pt #000;
   -webkit-transition: 0.2s ease all;
   -moz-transition: 0.2s ease all;
   transition: 0.2s ease all;
 }
 .contactButton:hover {
   transform: translateY(-5pt);
   background: rgba(240, 240, 240, 0.4);
   backdrop-filter: blur(5px);
   -webkit-backdrop-filter: blur(5px);
   cursor: url('../media/pointer.png'), default !important;
 }
 .contactButton span{
   color: #e5e5e5;
   font-family: 'Roboto Mono', sans-serif;
   font-weight: 500;
   font-size: 1vw;
   line-height: 100%;
   letter-spacing: -0.5px;
 }



/* // glitch */

.hero {
  font-size: clamp(40px, 10vw, 100px);
  display: inline-block;
  z-index: 2;
  /* filter: drop-shadow(0 1px 3px); */
}

.layers {
  position: relative;
}

.layers::before,
.layers::after {
  content: attr(data-text);
  position: absolute;
  width: 110%;
  z-index: -1;
}

.layers::before {
  top: 49px;
  left: 10px;
  opacity: 0.6
}

.layers::after {
  top: 36px;
  left: 20px;
  opacity: 0.3;
}


.blockTextShow {
  color: rgba(229,229,229, 0.95) !important;
}

.scrollHeader {
  position: relative;
  height: calc(6 * 100vh);
}

.indicators {
  left: 2rem;
  top: 0;
  margin: 22.5vh 0;
  height: 60vh;
  width: 3px;
  display: none;
  flex-direction: column;
  justify-content: space-between;
  position: absolute;
  z-index: 1;
}

.indicator {
  width: 100%;
  background-color: rgba(229,229,229, 0.2);
  flex-grow: 1;
  margin: 2px 0;
}

.scrollHeader .point {
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 4rem;
}

.scrollHeader .wrapper {
  height: 100vh;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: rgba(14,14,14, 0.7);
}

.point article {
  flex-basis: 27.5%;
  margin-left: 7.5%;
}

.point h1, .point h3{
  color: rgba(223,223,223, 0.9);
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 600;
  line-height: 90%;
  letter-spacing: -0.1vw;
  font-size: 3.5vw;
  margin-bottom: 2vh;
}
.point p {
  color: rgba(223,223,223, 0.7);
  font-family: 'Roboto Mono', sans-serif;
  font-weight: 400;
  line-height: 125%;
  letter-spacing: -0.1px;
  font-size: 0.9vw;
  margin-bottom: 0.2vh !important;
}
.point p strong {
    font-weight: bold;
    color: rgba(223,223,223, 1);
}
.point img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.scroll-indicator-controller {
  position: fixed;
  top: 50vh;
  transform: translate(0, -50%);
  left: 2vw;
  z-index: 999;
  height: 60vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.scroll-indicator-controller.indi-mobile > div span {
  display: none;
}
@media (min-width: 1025px) {
  .scroll-indicator-controller {
    left: 20px;
  }
}
.scroll-indicator-controller > div {
  width: 10px;
  flex-grow: 1;
  position: relative;
  background: linear-gradient(90deg, rgba(229,229,229, 0.2)  50%, transparent 50% 100%);
  margin: 0 0 10px 0;
  cursor: url('../media/pointer.png'), default !important;
  transition: background 0.4s ease;
  will-change: transition;
}
.scroll-indicator-controller > div span {
  color: rgba(229,229,229, 0.8);
  position: absolute;
  left: calc(100% + 8px);
  white-space: nowrap;
  top: 50%;
  font-family: 'Roboto Mono', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 17px;
  width: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-50%) translateX(10px);
  transition: all 0.4s ease-in-out;
  will-change: transition;
}
@media (hover: none) {
  .scroll-indicator-controller > div span {
    display: none;
  }
}
.scroll-indicator-controller > div span:before {
  content: "";
  padding-left: 5px;
  letter-spacing: -2px;
  font-family: arial, sans-serif;
  vertical-align: text-top;
  line-height: 14px;
}
@media (hover: hover), (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .scroll-indicator-controller > div:hover span {
    width: auto;
    opacity: 1;
    overflow: visible;
    transform: translateY(-50%) translateX(0px);
  }
}
.scroll-indicator-controller > div.active {
  background: linear-gradient(90deg, rgba(229,229,229, 0.8)  50%, transparent 50% 100%);
  border-color: rgba(0, 0, 0, 0.25);
}
@supports (-ms-ime-align:auto) {
  .scroll-indicator-controller > div span {
    transition: opacity 0.4s ease;
  }
}





/* // footer */
footer {
	display: inline-flex;
	width: 100%;
	padding: 35pt 30pt 35pt 30pt;
	font-size: 11pt;
	color: rgba(229,229,229, 0.5);
  font-family: 'Roboto Mono', sans-serif;
  font-weight: 400;
  letter-spacing: -1px;
  z-index: 2;
  position: relative;
}

.footLeft {
	float: left;
  height: 100%;
  width: 45%;
  position: relative;
}
.footLeft div {
	position: absolute;
  bottom: 0;
  left: 0;
}
.footLeft a {
  color: rgba(229,229,229, 0.7) !important;
}

.footRight {
	float: right;
}

.footMiddle {
	 position: absolute;
	 display: flex;
	 justify-content: center;
	 align-items: center;
	 width: 100%;
	 margin-top: 1.6vh;
}

.footLink {
	color: rgba(229,229,229, 0.7);
	border-bottom: 2pt dotted;
	transition: all .2s ease;
	margin: 0 5pt 0 0;
}

.footRight a {
	transition: all .2s ease;
  text-decoration: none;
  background-image: linear-gradient(#e5e5e5, #e5e5e5);
  background-size: 0% 0.6vh;
  background-position-y: 90%;
  background-position-x: 0%;
  background-repeat: no-repeat;
  transition: all 0.2s ease-in-out;
}

.footLink:hover, .footRight a:hover {
  background-size: 100% 0.6vh ;
	color: #e5e5e5;
}
footer span, .tinytype {
	display: inline-block;
}
.footer {
	padding-top: 10%;
	margin: 0 auto;
}

.footer img {
	max-height: 100px;
	float: left;
	margin-top: 10px;
	margin-right: 5px;
}
.contactMethods {
  text-align: right;
  margin-right: 2%;
}
.contactMethods a {
  color: rgba(229,229,229, 0.7);
  font-family: 'Roboto Mono', sans-serif;
  font-weight: 500;
  font-size: 4vw;
  line-height: 100%;
  letter-spacing: -1px;
}


 @media (max-width: 550px) {
   /* .footRight {
     display: none;
   } */
   .footMiddle {
     display: none;
   }
 }

 @media (max-width: 400px) {
 	.footer img {
 		max-height: inherit;
 		float: left;
 		margin-top: 10px;
 		margin-right: 0;
 		width: 33%;
 	}
 }
