/*
	To Use - element: var(--main);
*/
@import url(jquery-1.11.3-ui.css);
@import url(swipe.css);
@import url("https://use.typekit.net/gaf0xce.css");

:root {
  --success: rgb(53, 124, 57);
  --alert: rgb(244, 203, 79);
  --warning: rgb(244, 134, 79);
  --danger: rgb(140, 38, 38);
  --main: #ff914d;
  --dark: #1F1F1F;
  --medium: #424242;
  --light: #F7F7F7;
  --font: "roc-grotesk", sans-serif;
  --font-comp: "roc-grotesk-compressed", sans-serif;
  --font-wide: "roc-grotesk-wide", sans-serif;
  --animate: all 0.35s ease-in-out;
  --shadow: 0 0 1.6rem hsla(0 0% 0% / 0.16);
}

/*
	Table Of Contents
	0. 		Reset
	1		Generic Tags
	2.		Fonts
	2.1 	REM Responsive
	2.2		REM Sizing
	3		Structure
	3.1		Content
	3.1.1	Editable Content
	3.1.2	Buttons
	3.2		Header
	3.2.1	Mobile Header
	3.3		Footer
	3.3.1	Signature
	3.4		Structure Responsive
	3.5		Modules
	4. 		External Styles
*/
/* 0. Reset
**********/
/* `XHTML, HTML4, HTML5 Reset
----------------------------------------------------------------------------------------------------*/
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
dialog,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
font,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
hr,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
meter,
nav,
object,
ol,
output,
p,
pre,
progress,
q,
rp,
rt,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video,
xmp {
  border: 0;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

html,
body {
  height: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  /*
  Override the default (display: inline) for
  browsers that do not recognize HTML5 tags.

  IE8 (and lower) requires a shiv:
  http://ejohn.org/blog/html5-shiv
*/
  display: block;
}

b,
strong {
  /*
  Makes browsers agree.
  IE + Opera = font-weight: bold.
  Gecko + WebKit = font-weight: bolder.
*/
  font-weight: bold;
}

img {
  color: transparent;
  font-size: 0;
  vertical-align: middle;
  /*
  For IE.
  http://css-tricks.com/ie-fix-bicubic-scaling-for-images
*/
  -ms-interpolation-mode: bicubic;
}

li {
  /*
  For IE6 + IE7.
*/
  display: list-item;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td,
caption {
  font-weight: normal;
  vertical-align: top;
  text-align: left;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

sub,
sup,
small {
  font-size: 75%;
}

sub,
sup {
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

svg {
  /*
  For IE9.
*/
  overflow: hidden;
}

/* 1. Generic Tags
**************/
html {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

*,
*:before,
*:after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

::-moz-selection {
  background: hsla(0 0% 0% / 0.8);
  color: white;
}

::selection {
  background: hsla(0 0% 0% / 0.8);
  color: white;
}

/* Try To Remove Background - Footer Fix */
body {
  color: var(--medium);
  background: var(--dark);
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 400;
  overflow-x: hidden;
  padding: 0;
  margin: 0;
  text-shadow: none;
  -webkit-text-size-adjust: none;
}

hr {
  clear: both;
  border-top: 5px solid hsla(0 0% 0% / 0.1);
  height: 1px;
  margin: 2.4rem 0;
}

a {
  color: var(--dark);
}

a:hover {
  text-decoration: none;
}

.clear {
  clear: both;
}

.swipebox_full {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: left;
  align-items: center;
  align-content: center;
}

.swipebox_full a {
  width: calc(25% - 5px);
  margin: 5px 2.5px 0px;
  height: auto;
}

.swipebox_full a img {
  width: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.swipebox_full a img:hover {
  opacity: 0.5;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

@media screen and (max-width: 760px) {
  .swipebox_full a {
    width: calc(50% - 5px);
    margin: 5px 2.5px 0px;
  }
}

@media screen and (max-width: 400px) {
  .swipebox_full a {
    width: 100%;
    margin: 5px 0px 0px;
  }
}

.menu_section_nav {
  background-color: var(--main);
  cursor: pointer;
}

.menu_section_nav span {
  display: block;
  padding: 10px;
}

.menu_section_nav span a {
  color: hsl(0 0% 100%);
}

.summary-content {
  background-color: hsl(0, 0%, 94%);
  padding: 10px;
}

.banner-scroll-down a {
  animation: bounce 4s infinite;
}

@keyframes bounce {
  10%,
  20%,
  30%,
  40%,
  50% {
    transform: translateY(0);
  }
  15% {
    transform: translateY(-30px);
  }
  25% {
    transform: translateY(-15px);
  }
  35% {
    transform: translateY(-5px);
  }
  45% {
    transform: translateY(-2px);
  }
}

a[href^="x-apple-data-detectors:"] {
  color: inherit;
  text-decoration: inherit;
}

/* SNAZZY STYLES */
#map {
  padding: 15% 0;
  min-height: 300px;
}

.map-container {
  position: relative;
}

.map-container .servicing {
  position: absolute;
  top: 10px;
  left: 10px;
  background-color: var(--main);
  padding: 15px 20px;
}

.servicing h3,
.servicing p {
  margin: 0;
  color: var(--medium);
}

.servicing a {
  transition: 0.3s ease;
}

.servicing a:hover {
  color: var(--medium);
  transition: 0.3s ease;
}

@media (max-width: 960px) {
  .map-container .servicing {
    position: initial;
    display: block;
    background-color: var(--main);
    padding: 20px;
  }
}

/* Open Modal Button */
summary.btn {
  cursor: pointer;
  display: inline-block;
  background-color: var(--main);
  padding: 5px 20px;
  border-radius: 10px;
  margin: 10px 0;
}

.details-with-modal summary::-webkit-details-marker {
  display: none;
}

/* Modal modal + Background */
details-dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99999;
  max-height: 80vh;
  overflow: scroll;
  max-width: 90vw;
  width: 448px;
  background-color: hsl(0 0% 100%);
}

.details-with-modal[open] > summary:before {
  content: " ";
  background: hsla(0 0% 0% / 0.3);
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 1;
}

/* Inner Modal Layout */
.modal-header {
  padding: 20px;
  background-color: var(--main);
  border-bottom: 1px solid hsl(0, 0%, 94%);
}

.modal-body {
  padding: 20px;
}

.modal-footer {
  border-top: 1px solid hsl(0, 0%, 94%);
  padding: 20px;
  text-align: center;
}

.modal-footer button {
  width: 95%;
  display: inline-block;
  background-color: var(--main);
  font-size: 1rem;
  padding: 10px;
  cursor: pointer;
  transition: 0.3s ease;
}

.modal-footer button:hover {
  background-color: var(--medium);
  color: var(--medium);
  transition: 0.3s ease;
}

/* 2. Fonts
*************/
/* --- 2.1 REM Responsive --- */
html {
  font-size: 62.5%; /* --- This is setting 1rem to be = to 10px --- */
}

body,
p,
ol li,
ul li,
pre,
.banner_content .banner_details .description,
.banner_content .banner_details a,
.form_holder input,
.form_holder textarea,
.form_holder select {
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: 400;
  font-family: var(--font);
}

/* @media (max-width: 1200px) {
  html {
    font-size: 45px;
  }
}

@media (max-width: 960px) {
  html {
    font-size: 16px;
  }
  body,
  p,
  ol li,
  ul li,
  pre,
  .banner_content .banner_details .description,
  .banner_content .banner_details a {
    font-size: 17px;
    line-height: 28px;
    font-weight: 400;
  }
  h5,
  .h5,
  h6,
  .h6 {
    font-size: 0.65rem;
    line-height: 0.65rem;
  }
}

@media (max-width: 768px) {
  html {
    font-size: 16px;
  }
  body,
  p,
  ol li,
  ul li,
  pre,
  .banner_content .banner_details .description,
  .banner_content .banner_details a {
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
  }
}

@media (max-width: 480px) {
  html {
    font-size: 16px;
  }
  body,
  p,
  ol li,
  ul li,
  pre,
  .form_holder select,
  .form_holder input,
  .form_holder textarea,
  .form_holder select,
  .banner_content .banner_details .description,
  .banner_content .banner_details a {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
  }
}*/

/* --- 2.2 REM Sizing --- */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  text-transform: uppercase;
  line-height: .9;
  margin: 0 0 1.6rem;
  color: var(--dark);
}
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4 {
  font-family: var(--font-comp);
  font-weight: 300;
}
h1 strong,
.h1 strong,
h2 strong,
.h2 strong,
h3 strong,
.h3 strong,
h4 strong,
.h4 strong,
h1 b,
.h1 b,
h2 b,
.h2 b,
h3 b,
.h3 b,
h4 b,
.h4 b{
  font-weight: 600;
  color: var(--main);
}
.colour h1 strong,
.colour .h1 strong,
.colour h2 strong,
.colour .h2 strong,
.colour h3 strong,
.colour .h3 strong,
.colour h4 strong,
.colour .h4 strong,
.colour h1 b,
.colour .h1 b,
.colour h2 b,
.colour .h2 b,
.colour h3 b,
.colour .h3 b,
.colour h4 b,
.colour .h4 b{
  color: var(--dark);
}
h5,
.h5,
h6,
.h6 {
  font-weight: 400;
  font-family: var(--font-wide);
  color: var(--main);
}
h1,
.h1 {
  font-size: clamp(4rem, 6vw, 8rem);
  margin-bottom: 2.4rem;
}
h2,
.h2 {
  font-size: clamp(3.6rem, 5.5vw, 7.2rem);
  margin-bottom: 2.4rem;
}
h3,
.h3 {
  font-size: clamp(3.2rem, 5vw, 6.4rem);
  margin-bottom: 2.4rem;
}
h4,
.h4 {
  font-size: clamp(2.8rem, 4vw, 5.6rem);
  margin-bottom: 2.4rem;

}
h5,
.h5 {
  font-size: clamp(2rem, 2vw, 2.4rem);
}
h6,
.h6 {
  font-size: clamp(1.8rem, 1.5vw, 2rem);
}
p {
  margin: 0 0 1.6rem;
}

/* --- 3.2 Header --- */
.full_header {
  display: none;
  background: var(--light);
  width: 100%;
  z-index: 999;
  top: 0px;
  position: sticky;
  position: -webkit-sticky;
  padding: 0 30px;
  box-shadow: var(--shadow);
}

/* MAIN NAVIGATION STYLES */
.jqueryslidemenu {
  width: 100%;
  max-width: 1200px;
  padding: 0;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.jqueryslidemenu a.logo {
  width: 240px;
  display: block;
  margin: 0;
  padding: 0;
}

.jqueryslidemenu a.logo img {
  width: 100%;
  height: auto;
}

.jqueryslidemenu nav{
  width: calc(100% - 400px);
}
.jqueryslidemenu ul {
  list-style: none;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.jqueryslidemenu ul li {
  position: relative;
  margin: 0;
}

.jqueryslidemenu ul li.mobile-item {
  display: none;
}

.jqueryslidemenu ul li a {
  width: 100%;
  padding: 36px 10px;
  display: block;
  color: var(--dark);
  font-family: var(--font);
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 400;
  text-decoration: none;
  position: relative;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.jqueryslidemenu ul li a:hover,
.jqueryslidemenu ul li:hover a,
.jqueryslidemenu ul li.Selected a,
.jqueryslidemenu ul li.Selected a:hover {
  color: var(--dark);
}

.jqueryslidemenu ul li a::after {
  content: "";
  background: var(--main);
  width: 0;
  height: 3px;
  position: absolute;
  left: 50%;
  bottom: 28px;
  transform: translate(-50%, 0);
  transition: var(--animate);
}

.jqueryslidemenu ul li a:hover::after,
.jqueryslidemenu ul li:hover a::after,
.jqueryslidemenu ul li.Selected a::after,
.jqueryslidemenu ul li.Selected a:hover::after {
  width: 100%;
}

/* FIRST DROP-DOWN LAYER */
.jqueryslidemenu ul li ul {
  /* REMOVE STLYES FROM TOP LEVEL */
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  /* REMOVE STLYES FROM TOP LEVEL */
  position: absolute;
  left: 0;
  display: block;
  visibility: hidden;
  width: auto;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: none;
  width: 265px;
  /* WIDTH OF SUB MENU */
  background: var(--main);
  box-shadow: var(--shadow);
}

.jqueryslidemenu ul li ul li {
  /* REMOVE STLYES FROM TOP LEVEL */
  display: list-item;
  float: none;
  border: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  /* REMOVE STLYES FROM TOP LEVEL */
  margin: 0;
  padding: 0;
}

.jqueryslidemenu ul li ul li a {
  color: white;
  line-height: 1.1;
  padding: 15px;
  margin: 0;
  background: none;
}

.jqueryslidemenu ul li ul li a::after {
  display: none;
}

.jqueryslidemenu ul li:hover ul li a {
  color: white;
  line-height: 1.1;
  padding: 15px;
  margin: 0;
  background: none;
}

.jqueryslidemenu ul li.Selected ul li a:hover,
.jqueryslidemenu ul li ul li a:hover {
  color: white;
  text-decoration: none;
  background: hsla(0 0% 0% / 0.15);
}

/* SUB DROP-DOWN LAYERS AFTER 1ST */
.jqueryslidemenu ul li ul li ul {
  top: 0;
  margin: -1px 0px 0px 2px;
}

/* Navigation */
#menu .mm-list a {
  color: #fff;
  padding: 18px 20px 13px;
  text-decoration: none;
  display: block;
  font-family: var(--font-comp);
  font-weight: 400;
  letter-spacing: .1em;
  font-size: 2.4rem;
}

/* 3. Structure
***********/
/* --- 3.1 Content --- */
.content {
  margin: 0 auto;
  max-width: 1200px;
  padding: 0;
}

.content_container {
  width: 100%;
  padding: 50px 30px;
  background: hsl(0 0% 100%);
}

/* --- 3.1.1 Editable Content --- */

.editable_content *:last-child {
  margin: 0;
}
.editable_content img {
  max-width: 100%;
  max-height: 100%;
  height: auto !important;
}

.editable_content ul {
  list-style: disc outside none;
  margin: 0px 0 20px 20px;
  font-weight: 400;
}

.editable_content ul li {
  padding: 5px 0 0 3px;
  margin: 0;
}

.editable_content ol {
  list-style: decimal outside none;
  margin: 0px 0 20px 20px;
  font-weight: 400;
}

.editable_content ol li {
  padding: 5px 0 0 3px;
  margin: 0;
}

.editable_content img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

.editable_content table {
  margin: 15px 0 5px 0;
  background: hsl(0 0% 100%);
  text-align: center;
  width: 100%;
  display: block;
  overflow: scroll;
}

.editable_content table tr th,
.editable_content table thead tr td {
  font-weight: bold;
  color: hsl(0 0% 100%);
  background: var(--main);
  padding: 8px 8px 8px 8px;
  border: 2px solid var(--main);
  border-right: 3px solid var(--light);
  border-bottom: 3px solid var(--light);
  font-family: var(--font-comp);
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: .1em;
  font-size: 2.8rem;
}

.editable_content table tr td {
  border: 3px solid var(--light);
  background: white;
  padding: 8px 8px 8px 8px;
  font-size: 15px;
}

.editable_content iframe[width="500"] {
  width: 100% !important;
  height: 220px;
}

@media (max-width: 960px) {
  .editable_content figure {
    float: none !important;
    margin: 0 0 1em 0 !important;
  }
  .editable_content figure img {
    display: block;
    margin: 0 auto;
  }
}

/* --- 3.2 Header --- */

.header_spacer {
  width: 100%;
  height: 47px;
}

.inner_header {
  width: 100%;
  height: 60px;
  background: url(/assets/images/layout/inner_header.jpg) center center
    no-repeat;
  background-size: cover;
}

.language {
  position: relative;
  display: flex;
  width: 100%;
  justify-content: flex-end;
}

.language span {
  cursor: pointer;
  color: hsl(0 0% 100%);
}

/* --- 3.2.1 Mobile Header --- */
.mobile_header {
  background: hsl(0 0% 100%);
  color: hsl(0 0% 100%);
  font-weight: 700;
  padding: 7px 0 8px 0;
  text-align: left;
  width: 100%;
  z-index: 999;
  font-size: 25px;
}

.mobile_header .logo_area {
  padding: 0px 50px 0 50px;
  text-align: center;
}

.mobile_header .phone {
  position: absolute;
  right: 10px;
  top: 7px;
}

.mobile_header .cart_link {
  right: 32px;
  position: absolute;
  top: 6px;
}

.mobile_header a {
  color: hsl(0 0% 20%);
  position: absolute;
  text-decoration: none;
}

.mobile_header a#menu_button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 15px;
}

.logo_area a {
  display: inline-block;
  position: inherit;
}

.mobile_header .logo_area img {
  height: auto;
  width: 200px;
}

.mobile_header {
  display: inherit;
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 999;
  border-top: 3px solid var(--main);
  background: var(--light);
  box-shadow: var(--shadow);
}

.mobile_photo_video {
  display: inherit;
}

.full_photo_video {
  display: none;
}

/* --- 3.3 Footer --- */
.footer {
  background: var(--dark);
  color: hsl(0 0% 100%);
  border-top: 1px solid hsl(0 0% 20%);
  margin: 0;
  padding: 30px 0 30px 0;
  display: none;
}

.footer_pages_inner {
  text-align: center;
  margin-top: 18px;
}

.footer_pages_inner:empty {
  display: none;
}

.footer_pages a {
  color: hsl(0 0% 100%);
  padding: 0px 5px;
}

.footer_pages a:hover {
  color: var(--main);
}

/* --- 3.3.1 Signature --- */
footer {
  background: var(--dark);
  padding: 20px;
}
footer .content {
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
footer .content h6 {
  color: hsla(0 0% 100% / 0.7);
  font-size: 1.8rem;
  line-height: 1;
  margin: 0 0 10px;
  font-weight: 700;
}
footer .content > a.logo {
  width: 200px;
  height: auto;
}
footer .content ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer .content ul li {
  color: hsla(0 0% 100% / 0.7);
  font-size: 1.4rem;
  line-height: 1.2;
  margin: 0 0 5px;
  padding: 0;
}
footer .content ul li a {
  color: hsla(0 0% 100% / 0.7);
}
footer .content ul li a:hover {
  color: hsl(0 0% 100%);
}
footer .content > div.footer-social ul {
  flex-wrap: wrap;
  justify-content: flex-start;
}
footer .content > div.footer-social ul li {
  margin: 0 10px 0 0;
}
footer .content > div.footer-social ul li a {
  width: 30px;
  height: 30px;
  color: var(--dark);
  background: hsla(0 0% 100% / 0.7);
}
footer .content > div.footer-social ul li a:hover {
  background: hsl(0 0% 100%);
}
footer .content > div.footer-social ul li a i {
  font-size: 1.8rem;
  line-height: 1;
}
footer .content > div.sitemap ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  column-gap: 64px;
  row-gap: 8px;
}
@media screen and (max-width: 500px) {
  footer .content > div.sitemap ul {
    grid-template-columns: 1fr;
  }
}
footer .content > div.sitemap ul li {
  margin: 0;
}
footer .content > div.sitemap ul li ul {
  display: none;
}
footer .content > div.sitemap ul li a {
  text-decoration: none;
}
footer .content p.signature {
  width: 100%;
  display: block;
  font-size: 1.2rem;
  line-height: 1;
  color: hsla(0 0% 100% / 0.7);
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: 2px solid hsla(0 0% 100% / 0.1);
  text-align: center;
}
footer .content p.signature a {
  color: hsla(0 0% 100% / 0.7);
}
footer .content p.signature a:hover {
  color: hsla(0 0% 100% / 1);
}
@media screen and (max-width: 960px) {
  footer .content {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  footer .content > a.logo {
    width: 100%;
    max-width: 225px;
    margin: 0 auto 20px;
  }
  footer .content > div,
  footer .content > div.footer-sitemap,
  footer .content > div.footer-contact,
  footer .content > div.footer-social {
    width: 100%;
  }
  footer .content > div {
    margin: 0 0 20px;
    text-align: center;
  }
  footer .content > div.footer-social {
    margin: 0;
  }
  footer .content > div.footer-social ul {
    justify-content: center;
  }
  footer .content > div.sitemap ul li {
    width: 100%;
  }
  footer .content > div.footer-social ul {
    width: 100%;
    justify-content: center;
  }
  footer .content > div.footer-social ul li {
    float: none;
    margin: 0 5px;
  }
}
#signature {
  background: var(--dark);
  margin: 0;
  padding: 20px;
}

#signature .signature_content {
  margin: 0 auto;
  max-width: 960px;
  text-align: center;
}

#signature .signature_content p,
#signature .signature_content a {
  font-size: 12px;
  text-decoration: none;
  color: hsla(0 0% 100% / 0.7);
  font-weight: 400;
  margin-bottom: 0;
}

.full_register {
  width: 35%;
  float: right;
  border-left: 1px solid hsl(0 0% 87%);
  display: none;
  padding-left: 10px;
}

/* --- 3.4 Structure Responsive --- */
@media (min-width: 960px) {
  .footer {
    display: inherit;
  }
  #signature {
    font-size: 12px;
  }
  .mobile_header {
    display: none;
  }
  .full_header {
    display: inherit;
  }
  .header_spacer {
    height: 82px;
  }
  .inner_header {
    height: 150px;
  }
  .mobile_photo_video {
    display: none;
  }
  .full_photo_video {
    display: inherit;
  }
  .content_container {
    padding: 100px 30px;
  }
}

/* ---- 3.5 FAQ ------- */
.faq-block {
  margin: 20px 0;
}

/* FAQ Content */
h5.toggle_faq {
  color: hsl(0 0% 20%);
  text-transform: capitalize;
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 24px;
}

/* Icon Main */
span.faq-icon,
h5.toggle_faq {
  transition: 0.3s ease;
  transition-delay: 0.4s;
  cursor: pointer;
}

span.faq-icon {
  width: 15px;
  height: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  margin: 0;
  left: 0;
}

/* Standard Lines */
i.faq-icon {
  display: block;
  height: 2px;
  width: 15px;
  background-color: var(--dark);
  position: absolute;
}

/* Plus Icon */
span.faq-icon .one {
  transform: rotate(90deg);
  transition: 0.4s ease-in-out;
}

span.faq-icon .two {
  transform: rotate(180deg);
  transition: 0.4s ease-in-out;
}

/* Close Icon */
h5.toggle_faq.active .one {
  transform: rotate(-45deg);
  transition: 0.4s ease-in-out;
}

h5.toggle_faq.active .two {
  transform: rotate(45deg);
  transition: 0.4s ease-in-out;
}

/* Icon Main Active */
span.faq-icon,
h5.toggle_faq {
  transition: 0.3s ease;
  transition-delay: 0.4s;
  font-weight: 500;
  font-size: 20px;
  line-height: 25px;
}

@media (max-width: 767px) {
  span.faq-icon {
    width: 30px;
    height: 30px;
  }
  h5.toggle_faq {
    padding-left: 40px;
  }
  i.faq-icon {
    width: 10px;
    height: 2px;
  }
}

/* Home Small Banner Layout */
.home_banner_system {
  display: flex;
  flex-wrap: wrap;
}

.home_banner_content,
.home_banner_image {
  width: 50%;
}

.home_banner_content {
  padding: 60px 5% 60px 0;
}

.home_banner_image {
  background-position: center;
  background-size: cover;
}

.swal2-popup {
  font-size: 23px !important;
  border-radius: 0px !important;
}

.swal2-popup .swal2-styled.swal2-cancel,
.swal2-popup .swal2-styled.swal2-confirm {
  border-radius: 0px !important;
}

@media (max-width: 768px) {
  .home_banner_content,
  .home_banner_image {
    width: 100%;
  }
  .home_banner_image {
    min-height: 200px;
  }
}

/* BX Slider */
.banner_content .banner_details .title {
  font-size: 50px;
  font-size: 1rem;
  line-height: 55px;
  line-height: 1.1rem;
  color: hsl(0 0% 100%);
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px;
}

.banner_content .banner_details .description {
  color: hsl(0 0% 100%);
  font-weight: 400;
  margin-bottom: 20px;
  display: none;
}

.banner_content .banner_details a {
  border: 2px solid var(--main);
  padding: 5px 20px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: hsl(0 0% 20%);
  text-decoration: none;
  background: var(--main);
  font-weight: 600;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.banner_content .banner_details a:hover {
  background: hsl(0 0% 100%);
  border-color: hsl(0 0% 100%);
  color: hsl(0 0% 20%);
}

.form_holder form {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* Banner pagination */
.banner_pagination {
  display: flex;
  justify-content: center;
  width: 100%;
  position: absolute;
  bottom: 10px;
  color: hsl(0 0% 100%);
}

.banner_pagination > div {
  margin: 0 3px;
  cursor: pointer;
}

.banner_pagination > div:hover {
  color: rgba(0, 0, 0, 0.3);
}

.banner_pagination > .active {
  color: var(--main);
}

/* End banner pagination */
/* Scroll Down */
.banner-scroll-down {
  position: absolute;
  display: flex;
  width: 100%;
  justify-content: center;
  bottom: 10px;
}

.banner-scroll-down a {
  text-align: center;
  background-color: none;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: 0.3s ease;
}

.banner-scroll-down a i {
  color: hsl(0 0% 100%);
  font-size: 25px;
}

.banner-scroll-down a:hover {
  background-color: hsl(0 0% 20%);
  transition: 0.3s ease;
}

/* 3.1.2 Buttons
****************/
input.superbutton,
a.button,
button.superbutton,
a.superbutton,
.superbutton {
  line-height: 1;
  text-decoration: none;
  outline: none;
  font-size: 1.6rem;
  cursor: pointer;
  margin: 3.2rem 0 0;
  text-transform: uppercase;
  font-family: var(--font-wide);
  font-weight: 500;
  text-decoration: none;
  background: var(--main);
  border: 2px solid var(--main);
  color: white;
  height: 4.4rem;
  display: inline-flex;
  align-items: center;
  padding: 3px 3.2rem 0;
  border-radius: 4px;
  letter-spacing: .05em;
  transition: var(--animate);
}

input.superbutton:hover,
a.button:hover,
button.superbutton:hover,
a.superbutton:hover,
.superbutton:hover {
  background: var(--dark);
  border-color: var(--dark);
}

input.superbutton.alt,
a.button.alt,
button.superbutton.alt,
a.superbutton.alt,
.superbutton.alt{
  background: none;
  color: var(--dark);
  border-color: var(--dark);
}

input.superbutton.alt:hover,
a.button.alt:hover,
button.superbutton.alt:hover,
a.superbutton.alt:hover,
.superbutton.alt:hover {
  background: var(--dark);
  border: var(--dark);
  color: white;
}

.dark input.superbutton:hover,
.dark a.button:hover,
.dark button.superbutton:hover,
.dark a.superbutton:hover,
.dark .superbutton:hover{
  background: white;
  color: var(--dark);
  border-color: white;
}

a.cart_button {
  position: fixed;
  bottom: 50px;
  right: 50px;
  background: var(--main);
  border-radius: 100%;
  text-decoration: none;
  z-index: 999;
  transform: scale(1);
  transition: 0.3s ease;
  height: 60px;
  width: 60px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

a.cart_button:hover {
  background: #222;
  transform: scale(1.2);
  transition: 0.3s ease;
}

span.shopping-widget-holder {
  position: relative;
  left: -2.5px;
}

span.shopping-widget-holder i {
  color: hsl(0 0% 20%);
}

span.shopping-widget-holder span {
  position: absolute;
  top: 0;
  right: -10px;
  width: 15px;
  height: 15px;
  font-size: 13px;
  background-color: hsl(0 0% 20%);
  border-radius: 100%;
  color: var(--main);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cart_quantity {
  margin: 0;
  transition: 0.3s ease;
}

.cart_quantity .quantity_text {
  float: right;
  margin: 5px 5px 0 0;
  transition: 0.3s ease;
}

.cart_quantity label {
  float: left;
  width: 100%;
  margin: 10px 0 0;
  transition: 0.3s ease;
}

.cart_quantity input,
select.cart_price_option {
  border: none;
  height: 26px;
  margin: 5px 0 10px;
  outline: 0 none;
  padding: 1px 2% 2px 2%;
  width: 96%;
  transition: 0.3s ease;
}

.cart_quantity select {
  width: 100%;
  height: 30px;
  padding: 5px 0;
  margin: 5px 0 0;
  border-radius: 0px;
  border: none;
  outline: none;
  transition: 0.3s ease;
}

.cart_quantity select option {
  padding: 8px 12px 8px 12px;
  transition: 0.3s ease;
}

input.superbutton[type="submit"] {
  background-color: var(--main);
  color: hsl(0 0% 100%);
  transition: 0.3s ease;
  height: auto;
  padding: 10px 30px;
}

input.superbutton[type="submit"]:hover {
  background-color: hsl(0 0% 20%);
  transition: 0.3s ease;
}

/* Stripe Button */
.stripe-button-el {
  background-color: transparent !important;
}

.stripe-button-el span {
  background-color: var(--main) !important;
}

.stripe-button-el,
.stripe-button-el span {
  background-image: none !important;
  box-shadow: none !important;
  border: transparent !important;
  text-shadow: none !important;
  font-family: inherit !important;
  text-transform: uppercase;
  transition: 0.25s ease;
}

.stripe-button-el span:hover {
  background-color: hsl(0 0% 20%) !important;
  border-color: hsl(0 0% 20%);
  transition: 0.25s ease;
}

/* 3.5 Modules
*************/
/* New Nav Styles */
.button_container {
  position: fixed;
  top: 30px;
  right: 30px;
  height: 27px;
  width: 35px;
  cursor: pointer;
  z-index: 999;
  transition: opacity 0.25s ease;
}

.button_container:hover {
  opacity: 0.7;
}

.button_container.active .top {
  transform: translateY(11px) translateX(0) rotate(45deg);
  background: hsl(0 0% 100%);
}

.button_container.active .middle {
  opacity: 0;
  background: hsl(0 0% 100%);
}

.button_container.active .bottom {
  transform: translateY(-11px) translateX(0) rotate(-45deg);
  background: hsl(0 0% 100%);
}

.button_container span {
  background-color: #f0f0f0;
  border: none;
  height: 5px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: all 0.35s ease;
  cursor: pointer;
}

.button_container span:nth-of-type(2) {
  top: 11px;
}

.button_container span:nth-of-type(3) {
  top: 22px;
}

.overlay {
  position: fixed;
  background: rgba(0, 0, 0, 0.85);
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s, visibility 0.35s, height 0.35s;
  overflow: hidden;
}

.overlay.open {
  opacity: 0.7;
  visibility: visible;
  height: 100%;
}

.overlay.open li {
  animation: fadeInRight 0.5s ease forwards;
  animation-delay: 0.35s;
}

.overlay.open li:nth-of-type(2) {
  animation-delay: 0.4s;
}

.overlay.open li:nth-of-type(3) {
  animation-delay: 0.45s;
}

.overlay.open li:nth-of-type(4) {
  animation-delay: 0.5s;
}

.overlay.open li:nth-of-type(5) {
  animation-delay: 0.55s;
}

.overlay.open li:nth-of-type(6) {
  animation-delay: 0.6s;
}

.overlay.open li:nth-of-type(7) {
  animation-delay: 0.65s;
}

.overlay.open li:nth-of-type(8) {
  animation-delay: 0.7s;
}

.overlay.open li:nth-of-type(9) {
  animation-delay: 0.75s;
}

.overlay.open li:nth-of-type(10) {
  animation-delay: 0.8s;
}

.overlay.open li:nth-of-type(11) {
  animation-delay: 0.85s;
}

.overlay.open li:nth-of-type(12) {
  animation-delay: 0.9s;
}

.overlay.open li:nth-of-type(13) {
  animation-delay: 0.95s;
}

.overlay.open li:nth-of-type(14) {
  animation-delay: 1s;
}

.overlay.open li:nth-of-type(15) {
  animation-delay: 1.05s;
}

.overlay.open li:nth-of-type(16) {
  animation-delay: 1.1s;
}

.overlay.open li:nth-of-type(17) {
  animation-delay: 1.15s;
}

.overlay.open li:nth-of-type(18) {
  animation-delay: 1.2s;
}

.overlay.open li:nth-of-type(19) {
  animation-delay: 1.25s;
}

.overlay.open li:nth-of-type(20) {
  animation-delay: 1.3s;
}

.overlay.open li:nth-of-type(21) {
  animation-delay: 1.35s;
}

.overlay.open li:nth-of-type(22) {
  animation-delay: 1.4s;
}

.overlay.open li:nth-of-type(23) {
  animation-delay: 1.45s;
}

.overlay.open li:nth-of-type(24) {
  animation-delay: 1.5s;
}

.overlay.open li:nth-of-type(25) {
  animation-delay: 1.55s;
}

.overlay.open li:nth-of-type(26) {
  animation-delay: 1.6s;
}

.overlay.open li:nth-of-type(27) {
  animation-delay: 1.65s;
}

.overlay.open li:nth-of-type(28) {
  animation-delay: 1.7s;
}

.overlay.open li:nth-of-type(29) {
  animation-delay: 1.75s;
}

.overlay.open li:nth-of-type(30) {
  animation-delay: 1.8s;
}

.overlay nav {
  position: relative;
  height: 70%;
  top: 45%;
  transform: translateY(-50%);
  font-size: 35px;
  font-family: "Open Sans", sans-serif;
  font-weight: 400;
  text-align: center;
}

.overlay ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  height: 100%;
}

.overlay ul li {
  display: block;
  height: auto;
  position: relative;
  opacity: 0;
}

.overlay ul li a {
  display: inline-block;
  position: relative;
  color: hsl(0 0% 100%);
  text-decoration: none;
  overflow: hidden;
  font-size: 0.6rem;
  padding-left: 0;
  padding-bottom: 10px;
}

.overlay ul li a:hover:after,
.overlay ul li a:focus:after,
.overlay ul li a:active:after {
  width: 100%;
}

.overlay ul li a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0%;
  transform: translateX(-50%);
  height: 3px;
  background: hsl(0 0% 100%);
  transition: 0.35s;
  background-color: transparent;
}

.overlay ul li a:hover:after {
  background-color: hsl(0 0% 100%);
}

.overlay ul li ul {
  display: none;
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

.overlay.open {
  opacity: 1;
  overflow: scroll;
}

.banner-container-constrained {
  position: relative;
}

.banner-container-constrained:hover .banner-next,
.banner-container-constrained:hover .banner-previous {
  opacity: 1;
  cursor: pointer;
}

.ms-banner-constrained {
  display: inline-flex;
  width: 100%;
  overflow: hidden;
}

.ms-banner-constrained li {
  width: 100%;
  flex-shrink: 0;
  position: relative;
  opacity: 0;
}

.ms-banner-constrained li.ms-overlay:after {
  background: rgba(51, 51, 51, 0.75);
}

.ms-banner-constrained li.ms-overlay.banner-left:after {
  background: linear-gradient(to left, transparent, #333 100%);
}

.ms-banner-constrained li.ms-overlay.banner-right:after {
  background: linear-gradient(to right, transparent, #333 100%);
}

.ms-banner-constrained li .banner-details {
  position: absolute;
  width: 100%;
  max-width: 1200px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: hsl(0 0% 100%);
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.ms-banner-constrained li .banner-details.left {
  justify-content: flex-start;
  text-align: left;
}

.ms-banner-constrained li .banner-details.right {
  justify-content: flex-end;
  text-align: right;
}

.banner-container-constrained .banner-details .banner-content {
  width: 50%;
}

.banner-container-constrained .banner-details .small-title {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 500;
  text-transform: uppercase;
}

.banner-container-constrained .banner-details .title {
  font-size: 6rem;
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 3.2rem;
}

.banner-container-constrained .banner-details .description {
  font-weight: 400;
  margin-bottom: 3.2rem;
}


@media screen and (max-width: 1260px) {
  .ms-banner-constrained li .banner-details {
    padding: 0 20px;
  }
}

@media screen and (max-width: 960px) {
  .ms-banner-constrained li .banner-details.right,
  .ms-banner-constrained li .banner-details.left {
    justify-content: center;
    text-align: center;
  }
  .banner-container-constrained .banner-details .banner-content {
    width: 100%;
  }
  .ms-banner-constrained li.ms-overlay.banner-left:after,
  .ms-banner-constrained li.ms-overlay.banner-right:after {
    background: rgba(51, 51, 51, 0.75);
  }
  .banner-container-constrained .banner-details .small-title {
    font-size: 1.8rem;
  }
  .banner-container-constrained .banner-details .title {
    font-size: 3.5rem;
    margin-bottom: 1.6rem;
  }
  .banner-container-constrained .banner-details .description {
    margin-bottom: 1.6rem;
  }
}

.banner-container-constrained .banner-next i,
.banner-container-constrained .banner-previous i {
  color: hsl(0 0% 100%);
  font-size: 25px;
  line-height: 40px;
}

.banner-container-constrained .banner-next:hover,
.banner-container-constrained .banner-previous:hover {
  background-color: var(--dark);
  transition: 0.3s ease;
}

.banner-container-constrained .banner-next,
.banner-container-constrained .banner-previous {
  opacity: 0;
  position: absolute;
  bottom: 1.6rem;
  right: .8rem;
  display: flex !important;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 50px;
  height: 50px;
  background-color: var(--main);
  border-radius: 50%;
  box-shadow: var(--shadow);
  text-decoration: none;
  transition: var(--animate);
  z-index: 2;
}
.banner-container-constrained .banner-next{
  padding-left: 4px;
}
.banner-container-constrained .banner-previous{
  padding-right: 4px;
}

@media screen and (max-width: 960px) {
  .banner-container-constrained .banner-next,
  .banner-container-constrained .banner-previous {
    display: none !important;
  }
}

.banner-container-constrained .banner-previous {
  right: 6.4rem;
}

.banner-container-constrained .banner-next img,
.banner-container-constrained .banner-previous img {
  width: auto;
  height: 28px;
}

.banner-container-constrained .banner-next img {
  transform: rotate(180deg);
}

.ms-banner-constrained li img {
  position: relative;
}

.ms-banner-constrained li:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 0;
}

.ms-banner-constrained .top-right {
  top: 15% !important;
  left: 85% !important;
  transform: translate(-85%, -15%) !important;
  text-align: right !important;
}

.ms-banner-constrained .top-center {
  top: 15% !important;
  transform: translate(-50%, -15%) !important;
}

.ms-banner-constrained .top-left {
  top: 15% !important;
  left: 15% !important;
  transform: translate(-15%, -15%) !important;
  text-align: left !important;
}

.ms-banner-constrained .middle-right {
  left: 85% !important;
  transform: translate(-85%, -50%) !important;
  text-align: right !important;
}

.ms-banner-constrained .middle-left {
  left: 15% !important;
  transform: translate(-15%, -50%) !important;
  text-align: left !important;
}

.ms-banner-constrained .bottom-right {
  top: 85% !important;
  left: 85% !important;
  transform: translate(-85%, -85%) !important;
  text-align: right !important;
}

.ms-banner-constrained .bottom-center {
  top: 85% !important;
  transform: translate(-50%, -85%) !important;
}

.ms-banner-constrained .bottom-left {
  top: 85% !important;
  left: 15% !important;
  transform: translate(-15%, -85%) !important;
  text-align: left !important;
}

@media screen and (max-width: 960px) {
  .banner-container-constrained .banner-scroll-down {
    display: none;
  }
}

.banner-container {
  position: relative;
  overflow: hidden;
  display: flex;
  height: 100vh;
  min-height: 500px;
}

.banner-container:hover .banner-next,
.banner-container:hover .banner-previous {
  opacity: 1;
  cursor: pointer;
}

.ms-banner li {
  position: absolute;
  display: flex;
  width: 100%;
  height: 100%;
}

.ms-banner li span {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  color: transparent;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: none;
  opacity: 0;
  z-index: 0;
}

.ms-banner li .banner-details {
  width: 90%;
  max-width: 625px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  opacity: 0;
  visibility: hidden;
  color: hsl(0 0% 100%);
  z-index: 1;
}

.banner-container .banner-details .small-title {
  font-size: 22px;
  line-height: 22px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.banner-container .banner-details .title {
  font-size: 75px;
  line-height: 75px;
  letter-spacing: 1px;
  text-transform: capitalize;
  font-weight: 400;
  margin-bottom: 20px;
}

.banner-container .banner-details .description {
  color: hsl(0 0% 100%);
  font-size: 16px;
  line-height: 22px;
  font-weight: 400;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.banner-container .banner-details a {
  border: 2px solid hsl(0 0% 100%);
  padding: 7px 40px 8px;
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: hsl(0 0% 100%);
  text-decoration: none;
  background: none;
  font-weight: 600;
  display: inline-block;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -ms-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.banner-container .banner-details a:hover {
  background: hsl(0 0% 100%);
  border-color: hsl(0 0% 100%);
  color: hsl(0 0% 20%);
}

.banner-container .banner-next i,
.banner-container .banner-previous i {
  color: hsl(0 0% 100%);
  font-size: 25px;
  line-height: 40px;
}

.banner-container .banner-next:hover,
.banner-container .banner-previous:hover {
  background-color: var(--main);
  transition: 0.3s ease;
}

.banner-container .banner-next,
.banner-container .banner-previous {
  opacity: 0;
  position: absolute;
  display: flex;
  justify-content: center;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  background-color: rgba(0, 0, 0, 0.3);
  width: 40px;
  height: 40px;
  border-radius: 100%;
  align-items: center;
  text-decoration: none;
  transition: 0.3s ease;
  z-index: 2;
}

.banner-container .banner-next {
  right: 10px;
}

.banner-container .banner-previous {
  left: 10px;
}

.ms-banner:after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 0;
  content: "";
  background: linear-gradient(to bottom, transparent, #333 200%);
}

.ms-banner .top-right {
  top: 15% !important;
  left: 85% !important;
  transform: translate(-85%, -15%) !important;
  text-align: right !important;
}

.ms-banner .top-center {
  top: 15% !important;
  transform: translate(-50%, -15%) !important;
}

.ms-banner .top-left {
  top: 15% !important;
  left: 15% !important;
  transform: translate(-15%, -15%) !important;
  text-align: left !important;
}

.ms-banner .middle-right {
  left: 85% !important;
  transform: translate(-85%, -50%) !important;
  text-align: right !important;
}

.ms-banner .middle-left {
  left: 15% !important;
  transform: translate(-15%, -50%) !important;
  text-align: left !important;
}

.ms-banner .bottom-right {
  top: 85% !important;
  left: 85% !important;
  transform: translate(-85%, -85%) !important;
  text-align: right !important;
}

.ms-banner .bottom-center {
  top: 85% !important;
  transform: translate(-50%, -85%) !important;
}

.ms-banner .bottom-left {
  top: 85% !important;
  left: 15% !important;
  transform: translate(-15%, -85%) !important;
  text-align: left !important;
}

.ms-banner .animate-image {
  animation: imageAnimation 8s linear infinite 0s;
}

.ms-banner .animate-details {
  z-index: 1000;
  animation: detailsAnimation 8s linear infinite 0s;
}

@keyframes imageAnimation {
  0% {
    opacity: 0;
    animation-timing-function: ease-in;
  }
  8% {
    opacity: 1;
    animation-timing-function: ease-out;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: scale(1.03);
  }
}

@keyframes detailsAnimation {
  0% {
    opacity: 0;
    visibility: visible;
  }
  5% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@media (max-height: 600px) {
  .full_header {
    position: relative !important;
  }
}

/* ---- Box List ---- */
.box_list .box {
  background: #f0f0f0;
  float: left;
  padding: 15px;
  width: 98%;
  margin: 0 1% 10px;
  text-align: center;
}

.box_list .full {
  width: 100%;
  margin: 0 0% 10px;
  text-align: center;
}

.box_list .video_box {
  width: 100%;
  margin-bottom: 5px;
}

.box_list .video_box iframe {
  width: 100%;
  height: 225px;
}

.box_list .box .quote {
  color: var(--main);
}

.box_list .name {
  color: var(--main);
  padding: 5px 10px 2px 0;
  margin: 0;
}

.box_list .featured {
  background-color: rgba(53, 117, 225, 0.3);
}

.box_list .box .title {
  color: var(--main);
  margin: 4px 0 2px 0;
  text-transform: uppercase;
  font-weight: 700;
}

.box_list .box .menu_title {
  color: var(--main);
  margin: 10px 0 3px 2px;
}

.box_list .no_image .title {
  margin: 0px 0 10px 0;
}

.box_list .box .title a {
  font-weight: 700;
  text-transform: uppercase;
  color: var(--main);
  text-decoration: none;
}

.box_list .box .title a:hover {
  color: #222;
  text-decoration: none;
}

.box_list .location_title {
  padding: 5px 0 0 0;
  line-height: 16px;
}

.box_list .job_title {
  color: var(--main);
  margin: -5px 0 0 0;
}

.box_list p {
  padding: 0;
  margin: 2px 0 10px 0;
}

.box_list .box .date {
  font-style: italic;
  font-weight: 400;
  color: var(--main);
  padding: 0;
  margin: 0;
}

.box_list .box .price {
  color: var(--main);
  margin: 0px 0 3px 2px;
  float: right;
}

.box_list .box .description {
  font-style: italic;
  padding: 0px;
  margin: 8px 0 0 0;
}

.box_list .box .options {
  font-style: italic;
  padding: 0px;
  margin: 2px 0 10px 0;
}

.box_list .box i {
  float: none;
  color: var(--main);
  padding: 0 5px 0 0;
}

.box_list .box .specials_title {
  font-style: bold;
  color: var(--main);
  padding: 0;
}

.box_list .box .special {
  font-style: italic;
  color: hsl(0 0% 20%);
  padding: 0;
}

.box_list .box img {
  border: none;
  background: hsl(0 0% 100%);
  padding: 0;
  margin: 0 0 10px 0;
  float: none;
  max-width: 80%;
  max-height: 80%;
  width: auto;
  height: auto;
}

.box_list .box img.large_image {
  border: 1px solid #f0f0f0;
  background: hsl(0 0% 100%);
  padding: 3px;
  margin: 5px 10px 10px 0;
  max-width: 200%;
  max-height: 200%;
  width: 97%;
  height: auto;
}

.box_list .box ul {
  margin: 0;
}

.box_list .box ul li {
  list-style-type: none;
  width: 100%;
  float: none;
  background: none;
  margin: 10px 0 10px 0;
  padding: 0 10px 0 0;
}

.box_list .box ul.careers_list li {
  list-style-type: none;
  width: 100%;
  float: left;
  background: none;
  margin: 10px 0 10px 0;
  padding: 0 10px 0 0;
}

.box_list .box ul li.last {
  border-right: none;
}

.box_list ul {
  margin: 0px;
  padding: 0px 0 8px 5px;
}

.box_list ul li {
  margin: 0;
  padding: 0;
}

.content .product_number {
  color: var(--main);
  float: right;
}

.box_list .product_highlight {
  margin: 0;
}

.box_list .product_highlight .alert {
  float: right;
  color: var(--main);
  margin: -5px 0 0 0;
}

.box_list .product_highlight ul {
  margin: 0px;
  padding: 0;
}

.box_list .product_highlight ul li {
  margin: 0;
  padding: 0;
}

.box_list .product_highlight ul li .strike {
  text-decoration: line-through;
}

.box_list .product_highlight ul li .sale {
  color: var(--main);
}

.box_list .product_check_list ul,
.box_list .product_check_list,
.box_list .product_highlight ul.gallery,
.box_list .product_highlight ul.gallery li {
  margin: 0;
  padding: 0;
}

.box_list .product_check_list ul li {
  color: var(--main);
  background: none;
  float: left;
  margin: 0px;
  padding: 0;
}

.box_list .box ul.pricing {
  margin: -1px 0 0 0;
  padding: 0;
}

.box_list .box ul.pricing li {
  display: inline;
  border-right: none;
  margin: 0px 4px 4px 0;
  padding: 0;
  color: var(--main);
}

.box_list .box ul.pricing li.strike {
  text-decoration: line-through;
}

.box_list .box ul.pricing li.sale {
  color: var(--main);
}

.box_list .box .alert_overlay {
  background-color: rgba(53, 117, 225, 0.3);
  padding: 2px 5px;
  margin-bottom: 5px;
  color: var(--main);
}

.box_list .box .alert_overlay h6 {
  text-decoration: none;
  font-size: 0.2rem;
  padding: 0px;
  margin: 0;
  float: left;
}

.box_list .box .alert_overlay h6 span {
  padding: 0px;
  margin: 0px 0 0 10px;
}

.box_list .box .alert_overlay p {
  color: var(--main);
}

.box_list .box .alert_overlay i {
  color: var(--main);
  padding: 0px 5px 0 5px;
  float: left;
}

.box_list .box .date_title {
  margin-top: 6px;
}

.box_list .box .date_box,
.content .date_box {
  background: none;
  border: none;
  float: none;
  width: 100%;
  margin: 2px 0 2px 0;
  text-align: center;
  text-decoration: none;
  color: var(--main);
}

.date_box_event {
  background: none;
  border: none;
  float: none;
  width: 100%;
  margin: 2px 0 2px 0;
  text-decoration: none;
  color: var(--main);
  text-align: left;
  padding-left: 12px;
}

.box_list .box .date_box .month,
.content .date_box .month {
  color: hsl(0 0% 100%);
  background: var(--main);
  padding: 1px 0 4px 0;
  text-transform: uppercase;
}

.box_list .box .date_box .day_of_week,
.content .date_box .day_of_week {
  color: var(--main);
  font-size: 0.22rem;
  text-transform: none;
  padding: 2px 0 0 0;
  margin: 0px 0 -2px 0;
}

.box_list .box .date_box .day,
.content .date_box .day {
  color: var(--main);
  font-size: 0.6rem;
  padding: 0;
}

.box_list .box .date_box .year,
.content .date_box .year {
  color: var(--main);
  font-size: 0.22rem;
  letter-spacing: 4px;
  padding: 0px 0 2px 5px;
  margin: -3px 0 0 0;
}

.box_list .box ul.date_list {
  margin: 3px 10px 0 0;
  padding: 0px;
  color: var(--main);
  font-size: 12px;
}

.box_list .box ul.date_list li {
  background: none;
  display: inline;
  list-style: none;
  color: var(--main);
  border-left: 1px solid var(--main);
  padding: 0px 0 0 10px;
  margin: 0px 0 0 6px;
}

.box_list .box ul.date_list li.first {
  border-left: none;
  padding: 0;
  margin: 0;
}

.content .box_list .box ul.date_list li i {
  padding: 4px 4px 0 0;
}

.box_list .box ul.eventdata_list {
  margin: 0 10px 10px 0;
  padding: 0 0 10px 0;
  color: var(--main);
  border-bottom: 1px solid hsl(0 0% 20%);
}

.box_list .box ul.eventdata_list li {
  background: none;
  list-style: none;
  color: hsl(0 0% 20%);
  padding: 0px 0 0 10px;
  margin: 2px 0 2px 6px;
}

.content .box_list .box ul.eventdata_list li i {
  padding: 0 5px 0 0;
  width: auto;
  float: none;
  color: hsl(0 0% 20%);
}

.box_list .address {
  color: var(--main);
}

.box_list .address i {
  padding: 0px 4px 0 0;
  margin-top: -1px;
}

.box_list .event p {
  margin: 5px 0 0 0;
}

.box_list .box_links a {
  color: var(--main);
}

.box_list .comment_box {
  width: 100%;
  margin: 0 0 10px 0;
  text-align: left;
}

.box_list .comment_box .comment_name {
  font-weight: 700;
  text-transform: uppercase;
  color: hsl(0 0% 20%);
  margin: 0px 0 5px 0;
}

.box_list .comment_box .comment_name span {
  font-weight: 400;
  font-style: italic;
  color: hsl(0 0% 20%);
  text-transform: capitalize;
}

/* Past News */
.box_list .past_news {
  width: 100%;
  margin: 0 0 10px;
  text-align: left;
}

/* CONTACT INFORMATION */
.contact_info {
  margin: 0;
}

.contact_info h4 {
  padding: 0px 0 10px 0;
  color: var(--main);
}

.contact_info ul {
  margin: 0;
  width: 100%;
}

.contact_info ul li {
  margin: 0 0 8px;
  list-style: none;
}

.contact_info ul li a {
  color: var(--main);
  text-decoration: underline;
}

.contact_info ul li a:hover {
  color: var(--dark);
  text-decoration: none;
}

.social_media ul {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.social_media ul li {
  margin: 0 8px;
  list-style: none;
}

.social_media ul li a {
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  text-align: center;
  color: hsl(0 0% 100%);
  background: var(--main);
  border-radius: 50%;
  transition: var(--animate);
}

.social_media ul li a:hover {
  background: var(--dark);
}

.social_media ul li a i {
  font-size: 2.2rem;
  line-height: 1;
}

.contact_info pre {
  margin: 3px 0 0 0;
  white-space: pre-wrap;
  /* css-3 */
  white-space: -moz-pre-wrap !important;
  /* Mozilla, since 1999 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  word-wrap: break-word;
  /* Internet Explorer 5.5+ */
  width: 99%;
}

.contact_info ul.hours {
  margin: 3px 0 0 0;
  padding: 0px;
  width: 100%;
}

.contact_info ul.hours li {
  margin: 0px;
  padding: 0px;
}

.contact_info ul.hours li span {
  width: 100px;
  color: hsl(0 0% 20%);
  display: inline-block;
}

.map_holder .overlay {
  background: transparent;
  position: relative;
  width: 100%;
  height: 450px;
  /* your iframe height */
  top: 450px;
  /* your iframe height */
  margin-top: -450px;
  /* your iframe height */
}

.map_holder .map_overlay {
  background: transparent;
  position: relative;
  width: 100%;
  height: 450px;
  top: 450px;
  margin-top: -450px;
  -webkit-overflow-scrolling: touch;
  z-index: 104;
}

#map_canvas {
  width: 100%;
  height: 450px;
}

.map_holder {
  height: 400px;
  overflow: hidden;
}
.map_holder iframe {
  height: 100%;
  width: 100%;
}

/* Login Styles */
#header .menu_holder .menu_content ul li.login_btn {
  float: left;
}

#header .menu_holder .menu_content ul li.login_btn a {
  text-decoration: none;
  color: hsl(0 0% 100%);
  background: var(--main);
  float: left;
  padding: 8px 10px;
}

#header .menu_holder .menu_content ul li.login_btn a:hover {
  background: #222;
}

#header .menu_holder .menu_content ul li.login_btn a i {
  color: hsl(0 0% 100%);
  position: relative;
  left: 3px;
}

.login_btn {
  float: right;
  margin: 0;
}

#header .login_btn {
  margin: 15px 0 3px 0;
}

.login_btn i {
  float: left;
  font-size: 0.46rem;
  margin: 2px 5px 0 0;
  color: var(--main);
}

.login_wrapper.hide {
  display: none;
}

.login_wrapper {
  width: 100%;
  position: fixed;
  z-index: 102;
  top: 34px;
  right: 0;
  left: 0;
}

.login_wrapper .login_wrapper_inner {
  width: 960px;
  margin: 0 auto;
}

.menu_holder .login_box {
  width: 300px;
  background: var(--main);
  padding: 15px;
  float: right;
  margin-right: 3px;
  box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.5);
  -ms-box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.5);
  -o-box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.5);
}

.menu_holder .login_box input {
  width: 94%;
  padding: 3%;
  margin: 2% 0;
  float: left;
  border: none;
  background: #f0f0f0;
}

.menu_holder .login_box input:focus {
  outline: none;
  box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -ms-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -o-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
}

.menu_holder .login_box input.checkbox {
  width: auto !important;
  padding: 0;
  margin: 2% 0 0 4%;
}

.menu_holder .login_box a {
  text-decoration: none;
  color: hsl(0 0% 100%);
}

.menu_holder .login_box a:hover {
  text-decoration: underline;
}

.menu_holder .login_box a.superbutton {
  margin-top: 5px;
  background: #333;
}

.menu_holder .login_box a.superbutton:hover {
  text-decoration: none;
  background: hsl(0 0% 20%);
  box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -ms-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
  -o-box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.5);
}

.menu_holder .login_box a.superbutton i {
  margin: 0 -2px 0 3px;
}

.sub_accounts_table {
  width: 100%;
}

.sub_accounts_table thead tr {
  border-bottom: 1px solid #ddd;
}

.StripeElement {
  background-color: white;
  height: 40px;
  padding: 10px 12px;
  border-radius: 4px;
  border: 1px solid transparent;
  box-shadow: 0 1px 3px 0 #e6ebf1;
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease;
}

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
  border-color: #fa755a;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}

#card_table {
  width: 100%;
}

#card_table table {
  width: 100%;
}

#card_table table thead {
  border-bottom: 1px solid #ddd;
}

#add_card_button {
  float: right;
  cursor: pointer;
}

#add_card_section,
#event_payment_div {
  position: relative;
  display: none;
  width: 100%;
}

#cancel_add_card,
#cancel_payment {
  position: absolute;
  top: 15px;
  right: 15px;
  cursor: pointer;
  transition: 0.2s;
}

#cancel_add_card:hover,
#cancel_payment:hover {
  transform: scale(1.3);
}

/* Login Form */
.login-form .content_container {
  background-size: cover;
  background-position: left center;
  min-height: 100vh;
  display: flex;
  justify-content: flex-end;
}

.login-form .inner_header {
  display: none;
}

.login-form .content_container .content:not(.content_form) {
  border-radius: 10px;
  padding: 30px;
  width: 500px;
  position: relative;
  z-index: 9;
}

.login-form .content_container .content:not(.content_form)::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  filter: blur(2px);
  background-color: rgba(255, 255, 255, 0.9);
}

#password_score {
  display: inline-block;
  width: calc(100% - 30px);
  background: #efefef;
  text-align: center;
  font-weight: bold;
  padding: 1px 5px 1px 5px;
  margin-bottom: 7px;
}

.strong_pw {
  border-bottom: 4px solid #00ff5e;
}

.medium_pw {
  border-bottom: 4px solid #93fc17;
}

.weak_pw {
  border-bottom: 4px solid #ff0000;
}

.login-form .content_container .dark,
.login-form .content_container .color {
  height: 40px;
  line-height: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-weight: 400;
  border: none;
  margin: 10px 10px 0 0;
}

.login-form .content_container .dark i,
.login-form .content_container .color i {
  display: none;
}

.login-form .content_container .color:hover,
.login-form .content_container .dark {
  background-color: var(--dark);
}

.login-form .content_container .dark:hover {
  background-color: var(--main);
}

.login-form hr {
  margin: 10px 0;
}

.login-form a.tooltip > span {
  right: 0;
}

.login-form a.tooltip span b {
  right: 5px;
}

.login-form .form_holder .full_width {
  position: relative;
}

@media (max-width: 1200px) {
  .login-form .content_container .content:not(.content_form) {
    float: none;
    max-width: 85%;
    margin: 80px auto;
  }
  .login-form .content_container {
    min-height: 1px;
  }
}

@media (max-width: 960px) {
  .login-form a.tooltip {
    right: 0;
    position: absolute;
  }
  .login-form #password_score {
    width: calc(100% - 25px);
  }
}

@media (max-width: 767px) {
  .login-form .content_container .dark,
  .login-form .content_container .color {
    width: 100%;
  }
}

.dashboard-page .content h1,
.dashboard-page .content .h1 {
  margin-bottom: 30px;
}

.dashboard-page .content .dashboard-welcome {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.dashboard-page .content .button-container {
  margin: auto 0px;
  width: auto;
}

.dashboard-page .content .button-container a.superbutton,
.dashboard-page .content .button-container input.superbutton,
.dashboard-page .content .button-container button.superbutton {
  font-size: 14px;
  line-height: 14px;
  padding: 0px;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 50%;
  margin: 0px 3px;
}

.dashboard-page .content .button-container a.superbutton i {
  margin: 0px -1px 0px 0px;
}

.dashboard-page .content .button-container button.superbutton i {
  margin: 0px -3px 0px 0px;
}

.dashboard-page .content a.half-button {
  width: 100%;
}

.dashboard-page .content .box_list .box {
  width: 100%;
  margin: 0px 0px 20px 0px;
  float: left;
  border-left: 5px solid #c0b595;
  padding: 20px;
  background: #f7f7f7;
}

.dashboard-page .content .box_list .box .title {
  font-family: "Cormorant", serif;
  color: #272727;
  margin-bottom: 5px;
  letter-spacing: 1px;
  text-transform: capitalize;
  font-weight: 400;
  font-size: 28px;
  line-height: 28px;
  margin: 0px 0px -3px;
}

.dashboard-page .content .box_list .box .title a {
  font-family: "Cormorant", serif;
  color: #272727;
  margin-bottom: 5px;
  letter-spacing: 1px;
  text-transform: capitalize;
  font-weight: 400;
  font-size: 28px;
  line-height: 28px;
}

.dashboard-page .content .box_list .box .title a:hover {
  color: #616161;
}

.dashboard-page .content .box_list .box .date {
  font-size: 14px;
  line-height: 16px;
  margin-left: 5px;
  color: #c0b595;
  font-weight: 600;
}

.dashboard-page .content .box_list .box p {
  margin: 20px 0px 20px;
  font-size: 14px;
  line-height: 20px;
  color: #7d7d7d;
  height: 80px;
  overflow: hidden;
}

.dashboard-page .content .box_list .box a.superbutton {
  border: 2px solid #272727;
  background: none;
  color: #272727;
  padding: 5px 20px;
  width: auto;
  float: right;
  font-weight: 600;
  letter-spacing: 2px;
  font-size: 14px;
  line-height: 14px;
}

.dashboard-page .content .box_list .box a.superbutton:hover {
  background: #272727;
  color: hsl(0 0% 100%);
}

.dashboard_icons {
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  padding: 20px 0px;
}

.dashboard_icons a {
  position: relative;
  text-align: center;
  width: 24%;
  text-decoration: none;
  transition: 0.2s ease;
  padding: 50px 0px;
  border-radius: 5px;
  background-color: #f7f7f7;
  color: #333;
}

.dashboard_icons a:hover {
  transform: scale(1.05);
  box-shadow: 0px 1px 5px 0px #3333;
}

.dashboard_icons a i {
  width: 100%;
}

.dashboard_icons a i::before {
  font-size: 90px;
}

.dashboard_icons a span {
  font-size: 20px;
  display: block;
  padding-top: 10px;
}

.dashboard_icons .unread_notifications {
  color: hsl(0 0% 100%);
  background-color: #d32d27;
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: 51px;
  right: 85px;
  border-radius: 50%;
  font-size: 15px;
  line-height: 15px;
  text-align: center;
  padding-top: 7px;
}

.popover__title {
  font-size: 24px;
  line-height: 36px;
  text-decoration: none;
  color: #e44444;
  text-align: center;
  padding: 15px 0;
}

.popover__wrapper {
  position: relative;
  margin-top: 0px;
  display: inline-block;
}

.popover__content {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  left: -72px;
  transform: translate(0, 20px);
  background-color: #f7f7f7;
  padding: 10px 10px;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
  width: 180px;
  font-size: 14px;
  line-height: 14px;
  height: auto;
}

.popover__content:before {
  position: absolute;
  z-index: -1;
  content: "";
  right: calc(50% - 10px);
  top: -8px;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent #f7f7f7 transparent;
  transition-duration: 0.3s;
  transition-property: transform;
}

.popover__wrapper:hover .popover__content {
  z-index: 10;
  opacity: 1;
  visibility: visible;
  transform: translate(0, 10px);
  transition: all 0.5s cubic-bezier(0.75, -0.02, 0.2, 0.97);
}

.popover__message {
  text-align: center;
  font-size: 14px;
  line-height: 14px;
  margin: 0px 0px;
}

@media (max-width: 960px) {
  .dashboard_icons a {
    width: 49%;
    margin-bottom: 2%;
  }
}

@media (max-width: 540px) {
  .dashboard_icons a {
    width: 100%;
    margin-bottom: 4%;
  }
}

/* FORMS */
h2#form {
  margin: 0 0 1.6rem;
}

.form_holder .third_width {
  width: calc(33.3333% - 11px);
  margin: 0 0 8px;
}
.form_holder .half_width {
  width: calc(50% - 8px);
  margin: 0 0 8px;
}
.form_holder .full_width {
  width: 100%;
  margin: 0 0 8px;
}
@media screen and (max-width: 960px) {
  .form_holder .third_width,
  .form_holder .half_width {
    width: 100%;
  }
}

.form_holder .last {
  margin: 0;
}

.form_holder input {
  font-weight: 400;
  width: 100%;
  padding: 5px 8px 5px 8px;
  height: auto;
  font-size: 16px;
  margin: 1px 0 5px 0;
  background-color: hsl(0 0% 100%);
  border: 1px solid #f0f0f0;
  color: hsl(0 0% 20%);
  outline: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

.form_holder input.checkbox {
  float: left;
  width: auto;
  height: auto;
  margin: 8px 0;
  padding: 0;
  background: none;
  border: 1px solid #f0f0f0;
  box-shadow: none;
  color: hsl(0 0% 20%);
  outline: none;
}

.form_holder textarea {
  font-weight: 400;
  width: 100%;
  padding: 5px 5px 5px 8px;
  margin: 1px 0 10px;
  background-color: hsl(0 0% 100%);
  border: 1px solid #f0f0f0;
  color: hsl(0 0% 20%);
  outline: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

.form_holder select {
  font-weight: 400;
  width: 100%;
  height: 36px;
  padding: 5px 0;
  margin: 1px 0 10px;
  background-color: hsl(0 0% 100%);
  border: 1px solid #f0f0f0;
  color: hsl(0 0% 20%);
  outline: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

.form_holder select option {
  padding: 8px 0 8px 0;
}

.form_holder .uploader {
  width: 100%;
  height: 30px;
  padding: 0px;
  margin: 1px 0 5px 0;
  background-color: hsl(0 0% 100%);
  border: 0px solid hsl(0 0% 100%);
  color: hsl(0 0% 20%);
  outline: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

.form_holder input:focus,
.form_holder textarea:focus {
  background-color: hsl(0 0% 100%);
  color: hsl(0 0% 20%);
  outline: none;
}

.form_holder label {
  display: block;
  font-size: 14px;
  color: hsl(0 0% 20%);
}

.form_holder .message {
  margin: 0px 0 10px 0;
}

.form_holder .check_label {
  float: left;
  margin: 4px 0 0 0;
  padding: 0px 0 0 5px;
}

.form_holder .require {
  color: var(--dark);
}

.form_holder .form_error {
  background-color: var(--main);
  color: hsl(0 0% 20%);
  padding: 10px;
  margin: 15px 0;
}

.form_top {
  margin-top: 30px;
}

.directions_form input {
  width: 98%;
  padding: 3px;
}

.form_holder .email_half_width input {
  width: 100%;
}

.captcha {
  margin-bottom: 20px !important;
}

/* Placeholder */
::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: var(--dark);
  opacity: 0.5;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: var(--dark);
  opacity: 0.5;
}

:-ms-input-placeholder {
  /* IE 10+ */
  color: var(--dark);
  opacity: 0.5;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: var(--dark);
  opacity: 0.5;
}

.form_holder input,
.form_holder textarea {
  border-color: #f0f0f0;
}

form#contact_form {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* Validating Entries */
.form_holder input:not([type="submit"]):focus:valid,
.form_holder textarea:focus:valid,
.form_holder select:focus:valid {
  box-shadow: 0px 0px 5px var(--main);
}

/* Invalidating Entries */
.form_holder input:not([type="submit"]):focus:invalid,
.form_holder textarea:focus:invalid,
.form_holder select:focus:invalid {
  box-shadow: 0px 0px 5px red;
}

/* Overriding Boring Date Picker */
.ui-datepicker .ui-datepicker-header {
  border: none;
  border-radius: 0;
  background-image: none;
  background: var(--main);
}

#ui-datepicker-div {
  padding: 0;
}

.ui-datepicker .ui-datepicker-title {
  color: hsl(0 0% 100%);
}

.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-prev {
  background-color: transparent !important;
  background-image: none;
  border: none;
}

.ui-datepicker .ui-datepicker-next:hover span,
.ui-datepicker .ui-datepicker-prev:not(.ui-state-disabled):hover span {
  filter: brightness(1000%);
}

.ui-datepicker th {
  padding: 5px 0;
}

table.ui-datepicker-calendar span {
  border: none !important;
  font-family: "Open Sans", sans-serif;
  text-transform: uppercase;
}

.ui-state-highlight,
.ui-widget-content {
  font-family: "Open Sans", sans-serif;
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid var(--main);
  background-image: none;
  background-color: rgba(212, 175, 55, 0.7);
  background-color: hsl(0 0% 100%) !important;
}

.ui-datepicker .ui-datepicker-title {
  text-transform: uppercase;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  background-image: none;
  background-color: #f5f5f5;
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  border-color: var(--main);
  background-image: none;
  background-color: hsl(0 0% 100%);
}

td.ui-datepicker-current-day a {
  background: var(--main) !important;
  color: hsl(0 0% 100%) !important;
}

td.ui-datepicker-days-cell-over.ui-datepicker-current-day.ui-datepicker-today
  a.ui-state-default.ui-state-highlight.ui-state-active {
  color: hsl(0 0% 20%) !important;
}

.form_holder input,
.form_holder textarea,
.form_holder select {
  font-family: "Open Sans", sans-serif !important;
}

#menu a {
  text-decoration: none;
}

html.mm-opened .mm-page,
html.mm-opened #mm-blocker,
html.mm-opened .mm-fixed-top,
html.mm-opened .mm-fixed-bottom,
html.mm-opened .mm-menu.mm-horizontal > .mm-panel {
  -webkit-transition: none 0.4s ease;
  -moz-transition: none 0.4s ease;
  -ms-transition: none 0.4s ease;
  -o-transition: none 0.4s ease;
  transition: none 0.4s ease;
  -webkit-transition-property: top, right, bottom, left, border,
    -webkit-transform;
  -moz-transition-property: top, right, bottom, left, border, -moz-transform;
  -ms-transition-property: top, right, bottom, left, border, -ms-transform;
  -o-transition-property: top, right, bottom, left, border, -o-transform;
  transition-property: top, right, bottom, left, border, transform;
}

html.mm-opened .mm-page,
html.mm-opened #mm-blocker {
  left: 0%;
  top: 0;
  margin: 0;
  border: 0px solid rgba(0, 0, 0, 0);
}

html.mm-opened.mm-opening .mm-page,
html.mm-opened.mm-opening #mm-blocker {
  border: 0px solid rgba(100, 100, 100, 0);
}

.mm-menu .mm-hidden {
  display: none;
}

.mm-fixed-top,
.mm-fixed-bottom {
  position: sticky;
  position: -webkit-sticky;
  left: 0;
}

.mm-fixed-top {
  top: 0;
}

.mm-fixed-bottom {
  bottom: 0;
}

html.mm-opened .mm-page,
.mm-menu > .mm-panel {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

html.mm-opened,
html.mm-opened body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

html.mm-opened .mm-page {
  height: 100%;
  overflow: hidden;
  position: absolute;
}

html.mm-background .mm-page {
  background: inherit;
}

#mm-blocker {
  background: hsl(0 0% 100%);
  opacity: 0;
  display: none;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 9999;
}

html.mm-opened #mm-blocker,
html.mm-blocking #mm-blocker {
  display: block;
}

.mm-menu.mm-current {
  display: block;
}

.mm-menu {
  background: inherit;
  display: none;
  overflow: hidden;
  height: 100%;
  padding: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}

.mm-menu > .mm-panel {
  background: inherit;
  -webkit-overflow-scrolling: touch;
  overflow: scroll;
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%;
  height: 100%;
  padding: 20px;
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 0;
}

.mm-menu > .mm-panel.mm-opened {
  left: 0%;
}

.mm-menu > .mm-panel.mm-subopened {
  left: -40%;
}

.mm-menu > .mm-panel.mm-highest {
  z-index: 1;
}

.mm-menu > .mm-panel.mm-hidden {
  display: block;
  visibility: hidden;
}

.mm-menu .mm-list {
  padding: 20px 0;
}

.mm-menu > .mm-list {
  padding: 20px 0 40px 0;
}

.mm-panel > .mm-list {
  margin-left: -20px;
  margin-right: -20px;
}

.mm-panel > .mm-list:first-child {
  padding-top: 0;
}

.mm-list,
.mm-list > li {
  list-style: none;
  display: block;
  padding: 0;
  margin: 0;
}

.mm-list * {
  -webkit-text-size-adjust: none;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 14px;
  text-shadow: none;
}

.mm-list a,
.mm-list a:hover {
  text-decoration: none;
}

.mm-list > li {
  position: relative;
}

.mm-list > li > a,
.mm-list > li > span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  color: inherit;
  line-height: 20px;
  display: block;
  padding: 10px 10px 10px 20px;
  margin: 0;
}

.mm-list > li:not(.mm-subtitle):not(.mm-label):not(.mm-noresults)::after {
  content: "";
  border-bottom-width: 1px;
  border-bottom-style: solid;
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

.mm-list > li:not(.mm-subtitle):not(.mm-label):not(.mm-noresults):after {
  width: auto;
  /*margin-left: 20px;  changed to allow border to touch left edge */
  margin-left: 0px;
  position: relative;
  left: auto;
}

.mm-list a.mm-subopen {
  width: 40px;
  height: 100%;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
}

.mm-list a.mm-subopen::before {
  content: "";
  border-left-width: 1px;
  border-left-style: solid;
  display: block;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.mm-list a.mm-subopen.mm-fullsubopen {
  width: 100%;
}

.mm-list a.mm-subopen.mm-fullsubopen:before {
  border-left: none;
}

.mm-list a.mm-subopen + a,
.mm-list a.mm-subopen + span {
  padding-right: 5px;
  margin-right: 40px;
}

.mm-list > li.mm-selected > a.mm-subopen {
  background: transparent;
}

.mm-list > li.mm-selected > a.mm-fullsubopen + a,
.mm-list > li.mm-selected > a.mm-fullsubopen + span {
  padding-right: 45px;
  margin-right: 0;
}

.mm-list a.mm-subclose {
  text-indent: 20px;
  padding-top: 30px;
  margin-top: -20px;
}

.mm-list > li.mm-label {
  font-size: 10px;
  text-transform: uppercase;
  text-indent: 20px;
  line-height: 25px;
}

.mm-list a.mm-subopen:after,
.mm-list a.mm-subclose:before {
  content: "";
  border: 2px solid transparent;
  display: block;
  width: 7px;
  height: 7px;
  margin-bottom: -5px;
  position: absolute;
  bottom: 50%;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.mm-list a.mm-subopen:after {
  border-top: none;
  border-left: none;
  right: 18px;
}

.mm-list a.mm-subclose:before {
  border-right: none;
  border-bottom: none;
  margin-bottom: -4px;
  left: 22px;
}

.mm-menu.mm-vertical .mm-list .mm-panel {
  display: none;
  padding: 10px 0 10px 10px;
}

.mm-menu.mm-vertical .mm-list .mm-panel li:last-child:after {
  border-color: transparent;
}

.mm-menu.mm-vertical .mm-list li.mm-opened > .mm-panel {
  display: block;
}

.mm-menu.mm-vertical .mm-list > li.mm-opened > a.mm-subopen {
  height: 40px;
}

.mm-menu.mm-vertical .mm-list > li.mm-opened > a.mm-subopen:after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 16px;
  right: 16px;
}

html.mm-opened .mm-page {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

/* MAIN BG COLOUR */
.mm-ismenu {
  background: var(--main);
}

.mm-menu {
  color: hsl(0 0% 100%);
}

.mm-menu .mm-list > li:after {
  border-color: rgba(0, 0, 0, 0.15);
}

.mm-menu .mm-list > li > a.mm-subclose {
  background: rgba(0, 0, 0, 0.1);
  color: rgba(255, 255, 255, 0.3);
}

.mm-menu .mm-list > li > a.mm-subopen:after,
.mm-menu .mm-list > li > a.mm-subclose:before {
  border-color: #fff;
}

.mm-menu .mm-list > li > a.mm-subopen:before {
  border-color: rgba(0, 0, 0, 0.15);
}

.mm-menu .mm-list > li.mm-selected > a:not(.mm-subopen),
.mm-menu .mm-list > li.mm-selected > span {
  background: rgba(0, 0, 0, 0.1);
}

.mm-menu .mm-list li.mm-label {
  background: rgba(255, 255, 255, 0.05);
}

.mm-menu.mm-vertical .mm-list li.mm-opened > a.mm-subopen,
.mm-menu.mm-vertical .mm-list li.mm-opened > ul {
  background: rgba(255, 255, 255, 0.05);
}

html.mm-opened.mm-opening .mm-page,
html.mm-opened.mm-opening #mm-blocker,
html.mm-opened.mm-opening .mm-fixed-top,
html.mm-opened.mm-opening .mm-fixed-bottom {
  left: 80%;
}

.mm-menu {
  width: 80%;
}

@media all and (max-width: 175px) {
  .mm-menu {
    width: 140px;
  }
  html.mm-opened.mm-opening .mm-page,
  html.mm-opened.mm-opening #mm-blocker,
  html.mm-opened.mm-opening .mm-fixed-top,
  html.mm-opened.mm-opening .mm-fixed-bottom {
    left: 140px;
  }
}

@media all and (min-width: 550px) {
  .mm-menu {
    width: 440px;
  }
  html.mm-opened.mm-opening .mm-page,
  html.mm-opened.mm-opening #mm-blocker,
  html.mm-opened.mm-opening .mm-fixed-top,
  html.mm-opened.mm-opening .mm-fixed-bottom {
    left: 440px;
  }
}

html.mm-nooverflowscrolling.mm-opened {
  height: auto;
  overflow: auto;
  overflow-x: hidden;
  overflow-y: scroll;
}

html.mm-nooverflowscrolling.mm-opened body {
  overflow: auto;
}

html.mm-nooverflowscrolling.mm-opened .mm-page {
  min-height: 1000px;
  position: fixed;
}

html.mm-nooverflowscrolling.mm-opened .mm-menu {
  height: auto;
  min-height: 1000px;
  overflow: auto;
  overflow-x: hidden;
  position: relative;
  left: auto;
  top: auto;
}

html.mm-nooverflowscrolling.mm-opened > .mm-panel {
  position: relative;
  height: auto;
  display: none;
  left: 0;
}

html.mm-nooverflowscrolling.mm-opened > .mm-panel.mm-current {
  display: block;
}

/* MENU THEMES */
html.mm-opened.mm-light .mm-page {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}

.mm-ismenu.mm-light {
  background: #f3f3f3;
}

.mm-menu.mm-light {
  color: rgba(0, 0, 0, 0.6);
}

.mm-menu.mm-light .mm-list > li:after {
  border-color: rgba(0, 0, 0, 0.1);
}

.mm-menu.mm-light .mm-list > li > a.mm-subclose {
  background: rgba(255, 255, 255, 0.6);
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-light .mm-list > li > a.mm-subopen:after,
.mm-menu.mm-light .mm-list > li > a.mm-subclose:before {
  border-color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-light .mm-list > li > a.mm-subopen:before {
  border-color: rgba(0, 0, 0, 0.1);
}

.mm-menu.mm-light .mm-list > li.mm-selected > a:not(.mm-subopen),
.mm-menu.mm-light .mm-list > li.mm-selected > span {
  background: rgba(255, 255, 255, 0.6);
}

.mm-menu.mm-light .mm-list li.mm-label {
  background: rgba(0, 0, 0, 0.03);
}

.mm-menu.mm-light.mm-vertical .mm-list li.mm-opened > a.mm-subopen,
.mm-menu.mm-light.mm-vertical .mm-list li.mm-opened > ul {
  background: rgba(0, 0, 0, 0.03);
}

.mm-menu.mm-light .mm-search input {
  background: rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.6);
}

.mm-menu.mm-light li.mm-noresults {
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-light em.mm-counter {
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-light .mm-header {
  border-color: rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-light .mm-header a:before {
  border-color: rgba(0, 0, 0, 0.3);
}

html.mm-opened.mm-white .mm-page {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}

.mm-ismenu.mm-white {
  background: white;
}

.mm-menu.mm-white {
  color: rgba(0, 0, 0, 0.6);
}

.mm-menu.mm-white .mm-list > li:after {
  border-color: rgba(0, 0, 0, 0.1);
}

.mm-menu.mm-white .mm-list > li > a.mm-subclose {
  background: rgba(0, 0, 0, 0.08);
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-white .mm-list > li > a.mm-subopen:after,
.mm-menu.mm-white .mm-list > li > a.mm-subclose:before {
  border-color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-white .mm-list > li > a.mm-subopen:before {
  border-color: rgba(0, 0, 0, 0.1);
}

.mm-menu.mm-white .mm-list > li.mm-selected > a:not(.mm-subopen),
.mm-menu.mm-white .mm-list > li.mm-selected > span {
  background: rgba(0, 0, 0, 0.08);
}

.mm-menu.mm-white .mm-list li.mm-label {
  background: rgba(0, 0, 0, 0.03);
}

.mm-menu.mm-white.mm-vertical .mm-list li.mm-opened > a.mm-subopen,
.mm-menu.mm-white.mm-vertical .mm-list li.mm-opened > ul {
  background: rgba(0, 0, 0, 0.03);
}

.mm-menu.mm-white .mm-search input {
  background: rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.6);
}

.mm-menu.mm-white li.mm-noresults {
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-white em.mm-counter {
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-white .mm-header {
  border-color: rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.3);
}

.mm-menu.mm-white .mm-header a:before {
  border-color: rgba(0, 0, 0, 0.3);
}

html.mm-opened.mm-black .mm-page {
  box-shadow: none;
}

.mm-ismenu.mm-black {
  background: black;
}

.mm-menu.mm-black {
  color: rgba(255, 255, 255, 0.6);
}

.mm-menu.mm-black .mm-list > li:after {
  border-color: rgba(255, 255, 255, 0.2);
}

.mm-menu.mm-black .mm-list > li > a.mm-subclose {
  background: rgba(255, 255, 255, 0.25);
  color: rgba(255, 255, 255, 0.3);
}

.mm-menu.mm-black .mm-list > li > a.mm-subopen:after,
.mm-menu.mm-black .mm-list > li > a.mm-subclose:before {
  border-color: rgba(255, 255, 255, 0.3);
}

.mm-menu.mm-black .mm-list > li > a.mm-subopen:before {
  border-color: rgba(255, 255, 255, 0.2);
}

.mm-menu.mm-black .mm-list > li.mm-selected > a:not(.mm-subopen),
.mm-menu.mm-black .mm-list > li.mm-selected > span {
  background: rgba(255, 255, 255, 0.25);
}

.mm-menu.mm-black .mm-list li.mm-label {
  background: rgba(255, 255, 255, 0.15);
}

.mm-menu.mm-black.mm-vertical .mm-list li.mm-opened > a.mm-subopen,
.mm-menu.mm-black.mm-vertical .mm-list li.mm-opened > ul {
  background: rgba(255, 255, 255, 0.15);
}

.mm-menu.mm-black .mm-search input {
  background: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.6);
}

.mm-menu.mm-black li.mm-noresults {
  color: rgba(255, 255, 255, 0.3);
}

.mm-menu.mm-black em.mm-counter {
  color: rgba(255, 255, 255, 0.3);
}

.mm-menu.mm-black .mm-header {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.3);
}

.mm-menu.mm-black .mm-header a:before {
  border-color: rgba(255, 255, 255, 0.3);
}

/* END MENU THEMES */
/* MENU POSITIONING */
.mm-menu.mm-top {
  width: 100%;
}

html.mm-top.mm-opened .mm-page,
html.mm-top.mm-opened #mm-blocker {
  top: 0%;
}

html.mm-top.mm-opened.mm-opening .mm-page,
html.mm-top.mm-opened.mm-opening #mm-blocker,
html.mm-top.mm-opened.mm-opening .mm-fixed-top,
html.mm-top.mm-opened.mm-opening .mm-fixed-bottom {
  left: 0;
}

.mm-menu.mm-right {
  left: auto;
  right: 0;
}

html.mm-right.mm-opened .mm-page,
html.mm-right.mm-opened #mm-blocker,
html.mm-right.mm-opened .mm-fixed-top,
html.mm-right.mm-opened .mm-fixed-bottom {
  left: auto;
  right: 0%;
}

html.mm-right.mm-opened.mm-opening .mm-page,
html.mm-right.mm-opened.mm-opening #mm-blocker,
html.mm-right.mm-opened.mm-opening .mm-fixed-top,
html.mm-right.mm-opened.mm-opening .mm-fixed-bottom {
  left: auto;
}

.mm-menu.mm-bottom {
  width: 100%;
  top: auto;
  bottom: 0;
}

html.mm-bottom.mm-opened .mm-page,
html.mm-bottom.mm-opened #mm-blocker {
  bottom: 0%;
  top: auto;
}

html.mm-bottom.mm-opened.mm-opening .mm-page,
html.mm-bottom.mm-opened.mm-opening #mm-blocker,
html.mm-bottom.mm-opened.mm-opening .mm-fixed-top,
html.mm-bottom.mm-opened.mm-opening .mm-fixed-bottom {
  top: auto;
  left: 0;
}

.mm-menu.mm-top {
  height: 80%;
}

html.mm-top.mm-opened.mm-opening .mm-page,
html.mm-top.mm-opened.mm-opening #mm-blocker,
html.mm-top.mm-opened.mm-opening .mm-fixed-top {
  top: 80%;
}

html.mm-top.mm-opened.mm-opening .mm-fixed-bottom {
  bottom: -80%;
}

@media all and (max-height: 175px) {
  .mm-menu.mm-top {
    height: 140px;
  }
  html.mm-top.mm-opened.mm-opening .mm-page,
  html.mm-top.mm-opened.mm-opening #mm-blocker,
  html.mm-top.mm-opened.mm-opening .mm-fixed-top {
    top: 140px;
  }
  html.mm-top.mm-opened.mm-opening .mm-fixed-bottom {
    bottom: -140px;
  }
}

@media all and (min-height: 1100px) {
  .mm-menu.mm-top {
    height: 880px;
  }
  html.mm-top.mm-opened.mm-opening .mm-page,
  html.mm-top.mm-opened.mm-opening #mm-blocker,
  html.mm-top.mm-opened.mm-opening .mm-fixed-top {
    top: 880px;
  }
  html.mm-top.mm-opened.mm-opening .mm-fixed-bottom {
    bottom: -880px;
  }
}

.mm-menu.mm-right {
  width: 80%;
}

html.mm-right.mm-opened.mm-opening .mm-page,
html.mm-right.mm-opened.mm-opening #mm-blocker,
html.mm-right.mm-opened.mm-opening .mm-fixed-top,
html.mm-right.mm-opened.mm-opening .mm-fixed-bottom {
  right: 80%;
}

@media all and (max-width: 175px) {
  .mm-menu.mm-right {
    width: 140px;
  }
  html.mm-right.mm-opened.mm-opening .mm-page,
  html.mm-right.mm-opened.mm-opening #mm-blocker,
  html.mm-right.mm-opened.mm-opening .mm-fixed-top,
  html.mm-right.mm-opened.mm-opening .mm-fixed-bottom {
    right: 140px;
  }
}

@media all and (min-width: 550px) {
  .mm-menu.mm-right {
    width: 440px;
  }
  html.mm-right.mm-opened.mm-opening .mm-page,
  html.mm-right.mm-opened.mm-opening #mm-blocker,
  html.mm-right.mm-opened.mm-opening .mm-fixed-top,
  html.mm-right.mm-opened.mm-opening .mm-fixed-bottom {
    right: 440px;
  }
}

.mm-menu.mm-bottom {
  height: 80%;
}

html.mm-bottom.mm-opened.mm-opening .mm-page,
html.mm-bottom.mm-opened.mm-opening #mm-blocker,
html.mm-bottom.mm-opened.mm-opening .mm-fixed-bottom {
  bottom: 80%;
}

html.mm-bottom.mm-opened.mm-opening .mm-fixed-top {
  top: -80%;
}

@media all and (max-height: 175px) {
  .mm-menu.mm-bottom {
    height: 140px;
  }
  html.mm-bottom.mm-opened.mm-opening .mm-page,
  html.mm-bottom.mm-opened.mm-opening #mm-blocker,
  html.mm-bottom.mm-opened.mm-opening .mm-fixed-bottom {
    bottom: 140px;
  }
  html.mm-bottom.mm-opened.mm-opening .mm-fixed-top {
    top: -140px;
  }
}

@media all and (min-height: 1100px) {
  .mm-menu.mm-bottom {
    height: 880px;
  }
  html.mm-bottom.mm-opened.mm-opening .mm-page,
  html.mm-bottom.mm-opened.mm-opening #mm-blocker,
  html.mm-bottom.mm-opened.mm-opening .mm-fixed-bottom {
    bottom: 880px;
  }
  html.mm-bottom.mm-opened.mm-opening .mm-fixed-top {
    top: -880px;
  }
}

html.mm-front.mm-opened .mm-page {
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
}

.mm-menu.mm-front,
.mm-menu.mm-next {
  -webkit-transition: none 0.4s ease;
  -moz-transition: none 0.4s ease;
  -ms-transition: none 0.4s ease;
  -o-transition: none 0.4s ease;
  transition: none 0.4s ease;
  -webkit-transition-property: top, right, bottom, left, -webkit-transform;
  -moz-transition-property: top, right, bottom, left, -moz-transform;
  -ms-transition-property: top, right, bottom, left, -o-transform;
  -o-transition-property: top, right, bottom, left, -o-transform;
  transition-property: top, right, bottom, left, transform;
}

html.mm-front .mm-page,
html.mm-front #mm-blocker {
  z-index: 0;
}

.mm-menu.mm-front {
  z-index: 1;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
}

html.mm-opened.mm-next .mm-page {
  box-shadow: none;
}

html.mm-opening .mm-menu.mm-front,
html.mm-opening .mm-menu.mm-next {
  left: 0%;
}

.mm-menu.mm-top.mm-front,
.mm-menu.mm-top.mm-next {
  left: 0;
}

html.mm-opening .mm-menu.mm-top.mm-front,
html.mm-opening .mm-menu.mm-top.mm-next {
  left: 0;
  top: 0%;
}

.mm-menu.mm-right.mm-front,
.mm-menu.mm-right.mm-next {
  left: auto;
}

html.mm-opening .mm-menu.mm-right.mm-front,
html.mm-opening .mm-menu.mm-right.mm-next {
  left: auto;
  right: 0%;
}

.mm-menu.mm-bottom.mm-front,
.mm-menu.mm-bottom.mm-next {
  top: auto;
  left: 0;
}

html.mm-opening .mm-menu.mm-bottom.mm-front,
html.mm-opening .mm-menu.mm-bottom.mm-next {
  left: 0;
  bottom: 0%;
}

.mm-menu.mm-front,
.mm-menu.mm-next {
  left: -80%;
}

@media all and (max-width: 175px) {
  .mm-menu.mm-front,
  .mm-menu.mm-next {
    left: -140px;
  }
}

@media all and (min-width: 550px) {
  .mm-menu.mm-front,
  .mm-menu.mm-next {
    left: -440px;
  }
}

.mm-menu.mm-top.mm-front,
.mm-menu.mm-top.mm-next {
  top: -80%;
}

@media all and (max-height: 175px) {
  .mm-menu.mm-top.mm-front,
  .mm-menu.mm-top.mm-next {
    top: -140px;
  }
}

@media all and (min-height: 1100px) {
  .mm-menu.mm-top.mm-front,
  .mm-menu.mm-top.mm-next {
    top: -880px;
  }
}

.mm-menu.mm-right.mm-front,
.mm-menu.mm-right.mm-next {
  right: -80%;
}

@media all and (max-width: 175px) {
  .mm-menu.mm-right.mm-front,
  .mm-menu.mm-right.mm-next {
    right: -140px;
  }
}

@media all and (min-width: 550px) {
  .mm-menu.mm-right.mm-front,
  .mm-menu.mm-right.mm-next {
    right: -440px;
  }
}

.mm-menu.mm-bottom.mm-front,
.mm-menu.mm-bottom.mm-next {
  bottom: -80%;
}

@media all and (max-height: 175px) {
  .mm-menu.mm-bottom.mm-front,
  .mm-menu.mm-bottom.mm-next {
    bottom: -140px;
  }
}

@media all and (min-height: 1100px) {
  .mm-menu.mm-bottom.mm-front,
  .mm-menu.mm-bottom.mm-next {
    bottom: -880px;
  }
}

html.mm-opened.mm-front .mm-fixed-top,
html.mm-opened.mm-front .mm-fixed-bottom,
html.mm-opened.mm-opening.mm-front .mm-fixed-top,
html.mm-opened.mm-opening.mm-front .mm-fixed-bottom {
  left: 0;
  right: auto;
}

html.mm-opened.mm-front .mm-fixed-top,
html.mm-opened.mm-opening.mm-front .mm-fixed-top {
  top: 0;
}

html.mm-opened.mm-front .mm-fixed-bottom,
html.mm-opened.mm-opening.mm-front .mm-fixed-bottom {
  bottom: 0;
}

/* END MENU POSITIONING */

/* DOWN AND RIGHT ARROWS IN NAV (DEFAULT OFF) */
.downarrowclass {
  display: none;
  /* THIS HIDES THE ARROW */
  position: absolute;
  top: 8px;
  right: 7px;
}

.rightarrowclass {
  display: none;
  /* THIS HIDES THE ARROW */
  position: absolute;
  top: 9px;
  right: 5px;
}

.jqueryslidemenu ul li:hover ul {
  visibility: visible !important;
}

/* ORDER STYLES */
.cart_box_wrapper {
  float: left;
  width: 100%;
}

a.clear_button {
  width: 49% !important;
  float: left;
  margin: 5px 2% 5px 0px !important;
  width: auto;
  padding: 10px;
  float: left;
}

a.continue_shopping {
  width: 49% !important;
  float: right;
  margin: 5px 0px;
  width: auto;
  padding: 10px;
}

a.shop_more {
  float: none;
  padding: 10px;
}

a.buy_button {
  padding: 10px 0px;
  float: right;
  background: rgba(53, 117, 225, 0.3);
}

a.discount_button {
  width: 49% !important;
  float: right !important;
}

.cart_box_wrapper .item_box {
  padding: 3% 0;
  float: left;
  margin-left: 0px;
  margin-bottom: 3px;
  background: rgba(255, 255, 255, 0.7);
  width: 100%;
}

.cart_box_wrapper .item_box.small {
  float: left;
  width: 96%;
  padding: 2%;
}

.cart_box_wrapper .item_box.simple .right_cart_form {
  float: left;
}

.item_box.simple h4.product_title {
  width: 100%;
  margin-top: 7px;
  float: left;
}

.item_box.simple div.product_price_per {
  float: right;
  padding: 0px 5px;
  color: hsl(0 0% 20%);
}

.item_box.simple div.product_price_per.large_right {
  /*width: 150px;*/
  text-align: right;
}

.item_box.simple div.product_price_per.small {
  float: left;
  padding: 0px 5px 0px 0px;
  color: hsl(0 0% 20%);
}

.item_box.simple div.product_price_per.small .quantity {
  float: right;
  margin-left: 5px;
}

.cart_box_wrapper .item_box .right_cart_form {
  float: left;
  text-align: right;
  width: 100%;
  margin: 0px;
  padding: 0px 0px 10px 0px;
  border-bottom: 1px solid #f0f0f0;
}

.cart_box_wrapper .item_box a.order_remove {
  float: right;
  margin: 2px 0px 0px 0px;
  font-size: 0.5rem;
  text-decoration: none;
  color: var(--danger);
  width: 6%;
}

.cart_box_wrapper .item_box a.order_remove:hover {
  cursor: pointer;
  color: rgba(53, 117, 225, 0.3);
}

.item_box .pro_info {
  float: left;
  margin: 0;
  width: 70%;
  padding: 0px 2%;
}

.item_box .pro_info .product_title a {
  color: hsl(0 0% 20%);
  text-decoration: none;
}

div.product_price_per {
  float: right;
  text-align: right;
  margin-top: 10px;
  padding: 0px 5px;
  color: hsl(0 0% 20%);
}

div.product_price_per.large_right {
  float: right;
  text-align: right;
}

div.product_price_per.small {
  float: left;
  text-align: left;
  margin-top: 9px;
  padding: 0px 5px;
  color: hsl(0 0% 20%);
}

div.product_price_per .discount_price_colour {
  color: var(--main);
}

.right_cart_form input.quantity_input {
  margin-top: 2px;
  background: #f0f0f0;
  border: 1px solid #f0f0f0;
}

.right_cart_form span.quantity_text {
  margin-top: 9px;
  padding: 0px 5px;
}

span.order_buttons {
  float: right;
  color: hsl(0 0% 20%);
  margin: 0px 5px 0px 5px;
}

input.quantity_input {
  float: right;
  width: 56px;
  height: 28px;
  padding: 0px 0px 0px 10px;
  border: 1px solid #f5f5f5;
}

span.quantity_text {
  float: right;
}

div.total_info {
  float: right;
  margin: 5px 0px;
}

div.total_info .sale_alert {
  color: var(--main);
  margin: -5px 0px 2px 0px;
  float: right;
}

div.total {
  float: right;
  max-width: 100px;
  margin: 0px 0px 5px 15px;
  font-size: 0.44rem;
  text-align: right;
  border: none;
  background: none;
  color: hsl(0 0% 20%);
}

label.total_text {
  float: right;
  margin: 2px 0px 0px 0px;
}

label.total_text.small {
  margin: 0px;
  float: left;
}

span.total_text_taxes {
  font-size: 9px;
  margin: -5px 0px 3px 0px;
  color: var(--dark);
  float: right;
}

/* Cart Purchase Page */
ul.customer_information {
  list-style: none;
  display: inline-block;
  width: 100%;
}

ul.customer_information li {
  float: left;
  width: 100%;
  margin: 0px;
  margin-right: 1%;
  color: var(--dark);
}

ul.customer_information li a {
  color: var(--dark);
  text-decoration: none;
}

ul.customer_information li strong {
  color: hsl(0 0% 20%);
  font-weight: bold;
}

a.add_to_cart {
  width: 100% !important;
  margin: 10px 0px !important;
  padding: 10px 0px !important;
}

.cart_quantity .quantity_text {
  float: left;
  margin: 5px 5px 0px 0px;
}

.cart_quantity input,
select.cart_price_option {
  background: hsl(0 0% 100%);
  width: 100%;
  position: relative;
  border: none;
  outline: 0px;
  padding: 2px 2px 2px 10px;
  float: left;
  border-radius: 7px;
}

.box_list .box .cart_quantity input {
  background: hsl(0 0% 100%);
}

img.small_cart_thumbnail {
  width: 10%;
  height: auto;
  margin: 0px;
  float: left;
}

.cart_options {
  margin-top: 20px;
}

.cart_options select {
  width: 75%;
  height: 26px;
  border: none;
  outline: 0px;
  padding: 2px 2px 2px 10px;
  float: right;
}

.cart_options select option {
  padding: 8px 12px 8px 12px;
}

/* ORDER STYLES END */
.discount_input {
  margin: 10px 0;
  float: right;
  width: 100%;
  border-radius: none;
}

.discount_input input {
  padding: 13px 2%;
  margin: 5px 1% 0px 0px;
  width: 45%;
  border: 1px solid #dddddd;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
}

.discount_input a {
  background: #262422;
  width: 15%;
  min-width: 120px;
  text-align: center;
  float: right;
  cursor: pointer;
}

.discount_input a i {
  margin-right: 0;
}

.discount_input a.applied {
  background: none;
  color: var(--dark);
  margin-left: 13px;
  padding-right: 0;
}

.discount_input a.applied i {
  margin-right: 0;
  color: var(--success);
}

.message_positive {
  height: 100%;
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: center;
  background-color: var(--main);
}

.message_wrapper a.cart_message_link i {
  background-color: hsl(0 0% 100%);
  color: var(--main);
  text-align: center;
  border-radius: 100%;
  line-height: 40px;
  width: 40px;
  height: 40px;
  font-size: 20px;
  margin-right: 10px;
}

.message_positive p {
  text-transform: uppercase;
  font-weight: 800;
  color: hsl(0 0% 20%);
  margin: 0;
}

/* Cart Landing Page */
.cart_item {
  position: relative;
  margin: 20px 0;
}

.cart-content {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}

.cart-content > div {
  padding: 40px 2%;
}

.your-cart {
  width: 45%;
}

.checkout-form {
  width: 55%;
}

/* Checkout Form */
.checkout-form {
  background-color: #ededed;
}

.cart .content_container {
  padding: 0;
}

.cart .message_wrapper {
  height: auto;
  width: 100%;
}

/* Cart Product Layout */
.product_cart_content {
  display: flex;
  align-items: center;
}

/* Cart Image */
.product_cart_content .product-thumb {
  width: 100px;
}

.product_cart_content .product-thumb img {
  width: 100%;
  height: auto;
}

/* Cart Info */
.product-details {
  width: 50%;
}

/* Cart Pricing */
.product_cart_pricing {
  position: relative;
  width: auto;
  text-align: right;
}

.product_cart_quantity {
  position: absolute;
  top: 0;
  right: -25px;
  color: var(--main);
  border-radius: 100%;
  font-size: 15px;
  line-height: 25px;
  height: 25px;
  width: 25px;
  text-align: center;
  font-weight: 600;
}

/* Cart Amount Update */
input.cart_product_quantity {
  width: calc(100% - 150px);
  height: 30px;
  padding: 0 10px;
}

input.superbutton.cart_product_submit {
  height: 30px;
  padding: 0;
  line-height: 30px;
  width: 140px;
}

/* Remove From Cart */
input.superbutton[type="submit"][value="X"] {
  background-color: transparent;
  color: var(--main);
  position: absolute;
  top: 0;
  padding: 0;
  margin: 0;
  left: 0;
  width: auto;
}

/* Cart Landing Responsive */
@media (max-width: 960px) {
  .your-cart,
  .checkout-form {
    width: 100%;
  }
}

.cart_totals .cart_total {
  text-transform: uppercase;
  font-weight: 600;
  color: var(--main);
}

.product_cart_subtotal {
  font-weight: 600;
}

/* Cart Form */
@media (min-width: 960px) {
  .form_holder .third_width.same-shipping,
  .form_holder .third_width.coupon,
  .form_holder .third_width.country {
    width: 100% !important;
  }
}

.shipping_info {
  clear: both;
  display: none;
  padding-top: 30px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media (max-width: 960px) {
  .form_holder .third_width.coupon,
  .form_holder .third_width.country,
  .form_holder .third_width {
    width: 100%;
    display: inline-block;
  }
  .cart-content > div {
    padding: 40px 5%;
  }
  .checkout_form.form_holder {
    padding: 0;
  }
}

@media (max-width: 450px) {
  .product_cart_content {
    display: block;
  }
  .product_cart_content > div {
    width: auto;
    text-align: left;
  }
  .product_cart_quantity {
    position: inherit;
    width: auto;
    text-align: left;
    right: 0;
  }
  input.superbutton[type="submit"][value="X"] {
    right: 20px;
    left: initial;
    background-color: var(--main);
    border-radius: 100%;
    width: 30px;
    height: 30px;
    line-height: 30px;
    color: hsl(0 0% 100%);
  }
  .your-cart .cart_item {
    margin: 20px auto;
  }
  .your-cart .cart_item img {
    margin-bottom: 20px;
  }
}

.third_width.same-shipping input#same_as_billing {
  display: inline-block;
  width: auto;
  margin-right: 5px;
  height: auto;
}

.third_width.same-shipping {
  width: 100%;
}

.cart-form input.superbutton[type="submit"] {
  width: 250px;
  display: block;
  padding: 10px;
  position: relative;
  clear: both;
  height: auto;
}

@media (min-width: 960px) {
  .cart-form input.superbutton[type="submit"] {
    top: 20px;
    margin: 40px 0;
  }
}

/* Cart Checkout Wrapper */
.cart-checkout-wrapper .content {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  max-width: 100%;
  width: 100%;
}

.cart-checkout-wrapper .content > div {
  padding: 40px 2%;
}

.cart_totals > div {
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

/* User Info */
.user-info {
  width: 50%;
  background-color: #eee;
}

.user_shipping_info {
  border-top: 1px solid #ddd;
  margin-top: 20px;
  padding-top: 20px;
}

/* Cart Checkout */
.cart-checkout {
  width: 50%;
}

.cart-checkout-wrapper {
  padding: 0;
}

/* Cart Checkout Wrapper Mobile */
@media (max-width: 960px) {
  .cart-checkout,
  .user-info {
    width: 100%;
  }
}

/* Cart Thank You Page */
.cart-success-wrapper {
  display: flex;
}

.flexThanks {
  padding: 0;
}

.flexThanks .content {
  width: 100%;
  max-width: 100%;
}

.cart-success-wrapper > div {
  padding: 40px 2%;
}

.product_cart_price small {
  color: var(--main);
  font-weight: 600;
  position: absolute;
}

.cart_quantity select,
.cart_quantity input,
select.cart_price_option {
  height: 35px;
}

a#close_message i {
  display: none;
}

.empty-cart {
  width: 100%;
  text-align: center;
}

.empty-cart a.button {
  display: inline-block;
  width: auto;
  padding: 10px 30px;
  margin-top: 20px;
}

.empty-cart h3 {
  margin-bottom: 0 !important;
}
.form_holder input,
.form_holder textarea,
.form_holder select {
  height: auto;
  border: none;
  background: hsla(0 0% 0% / 0.1);
  color: var(--dark);
  border-bottom: 3px solid var(--main);
  margin: 0;
}
.form_holder button.superbutton {
  margin: 8px 0 0;
  width: 150px;
  margin-left: calc(100% - 150px);
}
.grecaptcha-badge {
  z-index: 9999;
}

.checkout_form form {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.checkout_form form .clear {
  display: none;
}

.cart-form input.superbutton[type="submit"].disabled_btn {
  cursor: not-allowed !important;
}

/* ---- Events ---- */
.content ul.date_list {
  margin: 5px 10px 0 10px;
  color: var(--main);
}

.content ul.date_list li {
  background: none;
  list-style: none;
  display: inline;
  border-left: 1px solid var(--main);
  color: var(--main);
  padding: 0px 7px 0 10px;
  margin: 0;
}

.content ul.date_list li.first {
  border-left: none;
  padding: 0px 7px 0 0;
}

.content ul.date_list li i {
  padding: 2px 4px 0 0;
}

.content ul.eventdata_list {
  margin: 5px 10px 0 10px;
  color: var(--main);
}

.content ul.eventdata_list li {
  background: none;
  list-style: none;
  color: var(--main);
  padding: 0px 0 0 2px;
  margin: 0;
}

.content ul.eventdata_list li i {
  padding: 2px 4px 0 0;
  width: 15px;
}

.content ul.eventdata_list li a {
  padding: 4px 30px;
  color: var(--main);
  background: var(--main);
  text-decoration: none;
}

/* Foood Menu Styles */
ul.menu_section_nav {
  max-width: 940px;
  margin: 0 auto;
  list-style: none;
  margin-bottom: 0;
  text-align: center;
}

ul.menu_section_nav li {
  float: left;
  margin: 0;
}

ul.menu_section_nav li a {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-size: 0.52rem;
  text-decoration: none;
  font-weight: 700;
  text-transform: uppercase;
  padding: 15px 20px;
  display: inline-block;
}

ul.menu_section_nav li a:hover {
  background: #222;
}

ul.menu_section_nav li.active a {
  background: hsl(0 0% 20%);
}

h4.menu_category {
  font-weight: 700;
  text-transform: uppercase;
  text-align: left;
  padding-bottom: 10px;
  margin-bottom: 30px;
  margin-top: 20px;
}

p.menu_section_description {
  margin-bottom: 40px;
}

.grid_list .menu_item {
  width: 100%;
  margin: 0 0 10px;
  float: none;
}

.grid_list .menu_item .price {
  float: right;
  color: var(--main);
  font-weight: 700;
  text-transform: uppercase;
  padding-left: 5px;
}

.grid_list .menu_item .menu_title {
  margin: 0 0 5px 0;
  color: hsl(0 0% 20%);
  font-weight: 700;
  text-transform: uppercase;
}

.grid_list .menu_item p.menu_options {
  background: #ecebeb;
  padding: 5px;
}

/* GRID LIST */
.grid_list {
  display: flex;
  flex-wrap: wrap;
}

.grid_list .grid_item {
  width: 100%;
  float: left;
  margin: 5px;
}

.grid_list .last {
  margin-right: 0%;
}

.grid_list .title {
  text-align: center;
  color: hsl(0 0% 100%);
  background: var(--main);
  display: flex;
  align-items: center;
  height: 60px;
}

.grid_list .title:hover {
  background: #222;
}

.grid_list .title a {
  color: hsl(0 0% 100%);
  text-align: center;
  text-decoration: none;
  display: block;
  padding: 15% 5%;
  width: 100%;
  font-weight: 700;
  text-transform: uppercase;
}

.grid_list .title a:hover {
  color: #f0f0f0;
  text-decoration: none;
}

.grid_list img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: auto;
  background: hsl(0 0% 100%);
}

.grid_list .grid_video {
  width: 48%;
  float: left;
  margin-right: 2%;
  margin-bottom: 10px;
}

.full-width-content .animated_list {
  display: flex;
  width: 100%;
  height: auto;
  flex-wrap: wrap;
  justify-content: center;
}

.animated_list .list_item {
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 450px;
  text-decoration: none;
}

.animated_list .spacer {
  background-color: rgba(0, 0, 0, 0.4);
  position: relative;
  height: 100%;
  width: 100%;
  padding: 0 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.animated_list .list_item:hover .spacer {
  background-color: rgba(108, 83, 56, 0.8);
}

.animated_list .animate-box {
  position: relative;
  width: 100%;
}

.animated_list h2 {
  color: hsl(0 0% 100%);
  text-align: center;
  position: relative;
}

.animated_list h2:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -0.15rem;
  left: calc(50% - (115px / 2));
  height: 4px;
  width: 115px;
  background-color: hsl(0 0% 100%);
  opacity: 0;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.animated_list .list_item:hover h2:after {
  opacity: 1;
}

.animated_list .description {
  text-align: center;
  opacity: 0;
  height: 0;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.animated_list .description p {
  color: hsl(0 0% 100%);
}

.animated_list .list_item:hover .description {
  opacity: 1;
  height: 144px;
}

@media (min-width: 960px) {
  a.third-width {
    width: 33.333%;
  }
}

/* ---- Hours Box Home Page ---- */
.hours_box {
  margin: 0 0 10px 0;
  width: 100%;
}

.hours_box .holder {
  padding: 3px 0 3px 0;
}

.hours_box .holder a {
  color: var(--main);
}

/* ---- Location Styles ---- */
.content .location {
  margin: 10px 0 10px 0;
}

.content .location .address {
  background: hsl(0 0% 20%);
  padding: 8px 8px 8px 8px;
  margin: -6px 0 0 0;
}

.content .location iframe {
  width: 100%;
  height: 300px;
  margin: 0;
  border: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}

/* MENU LIST */
ul.pages li {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.pages li a {
  background: var(--dark);
  color: white;
  text-decoration: none;
  text-transform: uppercase;
  font-family: var(--font-wide);
  font-weight: 500;
  height: 4.4rem;
  display: flex;
  align-items: center;
  padding: 3px 3.2rem 0;
  border-radius: 4px;
  letter-spacing: .05em;
  text-align: center;
  justify-content: center;
}
ul.pages li a:hover {
  background: white;
  color: var(--dark);
}

/* MENU TOGGLER */
h4.menu_toggle,
h4.toggle.active.open {
  color: var(--main);
  color: hsl(0 0% 100%);
  background: url(/assets/images/layout/toggle-light.png) no-repeat 10px 11px
    var(--main);
  padding: 8px 0 8px 35px;
  margin: 10px;
  cursor: pointer;
}

h4.menu_toggle.active,
h4.toggle.open {
  background-position: 10px -39px;
}

h4.menu_toggle:hover,
h4.toggle.active.open:hover {
  text-decoration: underline;
}

div.menu_toggler {
  color: hsl(0 0% 20%);
  border-top: none;
  margin: 0 0 10px 0;
  padding: 0px;
  overflow: hidden;
}

div.menu_toggler hr {
  border-top: 1px solid #cccccc;
}

div.menu_toggler p {
  margin: 0px;
  padding: 5px 0 5px 0;
}

/* MESSAGE POPUP STYLES */
div.message_wrapper {
  margin: -7px 0 5px 0px;
  height: 64px;
}

.content h2.hide_message {
  display: none;
}

.content h2.message_positive {
  width: 100%;
  color: hsl(0 0% 100%) !important;
  background: var(--main) !important;
  padding: 15px 2%;
}

.content h2.message_negative {
  width: 96%;
  color: hsl(0 0% 100%) !important;
  background: var(--main) !important;
  padding: 15px 2%;
}

.message_wrapper a.message_link {
  color: hsl(0 0% 100%) !important;
  text-decoration: underline;
}

.message_wrapper a.message_link:hover {
  text-decoration: none;
}

.message_wrapper a.cart_message_link {
  float: right;
  color: hsl(0 0% 100%) !important;
  text-decoration: none;
  padding-bottom: 1px;
}

.message_wrapper a.cart_message_link:hover {
  border-bottom: 1px solid rgba(255, 255, 255, 0);
}

/* SHOWROOM STYLES */
.filter_list {
  width: 100%;
  margin-bottom: 15px;
}

.filter_list ul {
  margin: 0px;
  list-style: none;
}

.filter_list ul li {
  background: var(--main);
  padding: 0;
  margin: 5px 0 5px 0;
  text-align: center;
  list-style: none;
  width: 100%;
  float: left;
}

.filter_list ul li a {
  color: hsl(0 0% 100%);
  width: 100%;
  padding: 5px 10px;
  display: block;
  background: var(--main);
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
}

.filter_list ul li a:hover {
  color: hsl(0 0% 100%);
  background: hsl(0 0% 20%);
}

.filter_list ul li.active a {
  background: hsl(0 0% 20%);
  text-decoration: none;
}

.filter_list ul li.active a:hover {
  color: hsl(0 0% 100%);
}

.showroom_list h3 {
  margin: 0px 0 5px 0;
}

.showroom_list .box {
  background: #e9e9e9;
  float: left;
  padding: 20px;
  width: calc(50% - 20px);
  margin: 0 0 10px 0;
  position: relative;
  overflow: hidden;
}

.showroom_list .featured {
  background: var(--main);
  border: 1px solid #8eadbc;
}

.showroom_list .last {
  margin: 0;
}

.showroom_list .box .title {
  color: var(--main);
  margin: 0px 0 3px 2px;
}

.showroom_list .box .title a {
  color: var(--main);
  text-decoration: none;
  font-weight: 700;
  text-transform: uppercase;
}

.showroom_list .box .title a:hover {
  color: #222;
}

.showroom_list .box .flag_featured {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-weight: 700;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 30px;
  right: -35px;
  text-align: center;
  padding: 5px 45px;
}

.showroom_list .box .flag_sold {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-weight: 700;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 24px;
  right: -33px;
  text-align: center;
  padding: 5px 55px;
}

.showroom_list .box .flag_low_kms {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 48px;
  right: -43px;
  text-align: center;
  padding: 5px 45px;
}

.showroom_list .box .flag_new {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 38px;
  right: -39px;
  text-align: center;
  padding: 5px 45px;
}

.showroom_list .box .flag_like_new {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 30px;
  right: -37px;
  text-align: center;
  padding: 5px 50px;
}

.showroom_list .box .flag_loaded {
  background: var(--main);
  color: hsl(0 0% 100%);
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 25px;
  right: -33px;
  text-align: center;
  padding: 5px 45px;
}

.showroom_list .box .flag_sale_price {
  background: #a12621;
  color: hsl(0 0% 100%);
  font-weight: 700;
  font-size: 14px;
  text-transform: uppercase;
  float: left;
  width: auto;
  position: absolute;
  transform: rotate(45deg);
  top: 31px;
  right: -36px;
  text-align: center;
  padding: 5px 45px;
}

.showroom_list .box .price {
  font-size: 16px;
  float: left;
  min-width: 55%;
  width: auto;
  line-height: 10px;
  margin: 6px 0 0 0;
  color: var(--main);
  font-weight: bold;
}

.showroom_list .box .price .taxes {
  font-size: 8px;
  color: var(--main);
  font-weight: normal;
}

.showroom_list .box .kms {
  font-size: 12px;
  float: left;
  min-width: 55%;
  width: auto;
  color: #df0000;
}

.showroom_list .box .kms span {
  font-size: 12px;
}

.showroom_list .box ul {
  margin: 0;
}

.showroom_list .box ul li {
  display: inline;
  background: none;
  font-size: 12px;
  margin: 0px 6px 0 0;
  padding: 0px 10px 0 0;
  border-right: 1px solid hsl(0 0% 0%) 000;
}

.showroom_list .box ul li.last {
  border-right: none;
}

.showroom_list .box .date {
  float: right;
  font-weight: normal;
  font-size: 12px;
  color: #262626;
  padding: 8px 0 0 0;
}

.showroom_list .box img {
  border: none;
  background: hsl(0 0% 100%);
  padding: 0;
  margin: 0 0 10px 0;
  float: none;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: auto;
}

.showroom_title {
  font-size: 26px;
  margin: 0;
  padding-top: 8px;
  font-weight: normal;
  color: #205b79;
}

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

.showroom_image {
  width: 30%;
  float: right;
  border: none;
  background: hsl(0 0% 100%);
  padding: 0px;
  margin: 10px 15px 0 0;
}

.fb-like iframe {
  padding-top: 12px;
  margin: 5px 15px 5px 15px;
  -webkit-box-shadow: 0 0 0 -0px black;
  -moz-box-shadow: 0 0 0 -0px black;
  box-shadow: 0 0 0 -0px black;
}

.showroom_table {
  background: #ececec;
}

.showroom_table ul {
  padding: 5px 0;
}

.showroom_table ul li {
  font-size: 12px;
  background: none;
  list-style: none;
  margin: 0 1% 0 1%;
  padding: 2px 0 2px 0;
  float: left;
  width: 98%;
  font-weight: bold;
}

.showroom_table ul li div {
  float: left;
  width: 100px;
  font-weight: normal;
}

.showroom_features_table {
  background: #ececec;
}

.showroom_features_table ul {
  padding: 5px 0;
}

.showroom_features_table ul li {
  font-size: 12px;
  background: none;
  list-style: none;
  margin: 0 1%;
  padding: 5px 5px 5px 20px;
  float: left;
  width: 98%;
}

/* MULTI LOCATIONS */
.multi_maps {
  margin: 0;
}

.multi_maps .multi_map {
  background: #f0f0f0;
  float: left;
  margin: 0px 0 20px 0;
  width: 100%;
}

.multi_maps .multi_map .overlay {
  background: transparent;
  position: relative;
  width: 100%;
  height: 300px;
  /* your iframe height */
  top: 300px;
  /* your iframe height */
  margin-top: -300px;
  /* your iframe height */
}

.multi_maps .multi_map iframe {
  width: 100%;
  height: 300px;
  margin: 0;
  border: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}

.multi_maps .multi_map .content {
  float: left;
  padding: 5px 10px;
}

.multi_map h3 {
  padding: 0;
  color: var(--main);
}

.multi_map ul {
  margin: 5px 0 0 0;
  width: 100%;
  list-style: none;
}

.multi_map ul li {
  margin: 0px;
  padding: 0px 0 6px 0;
}

.multi_map ul li a {
  color: var(--main);
  text-decoration: underline;
}

.multi_map ul li a:hover {
  color: var(--main);
  text-decoration: none;
}

/* People Styles */
.content_container .content .editable_content img.people_image {
  float: none;
  margin: 0 auto 10px auto;
}

.content_container .content .editable_content h1.person_name {
  font-size: 0.56rem;
  line-height: 0.56rem;
  margin: 0;
}

.content_container .content .editable_content h4.person_title {
  font-size: 0.32rem;
  line-height: 0.32rem;
  margin: 0;
  font-style: italic;
  color: var(--main);
}

/* PHOTO GALLERY */
.gallery_holder {
  width: 100%;
  background: #f0f0f0;
  float: left;
  margin: 6px 0 6px 0;
  padding: 0;
}

.gallery_holder a {
  text-decoration: none;
}

.gallery_holder a .title {
  text-align: left;
  margin: 2px 0;
  color: var(--main);
  text-decoration: none;
}

.gallery_holder a:hover .title {
  color: var(--main);
}

.gallery_holder a .description {
  color: hsl(0 0% 20%);
}

.gallery_holder img {
  background: hsl(0 0% 100%);
  border: 1px solid #bebebe;
  margin: 5px;
  float: left;
  padding: 2px;
  /*-moz-box-shadow: 0 0 3px #888;
	-webkit-box-shadow: 0 0 3px #888;
	box-shadow: 0 0 3px #888;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;*/
}

#before_after_gallery ul li {
  background: none;
  list-style: none;
  width: 100%;
  float: left;
  margin: 0px 0 10px 0;
  padding: 0;
}

#before_after_gallery ul li p {
  margin: 0px 0 6px 0;
}

#before_after_gallery ul li.last {
  margin: 0px 0 10px 0;
}

#before_after_gallery ul li .image_holder {
  float: left;
  width: 100%;
  margin: 0px 0 10px 0;
  background: #f0f0f0;
}

#before_after_gallery ul li .image_holder .banner {
  padding: 0px 0 0 10px;
}

#before_after_gallery ul li .image_holder .banner h3 {
  font-style: italic;
  margin: -5px 0 2px 0;
}

#before_after_gallery ul li .image_holder .thumbnails {
  width: 94%;
  padding: 3%;
  margin: 0;
  /*-moz-box-shadow: 0 0 3px #888;
	-webkit-box-shadow: 0 0 3px #888;
	box-shadow: 0 0 3px #888;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;*/
}

#before_after_gallery ul li .last {
  margin: 0;
}

/* TOGGLER */
h4.toggle,
h4.toggle.active.open {
  color: hsl(0 0% 20%);
  background: url(/assets/images/layout/toggle.png) no-repeat 10px 11px;
  padding: 8px 0 8px 35px;
  margin: 10;
  cursor: pointer;
}

h4.toggle.active,
h4.toggle.open {
  background-position: 10px -39px;
}

h4.toggle:hover,
h4.toggle.active.open:hover {
  background-position: 10px -39px;
}

div.toggler {
  border-top: none;
  margin: 0;
  overflow: hidden;
  padding: 0 0 0 24px;
}

div.toggler hr {
  border-top: 1px solid #f0f0f0;
}

div.toggler p {
  margin: 0;
  padding: 0;
}

/* VIDEO GALLERY */
#video_gallery {
  background: #f0f0f0;
  margin: 0 0 20px 0;
  padding: 4px 0 16px 6px;
}

#video_gallery ul {
  margin: 0px;
  padding: 0px;
}

#video_gallery ul li {
  background: none;
  display: inline-block;
  margin: 0px;
  padding: 0px;
  width: 228px;
}

#video_gallery ul li .vid_title {
  padding: 5px 10px;
  width: 208px;
  overflow: hidden;
  float: left;
  text-decoration: underline;
}

#video_gallery ul li a:hover .vid_title {
  text-decoration: none;
}

#video_gallery .thumbnails {
  background: hsl(0 0% 100%);
  border: 1px solid #f0f0f0;
  padding: 3px;
  margin: 10px 0 0 5px;
}

/* Photo Gallery Full */
#gallery_content2 {
  background: #f0f0f0;
  margin: 0 0 20px 0;
  padding: 4px 0 16px 6px;
}

#gallery_content2 ul {
  margin: 0px;
  padding: 0px;
}

#gallery_content2 ul li {
  background: none;
  display: inline;
  margin: 0px;
  padding: 0px;
}

#gallery_content2 .thumbnails {
  background: hsl(0 0% 100%);
  padding: 0;
  margin: 10px 1% 0 1%;
  width: 23%;
  height: auto;
}

/* Before and After */
#before_after_gallery ul {
  list-style: none;
}

#before_after_gallery ul li {
  background: none;
  width: 450px;
  float: left;
  margin: 0px 40px 20px 0;
  padding: 0;
}

#before_after_gallery ul li p {
  margin: 0px 0 6px 0;
}

#before_after_gallery ul li.last {
  margin: 0px 0 20px 0;
}

#before_after_gallery ul li .image_holder {
  float: left;
  margin: 0 1%;
  width: 48%;
  text-align: center;
}

#before_after_gallery ul li .image_holder h3 {
  font-style: normal;
  margin: 7px 0 9px 0;
  text-align: center;
}

#before_after_gallery ul li .image_holder .thumbnails {
  background: hsl(0 0% 100%);
  border: none;
  padding: 0;
  margin: 0 auto;
  width: 100%;
}

#before_after_gallery ul li .last {
  margin: 0;
}

/*
.twentytwenty-container img {
	height:100%;
}
*/
.gallery_container {
  display: flex;
  flex-wrap: wrap;
}

.gallery_item {
  width: 33.33%;
  padding: 2px;
}

/* PRODUCT STYLES */
.product_highlight {
  width: 100%;
  margin-bottom: 15px;
  background: #efefef;
}

.product_highlight .alert {
  float: right;
  color: #6d6d6d;
  margin: 5px 12px 0 0;
}

.product_highlight .strike {
  text-decoration: line-through;
}

.product_highlight .sale {
  color: #6d6d6d;
}

.product_highlight .holder {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.product_highlight .holder > a {
  width: calc(80% - 5px);
  text-decoration: none;
  text-align: center;
}

.product_highlight .holder .img_select {
  width: 20%;
  display: flex;
  justify-content: left;
  flex-direction: column;
}

.product_highlight .holder #img_title {
  font-style: normal;
  font-weight: 500;
}

.product_highlight .holder .img_select figure {
  width: 100%;
  margin: 0px 5px 5px 0px;
  cursor: pointer;
}

.product_highlight .holder .img_select > figure.active {
  box-shadow: 0px 0px 4px 0px #333;
}

.product_highlight .holder .img_select figure img {
  width: 100%;
}

.product-strip01 {
  padding-bottom: 30px;
}

.product-strip01 .content .product-title {
  text-align: center;
}

.product-strip01 .content .product-title::after {
  content: "";
  display: block;
  width: 50px;
  height: 4px;
  background: #838383;
  margin: 30px auto;
}

.product-strip01 .content .product_highlight {
  margin: 0;
  float: none;
  width: 100%;
  background: none;
  display: flex;
  justify-content: space-around;
}

.product-strip01 .content .product_highlight .holder {
  width: 45%;
  margin: 0px auto;
}

.product-strip01 .content .product_highlight .product_form {
  width: 45%;
}

.product-strip02 {
  padding-top: 30px;
  background: #f7f7f7;
}

@media screen and (max-width: 645px) {
  .product-strip01 .content .product_highlight {
    flex-direction: column;
  }
  .product-strip01 .content .product_highlight .holder,
  .product-strip01 .content .product_highlight .product_form {
    width: 100%;
  }
}

/* ------------ Pick-Up Delivery Styles ----------- */
.pickup-delivery {
  margin-bottom: 25px;
}

.pickup-delivery input {
  width: 20px;
  height: 20px;
  float: left;
  margin: 5px 10px 0 0;
}

.pickup-delivery label {
  position: relative;
  width: 100%;
  display: block;
  float: left;
  text-align: center;
  padding: 30px 20px;
  border-radius: 10px;
  background: #fdfbfb;
  margin: 0;
  font-size: 16px;
  overflow: hidden;
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  -ms-transition: all 0.35s ease-in-out;
  -o-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}

.pickup-delivery label:hover {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.15);
}

.pickup-delivery label input {
  opacity: 0;
  cursor: pointer;
}

.pickup-delivery label span.yes-no {
  width: 100%;
  display: block;
  margin: 50px 0 0 0;
}

.checkmark {
  position: absolute;
  top: 30px;
  left: calc(50% - 25px);
  height: 50px;
  width: 50px;
  background-color: #ededed;
  border-radius: 50%;
  cursor: pointer;
}

.pickup-delivery label:hover input ~ .checkmark {
  background-color: #ccc;
}

.pickup-delivery label input:checked ~ .checkmark {
  background: var(--main);
}

.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.pickup-delivery label input:checked ~ .checkmark:after {
  display: block;
}

.pickup-delivery label .checkmark:after {
  top: 10px;
  left: calc(50% - 15px);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: white;
}

/* PROPERTIES STYLES */
.properties_alert {
  background: rgba(53, 117, 225, 0.3);
  color: var(--main);
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  padding: 10px;
  margin: 0px 0 10px 0;
}

.properties_alert h2 {
  font-size: 0.36rem;
  margin: 0px;
  padding: 0px;
}

.properties_alert h5 {
  font-size: 0.24rem;
  margin: 0px;
  padding: 0px;
}

.properties_alert p {
  color: var(--main);
  margin: 0px;
  padding: 0px;
}

.properties_alert i {
  font-size: 1.2rem;
  color: var(--main);
  padding: 0px 15px 0 0;
  float: left;
}

.property_highlight {
  width: 100%;
  margin-bottom: 20px;
}

.property_highlight img {
  width: 100%;
  margin-bottom: 5px;
}

.property_highlight .alert {
  float: right;
  color: var(--main);
  margin: 5px 12px 0 0;
}

.property_highlight ul {
  background: #f0f0f0;
  margin: 0px;
  padding: 8px 5px 8px 5px;
}

.property_highlight ul li {
  background: none;
  margin: 0;
  padding: 0px 0 0 10px;
  list-style: none;
}

.property_highlight ul li .strike {
  text-decoration: line-through;
}

.property_highlight ul li .sale {
  color: var(--main);
}

.property_highlight ul.gallery {
  margin: 0;
  padding: 0;
}

.property_highlight ul.gallery li {
  margin: 0;
  padding: 0;
}

.properties_list {
  margin: 0;
}

.properties_list .title {
  margin: 0;
  padding-top: 15px;
  font-weight: normal;
  color: var(--main);
  border-top: 1px solid #f0f0f0;
}

.properties_list ul {
  margin: 0;
  padding: 5px 0 0 0;
}

.properties_list ul li {
  background: none;
  list-style: none;
  margin: 0px;
  padding: 2px 10px 2px 0;
  display: inline-block;
}

.properties_list ul li.title {
  display: block;
}

.properties_specs {
  margin: 20;
}

.properties_specs .title {
  margin: 0;
  font-weight: normal;
  color: var(--main);
}

.properties_specs ul {
  margin: 0;
  padding: 5px 0 0 0;
}

.properties_specs ul li {
  background: none;
  list-style: none;
  margin: 0px;
  padding: 2px 10px 2px 0;
  display: inline-block;
}

.property_location {
  margin: 0;
}

.property_location .address {
  background: #e9e9e9;
  padding: 8px 8px 8px 8px;
  margin-top: -6px;
}

.property_location .overlay {
  background: transparent;
  position: relative;
  width: 100%;
  height: 300px;
  /* your iframe height */
  top: 300px;
  /* your iframe height */
  margin-top: -300px;
  /* your iframe height */
}

.property_location iframe {
  margin: 0;
  border: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  -moz-border-radius: 0px;
  -webkit-border-radius: 0px;
  border-radius: 0px;
}

.properties_menu {
  background: #f0f0f0;
  margin: 0;
  padding: 0;
}

.properties_menu ul {
  margin: 0px 0 5px 0;
}

.properties_menu ul li {
  list-style: none;
  border-bottom: 1px solid #bebebe;
  box-shadow: 0 1px 0 hsl(0 0% 100%);
  color: var(--main);
  margin: 0px;
}

.properties_menu ul li i {
  padding: 10px 0 0 10px;
  font-size: 0.6rem;
  float: left;
}

.properties_menu ul li a {
  display: block;
  padding: 15px 0 15px 50px;
}

.properties_map_holder .properties_overlay {
  background: transparent;
  position: relative;
  width: 100%;
  height: 450px;
  /* your iframe height */
  top: 450px;
  /* your iframe height */
  margin-top: -450px;
  /* your iframe height */
}

.properties_map_holder .properties_map_overlay {
  background: transparent;
  position: relative;
  width: 100%;
  height: 450px;
  top: 450px;
  margin-top: -450px;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 104;
}

/* REVIEWS STYLES */
.widget_reviews {
  margin: 15px 0 0 0;
  padding: 15px 0 10px 0;
}

.widget_reviews ul.reviews {
  overflow: visible;
  position: relative;
  background: none;
  display: block;
  margin: 0;
}

.widget_reviews ul.reviews li {
  background: none;
  list-style: none;
  padding: 0;
  margin: 0;
}

.widget_reviews ul.reviews li p {
  letter-spacing: normal;
  text-transform: none;
  padding: 0;
  margin: 6px 0 0 0;
}

.widget_reviews ul.reviews li div.name {
  color: var(--main);
  font-size: 0.4rem;
  line-height: 0.4rem;
  margin-top: 5px;
  text-transform: uppercase;
  font-weight: 700;
}

span.star-rating-control {
  display: flex;
  gap: 8px;
}

div.rating-cancel {
  float: left;
  width: 17px;
  height: 15px;
  text-indent: -999em;
  cursor: pointer;
  display: none;
  background: transparent;
  overflow: hidden;
}

div.rating-cancel,
div.rating-cancel a {
  background: url(/assets/images/layout/form-stars-delete.png) no-repeat 0 -16px;
}

div.rating-cancel a {
  display: block;
  width: 16px;
  height: 100%;
  background-position: 0 0px;
  border: 0;
}

div.star-rating {
  float: none;
  width: 60px;
  height: 60px;
  text-indent: -999em;
  cursor: pointer;
  display: block;
  background: transparent;
  overflow: hidden;
}

div.star-rating,
div.star-rating a {
  background: url(/assets/images/layout/icon-star-grey.svg) center center
    no-repeat;
  background-size: cover;
}

div.star-rating a {
  display: block;
  width: 60px;
  height: 100%;
  border: 0;
}

div.star-rating-hover a,
div.star-rating-on a {
  background: url(/assets/images/layout/icon-star-colour.svg) center center
    no-repeat;
  background-size: cover;
}

/* Read Only CSS */
div.star-rating-readonly a {
  cursor: default !important;
}

/* Partial Star CSS */
div.star-rating {
  background: transparent !important;
  overflow: hidden !important;
}

/* END jQuery.Rating Plugin CSS */
div.rating-cancel {
  display: none !important;
}

/* IMPORT FONTS */
.timetable_clearfix:after {
  font-size: 0px;
  content: ".";
  display: block;
  height: 0px;
  visibility: hidden;
  clear: both;
}

.event_container strong {
  word-break: break-word;
}

/* --- lists --- */
.tt_tabs_navigation,
.tt_items_list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.tt_tabs {
  border: none !important;
}

.tt_tabs .ui-tabs-panel {
  padding: 0 !important;
}

/* --- timetable --- */
table.tt_timetable {
  width: 100%;
  font-size: 11px;
  color: #666;
  margin-top: 30px;
  border: none;
  letter-spacing: normal;
  font-size: 11px;
  line-height: normal;
  font-family: "Open Sans", sans-serif;
  border-collapse: separate !important;
  border-spacing: 2px !important;
  background: hsl(0 0% 100%) !important;
  table-layout: fixed;
}

table.tt_timetable * {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  border: none;
  padding: 0px;
}

.tt_timetable th,
.tt_timetable td {
  font-size: 13px;
  font-weight: normal;
  font-style: normal;
  line-height: normal;
  color: #545454;
  text-transform: none;
  border: none !important;
}

.tt_timetable th,
.tt_timetable td.tt_hours_column {
  text-align: center;
  vertical-align: middle;
}

.tt_timetable th {
  width: 12.5%;
  padding: 10px 15px 12px;
  letter-spacing: normal;
}

.tt_timetable .event_container {
  padding: 7px 5px;
}

.tt_timetable td {
  width: 12.5%;
  vertical-align: top;
  height: 10px;
  border: none;
  padding: 0;
  /*height: 100px;*/
  text-align: center;
  color: #d8d8d8;
}

.tt_timetable .hours {
  color: hsl(0 0% 100%);
  /*font-weight: bold;*/
}

.tt_timetable .event {
  background-color: var(--main);
  color: hsl(0 0% 100%);
  line-height: 140%;
  text-align: center;
  padding: 0 !important;
  vertical-align: middle;
}

.tt_timetable tr {
  background-color: hsl(0 0% 100%) !important;
}

.tt_timetable .row_gray {
  background-color: #ebebeb !important;
}

.tt_timetable.small {
  display: none;
  font-size: 13px;
  margin-bottom: 20px;
}

/* --- items list --- */
.tt_items_list {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.tt_items_list.margin_top {
  margin-top: 8px;
}

.tt_items_list li {
  padding: 12px 12px !important;
  margin: 0 !important;
  list-style: none !important;
  border-bottom: 1px solid hsl(0 0% 100%);
  background-position: left center;
  background-repeat: no-repeat;
  line-height: 120%;
  font-family: "Open Sans", sans-serif;
  background: var(--main);
  color: hsl(0 0% 100%);
}

.tt_items_list.thin a,
.tt_items_list.thin span {
  font-weight: normal;
}

.tt_items_list .value {
  float: right;
  color: hsl(0 0% 100%);
}

.tt_items_list li a:hover {
  text-decoration: underline;
}

/* --- tabs --- */
.tt-ui-tabs-hide {
  display: none;
}

.tt_tabs .ui-tabs-panel p {
  padding: 24px 0 25px;
}

/* --- tabs navigation --- */
.tt_tabs_navigation {
  float: none !important;
  clear: both;
  width: 100% !important;
  padding: 0;
  margin: 0;
  list-style: none !important;
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  background: none !important;
  border: none !important;
}

.tt_tabs_navigation li {
  float: left;
  margin: 0 20px 0 0 !important;
  padding: 0 !important;
  font-size: 18px !important;
  background: none !important;
  border: none !important;
  list-style: none !important;
}

.tt_tabs_navigation li:last-child {
  margin-right: 0 !important;
}

.tt_tabs_navigation li a {
  width: auto !important;
  display: block;
  text-align: center;
  color: #666 !important;
  padding: 8px 0 !important;
  border: none !important;
  border-bottom: 1px solid #e5e5e5 !important;
  line-height: normal;
  outline: none;
  text-decoration: none;
  font-size: 15px !important;
  font-family: "Open Sans", sans-serif;
  transition: none !important;
  margin-bottom: 1px;
}

.tt_tabs_navigation li a:hover,
.tt_tabs_navigation li a.selected,
.tt_tabs_navigation li.ui-tabs-active a {
  border-bottom-width: 3px !important;
  padding-bottom: 7px !important;
  border-color: var(--main) !important;
  color: hsl(0 0% 0%) !important;
  margin-bottom: 0;
}

.sf-timetable-menu a:hover,
.tt_tabs_navigation li a:hover,
.tt_tabs_navigation li a:focus,
.tt_tabs_navigation li a:active {
  text-decoration: none;
}

/* --- tabs box navigation --- */
.tabs_box_navigation.sf-timetable-menu {
  float: none;
  clear: both;
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
}

.tabs_box_navigation.sf-timetable-menu li.submenu:hover:after {
  background: none;
}

.schedule_print_button {
  font-family: "Open Sans", sans-serif;
  float: right;
  font-size: 18px;
}

.schedule_print_button a {
  text-decoration: none;
  color: var(--main);
}

.schedule_print_button a:hover {
  color: hsl(0 0% 20%);
}

/* RESPONSIVE STYLES*/
@media screen and (max-width: 1009px) {
  .tt_upcoming_events li a {
    padding: 10px;
  }
  .tt_event_items_list li.type_info {
    padding: 5px 0;
  }
  /* --- timetable --- */
  .tt_responsive .tt_timetable {
    margin-top: 23px;
  }
  .tt_responsive .tt_timetable th,
  .tt_responsive .tt_timetable .event_container,
  .tt_responsive .tt_tooltip .tt_tooltip_content {
    padding: 4px 4px 5px;
  }
  .tt_responsive .tt_timetable td {
    height: 18px;
  }
  .timetable_sidebar_box {
    margin-top: 40px;
  }
}

@media screen and (max-width: 767px) {
  /* --- timetable --- */
  .tt_responsive .tt_timetable {
    display: none;
  }
  .tt_responsive .tt_timetable.small {
    display: block;
  }
  .tt_responsive .tt_timetable.small .box_header {
    font-size: 16px !important;
    color: #545454 !important;
    background: #ebebeb;
    font-family: "Open Sans", sans-serif;
    margin: 6px 0px 0px;
    padding: 12px;
    border-bottom: 1px solid hsl(0 0% 100%);
  }
  .tt_responsive .tt_timetable.small .tt_items_list a,
  .tt_responsive .tt_timetable.small .tt_items_list span {
    width: 302px;
    font-family: "Open Sans", sans-serif;
    color: #545454 !important;
    text-decoration: none;
    outline: none;
  }
}

/* ---- Search ---- */
.with_bg {
  margin: 5px 0 3px 0;
}

.with_bg.icon2 {
  right: 44px !important;
}

.with_bg i {
  float: left;
  margin: 2px 5px 0 0;
  color: var(--main);
}

.with_bg .search_input {
  float: left;
  padding: 8px 1% 8px 2%;
  height: 50px;
  width: 75%;
  margin: 1px 1% 0 0;
  background-color: hsl(0 0% 100%);
  border: 1px solid #f0f0f0;
  outline: none;
  font-size: 16px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}

/* TOOL TIP STYLES
/* Icon */
a.tooltip {
  text-decoration: none;
  color: var(--main);
}

a.tooltip:hover {
  color: #222;
}

/* Box */
a.tooltip > span {
  color: hsl(0 0% 100%);
  background: var(--main);
  width: 200px;
  padding: 10px 15px;
  margin-top: 0;
  margin-left: -40px;
  /* Hidden Position */
  opacity: 0;
  visibility: hidden;
  z-index: 10;
  position: absolute;
  font-family: Arial;
  font-size: 12px;
  font-style: normal;
  border-radius: 0;
  -webkit-transition-property: opacity, margin-top, visibility, margin-left;
  -webkit-transition-duration: 0.4s, 0.3s, 0.4s, 0.3s;
  -webkit-transition-timing-function: ease-in-out, ease-in-out, ease-in-out,
    ease-in-out;
  transition-property: opacity, margin-top, visibility, margin-left;
  transition-duration: 0.4s, 0.3s, 0.4s, 0.3s;
  transition-timing-function: ease-in-out, ease-in-out, ease-in-out, ease-in-out;
}

a.tooltip:hover > span {
  opacity: 1;
  text-decoration: none;
  visibility: visible;
  overflow: visible;
  margin-top: 35px;
  display: inline;
  margin-left: -40px;
  /* Reveal Position */
}

/* Arrow */
a.tooltip span b {
  width: 15px;
  height: 15px;
  margin-left: 10px;
  margin-top: -15px;
  display: block;
  position: absolute;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background: var(--main);
}

@media (min-width: 960px) {
  .box_list .box {
    width: calc(33.33% - 10px);
  }
  .box_list .full {
    width: 100%;
    margin: 0 0% 10px;
    text-align: center;
  }
  .grid_list .grid_item {
    width: calc(33.33% - 10px);
  }
  hr {
    margin: 40px 0;
  }
  .content_container .content .editable_content img.people_image {
    float: left;
    margin: 0 10px 0 0;
  }
  .box_list .comment_box {
    width: 100%;
    margin: 0 0 10px 0;
  }
  .box_list .past_news {
    width: calc(50% - 10px);
    margin: 5px;
    text-align: left;
  }
  .mobile_register {
    display: none;
  }
  .full_register {
    display: inherit;
  }
  .events_editable_content {
    float: left;
    width: 60%;
  }
  .product_highlight {
    width: 35%;
    float: right;
    margin: 0 0 0 5%;
  }
  .form_holder textarea {
    width: 100%;
  }
  .form_holder select {
    width: 100%;
  }
  .grid_list .menu_item {
    width: calc(33.33% - 10px);
  }
  .filter_list ul li {
    width: calc(33.33% - 10px);
  }
  .property_highlight {
    width: 35%;
    float: right;
    margin: 0 0 10px 10px;
  }
  .properties_menu ul li {
    width: 25%;
  }
  .box_list .box ul.careers_list li {
    list-style-type: none;
    width: 33.3333%;
    float: left;
    background: none;
    margin: 10px 0 10px 0;
    padding: 0 10px 0 0;
  }
  .content ul.career li {
    width: 33.3333%;
  }
}

/* 600 pixel width */
@media (min-width: 600px) and (max-width: 960px) {
  .box_list .box {
    width: calc(50% - 10px);
    margin: 5px;
  }
  .box_list .full {
    width: 100%;
    margin: 0 0% 10px;
    text-align: center;
  }
  .grid_list .grid_item {
    width: calc(50% - 10px);
    margin: 5px;
  }
  .box_list .comment_box {
    width: 100%;
    margin: 0 0 10px 0;
  }
  .box_list .past_news {
    width: calc(50% - 10px);
    margin: 5px;
    text-align: left;
  }
  .grid_list .menu_item {
    width: calc(50% - 10px);
    margin: 5px;
    float: left;
  }
  .filter_list ul li {
    width: calc(50% - 10px);
    margin: 5px;
  }
  .showroom_list .box {
    width: calc(50% - 10px);
    margin: 5px;
  }
  .showroom_table ul li {
    width: calc(50% - 10px);
    margin: 5px;
  }
  .showroom_features_table ul li {
    width: calc(50% - 10px);
    margin: 5px;
  }
  .properties_menu ul li {
    border-right: 1px solid #f0f0f0;
    box-shadow: 1px 0 0 hsl(0 0% 100%);
    border-bottom: none;
    width: 50%;
    float: left;
  }
  .content ul.career li {
    width: 50%;
  }
}

@media (max-width: 767px) {
  .gallery_item {
    width: 50%;
    padding: 2px;
  }
}

/* Stackable Styles */
table.stacktable.large-only {
  display: table;
}

table.stacktable.small-only {
  display: none;
}

@media (max-width: 767px) {
  table.stacktable.large-only {
    display: none;
  }
  table.stacktable.small-only {
    display: table;
    margin-bottom: 10px;
  }
  .small-only tr td.st-key {
    background-color: var(--main);
    color: hsl(0 0% 100%);
    font-weight: bold;
  }
  table.stacktable.small-only::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin: 20px 0;
  }
  .editable_content table tr td.st-val {
    border-top: none;
  }
  .editable_content table tr {
    display: flex;
    flex-direction: column;
  }
  .editable_content table tr td.st-key {
    font-size: 15px;
    line-height: 25px;
    border: none;
    margin: 5px 0 0;
  }
  table.stacktable.small-only {
    margin: 0;
  }
  .stackable-table {
    margin-top: 20px;
  }
}

#logo-link-slider {
  overflow: hidden;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

#logo-link-slider .logo-link-slider-wrapper {
  display: block;
  width: 100%;
  position: relative;
}

#logo-link-slider .logo-link-slider-wrapper ul {
  position: relative;
  left: 0px;
  display: flex;
  justify-content: space-around;
  list-style: none;
}

#logo-link-slider .logo-link-slider-wrapper ul li {
  display: inline-block;
  position: relative;
  margin: 0px auto;
  width: 200px;
  height: 200px;
  line-height: 200px;
  text-align: center;
}

#logo-link-slider .logo-link-slider-wrapper ul li a img {
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  -webkit-transition: 0 linear left;
  -moz-transition: 0 linear left;
  transition: 0 linear left;
  opacity: 0.65;
  width: 100%;
}

.logo_link_static {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.logo_link_static a img {
  width: 200px;
}

/* Multi slide */
.logo_link_section {
  position: relative;
}

.swipe {
  overflow: hidden;
  visibility: hidden;
  position: relative;
}

.swipe_wrap {
  overflow: hidden;
  position: relative;
}

.swipe_wrap > div {
  float: left;
  width: 100%;
  position: relative;
}

#logo_swipe .fourth-width {
  width: 25%;
  margin: 0;
}

#logo_swipe .fourth-width img {
  width: 100%;
  height: auto;
}

#pagi_wrap {
  position: absolute;
  bottom: 15px;
  left: 0;
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
}

.pagi_box.active {
  background: var(--main);
}

.pagi_box {
  display: block;
  height: 15px;
  width: 15px;
  margin: 0 5px;
  border-radius: 50%;
  background: var(--light-color);
}

.cta-popup {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: hsl(0 0% 100%);
  max-width: 475px;
  width: 100%;
  padding: 20px;
  padding-top: 0;
  text-align: center;
  border: none;
  z-index: 99999;
  border-radius: 10px;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
}

span.close-popup {
  position: absolute;
  top: -12px;
  right: -12px;
  font-weight: 800;
  cursor: pointer;
  color: hsl(0 0% 100%) f;
  width: 25px;
  height: 25px;
  border: none;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  line-height: 14px;
  padding: 0 0 4px;
  background: #be1e2c;
}

span.close-popup:hover {
  background: #333;
}

.cta-popup h3 {
  font-size: 30px;
  line-height: 30px;
  color: hsl(0 0% 20%);
  text-transform: normal;
  letter-spacing: 2px;
  margin: 40px 0px 10px 0px;
}

.cta-popup h3::after {
  content: "";
  display: block;
  width: 50px;
  height: 3px;
  background: #be1e2c;
  margin: 13px auto;
}

.cta-popup p {
  color: hsl(0 0% 20%);
  font-size: 17px;
  line-height: 24px;
  font-weight: 500;
  margin: 8px 0px 15px 0px;
  letter-spacing: 0.5px;
}

.cta-popup pre {
  color: hsl(0 0% 20%);
  font-size: 1em;
  line-height: 1.5em;
  font-weight: 500;
  margin: 8px 0px 15px 0px;
  letter-spacing: 0.5px;
  white-space: pre-wrap;
  /* css-3 */
  white-space: -moz-pre-wrap !important;
  /* Mozilla, since 1999 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  word-wrap: break-word;
  /* Internet Explorer 5.5+ */
  width: 99%;
}

.cta-popup a.superbutton {
  font-family: Arial, sans-serif;
  font-size: 16px;
  line-height: 18px;
  color: hsl(0 0% 100%);
  padding: 10px 20px;
  margin: 5px 0 0 0;
  width: auto;
  height: auto;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  display: inline-block;
  float: none;
  text-decoration: none;
  text-shadow: none;
  border: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  letter-spacing: 2px;
  background-color: var(--main);
  transition: 0.3s ease;
}

.cta-popup a.superbutton:hover {
  background: #333;
  color: hsl(0 0% 100%);
}

@media screen and (max-width: 500px) {
  .cta-popup {
    width: calc(100% - 40px);
  }
}

/* 4. External Styles
********************/
body {
  overflow-x: hidden !important;
  width: 100%;
}
/* ---------- Reuseable Classes ---------- */
/* ----- Top Header ----- */
.top-header {
  background: var(--main);
  border-bottom: 1px solid hsl(23 100% 60%);
  padding: 10px 32px 7px;
}
.top-header .content {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
  align-items: center;
}
.top-header .content > ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 16px;
}
.top-header .content > ul li {
  font-size: 1.4rem;
  line-height: 1;
  text-transform: uppercase;
  color: var(--dark);
}
.top-header .content > ul li i{
  color: var(--dark);
}
.top-header .content > ul li a{
  color: var(--dark);
}
.top-header .content .social_media ul {
  gap: 16px;
}
.top-header .content .social_media ul li {
  margin: 0;
}
.top-header .content .social_media ul li a {
  width: 28px;
  height: 28px;
}
.top-header .content .social_media ul li a i {
  font-size: 1.2rem;
}
@media screen and (max-width: 960px) {
  .top-header {
    display: none;
  }
}
/* ----- Event List ------ */
.event-list .card h3 {
  margin: 0 0 0.4rem;
}
.event-list .card .date {
  color: var(--main);
  text-transform: uppercase;
  font-weight: 600;
  margin: 0 0 1.6rem;
}
.event-list .card ul.eventdata_list {
  margin: 0 0 1.6rem;
  color: var(--medium);
  border-top: 2px solid hsla(0 0% 0% / 0.1);
  border-bottom: 2px solid hsla(0 0% 0% / 0.1);
  padding: 0 0.8rem;
}
.event-list .card ul.eventdata_list li {
  border-top: 1px solid hsla(0 0% 0% / 0.1);
  padding: 0.8rem;
  color: var(--medium);
  font-size: 1.4rem;
}
.event-list .card ul.eventdata_list li:first-of-type {
  border: none;
}
/* ----- News List ----- */
.news-list .card h3 {
  margin: 0 0 0.4rem;
}
.news-list .card .date {
  color: var(--main);
  text-transform: uppercase;
  font-weight: 600;
  margin: 0 0 1.6rem;
}
/* ----- Swipe Styles ----- */
.content_container .content .swipe {
  overflow: visible;
  visibility: visible;
}
/* ----- Team List ----- */
.team-list h3 {
  margin: 0 0 0.4rem;
}
.team-list .job_title {
  color: var(--main);
  text-transform: uppercase;
  font-weight: 600;
  margin: 0 0 1.6rem;
}
/* ----- Team Member Page ----- */
.person-header {
  display: flex;
  gap: 48px;
  align-items: center;
  border-bottom: 4px solid hsla(0 0% 0% / 0.1);
  padding: 0 0 3.2rem;
  margin: 0 0 3.2rem;
}
.person-header img {
  max-width: 300px;
  width: 100%;
}
.person-header .person-content {
  width: calc(100% - 328px);
}
.person-header .person-content h1 {
  margin: 0 0 0.4rem;
}
.person-header .person-content .job_title {
  color: var(--main);
  text-transform: uppercase;
  font-weight: 600;
  margin: 0 0 1.6rem;
}
.person-header .person-content ul {
  list-style: none;
  margin: 0;
  padding: 0.8rem;
  border-top: 2px solid hsla(0 0% 0% / 0.1);
  border-bottom: 2px solid hsla(0 0% 0% / 0.1);
  display: flex;
}
.person-header .person-content ul li {
  border-left: 2px solid hsla(0 0% 0% / 0.1);
  padding: 0.4rem 1.6rem;
}
.person-header .person-content ul li:first-of-type {
  border: none;
  padding-left: 0;
}
.person-header .person-content ul li i {
  color: var(--main);
  margin: 0 0.4rem 0 0;
}
.person-header .person-content ul li a {
  color: var(--medium);
}
.person-header .person-content ul li a:hover {
  color: var(--main);
}
@media screen and (max-width: 960px) {
  .person-header {
    flex-direction: column;
    border: none;
    padding: 0;
  }
  .person-header .person-content {
    width: 100%;
  }
  .person-header .person-content ul {
    flex-direction: column;
    padding: 0;
  }
  .person-header .person-content ul li {
    padding: 0.8rem 1.6rem;
    border: none;
    border-top: 2px solid hsla(0 0% 0% / 0.1);
  }
  .person-header .person-content ul li:first-of-type {
    padding: 0.8rem 1.6rem;
  }
}
/* ----- Event Page ---- */
.event-header {
  margin: 0 0 3.2rem;
}
.event-header ul {
  padding: 0.8rem 0;
  border-top: 2px solid hsla(0 0% 0% / 0.1);
  border-bottom: 2px solid hsla(0 0% 0% / 0.1);
  display: flex;
  list-style: none;
}
.event-header ul li {
  border-left: 2px solid hsla(0 0% 0% / 0.1);
  padding: 0.4rem 1.6rem;
}
.event-header ul li:first-of-type {
  border: none;
  padding-left: 0;
}
.event-header ul li i {
  color: var(--main);
}
.event-location iframe {
  height: 500px;
}
@media screen and (max-width: 960px) {
  .event-header ul {
    flex-direction: column;
    padding: 0;
  }
  .event-header ul li {
    border: none;
    border-top: 2px solid hsla(0 0% 0% / 0.1);
    padding: 1.6rem 0.8rem;
  }
  .event-header ul li:first-of-type {
    padding: 1.6rem 0.8rem;
  }
  .event-location iframe {
    height: 300px;
  }
}
/* ----- Reviews ----- */
.review-name {
  margin: 2.4rem 0 0;
}
/* ----- FAQs ----- */
.faq-holder {
  background: var(--light);
  border-radius: 8px;
  border: 1px solid hsl(0 0% 90%);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.faq-holder .faq-block {
  margin: 0;
  background: hsl(0 0% 100%);
  border: 1px solid hsl(0 0% 90%);
  border-radius: 6px;
}
.faq-holder .faq-block h5.toggle_faq {
  margin: 0;
  padding: 16px 16px 16px 32px;
}
.faq-holder .faq-block h5.toggle_faq span.faq-icon {
  left: 8px;
  top: 21px;
}
.faq-holder .faq-block .toggler {
  border-top: 1px solid hsla(0 0% 90%);
  padding: 16px 16px 16px 32px;
}
/* ----- Careers ----- */
h1.career-title,
.career-list .card h3 {
  margin: 0 0 0.4rem;
}
.career-date,
.career-list .card .date {
  color: var(--main);
  text-transform: uppercase;
  font-weight: 600;
  margin: 0 0 1.6rem;
}
/* ----- Contact ----- */
ul.contact-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
ul.contact-list li ul.hours {
  margin: 0;
  padding: 0;
  list-style: none;
}
/* ----- Map Holder ----- */
.map-holder iframe {
  height: 500px;
}
@media screen and (max-width: 960px) {
  .map-holder iframe {
    height: 300px;
  }
}
/* ---------- New Base Styles ---------- */
/* ----- Form Styles ----- */

form {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  margin: 1.6rem 0 0;
}
form .full-width {
  width: 100%;
}
form .half-width {
  width: calc(50% - 0.8rem);
}
form .third-width {
  width: calc(33.3333% - 1.1rem);
}
form .quarter-width {
  width: calc(25% - 1.2rem);
}
@media screen and (max-width: 1024px) {
  form .half-width,
  form .third-width {
    width: 100%;
  }
  form .quarter-width {
    width: calc(50% - 0.8rem);
  }
}
@media screen and (max-width: 768px) {
  form .quarter-width {
    width: 100%;
  }
}
form label {
  display: block;
  margin: 0 0 0.4rem;
  font-size: 1.4rem;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 600;
}
form input,
form select,
form textarea {
  display: block;
  width: 100%;
  background: var(--light);
  border: none;
  border-bottom: 3px solid var(--dark);
  padding: 0.8rem;
  font-size: 1.6rem;
  color: var(--medium);
  line-height: 1.3rem;
}
form textarea {
  padding: 1.2rem 0.8rem;
}
section {
  padding: 9.6rem 0;
  background: white;
}
@media screen and (max-width: 1024px) {
  section {
    padding: 4.8rem 0;
  }
}
/* ----- Content Adjustments ----- */
.content > *:last-child,
.content .editable_content > *:last-child {
  margin-bottom: 0;
}
/* ----- Container Widths ----- */
.xlarge-width {
  max-width: 1920px;
  margin: 0 auto;
}
.large-width {
  max-width: 1366px;
  margin: 0 auto;
}
.medium-width {
  max-width: 1024px;
  margin: 0 auto;
}
.small-width {
  max-width: 768px;
  margin: 0 auto;
}
.xsmall-width {
  max-width: 560px;
  margin: 0 auto;
}
/* ----- Center Text ----- */
.center-text {
  text-align: center;
}
/* ----- Center List ----- */
.center-list {
  justify-content: center;
}
/* ----- Grey Background ----- */
.light {
  background: var(--light);
}
/* ----- Dark / Colour Background ----- */
.dark {
  background: var(--dark);
}
.medium {
  background: var(--medium);
}
.colour {
  background: var(--main);
}
.dark
  :is(
    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5,
    h6,
    .h6,
    ul li,
    ol li,
    p,
    pre
  ),
.medium
  :is(
    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5,
    h6,
    .h6,
    ul li,
    ol li,
    p,
    pre
  ){
    color: white;
  }
.colour
  :is(
    h1,
    .h1,
    h2,
    .h2,
    h3,
    .h3,
    h4,
    .h4,
    h5,
    .h5,
    h6,
    .h6,
    ul li,
    ol li,
    p,
    pre
  ) {
  color: var(--dark);
}
.colour a,
.medium a,
.dark a {
  color: white;
}
.colour hr,
.medium hr,
.dark hr {
  border-color: hsla(0 0% 100% / 0.15);
}
.medium :is(.btn, button),
.dark :is(.btn, button),
.colour :is(.btn, button) {
  background: white;
  color: var(--dark);
}
.colour :is(.btn:hover, button:hover) {
  background: var(--dark);
  color: white;
}
.medium :is(.btn:hover, button:hover),
.dark :is(.btn:hover, button:hover) {
  background: var(--main);
  color: white;
}
.colour form label,
.medium form label,
.dark form label {
  color: var(--dark);
}
.colour form input,
.colour form select,
.colour form textarea,
.medium form input,
.medium form select,
.medium form textarea,
.dark form input,
.dark form select,
.dark form textarea {
  background: hsla(0 0% 100% / 0.1);
  border-color: white;
  color: white;
}
/* ----- Reduced Padding ----- */
.reduced-padding {
  padding: 4.8rem 3.2rem;
}
/* ----- Subtitle Spacing -----*/
.subtitle-top :is(h5, .h5, h6, .h6) {
  margin: 0;
}
.subtitle-bottom :is(h1, .h1, h2, .h2, h3, .h3, h4, .h4) {
  margin: 0;
}
/* ----- Flex Columns Widths ----- */
.flex {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
}
.flex-six > * {
  width: calc(16.6666% - 1.5rem);
}
.flex-five > * {
  width: calc(20% - 1.4rem);
}
.flex-four > * {
  width: calc(25% - 1.2rem);
}
.flex-three > * {
  width: calc(33.3333% - 1.1rem);
}
.flex-two > * {
  width: calc(50% - 0.8rem);
}
@media screen and (max-width: 1024px) {
  .flex-six > * {
    width: calc(25% - 1.2rem);
  }
  .flex-five > * {
    width: calc(33.3333% - 1.1rem);
  }
  .flex-four > *,
  .flex-three > * {
    width: calc(50% - 0.8rem);
  }
  .flex-two > * {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .flex-four > *,
  .flex-three > * {
    width: 100%;
  }
  .flex-five > * {
    width: calc(50% - 0.8rem);
  }
  .flex-six > * {
    width: calc(33.3333% - 1.1rem);
  }
}
@media screen and (max-width: 560px) {
  .flex-five > * {
    width: 100%;
  }
  .flex-six > * {
    width: calc(50% - 0.8rem);
  }
}
/* ----- Flex Staggered Animations ----- */
.flex-two > *.animate,
.flex-three > *.animate,
.flex-four > *.animate,
.flex-five > *.animate,
.flex-six > *.animate {
  opacity: 0;
  transform: translateY(10rem);
  transition: 0.5s ease-in-out;
}
.flex-two > *.animate.show,
.flex-three > *.animate.show,
.flex-four > *.animate.show,
.flex-five > *.animate.show,
.flex-six > *.animate.show {
  opacity: 1;
  transform: translateY(0);
}
.flex-two > *.animate:nth-of-type(2n + 1),
.flex-three > *.animate:nth-child(3n + 1),
.flex-four > *.animate:nth-child(4n + 1),
.flex-five > *.animate:nth-child(5n + 1),
.flex-six > *.animate:nth-child(6n + 1) {
  transition-delay: 0s;
}
.flex-two > *.animate:nth-of-type(2n),
.flex-three > *.animate:nth-child(3n + 2),
.flex-four > *.animate:nth-child(4n + 2),
.flex-five > *.animate:nth-child(5n + 2),
.flex-six > *.animate:nth-child(6n + 2) {
  transition-delay: 0.15s;
}
.flex-three > *.animate:nth-child(3n),
.flex-four > *.animate:nth-child(4n + 3),
.flex-five > *.animate:nth-child(5n + 3),
.flex-six > *.animate:nth-child(6n + 3) {
  transition-delay: 0.3s;
}
.flex-four > *.animate:nth-child(4n),
.flex-five > *.animate:nth-child(5n + 4),
.flex-six > *.animate:nth-child(6n + 4) {
  transition-delay: 0.45s;
}
.flex-five > *.animate:nth-child(5n),
.flex-six > *.animate:nth-child(6n + 5) {
  transition-delay: 0.6s;
}
.flex-six > *.animate:nth-child(6) {
  transition-delay: 0.75s;
}
@media screen and (max-width: 1024px) {
  .flex-two > *.animate:nth-of-type(2n),
  .flex-three > *.animate:nth-child(3n + 2),
  .flex-four > *.animate:nth-child(4n + 2),
  .flex-five > *.animate:nth-child(5n + 2),
  .flex-three > *.animate:nth-child(3n),
  .flex-four > *.animate:nth-child(4n + 3),
  .flex-five > *.animate:nth-child(5n + 3),
  .flex-four > *.animate:nth-child(4n),
  .flex-five > *.animate:nth-child(5n + 4),
  .flex-five > *.animate:nth-child(5n),
  .flex-six > *.animate:nth-child(6n + 1),
  .flex-six > *.animate:nth-child(6n + 2),
  .flex-six > *.animate:nth-child(6n + 3),
  .flex-six > *.animate:nth-child(6n + 4),
  .flex-six > *.animate:nth-child(6n + 5),
  .flex-six > *.animate:nth-child(6) {
    transition-delay: 0s;
  }
}
/* ----- Standard Card ----- */
.card img {
  width: 100%;
  height: auto;
  margin: 0 0 0.8rem;
}
.card h3 {
  font-size: 2.4rem;
  line-height: 1;
}
.card h3 a:hover {
  color: var(--main);
}
.card h3,
.card p {
  margin: 0 0 1.6rem;
}
.card a.btn {
  margin: 0;
}
/* ----- Standard Box ----- */
.box {
  text-decoration: none;
  position: relative;
  line-height: 0;
}
.box img {
  width: 100%;
  height: auto;
}
.box h3 {
  margin: 0;
  font-size: 2.4rem;
  line-height: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0 auto auto 0;
  display: flex;
  align-items: flex-end;
  padding: 1.6rem;
  color: white;
  background: hsla(0 0% 20% / 0.5);
  transition: var(--animate);
}
.box:hover h3 {
  background: hsla(0 0% 20% / 0.8);
}
/* ----- Shadow List ----- */
.shadow-list > * {
  box-shadow: var(--shadow);
  border-radius: 1.6rem;
  background: #fff;
  overflow: hidden;
}
.shadow-list img {
  margin: 0;
}
.shadow-list .content-holder {
  padding: 1.6rem;
}
/* ----- Floating Image ----- */
.img-float .content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.img-float.img-right .content {
  flex-direction: row-reverse;
}
.img-float .content .img-holder {
  width: calc(33.3333% - 4.8rem);
  aspect-ratio: 4 / 6;
  background: url(/uploads/images/no-photo-450x600.jpg) center center no-repeat;
  background-size: cover;
}
.img-float .content .editable_content {
  width: calc(66.6666% - 4.8rem);
}
@media screen and (max-width: 1024px) {
  .img-float .content,
  .img-float.img-right .content {
    flex-direction: column;
    gap: 3.2rem;
    align-items: center;
  }
  .img-float .content .img-holder {
    max-width: 30rem;
    width: 100%;
  }
  .img-float .content .editable_content {
    width: 100%;
  }
}
/* ----- Faded Image ----- */
.img-fade {
  position: relative;
}
.img-fade .img-holder {
  width: calc(45% - 4.8rem);
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url(/uploads/images/no-photo-600x600.jpg) center center no-repeat;
  background-size: cover;
  z-index: 0;
}
.img-fade::after {
  content: "";
  width: calc(45% - 4.8rem);
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(to right, transparent, white 100%);
  z-index: 1;
}
.light.img-fade::after {
  background: linear-gradient(to right, transparent, var(--light) 100%);
}
.medium.img-fade::after {
  background: linear-gradient(to right, transparent, var(--medium) 100%);
}
.dark.img-fade::after {
  background: linear-gradient(to right, transparent, var(--dark) 100%);
}
.colour.img-fade::after {
  background: linear-gradient(to right, transparent, var(--main) 100%);
}
.img-fade.img-right .img-holder,
.img-fade.img-right::after {
  left: auto;
  right: 0;
}
.img-fade.img-right::after {
  background: linear-gradient(to left, transparent, white 100%);
}
.light.img-fade.img-right::after {
  background: linear-gradient(to left, transparent, var(--light) 100%);
}
.medium.img-fade.img-right::after {
  background: linear-gradient(to left, transparent, var(--medium) 100%);
}
.dark.img-fade.img-right::after {
  background: linear-gradient(to left, transparent, var(--dark) 100%);
}
.colour.img-fade.img-right::after {
  background: linear-gradient(to left, transparent, var(--main) 100%);
}
.img-fade .content {
  display: flex;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}
.img-fade.img-right .content {
  justify-content: flex-start;
}
.img-fade .content .editable_content {
  width: calc(55% - 4.8rem);
}
@media screen and (max-width: 1024px) {
  .img-fade {
    padding-top: 35rem;
  }
  .img-fade .img-holder,
  .img-fade::after {
    height: 30rem;
    width: 100%;
  }
  .img-fade::after,
  .img-fade.img-right::after {
    background: linear-gradient(to bottom, transparent, #fff 100%);
  }
  .light.img-fade::after,
  .light.img-fade.img-right::after {
    background: linear-gradient(to bottom, transparent, var(--light) 100%);
  }
  .medium.img-fade::after,
  .medium.img-fade.img-right::after {
    background: linear-gradient(to bottom, transparent, var(--medium) 100%);
  }
  .dark.img-fade::after,
  .dark.img-fade.img-right::after {
    background: linear-gradient(to bottom, transparent, var(--dark) 100%);
  }
  .colour.img-fade::after,
  .colour.img-fade.img-right::after {
    background: linear-gradient(to bottom, transparent, var(--main) 100%);
  }
  .img-fade .content .editable_content {
    width: 100%;
  }
}
/* ----- Background Image ----- */
.img-background {
  position: relative;
  background: url(/uploads/images/no-photo-600x450.jpg) center center no-repeat;
  background-size: cover;
}
.img-background::after {
  content: "";
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0.75;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.light.img-background::after {
  background: var(--light);
}
.medium.img-background::after {
  background: var(--medium);
}
.dark.img-background::after {
  background: var(--dark);
}
.colour.img-background::after {
  background: var(--main);
}
.img-background .content {
  position: relative;
  z-index: 1;
}
/* ----- Strip List ----- */
.strip-list-holder {
  padding: 0;
}
.strip-list {
  padding: 9.6rem 0;
  position: relative;
}
.strip-list:nth-of-type(2n) {
  background: var(--light);
}
.strip-list .img-holder {
  background: url(/uploads/images/no-photo-600x450.jpg) center center no-repeat;
  background-size: cover;
  width: 33.3333%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.strip-list:nth-last-of-type(2n) .img-holder {
  left: auto;
  right: 0;
}
.strip-list .content {
  display: flex;
  justify-content: flex-end;
}
.strip-list:nth-last-of-type(2n) .content {
  justify-content: flex-start;
}
.strip-list .content .editable_content {
  width: calc(66.6666% - 5rem);
}
@media screen and (max-width: 1024px) {
  .strip-list {
    padding: 30rem 0 5rem;
  }
  .strip-list .img-holder {
    width: 100%;
    height: 25rem;
  }
  .strip-list .content .editable_content {
    width: 100%;
  }
}
/* ----- Animations ----- */
.fadeFromLeft {
  opacity: 0;
  transform: translateX(-10rem);
  transition: 0.5s ease-in-out;
}
.fadeFromRight {
  opacity: 0;
  transform: translateX(10rem);
  transition: 0.5s ease-in-out;
}
.fadeFromTop {
  opacity: 0;
  transform: translateY(-10rem);
  transition: 0.5s ease-in-out;
}
.fadeFromBottom {
  opacity: 0;
  transform: translateY(10rem);
  transition: 0.5s ease-in-out;
}
.fadeFromLeft.show,
.fadeFromRight.show,
.fadeFromTop.show,
.fadeFromBottom.show {
  opacity: 1;
  transform: translateY(0);
}

/* ----- CUSTOM DROPDOWN STYLES ----- */
/*the container must be positioned relative:*/
.custom-select {
  position: relative;
  font-family: Arial;
}
.custom-select select {
  display: none; /*hide original SELECT element:*/
}
.select-selected {
  background-color: DodgerBlue;
}
/*style the arrow inside the select element:*/
.select-selected:after {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #fff transparent transparent transparent;
}
/*point the arrow upwards when the select box is open (active):*/
.select-selected.select-arrow-active:after {
  border-color: transparent transparent #fff transparent;
  top: 7px;
}
/*style the items (options), including the selected item:*/
.select-items div,
.select-selected {
  color: #ffffff;
  padding: 8px 16px;
  border: 1px solid transparent;
  border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent;
  cursor: pointer;
  user-select: none;
}
.select-selected {
  user-select: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  transition: all 0.35s ease-in-out;
  background: hsla(0 0% 100% / 0.1);
  border: none;
  color: white;
  border-radius: 0.4rem;
  margin: 0;
  padding: 5px 8px 5px 8px;
  font-size: 1.6rem;
  line-height: 1.4;
}
.select-selected.select-arrow-active {
  border-radius: 5px 5px 0 0;
}
.select-selected::after {
  background: url(/assets/images/layout/icon-chevron.svg) center center
    no-repeat;
  width: 30px;
  height: 30px;
  top: 1px;
  right: 3px;
  transition: all 0.35s ease-in-out;
  border: none;
  transform: rotate(-90deg);
  display: flex;
  background-size: auto 15px;
}
.select-selected.select-arrow-active::after {
  transform: rotate(90deg);
  top: 1px;
}
/*style items (options):*/
.select-items {
  position: absolute;
  background-color: var(--main);
  top: 100%;
  left: 0;
  right: 0;
  z-index: 99;
  border-radius: 0 0 4px 4px;
}
/*hide the items when the select box is closed:*/
.select-hide {
  display: none;
}
.select-items div:hover,
.same-as-selected {
  background-color: rgba(0, 0, 0, 0.1);
}
/* ---------- Custom Styles ---------- */
input[name="middle_name"] {
  position: absolute;
  left: -9999px;
}
/* ----- Banner Styles ----- */
.banner-container-constrained{
  height: calc(100svh - 122px);
  background: var(--light);
}
ul.ms-banner-constrained{
  height: 100%;
}
ul.ms-banner-constrained li{

}
ul.ms-banner-constrained li::after{
  display: none;
}
ul.ms-banner-constrained li .img-wrapper{
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
}
ul.ms-banner-constrained li .img-wrapper::before{
  content: '';
  background: url(/assets/images/layout/graphic-screw-half.svg) center left no-repeat;
  background-size: auto 100%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: -5px;
  z-index: 2;
}
ul.ms-banner-constrained li.banner-right .img-wrapper{
  left: 0;
  right: auto;
}
ul.ms-banner-constrained li.banner-right .img-wrapper::before{
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
  left: 5px;
}
ul.ms-banner-constrained li .img-wrapper::after{
  content: '';
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--dark);
  opacity: .25;
  position: absolute;
  z-index: 1;
}
ul.ms-banner-constrained li .img-wrapper img{
  object-fit: cover;
  width: 100%;
  height: 100%;
}
ul.ms-banner-constrained li .banner-details{
  height: 100%;
}
ul.ms-banner-constrained li .banner-details .banner-content::after{
  position: absolute;

}
ul.ms-banner-constrained li .banner-details .banner-content .h6{
  color: var(--main);
}
ul.ms-banner-constrained li .banner-details .banner-content .h1{
  font-size: clamp(5.6rem, 8vw, 10.4rem);
}
ul.ms-banner-constrained li .banner-details .banner-content p{
  color: var(--medium);
  max-width: 44rem;
}
ul.ms-banner-constrained li.banner-right .banner-details .banner-content p{
  margin-left: auto;
}
/* ----- Intro Strip ----- */
.intro-strip .content{
  position: relative;
  padding: 10rem 0;
  display: flex;
  justify-content: flex-end;
}
.intro-strip .content .img-wrapper{
  width: 45%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 1.6rem;
  background-image: url(/uploads/images/no-photo-600x600.jpg);
  background-position: center;
  background-size: cover;
}
.intro-strip .content .editable_content{
  width: 60%;
  padding: 2.4rem;
  border-radius: 1.6rem;
  background: white;
  box-shadow: var(--shadow);
  position: relative;
  z-index: 2;
}
/* ----- Why DMZ ----- */
.why-dmz {
  padding: 5rem 3rem;
}
.why-dmz .content{
  padding: 3.2rem;
  border-radius: 1.6rem;
  box-shadow: var(--shadow);
}
.why-dmz .grid{
  margin-bottom: 1.6rem;
}
.why-dmz .grid .column b{
  display: block;
  font-family: var(--font-comp);
  font-weight: 600;
  color: var(--dark);
  font-size: 2.4rem;
  text-transform: uppercase;
}
/* ----- Service Sections ----- */
.service-wrapper{
  padding: 0;
  display: flex;
}
.service-wrapper a{
  aspect-ratio: 4 / 3;
  width: 50%;
  background-image: url(/uploads/images/no-photo-600x600.jpg);
  background-size: cover;
  background-position: center;
  position: relative;
  padding: 1.6rem;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  text-decoration: none;
}
.service-wrapper a::after{
  content: '';
  width: 100%;
  height: 100%;
  background: var(--dark);
  opacity: .6;
  position: absolute;
  top: 0;
  left: 0;
  transition: var(--animate);
}
.service-wrapper a:hover::after{
  background: var(--main);
  opacity: .9;
}
.service-wrapper a h2{
  color: white;
  position: relative;
  z-index: 2;
  margin: 0;
}
.quote-cta{
  background-image: url(/assets/images/layout/image-hero.jpg);
  background-size: cover;
  background-position: center;
  position: relative;
}
.quote-cta::after{
  content: '';
  width: 100%;
  height: 100%;
  background: var(--dark);
  opacity: .75;
  position: absolute;
  top: 0;
  left: 0;
}
.quote-cta .content{
  position: relative;
  z-index: 2;
}
.map-holder{
  filter: grayscale(1);
}
.editable_content ul.contact-list{
  border-top: 3px solid hsla(0 0% 0% / .1);
  padding-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.editable_content ul.contact-list li{
  display: flex;
  gap: .8rem;
}
.editable_content ul.contact-list li i{
  color: var(--main);
}
/* .editable_content ul.contact-list li strong{
  font-family: var(--font-comp);
  font-weight: 300;
  text-transform: uppercase;
  line-height: .9;
  color: var(--dark);
  font-size: 2.8rem;
  letter-spacing: .1em;
} */
footer .content{
  flex-direction: column;
  gap: 2.4rem;
  align-items: center;
  text-align: center;
}
footer .content > div{
  width: 100%;
}
footer .content > div.sitemap ul{
  gap: 0;
  grid-template-columns: repeat(5, 1fr);
}
@media screen and (max-width: 960px){
  .banner-container-constrained{
    height: auto;
    background: var(--dark);
  }
  ul.ms-banner-constrained li .img-wrapper{
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
    position: initial;
  }
  ul.ms-banner-constrained li .img-wrapper::before{
    display: none;
  }
  .ms-banner-constrained li .banner-details.right, .ms-banner-constrained li .banner-details.left{
    position: relative;
    transform: none;
    top: auto;
    left: auto;
    height: auto;
    padding: 5rem 3rem;
  }
  ul.ms-banner-constrained li .banner-details .banner-content .h1,ul.ms-banner-constrained li .banner-details .banner-content p{
    color: white;
  }
  ul.ms-banner-constrained li .banner-details .banner-content p{
    margin: 0 auto;
  }
  ul.ms-banner-constrained li .banner-details .banner-content a.superbutton:hover{
    background: white;
    color: var(--dark);
  }
  .intro-strip .content .img-wrapper{
    width: calc(100% - 6rem);
    margin-left: 3rem;
    height: 300px;
  }
  .intro-strip .content{
    padding: 250px 0 0;
  }
  .intro-strip .content .editable_content{
    width: 100%;
  }
  .why-dmz{
    padding: 5rem 1.5rem;
  }
  .why-dmz .content{
    padding: 3.2rem 1.5rem;
  }
  footer .content > div.sitemap ul{
    display: flex;
    flex-direction: column;
    gap: .8rem;
    align-items: center;
  }
  .why-dmz .content .editable_content figure{
    margin: 0 auto 16px !important;
  }
}
@media screen and (max-width: 768px){
  .service-wrapper{
    flex-wrap: wrap;
  }
  .service-wrapper a{
    width: 100%;
  }
  .intro-strip .content .editable_content,
  .intro-strip{
    padding-inline: 1.5rem
  }
}