/* CSS Document */

/*	FORTHEA CORE PACKAGE
=================================================================================================
	jskaggs@forthea.com
  rmayo@forthea.com
*/


/*	Resets
============================================================================================== */
@font-face {
  font-family:'Sackers Gothic Std';
  src:url('/assets/fonts/SackersGothicStd-Heavy.woff2') format('woff2'),
    url('/assets/fonts/SackersGothicStd-Heavy.woff') format('woff');
  font-weight:900;
  font-style:normal;
  font-display:swap;
}
@font-face {
  font-family:'Golden Plains';
  src:url('/assets/fonts/GoldenPlains.woff2') format('woff2'),
    url('/assets/fonts/GoldenPlains.woff') format('woff');
  font-weight:normal;
  font-style:normal;
  font-display:swap;
}

:root {
  --color-black:#252525;
  --color-blue:#437696;
  --color-green:#326646;
  --color-orange:#e99259;
  --color-gray-10:#252525;
  --color-gray-20:#3f3f3f;
  --color-gray-30:#59595c;
  --color-gray-50:#808080;
  --color-gray-70:#c6c9cc;
  --color-gray-90:#e7ebef;
  --color-gray-95:#f5f7f9;
  --color-gray-98:#fafafa;
  --color-white:#ffffff;
  --color-cream:#f7f5f1;

  --color-primary:var(--color-blue);
  --color-secondary:var(--color-green);
  --color-accent:var(--color-orange);
  --color-trim:var(--color-black);

  --units-1:16px;
  --units-2:calc(var(--units-1) * 2);
  --units-3:calc(var(--units-1) * 3);
  --units-4:calc(var(--units-1) * 4);
  --units-5:calc(var(--units-1) * 5);
  --units-6:calc(var(--units-1) * 6);
  --units-7:calc(var(--units-1) * 7);

  --radius-default:calc(var(--units-1) * 1.5);

  --typeface-display:"Sackers Gothic Std", Helvetica, Arial, sans-serif;
  --typeface-accent:"Golden Plains", Helvetica, Arial, sans-serif;
  --typeface-default:"mrs-eaves-xl-serif", Times, serif;

  --font-size-1:var(--units-1);
  --font-size-2:calc(var(--font-size-1) * 1.18);
  --font-size-3:calc(var(--font-size-1) * 1.440);
  --font-size-4:calc(var(--font-size-1) * 1.728);
  --font-size-5:calc(var(--font-size-1) * 2.074);
  --font-size-6:calc(var(--font-size-1) * 2.488);
  --font-size-7:calc(var(--font-size-1) * 2.986);
  --font-size-neg-1:calc(var(--font-size-1) * 0.875);
  --font-size-neg-2:calc(var(--font-size-1) * 0.750);
}
::-webkit-scrollbar {
  display:block;
  width:7px;
  border-radius:20px;
}
::-webkit-scrollbar-track {
  background:transparent;
}
::-webkit-scrollbar-thumb {
  background-color:#e99259;
  border-radius:20px;
  border-right:none;
  border-left:none;
}
::-webkit-scrollbar-thumb:hover {
  background-color:#e99259;
}
::-webkit-scrollbar-track-piece:end {
  background:transparent;
  margin-bottom:5px;
}
::-webkit-scrollbar-track-piece:start {
  background:transparent;
  margin-top:5px;
}
*::-webkit-scrollbar-corner { background: transparent; }
html, body, h2, h3, h4, p, ul, li, form, fieldset, label, img, div {
	margin:0;
	padding:0;
	border:none;
	-webkit-text-size-adjust:none;
}
html, body {
	height:100%;
	min-height:100%;
	font-family:var(--typeface-default);
	font-size:var(--font-size-1);
	line-height:1.618em;
	color:var(--color-gray-30);
}
html { background:var(--color-gray-98); }
.panel *::selection,
.header *::selection,
.footer *::selection,
.banner *::selection,
.mainNav *::selection,
.excerpt .simplesearch-highlight {
  color:var(--color-gray-98);
  background:rgba(233, 146, 89, 0.75);
  /* WebKit/Blink Browsers */
}
.panel *::-moz-selection,
.header *::-moz-selection,
.footer *::-moz-selection,
.banner *::-moz-selection,
.mainNav *::-moz-selection,
.excerpt .simplesearch-highlight {
  color:var(--color-gray-98);
  background:rgba(233, 146, 89, 0.75);
  /* Gecko Browsers */
}
a[href^="tel"] { cursor:pointer; }
.centre {
  position:relative;
  margin:0 auto 0;
  padding:var(--units-5) var(--units-2) var(--units-5);
	max-width:1340px;
	z-index:10;
}
.id_28 .bg-white + .bg-white .centre { padding-top:0; }
hr {
  border:none;
  border-top:1px solid var(--color-gray-30);
  margin:30px 0;
}
hr:last-child {
  margin:50px 0 0;
}
.panel_accordion .centre { max-width:940px; }
.clearfix, .centre { zoom:1; }
.clearfix:before, .centre:before  { content:"\0020"; display:block; height:0; overflow:hidden; }
.clearfix:after, .centre:after { content:"\0020"; display:block; height:0; overflow:hidden; clear:both; }
.csst,
.csst:hover,
.csst *,
.csst *:hover,
.btn,
.btn:hover {
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.border-box {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.fauxlink, .fauxlink:hover { cursor:pointer; }
.elem-flip {
  -moz-transform:scaleX(-1);
  -o-transform:scaleX(-1);
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
  filter:FlipH;
  -ms-filter:"FlipH";
}
.skip { font-size:1px;position:fixed; }
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  color:var(--color-gray-10);
  font-family:var(--typeface-display);
  font-weight:600;
  letter-spacing:0.05em;
  margin:0 auto 0.6em;
  display:block;
}
h1, .h1 {
  font-size:var(--font-size-7);
  font-weight:900;
  line-height:1em;
  text-transform:uppercase;
  line-height:1.2;
}
h2, .h2 {
  font-size:var(--font-size-7);
  font-weight:900;
  text-transform:uppercase;
  line-height:1.2;
}
h2 .pre {
  font-family:var(--typeface-default);
  font-size:0.5em;
  font-weight:normal;
  font-style:italic;
  text-transform:uppercase;
  margin-bottom:15px;
  display:block;
}
h3, .h3 {
  font-size:var(--font-size-3);
  text-transform:uppercase;
}
h4, .h4 {
  font-size:var(--font-size-2);
  text-transform:uppercase;
}
h5, .h5 { font-size:var(--font-size-1); }
h6, .h6 { font-size:var(--font-size-1); font-weight:400; }
h1 span,
.h1 span {
  font-family:var(--typeface-accent);
  font-weight:400;
  text-transform:none;
  display:block;
}
p + h2, p + h3, p + h4, p + h5, p + h6,
p + .h2, p + .h3, p + .h4, p + .h5, p + .h6,
ul + h2, ul + h3, ul + h4, ul + h5, ul + h6,
ul + .h2, ul + .h3, ul + .h4, ul + .h5, ul + .h6,
ol + h2, ol + h3, ol + h4, ol + h5, ol + h6,
ol + .h2, ol + .h3, ol + .h4, ol + .h5, ol + .h6
{ margin-top:45px; }
.centre a,
.centre a:hover {
  text-decoration:none;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
input[type=text],
input[type=email],
input[type=number],
input[type=tel],
input[type=password],
select,
textarea {
	font-family:inherit;
	font-size:inherit;
	color:inherit;
}
.center { text-align:center; }
img, iframe { max-width:100%; }
img.framed {
  background:var(--color-white);
  padding:var(--units-1);
  border:1px solid var(--color-gray-70);
  box-shadow:3px 3px 7px rgba(0,0,0,0.10);
}
.wrapper { min-height:100%; }
.wrapper > div:last-child {padding-bottom:184px;}	/*  Sticky footer fix  */


/*	Base Classes
============================================================================================== */
.btn {
  font-family:var(--typeface-display);
  font-size:0.9em;
  font-weight:bold;
  letter-spacing:0.1em;
  text-transform:uppercase;
  text-align:center;
  border:1px solid var(--color-white);
  box-shadow:0 0 0 4px var(--color-green);
  min-width:160px;
  margin:1.618em auto 0;
  padding:0.75em 1.75em 0.55em;
  display:inline-block;
  position:relative;
  left:3px;
  cursor:pointer;
}
.btn:hover {
  cursor:pointer;
}
.btn.blue {
  color:var(--color-white) !important;
  background:var(--color-blue);
  box-shadow:0 0 0 4px var(--color-blue);
}
.btn.blue:hover {
  color:var(--color-white) !important;
  background:var(--color-orange);
  box-shadow:0 0 0 4px var(--color-orange);
}
.btn.orange {
  color:var(--color-white) !important;
  background:var(--color-orange);
  box-shadow:0 0 0 4px var(--color-orange);
}
.btn.orange:hover {
  color:var(--color-white) !important;
  background:var(--color-green);
  box-shadow:0 0 0 4px var(--color-green);
}
.btn.green,
.btn.default {
  color:var(--color-white) !important;
  background:var(--color-green);
}
.btn.green:hover,
.btn.default:hover {
  color:var(--color-white) !important;
  background:var(--color-orange);
  box-shadow:0 0 0 4px var(--color-orange);
}
.btn.white {
  color:var(--color-blue) !important;
  background:var(--color-white);
  border-color:var(--color-blue);
  box-shadow:0 0 0 4px var(--color-white);
}
.btn.white:hover {
  color:var(--color-orange) !important;
  background:var(--color-white);
  border-color:var(--color-orange);
  box-shadow:0 0 0 4px var(--color-white);
}
.btn.ghost {
  color:var(--color-green) !important;
  background:transparent;
  border-color:var(--color-green);
  box-shadow:0 0 0 4px var(--color-white), 0 0 0 5px var(--color-green);
}
.bg-cream .btn.ghost {
  box-shadow:0 0 0 4px var(--color-cream), 0 0 0 5px var(--color-green);
}
.btn.ghost:hover {
  color:var(--color-orange) !important;
  background:transparent;
  border-color:var(--color-orange);
  box-shadow:0 0 0 4px var(--color-white), 0 0 0 5px var(--color-orange);
}
.bg-cream .btn.ghost:hover {
  box-shadow:0 0 0 4px var(--color-cream), 0 0 0 5px var(--color-orange);
}
.panel.dark .btn.ghost {
  color:var(--color-white) !important;
  background:transparent;
  border-color:var(--color-white);
  box-shadow:0 0 0 4px transparent;
}
.panel.dark .btn.ghost:hover {
  color:var(--color-orange) !important;
  background:transparent;
  border-color:var(--color-orange);
  box-shadow:0 0 0 4px transparent;
}
.panel.bg-blue .btn.ghost {
  box-shadow:0 0 0 4px var(--color-blue), 0 0 0 5px var(--color-white);
}
.panel.bg-blue .btn.ghost:hover {
  box-shadow:0 0 0 4px var(--color-blue), 0 0 0 5px var(--color-orange);
}
.panel.bg-green .btn.ghost {
  box-shadow:0 0 0 4px var(--color-green), 0 0 0 5px var(--color-white);
}
.panel.bg-green .btn.ghost:hover {
  box-shadow:0 0 0 4px var(--color-green), 0 0 0 5px var(--color-orange);
}


.btn.mini {
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1px;
}
p + .btn,
ol + .btn,
ul + .btn { margin-top:0; }
.btn .fa,
.btn .fas,
.btn .fab {
	margin:0 0.33em;
	font-size:0.9em;
	vertical-align:baseline;
}
.btn.mini .fa,
.btn.mini .fas,
.btn.mini .fab {}




/*	LAYOUT
============================================================================================== */

/*	Header
============================================================================================== */
.header {
	background:var(--color-white);
  position:fixed;
  top:0;
  width:100%;
  height:90px;
  z-index:200;
	opacity:1;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header.fixed {
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header:hover,
.header.fixed:hover {
	opacity:1;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header .centre {
  height:100%;
}
.header .logo {
  display:block;
  position:absolute;
  top:50%;
  left:2em;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.header .logo img {
  display:block;
  width:auto;
  height:50px;
  opacity:0;
}
.header .logo:hover {
  opacity:0.8;
  filter:alpha(opacity=80); // IE 5-9
}
.header .phone {
  color:var(--color-orange);
  font-family:var(--typeface-display);
  font-size:var(--font-size-1);
  text-decoration:none;
  border-right:1px solid rgba(0,0,0,0.2);
  border-left:1px solid rgba(0,0,0,0.2);
  height:40px;
  line-height:40px;
  margin:25px 0 0 20px;
  padding:0 30px;
  display:block;
  float:right;
}
.header .phone:hover {
	color:#3D7D56;
}
.header .fa-search {
  color:var(--color-gray-30);
  font-size:20px;
  height:40px;
  line-height:36px;
  margin:25px 0 0;
  padding:0 30px;
  display:block;
  float:right;
}
.header .fa-search:hover {
  color:var(--color-orange);
}
.jbmodal-search {
  position:relative;
  width:auto;
}
.jbmodal-search input[type=text] {
  display:block;
  height:2.75em;
  width:100%;
  margin:0;
  padding:0.75em 1em;
  outline:none;
  color:var(--color-black);
  background:var(--color-gray-90);
  border:1px solid var(--color-gray-70);
  font-family:inherit;
  font-size:1em;
  line-height:1.2em;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.jbmodal-search input[type=text]:focus {
  border:1px solid var(--color-secondary);
}
.jbmodal-search input[type=submit] {
  height:2.25em;
  width:2.25em;
  line-height:2.25em;
  position:absolute;
  top:0.25em;
  left:auto;
  right:0.25em;
  text-align:center;
  color:transparent;
  background:transparent;
  border:0;
  opacity:0;
  z-index:2;
  cursor:pointer;
}
.jbmodal-search i.fa {
  height:2.25em;
  width:2.25em;
  line-height:2.25em;
  position:absolute;
  top:0.25em;
  left:auto;
  right:0.25em;
  text-align:center;
  color:var(--color-white);
  background:var(--color-secondary);
  border:0;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.jbmodal-search input[type=submit]:hover+i.fa {
  color:var(--color-white);
  background:var(--color-orange);
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.header > .fa-bars,
.header > .fa-times {
  color:var(--color-green);
  font-size:22px;
  text-align:center;
  height:40px;
  line-height:36px;
  margin:25px 0 0;
  padding:0px 30px;
  float:right;
  cursor:pointer;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.header > .fa-times { display:none; }
.jbmodal-box { border-radius:0; }

/*	Nav
============================================================================================== */
.mainNav {
  position:relative;
  margin:0;
  float:right;
  z-index:1000;
}
.mainNav a,
.mainNav span { 
  text-decoration:none; 
  text-transform:uppercase;
}
/* First Level Nav */
.mainNav ul {
  font-size:0;
  font-family:var(--typeface-display);
  font-weight:700;
  margin:0;
}
.mainNav>ul>li {
  font-size:12px;
  letter-spacing:0.15em;
  margin:0;
  display:inline-block;
  position:relative;
}
.mainNav li.id_1 { display:none; }
.mainNav>ul>li>a,
.mainNav>ul>li>span {
  color:var(--color-gray-30);
  height:90px;
  line-height:93px;
  margin:0;
  padding:0 1em;
  display:inline-block;
  position:relative;
}
.mainNav>ul>li>a:hover {
  color:var(--color-orange);
}
.mainNav>ul>li.parent>a:after,
.mainNav>ul>li.parent>span:after {
  display:inline-block;
	-moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 7 Pro";
	font-weight:900;
  content:"\f0d7";
  position:absolute;
  left:50%;
  margin-left:-5px;
  bottom:18px;
  font-size:14px;
  height:10px;
  line-height:10px;
  color:rgba(255,255,255,0.4);
  width:14px;
  text-align:center;
}
.mainNav>ul>li.parent:hover>a:after,
.mainNav>ul>li.parent:hover>span:after {
  color:rgba(255,255,255,0.8);
}
/* Second Level Nav */
.mainNav>ul>li>ul {
  display:none;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  background:var(--color-green);
  width:220px;
  border:0px solid #000;
  border-top:0;
  position:absolute;
  top:90px;
  left:-1px;
  z-index:10;
}
.mainNav>ul>li:hover>ul {
  display:block;
}
.mainNav>ul>li:last-child>ul {
  left:auto;
  right:-1px;
}
.mainNav>ul>li>ul>li {
  border-top:1px solid rgba(255,255,255,0.1);
	line-height:1em;
  margin:0;
  position:relative;
}
.mainNav>ul>li>ul>li:first-child {
  border-top:0;
}
.mainNav>ul>li>ul>li>a {
  font-size:12px;
  color:var(--color-white);
  line-height:1.2;
  font-weight:300;
  padding:16px 20px 15px;
  display:block;
}
.mainNav>ul>li>ul>li>a:hover {
  color:var(--color-white);
  background:var(--color-gray-20);
}
.mainNav>ul>li>ul>li.parent>a:after,
.mainNav>ul>li>ul>li.parent>span:after {
  display:inline-block;
	-moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 7 Pro";
	font-weight:900;
  content:"\f0da";
  position:absolute;
  right:5px;
	top:50%;
  margin-top:-5px;
  font-size:14px;
  height:10px;
  line-height:10px;
  color:rgba(255,255,255,0.4);
  width:14px;
  text-align:center;
}
.mainNav>ul>li>ul>li.parent:hover>a:after,
.mainNav>ul>li>ul>li.parent:hover>span:after {
  color:rgba(255,255,255,0.8);
}
/* Third Level Nav */
/* .mainNav>ul>li>ul>li>ul {
  display:none;
  position:absolute;
  top:0;
  left:100%;
  background:#222c33;
  width:210px;
  z-index:10;
  border-left:1px solid rgba(255,255,255,0.1);
  border-top:0;
}
.mainNav>ul>li>ul>li:hover>ul {
  display:block;
}
.mainNav>ul>li>ul>li>ul>li {
	position:relative;
  margin:0;
  border-top:1px solid rgba(255,255,255,0.1);
}
.mainNav>ul>li>ul>li>ul>li:first-child {
  border-top:0;
}
.mainNav>ul>li>ul>li>ul>li>a {
  display:block;
  padding:10px 20px;
  font-size:16px;
  color:#fafafa;
  line-height:1em;
  font-weight:100;
  text-decoration:none;
}
.mainNav>ul>li>ul>li>ul>li>a:hover {
  background:#00b5dc;
  color:#fafafa;
  text-decoration:none;
} */
.mainNav li .trigger {
  position:relative;
  left:-8px;
}
.mainNav li .trigger:before { 
  content:"\f107";
}

@media only screen and (min-width:1300px) and (max-width:1600px) {
  .header .logo img {
    height:40px;
  }
  .mainNav>ul>li {
    font-size:11.5px;
    letter-spacing:0.1em;
  }
  .mainNav>ul>li>a,
  .mainNav>ul>li>span {
    padding:0 0.85em;
  }
  .header .phone {
    font-size:14px;
    margin-left:10px;
    padding:0 15px;
  }
  .header .fa-search {
    font-size:16px;
    padding:0 15px 0;
  }
}
@media only screen and (min-width:1300px) and (max-width:1300px) {
  .mainNav>ul>li {
    font-size:10.4px;
  }
}

/* Search Results */
.id_7 .panel_content_plain .centre > .content:before { content:none; }

.simplesearch-results {
  margin-bottom:2em !important;
}
.simplesearch-highlight {
  letter-spacing:0.01em;
  -webkit-font-smoothing:antialiased;
}
.simplesearch-result {
  border-bottom:1px solid var(--color-gray-90);
  padding:25px 0;
}
.simplesearch-result:first-child {
  border-top:1px solid var(--color-gray-90);
}
.simplesearch-result h3 {
  font-style:normal;
  text-align:left;
  margin-bottom:15px;
}
.panel .simplesearch-result h3 a {
  color:var(--color-secondary);
  font-style:normal;
  border-bottom:none;
}
.panel .simplesearch-result:hover {
  cursor:pointer;
}
.panel .simplesearch-result:hover a,
.panel .simplesearch-result:hover .link {
  color:var(--color-accent);
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
  cursor:pointer;
}

.simplesearch-paging {
  font-size:0;
  margin:30px 0;
}
.simplesearch-result h3:last-child,
.simplesearch-paging:last-child {
  margin-bottom:0;
}
.pageList li,
.simplesearch-paging span {
  font-size:14px;
  vertical-align:middle;
  display:inline-block;
}
.simplesearch-page {
  margin:0 10px;
}
.pageList li+li {
  margin-left:10px;
}
.pageList li.prev {
  margin-right:3px;
}
.pageList li.next {
  margin-left:13px;
}
.pageList li.first,
.pageList li.last {
  display:none;
}
.pageList li a,
.simplesearch-page a,
.simplesearch-current-page {
  color:var(--color-gray15) !important;
  font-weight:normal !important;
  font-style:normal !important;
  text-align:center;
  border:1px solid var(--color-green) !important;
  border-radius:var(--radius-default);
  line-height:39px;
  height:40px;
  width:40px;
  display:inline-block;
}
.pageList li a.active,
.simplesearch-current-page {
  color:var(--color-white) !important;
  font-weight:bold;
  background:var(--color-green);
  pointer-events:none;
}
.pageList li a:hover,
.simplesearch-page a:hover {
  color:var(--color-white) !important;
  background:var(--color-green);
  border-color:var(--color-green) !important;
  cursor:pointer;
}
.pageList li.control a {
  line-height:43px;
}
.pageList li i {
  font-size:20px;
}
.pageList li.control i:before,
.pageList li.control i:after {
  color:var(--color-brown) !important;
}
.pageList li a:hover i:before,
.pageList li a:hover i:after {
  color:var(--color-white) !important;
}


/*	Footer
============================================================================================== */
.footer {
  color:var(--color-white);
  font-size:13px;
  background:var(--color-green);
  margin:-184px 0 0 0;
  position:relative;
  overflow:hidden;
}
.footer:before {
  content:"";
  background:url(/assets/images/theme/footer-graphic.png) center center/294px 266px no-repeat;
  height:266px;
  width:294px;
  display:block;
  position:absolute;
  top:-20px;
  right:-20px;
}
.footer .centre {
  padding-top:50px;
  padding-bottom:50px;
}
.footer .logo {
  border-right:1px solid rgba(0,0,0,0.25);
  width:240px;
  margin-right:70px;
  padding-right:70px;
  vertical-align:middle;
  display:inline-block;
	position:relative;
}
.footer .content {
  width:70%;
  width:calc(100% - 320px);
  vertical-align:middle;
  display:inline-block;
}
.footer .left,
.footer .loc,
.footer .hours {
  float:left;
}
.footer .right {
  float:right;
}
.footer .social {
  font-size:18px;
}
.footer .social a {
  color:var(--color-white);
  text-align:center;
  line-height:20px;
  background:rgba(0,0,0,0.25);
  border-radius:100%;
  line-height:34px;
  height:32px;
  width:32px;
  margin:0 8px;
  display:inline-block;
}
.footer .social a:first-child { margin-left:0; }
.footer .links { margin:20px 0 40px; }
.footer .links a {
  font-family:var(--typeface-display);
  font-size:0.85em;
  text-transform:uppercase;
  letter-spacing:0.05em;
  line-height:1.2;
  margin-bottom:8px;
  display:block;
}
.footer .social i { display:inline-block; }
.footer .phone,
.footer .social a,
.footer .links a { color:var(--color-white); }
.footer .phone:hover,
.footer .links a:hover { color:var(--color-orange); }
.footer .social a:hover { background:var(--color-orange); }
.footer .copy {
  line-height:1.4;
  clear:both;
}
.footer .equal {
  margin-left:5px;
  display:inline-block;
}
.footer .equal img {
  height:12px;
  margin-right:5px;
  display:inline-block;
}

.loc .title,
.hours .title {
  font-family:var(--typeface-accent);
  font-size:2em;
  margin-bottom:15px !important;
}
.loc .address,
.hours .dt {
  font-size:16px;
  font-style:italic;
  text-align:left;
  position:relative;
}
.panel_map .hours { margin-top:30px; }
.footer .address {
  margin-bottom:15px;
}
.footer .address:before,
.footer .phone:before,
.footer .dt:before {
  font-family:"Font Awesome 7 Pro";
  font-weight:900;
  font-size:16px;
  font-style:normal;
  text-align:center;
  width:24px;
  display:block;
  position:absolute;
  top:0;
  left:-28px;
}
.footer .address:before {
  content:"\f3c5";
}
.footer .phone:before {
  content:"\f095";
}
.footer .dt:before {
  content:"\f017";
}
.footer .phone {
  font-family:var(--typeface-display);
  text-decoration:none;
  text-align:left;
  display:block;
  position:relative;
}
.footer .phone:hover {
  color:var(--color-orange);
}
.footer .hours { margin-left:100px; }
.hours .dt span { display:block; }
.hours .dt strong { width:70px; display:inline-block; }


/*	Banner
============================================================================================== */
.banner {
  background-color:var(--color-gray-50);
  text-align:center;
  height:600px;
	margin:0;
  padding:90px 0 0;
  position:relative;
	z-index:2;
  overflow:hidden;
}
.banner-home {
  background-color:var(--color-black);
  height:800px;
}
.banner .centre {
  padding:var(--units-6) var(--units-2) var(--units-5);
}
.banner-home .centre {
  padding-top:10%;
  padding-bottom:0;
}
.banner video {
  min-width:100%;
  min-height:150%;
  position:absolute;
  left:50%;
  top:50%;
  transform:translateY(-50%) translateX(-50%);
}
.banner .bg {
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:url(/assets/images/bg-banner.jpg) center center;
  -webkit-background-size:cover;
  -moz-background-size:cover;
  -o-background-size:cover;
  background-size:cover;
  z-index:-2;
  opacity:0.75;
}
.banner-home .bg {
  top:90px;
  opacity:0.9;
}
.banner h1,
.banner .h1 {
  color:var(--color-white);
  font-size:60px;
  text-shadow:0 0 10px rgba(0,0,0,0.1),1px 1px 1px rgba(0,0,0,0.25);
  width:calc(100% - 2em);
  margin:0;
  position:absolute;
  top:57%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.banner-home h1,
.banner-home .h1 {
  line-height:0.9;
	margin:0 auto 30px;
  position:relative;
  top:auto;
  left:auto;
  transform:none !important;
  -moz-transform:none !important;
  -webkit-transform:none !important;
}
.banner .intro {
  color:var(--color-white);
  font-size:13px;
  font-family:var(--typeface-display);
  text-shadow:0 0 10px rgba(0,0,0,0.1),1px 1px 1px rgba(0,0,0,0.25);
  text-align:center;
  text-transform:uppercase;
  letter-spacing:0.05em;
	width:440px;
	max-width:100%;
	margin:0 auto 30px;
}
.banner .scroll {
  text-align:center;
  position:absolute;
  bottom:50px;
  left:50%;
  transform:translateX(-50%);
  -moz-transform:translateX(-50%);
  -webkit-transform:translateX(-50%);
  z-index:2;
  overflow:visible;
  cursor:pointer;
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {transform:translateY(0);}
  50% {transform:translateY(-10px);}
}
.banner .scroll .icon {
  border:3px solid var(--color-white);
  border-radius:100%;
  -moz-border-radius:100%;
  -webkit-border-radius:100%;
  box-shadow:0 0 20px rgba(0,0,0,0.3);
  -moz-box-shadow:0 0 20px rgba(0,0,0,0.3);
  -webkit-box-shadow:0 0 20px rgba(0,0,0,0.3);
  display:inline-block;
  animation:bounce 2s ease infinite;
}
.banner .scroll i {
  color:var(--color-green);
  font-size:42px;
  background:var(--color-white);
  border:1px solid var(--color-green);
  border-radius:100%;
  -moz-border-radius:100%;
  -webkit-border-radius:100%;
  height:64px;
  line-height:64px;
  width:64px;
  display:inline-block;
}
.banner .scroll:hover i {
  color:var(--color-orange);
  border-color:var(--color-orange);;
}
.banner .scroll .text {
  color:var(--color-white);
  font-family:var(--typeface-display);
  font-size:0.8em;
  font-weight:700;
  text-transform:uppercase;
  text-shadow:0 0 10px rgba(0,0,0,0.3), 0 0 3px rgba(0,0,0,0.3);
  letter-spacing:0.1em;
  margin-top:10px;
  display:block;
}

/* Grand Opening page customization */
.banner.go {
  height:auto;
  padding-bottom:70px;
}
.banner.go .logo {
  text-align:center;
  background:var(--color-green);
  width:360px;
  margin:0 auto;
  padding:40px;
  display:block;
  position:relative;
  z-index:1;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.banner.go .logo img {
  width:180px;
  display:inline-block;
}
.banner.go .h1-wrap {
  text-align:center;
  background:var(--color-cream);
  border:10px solid var(--color-green);
  max-width:94%;
  margin:-250px auto 0;
  padding:300px 75px 50px;
  display:inline-block;
  position:relative;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.banner.go .h1-wrap h1 {
  color:var(--color-green);
  text-shadow:none;
  display:inline-block;
  position:relative;
  top:auto;
  left:auto;
  transform:none;
}
.banner.go .h1-wrap h1 span {
  font-size:1.75em;
}
@media only screen and (max-width:1299px) {
  .id_29 .panel_content_columns .columns {
    justify-content:center;
  }
  .id_29 .columns.count-3 .item:last-child:before{
    content:none;
  }
}
@media only screen and (max-width:1023px){
  .id_29 h2 br { display:none; }
  .id_29 .columns.count-3 .item ul { width:170px; }
  .id_29 .columns.count-3 .item li { text-align:left !important; }
}
@media only screen and (max-width:539px){
  .id_29 .columns.count-3 iframe { height:710px !important; }
}

/* ScrollNav */
.scrollNav {
  text-align:center;
  background:var(--color-green);
  width:100%;
  padding:0 2em;
  position:relative;
  z-index:99;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.scrollNav.fixed {
  border-bottom:1px solid rgba(0,0,0,0.25);
  position:fixed;
  top:90px;
}
.scrollNav .inner {
  text-align:center;
  padding:20px 0 16px;
  overflow-x:scroll;
  white-space:nowrap;
}
.scrollNav .inner::-webkit-scrollbar {
  height:3px;
  border-radius:20px;
}
.scrollNav .inner::-webkit-scrollbar-thumb {
  background-color:#e99259;
}
.scrollNav .inner::-webkit-scrollbar-thumb:hover {
  background-color:#e99259;
}
.panel .content .link,
.scrollTo {
  color:var(--color-white);
  font-family:'Sackers Gothic Std';
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:0.15em;
  white-space:nowrap;
  cursor:pointer;
}
.panel .content .link,
.panel .content .scrollTo { color:var(--color-accent); }
.scrollTo + .scrollTo { margin-left:30px; }
.scrollTo:hover { color:var(--color-orange); }

/* Crumbs - NOT IN USE */
.crumbContainer {
	margin:0 100px;
	text-align:center;
	font-size:0;
  display:none !important;
}
.crumbContainer .crumb {
	font-size:13px;
	color:rgba(255,255,255,0.75);
	font-weight:100;
}
.crumbContainer .crumb:after {
  display:inline-block;
	-moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:inline-block;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 7 Pro";
	font-weight:900;
  content:"\f101";
}
.crumbContainer .crumb.current:after {
	content:"";
}
.crumbContainer .crumb.current{
	padding:0 1em;
	color:rgba(255,255,255,0.5);
}
.crumbContainer .crumb a {
	padding:5px 1em;
	color:var(--color-white);
	text-decoration:none;
}
.crumbContainer .crumb a:hover {
  color:var(--color-secondary);
}




/*	Template Panels
============================================================================================== */
.content-wrapper {
  position:relative;
  margin:-1px auto;
  padding:1px 0;
  background:transparent;
  z-index:1;
}
.panel {
	position:relative;
}
.panel .bg {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:0;
}

/* Panel Backgrounds */
.panel				{ background:var(--color-cream); }
.panel.bg-blue		{ background:var(--color-blue); }
.panel.bg-green		{ background:var(--color-green); }
.panel.bg-white		{ background:var(--color-white); }
.panel.bg-black		{ background:var(--color-gray-10); }
.panel.bg-gray		{ background:var(--color-gray-90); }

.panel_content_plain.bg-img .bg,
.panel_tabs.bg-img .bg	{
  opacity:0.2;
  filter:alpha(opacity=20); // IE 5-9
}

/* Panel Color Modes */
.panel .content {
  color:var(--color-gray-30);
  position:relative;
  z-index:1;
}
.panel .content h1, .panel .content .h1,
.panel .content h2, .panel .content .h2,
.panel .content h3, .panel .content .h3,
.panel .content h4, .panel .content .h4,
.panel .content h5, .panel .content .h5,
.panel .content h6, .panel .content .h6 { color:var(--color-gray-10); }
.panel.dark .content,
.panel.dark h2, .panel.dark .h2,
.panel.dark .content h3, .panel.dark .content .h3,
.panel.dark .content h4, .panel.dark .content .h4,
.panel.dark .content h5, .panel.dark .content .h5,
.panel.dark .content h6, .panel.dark .content .h6 { color:var(--color-gray-98); }

/* Panel Text Alignment */
.panel.content-left .content h1, .panel.content-left .content .h1,
.panel.content-left .content h2, .panel.content-left .content .h2 { text-align:left; }
.panel_content_plain.content-right .content h1, .panel_content_plain.content-right .content .h1,
.panel_content_plain.content-right .content h2, .panel_content_plain.content-right .content .h2 { text-align:right; }
.panel_content_plain.content-right ul, .panel.content-right ol { display:inline-block; text-align:left; }

.panel_content_plain .content,
.panel_content_columns .centre > .content,
.panel_icon_tiles .centre > .content,
.panel_accordion .content {
	width:820px;
	max-width:100%;
	margin:0 auto;
}
.content_pre,
.content_post { text-align:center; }
.panel_content_plain .centre > .content:before,
.panel_content_columns .centre > .content_pre:before,
.panel_icon_tiles .centre > .content_pre:before,
.panel_accordion .centre > .content_pre:before {
  content:"";
  background:url(/assets/images/theme/waves-graphic.png) center center/460px 12px no-repeat;
  height:12px;
  width:460px;
  max-width:100%;
  margin:0 auto 70px;
  display:block;
}
.panel_content_plain.dark .centre > .content:before,
.panel_content_columns.dark .centre > .content_pre:before,
.panel_icon_tiles.dark .centre > .content_pre:before,
.panel_accordion.dark .centre > .content_pre:before {
  filter:brightness(0) opacity(0.3);
}
.panel h1,
.panel .h1,
.panel h2,
.panel .h2 { text-align:center; }
.panel_content_plain .content .ctas,
.panel_content_columns .content .ctas,
.panel_icon_tiles .content .ctas,
.panel_accordion .content .ctas,
.panel_tabs .content .ctas { text-align:center; }
.panel_content_plain.content-left .content .ctas { text-align:left; }
.panel_content_plain.content-right .content .ctas { text-align:right; }
.panel_media_floated  .content { max-width:50%; margin-left:0 !important; }
.panel_map.content-right .content,
.panel_media_featured.content-right .content,
.panel_media_floated.content-right  .content { max-width:50%; margin-left:auto !important; margin-right:0 !important; }
.panel_map .content h2, .panel_map .content .h2,
.panel_media_featured .content h2, .panel_media_featured .content .h2,
.panel_media_floated .content h2, .panel_media_floated .content .h2,
.panel_gallery h2, .panel_gallery .h2 { text-align:left; }

.panel_media_featured:not(.w-video) .centre,
.panel_gallery .centre {
  max-width:100%;
  padding:50px;
}
.panel_media_featured .content {
  background:var(--color-cream);
  width:33%;
  padding:50px;
  position:absolute;
  bottom:100px;
  right:50px;
  z-index:2;
}
.panel_media_featured.content-left .content {
  right:auto;
  left:50px;
}
.panel_media_featured .content .scroll {
  max-height:240px;
  padding-right:15px;
}
.panel_media_featured .content .scroll + .ctas { margin-top:5px; }
.panel_media_featured .mask {
  text-align:center;
  min-height:100vh;
  max-height:100vh;
  overflow:hidden;
  position:relative;
}
.panel_media_featured.w-video .mask {
  width:840px;
  max-width:100%;
  min-height:auto !important;
  max-height:100% !important;
  aspect-ratio:16 / 9;
  margin:0 auto;
}
.panel_media_featured .media img {
	display:block;
  width:100%;
  height:100%;
	object-fit:cover;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.panel .media.jbmodal .fa-play {
	position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
  width:var(--units-5);
  height:var(--units-5);
  line-height:var(--units-5);
  text-align:center;
  border:2px solid var(--color-white);
  background:rgba(255,255,255,0.25);
  border-radius:var(--units-5);
  color:var(--color-white);
  font-size:2.5em;
	text-indent:0.15em;
	backdrop-filter:blur(calc(var(--units-1) * 0.25));
}
.panel .media.jbmodal:hover .fa-play,
.panel .media.jbmodal .fa-play:hover {
	color:var(--color-aqua);
	border:2px solid var(--color-aqua);
  background:rgba(255,255,255,1);
}

.panel_gallery h2 { position:relative; }
.panel_gallery h2:after {
  content:"";
  background:url(/assets/images/theme/line-scratch.png) center center/1040px 7px no-repeat;
  width:1040px;
  height:7px;
  position:absolute;
  top:65%;
  top:calc(50% + 15px);
  right:0;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.panel_gallery h2 .heading {
  background:var(--color-cream);
  padding-right:25px;
  display:inline-block;
  position:relative;
  z-index:1;
}
.panel_gallery .gallery {
  display:grid;
  grid-template-columns:calc(82% - 10px) 18%;
  column-gap:10px;
}
.panel_gallery .full,
.panel_gallery .thumbs {
  min-height:80vh;
  max-height:80vh;
  overflow:hidden;
}
.panel_gallery .thumbs .item {
  min-height:calc(20vh - 10px);
  max-height:20vh;
  overflow:hidden;
}
.panel_gallery .thumbs .item img {
  opacity:0.9;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.panel_gallery .thumbs img:hover {
  opacity:1;
  cursor:pointer;
}
.panel_gallery .full {
  background-repeat:no-repeat;
  background-position:center center;
  -webkit-background-size:cover;
  -moz-background-size:cover;
  -o-background-size:cover;
  background-size:cover;
  position:relative;
}
.panel_gallery .full:before {
  content:"";
  background:url(/assets/images/theme/loading.gif) center center/140px 140px no-repeat;
  height:140px;
  width:140px;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
  opacity:0.25;
  z-index:-1;
}
.panel_gallery .thumbs {
  display:grid;
  grid-template-columns:1fr;
  row-gap:10px;
}
.panel_gallery .full img,
.panel_gallery .thumbs img {
  margin:0 !important;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.panel_gallery .full img { position:absolute; }
.panel_gallery .thumbs .content {
  background:var(--color-cream);
  min-height:calc(20vh + 20px);
  max-height:20vh;
  width:25%;
  margin:0 !important;
  padding:50px 0 50px 50px;
  position:absolute;
  top:calc(20% + 160px);
  right:50px;
  z-index:2;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
/* .panel_gallery .thumbs .content {
  min-height:calc(25% - 35px);
  max-height:calc(25% - 35px);
  top:calc(25% + 120px);
} */

.scroll {
  overflow-y:scroll;
}
.panel_gallery .content .scroll {
  max-height:100%;
  padding-right:25px;
  position:absolute;
  top:50px;
  right:0;
  bottom:50px;
  left:50px;
}


/* Columns */
.panel .columns {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin:25px -25px 0 !important;
}
.panel_content_columns .columns { justify-content:left; }
.columns.count-2 .item { flex-basis:50%; }
.columns.count-3 .item { flex-basis:33.33%; }
.columns.count-4 .item { flex-basis:25%; }
.panel_builder_buckets .columns .item,
.panel_content_columns .columns .item,
.panel_icon_tiles .columns .item {
  padding:25px;
  display:inline-block;
  position:relative;
  overflow:hidden;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.panel_content_columns .columns .item + .item:before {
  content:"";
  background:rgba(0,0,0,0.15);
  height:100%;
  max-height:85%;
  max-height:calc(100% - 50px);
  width:1px;
  display:block;
  position:absolute;
  top:25px;
  bottom:25px;
  left:0;
}
.panel_content_columns .columns.count-2 .item:nth-child(odd):before {
  content:none;
}
.panel .columns h2,
.panel .columns .h2,
.panel .columns h3,
.panel .columns .subheading,
.panel .columns p.ctas {
	width:auto;
  text-align:left;
}
.panel_content_columns .columns h3,
.panel_icon_tiles .columns h3 {
  margin-bottom:0;
}

.panel_icon_tiles .item,
.panel_icon_tiles .item * { text-align:center !important; }
.panel_icon_tiles .item i {
  font-size:60px;
  margin-bottom:20px;
  display:inline-block;
}
.panel_icon_tiles .item i:before { color:var(--color-blue); }
.panel_icon_tiles .item i:after { color:var(--color-orange); }
.panel_icon_tiles .item .content { font-style:italic; }

/* Builder Buckets */
.panel_builder_buckets .bg {
  background:url(/assets/images/theme/jean-texture.jpg) center center repeat;
  opacity:0.3;
  filter:alpha(opacity=30); // IE 5-9
}
.panel_builder_buckets .columns {
  margin:50px auto 0 !important;
  padding-top:100px;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  column-gap:50px;
}
.panel_builder_buckets .columns .item {
  background:var(--color-blue);
  box-shadow:0 2px 4px rgba(0,0,0,0.15);
  -moz-box-shadow:0 2px 4px rgba(0,0,0,0.15);
  -webkit-box-shadow:0 2px 4px rgba(0,0,0,0.15);
  padding:0;
  overflow:visible;
}
.panel_builder_buckets .item .logo {
  text-align:center;
  background:var(--color-white);
  line-height:150px;
  height:150px;
  width:75%;
  width:calc(100% - 100px);
  padding:0 25px;
  position:absolute;
  top:-100px;
  left:50%;
  transform:translateX(-50%);
  -moz-transform:translateX(-50%);
  -webkit-transform:translateX(-50%);
  z-index:2;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.panel_builder_buckets .item .logo img {
  vertical-align:middle;
  display:inline-block;
}
.panel_builder_buckets .item .content {
  margin:0 !important;
}
.panel_builder_buckets .image {
  height:240px;
  position:relative;
  overflow:hidden;
}
.panel_builder_buckets .image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.panel_builder_buckets .item .links {
  text-align:left;
  display:grid;
  grid-template-columns:1fr 1fr;
  row-gap:10px;
  min-height:96px;
  padding:25px 0;
  position:relative;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.panel_builder_buckets .item .links:before {
  content:"";
  background:rgba(255,255,255,0.25);
  height:50%;
  height:calc(100% - 50px);
  width:1px;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.panel_builder_buckets .item .links a {
  color:var(--color-white);
  font-family:var(--typeface-display);
  font-size:0.8em;
  letter-spacing:0.025em;
  text-transform:uppercase;
  line-height:1.4;
  padding:0 25px;
  display:block;
  position:relative;
}
.panel_builder_buckets .item .links a:hover { color:var(--color-orange); }
.panel_builder_buckets .item .links a:after {
  content:"\00bb";
  margin-left:6px;
  display:inline;
  position:relative;
  top:-1.5px;
}


/*	Element Blocks
============================================================================================== */
.video169 {
	width:100%;
	max-width:100%;
	height:0;
	padding-bottom:56.25%;
	position:relative;
}
.video169 iframe {
  border:none !important;
  outline:none !important;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.panel .content p,
.panel .content ul,
.panel .content ol {
  color:var(--color-gray-30);
  letter-spacing:0.05em;
  max-width:100%;
	margin:0 auto 1em;
}
.panel.dark .content p,
.panel.dark .content ul,
.panel.dark .content ol {
  color:var(--color-white);
}
.panel .content p:last-child,
.panel .content ul:last-child,
.panel .content ol:last-child {
	margin-bottom:0;
}
.panel .content ul,
.panel .content ol {
	padding-left:1.15em;
}
.panel .content a,
.panel .link,
.banner .link {
	color:var(--color-accent);
}
.panel .content a:hover,
.panel .link:hover,
.banner .link:hover {
	color:#3D7D56;
}
.panel .content .ctas + .ctas .btn { margin-top:0; }
.panel .content,
.panel .repeater {
  margin:25px auto 0;
}
.panel .centre > .content:first-child,
.panel .content_pre { margin-top:0; }
.panel .content_post { margin-top:50px !important; }
.panel .item .content { margin-top:var(--units-1); }
.panel .item > img { margin-bottom:var(--units-1); }
.panel_content_columns .item > img { width:100%; }

.fauxTable { display:table-row; }
.fauxTable > div { display:table-cell; }
.panel_media_floated .fauxTable > div { 
  vertical-align:middle; 
  width:50%; 
}
.panel_media_floated.content-default .content, 
.panel_media_floated.content-left .content { padding-right:var(--units-3); }
.panel_media_floated.content-default .media, 
.panel_media_floated.content-left .media { padding-left:var(--units-3); }
.panel_media_floated.content-right .content { padding-left:var(--units-3); }
.panel_media_floated.content-right .media { padding-right:var(--units-3); }

.media { text-align:center; }
.media-inset .media img {max-height:600px;}
.panel.media-full { overflow:hidden; }
.panel.media-full .media { min-height:400px; }
.panel.media-full > .media {
  height:100%;
  width:50%;
  padding:0 !important;
  position:absolute;
  top:0;
  z-index:11;
  overflow:hidden;
}
.panel_media_floated.content-right.media-full .media { left:0; }
.panel_media_floated.content-default.media-full .media { right:0; }
.panel_media_floated.content-left.media-full .media { right:0; }
.panel.media-full > .media img {
  min-height:100%;
  min-width:100%;
  max-width:none;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.panel_media_floated .graphic {
  background:url(/assets/images/theme/burst-graphic.png) center center no-repeat;
  height:186px;
  width:231px;
  display:block;
  position:absolute;
  bottom:0;
  left:0;
  z-index:0;
  opacity:0.1;
  filter:alpha(opacity=1); // IE 5-9
  -moz-transform:scaleX(-1);
  -o-transform:scaleX(-1);
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
  filter:FlipH;
  -ms-filter:"FlipH";
}
.panel_media_floated.content-right .graphic {
  left:auto;
  right:0;
  transform:none !important;
  filter:none !important;
}

.panel_map .content {
  max-width:40%;
  margin-left:0 !important;
}
.panel_map .mapwrap {
	position:absolute;
	top:0;
	right:0;
	height:100%;
	width:60%;
	z-index:20;
}
.panel_map.content-right .mapwrap { right:auto; left:0; }
.panel_map.content-default .content,
.panel_map.content-left .content { padding-right:var(--units-3); }
.panel_map.content-right .content { padding-left:var(--units-3); }
.panel_map .centre {
  position:relative;
  width:100%;
  display:table;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.panel_map .content p.ctas { margin-top:20px; }


.accordion {
  margin:0 auto 3em;
}
.panel .filters {
  margin:0 auto 1.5em;
  color:var(--color-gray-50);
}
.panel.dark .filters {
  color:var(--color-gray-70);
}
.panel .filters span,
.panel .filters a {
  text-transform:uppercase;
}
.panel .filters .label {
  margin:0 1em 0 0;
  font-size:var(--font-size-neg-2);
  color:inherit;
  letter-spacing:0.02em;
}
.panel .filters .filter {
  display:inline-block;
  padding:0 1.5em;
  font-size:var(--font-size-neg-1);
  letter-spacing:0.05em;
  color:inherit;
  border-right:1px solid var(--color-gray-50);
  cursor:pointer;
}
.panel .filters .filter:last-child {
  border-right:0;
}
.panel .filters .filter:hover {
  color:var(--color-accent);
}
.panel .filters .filter.active {
  color:var(--color-secondary);
}
.panel.dark .filters .filter.active {
  color:var(--color-secondary);
}
.accordion .item {
  position:relative;
  margin:0 0 1em;
  background:var(--color-gray-95);
  border:1px solid var(--color-gray-90);
  overflow:hidden;
  -webkit-transition:border 0.165s ease;
  -moz-transition:border 0.165s ease;
  -ms-transition:border 0.165s ease;
  -o-transition:border 0.165s ease;
  transition:border 0.165s ease;
}
.accordion .heading {
  position:relative;
  margin:0;
  padding:0.5em 1em 0.5em var(--units-4);
  cursor:pointer;
}
.accordion .item:has(.heading:hover) {
  border:1px solid var(--color-secondary);
  -webkit-transition:border 0.165s ease;
  -moz-transition:border 0.165s ease;
  -ms-transition:border 0.165s ease;
  -o-transition:border 0.165s ease;
  transition:border 0.165s ease;
}
.accordion .item .heading:after {
	-moz-osx-font-smoothing:grayscale;
	-webkit-font-smoothing:antialiased;
	display:inline-block;
	font-style:normal;
	font-variant:normal;
	text-rendering:auto;
	font-family:"Font Awesome 7 Pro";
	font-weight:400;
  content:"\e59e";
  display:block;
  width:50px;
  height:30px;
  line-height:30px;
  text-align:center;
  position:absolute;
  top:8px;
  left:0px;
  color:var(--color-green);
  font-size:24px;
}
.accordion .item.active .heading:after {
  content:"\f068";
}
.accordion .item .heading:hover:after {
  color:var(--color-secondary);
}
.accordion .heading .headline {
  font-size:var(--font-size-2);
  font-weight:400;
  line-height:1.618em;
  vertical-align:middle;
  margin:0;
  display:block;
  position:relative;
  top:2px;
  left:-2px;
}
.accordion .content {
  display:none;
  width:auto;
  margin:0;
  padding:0.5em 3em 1.75em var(--units-4);
}
.accordion .content p,
.accordion .content .description {
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
  font-size:16px;
  line-height:1.6em;
  margin:0 auto 1em;
}
.accordion .content p.ctas { text-align:left; }
.accordion .heading .headline,
.accordion .content p,
.accordion .content .description,
.accordion .content > * { color:#333; }
.tabs { margin:0 auto 3em; }
.tabs .triggers {
  float:left;
  width:25%;
  position:relative;
  margin:1em 0 0 0;
  background:var(--color-gray-90);
  border:1px solid var(--color-gray-70);
  border-right:1px solid var(--color-white);
}
.tabs .triggers .trigger {
  display:block;
  padding:0.5em 1em;
  color:var(--color-gray-30);
  font-size:var(--font-size-neg-1);
  font-weight:700;
  cursor:pointer;
}
.tabs .triggers .trigger:hover {
  color:var(--color-white);
  background:var(--color-secondary);
}
.tabs .triggers .trigger.active {
  color:inherit !important;
  background:var(--color-white);
}
.tabs .mobileTriggers {}
.tabs .mobileTriggers select {
	display:inline-block;
  background:var(--color-gray-98);
  border:1px solid var(--color-gray-70);
  border-radius:3px;
  font-family:var(--typeface-default);
  font-size:var(--font-size-1);
  line-height:1.618em;
  min-width:250px;
  padding:0.25em 0.5em;
}
.tabs .tabContent {
  margin:0 auto 0 25%;
  border:1px solid #ccc;
  background:#fff;
}
.tabs .tabContent .item {
	display:none;
	padding:1em 2em 1.5em;
}
.tabs .tabContent .item:first-child { display:block; }
.tabs .tabContent .item p + p { margin-top:1em; }
.mapwrap iframe { width:100%; height:100%; }
.articles_list .item {
  width:900px;
  max-width:100%;
  margin:0 0 var(--units-3);
}
.articles_list .item .postmeta {
  color:var(--color-gray-70);
  font-size:var(--font-size-neg-1);
  font-style:oblique;
}

/* Logo Carousel */
.carousel {
  margin:50px auto 0;
  padding:0 50px;
}
.carousel .arrow {
  font-size:28px;
  text-align:center;
  color:var(--color-green);
  border:4px solid transparent;
  box-shadow:inset 0 0 0 2px var(--color-green);
  border-radius:100%;
  line-height:40px;
  height:40px;
  width:40px;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.carousel .prev { left:0; }
.carousel .next { right:0; }
.carousel .arrow:before { position:relative; }
.carousel .prev:before { right:1px; }
.carousel .next:before { left:1px; }
.carousel .arrow:hover {
  color:var(--color-orange);
  box-shadow:inset 0 0 0 2px var(--color-orange);
  -moz-box-shadow:inset 0 0 0 2px var(--color-orange);
  -webkit-box-shadow:inset 0 0 0 2px var(--color-orange);
  cursor:pointer;
}
.carousel .item {
  text-align:center;
  padding:0 15px;
}
.carousel .item > img {
  margin:0;
  display:inline-block;
}
.panel_logo_carousel .content_pre p,
.panel_builder_buckets .content_pre p { font-style:italic; }

/* CTA Block */
.panel_cta .bg {
  background:url(/assets/images/theme/wood-texture.png) center center repeat;
  opacity:0.1;
  filter:alpha(opacity=10);
}
.panel_cta h2 {
  text-align:left;
  max-width:75%;
  margin:0 0 1em;
}
.panel_cta h2.simple { margin-bottom:0.5em; }
.panel_cta h2 .heading {
  display:inline-block;
  position:relative;
}
.panel_cta .post {
  font-family:var(--typeface-accent);
  font-size:0.75em;
  text-transform:none;
  position:absolute;
  bottom:-20px;
  right:-80px;
  transform:rotate(-10deg);
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
}
.panel_cta .content p {
  width:600px;
  margin-left:0;
}
.panel_cta .content .ctas {
  width:auto;
  margin:0;
  position:absolute;
  top:50%;
  right:2em;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.panel_cta .content .ctas a { margin:0; }

@media only screen and (max-width:1300px) {
  .panel_cta h2 { max-width:100%; }
  .panel_cta .content .ctas {
    margin-top:3em;
    position:relative;
    top:auto;
    right:auto;
    transform:none !important;
  }
}

.svg_controls {
  text-align:center;
}
.svg_controls > div {
  display:inline-block;
}
.svg_controls .control {
  color:var(--color-gray-50) !important;
  border-color:var(--color-gray-70);
  box-shadow:none !important;
  margin:0 0 0 -4px;
  display:inline-block;
  position:relative;
  cursor:pointer;
}
.svg_controls .control:hover,
.svg_controls .control.active {
  color:var(--color-green) !important;
  border-color:var(--color-green) !important;
}
.svg_controls .control.active { z-index:2; }

/* Listings */
.id_30 .banner { height:300px; }
.id_30 .banner h1 { top:65%; }
.content-page > .scrollNav { padding:10px 2em; }
.content-page > .scrollNav label,
.content-page > .scrollNav .input select,
.content-page > .scrollNav .reset { color:var(--color-white); }
.content-page > .scrollNav label,
.content-page > .scrollNav .input select,
.content-page > .scrollNav .reset,
.listings_feed .address,
.listings_feed .attributes,
.listing_detail .address,
.listing_detail .attributes,
.listing_gallery .thumbs .item .label {
  font-family:var(--typeface-display);
  font-weight:700;
  font-size:11px;
  letter-spacing:0.15em;
  text-transform:uppercase;
}
.content-page > .scrollNav .reset { 
  color:var(--color-orange);
  margin-left:20px; 
  cursor:pointer;
}
.content-page > .scrollNav .reset:hover { color:#000; }
.content-page > .scrollNav .inputs { display:inline-block; }
.content-page > .scrollNav .input {
  text-align:left;
  background:rgba(0,0,0,0.25);
  border:1px solid rgba(255,255,255,0.25);
  margin:0 0 0 20px;
  display:inline-block;
  position:relative;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
  cursor:pointer;
}
.content-page > .scrollNav .input:after {
  content:"\f107";
  font-family:"Font Awesome 7 Pro";
  font-weight:400;
  font-size:0.85em;
  color:rgba(255,255,255,0.5);
  display:block;
  position:absolute;
  z-index:0;
  top:50%;
  right:10px;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
}
.content-page > .scrollNav .input:hover { border-color:#000; }
.content-page > .scrollNav .input select {
  background:none;
  border:none;
  -moz-appearance:none;
  -webkit-appearance:none;
  outline:none;
  width:100%;
  padding:10px 35px 8px 10px;
  display:inline-block;
  position:relative;
  z-index:1;
}
.listings_feed {
  display:grid;
  gap:var(--units-2);
  grid-template-columns:repeat(2, 1fr);
}
.listings_feed .listing { background:var(--color-gray-95); }
.listings_feed .listing .content {
  margin:0;
  padding:0 20px;
}
.listings_feed .listing span,
.listing_detail span { 
  line-height:1.4;
  display:inline-block; 
  position:relative;
}
.listings_feed .listing img { display:block}
.listings_feed .meta,
.listing_detail .meta {
  border-bottom:1px solid var(--color-gray-90);
  margin-bottom:30px;
  padding:25px 0 20px;
  display:grid;
  gap:var(--units-1);
  grid-template-columns:repeat(2, 1fr);
  align-items:center;
}
.listings_feed .price,
.listing_detail .price {
  color:var(--color-black);
  font-size:var(--font-size-5);
}
.listings_feed .address,
.listing_detail .address {
  color:var(--color-gray-50);
  justify-self:end;
}
.listings_feed .attributes,
.listing_detail .attributes {
  display:grid;
  gap:var(--units-1);
  grid-template-columns:repeat(3, 1fr);
}
.listings_feed .spec i,
.listing_detail .spec i {
  font-size:20px;
  vertical-align:middle;
  display:inline-block;
  position:relative;
  top:-2px;
  --fa-primary-color:var(--color-blue); 
  --fa-secondary-color:var(--color-orange);
}
.listings_feed .listing .available,
.listing_detail .available {
  /* background:var(--color-white);
  border:1px solid var(--color-gray-70);
  border-radius:5px; */
  padding:0 0 0 36px;
  position:relative;
  left:-5px;
}
.listings_feed  .listing .available i,
.listing_detail .available i { 
  position:absolute;
  left:5px;
  top:-1px; 
}
.listing_detail .spec .fa-hammer-brush { font-size:19px; }
.listings_feed .ctas { 
  text-align:center; 
  margin:30px 20px;
}
.listings_feed .btn,
.listing_detail .btn { margin:0 auto; }
.listing_detail .grid {
  display:grid;
  grid-template-columns:50% 50%;
  gap:var(--units-3);
  max-width:calc(100% - var(--units-3));
}
.listing_detail .grid .content {
  background:var(--color-gray-95);
  height:calc(100% - 15px);
  margin:0;
  padding:0 30px;
  order:2;
}
.listing_detail .description { 
  height:200px;
  margin-top:30px; 
  padding-right:30px;
  overflow-x:scroll;
}
.listing_detail .ctas {
  text-align:center;
  position:absolute;
  bottom:-15px;
  left:50%;
  transform:translateX(-50%);
  -moz-transform:translateX(-50%);
  -webkit-transform:translateX(-50%);

}
.listing_gallery .main_image { 
  height:360px;
  margin-bottom:15px;
  position:relative; 
  overflow:hidden;
}
.listing_gallery .main_image img {
  height:100%;
  min-width:100%;
  max-width:none;
  object-fit:cover;
  position:absolute;
  top:50%;
  left:50%;
  transform:translateY(-50%) translateX(-50%);
  -moz-transform:translateY(-50%) translateX(-50%);
  -webkit-transform:translateY(-50%) translateX(-50%);
}
.listing_gallery img { 
  margin:0 !important;
  display:block; 
}
.listing_gallery .arrow {
  color:var(--color-white);
  font-size:28px;
  text-align:center;
  background:var(--color-blue);
  border:none;
  border-radius:100%;
  line-height:39px;
  height:36px;
  width:36px;
  padding:0;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
  opacity:0.75;
  z-index:2;
  cursor:pointer;
}
.listing_gallery .arrow:hover { opacity:1; }
.listing_gallery .arrow.prev { left:30px; }
.listing_gallery .arrow.next { right:30px; }
.listing_gallery .arrow i { position:relative; }
.listing_gallery .arrow.prev i { left:-1px; }
.listing_gallery .arrow.next i { right:-1px; }
.listing_gallery .thumbs {
  height:115px;
  width:calc(100% + 10px);
  max-width:calc(100% + 10px);
  padding:2px 2px 0;
  display:grid;
  gap:15px;
  grid-auto-flow:column;
  overflow-y:scroll;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.thumbs::-webkit-scrollbar {
  height:4px;
}
.listing_gallery .thumbs .item {
  height:95px;
  width:150px;
  display:block;
  position:relative;
  cursor:pointer;
}
.listing_gallery .thumbs .item:after {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  pointer-events:none;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}
.listing_gallery .thumbs .item.active:after {
  box-shadow:0 0 0 2px var(--color-orange), inset 0 0 0 2px var(--color-white) !important;
}
.listing_gallery .thumbs .item:hover:after {
  box-shadow:0 0 0 2px var(--color-gray-70), inset 0 0 0 2px var(--color-white);
}
.listing_gallery .thumbs .floorplan img { 
  box-shadow:0 0 0 1px var(--color-gray-70); 
}
.listing_gallery .thumbs .floorplan .label {
  color:var(--color-white);
  font-size:10px;
  text-align:center;
  background:#7391A9;
  border-top:1px solid var(--color-blue);
  border-bottom:1px solid var(--color-blue);
  padding:5px;
  position:absolute;
  top:50%;
  left:0;
  right:0;
  transform:translateY(-50%);
  -moz-transform:translateY(-50%);
  -webkit-transform:translateY(-50%);
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.listing_gallery .thumbs .floorplan .label:after {
  content:"\f00e";
  font-family:"Font Awesome 7 Pro";
  font-weight:400;
  font-size:12px;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  margin-left:5px; 
  display:inline-block;
}
.panel_media_floated.tour .media { padding-left:0; }
.tour_embed iframe {
  aspect-ratio:16 / 9;
}

/*	Forms
============================================================================================== */
.panel_form .content {
  text-align:left;
  width:50%;
  width:calc(50% - 100px);
  margin:0;
  float:right;
}
@media only screen and (max-width:1600px) {
  .panel_form .content {
    width:calc(50% - 50px);
  }
}
.panel_form h2 { text-align:left; }
.panel_form .hours { margin-top:30px; }
.panel_form .phone,
.panel_map .phone {
  font-family:var(--typeface-display);
  font-weight:100;
  text-transform:uppercase;
}
.panel_form .media {
  height:400px;
  width:calc(100% + 200px);
  margin-top:50px;
  float:right;
  overflow:hidden;
  position:relative;
  z-index:0;
}
.panel_form .media img {
  display:block;
  height:100%;
  min-width:100%;
  max-width:none;
  object-fit:cover;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -moz-transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
}
.form {
  text-align:center;
  background:var(--color-gray-90);
  width:43%;
  width:calc(50% - 100px);
  max-width:100%;
  margin:0;
  padding:50px;
  float:left;
  position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:repeat(12, 1fr);
  column-gap:2em;
}

.form .input {
  position:relative;
}
.form .input.width-full {
  grid-column:span 12;
}
.form .input.width-half {
  grid-column:span 6;
}
.form .input.width-third {
  grid-column:span 4;
}
.form .input.width-quarter {
  grid-column:span 3;
}

.form .row { margin:0 -1em; }
.form .row .input {
  display:block;
  position:relative;
  float:left;
  margin:0;
  padding:0 1em;
  width:50%;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.form .row .input.full { width:100%; }
.form .input label {
  font-family:var(--typeface-display);
  font-weight:100;
  font-size:0.75em;
  text-transform:uppercase;
  letter-spacing:0.1em;
  position:absolute;
  top:11px;
  left:16px;
  z-index:2;
  -webkit-transition:all 0.165s ease;
  -moz-transition:all 0.165s ease;
  -ms-transition:all 0.165s ease;
  -o-transition:all 0.165s ease;
  transition:all 0.165s ease;
}

.form .input label.required::before {
  content:"*";
  color:var(--color-orange);
  margin-left:0.25em;
  position:absolute;
  right:-10px;
}
.form .input label .req { color:var(--color-orange); }
.form .input label.focus {
  font-size:0.65em;
	top:-24px;
	-webkit-transition:all 0.165s ease;
	-moz-transition:all 0.165s ease;
	-ms-transition:all 0.165s ease;
	-o-transition:all 0.165s ease;
	transition:all 0.165s ease;
	font-style:normal;
  left:15px;
}

.form .input.dropdown label:after,
.form .input label.focus:after {
	content:"\f0d7";
	display:inline-block;
  font-family:"Font Awesome 7 Pro";
  font-weight:900;
	font-size:inherit;
	text-rendering:auto;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	margin-left:14px;
  position:absolute;
}
.form .input label.hidden { opacity:0.0; }
.form label.error { display:none !important; }
.form .input input[type=text],
.form .input input[type=email],
.form .input input[type=number],
.form .input input[type=tel],
.form .input input[type=date],
.form .input input[type=password],
.form .input select,
.form .input textarea {
  display:block;
	height:2.75em;
  width:100%;
  margin:0 0 1.5em;
  padding:0.75em 1em;
	background:var(--color-gray-98);
	border:1px solid var(--color-gray-70);
	border-radius:0px;
  font-family:inherit;
  font-size:1em;
  line-height:1.2em;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.form .input select {
  font-family:var(--typeface-display);
  font-weight:100;
  font-size:0.75em;
  text-transform:uppercase;
  height:auto;
  margin-bottom:2em;
  padding:1.25em 1.25em 1em;
}

.form .input input[type=text].error,
.form .input input[type=email].error,
.form .input input[type=number].error,
.form .input input[type=tel].error,
.form .input input[type=date].error,
.form .input input[type=password].error,
.form .input select.error,
.form .input textarea.error {
	background:#FFB5B5 !important;
	border:1px solid #900 !important;
}
.form .input select {
  appearance:none;
  -moz-appearance:none;
  -webkit-appearance:none;
}
.form .input.dropdown { margin-top:10px; }


/* .input select, */
.input.dropdown:after {
  content:"\f107";
  color:var(--color-brown);
  font-family:"Font Awesome 7 Pro";
  font-size:16px;
  line-height:1;
  display:block;
  position:absolute;
  margin-top:-20px;
  top:50%;
  right:20px;
}
.form .input textarea {
  min-width:100%;
  width:100%;
	max-width:100%;
  min-height:140px;
	height:100px;
	max-height:200px;
}
.form .input .radCheck {}
.form .input .radCheck:last-child {}
.form .input label + .radCheck {}
.form .input input[type=radio],
.form .input input[type=checkbox] {}
.form .btn { margin:20px auto 0; }
.form p.error {
  color:#900;
  background:#FFB5B5 !important;
  border:1px solid #900 !important;
  margin:0 0 1.5em;
  padding:0.75em 1em;
  outline:none;
  border-radius:0px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.token { color:transparent !important; }

/* DYNAMIC FORM */
.form .input{ position:relative;}
.form .input.nonshift-label label{
  font-size:0.65em;
  top:-24px;
}

/*	Misc
============================================================================================== */
.progressBar {
  position:fixed;
  top:84px;
  left:0;
  height:6px;
  background:var(--color-secondary);
  width:0%;
	max-width:100%;
	z-index:201;
}
@media only screen and (max-width:767px) {
  .progressBar { height:4px; top:86px; }
}
.jbmodal-box {
  background:var(--color-white);
  width:60%;
}
.jbmodal-box h2,
.jbmodal-box h3,
.jbmodal-box h4,
.jbmodal-box h5 {}
.jbmodal-box .jbmodal-title {}
.screenType {
  color:transparent;
  width:1px;
  height:1px;
  border:0;
  position:fixed;
  bottom:0;
  overflow:hidden;
}
.accessibe {
	position:fixed;
	display:block !important;
	inset:auto 20px 20px auto;
  border-radius:50%;
  width:30px;
  height:30px;
  font-size:30px;
  line-height:30px;
  text-align:center;
  visibility:visible;
  cursor:pointer;
  box-sizing:border-box;
  opacity:0.5;
  filter:alpha(opacity=50); // IE 5-9
  line-height:1;
  outline:none 0 !important;
  overflow:visible !important;
  color:var(--color-accent);
	background:var(--color-white);
  z-index:999999999999;
  -webkit-transition:all .15s ease;
  -moz-transition:all .15s ease;
  -o-transition:all .15s ease;
  transition:all .15s ease;
}
.accessibe:hover {
	opacity:1;
  filter:alpha(opacity=100); // IE 5-9
  -webkit-transition:all .15s ease;
  -moz-transition:all .15s ease;
  -o-transition:all .15s ease;
  transition:all .15s ease;
}
.modx_edit {
	position:fixed;
  display:block !important;
  inset:auto 20px 60px auto;
  border-radius:50%;
  width:30px;
  height:30px;
  font-size:1em;
  line-height:30px !important;
  text-align:center;
  visibility:visible;
  cursor:pointer;
  box-sizing:border-box;
  opacity:0.5;
  filter:alpha(opacity=50); // IE 5-9
  line-height:1;
  outline:none 0 !important;
  overflow:visible !important;
  background:var(--color-accent);
	color:var(--color-white);
  z-index:999999999999;
  transition:all 0.15s ease;
}
.modx_edit:hover {
  opacity:1;
  filter:alpha(opacity=100); // IE 5-9
}



/*	RESPONSIVE
============================================================================================== */

/*	Desktop			--	1024+
============================================================================================== */
@media only screen and (min-width:1024px){

}




/*	Small Desktop	--	1024-1299
============================================================================================== */
@media only screen and (max-width:1299px) {

  .form .input.width-quarter {
    grid-column:span 6;
  }
  .banner {
    height:440px;
    padding-top:80px;
  }
  .banner-home { height:540px; }
  .header { height:80px; }
  .header .fa-bars,
  .header .fa-search,
  .header .phone {
    margin-top:20px;
  }
  .header .fa-bars {
    width:80px;
    display:block;
  }
  .menuOpen .header .fa-bars:before { content:"\f00d"; }
  .header .fa-search { border-right:1px solid rgba(0, 0, 0, 0.2); }
  .header .phone { border-left:none; }

  .jbmodal-box { width:80%; }

	.mainNav {
    display:none;
    transition:none !important;
  }
	.mainNav li.id_1 { display:block; }
  .mainNav {
    width:375px;
    max-width:100%;
    position:absolute;
    top:80px;
    right:0;
    margin:0;
    background:var(--color-green);
    box-shadow:-4px 0px 10px rgba(0, 0, 0, 0.25);
    overflow-y:scroll;
  }
	.mainNav ul li { font-size:16px; }
  .mainNav>ul>li {
    display:block !important;
    margin:0 0 -1px 0;
    height:auto;
    border-left:0 !important;
    border-top:1px solid rgba(255,255,255,0.1);
    border-bottom:1px solid rgba(255,255,255,0.1);
  }
  .mainNav>ul>li>a,
  .mainNav>ul>li>span {
    color:var(--color-white) !important;
    font-weight:100;
    text-transform:uppercase;
    letter-spacing:1px;
    line-height:1em;
    height:auto;
    margin:0;
    padding:16px 20px 14px 48px;
    font-size:18px;
    display:block;
    z-index:1;
  }
  .mainNav li.parent>a { margin-right:50px; }
  .mainNav li.parent>a:after,
  .mainNav li.parent>span:after {
    display:none !important;
  }
  .mainNav>ul li.parent .trigger {
    color:#fafafa;
    font-size:18px;
    text-align:center;
    background:rgba(0, 0, 0, 0.25);
    line-height:46px;
    height:48px;
    width:48px;
    display:block;
    position:absolute;
    top:0;
    right:0;
    left:auto;
    z-index:9;
  }
  .mainNav>ul>li>ul {
    display:none;
    background:rgba(0,0,0,0.25);
    max-height:unset;
    width:auto !important;
    padding:10px 0;
    position:relative;
    top:0;
    left:0;
    transition:none;
  }
  .mainNav>ul>li:hover>ul,
  .mainNav>ul>li>ul>li:hover>ul {
    display:none;
    max-height:unset;
    overflow:visible;
  }
  /* .mainNav>ul>li.open>ul { display:block !important; } */
	.mainNav > ul > li > ul > li { border-top:0; }
  .mainNav>ul>li>ul li.parent .trigger { padding-left:20px; }
  .mainNav>ul>li>ul>li>a {
    background:none !important; 
		display:block;
    padding:14px 32px 10px 50px;
    font-size:16px;
  }
  .mainNav>ul>li>ul>li>ul {
    display:none;
    position:relative;
    left:auto;
    background:transparent;
    max-height:unset;
    width:auto;
  }
  .mainNav>ul>li>ul>li>ul>li>a {
		display:block;
    padding:8px 32px 8px 84px;
    font-size:16px;
  }
  .scrollNav.fixed { top:80px !important; }

  .columns.count-3 .item {
    flex-basis:50%;
  }

  .panel_media_featured .centre { padding:var(--units-5) var(--units-2) var(--units-5); }
	.panel-media_featured .bg {
		aspect-ratio:16 / 8;
	}
  .panel_media_featured .mask {
    min-height:0;
    max-height:75vh;
  }
  .panel_media_featured:not(.w-video) .media img {
    position:relative;
    top:auto;
    left:auto;
    transform:none !important;
  }
  .panel_media_featured .content {
    width:auto;
    max-width:100% !important;
    margin-top:50px;
    padding:0;
    position:relative;
    bottom:auto;
    left:auto !important;
    right:auto !important;
  }
  .panel_media_featured .content .scroll {
    max-height:none;
    margin-bottom:15px;
  }
  .panel_cta h2 {
    margin-bottom:0.6em;
  }
  .panel_cta .post {
    margin-top:5px;
    display:inline-block;
    position:relative;
    bottom:auto;
    right:auto;
  }

  .panel_builder_buckets .columns { display:block; }
  .panel_builder_buckets .columns .item {
    width:460px;
    max-width:100%;
    margin-left:auto;
    margin-right:auto;
    display:block;
  }
  .panel_builder_buckets .columns .item + .item { margin-top:150px; }

  .panel_gallery h2:after {
    content:"";
    background:url(/assets/images/theme/line-scratch.png) center center/900px 6px no-repeat;
    width:900px;
  }
  .panel_gallery .thumbs .content {
    width:30%;
    padding:25px 0 25px 25px;
  }
  .panel_gallery .content .scroll {
    top:25px;
    bottom:25px;
    left:25px;
  }
  
  .id_30 .content-page > .scrollNav { padding:0; }
  .id_30 .content-page > .scrollNav label { 
    padding:10px 2em;
    display:block;
    position:relative; 
    z-index: 2;
  }
  .id_30 .content-page > .scrollNav .filters.open label {
    background:rgba(0,0,0,0.1);
  }
  .id_30 .content-page > .scrollNav label:before {
    display:inline-block;
    -moz-osx-font-smoothing:grayscale;
    -webkit-font-smoothing:antialiased;
    display:inline-block;
    font-style:normal;
    font-variant:normal;
    text-rendering:auto;
    font-family:"Font Awesome 7 Pro";
    font-weight:300;
    content:"\f1de";
    font-size:16px;
    vertical-align:middle;
    margin-right:5px;
  }
  .id_30 .content-page > .scrollNav label span { display:none; }
  .id_30 .content-page > .scrollNav .inputs { 
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap:10px;
    align-items: baseline;
    padding:0 2em;
    height:0;
    overflow: hidden;
    -webkit-transition:all 0.165s ease;
    -moz-transition:all 0.165s ease;
    -ms-transition:all 0.165s ease;
    -o-transition:all 0.165s ease;
    transition:all 0.165s ease;
  }
  .id_30 .content-page > .scrollNav .filters.open .inputs {
    padding:15px 2em;
    height:auto;
    overflow: visible;
  }
  .id_30 .content-page > .scrollNav .input { margin-left:0; }

}

@media only screen and (max-width:1199px){
  .listings_feed .attributes,
  .listing_detail .attributes { grid-template-columns:repeat(2, 1fr); } 
}

/*	Tablets			--	768-1023
============================================================================================== */
@media only screen and (max-width:1023px){
  .form .input.width-third {
    grid-column:span 6;
  }

  .form .input.width-quarter {
    grid-column:span 3;
  }

  h2, .h2 { font-size:var(--font-size-6); }
  .header .phone { padding:0; }
	.header .fa-phone {
    color:var(--color-orange) !important;
	  font-size:20px;
    text-align:center;
    height:40px;
    line-height:40px;
    padding:0 30px;
    display:block;
    float:right;
	}

	.tabs .mobileTriggers { display:block; margin:0 0 0.5em; }
	.tabs .tabContent { margin-left:0; min-height:0 !important; }

  .panel:not(.panel_builder_buckets) .columns {
    margin:25px 0 0 !important;
    display:block;
  }
  .columns.count-2 .item,
  .columns.count-3 .item,
  .columns.count-4 .item {
    text-align:center;
    flex-basis:100%;
    display:block;
  }
  .columns .item,
  .columns:not(.panel_builder_buckets .columns) .item * { text-align:center !important; }
  .panel_content_columns .columns .item + .item:before { content:none; }

  .panel_gallery .gallery { display:block; }
  .panel_gallery h2:after { width:600px; }
  .panel_gallery .full {
    min-height:75vh;
    max-height:75vh;
  }
  .panel_gallery .thumbs {
    margin:15px auto;
    grid-template-columns:1fr 1fr 1fr 1fr;
    min-height:0;
    max-height:none;
    row-gap:15px;
    column-gap:15px;
  }
  .panel_gallery .thumbs .item { min-height:0; }
  .panel_gallery .thumbs .item.active {
    opacity:0.5;
    filter:saturate(0);
    pointer-events:none;
  }
  .panel .item > img { opacity:1 !important; }
  .panel_gallery .content,
  .panel_gallery .content .scroll {
    min-height:0;
    max-height:none;
    padding:0;
    position:relative;
    top:auto;
    right:auto;
    bottom:auto;
    left:auto;
  }

	.panel_map { min-height:0; }
	.panel_map .content {
		width:100%;
		max-width:100% !important;
		padding:0 !important;
	}
	.panel_map .mapwrap {
		position:relative;
		width:100%;
		height:540px;
	}
  .form,
  .panel_form .content {
    width:auto;
    float:none;
  }
  .panel_form .content { margin-top:50px; }
  .panel_form .media {
    width:100%;
    float:none;
  }
  
  .listings_feed { grid-template-columns:1fr; }
  .listing_detail .grid {
    display:block;
    width:auto;
    max-width:100%;
  }
  .listing_detail .grid .content { 
    height:auto;
    margin-bottom:50px;
    order:0; 
  }
  .listing_detail .description {
    height:auto;
    padding-bottom:50px;
    padding-right:0;
    overflow:auto;
  }

  .footer:before {
    top:auto;
    bottom:-25px;
  }
  .footer .logo {
    border:none;
    width:100px;
    margin:0 auto;
    padding:0;
    display:block;
  }
  .footer .content {
    width:auto;
    max-width:100%;
    margin:0 auto;
    display:block;
  }
  .footer .left,
  .footer .right,
  .footer .loc,
  .footer .hours,
  .footer .copy {
    text-align:center;
    float:none;
  }
  .footer .right,
  .footer .links { margin:30px auto; }
  .footer .loc,
  .footer .hours {
    vertical-align:top;
    display:inline-block;
  }
  .footer .links a { margin:15px auto 0; }
}




/*	Phones			--	under 768
============================================================================================== */
@media only screen and (max-width:767px){

  .form .input.width-quarter,
  .form .input.width-half,
  .form .input.width-third {
    grid-column:span 12;
  }

  h2, .h2 { font-size:var(--font-size-5); }
  .panel_media_featured h2 { text-align:left;}
	.centre,
	.banner .centre,
  .panel_media_featured .centre,
  .panel_gallery .centre { padding:3.15em 1em 3.25em; }
  .panel_content_plain .centre > .content:before, .panel_content_columns .centre > .content_pre:before, .panel_icon_tiles .centre > .content_pre:before, .panel_accordion .centre > .content_pre:before { margin-bottom:50px; }

  .jbmodal-box { width:86%; }

  .banner {
    background-color:var(--color-gray-30);
    height:240px;
  }
  .banner-home { height:400px; }
  .banner-home .centre { padding-top:50px; }
  .banner .bg { opacity:0.75; }
  .banner-home .bg { top:50px; }
  .banner video { display:none; }
  .banner h1 {
    font-size:var(--font-size-6);
    top:63%;
  }
  .banner-home h1,
  .banner-home .h1 {
    font-size:var(--font-size-6);
  }
  .banner .scroll { bottom:40px; }
  .banner .scroll i {
    font-size:32px;
    height:44px;
    line-height:44px;
    width:44px;

  }
  .scrollNav { padding:0 1em; }
	.wrapper { min-height:60%; }
	.wrapper > div:last-child { padding-bottom:0; }

	.panel_media_featured .content,
	.panel_media_floated .content { max-width:100% !important; }

  .panel_media_floated .content { max-width:100% !important; }
	.panel_media_floated .fauxTable { display:grid; }
	.panel_media_floated .fauxTable > div { display:block; margin:0 auto 1.5em; padding:0 !important; }
	.panel_media_floated .fauxTable .media { order:1; width:100%; }
	.panel_media_floated .fauxTable .content {
    margin:var(--units-1) auto 0;
    order:2;
    width:100%;
  }
  .panel_media_floated .graphic {
    left:auto;
    right:0;
  }
  .panel_media_featured .mask,
  .panel.media-full .media {
    min-height:0px;
    max-height:400px;
  }
  .panel.media-full .media:empty { display:none; }

  .accordion .heading .headline { font-size:var(--font-size-1); }
  .accordion .item .heading:after {
    font-size:20px;
    top:6px;
  }
  .accordion .content { padding:8px 16px 16px; }

  .panel.media-full > .media,
  .panel-mediaFloated .fauxTable .media {
    position:relative;
    width:100%;
    height:auto !important;
  }
  .panel.media-full > .media:last-child { margin-bottom:-0.5em; }
  .panel-mediaFloated.media-full .fauxTable .media { display:none; }
  .panel.media-full > .media img {
    min-height:0;
    min-width:0;
    position:relative;
    top:0;
    left:0;
    transform:none !important;
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .panel_gallery h2:after { content:none; }
  .panel_gallery .full {
    min-height:60vh;
    max-height:60vh;
  }
  
  .svg_controls { margin-bottom:25px; }
  
  .id_30 .content-page > .scrollNav .inputs { 
    padding-left:1em !important; 
    padding-right:1em !important; 
  }
  .listing_gallery .main_image { height:auto; }
  .listing_gallery .main_image,
  .listing_gallery .main_image img { aspect-ratio:16/9; }
  
	.form .row { margin:0 0; }
	.form .row .input,
	.form .label {
	  padding:0 0px;
	  width:100%;
	}
	.form .input label { left:1em; }

  .footer { margin:0; }
  .footer .equal { display:block; }
}



/*	Phones Portrait	--	under 540
============================================================================================== */
@media only screen and (max-width:539px){

	.header .logo {
    background-size:cover !important;
    height:56px;
		width:44px;
    left:1.5em;
	  overflow:hidden;
	}
	.header .logo img { display:none; }

	.panel_media_floated .fauxTable .media { width:100%; }

  .panel_builder_buckets .item .links {
    text-align:center;
    display:block;
  }
  .panel_builder_buckets .item .links:before { content:none; }
  .panel_builder_buckets .item .links a { display:block; }
  .panel_builder_buckets .item .links a + a { margin-top:15px; }

	.panel .filters .label {
	  display:block;
	  margin:0 0 0.5em;
	}
	.panel .filters .filter {
	  padding:0.33em 1em;
	  margin:0 1em 0.5em 0;
	  border:1px solid #999;
	  border-radius:4px;
	}
	.panel .filters .filter:last-child { border-right:1px solid #999; }
	.panel .filters .filter:hover,
	.panel .filters .filter.active {
	  background:#fafafa;
	}
	.panel.dark .filters .filter {}
	.panel.dark .filters .filter:hover,
	.panel.dark .filters .filter.active {
		background:#232b33;
  	color:var(--color-gray-50);
	}

  .panel_gallery .full {
    min-height:50vh;
    max-height:50vh;
  }

  .form {
    padding:25px 25px 50px;
    box-sizing:border-box;
    column-gap:0;
  }
  
  .listings_feed .meta,
  .listing_detail .meta { grid-template-columns:1fr; }
  .listings_feed .address,
  .listing_detail .address { justify-self:auto; }

  .footer .loc,
  .footer .hours {
    margin:0 auto;
    display:block;
  }
  .footer .loc { width:170px; }
  .footer .hours { width:150px; margin-top:30px; }

  .banner.go { padding-bottom:20px; }
  .banner.go .logo { width:240px; }
  .banner.go .logo img { width:120px; }
  .banner.go .h1-wrap {
    margin-top:-220px;
    padding:250px 60px 30px;
  }
  .banner.go .h1-wrap h1 span { font-size:1.5em; }
}




/*	Small Phones	--	under 375
============================================================================================== */
@media only screen and (max-width:374px){

}




/*	SCREEN SIZE GLOBALS
============================================================================================== */
@media only screen and (min-width:1024px){ /* desktop only */ .desktop { display:none; } }
@media only screen and (min-width:768px) and (max-width:1023px) { /* tablets */ .tablet { display:none; } }
@media only screen and (max-width:767px) { /* phones */ .mobile { display:none; } }
