/* CSS Document */
/* ---------------------------------------------------------------------------------------------------------------------------------CONTAINERS */
.Top-Container {
  height: auto;
  display: table;
  width: 100%;
  margin: 0 auto;
  overflow: visible !important;
  background: none;
}
.Content-Container {
  width: 80%;
  max-width: 1600px;
  height: auto;
  display: table;
  margin: 0 auto;
  overflow: visible !important;
}
.Menu-Content-Container {
  width: 80%;
  max-width: 1600px;
  height: auto;
  display: table;
  margin: 0 auto;
}
.Content-Header-Container {
  width: 80%;
  max-width: 1000px;
  height: auto;
  padding: 8vh 5% 3vh 5%;
  display: table;
  margin: 0 auto;
}
.Container-Content-Embed {
  display: table;
  position: relative;
  width: 100%;
  max-width: 1600px;
  margin: 5% auto;
}
.Container-Content-Embed-Left {
  display: table;
  width: 25%;
  padding: 0 5%;
  float: left;
  text-align: right;
}
.Container-Content-Embed-Left-P {
  display: table;
  width: 25%;
  padding: 0 5%;
  text-align: right;
}
.Container-Content-Embed-Right {
  display: table;
  width: calc(55% - 2px);
  padding-left: 5%;
  padding-right: 5%;
  border-left: 2px dashed #355ab5;
  float: inline-end;
}
.Container-Content-Embed-Right a {
  color: #355ab5;
  text-decoration: underline;
}
.Container-Title-Embed {
  display: table;
  position: relative;
  width: 45%;
  max-width: 1000px;
  margin: 5% auto 0 auto;
}
.Container-First {
  margin: 5% auto 5% auto !important;
}
/* ---------------------------------------------------------------------------------------------------------------------------------CONTAINERS */
/* ---------------------------------------------------------------------------------------------------------------------------------BANNER */
.Banner {
  display: table;
  margin: 0;
  overflow: hidden;
  height: 100vh;
  width: 100%;
  float: left;
  position: relative;
  z-index: 0;
}
.Banner-Two {
  display: table;
  margin: 0 0 0 0;
  overflow: hidden;
  height: 60vh;
  width: 100%;
  position: relative;
  z-index: 0;
}
.Banner-Text {
  height: auto;
  position: absolute;
  width: 40%;
  margin-left: 0%;
  max-width: 1600px;
}
.Banner p {
  font-family: 'Typewriter', sans-serif;
  font-size: 1.5rem;
  line-height: 1.5rem;
  color: #FFF;
  text-decoration: none;
  text-shadow: 1px 4px 8px rgba(0, 0, 0, 0.2);
  margin-bottom: 2%;
}
.Banner h4 {
  font-size: 1.5rem;
  line-height: 1.5rem;
  color: #FFF;
  text-decoration: none;
  text-shadow: 1px 4px 8px rgba(0, 0, 0, 0.2);
  margin-bottom: -2%;
}
.Banner-Text-Content {
  height: auto;
  position: relative;
  width: 40%;
  max-width: 1600px;
  text-align: left;
}
.Banner-Text-Position-Top {
  top: 20vh;
}
.Banner-Text-Position-Middle {
  top: 30vh
}
.Banner-Text-Position-Bottom {
  bottom: 45vh
}
.Banner img, .Banner-Two img {
  position: absolute;
  right: 0;
  bottom: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  background-color: White; /* in case the video doesn't fit the whole page*/
  background-image: /* our video */ ;
  background-position: center center;
  background-size: contain;
  object-fit: cover; /*cover video background */
  z-index: -3;
}
.Banner-Video, .Banner-Two video {
  position: absolute;
  right: 0;
  bottom: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
  background-color: White; /* in case the video doesn't fit the whole page*/
  background-image: /* our video */ ;
  background-position: center center;
  background-size: contain;
  object-fit: cover; /*cover video background */
  z-index: -3;
}
.Banner-Button {
  width: auto;
  display: table;
  background: none;
  padding: 1% 2% 2% 2%;
  border-radius: 9px;
  border: 1px solid #FFF;
  color: #FFF;
  transition: 0.5s;
  font-family: 'Typewriter Bold', serif;
  font-size: 1.2rem;
  margin: 1% 5% 0 0;
  z-index: 1000;
  float: left;
}
.Banner-Button:hover {
  width: auto;
  display: table;
  background: #FFF;
  border: 1px solid #FFF;
  color: #333;
  cursor: pointer;
  transition: 0.5s;
}
.Banner-Two-Text {
  height: auto;
  display: block;
  position: absolute;
  bottom: 5vh;
  width: 80%;
  text-align: center;
  max-width: 1600px;
  margin: 0 auto;
  z-index: 1;
}
.Banner-Two-Text h2 {
  width: auto;
  color: #FFF;
  font-family: 'Typewriter Bold', serif;
}
/* ---------------------------------------------------------------------------------------------------------------------------------BANNERS */
/* ---------------------------------------------------------------------------------------------------------------------------------FEATURE */
.Feature {
  display: table;
  overflow: auto;
  height: auto;
  width: 100%;
  margin: 0% 0 0% 0;
  padding: 10% 0;
  float: left;
  position: relative;
  border-top: 2px dashed #355ab5;
}
.Feature-Text {
  display: table;
  width: 35%;
  margin: 0 auto 0 auto;
  padding: 0;
  color: #666;
}
.Feature-Image {
  display: table;
  width: 60%;
  height: 100%;
  margin: 0 auto;
  padding: 0;
}
.Feature-Image img {
  width: 100%;
  height: 55vh;
  max-height: 500px;
  background-size: 100% 100%;
  background-color: White; /* in case the video doesn't fit the whole page*/
  background-image: /* our video */ ;
  background-position: center center;
  background-size: contain;
  object-fit: cover; /*cover video background */
  border-radius: 9px;
}
.Feature-Video {
  width: 100%;
  height: 55vh;
  max-height: 500px;
  background-size: 100% 100%;
  background-color: White; /* in case the video doesn't fit the whole page*/
  background-image: /* our video */ ;
  background-position: center center;
  background-size: contain;
  object-fit: cover; /*cover video background */
  border-radius: 9px;
}
.Feature-Text p {
  position: relative !important;
  float: left !important;
  margin-bottom: 2%;
}
.Feature-Button {
  width: auto;
  position: relative;
  display: table;
  background: #090;
  padding: 2% 4%;
  border-radius: 9px;
  border: 1px solid #090;
  color: #FFF;
  transition: 0.5s;
  font-size: 1.2rem;
  font-family: 'Typewriter Bold', serif;
}
.Feature-Button:hover {
  width: auto;
  display: table;
  background: #FFF;
  border: 1px solid #090;
  color: #090;
  cursor: pointer;
  transition: 0.5s;
}
/* ---------------------------------------------------------------------------------------------------------------------------------FEATURE */
/* ---------------------------------------------------------------------------------------------------------------------------------IMAGE DIVIDER */
.imagedivider {
  display: table;
  width: 100%;
  height: auto;
  margin: 0 auto;
  z-index: -5;
}
.imagedivider img, .imagedividerinline img {
  width: auto;
  height: 30px;
  margin: 0 auto;
}
.imagedividerinline {
  display: table;
  width: 100%;
  height: auto;
  margin: 0 auto;
  z-index: -5;
  float: left;
}
/* ---------------------------------------------------------------------------------------------------------------------------------IMAGEDIVIDER */
/* ---------------------------------------------------------------------------------------------------------------------------------CONTENTIMAGES */
.Content-Image-Container {
  display: grid;
  grid-gap: 5%; /* To define the gap between rows/columns */
  gap: 5%;
  width: 100%;
  float: right;
  height: auto;
  margin: 0 auto 5% auto;
  background-color: none;
  overflow-x: hidden;
  overflow-y: hidden;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
  border-radius: 0px;
  position: relative;
}
.Content-Image-1 {
  grid-template-columns: repeat(auto-fit, minmax(208px, 1fr));
  height: auto;
  margin-top: 4%
}
.Content-Image-2 {
  grid-template-columns: repeat(auto-fit, minmax(108px, 1fr));
  height: auto;
  margin-top: 4%
}
.Content-Image-Child {
  width: 100%;
  float: left;
  position: relative;
  margin: 0;
  scroll-snap-align: center;
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
  transition: 1.8s;
}
.Content-Image-Child:hover {
  filter: none
}
.Content-Image-Child img {
  width: 100%;
  height: 100%;
  border-radius: 9px;
  object-fit: cover;
}
.Content-Image-Child video {
  width: 100%;
  height: 100%;
  border-radius: 9px;
  object-fit: cover;
}
/* ---------------------------------------------------------------------------------------------------------------------------------CONTENTIMAGES */
/* ---------------------------------------------------------------------------------------------------------------------------------QUICKLIST */
.Quick-List {
  display: table;
  height: auto;
  margin: 4% 0;
  float: right;
}
.Quick-List ul {
  list-style-type: none;
}
.Quick-List ul li {
  width: auto;
  background: #F0F0F0;
  border-radius: 9px;
  border: 1px dashed #CCCCCC;
  margin: 0 2% 2% 0;
  padding: 1% 2%;
  float: left;
  list-style-type: none;
}

.Quick-List-Right {
  display: table;
  height: auto;
  margin: 4% 0;
  float: right;
}
.Quick-List-Right ul {}
.Quick-List-Right ul li {
  width: auto;
  background: #F0F0F0;
  border-radius: 9px;
  border: 1px dashed #CCCCCC;
  margin: 0 0 2% 2%;
  padding: 1% 2%;
  float: right;
  list-style-type: none;
}

/* ---------------------------------------------------------------------------------------------------------------------------------QUICKLIST */
/* ---------------------------------------------------------------------------------------------------------------------------------GALLERY */
.Gallery-Container {
  display: table;
  width: 100%;
  height: auto;
}
.trans {
  transition: all .25s ease;
  -moz-transition: all .25s ease;
  -ms-transition: all .25s ease;
  -o-transition: all .25s ease;
  -webkit-transition: all .25s ease;
}
.Gallery-Top {
  display: flex;
  display: block;
  width: 100%;
  height: 400px;
  margin: auto;
}
.Gallery-Top ul {
  list-style: none;
  width: 100%;
  height: 100%;
  z-index: 1;
  box-sizing: border-box;
}
.Gallery-Top ul li {
  position: relative;
  float: left;
  width: 25%;
  height: 50%;
  overflow: hidden;
}
.image50 {
  width: 50% !important;
  height: 100% !important;
}
.image50r {
  width: 50% !important;
  height: 100% !important;
  float: right !important;
}
.image50t {
  width: 25% !important;
  height: 100% !important;
}
.image50tr {
  width: 25% !important;
  height: 100% !important;
  float: right !important;
}
.image75 {
  width: 75% !important;
  height: 100% !important;
  float:  !important;
}
.image75r {
  width: 75% !important;
  height: 100% !important;
  float: right !important;
}
.image100 {
  width: 50% !important;
  height: 50% !important;
}
.image100r {
  width: 50% !important;
  height: 50% !important;
  float: right !important;
}


.Gallery-Top ul li::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  color: white;
  opacity: 0.1;
  text-align: center;
  box-sizing: border-box;
  pointer-events: none;
}
.Gallery-Top ul li:hover::before {
  opacity: 0;
}
.Gallery-Top ul li img, .Gallery-Top ul li video, .Gallery-Text-Box {
  position: absolute;
  right: 0;
  bottom: 0;
  top: 0;
  left: 0;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  margin: 5px;
  background-size: 100% 100%;
  background-color: White; /* in case the video doesn't fit the whole page*/
  background-image: /* our video */ ;
  background-position: center center;
  background-size: contain;
  object-fit: cover; /*cover video background */
  border-radius: 9px;
  filter: grayscale(40%);
  -webkit-filter: grayscale(40%);
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  -webkit-transition: all 1s ease;
}
.Gallery-Top ul li img:hover, .Gallery-Top ul li video:hover {
  filter: grayscale(0%);
  -webkit-filter: grayscale(0%);
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  -webkit-transition: all 1s ease;
}
.lightbox {
  position: fixed;
  width: 100%;
  height: 100%;
  text-align: center;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.75);
  z-index: 999;
  opacity: 0;
  pointer-events: none;
}
.lightbox img, .lightbox video {
  position: absolute;
  right: 0;
  bottom: 0;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  max-width: 1920px;
  height: auto;
  max-height: 1200px;
  background-size: 100% 100%;
  background-color: White; /* in case the video doesn't fit the whole page*/
  background-image: /* our video */ ;
  background-position: center center;
  background-size: contain;
  object-fit: cover; /*cover video background */
  top: -100%;
  /* Transition */
}
.lightbox:target {
  outline: none;
  top: 0;
  opacity: 1;
  pointer-events: auto;
}
.lightbox:target img, .lightbox:target video {
  top: 0;
  top: 50%;
  transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
.Gallery-Nav {
  margin: 3% 0;
  display: table;
  width: 100%;
  height: auto;
}
.Gallery-Nav ul {
  list-style-type: none;
}
.Gallery-Nav ul li {
  width: auto;
  background: #F0F0F0;
  font-size: 1.5rem;
  color: #355ab5;
  float: right;
  border-radius: 9px;
  border: 1px solid #CCCCCC;
  margin: 0 0 2% 2%;
  padding: 4% 5%;
  list-style-type: none;
}
.Gallery-Nav ul li:hover {
  background: #355ab5;
  color: #FFF;
  border: 1px solid #CCCCCC;
}
.Gallery-Nav-Active {
  background: #355ab5 !important;
  color: #FFF !important;
  border: 1px solid #CCCCCC;
}
.phonetilt {
  z-index: 1000;
  position: fixed;
  bottom: 8vw;
  right: 8vw;
  width: 30px;
  height: 30px;
}
.Gallery-Text-Box{
	background: #355AB5;
}
.Gallery-Text-Box-Content{
	display: block;
	width: 90%;
	height: 90%;
	padding: 5%;
}
/* ---------------------------------------------------------------------------------------------------------------------------------GALLERY */

/* ---------------------------------------------------------------------------------------------------------------------------------EXTERNALNAV */

.External-Nav {
  margin: 3% 0;
  display: table;
  width: 100%;
  height: auto;
}
.External-Nav ul {
  list-style-type: none;
}
.External-Nav ul li {
  width: auto;
  background: #F0F0F0;
  font-size: 1.5rem;
  color: #355ab5;
  float: right;
  border-radius: 9px;
  border: 1px solid #CCCCCC;
  margin: 0 0 2% 2%;
  padding: 4% 5%;
  list-style-type: none;
}
.External-Nav ul li:hover {
  background: #355ab5;
  color: #FFF;
  border: 1px solid #CCCCCC;
}
.External-Nav-Active {
  background: #355ab5 !important;
  color: #FFF !important;
  border: 1px solid #CCCCCC;
}
/* ---------------------------------------------------------------------------------------------------------------------------------EXTERNALNAV */



/* ---------------------------------------------------------------------------------------------------------------------------------CALENDAR */
.gallery {
  width: 100%;
  background: none;
}
.gallery-cell {
  width: 100%;
  height: auto;
  min-height: 100px;
  margin-right: 5%;
  margin-bottom: 5%;
  background: #FFF;
  border: 0px solid #CCC;
  border-radius: 25px;
  counter-increment: gallery-cell;
}
/* cell number */
.gallery-cell:before {
  display: block;
  text-align: center;
  content: ;
  line-height: 200px;
  font-size: 80px;
  color: white;
}
.Calendar-Table {
  width: 80%;
  max-width: 90vw;
  margin: 0 auto;
  height: auto;
  background: ;
  border-collapse: collapse;
  font-size: 1.4rem;
  font-family: 'Myriad Pro Light', sans-serif;
  border: none;
}
.Calendar-Table td {
  padding: 3%;
  width: 14.5%;
  background: #FFF;
  color: #333;
  text-align: center;
}
.Calendar-Table th {
  color: #355ab5;
  font-family: 'Myriad Pro Bold', sans-serif;
  font-weight: 600;
  text-align: center;
}
.Calendar-Table td.booked {
  background: #CCC;
  color: #333;
}
.Calendar-Table td.partbooked {
  background: #CC3;
  color: #333;
}
.Calendar-Table td.unavailable {
  background: #E1E1FF;
  color: #333;
}
.Calendar-Table td.fridaystart {
  background: linear-gradient(to right bottom, #FFF 50%, #CCC 50%);
  color: linear-gradient(to right bottom, #FFF 50%, #CCC 50%);
  margin: 0;
  padding: 0;
  border: 0;
}
.Calendar-Table td.fridayend {
  background: linear-gradient(to right bottom, #CCC 50%, #FFF 50%);
  color: linear-gradient(to right bottom, #FFF 50%, #CCC 50%);
  margin: 0;
  padding: 0;
  border: 0;
}
.Calendar-Table td.partstart {
  background: linear-gradient(to right bottom, #FFF 50%, #CC3 50%);
  color: linear-gradient(to right bottom, #FFF 50%, #CC3 50%);
  margin: 0;
  padding: 0;
  border: 0;
}
.Calendar-Table td.partend {
  background: linear-gradient(to right bottom, #CC3 50%, #FFF 50%);
  color: linear-gradient(to right bottom, #FFF 50%, #CC3 50%);
  margin: 0;
  padding: 0;
  border: 0;
}
.Calendar-Table td.month {
  font-size: 1.6rem;
  padding: 10% 0;
  font-family: 'Myriad Pro Semi Bold', sans-serif;
  background: #FFF;
  color: #333;
  text-align: center;
}
.Legend {
  border: 1px solid #CCC;
}
/* ---------------------------------------------------------------------------------------------------------------------------------CALENDAR */
/* ---------------------------------------------------------------------------------------------------------------------------------FAQ */
.faq {
  margin-bottom: 5%;
}
.faq ul {
  margin: 0% 0 0 0;
  padding: 0 0 2% 0;
  border-bottom: #355AB5 0px dashed;
}
.faq ul li {
  margin-left: 20px !important;
  margin-bottom: 10px !important;
  margin-top: 1%;
}


.uldouble {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  column-gap: 10%;
}
.uldoublemobile {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  column-gap: 10%;
}
.ultriple {
  columns: 3;
  -webkit-columns: 3;
  -moz-columns: 3;
  column-gap: 10%;
}
.faq-drawer {
  margin: 2% 0;
  padding: 0 3%;
  border: 1px solid #EEE;
  border-radius: 9px;
  background: none;
  transition: .25s ease-in-out;
}
.question{
  width: 90%;
}

.faq-drawer:focus {
  background: #FFF;
  border: 1px solid #090;
}
.faq-drawer:hover {
  background: #FFF;
  border: 1px solid #090;
}
.faq-drawer__content-wrapper {
  max-height: 0px;
  overflow: hidden;
  transition: .25s ease-in-out;
  margin-top: 10px;
	
}
.faq-drawer__title {
  font-family: 'Typewriter', serif;
  font-size: 1.4rem;
  line-height: 1.8rem;
  color: #666;
  border-top: #CCC 0px solid;
  cursor: pointer;
  display: block;
  padding: 15px 0 0 0;
  position: relative;
  margin-bottom: 0;
  transition: all .25s ease-out;
}
.faq-drawer__title::after {
  border-style: solid;
  border-width: 2px 2px 0 0;
  content: " ";
  display: inline-block;
  float: right;
  height: 10px;
  left: 2px;
  position: relative;
  margin-right: 10px;
  bottom: 23px;
  transform: rotate(135deg);
  transition: .25s ease-in-out;
  width: 10px;
  color: #090;
	
}
/* OPTIONAL HOVER STATE */
.faq-drawer__title:hover {
  color: #355ab5;
}
.faq-drawer__trigger:checked + .faq-drawer__title + .faq-drawer__content-wrapper {
  max-height: 1000px;
}
.faq-drawer__trigger:checked + .faq-drawer__title::after {
  transform: rotate(-45deg);
  transition: .25s ease-in-out;
}
input[type="checkbox"] {
  display: none;
}
/* ---------------------------------------------------------------------------------------------------------------------------------FAQ */
/* ---------------------------------------------------------------------------------------------------------------------------------FORM */
.freecontactform {
  width: 90%;
  padding: 5%;
  margin: 0;
  border-radius: 25px;
  background: #FFF;
}
.freecontactform td {}
.freecontactform label {}
.freecontactform label {}
.required {
  font-weight: bold;
}
.required_star {
  font-weight: bold;
  color: #F00;
}
.not-required {
  font-weight: normal
}
.antispammessage {
  padding: 0px;
  font-weight: bold
}
.antispamquestion {
  font-weight: normal;
}
.formcontainer {
  width: 100%;
  padding: 0%;
  float: left;
  background: none;
}
.applicationcontainer {
  float: left;
}
.form-style-5 {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.form-style-5 fieldset {
  border: none;
}
.form-style-5 legend {}
.form-style-5 label {
  display: block;
  transition: all .15s ease-in-out 0s;
}
.dropdownmenu {
  border: none;
  color: #666;
  font-size: 1.2rem;
  line-height: 1.6rem;
  font-family: 'Typewriter', serif;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
.dropdownmenu option {
  border: none;
  color: #999;
}
.dropdownmenu option:focus {
  color: #355ab5;
}
.form-style-5 input[type="text"], .form-style-5 input[type="date"], .form-style-5 input[type="datetime"], .form-style-5 input[type="email"], .form-style-5 input[type="number"], .form-style-5 input[type="search"], .form-style-5 input[type="time"], .form-style-5 input[type="url"], .form-style-5 textarea, .form-style-5 select {
  background: ;
  border-bottom: 1px dashed #E0E0E0;
  border-top: none;
  border-right: none;
  border-left: none;
  font-size: 1.2rem;
  line-height: 1.6rem;
  margin: 3% 0 0 0;
  outline: 0;
  width: 100%;
  padding: 3%;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  color: #355ab5;
}
.form-style-5 textarea {
  margin-bottom: -4px;
}
.form-style-5 input[type="text"]:focus, .form-style-5 input[type="date"]:focus, .form-style-5 input[type="datetime"]:focus, .form-style-5 input[type="email"]:focus, .form-style-5 input[type="number"]:focus, .form-style-5 input[type="search"]:focus, .form-style-5 input[type="time"]:focus, .form-style-5 input[type="url"]:focus, .form-style-5 textarea:focus, .form-style-5 select:focus {
  background: #F5F5F5;
  color: #355ab5;
}
input::placeholder, textarea::placeholder, select::placeholder {
  color: #999;
}
.form-style-5 select {
  -webkit-appearance: menulist-button;
  height: auto;
  color: #999;
}
.form-style-5 .number {
  background: #1abc9c;
  color: #355ab5;
  height: 30px;
  width: 30px;
  display: inline-block;
  font-size: 0.8em;
  margin-right: 4px;
  line-height: 30px;
  text-align: center;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
  border-radius: 0px;
}
.form-style-5 input[type="submit"], .form-style-5 input[type="button"] {
  position: relative;
  display: block;
  color: #FFF;
  background: #090;
  font-size: 1.2rem;
  text-align: center;
  font-style: normal;
  width: auto;
  border: 1px solid #090;
  margin: 5% auto;
  padding: 3% 2%;
  border-radius: 10px;
  -webkit-appearance: none;
}
.form-style-5 input[type="submit"]:hover, .form-style-5 input[type="button"]:hover {
  background: #FFF;
  cursor: pointer;
  color: #090;
}
/* ---------------------------------------------------------------------------------------------------------------------------------FORM */
/* ---------------------------------------------------------------------------------------------------------------------------------FLICKITY */
.flickity-enabled {
  position: relative;
}
.flickity-enabled:focus {
  outline: none;
}
.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}
.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}
/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: #F5F5F5;
  border: 0px solid #355ab5;
  color: #333;
}
.flickity-button:hover {
  background: white;
  cursor: pointer;
}
.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}
.flickity-button:active {
  opacity: 0.6;
}
.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}
.flickity-button-icon {
  fill: #355ab5;
}
/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}
.flickity-prev-next-button.previous {
  left: -40px;
}
.flickity-prev-next-button.next {
  right: -40px;
}
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}
.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}
/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}
.flickity-rtl .flickity-page-dots {
  direction: rtl;
}
.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}
.flickity-page-dots .dot.is-selected {
  opacity: 1;
}
/* ---------------------------------------------------------------------------------------------------------------------------------FLICKITY */
/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------RESPONSIVE1 */
/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------RESPONSIVE1 */
@media all and (max-width : 1100px) {
  /* ---------------------------------------------------------------------------------------------------------------------------------CONTAINERS */
  .Top-Container {
    height: auto;
    display: table;
    width: 100%;
    overflow: hidden;
    background: none;
  }
  .Content-Container {
    width: 90%;
    height: auto;
    display: table;
    padding: 5%;
    margin: 0 auto;
  }
  .Menu-Content-Container {
    width: 100%;
    height: auto;
    display: table;
    margin: 0 auto;
  }
  .Content-Header-Container {
    width: 80%;
    max-width: 1000px;
    height: auto;
    padding: 8vh 5% 3vh 5%;
    display: table;
    margin: 0 auto;
  }
  .Container-Content-Embed {
    width: 100%;
  }
  .Container-Content-Embed-Left {
    width: 30%;
    padding: 0;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------CONTAINERS */
  /* ---------------------------------------------------------------------------------------------------------------------------------BANNER */
  .Banner {
    display: table;
    margin: 0;
    overflow: hidden;
    height: 100vh;
    width: 100%;
    float: left;
    position: relative;
  }
  .Banner-Text-Content {
    width: 70%;
    padding: 5%;
  }
  .Banner-Text-Position-Top {
    top: 15vh;
  }
  .Banner-Text-Position-Middle {
    top: 30vh
  }
  .Banner-Text-Position-Bottom {
    bottom: 50vh
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------BANNERS */
  /* ---------------------------------------------------------------------------------------------------------------------------------QUICKLIST */
  .Quick-List ul li {
    font-size: 1.4rem;
  }

  /* ---------------------------------------------------------------------------------------------------------------------------------QUICKLIST */
  /* ---------------------------------------------------------------------------------------------------------------------------------GALLERY */
  .Gallery-Top ul li {
    width: 50%;
    height: 50%;
  }
  .image50, .image50r {
    width: 100% !important;
    height: 80% !important;
  }
  .image50t {
    width: 50% !important;
    height: 100% !important;
  }
  .image50tr {
    width: 50% !important;
    height: 100% !important;
  }
  .image50tr {
    width: 50% !important;
    height: 100% !important;
    float: right !important;
  }
  .image75 {
    width: 100% !important;
    height: 100% !important;
    float: left !important;
  }
  .image75r {
    width: 100% !important;
    height: 100% !important;
    float: left !important;
  }
  .image100 {
    width: 100% !important;
    height: 50% !important;
  }
  .image100r {
    width: 100% !important;
    height: 50% !important;
    float: right !important;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------GALLERY */
  /* ---------------------------------------------------------------------------------------------------------------------------------FAQ */
  .uldouble {
    columns: 1;
    -webkit-columns: 1;
    -moz-columns: 1;
    column-gap: 0%;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------FAQ */
  /* ---------------------------------------------------------------------------------------------------------------------------------FLICKITY */
  .flickity-prev-next-button {
    width: 44px;
    height: 44px;
  }
  .flickity-prev-next-button.previous {
    left: -20px;
  }
  .flickity-prev-next-button.next {
    right: -20px;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------FLICKITY */
}
/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------RESPONSIVE2 */
/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------RESPONSIVE2 */
@media all and (max-width : 600px) {
  /* ---------------------------------------------------------------------------------------------------------------------------------CONTAINERS */
  .Content-Container {
    width: 100%;
    padding: 0;
    z-index: 1;
  }
  .Container-Content-Embed {
    width: 80%;
    margin: 0 auto 15% auto !important;
  }
  .Content-Container-100 {
    width: 80%;
    padding: 0 10%;
  }
  .Content-Container-Mobile-Wide {
    width: 90% !important;
  }
  .Container-Content-Embed-Left, .Container-Content-Embed-Left-P {
    display: block;
    width: 100%;
    padding: 0%;
    float: left;
    text-align: left;
  }
  .Container-Content-Embed-Right {
    display: block;
    width: 100%;
    border-left: 0px dashed #355ab5;
    padding-left: 0%;
    float: left;
    text-align: left;
  }
  .Container-Content-Extra {
    margin: none;
  }
  .Container-Title-Embed {
    width: 80%;
    padding: 2% 10%;
    margin-bottom: 0;
  }
  .Container-Content-Embed h2 {
    width: 100%;
    display: table;
    margin: 2% auto 5% auto;
    text-align: left;
  }
  .Container-Content-Embed h4 {
    width: 100%;
    display: table;
    margin: 0 auto -2% auto;
    text-align: left;
  }
  .Container-Content-Embed p {
    width: 100%;
    display: table;
    margin: 0 auto;
    text-align: left;
  }
  .Container-First {
    margin: -25% auto 0 auto !important;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------CONTAINERS */
  /* ---------------------------------------------------------------------------------------------------------------------------------BANNER */
  .Banner-Button {
    padding: 3% 4%;
    display: table;
    margin: 4% 5% 0 0;
  }
  .Banner-Text {
    height: auto;
    width: 80%;
    margin-left: 10%;
    max-width: 1600px;
  }
  .Banner-Two {
    width: 100%;
    height: 40vh;
    margin-bottom: 5%;
  }
  .Banner-Two-Text {
    width: 80%;
    margin: 0 10%;
    bottom: 2vh;
    text-align: left;
  }
  .Banner-Two-Text h2 {
    border-bottom: 2px dashed #FFF;
    padding-bottom: 4%;
  }
  .Banner-Text-Content {
    width: 40%;
    padding: 10%;
  }
  .Banner-Text-Position-Top {
    top: 5vh;
  }
  .Banner-Text-Position-Middle {
    top: 13vh;
  }
  .Banner-Text-Position-Bottom {
    bottom: 35vh;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------BANNER */
  /* ---------------------------------------------------------------------------------------------------------------------------------FEATURE */
  .Feature {
    display: table;
    overflow: hidden;
    height: 85vh;
    margin: 0px 5% 10% 5%;
    padding: 0;
    position: relative;
    background: #FFF;
    z-index: 0;
    width: calc(90% - 0px);
    border-radius: 25px;
    border: 0px solid #CCC;
  }
  .Feature-Image {
    display: table;
    width: 100%;
    height: 70vh;
    max-height: 100vh;
    margin: 0 auto;
    padding: 0;
    border-radius: 0px;
  }
  .Feature-Image img {
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    max-height: 100vh;
    background-size: 100% 100%;
    background-color: White; /* in case the video doesn't fit the whole page*/
    background-image: /* our video */ ;
    background-position: center center;
    background-size: contain;
    object-fit: cover; /*cover video background */
    z-index: -3;
    border-radius: 0px;
  }
  .Feature-Video {
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    max-height: 100vh;
    background-size: 100% 100%;
    background-color: White; /* in case the video doesn't fit the whole page*/
    background-image: /* our video */ ;
    background-position: center center;
    background-size: contain;
    object-fit: cover; /*cover video background */
    z-index: -3;
    border-radius: 0px;
  }
  .Feature-Text {
    position: absolute;
    display: table;
    width: 90%;
    margin: 5% 5% 0 5%;
    padding: 0;
    height: auto;
    border-top: 0px dashed #FFF;
    border-bottom: 0px solid #FFF;
  }
  .Text-Position-Top {
    right: 0;
    top: 2.5%;
  }
  .Text-Position-Bottom {
    right: 0;
    bottom: 2.5%;
  }
  .Feature-Text h3, .Feature-Text h4, .Feature-Text p {
    color: #FFF;
  }
  .Feature-Button {
    display: table;
    float: left;
    background: #090;
    border-radius: 5px;
    border: 1px solid #090;
    color: #FFF;
    z-index: 100;
    margin-top: 1%;
  }
  .Feature-Button:hover {}
  /* ---------------------------------------------------------------------------------------------------------------------------------FEATURE */
  /* ---------------------------------------------------------------------------------------------------------------------------------IMAGEDIVIDER */
  .imagedividerinline {
    display: table;
    width: auto;
    height: auto;
    margin: 0 3% 0 0;
    z-index: -5;
    float: left;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------IMAGEDIVIDER */
  /* ---------------------------------------------------------------------------------------------------------------------------------CONTENTIMAGES */
  .Content-Image-Child {
    filter: grayscale(50%);
    -webkit-filter: grayscale(50%);
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------CONTENTIMAGES */
  /* ---------------------------------------------------------------------------------------------------------------------------------QUICKLIST */
  .Quick-List, .Quick-List-Right {
    display: table;
    border-top: 2px dashed #355ab5;
    padding: 5% 0 5% 0;
    height: auto;
    margin: 4% 0 0 0;
    float: left;
  }
  .Quick-List ul li, .Quick-List-Right ul li {
    font-size: 1.1rem;
    float: left;
    margin: 0 2% 2% 0;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------QUICKLIST */
  /* ---------------------------------------------------------------------------------------------------------------------------------GALLERY */
  .Gallery-Nav ul {
    list-style-type: none;
  }
  .Gallery-Nav ul li {
    width: auto;
    background: none;
    font-size: 1rem;
    color: #355ab5;
    float: left;
    border-radius: 0px;
    border: 0px solid #CCCCCC;
    margin: 0 3% 0 0;
    padding: 0;
    list-style-type: none;
    text-decoration: underline;
  }
  .Gallery-Nav ul li:hover {
    background: none;
    color: #666;
    border: 0px solid #CCCCCC;
  }
  .Gallery-Nav-Active {
    font-size: 1.6rem !important;
    background: none !important;
    color: #999 !important;
    border: 0px solid #CCCCCC;
    margin: 0 3% 0 0;
    text-decoration: none !important;
  }
  .lightbox img, .lightbox video {
    right: 0;
    bottom: 0;
    top: 0;
    left: 0;
    margin: 0 auto;
    max-width: none;
    height: 100%;
    max-height: none;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------GALLERY */
/* ---------------------------------------------------------------------------------------------------------------------------------EXTERNALNAV */


.External-Nav ul li {
  font-size: 1.2rem;
  float: left;
  border: 1px dashed #CCCCCC;
  margin: 0 0 2% 2%;
  padding: 2% 3%;
	text-decoration: underline;
}

/* ---------------------------------------------------------------------------------------------------------------------------------EXTERNALNAV */
  /* ---------------------------------------------------------------------------------------------------------------------------------CALENDAR */
  .Calendar-Table {
    font-size: 1.1rem;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------CALENDAR */
  /* ---------------------------------------------------------------------------------------------------------------------------------FAQ */
  
  .faq-drawer__title {
    border-top: #CCC 0px dashed;
    padding: 3% 0 0 0;
    position: relative;
  }
  .faq-drawer__title::after {}
  .faq ul {
    margin: 1% 0 1% 1px;
    padding: 0 0 2% 0;
  }
  .faq ul li {}
  /* ---------------------------------------------------------------------------------------------------------------------------------FAQ */
  /* ---------------------------------------------------------------------------------------------------------------------------------FORM */
  .freecontactform {
    width: 100%;
    margin: 0;
  }
  /* ---------------------------------------------------------------------------------------------------------------------------------FORM */
}