@charset "UTF-8";
/*------------------------------------------------------------

Responsive Style Sheet

version:	1.0
author:		derek allard
email:		derek@tunnel7.com
website:	http://www.tunnel7.com

------------------------------------------------------------*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/* alerts and such */
/* for box shadows */
/* ========================================*/
/* to use: @include box-shadow(3px, 3px, 5px, 1px, $shadow); */
/* to use: @include text-shadow(3px, 3px, 0, $shadow); */
/* to use: @include border-radius(7px, 7px, 7px, 7px); */
/* to use: @include transition(0.5s); - remember goes on parent not hover state */
/* to use: @include links($link, $link, $active, $active, $active, bold/normal); */
/* to use: @include rotate(7deg); */
/* to use: @include scale(1.5); */
/* to use: @include box-sizing; */
/* to use: font-size: calc-em(32,16); */
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@import url("https://fonts.googleapis.com/css?family=Libre+Franklin:300,400,400i,700&display=swap");
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
  color: #32363a;
  font-family: "Libre Franklin", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.875;
}

h1, h2, h3, h4, h5, h6 {
  clear: both;
  text-transform: uppercase;
  line-height: 1;
  color: #58ab40;
  color: #34871c;
  font-weight: 400;
  margin: 0 0 0.5em;
}

h1 {
  color: #fff;
  font-family: "Abula W01 Regular", serif;
  font-size: 50px;
  font-size: 3.125rem;
  text-transform: uppercase;
  text-align: right;
  margin: 0;
}

#content h1 {
  color: #000;
  margin-bottom: 0.5em;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 23.4375em) {
  /* 375 =================================================== */
  h1 {
    font-size: 55px;
    font-size: 3.4375rem;
  }
}

h2 {
  color: #000;
  font-size: 36px;
  font-size: 2.25rem;
  font-weight: 300;
  text-align: center;
  display: flex;
  align-items: center;
}

h2:before, h2:after {
  content: "";
  background-color: #58ab40;
  border: 0;
  height: 1px;
  flex: 1;
  margin-right: 1.3888888888889em;
}

h2:after {
  margin-right: 0;
  margin-left: 1.3888888888889em;
}

h2.tab-headline {
  margin: 3.875rem 0 3rem;
}

h3 {
  font-size: 18px;
  font-size: 1.125rem;
}

h3.subtitle {
  color: #fff;
  font-family: "Abula W01 Regular", serif;
  text-transform: none;
  text-align: right;
  font-size: 30px;
  font-size: 1.875rem;
}

h4 {
  font-family: "Abula W01 Regular", serif;
  font-size: 21px;
  font-size: 1.3125rem;
}

h5 {
  text-transform: uppercase;
  font-size: 14px;
  font-size: 0.875rem;
  vertical-align: baseline;
  font-weight: 400;
}

h5 strong {
  font-weight: 700;
  font-size: 36px;
  font-size: 2.25rem;
}

h5 span {
  text-transform: none;
  font-size: 18px;
  font-size: 1.125rem;
  font-wight: 700;
}

h6 {
  font-size: 16px;
  font-size: 1rem;
  margin: 2.875rem 0 0.75rem;
  color: #000;
  text-transform: none;
  font-weight: 700;
}

p {
  margin-top: 0;
  margin-bottom: 1.5em;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
  font-size: 21px;
  font-size: 1.3125rem;
}

blockquote q {
  quotes: "“" "”" "‘" "’";
  font-weight: 300;
}

blockquote q:before {
  content: open-quote;
}

blockquote q:after {
  content: close-quote;
}

blockquote footer,
blockquote cite {
  font-size: 16px;
  font-size: 1rem;
}

address {
  font-style: normal;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit;
}

body {
  background: #fff;
  /* Fallback for when there is no custom background color defined. */
}

hr {
  background-color: #58ab40;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul, ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1.5em 1.5em;
}

#jobs-item #content ul {
  margin-left: 0;
  padding-left: 0;
}

#jobs-item #content ul li {
  list-style-position: inside;
}

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */
}

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */
}

/* ======= TABLE STYLES ======= */
table thead,
table tfoot {
  background: #d9dadb;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
button[type="submit"],
.button,
.buttonsmall {
  border: 1px solid;
  border-color: #58ab40;
  border-radius: 0px;
  border: none;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  background: #58ab40;
  color: #fff !important;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  padding: 0.75em 1em 0.6875em;
  min-width: 100px;
  text-align: center;
  display: inline-block;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-appearance: none;
  /* ensures no ios default styling applied to buttons */
  -webkit-border-radius: 0px 0px 0px 0px;
  -moz-border-radius: 0px 0px 0px 0px;
  border-radius: 0px 0px 0px 0px;
  /* removes ios default border radius on buttons */
  cursor: pointer;
}

button.dark,
input[type="button"].dark,
input[type="reset"].dark,
input[type="submit"].dark,
button[type="submit"].dark,
.button.dark,
.buttonsmall.dark {
  background-color: #7e7e7e !important;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
button[type="submit"]:hover,
.button:hover,
.buttonsmall:hover {
  border-color: #58ab40;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus,
button[type="submit"]:active,
button[type="submit"]:focus,
.button:active,
.button:focus,
.buttonsmall:active,
.buttonsmall:focus {
  border-color: #58ab40;
}

/* small buttons */
.buttonsmall {
  padding: .25em;
  margin-left: 1.5em;
  font-size: 12px;
  font-size: 0.75rem;
  text-transform: lowercase;
  width: 75px;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #939598;
  border: 1px solid transparent;
  border-radius: 0px;
  padding: 0.5625em 2em;
  line-height: 1;
  width: 100%;
  max-width: 800px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #32363a;
}

input[type="text"]:invalid,
input[type="email"]:invalid,
input[type="url"]:invalid,
input[type="password"]:invalid,
input[type="search"]:invalid,
input[type="number"]:invalid,
input[type="tel"]:invalid,
input[type="range"]:invalid,
input[type="date"]:invalid,
input[type="month"]:invalid,
input[type="week"]:invalid,
input[type="time"]:invalid,
input[type="datetime"]:invalid,
input[type="datetime-local"]:invalid,
input[type="color"]:invalid,
textarea:invalid {
  box-shadow: none;
}

#content input[type="text"], #content
input[type="email"], #content
input[type="url"], #content
input[type="password"], #content
input[type="search"], #content
input[type="number"], #content
input[type="tel"], #content
input[type="range"], #content
input[type="date"], #content
input[type="month"], #content
input[type="week"], #content
input[type="time"], #content
input[type="datetime"], #content
input[type="datetime-local"], #content
input[type="color"], #content
textarea {
  border-color: #3d3a36;
  padding: 0.5625em;
}

select {
  border: 1px solid #3d3a36;
  line-height: 19px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0.5625em;
  width: 100%;
  max-width: 800px;
  position: relative;
  background: #d9dadb url(/assets/images/arrow-down-icon.png) no-repeat calc(100% - 10px) 50%;
}

textarea {
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

input.test {
  /* to hide test field on forms to prevent spam - may want to text indent it into oblivion - think i read that some browsers choke on display none*/
  display: none;
  visibility: hidden;
}

/* ======= FORM STYLES ======= */
form {
  /* freeform next specific form tweaks since no longer wrapped in dd/dt */
}

form input.test {
  /* to hide test field on forms to prevent spam - may want to text indent it into oblivion - think i read that some browsers choke on display none*/
  display: none;
}

form dd {
  margin: 0 0 1em;
}

form input#plan_amount,
form select#card_exp_month,
form select#card_exp_year,
form input#card_cvc {
  /* for shorter inputs on these fields */
  width: 25%;
  display: inline-block;
  /* this is needed to get the select items side by side ... plan amount doesn't really need it but it doesn't hurt */
}

form .feedback {
  color: #d80000;
}

form .row {
  margin-bottom: 1em;
  /* to mimic bottom margin after each input group */
}

form .row label {
  line-height: 1.85em;
  /* mimics line height of dt */
}

form .row label, form .row input {
  display: block;
  /* to place labels, inputs on new rows */
}

form .row .checkbox label input, form .row .radio label input {
  display: inline-block;
  /* so that labels and inputs are on same row*/
}

form .row .radio label {
  display: inline-block;
  /* so that all radios are on same row*/
}

form .row label.required:after {
  content: " *";
  color: red;
}

/* ======= HIDING ======= */
form nodisplay {
  /* hides spam control on homepage newsletter signup */
  display: none;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  color: #005baa;
  text-decoration: none;
}

a:visited {
  color: #005baa;
}

a:hover, a:focus, a:active {
  color: #eb7925;
}

a:focus {
  outline: thin dotted;
}

a:hover, a:active {
  outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.desktop-navigation {
  margin: 2.125rem 0 0 4.75rem;
  margin: 2.125rem 0 0 2.125rem;
  display: flex;
  justify-content: flex-end;
  flex: 1;
}

.desktop-navigation a {
  text-transform: uppercase;
  font-size: 18px;
  font-size: 1.125rem;
  display: inline-block;
}

.desktop-navigation a:link, .desktop-navigation a:visited {
  color: #fff;
}

.desktop-navigation a:hover, .desktop-navigation a:focus, .desktop-navigation a:active {
  color: #9ddae9;
}

.desktop-navigation .main-utility-nav,
.desktop-navigation .french-utility-nav,
.desktop-navigation .search-utility-nav,
.desktop-navigation .menu-trigger {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: space-between;
}

.desktop-navigation .main-utility-nav li a,
.desktop-navigation .french-utility-nav li a,
.desktop-navigation .search-utility-nav li a,
.desktop-navigation .menu-trigger li a {
  line-height: 1.3888888888889;
}

.desktop-navigation .main-utility-nav {
  width: 26.25rem;
  display: none;
}

.desktop-navigation .main-utility-nav li {
  margin-right: 1.75rem;
}

.desktop-navigation .main-utility-nav li:last-child {
  margin-right: 0;
}

.desktop-navigation .french-utility-nav {
  margin: 0 1.125rem 0 auto;
  display: none;
}

.desktop-navigation .french-utility-nav li a {
  /*
			padding-left: 3.25rem;
			background: transparent url(/assets/images/quebec-flag.png) no-repeat 0 50%;
*/
}

.desktop-navigation .search-utility-nav {
  margin: 0 1.125rem;
}

.desktop-navigation .search-utility-nav li a {
  width: 25px;
  height: 25px;
  text-indent: -9999em;
  background: transparent url(/assets/images/search-icon.png) no-repeat 50% 50%;
}

.desktop-navigation .menu-trigger {
  margin: 0 0 0 1.125rem;
}

.desktop-navigation .menu-trigger li a {
  padding-right: 2.625rem;
  background: transparent url(/assets/images/hamburger-white.png) no-repeat 100% 50%;
}

.mobile-utility-nav {
  margin-bottom: 10px !important;
}

.mobile-utility-nav li {
  width: 206px;
  margin: 0 auto;
}

.mobile-utility-nav li a {
  margin-bottom: 1.5rem;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.9444444444444;
  display: inline-block;
}

.mobile-utility-nav li a.frenchlink {
  padding-left: 3.4375rem;
  background: transparent url(/assets/images/quebec-flag.png) no-repeat 0 50%;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 62em) {
  /* 992 =================================================== */
  .mobile-utility-nav {
    display: none !important;
  }
  .desktop-navigation .main-utility-nav,
  .desktop-navigation .french-utility-nav {
    display: flex;
  }
}

@media only screen and (min-width: 75em) {
  /* 1200 =================================================== */
  .desktop-navigation {
    margin-left: 4.75rem;
  }
  .desktop-navigation .french-utility-nav li a {
    padding-left: 3.25rem;
    background: transparent url(/assets/images/quebec-flag.png) no-repeat 0 50%;
  }
  .desktop-navigation .menu-trigger li a {
    text-indent: 0;
    width: auto;
    padding-right: 2.625rem;
    background: transparent url(/assets/images/hamburger-white.png) no-repeat 100% 50%;
  }
}

.mega-menu,
#search-form-container {
  display: none;
  background-color: #005baa;
  background-color: rgba(0, 91, 170, 0.95);
  width: 100%;
  height: 100%;
  min-height: 100vh;
  position: absolute;
  z-index: 100;
  left: 0;
  right: 0;
  top: 0;
  color: #fff;
  padding: 1rem 0 3rem;
}

.mega-menu > .wrap,
#search-form-container > .wrap {
  margin: 1.875rem auto 3.4375rem;
  margin: 0 auto 3.4375rem;
  max-width: inherit;
  display: flex;
  flex-wrap: wrap;
}

.mega-menu a,
#search-form-container a {
  color: #fff;
  text-transform: uppercase;
  margin-bottom: 2.25rem;
  margin-bottom: 1.25rem;
  display: block;
}

.mega-menu a:link, .mega-menu a:visited,
#search-form-container a:link,
#search-form-container a:visited {
  color: #fff;
}

.mega-menu a:hover, .mega-menu a:focus, .mega-menu a:active,
#search-form-container a:hover,
#search-form-container a:focus,
#search-form-container a:active {
  color: #9ddae9;
}

.mega-menu ul,
#search-form-container ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mega-menu > ul,
#search-form-container > ul {
  margin: 0 auto;
  /*
		display: flex;
		justify-content: space-between;
*/
  max-width: 90%;
}

.mega-menu .here > a,
#search-form-container .here > a {
  color: #9ddae9;
}

.mega-menu .here > a:link, .mega-menu .here > a:visited, .mega-menu .here > a:hover, .mega-menu .here > a:focus, .mega-menu .here > a:active,
#search-form-container .here > a:link,
#search-form-container .here > a:visited,
#search-form-container .here > a:hover,
#search-form-container .here > a:focus,
#search-form-container .here > a:active {
  color: #9ddae9;
}

.mega-menu #nav-sub > li,
#search-form-container #nav-sub > li {
  width: 206px;
  margin: 0 auto;
  padding-top: 2rem;
  border-top: 1px solid #58ab40;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: flex-start;
}

.mega-menu #nav-sub > li > a,
#search-form-container #nav-sub > li > a {
  font-family: "Abula W01 Regular", serif;
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 1;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 62em) {
  /* 992 =================================================== */
  .mega-menu > ul {
    display: flex;
    justify-content: space-between;
  }
  .mega-menu > .wrap,
  #search-form-container > .wrap {
    margin: 1.875rem auto 3.4375rem;
  }
  .mega-menu #nav-sub > li {
    margin: 0 2rem 0 0;
  }
  .mega-menu #nav-sub > li.last {
    margin-right: 0;
  }
  .accordion-trigger {
    display: none !important;
  }
  .mega-menu #nav-sub .ui-accordion-content {
    display: block !important;
  }
}

#menu-close-button,
#search-close-button {
  font-size: 24px;
  font-size: 1.5rem;
  flex: 1 1 100%;
  text-align: right;
  order: 1;
  margin-bottom: 1rem;
}

.mailing-list-wrapper,
.search-form-wrapper {
  flex: 1;
  text-align: center;
  order: 2;
}

.mailing-list-wrapper form > label,
.mailing-list-wrapper form > input,
.search-form-wrapper form > label,
.search-form-wrapper form > input {
  display: block;
  margin: 0 auto 7px;
  max-width: 280px;
}

.mailing-list-wrapper form > label[type="submit"],
.mailing-list-wrapper form > input[type="submit"],
.search-form-wrapper form > label[type="submit"],
.search-form-wrapper form > input[type="submit"] {
  margin-bottom: 0;
}

.search-form-wrapper {
  border-top: 1px solid #58ab40;
  padding-top: 2rem;
  max-width: 392px;
  margin: 0 auto;
  text-align: left;
}

.search-form-wrapper label {
  font-family: "Abula W01 Regular", serif;
  font-size: 36px;
  font-size: 2.25rem;
  text-transform: uppercase;
  text-align: left;
}

.search-form-wrapper form > input,
.search-form-wrapper form > label {
  display: inline;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 40em) {
  /* 640 =================================================== */
  #menu-close-button {
    margin-bottom: 0;
    order: 2;
    flex: 0;
  }
  #search-close-button {
    order: 1;
    margin-bottom: 2.25rem;
  }
  .mailing-list-wrapper,
  .search-form-wrapper {
    order: 1;
  }
  .mailing-list-wrapper form > label,
  .mailing-list-wrapper form > input,
  .search-form-wrapper form > label,
  .search-form-wrapper form > input {
    display: inline-block;
  }
  .mailing-list-wrapper form > label,
  .search-form-wrapper form > label {
    margin: 0 1rem 0 0;
  }
  .mailing-list-wrapper form > input,
  .search-form-wrapper form > input {
    margin: 0 7px 0 0;
  }
  .mailing-list-wrapper form > input[type="submit"],
  .search-form-wrapper form > input[type="submit"] {
    margin-right: 0;
  }
  .mega-menu > wrap {
    flex-wrap: nowrap;
  }
  .search-form-wrapper {
    order: 2;
  }
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
#accessnav,
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

#accessnav:focus,
.screen-reader-text:focus {
  background-color: #fff;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #000;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after,
.clearfix:before,
.clearfix:after,
.fullwidth:before,
.fullwidth:after,
.wrap:before,
.wrap:after,
.main:before,
.main:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after,
.clearfix:after,
.fullwidth:after,
.wrap:after,
.main:after {
  clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
  margin: 0 0 1.5em;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Header
--------------------------------------------------------------*/
#top {
  padding: 1rem 0 3rem;
  background-size: cover;
  background-color: #005baa;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

#top > .wrap {
  max-width: inherit;
}

#top .banner {
  margin-bottom: 5.625rem;
  display: flex;
  justify-content: space-between;
}

#top .banner p {
  margin: 0;
}

#top .banner header a {
  display: block;
  width: 88px;
  height: 66px;
  background: transparent url(/images/uploads/btv-logo-new.png) no-repeat 50% 50%;
  background-size: contain;
  text-indent: -9999em;
}

.page-title {
  max-width: 1120px;
  margin: 0 auto;
}

.alert-section {
  background-color: #005baa;
  background: linear-gradient(177.65deg, #005baa 0%, #005baa 66%, #fff 66%);
  padding: 1.25rem 0 1.5625rem;
  margin-bottom: 34px;
  color: #fff;
  font-family: "Abula W01 Regular", serif;
}

.alert-section h4 {
  color: #fff;
  text-transform: none;
  margin-bottom: 0.5em;
}

.alert-section a {
  color: #9ddae9;
  text-decoration: none;
}

.alert-section a:link, .alert-section a:visited {
  color: #9ddae9;
}

.alert-section a:hover, .alert-section a:focus, .alert-section a:active {
  color: #d9dadb;
}

@supports (-webkit-clip-path: polygon(100% 0, 100% calc(100% - 25px), 0 100%, 0 0)) or (clip-path: polygon(100% 0, 100% calc(100% - 25px), 0 100%, 0 0)) {
  .alert-section {
    background: #005baa;
    -webkit-clip-path: polygon(100% 0, 100% calc(100% - 25px), 0 100%, 0 0);
    clip-path: polygon(100% 0, 100% calc(100% - 25px), 0 100%, 0 0);
  }
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 23.4375em) {
  /* 375 =================================================== */
  #top .banner header a {
    width: 134px;
    height: 100px;
  }
}

@media only screen and (min-width: 64em) {
  /* 1024 =================================================== */
  #top {
    padding-bottom: 8.75rem;
  }
  .alert-section {
    padding: 2.25rem 0 4.6875rem;
  }
  .alert-section h4 {
    padding-left: 3.25rem;
    margin-bottom: 0;
    min-height: 2em;
    background: transparent url(/assets/images/alerti.png) no-repeat 0% 0%;
  }
  @supports (-webkit-clip-path: polygon(100% 0, 100% 75px, 0 100%, 0 0)) or (clip-path: polygon(100% 0, 100% 75px, 0 100%, 0 0)) {
    .alert-section {
      background: #005baa;
      -webkit-clip-path: polygon(100% 0, 100% 75px, 0 100%, 0 0);
      clip-path: polygon(100% 0, 100% 75px, 0 100%, 0 0);
    }
  }
}

.parking-stats {
  background-color: #58ab40;
  background-color: #34871c;
  color: #fff;
}

.parking-stats > .wrap {
  max-width: 900px;
}

.parking-stats > .wrap:before, .parking-stats > .wrap:after {
  content: none;
}

.parking-stats > .wrap > div {
  padding: 1em;
  text-align: center;
}

.parking-stats h5 {
  color: #fff;
}

.parking-stats h5 strong {
  color: #000;
}

.parking-stats h5 a {
  color: #fff;
  text-transform: none;
  display: inline-block;
  padding-left: 1.8125rem;
  background: transparent url(/assets/images/calculator-icon.png) no-repeat 0% 100%;
  padding-top: 11px;
}

.parking-stats h5 a:link, .parking-stats h5 a:visited {
  color: #fff;
}

.parking-stats h5 a:hover, .parking-stats h5 a:focus, .parking-stats h5 a:active {
  color: #9ddae9;
}

.parking-stats h5 a:hover, .parking-stats h5 a:active {
  cursor: pointer;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 62em) {
  /* 992 =================================================== */
  .parking-stats > .wrap {
    display: flex;
    /*justify-content: space-between;*/
    justify-content: center;
    gap:50px;
    align-items: center;
  }
}

@media only screen and (min-width: 73.75em) {
  /* 1180 =================================================== */
  .parking-stats > .wrap {
    align-items: baseline;
  }
}

/*--------------------------------------------------------------
## Footer
--------------------------------------------------------------*/
#bottom {
  background: #000;
  color: #fff;
  text-align: center;
  padding-bottom: 3rem;
}

#bottom h4 {
  color: #fff;
}

#bottom > footer {
  background: transparent url(/assets/images/burlington-seal-medium.png) no-repeat 50% 50%;
  min-height: 230px;
  padding: 3.4375rem 0;
}

#bottom > footer a {
  display: inline-block;
  margin: 0 0.125em;
}

#bottom a {
  color: #9ddae9;
}

#bottom a:link, #bottom a:visited {
  color: #9ddae9;
}

#bottom a:hover, #bottom a:focus, #bottom a:active {
  color: #d9dadb;
}

.reviews {
  background: #3d3a36;
  padding: 2.5rem 0 3.375rem;
}

.reviews h2 {
  color: #fff;
}

.reviews h4 {
  margin-bottom: 2.25rem;
}

.reviews .star-count {
  margin: 0 auto 1.5rem;
  max-width: 200px;
  display: flex;
  justify-content: space-between;
}

.reviews .star-count label {
  position: absolute;
  left: -9999em;
}

.reviews .star-count span {
  text-indent: -9999em;
  width: 32px;
  height: 30px;
  display: inline-block;
  background: transparent url(/assets/images/starsprite.png) no-repeat 100% 50%;
}

.reviews .star-count.star-count-1 span:nth-of-type(-n+1) {
  background-position: 0% 50%;
}

.reviews .star-count.star-count-2 span:nth-of-type(-n+2) {
  background-position: 0% 50%;
}

.reviews .star-count.star-count-3 span:nth-of-type(-n+3) {
  background-position: 0% 50%;
}

.reviews .star-count.star-count-4 span:nth-of-type(-n+4) {
  background-position: 0% 50%;
}

.reviews .star-count.star-count-5 span:nth-of-type(-n+5) {
  background-position: 0% 50%;
}

.reviews q {
  display: block;
  margin-bottom: 2.5rem;
}

.footer-logo-wrapper {
  position: relative;
  margin-bottom: 3.75rem;
}

.footer-logo-wrapper a {
  display: inline-block;
  width: 159px;
  height: 135px;
}

.footer-logo-wrapper > .wrap {
  position: relative;
  z-index: 10;
}

.footer-logo-wrapper:after {
  background: #3d3a36;
  content: "";
  /*
		-webkit-clip-path: polygon(100% 0, 100% calc(100% - 28px), 0 28px, 0 0);
		clip-path: polygon(100% 0, 100% calc(100% - 28px), 0 28px, 0 0);
*/
  position: absolute;
  z-index: 9;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 150px;
  top: -150px;
  transform: skewY(2deg);
}

@supports (-webkit-clip-path: polygon(100% 0, 100% calc(100% - 28px), 0 28px, 0 0)) or (clip-path: polygon(100% 0, 100% calc(100% - 28px), 0 28px, 0 0)) {
  .footer-logo-wrapper:after {
    -webkit-clip-path: polygon(100% 0, 100% calc(100% - 28px), 0 28px, 0 0);
    clip-path: polygon(100% 0, 100% calc(100% - 28px), 0 28px, 0 0);
    top: 0px;
    transform: none;
  }
}

.footer-columns h4 {
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #2f3234;
  margin-bottom: 1rem;
}

.footer-columns .footer-column {
  margin-bottom: 2.75rem;
}

.footer-columns .footer-column.connect ul {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 1.25rem;
  max-width: 225px;
}

.footer-columns .footer-column.connect ul a {
  display: block;
  width: 47px;
  height: 45px;
  background: transparent url(/assets/images/socialdotssprite.png) no-repeat 0px 50%;
  text-indent: -9999em;
}

.footer-columns .footer-column.connect ul a.icon-facebook {
  background-position: 0px 50%;
}

.footer-columns .footer-column.connect ul a.icon-instagram {
  background-position: -60px 50%;
}

.footer-columns .footer-column.connect ul a.icon-twitter {
  background-position: -120px 50%;
}

.footer-columns .footer-column.connect ul a.icon-youtube {
  background-position: -180px 50%;
}

.footer-columns ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.map-wrapper {
  margin-bottom: 1.25rem;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 64em) {
  /* 1024 =================================================== */
  #bottom > footer br {
    display: none;
  }
  #bottom > footer br:first-of-type {
    display: block;
  }
  .footer-columns > .wrap {
    display: flex;
  }
  .footer-columns > .wrap .footer-column {
    width: calc(33.333333333333% - 20px);
    margin: 0 10px 3.75rem;
  }
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.post,
.page {
  margin: 0 0 1.5em;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

body {
  position: relative;
  float: left;
}

@media only screen and (min-width: 62em) {
  /* 992 =================================================== */
  body {
    min-width: 100vw;
  }
}

#debug {
  /* so EE debug doesn't take over the screen when on */
  clear: both;
}

/* ======= LAYOUT GRID STYLES======= */
/* start with mobile first then go up from there - media queries for others at bottom */
.fullwidth {
  width: 100%;
  float: left;
  background: #fff;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.wrap {
  margin: auto;
  width: 90%;
  max-width: 1120px;
  /* background: #fff url('../i/wrap_shadow.png') no-repeat bottom right; */
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main {
  width: 100%;
  float: left;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main .subnav {
  width: 100%;
  margin: 0;
  float: left;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main #content {
  width: 100%;
  float: left;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 5rem;
}

.main .sidebar {
  width: 100%;
  margin: 0;
  float: right;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* ======= MAIN CONTENT STYLES ======= */
.main {
  padding-bottom: 2em;
  overflow-wrap: break-word;
  /* these two ensure that long words never break out of container */
  word-wrap: break-word;
}

.page-photo-wrapper {
  margin: 0 auto 2rem;
  text-align: center;
}

.page-photo-wrapper img {
  display: inline-block;
  width: 900px;
  margin: 0 auto;
}

#page-video-wrapper {
  max-width: 900px;
  margin: 0 auto 2rem;
}

/* ======= TAB CONTENT STYLES ======= */
#tabs-mobile, #tabs-desktop {
  margin-bottom: 2.5rem;
}

.mobile-tab-trigger {
  font-weight: 300;
  background-color: #d9dadb;
  line-height: 1;
  padding: 0.75rem 3.4375rem;
  cursor: pointer;
  margin-bottom: 0;
}

.mobile-tab-trigger.ui-accordion-header-active {
  background-color: #005baa;
  color: #fff;
}

.mobile-tab-trigger + div {
  padding: 1.5rem 0;
}

#tabs-desktop {
  display: none;
}

#tabs-desktop .ui-tabs-nav {
  margin: 0 0 3.125rem;
  padding: 0 1.875rem 0;
  border-bottom: 1px solid #d9dadb;
  list-style: none;
  display: flex;
}

#tabs-desktop .ui-tabs-nav a {
  background-color: #d9dadb;
  color: #32363a !important;
  display: block;
  font-weight: 300;
  padding: 0.75rem;
  min-width: 192px;
  line-height: 1;
  text-align: center;
}

#tabs-desktop .ui-tabs-nav li {
  margin: 0 10px;
}

#tabs-desktop .ui-tabs-nav li.ui-state-active a {
  background-color: #005baa;
  color: #fff !important;
}

#tabs-desktop .ui-tabs-panel {
  padding: 0 20px 50px;
}

/*These ems are based on a 16px base*/
@media only screen and (min-width: 62em) {
  /* 992 =================================================== */
  #tabs-mobile {
    display: none;
  }
  #tabs-desktop {
    display: block;
  }
}

.page-photo-wrapper h4 {
  margin: 2.8125rem 0 3.75rem;
  color: #000;
  text-transform: none;
  text-align: left;
}

.listing {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 3rem;
}

.listing .listing-item {
  width: 270px;
  margin: 0 auto 2.5rem;
  background-color: #005baa;
  color: #fff;
}

.listing .listing-item:hover, .listing .listing-item:focus, .listing .listing-item:active {
  background-color: #eb7925;
}

.listing .listing-item > img {
  display: block;
}

.listing .listing-item h3 {
  font-family: "Abula W01 Regular", serif;
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1;
  margin-bottom: 0.625rem;
  text-transform: none;
}

.listing .listing-item h3 a {
  color: #fff;
  display: block;
}

.listing .listing-item h3:link, .listing .listing-item h3:visited {
  color: #fff;
}

.listing .listing-item h3:hover, .listing .listing-item h3:focus, .listing .listing-item h3:active {
  color: #fff;
}

.listing .listing-item p {
  margin-bottom: 0.625rem;
}

.listing .listing-item .listing-item-lower {
  padding: 1.5rem 1.375rem;
}

.listing .pagination {
  margin: 0 auto;
  width: 100%;
  text-align: center;
}

.listing .pagination strong {
  font-weight: 400;
}

.listing.listing-no-image .listing-item {
  border: 1px solid #d9dadb;
  background-color: #fff;
  color: #000;
}

.listing.listing-no-image .listing-item:hover, .listing.listing-no-image .listing-item:focus, .listing.listing-no-image .listing-item:active {
  background-color: #fff;
  border-color: #9ddae9;
}

.listing.listing-no-image .listing-item h3 {
  font-family: "Libre Franklin", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  color: #005baa;
  text-transform: none;
  font-weight: 400;
  line-height: 1.5;
}

.listing.listing-no-image .listing-item h3 a {
  color: #005baa;
}

.listing.listing-no-image .listing-item h3 a:link, .listing.listing-no-image .listing-item h3 a:visited {
  color: #005baa;
}

.listing.listing-no-image .listing-item h3 a:hover, .listing.listing-no-image .listing-item h3 a:focus, .listing.listing-no-image .listing-item h3 a:active {
  color: #005baa;
}

.listing.listing-no-image .listing-item + h2 {
  margin-top: 3rem;
}

.listing.listing-no-image h2 {
  width: 100%;
  margin-bottom: 1em;
}

#homepage {
  /* Layout helpers
----------------------------------*/
  /* Interaction Cues
----------------------------------*/
  /* Misc visuals
----------------------------------*/
  /* Overlays */
  /* Component containers
----------------------------------*/
  /* Interaction states
----------------------------------*/
  /*
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 1px solid #cccccc;
	background: #ededed;
	font-weight: normal;
	color: #2b2b2b;
}
*/
  /* Interaction Cues
----------------------------------*/
}

#homepage .page-title h1 {
  vertical-align: baseline;
}

#homepage .page-title h1 span {
  font-size: 30px;
  font-size: 1.875rem;
}

#homepage .arrivals-departures-outer {
  max-width: 1120px;
  margin: 0 auto;
}

#homepage .arrivals-departures-wrap {
  max-width: 375px;
  margin: 2rem auto;
}

@media only screen and (min-width: 37.5em) {
  #homepage {
    /* 600 =================================================== */
  }
  #homepage .arrivals-departures-wrap {
    margin: 2rem 0 2rem auto;
    margin-right:0px;
  }
}

#homepage #arrival-departures-tab-headings {
  padding-left: 0;
  margin: 0;
  list-style: none;
  display: flex;
}

#homepage #arrival-departures-tab-headings li {
  width: 50%;
  padding: 10px;
  text-align: center;
  background-color: transparent;
  line-height: 1;
}

#homepage #arrival-departures-tab-headings li a {
  color: #fff;
  text-transform: uppercase;
  font-size: 18px;
  font-size: 1.125rem;
}

#homepage #arrival-departures-tab-headings li a:link, #homepage #arrival-departures-tab-headings li a:visited, #homepage #arrival-departures-tab-headings li a:hover, #homepage #arrival-departures-tab-headings li a:focus, #homepage #arrival-departures-tab-headings li a:active {
  color: #fff;
}

#homepage #arrival-departures-tab-headings li.ui-state-active {
  background-color: #005baa;
}

#homepage .tab-arrivals,
#homepage .tab-departures {
  background-color: #005baa;
  color: #fff;
  text-align: center;
  padding: 2rem;
  display: none;
}

#homepage .tab-arrivals label,
#homepage .tab-departures label {
  font-size: 18px;
  font-size: 1.125rem;
  display: block;
  margin-bottom: 10px;
}

#homepage .tab-arrivals input[type="search"],
#homepage .tab-departures input[type="search"] {
  padding: 0.5625rem 0.5625rem 0.5625rem 1.8125rem;
  background: #fff url(/assets/images/sm-search-icon.png) no-repeat 9px 10px;
  font-size: 15px;
  font-size: 0.9375rem;
  width: 100%;
  margin-bottom: 0.75rem;
}

@media only screen and (min-width: 37.5em) {
  #homepage {
    /* 600 =================================================== */
  }
  #homepage .tab-arrivals,
  #homepage .tab-departures {
    padding: 2rem 3.25rem;
  }
}

#homepage .arrivals-departures-quicklinks {
  background-color: #9ddae9;
  background-color: rgba(157, 218, 233, 0.4);
  padding: 0.75rem 1.875rem;
  display: flex;
  justify-content: space-between;
}

#homepage .arrivals-departures-quicklinks a {
  color: #fff;
  font-size: 12px;
  font-size: 0.75rem;
  display: block;
  text-align: center;
  padding-top: 58px;
  min-width: 50px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 50% 0%;
}

#homepage .arrivals-departures-quicklinks a.quicklink-dining {
  background-image: url(/assets/images/food-icon.png);
}

#homepage .arrivals-departures-quicklinks a.quicklink-parking {
  background-image: url(/assets/images/parking-icon.png);
}

#homepage .arrivals-departures-quicklinks a.quicklink-transportation {
  background-image: url(/assets/images/taxi-icon.png);
}

#homepage .arrivals-departures-quicklinks a.quicklink-claims {
  background-image: url(/assets/images/bag-icon.png);
}

#homepage .arrivals-departures-quicklinks a:link, #homepage .arrivals-departures-quicklinks a:visited {
  color: #fff;
}

#homepage .arrivals-departures-quicklinks a:hover, #homepage .arrivals-departures-quicklinks a:focus, #homepage .arrivals-departures-quicklinks a:active {
  color: #58ab40;
}

#homepage .localtime h6 {
  font-weight: 400;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  margin: 1em 0;
  text-align: center;
}

#homepage .see-all {
  margin-bottom: 0;
}

#homepage .see-all a {
  display: inline-block;
  padding-right: 22px;
  background: transparent url(/assets/images/arrow-icon.png) no-repeat 100% 50%;
  color: #fff;
}

#homepage .see-all a:link, #homepage .see-all a:visited, #homepage .see-all a:hover, #homepage .see-all a:focus, #homepage .see-all a:active {
  color: #fff;
}

#homepage .homepage-ad-wrapper {
  background-color: #3d3a36;
  padding: 4.375rem;
  margin: 1.875rem 0 3.75rem;
}

#homepage .homepage-ad-wrapper > div {
  max-width: 980px;
  margin: 0 auto;
}

#homepage .home-latest-news {
  margin-bottom: 3.75rem;
}

#homepage .home-latest-news .listing-item {
  padding: 1.5rem 1.3125rem;
  margin-bottom: 1.3125rem;
  height: 9.375rem;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  align-items: flex-end;
  color: #fff;
}

#homepage .home-latest-news .listing-item:link, #homepage .home-latest-news .listing-item:visited, #homepage .home-latest-news .listing-item:hover, #homepage .home-latest-news .listing-item:focus, #homepage .home-latest-news .listing-item:active {
  color: #fff;
}

#homepage .home-latest-news .listing-item h4 {
  text-transform: none;
  color: #fff;
}

#homepage .home-latest-news .listing-item:last-of-type span {
  color: #fff;
  font-size: 36px;
  font-size: 2.25rem;
  padding-right: 2rem;
  background: transparent url(/assets/images/arrow-icon-large.png) no-repeat 100% 38px;
  text-transform: uppercase;
  line-height: 1;
}

#homepage .home-latest-news .listing-item:last-of-type span span {
  font-size: 18px;
  font-size: 1.125rem;
  padding-right: 0;
  background-image: none;
}

@media only screen and (min-width: 75em) {
  #homepage {
    /* 1200 =================================================== */
  }
  #homepage .home-latest-news .listing-item:nth-of-type(-n+2) {
    width: 100%;
    min-height: 18.75rem;
    max-width: 34.375rem;
  }
  #homepage .home-latest-news .listing-item:nth-of-type(-n+2) h4 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

#homepage .reviews {
  padding-bottom: 6.1875rem;
}

#homepage .ui-helper-hidden {
  display: none;
}

#homepage .ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

#homepage .ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}

#homepage .ui-helper-clearfix:before,
#homepage .ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}

#homepage .ui-helper-clearfix:after {
  clear: both;
}

#homepage .ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
  /* support: IE8 */
}

#homepage .ui-front {
  z-index: 100;
}

#homepage .ui-state-disabled {
  cursor: default !important;
  pointer-events: none;
}

#homepage .ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#homepage .ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}

#homepage .ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: 0;
}

#homepage .ui-menu .ui-menu {
  position: absolute;
}

#homepage .ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
  /* support: IE10, see #8844 */
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}

#homepage .ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px .4em;
}

#homepage .ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0;
}

#homepage .ui-autocomplete.ui-widget-content {
  background: #ffffff;
}

#homepage .ui-state-default,
#homepage .ui-widget-content .ui-state-default,
#homepage .ui-widget-header .ui-state-default,
#homepage .ui-button,
#homepage .ui-state-default a,
#homepage .ui-state-default a:link,
#homepage .ui-state-default a:visited,
#homepage a.ui-button,
#homepage a:link.ui-button,
#homepage a:visited.ui-button,
#homepage .ui-button {
  color: #454545;
  text-decoration: none;
}

#homepage .ui-state-hover a,
#homepage .ui-state-hover a:hover,
#homepage .ui-state-hover a:link,
#homepage .ui-state-hover a:visited,
#homepage .ui-state-focus a,
#homepage .ui-state-focus a:hover,
#homepage .ui-state-focus a:link,
#homepage .ui-state-focus a:visited,
#homepage a.ui-button:hover,
#homepage a.ui-button:focus {
  color: #2b2b2b;
  text-decoration: none;
}

#homepage .ui-visual-focus {
  box-shadow: 0 0 3px 1px #5e9ed6;
}

#homepage .ui-state-active,
#homepage .ui-widget-content .ui-state-active,
#homepage .ui-widget-header .ui-state-active,
#homepage a.ui-button:active,
#homepage .ui-button:active,
#homepage .ui-button.ui-state-active:hover {
  background: #58ab40;
  font-weight: normal;
  color: #ffffff;
}

#homepage .ui-icon-background,
#homepage .ui-state-active .ui-icon-background {
  background-color: #ffffff;
}

#homepage .ui-state-active a,
#homepage .ui-state-active a:link,
#homepage .ui-state-active a:visited {
  color: #ffffff;
  text-decoration: none;
}

#homepage .ui-state-highlight,
#homepage .ui-widget-content .ui-state-highlight,
#homepage .ui-widget-header .ui-state-highlight {
  border: 1px solid #dad55e;
  background: #fffa90;
  color: #777620;
}

#homepage .ui-state-checked {
  border: 1px solid #dad55e;
  background: #fffa90;
}

#homepage .ui-state-highlight a,
#homepage .ui-widget-content .ui-state-highlight a,
#homepage .ui-widget-header .ui-state-highlight a {
  color: #777620;
}

#homepage .ui-state-error,
#homepage .ui-widget-content .ui-state-error,
#homepage .ui-widget-header .ui-state-error {
  border: 1px solid #f1a899;
  background: #fddfdf;
  color: #5f3f3f;
}

#homepage .ui-state-error a,
#homepage .ui-widget-content .ui-state-error a,
#homepage .ui-widget-header .ui-state-error a {
  color: #5f3f3f;
}

#homepage .ui-state-error-text,
#homepage .ui-widget-content .ui-state-error-text,
#homepage .ui-widget-header .ui-state-error-text {
  color: #5f3f3f;
}

#homepage .ui-priority-primary,
#homepage .ui-widget-content .ui-priority-primary,
#homepage .ui-widget-header .ui-priority-primary {
  font-weight: bold;
}

#homepage .ui-priority-secondary,
#homepage .ui-widget-content .ui-priority-secondary,
#homepage .ui-widget-header .ui-priority-secondary {
  opacity: .7;
  filter: Alpha(Opacity=70);
  /* support: IE8 */
  font-weight: normal;
}

#homepage .ui-state-disabled,
#homepage .ui-widget-content .ui-state-disabled,
#homepage .ui-widget-header .ui-state-disabled {
  opacity: .35;
  filter: Alpha(Opacity=35);
  /* support: IE8 */
  background-image: none;
}

#homepage .ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35);
  /* support: IE8 - See #6059 */
}

#homepage .social-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  max-width: 996px;
  margin: 50px auto 0;
}

#homepage .social-box > a {
  display: block;
  padding: 0.375em;
  width: 249px;
  height: 249px;
}

@media only screen and (min-width: 68.75em) {
  #homepage {
    /* 1100 =================================================== */
  }
  #homepage .social-box {
    justify-content: space-between;
  }
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  /* Theme Footer (when set to scrolling) */
  display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object,
img,
video {
  max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  margin-bottom: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

/* FancyBox Styles */
#prefermail, #guidelines, #bio, #bio1, #bio2, #bio3, #bio4, #bio5, #bio6, #bio7, #paypalpay, #promo, #bymail, #whatis {
  /* hides by default for fancybox */
  display: none;
  width: 90%;
}

#promo {
  /* styles for email pop up promo (mirrors largely the homepage feature box */
  background: #ffffff;
  padding: 2.8125em 1.25em;
  margin-bottom: 2.8125em;
}

#promo div.image {
  float: right;
  margin-left: 1em;
}

#promo p {
  margin-top: 0;
  margin-bottom: .7em;
  font-size: 1.5em;
  line-height: 1.3em;
}

#promo p.caption {
  font-size: 1em;
}

#promo p.more {
  margin-top: 1em;
  font-size: 1em;
}

#promo span {
  color: #fff;
}

#promo label {
  position: absolute;
  left: -9999em;
}

#promo .already-subscribed {
  font-family: "Libre Franklin", sans-serif;
  font-size: 0.75em;
  color: #fff;
  margin-bottom: 2.25em;
}

#promo .already-subscribed a:link, #promo .already-subscribed a:visited {
  font-weight: 700;
}

#promo ::-webkit-input-placeholder {
  /* all these are here just for styling the placeholder */
  color: #444444;
}

#promo :-moz-placeholder {
  /* Firefox 18- */
  color: #444444;
}

#promo ::-moz-placeholder {
  /* Firefox 19+ */
  color: #444444;
}

#promo :-ms-input-placeholder {
  color: #444444;
}

#promo input {
  font-size: 0.875em;
  font-style: italic;
  color: #c4c4c4;
  margin: 0.3571428571em 0;
  font-family: "Libre Franklin", sans-serif;
}

#promo input[type="email"] {
  width: 20em;
  /* makes it a bit wider */
  color: #444444;
}

#promo input[type="submit"] {
  font-size: 0.875em;
  color: #fff;
  font-style: normal;
  padding: 0.5em 1.4285714286em;
  line-height: 1em;
}

#promo button {
  color: white;
}
#homepage .page-title h1{
  text-align: left;
}
.calendly-inline-widget{
  height: 656px !important;
}
.logos ul,.logos ul li{
  list-style: none;
  margin:unset;
}

/* CSS for floatingMascot */
#floatingMascot {
  position: absolute; 
  right: 2%;  
  margin-top: -125px;      
  z-index: 1000;   
  animation: float 2s ease-in-out infinite; 
}
#floatingMascot a{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#floatingMascot h4{
 margin: unset;
}

#floatingMascot img {
  width: 190px;    
  height: auto;
}

@keyframes float {
  0% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
  100% { transform: translateY(0); }
}

.airline-row {
  display: flex;
  flex-wrap: wrap;       /* allows wrapping to next row */
  gap: 10px;             /* space between columns */
}

.airline-col {
  flex: 1 1 calc(33.333% - 10px); /* 3 columns per row */
  box-sizing: border-box;
  background: #ffffff;
  padding: 20px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
.airline-row {
  display: flex;
  flex-wrap: wrap;       /* allows wrapping to next row */
  gap: 10px;  
  flex-direction: column;           /* space between columns */
}
}