@font-face {
  font-family: "Metropolis-Bold";
  src: url("../fonts/Metropolis-Bold.otf") format("opentype");
  font-display: swap;
}

@font-face {
  font-family: "Metropolis-Regular";
  src: url("../fonts/Metropolis-Regular.otf") format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Metropolis-Medium";
  src: url("../fonts/Metropolis-Medium.otf") format("opentype");
  font-display: swap;
}

@font-face {
  font-family: "Metropolis-Light";
  src: url("../fonts/Metropolis-Light.otf") format("opentype");
  font-display: swap;
}

@font-face {
  font-family: "Metropolis-ExtraLight";
  src: url("../fonts/Metropolis-ExtraLight.otf") format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Metropolis-SemiBold";
  src: url("../fonts/Metropolis-SemiBold.otf") format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Metropolis-ExtraLight";
  src: url("../fonts/Metropolis-ExtraLight.otf") format("opentype");
  font-display: swap;
}

@font-face {
  font-family: "Trajan-Bold";
  src: url("../fonts/Trajan\ Pro\ Bold.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family: "Trajan-Regular";
  src: url("../fonts/TrajanPro-Regular.ttf") format("truetype");
  font-display: swap;
}



main {
  width: 100%;
  height: 91vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.topgap {
  height: 100px;
}

.ts-logo {
  width: 13vw;
  display: block;
  margin: auto;
  margin-bottom: 1.5rem;
}

h1 {
  font-family: "Metropolis-Regular";
  color: #fff;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
}

h2 {
  font-family: "Trajan-Regular";
  font-size: 32px;
}
h2.txt-bold {
  font-family: "Trajan-Bold";
}

h2.color-brown {
  color: #a87c50;
}

p.tophd {
  background: linear-gradient(90deg, #efd1a7, #bf956b);
  -webkit-background-clip: text;
  color: transparent;
  font-family: "Metropolis-Regular";
  text-shadow: 0 0 10px black;
  font-size: 15px;
}

.registercta {
  font-family: "Trajan-Bold";
  font-size: 15px;
  color: #be946a;
  border: 2px solid #be946a;
  display: block;
  margin: auto;
  width: fit-content;
  padding: 7px 30px;
  margin-top: 1.7rem;
  border-radius: 30px;
  animation: addAnim 3s ease-in-out infinite; 
}
.registercta:hover {
  animation:none;
  background: #a87c50;
  color: #fff;

}
  @keyframes addAnim {
	0%, 100% {
		box-shadow: 0 0 0 #be946a;
    transform: scale(0.95);
	    }
	    50% {
		 box-shadow: 0px 2px 13px 0px #be946a, -1px 1px 18px 2px #494535;
     transform: scale(1);
	    }
    }
   

main > div {
  margin-top: -5%;
}

.log_img {
  width: 106px;
  height: 50px;
  object-fit: contain;
  object-position: center;
}

.pos_link {
  position: absolute;
  bottom: 7%;
}

.pos-top-hd {
  position: absolute;
  top: 7%;
  left: 0;
  right: 0;
}

p {
  font-family: "Metropolis-Light";
  font-size: 15px;
}

p.max-p1 {
  text-align: center;
  margin-bottom: 0;
}

.bg-custom {
  background: linear-gradient(to bottom, #f9efe2, #f9efe2c0, transparent 70%);
  position: relative;
}

.bg-custom > * {
  position: relative;
  z-index: 2;
}

.bg-custom::before {
  content: "";
  background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/56a299dc-5c4d-49c4-37a0-bd457f358000/1920);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 10vh;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 87%;
  pointer-events: none;
}

video#intro {
  height: 85vh;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

.max-mtp {
  max-width: 100%;
  margin: auto;
}

p.maxled {
  max-width: 50ch;
  margin: auto;
}

.bgleg {
  background: linear-gradient(
    to bottom,
    #fff 0%,
    #fbf6f0 3%,
    #bfc8d4 24%,
    transparent
  );
}

.cont-a {
  margin-bottom: -10%;
  padding-top: 6%;
}
.sec_a {
  position: relative;
}
.sec_a::before {
  content: "";
  background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/db3c24df-df00-4e16-1267-79986b1d6c00/1920);
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.img2 {
  height: 38vw;
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.img4 {
  max-width: 30vw;
  padding-top: 2rem;
}
.box-ct {
  height: 100%;
  display: flex;
  align-items: center;
}
.maxp-2 {
  max-width: 49ch;
  margin: auto;
  margin-bottom: 0;
}
.custom_a {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.custom_a1 {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pos-fp {
  position: absolute;
  top: 13%;
  left: 0;
  right: 0;
  text-align: center;
  color: #fff;
}
.plus_icon {
  width: 1em;
}
p.caption-note {
  font-size: 11px;
  position: absolute;
  top: 82%;
  right: 0;
  padding: 10px;
  margin: 0;
  font-family: "Metropolis-Medium";
  color: #414042;
}
.int_bg {
  background-color: #f9efe2;
}
.feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.6em 3em;
  list-style: none;
  padding: 0;
  /* margin: 0; */
  max-width: fit-content;
  margin: auto;
}

.feature-grid li {
  display: flex;
  align-items: start;
  gap: 8px;
  padding: 8px 0;
  font-family: "Metropolis-Regular";
}

.feature-grid img {
  width: 94px;
  height: 50px;
}
.num {
  font-family: "Metropolis-Regular";
      font-size: 13px;
}
.list_desc {
  max-width: 22ch;
  display: flex;
  align-content: flex-start;
  flex-direction: row;
  gap: 10px;
}
.desc {
  font-size: 13px;
  color: #555;
}
.int{
	background: linear-gradient(to top, #f9efe2 50%, transparent);
}
.fgwrap {
	margin-top: -9%;
}
.location-map {
	background-color: #000;
	position: relative;
}

.location-map .accordion-button:not(.collapsed) {
	background-color: #a87c50;
		color: #ffffff;
}

.location-map .accordion-button {
		background-color: #a87c50;
		color: #fff;
		    padding: 10px 15px;
    font-size: 16px;
    position: relative;
    display: block;
    text-align: left;
    z-index: 1;
    border: 0;
    font-family: "Metropolis-Regular";
    text-transform: uppercase;
	}
	.location-map .accordion-button::after {
		content: '';
		color: #9FC969;
		float: right;
		display: flex;
		position: absolute;
		right: 18px;
		top: 12px;
		align-items: center;
		justify-content: center;
		height: 1rem;
		width: 1rem;
		background-image: none;
		background-size: contain;
		background-repeat: no-repeat;
		  font-family: "Metropolis-Medium";
		background-color: transparent;
	}
	
	.accordion-button:not(.collapsed)::after {
		content: '';
		background-image: none; 
		transform: rotate(0deg); /* No need to rotate for image */
		background-size: contain;
		background-repeat: no-repeat;
		background-color: transparent;
	}
	
	/* .accordion-button::after {
		display: none;
	} */
	
	.location-map .cardbody {
		       background: unset;
    border-radius: 15px 0;
    border: 2px solid transparent;
    color: #fff;
    font-size: 12px;
    line-height: 2;
    margin-top: -2rem;
    padding-top: 10%;
    padding-bottom: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
	}
	
	.location-map .accordion-item {
    border: 0;
    margin-bottom: 15px;
    background: linear-gradient(to bottom, #fff, #f9efe2);
    border-radius: 20px;
		
	}
	.inline_info {
		font-family: "Metropolis-Medium";
		display: flex;
		align-items: center;
		color: #3c2415;
		gap: 15px;
	}
	.inline_info span {
    background: #a87c50;
    color: #fff;
    width: 65px;
    padding: 0px 4px;
    display: block;
    text-align: center;
    border-radius: 20px;
	}
ul.location_infos {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-top: 0.5rem;
}
ul.location_infos li:not(:last-child) {
    margin-bottom: 5px;
}

.location-map::before {
	content: "";
    position: absolute;
    top: 0;
    left: 58%;
    right: 0;
    bottom: 0;
    background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/4205e5ac-c321-41e3-4c60-696e1f870700/1200);
    background-size: cover;
	
}
.location-map > * {
	position: relative;
	z-index: 2;
}
	

	#myAccordion {
		width: 30vw;margin: auto;
	}
	.caption-tap {
		    margin: 0;
    text-align: center;
    text-transform: uppercase;
    font-size: 14px;
    text-decoration: underline;
    color: #a97c50;
	  font-family: "Metropolis-SemiBold";
	}
	.siteplan-legend {
		width: 14vw;
	}
	
	.line_img {
		position: absolute;
		top:0;
		left: -73%
	}
	.line_img img {
    height: 3em;
    width: 52em;
    object-fit: contain;
}
.explore-cta {
	background: #a87c50;
	color: #fff;
	font-family: "Metropolis-Bold";
	padding: 10px 45px;
	width: fit-content;
	display: block;
	margin: auto;
	border-radius: 30px;
	cursor: pointer;
}
.fp_cta_wrap {
	display: flex;
	flex-direction: row;
	gap: 0;
	border: 2px solid #a87c50;
	width: 32vw;
	margin: auto;
	     margin-top: -0.57vw;
}
.fp_cta {
    width: 100%;
    padding: 11px 10px;
    text-align: center;
	font-family: "Trajan-Regular";
	font-size: 15px;
	color: #a87c50;
	cursor: pointer;

}
.fp_cta.activated{
	background: #a87c50;
	color: #fff; 
}

.fpd {
     display: flex;
    flex-direction: row;
    justify-content: space-between;
    max-width: 32vw;
    margin: auto;
padding: 0.55rem 1rem;

}
.fpd:not(:last-child){
	border-bottom: 1px solid #a87c50;
}
/* .fpd:is(:last-child){
	background-color: #a87c50;
	color: #fff;
} */
/* .fpd:is(:last-child) p{
	font-size: 15px;
	color: #fff;
} */
.fpd p {
	margin: 0;
	font-size: 13px;
	font-family: "Metropolis-Medium";
	color: #a87c50;
}
p.txt_fp {
	font-size: 17px;
	font-family: "Metropolis-SemiBold";
	color: #000;
}
.sec_360 {
	    position: relative;
    background: linear-gradient(to bottom, #faf0e1, transparent);
}
.sec_360::before {
  content: "";
  background: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/bd381b39-a9d6-422b-9104-83bda411a900/1200);
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}
.fp_section {
	  background: linear-gradient(to top, #faf0e1ba, transparent);
}
    .register-form {
        background-image: url(https://imagedelivery.net/TdjZsXzzZt_je48pBzV3SA/a01e059d-4c98-4b27-9bf5-a925a5b3cc00/1920);
        background-size: cover;
        height: 100%;
        background-position: center;
        display: grid
        ;
            align-items: center;
            background-color: #000;
    }

	  .radiocont {
		position: relative;
		padding-left: 35px;
        padding-right: 10px;
        margin-bottom: 4px;
		cursor: pointer;
		font-size: 13px;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
        color: #fff;
        width: max-content;
        font-family: 'Montserrat-Medium';
	  }
	  
	  .radiocont a {
		  color: #fff;
		  text-decoration: underline;
	  }
	  /* Hide the browser's default radio button */
	  .radiocont input {
		position: absolute;
		opacity: 0;
		cursor: pointer;
	  }
	  
	  /* Create a custom radio button */
	  .checkmark {
        position: absolute;
        top: 0;
        left: 0;
        height: 22px;
        width: 22px;
        background-color: #a87c50;
        border-radius: 3px;
	  }
	  
	  /* On mouse-over, add a grey background color */
	  .radiocont:hover input ~ .checkmark {
		background-color: #b5b4b4;
	  }
	  
	  /* When the radio button is checked, add a blue background */
	  .radiocont input:checked ~ .checkmark {
		background-color: #CB9A2B;
	  }    
	  
	  /* Create the indicator (the dot/circle - hidden when not checked) */
	  .checkmark:after {
		content: "";
		position: absolute;
		display: none;
	  }
	  
	  /* Show the indicator (dot/circle) when checked */
	  .radiocont input:checked ~ .checkmark:after {
		display: block;
	  }
	  
	  /* Style the indicator (dot/circle) */
	  .radiocont .checkmark:after {
        top: 3.2px;
        left: 3.2px;
        width: 14px;
        height: 14px;
        border-radius: 0;
        background: white;
	  }

	  #frmLeadGen .form-control::placeholder {
		color: #fff;
		opacity: 1; /* Firefox */
	  }
	  
	  #frmLeadGen .form-control::-ms-input-placeholder { /* Edge 12 -18 */
		color: #fff;
	  }
    .dd-wrapper {
      display: flex;
      color: #fff;
       border: 2px solid #a87c50;
    border-radius: 10px;
    max-width: 34rem;
    background-color: transparent;
    padding: .5rem .6rem;
    }
    .dd-wrapper p {
      font-size: 15px;
      text-transform: none;
    }
    #frmLeadGen input[type="text"],#frmLeadGen input[type="email"],#frmLeadGen input[type="tel"] {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
    display: block;
    width: 100%;
    border: 2px solid #a87c50;
    border-radius: 10px;
    max-width: 34rem;
    background-color: transparent;
    padding: .5rem .6rem;
    font-size: 15px;
    color: #fff;
    text-align: left;
    font-family: "Metropolis-Regular";
}

#frmLeadGen input::placeholder {
    color: #fff;
    opacity: 1
}

#frmLeadGen input::-ms-input-placeholder {
    color: #fff
}

label.checkbox-label {
    font-size: 11px;
    font-family: "Metropolis-Medium";
    color: #fff
}

#checkbox {
    margin-right: 10px
}
.ths_ix {
  width: 50px;
  height: 46px;
  object-fit: contain;
}
.dline{
  display: block;
  height: 2px;
  width: 100%;
  background-color: #a87c50;

}
.reg-sbs2 {
   font-family: "Metropolis-SemiBold";
}
.dicl_p {
  font-size: 11px;
  text-align: justify;
  color: #fff;
}
.bg-br {
        background-color: #000;
        color: white;
		font-size: 20px;
		font-family: "Metropolis-SemiBold";
        cursor: pointer;
        color: #fff;
        width: 30px;
        height: 30px;
        border-radius: 50px;
      }
	  .hystmodal__window {
        width: 750px;
        overflow: hidden;
    }
	#siteplanpopup .hystmodal__window {  
		margin: 0 auto;
		padding: 10px;
		transform: unset;
		width: 590px;
	}
	#locationmappopup .hystmodal__window {  
		margin: 0 auto;
		padding: 10px;
		transform: unset;
		width: 490px;
	}

    .hystmodal--active {
        z-index: 99999 !important;
    }
	.zz-btn {
		top: 1rem;
		left: 1rem;
		flex-direction: column;
	}
  .collapse:not(.in) {
	display: block !important;
	}
	.collapse:not(.show) {
		display: none !important;
		}

@media (max-width: 768px) {
  .ts-logo {
    width: 43vw;
    margin-bottom: 1.5rem;
  }

  p.tophd {
    font-size: 14px;
  }

  .btmNav .logo a > img {
    height: 35px;
    width: 100%;
    padding: 0 10px;
  }

  main > div {
    margin-top: -20%;
  }

  h2 {
    font-size: 6.8vw;
  }

  p {
    font-size: 14px;
  }

  video#intro {
    height: auto;
  }

  p.max-p1 {
    max-width: 35.5ch;
    margin: auto;
  }

  .max-mtp {
    max-width: 100%;
    margin: auto;
  }

  .fac-img {
    height: 58ch;
    width: 100%;
    object-fit: cover;
    object-position: 93% 103%;
    transform: scale(1.2);
    overflow: hidden;
    z-index: 0;
    position: relative;
  }
  .cont-a {
    margin-bottom: -27%;
    padding-top: 18%;
  }
  p.maxled {
    max-width: 35ch;
    margin: auto;
    position: relative;
    z-index: 2;
  }
  .img1 {
    max-width: 70%;
    margin: auto;
  }
  .img2 {
    height: auto;
  }
  .img3 {
    height: 100%;
    object-fit: cover;
  }

  .img4 {
    max-width: 100%;
    padding-top: 0;
  }

  .box-fl {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 10px;
  }
  .feature-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 0.4em 0;
        max-width: 100%;
        padding: 0 1.5rem;
  }
  p.caption-note {
        font-size: 1.9vw;
        top: 88%;
        right: 0;
        padding: 10px;
        margin: 0;
        color: #ffffff;
        max-width: 40ch;
        text-shadow: 1px -1px 0 black, 1px -1px 3px black, 0px 0px 10px black;
        text-align: end;
		line-height: 1.2;

  }
  .desc {
    font-size: 2.9vw;
}
.feature-grid img {
         width: 32px;
        height: 32px;
}
.list_desc {
            max-width: 100%;
}
.feature-grid li {
	gap: 18px;
}
#myAccordion {
          width: 92%;
        padding-top: 2rem;
		padding-bottom: 2.5rem;
}
.location-map::before {
	left: 0;
	background-position: center;
}
.location-map .accordion-button {
	font-size: 15px;
}
.bg-custom {
    background: linear-gradient(to bottom, #f9efe2, #f9efe2c0, #f9efe2c0 70%);
}
.bgleg {
    background: linear-gradient(to bottom, #faf3e9 0%, #fbf6f0 3%, #bfc8d4 24%, transparent);
}
.siteplan-legend {
    width: 100%;
}
.fpd {
	max-width: 88%;
}
.fp_cta_wrap {
	    width: 83%;

}
 .register-form {
        background-image: none;
       
        height: 100%;
            background-color: #000;
    }
    .moveup {
      margin-top: -20%;
    }
    .reg-sbs2 {
      font-size: 13px;
    }
.dicl_p {
  font-size: 9px;
}
}
