/* CSS Document */

/*	Resets
============================================================================================== */
:root {
  --color-black:#030304;
  --color-navy:#133555;
  --color-blue:#a7e3fc;
  --color-red:#ae231b;
  --color-gray:#6a8199;
  --color-gray-10:#1a1a1a;
  --color-gray-30:#4d4d57;
  --color-gray-50:#6a8199;
  --color-gray-70:#b3b3b3;
  --color-gray-90:#d4d4df;
  --color-gray-98:#f0f2f5;
  --color-white:#ffffff;

  --color-primary:var(--color-navy);
  --color-secondary:var(--color-red);
  --color-accent:var(--color-blue);
  --color-trim:var(--color-gray);

  --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);

  --radius-default:25px;

  --typeface-display:"helvetica-neue-lt-pro", Helvetica, Arial, sans-serif;
  --typeface-default:"helvetica-neue-lt-pro", Helvetica, Arial, sans-serif;

  --font-size-1:var(--units-1);
  --font-size-2:calc(var(--font-size-1) * 1.25);
  --font-size-3:calc(var(--font-size-1) * 1.55);
  --font-size-4:calc(var(--font-size-1) * 1.75);
  --font-size-5:calc(var(--font-size-1) * 2);
  --font-size-6:calc(var(--font-size-1) * 2.5);
  --font-size-7:calc(var(--font-size-1) * 2.8);
  --font-size-neg-1:calc(var(--font-size-1) * 0.875);
  --font-size-neg-2:calc(var(--font-size-1) * 0.750);
}
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-navy);
}
html { background:var(--color-gray-98); }
.skip { display:none !important; }
.panel *::selection,
.header *::selection,
.footer *::selection,
.banner *::selection,
.mainNav *::selection,
.excerpt .simplesearch-highlight {
  color:var(--color-gray-10);
  background:rgba(167, 227, 252, 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-10);
  background:rgba(167, 227, 252, 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:1199px;
	z-index:10;
}
.panel_bulging_cards + .panel_bulging_cards { margin-top:-50px; }
.panel_bulging_cards + .panel_bulging_cards .centre { padding-top:0; }
.clear { clear:both; }
.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";
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family:var(--typeface-display);
  font-weight:600;
  line-height:1.1;
  letter-spacing:-0.025em;
  margin:0 auto 25px;
  display:block;
}
h1, .h1 { font-size:var(--font-size-7); font-weight:700; }
h2, .h2 { font-size:var(--font-size-6); 
  font-weight:700; 
  margin-bottom:25px; 
  position:relative;
  top:-5px;
}
h2:not(.panel_media_floated h2) { text-wrap:balance; }
h3, .h3 { font-size:var(--font-size-3); font-weight:700; line-height:1.2; }
h4, .h4 { font-size:var(--font-size-2); }
h5, .h5 { font-size:var(--font-size-1); }
h6, .h6 { font-size:var(--font-size-1); font-weight:400; }
p + h2, p + h3, p + h4, p + h5, p + h6,
p + .h2, p + .h3, p + .h4, p + .h5, p + .h6 { margin-top:25px; }
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:25px; }
.subheading {
  color:var(--color-gray-50);
  font-size:var(--font-size-5);
  font-weight:700;
  text-align:center;
  text-wrap:balance;
  line-height:1.2;
  margin-top:-25px !important;
  margin-bottom:40px !important;
}
.subheading:last-child { margin-bottom:0 !important; }
.bg-blue .subheading { color:var(--color-navy); }
.centre a,
.centre a:hover,
.centre button,
.centre button: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],
input[type=file],
select,
textarea {
	font-family:inherit;
	font-size:inherit;
	color:inherit;
}
.center,
.ul-center { text-align:center; }
.ul-center ul {
  text-align:left;
  margin-bottom:1em !important;
  display:inline-block;
}
img, iframe { max-width:100%; }
iframe { border:none !important; }
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%; }
.content-wrapper > div:last-child {padding-bottom:25px;}	/*  Sticky footer fix  */

/* Table */
.table-wrap {
  max-width:100%;
  padding-top:25px;
  overflow-y:visible;
  overflow-x:scroll;
  position:relative;
}
/* .table-wrap:before {
  content:"scroll →";
  font-size:12px;
  font-style:italic;
  letter-spacing:0.025em;
  display:block;
  position:absolute;
  top:0;
  right:0;
} */
table {
  font-family:Arial, Helvetica, sans-serif;
  border-collapse:separate;
  border-spacing:0;
  border:0.5px solid rgba(0, 0, 0, 0.25);
  border-radius:10px;
  overflow:hidden;
  width:100%;
  margin:25px auto;
}
h2 + table { margin-top:50px; }
table:first-child { margin-top:0; }
table:last-child { margin-bottom:0; }
td, th {
  text-wrap:balance;
  line-height:1.4;
  border:0.5px solid rgba(0,0,0,0.25);
  padding:12px 10px;
}
tr:last-child td:first-child { border-bottom-left-radius:10px; }
tr:last-child td:last-child { border-bottom-right-radius:10px; }
th {
  text-align:left;
  background-color:rgba(255,255,255,0.75);
}
td {
  font-size:0.85em;
}
.panel th {
  color:var(--color-navy);
  background-color:var(--color-gray-90);
}
.panel td {
  color:var(--color-navy);
  background-color:var(--color-gray-98);
}

/*	Base Classes
============================================================================================== */
.btn {
  font-family:var(--typeface-default);
  font-size:1em;
  font-weight:700;
  text-align:center;
  text-decoration:none !important;
  letter-spacing:normal;
  line-height:1.4;
  border:none;
  border-radius:var(--radius-default);
  min-width:200px;
  margin:1em auto 0;
  padding:0.6em 1.5em 0.65em;
  display:inline-block;
  position:relative;
  cursor:pointer !important;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.banner.v2 .btn { margin-top:0; }
.btn.navy {
  color:var(--color-white) !important;
  background:var(--color-navy);
}
.btn.navy:hover {
  color:var(--color-white) !important;
  background:var(--color-red);
}
.btn.blue {
  color:var(--color-navy) !important;
  background:var(--color-blue);
}
.btn.blue:hover {
  color:var(--color-white) !important;
  background:var(--color-red);
}
.btn.red {
  color:var(--color-white) !important;
  background:var(--color-red);
}
.btn.red:hover {
  color:var(--color-navy) !important;
  background:var(--color-blue);
}
.panel.bg-cyan .btn.red:hover,
.panel.dark .btn.red:hover {
  color:var(--color-red) !important;
  background:var(--color-white);
}
.btn.default {
  color:var(--color-white) !important;
  background:var(--color-navy);
}
.btn.default:hover {
  color:var(--color-white) !important;
  background:var(--color-red);
}
.btn.white {
  color:var(--color-navy) !important;
  background:var(--color-white);
}
.btn.white:hover {
  color:var(--color-white) !important;
  background:var(--color-red);
}
.btn.ghost {
  color:var(--color-navy) !important;
  background:transparent !important;
  border:1px solid var(--color-navy);
}
.btn.ghost.white {
  color:var(--color-white) !important;
  border:1px solid var(--color-white);
}
.btn.ghost:hover {
  color:var(--color-navy) !important;
  background:var(--color-blue) !important;
  border:1px solid var(--color-blue);
}
.btn.ghost.white:hover {
  color:var(--color-white) !important;
  background:var(--color-red) !important;
  border:1px solid var(--color-red);
}
.header .btn.phone:hover {
  color:var(--color-navy) !important;
  background:var(--color-blue) !important;
  border:1px solid var(--color-blue);
}
.btn.ghost.phone:hover i,
.btn.white.phone:hover i { color:var(--color-navy) !important; }
.panel.dark .content:not(.item .content) .btn.ghost {
  color:var(--color-white) !important;
  background:transparent;
  border:1px solid var(--color-white);
}
.panel.dark .content:not(.item .content) .btn.ghost:hover {
  color:var(--color-red) !important;
  background:var(--color-white) !important;
}
.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;
}
hr {
  border:none;
  border-top:1px solid var(--color-gray-90);
  margin:25px auto;
}
.catalog .dark hr { border-color:rgba(255,255,255,0.25); }
.catalog .bg-cyan hr { border-color:rgba(19,53,85,0.25); }
.panel_media_floated.dark hr { border-color:rgba(255,255,255,0.5); }


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

/*	Header
============================================================================================== */
.header {
  background:var(--color-navy);
  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: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 {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  left:3em;
  display:block;
}
.header .logo img {
  display:block;
  width:auto;
  height:30px;
  opacity:1;
}
.header .logo:hover img {
  opacity:0;
}
.header .btn.phone,
.header .btn.book {
  min-width:120px;
  padding:0.5em 1.25em 0.55em;
}
.header .btn.phone,
.header .btn.book,
.header .fa-search {
  margin:0 0 0 15px;
  float:right;
  display:block;
  position:relative;
  top:50%;
  transform:translateY(-50%);
}
.btn.phone i {
  color:var(--color-blue);
  margin:0 2px 0 -3px;
  transform:rotate(40deg);
  -moz-transform:rotate(40deg);
  -webkit-transform:rotate(40deg);
  position:relative;
  top:-0.5px;
}
.btn.phone:hover i {
  transform:rotate(30deg);
  -moz-transform:rotate(30deg);
  -webkit-transform:rotate(30deg);
}

.header .btn.book:hover,
.footer .btn.book:hover {
  color:var(--color-navy) !important;
  background:var(--color-blue);
}
.header .fa-search {
  color:var(--color-blue);
  font-size:20px;
  text-align:center;
  height:50px;
  line-height:48px;
  width:50px;
  margin-right:3em;
  display:block;
  float:right;
}
.header .fa-search:hover {
  color:var(--color-white);
}
.header .fa-search:before {
  -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-search:hover:before {
  font-size:1.1em;
}
.jbmodal-search {
  width:auto;
  position:relative;
}
.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-98);
  border:1px solid var(--color-gray-70);
  border-radius:var(--radius-default);
  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-navy);
}
.jbmodal-search input[type=submit] {
  color:transparent;
  text-align:center;
  background:transparent;
  border-radius:var(--radius-default);
  border:0;
  height:36px;
  line-height:36px;
  width:36px;
  padding:0;
  position:absolute;
  top:0.25em;
  left:auto;
  right:0.25em;
  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-navy);
  border:0;
  border-radius:var(--radius-default);
  -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-red);
  -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-box .jbmodal-controls i.fa:hover {
  color:var(--color-red);
  background:none;
}
.header > .fa-bars {
  color:var(--color-white);
  font-size:22px;
  text-align:center;
  height:50px;
  line-height:50px;
  width:50px;
  margin:0;
  position:absolute;
  top:20px;
  right:1em;
  z-index:9;
  cursor:pointer;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.menuOpen .header > .fa-bars:before {
  content:"\f00d";
}



/*	Nav
============================================================================================== */
.mainNav {
  margin:0;
  position:absolute;
  left:50%;
  transform:translateX(-60%);
  z-index:1000;
}
/* First Level Nav */
.mainNav ul {
  font-size:0;
  font-family:var(--typeface-default);
  font-weight:400;
  margin:0;
}
.mainNav>ul>li {
  font-size:var(--font-size-1);
  display:inline-block;
  margin:0;
  position:relative;
}
.mainNav li.id_1,
.mainNav li.id_59 { display:none; }
.mainNav>ul>li:first-child {}
.mainNav>ul>li.active {}
.mainNav>ul>li>a,
.mainNav>ul>li>span {
  color:var(--color-white);
  font-weight:500;
  text-decoration:none;
  letter-spacing:normal;
  height:90px;
  line-height:90px;
  margin:0;
  padding:0 1em;
  display:inline-block;
  position:relative;
}
.mainNav>ul>li>a:hover {
  color:var(--color-blue);
}
.mainNav>ul>li.parent>a:after,
.mainNav>ul>li.parent>span:after {
  content:"\f0d7";
  font-family:"Font Awesome 7 Pro";
	font-weight:900;
  color:rgba(255,255,255,0.8);
  font-size:14px;
  text-align:center;
  height:10px;
  line-height:10px;
  width:14px;
  display:inline-block;
  position:absolute;
  left:50%;
  margin-left:-5px;
  bottom:18px;
  opacity:0;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
}
.mainNav>ul>li.parent:hover>a:after,
.mainNav>ul>li.parent:hover>span:after {
  opacity:1;
}
/* Second Level Nav */
.mainNav>ul>li>ul {
  background:#102D48;
  /* box-shadow:inset 0px 4px 6px -2px rgba(0,0,0,0.2); */
  /* border-top:1px solid rgba(0,0,0,0.2); */
  width:210px;
  display:none;
  position:absolute;
  top:89px;
  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.05);
  line-height:1em;
	position:relative;
  margin:0;
}
.mainNav>ul>li>ul>li:first-child {
  border-top:0;
}
.mainNav>ul>li>ul>li>a {
  color:var(--color-white);
  font-size:16px;
  line-height:1.2;
  text-decoration:none;
  padding:10px 20px 12px;
  display:block;
}
.mainNav>ul>li>ul>li:not(.first)>a {
  padding-left:2em;
}
.mainNav>ul>li>ul>li>a:hover {
  color:var(--color-white);
  background:var(--color-red);
}
.mainNav>ul>li>ul>li.parent>a:after,
.mainNav>ul>li>ul>li.parent>span:after {
  font-family:"Font Awesome 7 Pro";
	font-weight:900;
  content:"\f0da";
  font-size:14px;
  color:rgba(255,255,255,0.4);
  text-align:center;
  height:10px;
  line-height:10px;
  width:14px;
  position:absolute;
  right:5px;
  top:50%;
  margin-top:-6px;
  display:inline-block;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
}
.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;
  background:#0E283F;
  border-left:1px solid rgba(255,255,255,0.05);
  border-top:0;
  /* box-shadow:inset 0px 4px 6px -2px rgba(0,0,0,0.2); */
  width:210px;
  position:absolute;
  top:-2px;
  left:100%;
  z-index:10;
}
.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.05);
}
.mainNav>ul>li>ul>li>ul>li:first-child {
  border-top:0;
}
.mainNav>ul>li>ul>li>ul>li>a {
  color:var(--color-white);
  font-size:16px;
  text-decoration:none;
  line-height:1.2;
  display:block;
  padding:10px 20px 12px;
}
.mainNav>ul>li>ul>li>ul>li>a:hover {
  color:var(--color-white);
  text-decoration:none;
  background:var(--color-red);
}
.mainNav li .trigger { display:none; }



/*	Footer
============================================================================================== */
.footer {
  color:var(--color-white);
	line-height:1.4;
  background:var(--color-navy);
  padding:3em 4em;
  position:relative;
}
.footer:before {
  content:"";
  background:url("/assets/images/theme/icon-bump.png") 25% center/120px 120px no-repeat #133555;
  border-radius:100%;
  -moz-border-radius:100%;
  -webkit-border-radius:100%;
  height:150px;
  width:150px;
  display:block;
  position:absolute;
  top:-40px;
  left:50%;
  transform:translateX(-50%);
  -moz-transform:translateX(-50%);
  -webkit-transform:translateX(-50%);
  z-index:2;
}
.footer .top,
.footer .bottom {
  grid-template-columns:1fr 1fr;
  display:grid;
}
.footer .logo {
  height:30px;
  margin-bottom:5px;
  display:inline-block;
}
.footer .tagline {
  color:var(--color-white);
}
.footer .logo-btns { position:relative; }
.footer .btns {
  position:absolute;
  bottom:0;
  left:0;
}

.footer .nav .col { float:right; }
.footer .nav .col:first-child { margin-left:50px; }
.footer .heading {
  color:var(--color-blue);
  font-size:var(--font-size-2);
  font-weight:bold;
  margin-bottom:10px;
}
.footer ul {
  list-style:none;
  margin:0;
  padding:0;
}
.footer .nav a {
  color:var(--color-white);
  text-decoration:none;
}
.footer .nav a:hover {
  color:var(--color-blue);
}

.footer .bottom {
  align-items:end;
  padding-top:50px;
}
.footer .bottom .social-paymethods { text-align:right; }
.footer .social {
  font-size:22px;
  line-height:1;
  margin-bottom:20px;
}
.footer .social i {
  color:var(--color-white);
  height:20px;
  line-height:20px;
  width:auto;
  margin:0 10px;
  display:inline-block;
}
.footer .social i:hover {
  color:var(--color-blue);
}
.footer .paymethods {
  color:var(--color-gray);
  font-size:26px;
  line-height:1;
}

.footer .credits {
  font-size:13px;
  text-align:center;
  margin:0;
	position:absolute;
	bottom:3em;
	left:50%;
  transform:translateX(-50%);
  -moz-transform:translateX(-50%);
  -webkit-transform:translateX(-50%);
}
.footer .credits a {
  color:var(--color-gray-90);
	text-decoration:none !important;
  border-right:1px solid rgba(255,255,255,0.2);
  padding:0 1em;
  display:inline-block;
}
.footer .credits a:hover {
  color:var(--color-blue);
}
.footer .credits a:last-of-type {
	padding-right:0;
  border-right:0;
}
.footer .copyright {
  margin-top:10px;
  display:block;
}

#deals-footer {
  width:350px;
  margin-top:25px;
  display:block;
}
#deals-footer .input {
  width:100%;
  max-width:100%;
  position:relative;
}
#deals-footer .input label { 
    color:var(--color-gray-90);
    top:14px; 
}
#deals-footer .input label.focus { top:-24px; }
#deals-footer #email-footer {
  color:var(--color-gray-90);
  font-style:italic;
  background:transparent;
  border:1px solid var(--color-blue);
  outline:none;
  border-radius:12px;
  -moz-border-radius:12px;
  -webkit-border-radius:12px;
  line-height:50px;
  height:50px;
  width:100%;
  margin:0;
  padding:0 50px 0 1em;
  display:block;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
#deals-footer .send {
  color:var(--color-blue) !important;
  font-size:0;
  text-align:center;
  background:transparent;
  border:none;
  border-radius:12px;
  -moz-border-radius:12px;
  -webkit-border-radius:12px;
  line-height:50px;
  height:50px;
  width:50px;
  min-width:50px;
  padding:0;
  display:block;
  position:absolute;
  top:0;
  right:3px;
  z-index:2;
  cursor:pointer;
}
#deals-footer .send:before {
  font-family:"Font Awesome 7 Pro";
  font-weight:600;
  content:"\f1d8";
  font-size:22px;
  display:inline-block;
}
#deals-footer .send:hover { color:var(--color-red) !important; }


/*	Banner
============================================================================================== */
.banner {
  text-align:left;
  background:var(--color-navy);
	margin:90px 0 0;
  padding:0;
  position:relative;
	z-index:2;
  overflow:hidden;
}
.banner .centre {
  padding:var(--units-5) var(--units-2) var(--units-4);
}
.banner-home .centre {
  padding:var(--units-6) var(--units-2) var(--units-5);
}
.banner .gradient {
  /* background:linear-gradient(to right,  rgba(19,53,85,0.98) 40%,rgba(19,53,85,0) 100%); */
  /* background:linear-gradient(90deg,rgba(18,49,80,100) 30%,rgba(19,53,85,0.93) 60%,rgba(255,255,255,0) 90%); */
  background:linear-gradient(90deg,rgba(0,0,0,1) 45%,rgba(255,255,255,0) 80%);
  height:100%;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  z-index:-1;
}
.banner .bg {
  background:url(/assets/images/bg-banner.jpg) center center;
  -webkit-background-size:cover;
  -moz-background-size:cover;
  -o-background-size:cover;
  background-size:cover;
  width:100%;
  height:100%;
  display:block;
  position:absolute;
  top:0;
  left:0;
  opacity:1;
  z-index:-2;
}
.tpl_2 .banner .bg,
.banner.v2 .bg {
  left:20%;
  opacity:1 !important;
  left:30% !important;
  right:0;
  width:auto;
}
.banner-home .bg { opacity:0.9 !important; }

.banner .box {
  text-align:center;
  background:var(--color-gray);
  background:hsl(210.64deg 18.73% 55.78% / 80%);
  border-radius:var(--radius-default);
  border:1px solid var(--color-gray);
  box-shadow:0 5px 10px rgba(0, 0, 0, 0.5);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  width:580px;
  max-width:100%;
  padding:35px;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.banner .box hr {
  border-top:2px solid var(--color-gray-70);
}

.banner.inner .phone {
  color:var(--color-blue);
  font-size:var(--font-size-6);
  font-weight:bold;
  text-transform:uppercase;
  line-height:1.2;
  margin:0 0 25px;
  display:inline-block;
}
.banner.inner .phone:hover {
  color:var(--color-red);
}
.banner h1,
.banner .h1 {
  text-wrap:balance;
}
.banner-home h1,
.banner-home .h1 {
  color:var(--color-white);
  font-size:60px;
  text-shadow:1px 1px 0 rgba(0,0,0,0.25);
  margin:0 0 25px;
}
.banner-home h1 span,
.banner-home .h1 span {
  font-size:0.5em;
  letter-spacing:-0.015em;
  display:block;
}
.banner.inner h1,
.banner.inner .h1 {
  color:var(--color-white);
  text-shadow:0 0 4px rgba(0,0,0,0.25);
  margin:0 0 15px;
}
.banner.inner h1,
.banner.inner .h1,
.banner.inner .intro {
  width:75%;
  margin-left:0;
}

.banner .intro {
  text-wrap:balance;
  max-width:100%;
  margin:0 auto 25px;
}
.banner-home .intro {
  color:var(--color-blue);
  font-weight:500;
  text-shadow:1px 1px 0 rgba(0,0,0,0.25);
}
.banner-home .intro span {
  color:var(--color-red);
  text-shadow:none;
}
.banner.inner .intro {
  color:var(--color-gray-90);
  font-size:var(--font-size-4);
  text-shadow:rgba(0, 0, 0, 0.25) 0px 0px 4px;
  letter-spacing:-0.015em;
  line-height:1.2;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.banner.inner .intro p {
  text-shadow:rgba(0, 0, 0, 0.25) 0px 0px 4px;
  margin-bottom:1em;
}

.banner .ctas { margin-bottom:25px; }
.banner .btn.white:hover {
  color:var(--color-navy) !important;
  background:var(--color-blue) !important;
}
.banner .btn + .btn { margin-left:25px; }


/* Breadcrumbs */
.crumbContainer {
  font-size:0;
  text-align:left;
	margin:0;
}
.crumbContainer .crumb {
	font-size:13px;
	color:rgba(255,255,255,0.5);
	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:"\f105";
}
.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:first-child a { padding-left:0; }
.crumbContainer .crumb a:hover {
  color:var(--color-blue);
}


/*	Template Panels
============================================================================================== */
.content-wrapper {
  position:relative;
  margin:-1px auto;
  padding:1px 0;
  background:transparent;
  z-index:1;
}
.banner-buckets + .content-wrapper { padding-top:150px; }
.panel { position:relative; }
.panel .bg {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:0;
}
.panel.bg-icon-on .bg { background:url(/assets/images/theme/bg-icon-pattern-2.png) repeat; }
.panel.bg-icon-on.light .bg { filter:invert(50%); }
.panel.bg-icon-on.bg-white .bg,
.panel.bg-icon-on.bg-blue .bg { opacity:0.65; }
.panel.bg-icon-on.bg-navy .bg,
.panel.bg-icon-on.bg-black .bg { opacity:0.4; }

/* Panel Backgrounds */
.panel				    { background:var(--color-gray-98); }
.panel.bg-navy		{ background:var(--color-navy); }
.panel.bg-blue		{ background:var(--color-gray); }
.panel.bg-cyan		{ background:var(--color-blue); }
.panel.bg-white		{ background:var(--color-white); }
.panel.bg-black		{ background:var(--color-gray-10); }
.panel.bg-gray		{ background:var(--color-gray-98); }

.panel_content_plain.bg-img .bg,
.panel_accordion.bg-img .bg,
.panel_tabs.bg-img .bg	{ opacity:0.2; }

/* Custom Styling */
.id_41 .panel_content_cards .content { text-align:left; }
.id_41 .panel_content_cards .scroll {
  padding-right:10px;
  height:200px;
  overflow-y:scroll;
}

/* .id_43 .panel_content_cards .columns {
  margin-right:-25px;
  margin-left:-25px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}
.id_43 .panel_content_cards .cards .item {
  flex:0 0 calc(25% - 50px);
  padding:35px 25px;
} */
.id_43 .panel_content_cards .item .content h3 + p,
.id_44 .panel_content_cards .item .content h3 + p,
.parent_44 .panel_content_cards .item .content h3 + p {
  font-size:0.9em;
}
.id_43 .panel_content_cards .item .icon,
.id_44 .panel_content_cards .item .icon,
.parent_44 .panel_content_cards .item .icon { display:none; }
.id_43 .panel_content_cards .item .content,
.id_44 .panel_content_cards .item .content,
.parent_44 .panel_content_cards .item .content { margin-top:0 !important; }
.id_43 .panel_content_cards .item .content h3,
.id_44 .panel_content_cards .item .content h3,
.parent_44 .panel_content_cards .item .content h3 { margin-bottom:10px; }
.id_43 .panel_content_cards .item iframe,
.id_44 .panel_content_cards .item iframe,
.parent_44 .panel_content_cards .item iframe {
  height:240px;
  width:100%;
  margin:15px auto 0;
  display:block;
}

.sun:before,
.snow:before {
  font-family:"Font Awesome 7 Pro";
  font-weight:600;
  content:"\f0da";
  font-size:14px;
  line-height:22px;
  height:26px;
  margin-right:10px;
  display:inline-block;
  vertical-align:middle;
}
.sun:before { content:"\f185"; }
.snow:before { content:"\f2dc"; }

p.icon {
  font-family:var(--typeface-default);
  font-weight:normal;
  text-align:left;
  line-height:1.618em;
  width:auto;
  padding-left:30px;
  display:block;
  position:relative;
  -webkit-font-smoothing:inherit;
  -moz-osx-font-smoothing:none;
}
p.icon:before {
  font-family:"Font Awesome 7 Pro";
  font-weight:bold;
  text-align:center;
  line-height:1;
  width:var(--fa-width, 1.25em);
  display:inline-block;
  position:absolute;
  top:4px;
  left:0;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

.id_57 .panel.bg-black { background:var(--color-red); }
.id_57 .panel.bg-black .btn.white:hover { background:var(--color-navy); }

/* Panel Color Modes */
.panel .content,
.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-navy); }
.panel .content h2:first-child span {
  color:var(--color-gray-50);
  text-wrap:balance;
  margin-left:0.1em;
  display:inline;
 }
.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,
.panel.dark .slideshow .caption,
.panel.dark .careers .item { color:var(--color-gray-98); }
.panel.dark .content h2:first-child span { color:var(--color-blue); }
.panel_accordion .item .content,
.panel_accordion .item .content h3,
.panel_accordion .item .content h4,
.panel_content_cards .item .content,
.panel_content_cards .item .content h3,
.panel_content_cards .item .content h4 { color:var(--color-navy); }


/* 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; }
.repeater.careers { text-align:center; }

.panel_content_plain .content,
.panel_cta .content,
.panel_form .content,
.panel_accordion .content,
.panel_accordion .repeater,
.panel_tabs .content,
.panel_tabs .repeater,
.panel_gallery .repeater,
.panel_catalog .repeater {
	width:1000px;
	max-width:100%;
	margin:0 auto;
}
/* .panel_content_plain .content { text-wrap:balance; } */

.panel h1,
.panel .h1,
.panel h2,
.panel .h2 { text-align:center; }
.panel_content_plain .content .ctas,
.panel_content_columns .content .ctas,
.panel_content_cards .content .ctas,
.panel_icon_tiles .content .ctas,
.panel_accordion .content .ctas,
.panel_tabs .content .ctas,
.panel_gallery .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_map .content,
.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 { text-align:left; }

.panel_media_featured .mask {
	position:relative;
  margin:0 auto var(--units-4);
  display:block;
  width:1167px;
  max-width:100%;
  height:auto;
  aspect-ratio:1167 / 688;
  background:url(/assets/images/theme/mask-laptop.png) no-repeat center top;
  background-size:contain;
}
.page-index .panel_media_featured:first-child .mask {
  margin-top:calc(-380px - var(--units-6));
}
.panel_media_featured .mask .media {
  position:absolute;
  display:block;
  width:75.75%;
  height:80.23%;
  left:12.9%;
  top:4.8%;
}
.panel .media.jbmodal .fa-play {
	position:absolute;
  top:50%;
  left:50%;
  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_media_featured .content,
.panel_content_cards .centre > .content,
.panel_bulging_cards .centre > .content,
.panel_buckets .content,
.panel_catalog .content,
.panel_slideshow .content,
.panel_gallery .content,
.panel_logo_carousel .content {
	width:800px;
	max-width:100%;
	text-align:center;
  text-wrap:balance;
}
.panel_slideshow .content,
.panel_catalog .catalog .content { text-align:left; }
.panel_slideshow .ctas { text-align:center; }
.banner .columns,
.panel .columns {
  display:grid;
  gap:50px;
  margin:0 auto;
}
.panel.buckets-expanded .columns {
  margin-right:-25px;
  margin-left:-25px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}
.panel .tiles.columns { align-items:center; }
.columns.count-2 { grid-template-columns:repeat(2, 1fr); }
.columns.count-3 { grid-template-columns:repeat(3, 1fr); }
.columns.count-4 {
  text-align:center;
  grid-template-columns:repeat(4, 1fr);
}
.id_43 .panel_content_cards .columns,
.columns.count-5 {
  text-align:center;
  grid-template-columns:repeat(5, 1fr);
  justify-content:center;
}
.panel.buckets-expanded .columns.count-2 .bucket {
  flex:0 0 calc(50% - 50px);
}
.panel.buckets-expanded .columns.count-3 .bucket {
  flex:0 0 calc(33.33% - 50px);
}
.panel.buckets-expanded .columns.count-4 .bucket {
  flex:0 0 calc(25% - 50px);
}
.id_43 .panel_content_cards .columns .item,
.panel.buckets-expanded .columns.count-5 .bucket {
  flex:0 0 calc(20% - 50px);
}
.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 {
  line-height:1.25;
  margin-bottom:0.25em;
  color:inherit;
}



/*	Element Blocks
============================================================================================== */
.video169 {
	width:100%;
	max-width:100%;
	height:0;
	padding-bottom:56.25%;
	position:relative;
}
.video169 iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.panel .content p,
.panel .content ul,
.panel .content ol,
.panel .caption p,
.panel .caption ul,
.panel .caption ol {
	margin:0 auto 1em;
}
.panel .content p:last-child,
.panel .caption p:last-child,
.panel .content ul:last-child,
.panel .caption ul:last-child,
.panel .content ol:last-child,
.panel .caption ol:last-child{
	margin-bottom:0;
}
.panel .content ul,
.panel .content ol,
.panel .caption ul,
.panel .caption ol {
	padding-left:25px;
}
.panel .cards ul { text-align:left; }

/* custom lists */
.panel .content ul.custom,
.panel .content ul.checkmarks { 
  list-style:none; 
  padding-left:15px !important;
  position:relative;
}
/* .panel .content h2 + ul:last-child,
.panel .content h3 + ul:last-child {
  padding:0;
} */
.catalog .content h3 + ul:last-child {
  padding-left:25px;
}
.panel .content ul.custom li {
  padding-left:25px;
  position:relative;
}
.panel .content ul.custom li:before,
.panel .content ul.checkmarks li:before {
  font-size:14px;
  font-weight:600;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 7 Pro";
  display:inline-block;
  position:absolute;
  top:0;
  left:0;
}
.panel .content ul.checkmarks li:before {
  content:"\f00c";
}
.panel .content ul.black-diamond li:before {
  content:"\f219";
}
.panel .content ul.yellow-caution li:before {
  content:"\f071";
  color:#FFCF09;
}
.panel .content ul.green-check li:before {
  content:"\f00c";
  color:#11AC09;
}

ul.location_list {
  list-style:none;
  padding-right:50px;
}
ul.location_list li {
  margin-right:5px;
  display:inline-block;
  position:relative;
}
ul.location_list li:before {
  content:"\e7d1";
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 7 Pro";
  font-weight:400;
  margin-right:10px;
  display:inline-block;
}

.panel .content a,
.panel .link,
.banner .link {
	color:var(--color-secondary);
}
.panel .content a:hover,
.panel .link:hover,
.banner .link:hover {
	color:var(--color-accent);
}
.panel .content,
.panel .repeater { margin:50px auto 0; }
.panel .repeater:first-child { margin-top:0; }
.panel .repeater:not(.catalog):last-child { margin-bottom:0; }
.panel .content:not(.columns) .ctas { margin-top:30px; }
.panel .content .ctas,
.panel .accordion .content .ctas,
.panel .content .ctas + .ctas { margin-top:25px; }
.panel .columns .content,
.panel .centre > .content:first-child,
.panel .content_pre,
.panel .content .ctas + .ctas .btn,
.panel .ctas .btn:first-child { margin-top:0; }


.fauxTable { display:table-row; position:relative; }
.panel_media_floated .fauxTable.has-overflow,
.accordion .grid.has-overflow {
  display:flex;
  align-items:center;
}
.fauxTable.has-overflow .content,
.accordion .inner {
  max-height:var(--image-height);
  overflow-y:auto;
}
/* .fauxTable.has-overflow .content,
.accordion .inner,
.slideshow .caption,
.scroll {
  scrollbar-color:var(--color-blue) #fff;
} */
.fauxTable.has-overflow .content::-webkit-scrollbar,
.accordion .inner::-webkit-scrollbar,
.slideshow .caption::-webkit-scrollbar,
.scroll::-webkit-scrollbar {
  -webkit-appearance:none;
  -moz-appearance:none;
  background-color:#fff !important;
  border-radius:4px;
  width:7px;
}
.bg-white .fauxTable.has-overflow .content::-webkit-scrollbar,
.item.bg-white .scroll::-webkit-scrollbar {
  background-color:#dedede !important;
}
.fauxTable.has-overflow .content::-webkit-scrollbar-thumb,
.accordion .inner::-webkit-scrollbar-thumb,
.slideshow .caption::-webkit-scrollbar-thumb,
.scroll::-webkit-scrollbar-thumb {
  border-radius:4px;
  background-color:var(--color-blue) !important;
}
.item.bg-white .scroll::-webkit-scrollbar-thumb,
.item.bg-cyan .scroll::-webkit-scrollbar-thumb {
  background-color:var(--color-gray) !important;
}
.fauxTable > div { display:table-cell; }
.panel_media_floated.media-full .fauxTable > .content { height:500px; }
.panel_media_floated .fauxTable > div,
.accordion .grid.has-overflow > div {
  vertical-align:middle;
  width:50%;
  margin:0;
  position:relative;
}
.accordion .grid.has-overflow .image { width:40%; }
.accordion .grid.has-overflow .inner { width:calc(60% - 50px); }
.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); 
  padding-right:25px;
}
.panel_media_floated.content-right .media { padding-right:var(--units-3); }
.media { text-align:center; }
.panel_media_floated .media img { 
  /* height:100%;  */
  display:block; 
}
.panel_media_floated.content-right .media img { right:0; }
.panel_media_floated.content-left .media img { left:0; }

.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%;
  object-fit:cover;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}
.panel.media-full > .media img.elem-flip {
  transform:translate(0%,-50%) scaleX(-1);
  -moz-transform:translate(0%,-50%) scaleX(-1);
  -webkit-transform:translate(0%,-50%) scaleX(-1);
}

/* Gallery Panel */
.panel_gallery .full {
  border-radius:var(--radius-default);
  width:100%;
}
.panel_gallery .full img { border-radius:var(--radius-default); }
.panel_gallery .thumbs { margin-top:25px; }
.panel_gallery .thumbs .slick-list {
  display:flex;
  flex-wrap:wrap;
  margin-left:calc(-1 * 25px);
  margin-right:calc(-1 * 25px);
}
.panel_gallery .thumbs .slick-track {
  width:100% !important;
  display:flex !important;
  gap:25px;
  justify-content:space-around;
}
.panel_gallery .thumbs .item {
  border-radius:8px;
  border:4px solid transparent;
  height:120px !important;
  width:20% !important;
  overflow:hidden;
  transition:all 0.165s ease;
}
.panel_gallery .thumbs .item:hover {
  border-color:var(--color-blue);
}
.panel_gallery .thumbs .item.is-active {
  border-color:var(--color-navy);
}
.panel_gallery .thumbs .item img { border-radius:4px; }
.slick-arrow {
  height:50px;
  line-height:50px;
  width:50px;
  z-index:9;
}
.slick-prev { left:-50px; }
.slick-next { right:-50px; }
.slick-arrow:before {
  color:var(--color-gray-50);
  font-size:32px;
  font-style:normal;
  font-variant:normal;
  text-rendering:auto;
  font-family:"Font Awesome 7 Pro";
  font-weight:400;
  text-align:center;
  height:50px;
  line-height:50px;
  width:50px;
  display:block;
  opacity:1;
  transition:all 0.165s ease;
}
.slick-disabled:before { color:var(--color-gray-50) !important; }
.slick-prev:before { content:"\f104"; }
.slick-next:before { content:"\f105"; }
.slick-arrow:hover:before { color:var(--color-red); }

/* Map Panel */
.panel.panel_map { min-height:560px; }
.panel_map .content {
  margin-left:0 !important;
}
.panel_map .mapwrap {
  position:absolute;
  top:0;
  right:0;
  height:100%;
  width:50%;
  z-index:20;
  overflow:hidden;
}
.mapwrap iframe {
  width:100%;
  height:100%;
  /* height:calc(100% + 100px); */
  border:none;
  position:relative;
  /* top:-100px; */
  border:none !important;
}
.id_1 .mapwrap iframe,
.id_43 .mapwrap iframe {
  height:calc(100% + 60px);
  top:-60px;
}
.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 .grid {
  display:grid;
  grid-template-columns:220px 220px;
  column-gap:25px;
  align-items:start;
  justify-items:start;
}
.panel_map .grid p { margin-left:0; }
.panel_map .numbers strong {
  color:var(--color-gray-50);
  font-weight:normal;
}

.panel_map .ctas { display:inline-block; }
.panel_map .ctas + .ctas { margin-left:25px; }

/* Buckets */
.buckets:not(.columns) .bucket {
  width:380px;
  height:405px;
  margin:0 10px 20px;
  display:inline-block;
  position:relative;
}
.bucket {
  font-size:var(--font-size-1);
  text-align:center;
  background:var(--color-white);
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  box-shadow:0 0 30px rgba(0, 0, 0, 0.05);
  -moz-box-shadow:0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow:0 0 30px rgba(0, 0, 0, 0.05);
  padding:25px;
  vertical-align:top;
  position:relative;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}
.bg-blue .bucket { border-color:transparent; }
.buckets-expanded .bucket {
  padding-bottom:calc(var(--units-3) + 1.5em);
}
.bucket:hover {
  border:1px solid var(--color-red);
}
.bucket i {
  font-size:25px;
  text-align:center;
  line-height:25px;
  height:25px;
  margin:0 auto 25px;
  display:block;
}
.bucket i:before {
  vertical-align:middle;
  display:inline-block;
}
.bucket a {
  color:var(--color-primary);
  font-size:var(--font-size-3);
  font-weight:600;
  font-family:var(--typeface-display);
  line-height:var(--units-2);
  margin:0;
  display:block;
  position:relative;
}
.bucket:hover a { color:var(--color-red); }
.bucket p {
  width:unset;
  margin:25px 0 0;
  position:relative;
}
.bucket .link {
  font-size:13px;
  font-weight:bold;
  text-transform:uppercase;
  letter-spacing:0.15em;
  position:absolute;
  bottom:1.5em;
  left:50%;
  transform:translateX(-50%);
}
.buckets:not(.columns) .bucket .btn {
	position:absolute;
  bottom:40px;
  left:50%;
  margin-left:-80px;
}
.bucket .btn {
  width:160px;
  padding-left:0;
  padding-right:0;
}

/* Content Cards */
.panel_content_cards .cards .item {
  text-align:center;
  background:var(--color-white);
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  box-shadow:0 0 30px rgba(0,0,0,0.05);
  -moz-box-shadow:0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow:0 0 30px rgba(0,0,0,0.05);
  padding:40px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.panel_content_cards .cards.columns h3,
.panel_content_cards .cards.columns p.ctas {
  text-align:center;
  text-wrap:balance;
}
.panel_content_cards .cards .icon + .content,
.panel_content_cards .cards.columns p.ctas { margin-top:25px; }
.panel_content_cards .icon i {
  color:var(--color-red);
  font-size:75px;
}
.panel_content_cards .item .ctas a,
.panel_content_cards .item .ctas button {
  background:var(--color-gray-50);
}
.panel_content_cards .item .ctas a:hover,
.panel_content_cards .item .ctas button:hover {
  color:var(--color-white) !important;
  background:var(--color-red) !important;
  border-color:var(--color-red) !important;
}

/* Content Cards */
.panel_bulging_cards .columns {
  padding-right:2px;
  flex-wrap:nowrap;
  flex:unset;
  gap:unset;
  display:flex;
  position:relative;
  overflow-x:hidden;
  overflow-y:auto;
}
.panel_bulging_cards .columns + .content { margin-top:25px; }
.panel_bulging_cards .cards .item {
  text-align:center;
  flex:calc(50% - 24px);
  flex-shrink:1;
  flex-basis:25%;
  width:auto;
  height:400px;
  padding-bottom:20px;
  transition:all .3s;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.panel_bulging_cards .cards .item:not(:last-of-type) {
  margin-right:24px;
}
.panel_bulging_cards .cards .item:hover {
  flex-basis:60%;
}
.panel_bulging_cards .cards .image {
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  box-shadow:0 0 30px rgba(0, 0, 0, 0.05);
  -moz-box-shadow:0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow:0 0 30px rgba(0, 0, 0, 0.05);
  height:250px;
  width:100%;
  overflow:hidden;
}
.panel_bulging_cards.dark .cards .image {
  border-color:rgba(255,255,255,0.5);
}
.panel_bulging_cards.bg-blue .cards .image { border-color:transparent; }

.panel_media_featured .media img,
.accordion .content .image img,
.slideshow img,
.panel_gallery img,
.panel_catalog .catalog img,
.panel_bulging_cards .cards img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.accordion .content .image img {
  height:unset;
  object-fit:unset;
  border-radius:var(--radius-default);
}
.panel_catalog .catalog img {
  position:relative;
  top:0;
  right:-2px;
  /* width:unset;
  height:unset;
  object-fit:unset;
  top:30%;
  transform:translateY(-30%);
  max-width:calc(100% - var(--units-2));
  max-height:calc(100% - var(--units-3));
  border-radius:var(--radius-default); */
}
.panel_bulging_cards .cards .content { margin-top:25px; }
.panel_bulging_cards .cards.columns h3 {
  text-align:center;
  text-wrap:balance;
  margin-bottom:0;
}
.panel_bulging_cards .cards p {
  text-wrap:balance;
  -webkit-font-smoothing:antialiased;
  max-width:700px;
  white-space:pre-wrap;
  overflow-wrap:break-word;
  word-wrap:break-word;
  word-break:break-word;
  -webkit-box-orient:vertical;
  opacity:0;
  max-height:0;
  margin-bottom:8px;
  transition:all 0.165s ease-in 0s;
  overflow:hidden;
}
.panel_bulging_cards .cards .item:hover p {
  opacity:1;
  max-height:50px;
  margin-top:15px;
  overflow:visible;
  transition:all 0.165s ease-in 0.165s;
}
.panel_bulging_cards .cards a {
  font-size:13px;
  font-weight:bold;
  text-transform:uppercase;
  letter-spacing:0.15em;
  margin-top:15px;
  display:block;
}
.panel_bulging_cards .cards .fauxlink:hover a {
  color:var(--color-blue);
}

/* Icon Tiles */
.tiles .item .content {
  text-align:center;
  margin:0 auto !important;
}
.tiles .item p { text-wrap:balance; }
.tiles .item a.content:hover p,
.tiles .item a.content:hover i {
  color:var(--color-red);
  cursor:pointer;
}
.tiles .item i {
  color:var(--color-blue);
  font-size:50px;
  margin:0 auto 25px;
  display:block;
}

/* Accordion */
.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 {
  background:var(--color-white);
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  box-shadow:0 0 30px rgba(0,0,0,0.05);
  -moz-box-shadow:0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow:0 0 30px rgba(0,0,0,0.05);
  margin:0 0 1em;
  position:relative;
  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 .item:last-child { margin-bottom:0; }
.bg-blue .accordion .item { border-color:transparent; }
.accordion .heading {
  margin:0;
  padding:15px 60px 15px 25px;
  position:relative;
  cursor:pointer;
}
.accordion .item .heading:after {
  content:"\2b";
  color:var(--color-gray-50);
  font-size:32px;
	font-style:normal;
	font-variant:normal;
	text-rendering:auto;
	font-family:"Font Awesome 7 Pro";
	font-weight:300;
  text-align:center;
  height:85px;
  line-height:85px;
  width:80px;
  display:block;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  right:0px;
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
}
.accordion .item.active .heading:after {
  content:"\f068";
}
.accordion .item .heading:hover .headline,
.accordion .item .heading:hover .headline i,
.accordion .item .heading:hover:after {
  color:var(--color-red);
}
.accordion .heading .headline {
  font-size:var(--font-size-2);
  line-height:1.4;
  vertical-align:middle;
  margin:0;
  display:grid;
  grid-template-columns:1fr;
  column-gap:20px;
  align-items:center;
}
.accordion .item.w-icon .heading .headline { grid-template-columns:45px 1fr; }
.accordion .heading .headline i,
.accordion .heading .headline span {
  vertical-align:middle;
  display:inline-block;
}
.accordion .heading .headline i {
  color:var(--color-blue);
  font-size:40px;
  text-align:center;
  position:relative;
}
.accordion .heading .headline i.fa-truck-fast {
  transform:scale(0.9, 1);
}
.accordion .heading .headline i.fa-clipboard-list-check {
  transform:scale(1.1, 1);
  left:-2px;
}
.accordion .content {
  display:none;
  width:auto;
  margin:0;
  padding:10px 30px 2em 25px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.accordion .grid { display:grid; }
.accordion .item.w-img .grid {
  grid-template-columns:40% calc(60% - 50px);
  column-gap:50px;
  row-gap:25px;
  align-items:center;
}
.accordion .content .image {
  border-radius:var(--radius-default);
  width:100%;
  height:100%;
  overflow:hidden;
}
.accordion .grid.has-overflow .inner { padding-right:20px; }
.accordion .content p,
.accordion .content .description {
  font-size:16px;
  line-height:1.6em;
  text-wrap:balance;
  margin:0 auto 1em;
  max-width:100%;
}
.accordion .content p.ctas { text-align:left; }

/* Tabs */
.tabs { margin:0 auto 3em; }
.tabs .triggers {
  float:left;
  width:33%;
  position:relative;
  margin:var(--units-2) 0 0 0;
}
.tabs .triggers .trigger {
  color:var(--color-white);
  font-size:var(--font-size-2);
  font-weight:700;
  background:var(--color-gray-50);
  border-right:1px solid transparent;
  border-radius:var(--radius-default) 0 0 var(--radius-default);
  margin:0 0 var(--units-1) 0;
  padding:0.5em 1em;
  display:block;
  position:relative;
  cursor:pointer;
}
.tabs .triggers .trigger:hover {
  background:var(--color-red);
}
.tabs .triggers .trigger.active {
  color:inherit !important;
  background:var(--color-white) !important;
  border-right:1px solid var(--color-white);
}
.tabs .triggers .trigger.w-icon {
  padding-left:55px;
}
.tabs .triggers .trigger i {
  font-size:25px;
  position:absolute;
  left:15px;
  top:50%;
  transform:translateY(-50%);
}
.tabs .mobileTriggers {}
.tabs .mobileTriggers select {
	display:inline-block;
  background:var(--color-gray-98);
  border-radius:var(--radius-default);
  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 {
  background:var(--color-white);
  border-radius:var(--radius-default);
  margin:0 auto 0 33%;
}
.tabs .tabContent .item {
	display:none;
	padding:40px 50px;
}
.tabs .tabContent .item:first-child { display:block; }
.tabs .tabContent .item > i {
  color:var(--color-gray-50);
  font-size:75px;
  text-align:left;
  margin-bottom:15px;
  display:block;
}
.tabs .tabContent h3 { margin-bottom:40px; }
.tabs .tabContent .item p + p { margin-top:1em; }
.tabs .tabContent .item ul {
  margin:10px 0;
  padding:0 0 0 15px;
}
.tabs .tabContent .item .ctas { margin-top:40px !important; }

/* Testimonials */
.panel_testimonials .centre {
  max-width:100%;
  padding-right:0;
  padding-left:0;
}
.panel_testimonials .subheading { margin-bottom:25px !important; }
.testimonials .item {
  background:var(--color-white);
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  box-shadow:0 0 30px rgba(0,0,0,0.05);
  -moz-box-shadow:0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow:0 0 30px rgba(0,0,0,0.05);
  width:400px;
  margin:25px;
  padding:25px 25px 50px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.testimonials .item .top {
  border-bottom:1px solid var(--color-gray-98);
  margin-bottom:25px;
  padding-bottom:25px;
}
.testimonials .item .stars i {
  color:var(--color-blue);
  font-size:25px;
  width:25px;
}
.testimonials .item .author {
  color:var(--color-gray);
  font-weight:bold;
  line-height:25px;
  display:block;
  float:right;
}
.slick-track { display:flex !important; }
.slick-slide { height:inherit !important; }
.slick-dots {
  margin:0 auto !important;
  padding:0 !important;
  bottom:-20px;
}
.slick-dots li {
  text-align:center;
  line-height:1;
  height:20px;
  width:20px;
  vertical-align:middle;
}
.slick-dots li button {
  font-size:0;
  background:var(--color-gray);
  border-radius:100%;
  height:16px;
  width:16px;
  padding:0;
  display:inline-block;
  vertical-align:middle;
}
.slick-dots .slick-active button { background:var(--color-blue) !important; }
.slick-dots li button:before { content:none; }
.slick-dots li button:hover { background:var(--color-red); }
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before { opacity:0.5; }

/* Card Catalog */
.panel_catalog .catalog {
  margin-bottom:100px;
  display:grid;
  justify-content:center;
  grid-row-gap:25px;
  grid-auto-rows:1fr;
}
.panel_catalog .catalog:not(:last-child) { margin-bottom:200px; }
.panel_catalog .content ul {
  text-align:left;
  margin-left:auto;
  margin-right:auto;
  display:inline-block;
}
.catalog .item-sticky {
  position:sticky;
  display:flex;
  justify-content:center;
  align-items:center;
  top:120px;
  -webkit-transition:all 0.3s ease;
  -moz-transition:all 0.3s ease;
  transition:all 0.3s ease;
}
.catalog .item-sticky-inner {
  position:relative;
  height:100%;
}
.catalog .item,
.catalog .item .content,
.catalog .item .image {
  height:400px;
}
.catalog .item {
  background:var(--color-white);
  border:1px solid var(--color-gray-90);
  border-radius:var(--radius-default);
  box-shadow:0 0 30px rgba(0, 0, 0, 0.05);
  -moz-box-shadow:0 0 30px rgba(0,0,0,0.05);
  -webkit-box-shadow:0 0 30px rgba(0, 0, 0, 0.05);
  display:grid;
  grid-template-columns:580px 420px;
  gap:0;
  overflow:hidden;
  max-width:100%;
  min-width:100%;
  transform-origin:center top;
}
.dark .catalog .item { border-color:rgba(255,255,255,0.25); }
.catalog .item.bg-navy { background:var(--color-navy); }
.catalog .item.bg-gray { background:var(--color-gray); }
.catalog .item.bg-blue { background:var(--color-blue); }
.catalog .item.bg-cyan { background:var(--color-blue); }
.catalog .item.dark .content,
.catalog .item.dark .content h3,
.catalog .item.dark .content h4,
.catalog .item.dark .btn { color:var(--color-white) !important; }
.catalog .item.dark .btn { border-color:var(--color-white); }
.catalog .item.dark .btn:hover {
  color:var(--color-red) !important;
  border-color:var(--color-red);
}
.catalog .item:after {
  content:"";
  background:rgba(0,0,0,0.5);
  border-radius:var(--radius-default);
  height:100%;
  width:100%;
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  z-index:-1;
  opacity:0;
  -webkit-transition:opacity 0.5s ease;
  -moz-transition:opacity 0.5s ease;
  transition:opacity 0.5s ease;
}
.catalog .item.covered:after {
  z-index:1;
  opacity:0.5;
}
.catalog .item .content {
  text-wrap:auto;
  width:100%;
  margin:0 auto;
  padding:35px 40px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.catalog .item .content .scroll {
  padding-right:25px;
  height:100%;
  overflow-y:auto;
}
.panel.dark .catalog .bg-white .content,
.panel.dark .catalog .bg-white h3,
.panel.dark .catalog .bg-white h4,
.panel.dark .catalog .bg-blue .content,
.panel.dark .catalog .bg-blue h3,
.panel.dark .catalog .bg-blue h4,
.panel.dark .catalog .bg-cyan .content,
.panel.dark .catalog .bg-cyan h3,
.panel.dark .catalog .bg-cyan h4 {
  color:var(--color-navy);
}
/* .catalog .item .image { position:relative; }
.panel_catalog .catalog img {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
} */
.catalog .item .col-2 {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

/* Slideshow */
.slideshow .item {
  display:grid;
  grid-template-columns:2fr 1fr;
  gap:50px;
}
.slideshow .image {
  border-radius:var(--radius-default);
  overflow:hidden;
  position:relative;
}
.slideshow .image:after {
  content:"";
  background:linear-gradient(to bottom,  rgba(255,255,255,0) 33%,rgba(19,53,85,0.8) 100%);
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  z-index:1;
}
.slideshow .image .heading {
  color:var(--color-white);
  margin:0;
  position:absolute;
  bottom:40px;
  left:15px;
  z-index:9;
}
.slideshow.pos-left .item { grid-template-columns:1fr 2fr; }
.slideshow.pos-left .image { order:2; }
.slideshow.pos-left .caption { order:1; }
.slideshow .caption {
  max-height:406px;
  overflow-x:scroll;
  /* IE and Edge */
  -ms-overflow-style:none;
  /* Firefox */
  scrollbar-width:none;
}
.slideshow .caption::-webkit-scrollbar {
  display:none;
}
.slideshow h3,
.slideshow h4 { margin-bottom:10px; }
.slideshow .caption a {
  color: var(--color-white);
}
.slideshow .caption a:hover {
  color: var(--color-accent);
}
.slideshow p + h3,
.slideshow p + h4 { margin-top:25px; }
.slideshow .slick-arrow {
  height:40px;
  line-height:40px;
  width:40px;
  vertical-align:middle;
  display:inline-block;
  position:relative;
  top:auto;
  left:auto !important;
  right:auto !important;
  transform:none !important;
}
.slideshow .slick-arrow:before {
  color:#B8C7D5;
  font-size:25px;
  font-weight:300;
  height:34px;
  line-height:34px;
  width:34px;
  border:1px solid #B8C7D5;
  border-radius:100%;
}
.bg-cyan .slideshow .slick-arrow:before {
  color:var(--color-navy);
  border-color:var(--color-navy);
}
.bg-cyan .slideshow .slider-counter { color:var(--color-navy); }
.slideshow .slick-arrow.slick-disabled:before {
  color:#B8C7D5 !important;
  border-color:#B8C7D5 !important;
  cursor:default !important;
}
.slideshow .slick-arrow:hover:before {
  color:var(--color-red);
  border-color:var(--color-red);
}
.slideshow .slider-nav {
  display:inline-block;
  position:absolute;
  bottom:0;
  left:calc(70% - 25px);
}
.slideshow.pos-left .slider-nav {
  left:auto;
  right:calc(70% - 25px);
}
.slideshow .slider-counter {
  color:#B8C7D5;
  line-height:40px;
  vertical-align:middle;
  display:inline-block;
  margin-left:5px;
}

.slideshow .slider-dots {
  text-align:center;
  list-style:none;
  border-radius:5px;
  width:calc(70% - 110px);
  height:5px;
  margin:0;
  padding:0;
  position:absolute;
  left:15px;
  bottom:15px;
  overflow:hidden;
}
.slideshow .slider-dots li,
.slideshow .slider-dots button,
.slideshow .slider-dots button:after {
  position:absolute;
  top:0;
  left:0;
}
.slideshow .slider-dots li {
  width:100%;
  height:5px;
  margin:0;
  line-height:5px;
  display:inline-block;
}
.slideshow .slider-dots li.slick-active { z-index:8;}
.slideshow .slider-dots button {
  font-size:0;
  background-color:transparent;
  border:0;
  outline:none !important;
  width:100%;
  height:5px;
  line-height:5px;
}
.slideshow .slider-dots button:after {
  content:'';
  width:0%;
  height:100%;
  display:block;
}

.slideshow .slick-active button:after {
  background-color:var(--color-blue);
  animation:progress 9.25s linear forwards;
}

@keyframes progress {
  from { width:0%; }
  to { width:100%; }
}

/* Logo Carousel */
.logos { margin:50px auto 25px; }
.logos:first-child { margin-top:0; }
.logos:last-child { margin-bottom:0; }
.logos a { display:block; }
.logos a:hover { opacity:0.75; }

/* CTA Banner */
.panel_cta .content {
  display:grid;
  gap:40px;
  align-items:center;
  grid-template-columns:auto 25%;
}
.panel_cta h2,
.panel_cta .subheading,
.panel_map .subheading,
.panel_media_floated .subheading { text-align:left; }
.panel_cta .ctas { margin:0 auto !important; }

/* Coupon Marquee */
.panel_coupon_marquee {
  background:var(--color-blue) !important;
  padding:25px 0;
  overflow:hidden;
  white-space:nowrap;
  position:relative;
}
.coupon_marquee .track {
  display:inline-flex;
  will-change:transform;
}
.coupon_marquee .item {
  color:var(--color-navy) !important;
  font-size:var(--font-size-2);
  font-weight:bold;
  text-decoration:none;
  vertical-align:middle;
  margin:0 5px 0 10px;
  display:inline-block;
  position:relative;
}
.coupon_marquee .item:after {
  content:"\2022";
  margin-left:10px;
  display:inline-block;
}
.coupon_marquee .item:hover span {
  color:var(--color-red);
  cursor:pointer;
}

/* Coupon Grid */
.coupon_grid {
  margin:50px auto;
  display:grid;
  gap:50px;
  grid-template-columns:1fr 1fr 1fr;
  grid-auto-rows:1fr;
}
.coupon_grid:first-child { margin-top:0; }
.coupon_grid:last-child { margin-bottom:0; }
.coupon_grid .item {
  background:var(--color-white);
  border-radius:var(--radius-default);
  overflow:hidden;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.coupon_grid .item .top {
  background:#D5D5DE;
  border-bottom:17px solid var(--color-blue);
  padding:15px;
}
.coupon_grid .item h3 {
  text-align:center;
  text-wrap:balance;
  min-height:60px;
  line-height:60px;
  margin:0 0 15px;
}
.coupon_grid .item h3 span {
  line-height:1.2;
  vertical-align:middle;
  display:inline-block;
}
.coupon_grid .item .img-discount {
  text-align:center;
  vertical-align:middle;
  position:relative;
}
.coupon_grid .item .discount {
  vertical-align:middle;
  display:inline-block;
}
.coupon_grid .item .discount span {
  color:var(--color-red);
  font-family:var(--typeface-display);
  font-size:52px;
  font-weight:700;
  text-transform:uppercase;
  line-height:1;
  letter-spacing:-0.025em;
  width:150px;
  margin:0;
  vertical-align:middle;
  display:inline-block;
}
.coupon_grid .item .no-img .discount {
  text-align:center;
  padding-left:0;
}
.coupon_grid .item img {
  width:40%;
  vertical-align:middle;
  display:inline-block;
}
.coupon_grid .item .middle {
  min-height:200px;
  padding:25px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.coupon_grid .item .middle ul {
  text-align:left;
  padding-left:15px;
}
.coupon_grid .item .bottom {
  text-align:center;
  padding:0 25px 10px;
}
.coupon_grid .item .btn {
  margin:0;
  position:relative;
  z-index:1;
  cursor:pointer;
}
.panel.dark .coupon_grid .item .btn:hover {
  color:var(--color-navy) !important;
  background:var(--color-blue) !important;
}
.coupon_grid .item .expiration {
  color:var(--color-gray);
  font-size:0.75em;
  margin-top:8px;
  display:block;
}

/* Other */
.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;
}




/*	Forms
============================================================================================== */
.form {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:25px;
  position:relative;
  width:1000px;
  max-width:100%;
  margin:var(--units-2) 0 0;
}
.form .input { position:relative; }
.form .input.width-full { grid-column:span 4; }
.form .input.width-half { grid-column:span 2; }
.form .input label {
  color:#586b80;
  font-size:0.9em;
  font-weight:100;
  font-style:italic;
  letter-spacing:0.025em;
  position:absolute;
  top:9px;
  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.focus,
.form .nonshift-label label {
	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;
}
.form .input label.focus:after,
.form .nonshift-label label:after {
	content:"\f0d7";
  font-family:"Font Awesome 7 Pro";
  font-weight:900;
	font-size:inherit;
  font-style:normal;
	text-rendering:auto;
  display:inline-block;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	margin-left:0.5em;
}
.form .input label.hidden { opacity:0.0; }
.form label.error { display:none !important; }
.form .input label .req { color:var(--color-red); }
.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 input[type=file],
.form .input select,
.form .input textarea {
  font-family:inherit;
  font-size:1em;
	background:var(--color-white);
	border:1px solid var(--color-gray-70);
	border-radius:10px;
  line-height:1.2em;
  height:2.75em;
  width:100%;
  margin:0 0 5px;
  padding:0.75em 1em;
  display:block;
  outline:none;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.id_58 .panel_form { background:var(--color-white); }
.id_58 .form .input input[type=text],
.id_58 .form .input input[type=email],
.id_58 .form .input input[type=number],
.id_58 .form .input input[type=tel],
.id_58 .form .input input[type=date],
.id_58 .form .input input[type=password],
.id_58 .form .input input[type=file],
.id_58 .form .input select,
.id_58 .form .input textarea {
  background:var(--color-gray-98);
}
.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 {}
.form .input textarea {
  min-width:100%;
  width:100%;
	max-width:100%;
  min-height:100px;
	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 {
  grid-column:span 4;
}
.form p.error {
  color:#900;
  background:#FFB5B5 !important;
  border:1px solid #900 !important;
  margin:0 0 1.5em !important;
  padding:0.75em 1em;
  outline:none;
  border-radius:4px;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
}
.form .linebreak {
  display:block;
  width:100%;
  grid-column:span 4;
  height:0px;
}
.form .group-name {
  grid-column:span 4;
  font-size:var(--font-size-2);
  font-weight:bold;
}
.form .group-name p { margin-top:var(--units-1); }
.token { color:transparent !important;position:absolute; }

/* Search Results */
.simplesearch-results { margin-bottom:2em !important; }
.simplesearch-highlight { font-weight:bold; }
.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;
}
.simplesearch-result h3:last-child,
.simplesearch-paging:last-child { margin-bottom:0; }
.simplesearch-paging {
  font-size:0;
  margin:30px 0;
}
.simplesearch-page { margin:0 10px; }
.pageList li,
.simplesearch-paging span {
  font-size:14px;
  vertical-align:middle;
  display:inline-block;
}
.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-gray) !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-gray);
  pointer-events:none;
}



/*	Cookie Consent
============================================================================================== */
.cc-nb-main-container {
  background:var(--color-primary);
}
.cc-nb-main-container .cc-nb-title-container .cc-nb-title {
  color:var(--color-gray-98);
  font-family:var(--typeface-display);
}
.cc-nb-main-container .cc-nb-text-container .cc-nb-text {
  color:var(--color-gray-98);
  font-family:var(--typeface-default);
}
.cc-nb-buttons-container .cc-nb-okagree {
  color:var(--color-white) !important;
  background-color:var(--color-secondary) !important;
}
.cc-nb-buttons-container .cc-nb-changep {
  color:var(--color-black) !important;
  background-color:var(--color-gray-98) !important;
}
.cc-cp-foot-button .cc-cp-foot-save {
  margin-top:0 !important;
  color:var(--color-white) !important;
  background-color:var(--color-secondary) !important;
}
.cc-nb-buttons-container .cc-nb-okagree,
.cc-nb-buttons-container .cc-nb-changep,
.cc-cp-foot-button .cc-cp-foot-save {
  display:inline-block;
  min-width:7.25em;
  margin:1.618em auto 0;
  padding:0.5em 1em 0.6em;
  border-radius:var(--radius-default);
  font-family:var(--typeface-default);
  font-size:1.1em;
  font-weight:700;
  text-align:center;
  cursor:pointer;
}
.cc-pc-container,
.cc-cp-body-tabs-item-link {
  font-family:var(--typeface-default) !important;
}
.termsfeed-com---pc-dialog input[type=checkbox].cc-custom-checkbox:checked+label:before {
  background:var(--color-secondary) !important;
}
.cc-pc-head-close:active,
.cc-pc-head-close:focus {
  border-color:var(--color-primary) !important;
}

/* Deals Popup */
.deals-popup-inner {
  grid-template-columns:1fr 1fr;
  display:grid;
  gap:25px;
}
.deals-popup-inner .image {
  border-radius:var(--radius-default);
  position:relative;
  overflow:hidden;
}
.deals-popup-inner .image img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
}
.deals-popup-inner .deals {
  text-align:center;
  padding:50px 0 25px;
}
.deals-popup-inner .deals .form {
  width:auto;
  margin:0;
  display:block;
}
.deals-popup-inner .h4 { margin-bottom:18px; }
.deals-popup-inner .intro { margin-bottom:25px; }
.deals-popup-inner .send { margin-top:25px; }
.deals-popup-inner .close {
  color:var(--color-red);
  font-size:0.75em;
  font-weight:bold;
  /* text-transform:uppercase; */
  margin:15px 0 0;
  cursor:pointer;
}
.deals-popup-inner .close:hover {
  color:var(--color-blue);
}

/*	Misc
============================================================================================== */
.careers h3.jbmodal { color:var(--color-blue); }
.careers h3.jbmodal:hover { color:var(--color-red); }
.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);
  border:none;
  border-radius:var(--radius-default);
  width:700px;
  padding:20px 25px 25px;
}
.jbmodal-box .jbmodal-controls { top:5px;right:5px; }
.jbmodal-box h2,
.jbmodal-box h3,
.jbmodal-box h4,
.jbmodal-box h5 {}
.jbmodal-box .jbmodal-title {
  color:var(--color-navy);
}
.jbmodal-html ul {
  margin:10px 0;
  padding-left:15px;
}
.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;
  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;
  -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.75;
  line-height:1;
  outline:none 0 !important;
  overflow:visible !important;
  background:var(--color-red);
	color:var(--color-white);
  z-index:999999999999;
  transition:all 0.15s ease;
}
.modx_edit:hover {
  opacity:1;
}




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

@media only screen and (max-width:1699px) {
  
  .id_43 .panel_content_cards .columns, 
  .columns.count-5 {
    grid-template-columns:repeat(4, 1fr);
  }
  
}

/*	Medium Desktop			--	x-1399
============================================================================================== */
@media only screen and (max-width:1399px) {
  .header .logo img { height:22px; }
  .mainNav { transform:translateX(-65%);}

  .id_43 .panel_content_cards .columns, 
  .columns.count-5 {
    grid-template-columns:repeat(3, 1fr);
  }

}


/*	Small Desktop	--	1024-1299
============================================================================================== */
@media only screen and (max-width:1299px) {
  .mainNav { display:none; }
  .mainNav li.id_1,
  .mainNav li.id_59 { display:block; }
  .header .fa-bars { display:block; }
  .header .fa-search { margin-right:4em; }
  .header #jbmodal-search-form { display:none !important; }

  .mainNav {
    width:440px;
    max-width:100%;
    position:absolute;
    top:90px;
    left:auto;
    right:0;
    margin:0;
    background:#0F2B46;
    box-shadow:0 5px 10px rgba(0, 0, 0, 0.2);
    overflow-y:scroll;
    transition:none !important;
    transform:none !important;
  }
  .mainNav ul { border-radius:0 !important; }
  .mainNav ul li { font-size:16px; }
  .mainNav>ul>li,
  .mainNav>ul>li>ul>li,
  .mainNav>ul>li>ul>li>ul>li {
    display:block !important;
    margin:0 0 -1px 0;
    height:auto;
    border-left:0 !important;
    border-bottom:1px solid rgba(255,255,255,0.1);
  }
  .mainNav>ul>li>a,
  .mainNav>ul>li>span,
  .mainNav>ul>li>ul>li>a,
  .mainNav>ul>li>ul>li>span,
  .mainNav>ul>li>ul>li>ul>li>a,
  .mainNav>ul>li>ul>li>ul>li>span {
    color:var(--color-white);
    font-weight:400;
    font-size:18px;
    line-height:1em;
    height:auto;
    margin:0;
    padding:16px 50px 14px 25px;
    display:block;
    position:relative;
    z-index:1;
    -moz-osx-font-smoothing:grayscale;
    -webkit-font-smoothing:antialiased;
  }
  .mainNav a { text-decoration:none !important; }
  .mainNav a:hover,
  .mainNav li:hover>a {
    color:white !important;
    background:inherit;
  }
  .mainNav li.parent>a:after,
  .mainNav li.parent>span:after {
    display:none !important;
  }
  .mainNav>ul li.parent .trigger,
  .nav-go-back i {
    display:block;
    color:var(--color-gray-90);
    font-size:16px;
    text-align:center;
    height:48px;
    line-height:48px;
    width:50px;
    position:absolute;
    top:0;
    right:0;
    z-index:2;
  }
  .mainNav>ul li.parent.id_20 .trigger { display:none; }
  .mainNav>ul>li:hover>ul { display:block; }
  .mainNav>ul>li>ul,
  .mainNav>ul>li>ul>li>ul {
    background:var(--color-navy);
    height:calc(100% - 90px);
    max-height:unset;
    width:440px !important;
    max-width:100% !important;
    padding:0;
    display:block;
    position:fixed;
    top:90px;
    left:auto;
    right:-440px;
    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;
  }
  .mainNav>ul>li.open>ul,
  .mainNav>ul>li>ul>li.open>ul {
    right:0;
    opacity:1;
    z-index:9;
  }
  .mainNav>ul>li>ul>li { border-top:0; }
  .nav-go-back { background:var(--color-blue); }
  .nav-go-back span,
  .nav-go-back i {
    color:rgba(0,0,0,0.75) !important;
  }
  .nav-go-back span { padding:16px 25px 14px 50px !important; }
  .nav-go-back i {
    left:0;
    right:auto;
  }

	.panel-media_featured .bg {
		aspect-ratio:16 / 8;
	}

  .coupon_grid { grid-template-columns:400px 400px; }
  .coupon_grid .item img {
    max-width:110px;
    top:0;
  }

  .slick-arrow { background:var(--color-gray-98) !important; }
  .slideshow .slick-arrow { background:none!important; }

  .slick-prev {
    border-top-right-radius:4px;
    border-bottom-right-radius:4px;
    left:0;
  }
  .slick-next {
    border-top-left-radius:4px;
    border-bottom-left-radius:4px;
    right:0;
  }
  
  .id_43 .panel_content_cards .cards .item {
    flex:0 0 calc(50% - 50px);
  }

  .footer:before { display:none; }
  .footer .top,
  .footer .bottom,
  .footer .bottom .social-paymethods {
    text-align:center;
    display:block;
  }
  .footer .tagline { font-size:var(--font-size-2); }
  .footer .bottom .social-paymethods,
  .footer .credits { margin-top:25px; }
  .footer .btns { position:relative; }
  #deals-footer { margin:25px auto 0; }
  .footer .nav { margin-top:50px; }
  .footer .nav .col {
    vertical-align:top;
    display:inline-block;
    float:none;
  }
  .footer .nav .col:first-child { margin-left:0; }
  .footer .nav .col + .col { margin-left:25px; }
  .footer .nav li + li { margin-top:5px; }
  .footer .credits {
    text-wrap:balance;
    position:relative;
    bottom:0;
    left:0;
    transform:none;
  }
  .footer .credits a:last-of-type { padding-right:1em; }
  .footer .credits a:first-of-type { padding-left:0; }

}




/*	Tablets			--	768-1023
============================================================================================== */
@media only screen and (max-width:1023px){
  .btn { min-width:120px; }
  .panel .content .ctas,
  .parent_44 .panel:first-child h2 + p { text-align:center; }
  .panel .content > h2,
  .panel .content > h2 + .subheading { text-align:center !important; }
  .content-wrapper > div:last-child { padding-bottom:0; }

  .panel_media_featured .content, .panel_content_cards .centre > .content, .panel_bulging_cards .centre > .content, .panel_buckets .content, .panel_slideshow .content, .panel_gallery .content, .panel_logo_carousel .content, .panel_coupon_grid .content { width:100%; }

  .banner .box {
    margin:0 auto;
    padding:35px 25px;
  }
  .banner-home h1,
  .banner-home .h1 { font-size:50px; }
  .banner.v2 .gradient { display:none; }
  .banner.v2 .bg {
    width:100%;
    height:auto;
    position:relative;
    left:0 !important;
    aspect-ratio:1175 / 668;
  }
  .banner.v2 .centre {
    padding:var(--units-4) var(--units-2);
  }
  .banner.inner h1,
  .banner.inner .h1,
  .banner.inner .intro {
    text-wrap:auto;
    width:100%;
  }

	.tabs .mobileTriggers { display:block; margin:0 0 0.5em; }
	.tabs .tabContent { margin-left:0; min-height:0 !important; }
  .columns.count-3,
  .columns.count-4 {
    text-align:center;
    grid-template-columns:repeat(2, 1fr);
  }
  
  .panel_catalog .catalog { width:420px; }
  .catalog .item,
  .catalog .item .content,
  .catalog .item .image {
    height:auto;
  }
  .catalog .item .col-2 { grid-template-columns:1fr; }
  
  .panel.buckets-expanded .columns.count-3 .bucket,
  .panel.buckets-expanded .columns.count-4 .bucket {
    flex:0 0 calc(50% - 50px);
  }
  .panel.buckets-expanded .columns.count-2 .bucket {
    flex:0 0 calc(100% - 50px);
  }
  .panel_catalog .catalog {
    margin-bottom:0;
    display:block;
  }
  .catalog .item-sticky {
    display:block;
    position:relative;
    top:0;
  }
  .catalog .item-sticky + .item-sticky { margin-top:25px; }
  .catalog .item-sticky-inner { height:auto !important; }
  .catalog .item {
    height:auto !important;
    display:block;
    transform:none !important;
  }
  .catalog .item .content {
    text-wrap:auto;
    min-height:0;
  }
  .catalog .item .content .scroll { 
    height:auto; 
    padding-right:0;
  }
  .id_41 .panel_content_cards .scroll { 
    padding-right:0;
    height:auto; 
    overflow:visible;
  }
  .catalog .item .image { height:auto; }
  .panel_catalog .catalog img { right:0; }
  
  .id_43 .panel_content_cards .columns, 
  .columns.count-5 {
    grid-template-columns:repeat(2, 1fr);
    gap:25px;
  }
  .panel_content_cards .cards .item { padding:40px 25px; }
  
	.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;
	}

  .panel_bulging_cards .columns {
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:50px;
  }
  .panel_bulging_cards .cards .item {
    height:auto;
    margin:0 !important;
    padding-bottom:0;
  }
  .panel_bulging_cards .cards p {
    max-width:100%;
    max-height:100% !important;
    margin:15px 0 0 !important;
    opacity:1;
  }

  .tabs .tabContent .item { padding:40px; }

  .id_34 .accordion .content .image,
  .id_42 .accordion .content .image { height:auto; }

  .slideshow,
  .slideshow .slick-list,
  .slideshow .slick-track,
  .slideshow .slick-slide {
    height:auto !important; /* Forces height to adapt to content */
    max-height:none !important; /* Removes any maximum height constraints */
  }
  .slideshow .image {
    height:400px;
    max-width:100%;
  }
  .slideshow .image .heading {
    left:20px;
  }
  .slideshow .item { display:block; }
  .slideshow .image { order:1 !important; }
  .slideshow .caption {
    order:2 !important;
    margin-top:40px;
    padding-bottom:40px;
  }
  .slideshow .slider-nav {
    position:relative;
    left:0 !important;
    right:auto !important;
  }
  .slideshow .slider-dots {
    left:20px;
    top:375px;
    bottom:auto;
  }

  .fauxTable > div { display:block; }
  .panel_media_floated .fauxTable.has-overflow, 
  .accordion .grid.has-overflow { display:block; }
  .media:empty { display:none !important; }
  .panel_media_floated .fauxTable > div,
  .panel.media-full .media { min-height:0; }
  .panel_media_floated .fauxTable .media:first-child {
    margin-top:0;
    margin-bottom:50px;
  }
  .panel_media_floated .fauxTable .media:last-child {
    margin-top:50px;
    margin-bottom:15px;
  }
  .panel_media_floated .fauxTable > div,
  .panel.media-full > .media {
    width:100%;
    max-width:100% !important;
    position:relative;
  }
  .panel_content_plain p:not(.ctas) { text-align:left !important; }
  .panel_map .ctas { display:block; }
  .panel_media_floated .fauxTable > div ul {
    text-align:left;
    display:inline-block;
  }
  .panel.media-full > .media { 
    text-align:center;
    height:500px; 
  }
  .panel_media_floated.media-full .fauxTable > .content { height:auto; }
  .panel_media_floated .content,
  .panel_media_floated .media {
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .fauxTable.has-overflow .content, 
  .accordion .inner,
  .accordion .grid .image {
    width:auto !important;
    max-height:100% !important;
  }
  .accordion .grid .image { margin-bottom:25px !important; }
  .accordion .content .image img { width:75%; }
  .media-inset .media img { 
    height:auto;
    display:block;
    position:relative; 
  }
  .panel.media-full > .media img {
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
  }
  .fauxTable > .content { margin:0 auto; }

  .coupon_grid { grid-template-columns:1fr 1fr; }

}




/*	Phones			--	under 768
============================================================================================== */
@media only screen and (max-width:767px){
  .btn { min-width:180px; }

	.centre,
  .panel_testimonials .centre { padding:3em 1em; }
  .banner .centre { padding:3em 1em 2em; }

	.header .logo {
		left:1em;
		max-width:50%;
	}
  .header > .fa-bars { right:0.25em; }
  .header .fa-search { margin:0 3em 0 0; }
  .header .btn.phone {
    font-size:20px;
    text-align:center;
    border:none;
    height:50px;
    line-height:48px;
    width:50px;
    min-width:0;
    margin:0 5px 0 15px;
    padding:0;
  }
  .header .btn.phone i {
    margin:0;
    transform:none !important;
  }
  .header .btn.phone span { display:none; }
  .header .btn.book {
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1px;
    min-width:100px;
  }

  .banner { text-align:center; }
  .banner.v2 .centre { padding:var(--units-3) var(--units-2); }
  .banner-home h1,
  .banner-home .h1 {
    font-size:40px;
    text-wrap:balance;
  }
  .banner-home h1 span,
  .banner-home .h1 span {
    font-size:0.6em;
  }
  .banner.inner h1,
  .banner.inner .h1 {
    font-size:var(--font-size-6);
  }
  .banner.inner .intro { font-size:var(--font-size-4); }
  .banner .ctas { margin-bottom:0; }
  
  h2, .h2 { font-size:var(--font-size-6); }

	.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 { width:100%; }
  .panel_media_floated .fauxTable .content {
    margin:var(--units-1) auto 0;
    width:100%;
  }

  .panel_media_featured .mask,
  .panel.media-full .media {
    min-height:0px;
    max-height:400px;
  }

  .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 .repeater { margin-top:35px; }
  .accordion .heading { padding:20px 60px 20px 25px; }
  .accordion .heading .headline { font-size:var(--font-size-2); }
  .accordion .item.w-icon .heading .headline { grid-template-columns:36px 1fr; }
  .accordion .heading .headline i { font-size:36px; }
  .accordion .item .heading:after {
    font-size:28px;
    width:70px;
    height:70px;
    line-height:70px;
  }
  .accordion .grid { display: block; }
  .accordion .item.w-img .grid { grid-template-columns:1fr; }

  .coupon_grid {
    grid-template-columns:1fr;
    grid-auto-rows:auto;
  }
  .coupon_grid .item img { max-width:125px; }
  .coupon_grid .item .middle {
    min-height:0;
  }
  
  .testimonials .item { margin:10px 0 25px; }

  .slideshow .image { height:300px; }
  .slideshow .slider-dots { top:280px; }
  .slick-arrow,
  .slick-arrow:before {
    height:40px;
    line-height:40px;
    width:40px;
  }
  .slick-arrow:before { font-size:24px; }
  .gallery .thumbs { display:none; }

  .columns.count-3,
  .columns.count-4 {
    grid-template-columns:repeat(1, 1fr);
  }
  .panel.buckets-expanded .columns.count-3 .bucket,
  .panel.buckets-expanded .columns.count-4 .bucket {
    flex:0 0 calc(100% - 50px);
  }

  .panel .cards h3 + ul { display:inline-block; }
  
  .panel_cta .content {
    text-align:center;
    display:block;
  }
  .panel_cta h2,
  .panel_cta .subheading { text-align:center; }
  .panel_cta .ctas { margin-top:40px !important; }

  .form .input.width-half { grid-column:span 4; }
	.form .input label { left:1em; }

	.deals-popup-inner { grid-template-columns:1fr; }
  .deals-popup-inner .deals { padding:15px 0 10px; }
  .deals-popup-inner .image { 
    max-width:500px; 
    margin:0 auto;
  }
	.deals-popup-inner .image img {
    width:100%;
    margin:0 auto;
    height:auto;
    object-fit:unset;
    display:block;
    position:relative;
    top:unset;
    transform:unset;
	}
  
  .jbmodal-pos { top:8%; }
}




/*	Phones Portrait	--	under 540
============================================================================================== */
@media only screen and (max-width:539px){
  h1,
  .banner.inner h1,
  .banner.inner .h1,
  h2,
  .banner.inner .phone {
    font-size:var(--font-size-4);
    line-height:1.2;
  }
  .banner.inner .phone { margin-bottom:15px; }
  .subheading { font-size:var(--font-size-4); }

	.header .logo {
    background:none !important;
    overflow:hidden;
	}
	.header .logo img { height:20px; }

  .header .btn.book { display:none; }

  .banner.v2 .btn {
    max-width:200px;
    display:block;
  }
  .banner.v2 .btn + .btn { margin:15px auto 0; }
  .banner.inner .intro { font-size:var(--font-size-2); }

  .banner-home .btn + .btn { margin-left:0; }

	.panel_media_floated .fauxTable .media { width:100%; margin-top:-1.5em; }

  .tabs .tabContent .item { padding:25px 30px 30px; }

	.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:#88abb8;
	}

  .accordion .content {
    padding-right:25px;
  }
  .accordion .content .image img { width:100%; }
  .accordion .content p,
  .accordion .content .description { text-wrap:auto; }

  .columns.count-2,
  .columns.count-3,
  .columns.count-4 {
    grid-template-columns:repeat(1, 1fr);
  }
  .columns.count-4 { gap:0; }
  .panel_icon_tiles .columns.count-4,
  .panel_bulging_cards .columns.count-4 { gap:50px; }
  .id_43 .panel_content_cards .cards .item {
    flex:0 0 calc(100% - 50px);
  }
  .id_43 .panel_content_cards .cards .item + .item { margin-top:25px; }

  .catalog .item .col-2 { grid-template-columns:1fr; }
  .catalog .item .content {
    text-wrap:auto;
    padding:25px 30px;
  }
  
  .id_43 .panel_content_cards .columns, 
  .columns.count-5 {
    grid-template-columns:repeat(1, 1fr);
    gap:25px;
  }
  .panel_content_cards .cards .item { padding:40px 25px; }


  .panel_map .grid { display:block; }

  .slideshow .image .heading { font-size:24px; }
  .slideshow .image { height:240px; }
  .slideshow .slider-dots { top:220px; }

  .slick-dots { bottom:-25px; }

  .footer .nav .col { display:block; }
  .footer .nav .col + .col { margin:25px auto 0; }

}




/*	Small Phones	--	under 375
============================================================================================== */
@media only screen and (max-width:391px){
  
  .deals-popup-inner .h4 { font-size:19px; }

}




/*	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; } }
