@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,700,700i&display=swap');

/*
	CSS Document for Gatehouse Admissions
	Copyright 2021 Neuro-Designs. All rights reserved.
	www.neuro-designs.com
*/

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
  }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
  }

body { line-height: 1; }

ol, ul {
	list-style: none;
  }

blockquote, q {
	quotes: none;
  }

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
  }

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

/* -------------------------------------------------------------

  CSS Variables

------------------------------------------------------------- */

:root {
  --gatehouse-blue: #434f86;
  --gatehouse-orange: #f58220;

  --gatehouse-blue-rgb: 67,79,134;
  --gatehouse-orange-rgb: 245,130,32;

  --global-border-radius: .4rem;
  --global-box-shadow: 0 .5rem 2rem rgba(0,0,0,.45);

  --global-padding: 2em;
  --global-padding-double: 4em;
  --global-padding-half: 1em;

  --fa-primary-color: #f58220;
  --fa-secondary-color: #434f86;
  --fa-secondary-opacity: 1;
  }

/* -------------------------------------------------------------

  General Settings

------------------------------------------------------------- */

*,
*:before,
*:after { /* Box Sizing Settings */
  box-sizing: border-box;
  }

::selection {
    background: var(--gatehouse-orange);
    color: #fff;
    }

html,
body {
  height: 100%;
  }

body {
	padding-top: 0; /* Adjust with <header> height when necessary */
	background: #fff;
	font: 10px/20px 'Open Sans', sans-serif;
	color: #444;
  scroll-padding-top: 14rem;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	}

a {
	color: var(--gatehouse-blue);
	font-weight: bold;
	text-decoration: none;
	}

	a:hover { color: var(--gatehouse-orange); }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 1.6em;
	color: #222;
	font-weight: 300;
	}

	h2 {
  	color: var(--gatehouse-blue);
  	font-size: 3.2em;
  	line-height: 1.2em;
  	margin-bottom: 1em;
    }

	h3, h2.small {
  	color: var(--gatehouse-orange);
  	font-size: 2.2em;
  	line-height: 1.5em;
    margin-bottom: 1.2em;
    }

  h4, h3.small,
  h5,
  h6 {
    color: var(--gatehouse-blue);
    font-size: 1.6em;
    }

p,
pre,
figure,
table,
ul,
ol {
	margin-bottom: 1.6em;
	font-size: 1.6em;
	line-height: 1.6em;
	}

	p.intro {
    color: var(--gatehouse-orange);
  	font-size: 2.2em;
  	font-weight: 200;
	}

ul,
ol {
	padding-left: var(--global-padding);
	}

	ul li { list-style: disc outside; }

	ol li { list-style: decimal outside; }

	ul ul,
	ul ol,
	ol ul,
	ol ol {
		margin: 0;
		font-size: 1em;
		}

		ol ul li { list-style: disc; }

    ol.lower-roman li { list-style: lower-roman; }

.fa-li i { color: var(--gatehouse-blue); }

img {
	max-width: 100%;
	vertical-align: middle;
	image-rendering: optimizeQuality;
	}

	figure img {
  	width: 100%; /* inherit <figure>'s width */
    }

	figcaption {
  	margin-top: .5em;
  	color: #999;
  	font-size: .8em;
  	font-style: italic;
  	text-align: center;
  	}

blockquote {
  background: rgba(var(--gatehouse-blue-rgb),.05);
	margin: 0 1em;
	padding: var(--global-padding);
	color: var(--gatehouse-blue);
	font-size: 1.9em;
	font-weight: 200;
	line-height: 1.8em;
	text-align: left;
	--fa-secondary-color: rgba(var(--gatehouse-orange-rgb),.5);
	}

	blockquote p {
  	margin: 0;
  	margin-top: 1.6em;
  	font-size: .8em;
  	font-weight: 700;
	  }

strong { font-weight: 700; }

em,
cite {
	font-style: italic;
	}

small,
sup,
sub { font-size: 0.7em; }

sup {
	position: relative;
	top: -0.6em;
	}

sub {
	position: relative;
	bottom: -0.6em;
	}

hr {
	clear: both;
	width: 100%;
	height: 0;
	margin: 2em 0;
	border: none;
	border-top: 1px solid #ccc;
	font-size: 1.8em;
	line-height: 1.61em;
	}

table.default th,
table.default td {
  background: #eee;
  margin: 1px;
  padding: .5em 1em;
  border: 1px solid rgba(255,255,255,1);
  }

  table.default thead th {
    background: #666;
    color: #fff;
    font-weight: 700;
    text-align: left;
    }

  table.default thead th.overhead { background: var(--gatehouse-orange); }

  table.default thead td { background: #ccc; }

  table.default tfoot td { background: #ccc; }

  .table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    }

#CybotCookiebotDialog ul li { list-style: none; }

/* -------------------------------------------------------------

  Default Input Settings (encapsulate with <p> when possible)

------------------------------------------------------------- */

input,
textarea,
select,
button {
	font-family: 'Open Sans', sans-serif;
	}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="file"],
textarea {
	background: rgba(0,0,0,.05);
	width: 90%;
	padding: .5em 1em !important;
	border: none;
	border-bottom: 1px solid rgba(0,0,0,.0);
	color: #444;
	font-size: 1em;
	}

	input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="tel"]:focus,
  input[type="number"]:focus,
  textarea:focus {
    background: #fff;
    outline: none;
    border-bottom: 1px solid rgba(0,0,0,.25);
    }

	textarea {
		max-width: 100%;
		min-height: 6em;
		}

select {
  width: auto !important;
  font-size: 1em;
  }

input[type="search"] { -webkit-appearance: none; }

input[type="submit"],
button[type="submit"],
button,
.button {
	display: inline-block;
	background: var(--gatehouse-blue);
	padding: .5em 1em;
	color: #fff;
	border: none;
	font-size: 1.6em;
	font-weight: 400;
	cursor: pointer;
	-webkit-appearance: none;
	}

	input[type="submit"]:hover,
	button[type="submit"]:hover,
	.button:hover {
		background: #999 !important;
		color: #fff;
		box-shadow: 0 10px 20px rgba(0,0,0,.25);
		}

  button[type="submit"] i,
  .button i {
    margin-left: .5em;
    opacity: .5;
    }

  .button.inverted { background: var(--gatehouse-orange); }

  .button.normal { font-size: 1em; }

  .button.icon-left i {
    margin-left: 0;
    margin-right: .5em;
    }

::placeholder { color: rgba(0,0,0,.5); }

#error_message ul { padding: 0; }

  #error_message ul li {
    list-style: none;
    display: block;
    }

    #error_message ul li span {
    display: inline-block;
    background: red;
    margin: 1px;
    padding: 5px 10px;
    border-radius: 3px;
    color: #fff;
    }

/* -------------------------------------------------------------

  Additional Classes and Overrides

------------------------------------------------------------- */

/* -------------------------------------------------------------
  Font Stylings
------------------------------------------------------------- */

.text-normal { font-weight: normal; }

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

.text-align-right { text-align: right; }

.text-underline { text-decoration: underline; }

.text-linethrough { text-decoration: line-through; }

.text-uppercase { text-transform: uppercase; }

.text-monospace { font-family: monospace; }

/* -------------------------------------------------------------
  Colors
------------------------------------------------------------- */

.color-blue { color: var(--gatehouse-blue); }

.color-orange { color: var(--gatehouse-orange); }

.shaded { background: #eee; }

.shaded-blue { background: var(--gatehouse-blue); }

.shaded-orange { background: var(--gatehouse-orange); }

  .shaded-blue *,
  .shaded-orange * {
    color: #fff;
    }

.shaded-white { background: #fff; }

/* -------------------------------------------------------------
  Box Model
------------------------------------------------------------- */

.flex {
  display: flex;
  flex-wrap: wrap;
  }

  .flex.nowrap { flex-wrap: nowrap; }

.width-full { width: 100%; }

.hidden { display: none !important; }

.overflow-hidden { overflow: hidden; }

.margin-none { margin: 0; }

.margin-auto { margin: 0 auto; }

.margin { margin: 1em; }

.margin-top { margin-top: 1em; }

.margin-bottom { margin-bottom: 1em; }

.margin-left { margin-left: 1em; }

.margin-right { margin-right: 1em; }

.margin-sides {
  margin-left: 1em;
  margin-right: 1em;
  }

.margin-top-bottom {
  margin-top: 1em;
  margin-bottom: 1em;
  }

/*
  Note: When considering responsive layouts that may readjust itself
  significantly and look undesireable when stacked, consider using
  individual/paired padding classes instead of .padding
*/

.padding { padding: var(--global-padding); }

.padding-top { padding-top: var(--global-padding); }

.padding-bottom { padding-bottom: var(--global-padding); }

.padding-left { padding-left: var(--global-padding); }

.padding-right { padding-right: var(--global-padding); }

.padding-sides {
  padding-left: var(--global-padding);
  padding-right: var(--global-padding);
  }

.padding-top-bottom {
  padding-top: var(--global-padding);
  padding-bottom: var(--global-padding);
  }

.padding-double { padding: var(--global-padding-double); }

.padding-double-top { padding-top: var(--global-padding-double); }

.padding-double-bottom { padding-bottom: var(--global-padding-double); }

.padding-double-left { padding-left: var(--global-padding-double); }

.padding-double-right { padding-right: var(--global-padding-double); }

.padding-double-sides {
  padding-left: var(--global-padding-double);
  padding-right: var(--global-padding-double);
  }

.padding-double-top-bottom {
  padding-top: var(--global-padding-double);
  padding-bottom: var(--global-padding-double);
  }

.padding-half { padding: var(--global-padding-half); }

.padding-half-top { padding-top: var(--global-padding-half); }

.padding-half-bottom { padding-bottom: var(--global-padding-half); }

.padding-half-left { padding-left: var(--global-padding-half); }

.padding-half-right { padding-right: var(--global-padding-half); }

.padding-half-sides {
  padding-left: var(--global-padding-half);
  padding-right: var(--global-padding-half);
  }

.padding-half-top-bottom {
  padding-top: var(--global-padding-half);
  padding-bottom: var(--global-padding-half);
  }

.border { border: 1px solid #ccc; }

.border-top { border-top: 1px solid #ccc; }

.border-right { border-right: 1px solid #ccc; }

.border-bottom { border-bottom: 1px solid #ccc; }

.border-left { border-left: 1px solid #ccc; }

/* -------------------------------------------------------------
  Alignment & Positioning
------------------------------------------------------------- */

.image-align-left,
.post .alignleft { /* For use with images in paragraphs */
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1em;
  }

.image-align-right,
.post .alignright { /* For use with images in paragraphs */
  float: right;
  margin-left: 1.5em;
  margin-bottom: 1em;
  }

.clear-both { clear: both !important; }

.clear-left { clear: left !important; }

.clear-right { clear: right !important; }

.float-left { float: left !important; }

.float-right { float: right !important; }

.float-center {
  float: none !important;
  margin-left: auto;
  margin-right: auto;
  }

/* -------------------------------------------------------------
  Lists
------------------------------------------------------------- */

ul.blank { padding: 0; }

	ul.blank li {
		padding: 0;
		list-style: none;
		position: relative;
		}

.column-count-2 { column-count: 2; }

.column-count-3 { column-count: 3; }

/* -------------------------------------------------------------
  Video Embed Settings
------------------------------------------------------------- */

.video-wrapper {
  margin-bottom: 3.22em;
  border: 10px solid rgba(var(--gatehouse-blue-rgb),.1);
}

.embed-container {
  max-width: 100%;
  height: 0;
  margin-bottom: 1.6em;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative;
  }

  .embed-container iframe,
  .embed-container object,
  .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    }

/* -------------------------------------------------------------
  Others
------------------------------------------------------------- */

.notification {
  background: var(--gatehouse-blue);
  color: #fff;
  margin-bottom: 1.61em;
  padding: .5em 1em;
  }

  .notification p { margin: 0; }

/* -------------------------------------------------------------

  Layout Settings - Default

------------------------------------------------------------- */

span.anchor {
  clear: both;
	display: block;
	visibility: hidden;
	height: 0;
	margin-top: 0;
	}

.wrapper {
  padding: 0;
  overflow: auto;
  }

header {
  background: #fafafa;
	width: 100%;
	height: auto;
	position: fixed;
	top: 0;
	z-index: 10000;
	}

	header .plc {
  	max-width: 1320px;
  	height: 100%;
  	margin: 0 auto;
    display: flex;
  	align-items: center;
  	}

  	.header-logo {
      align-self: flex-start;
      margin-bottom: 5px;
      }

      .header-logo a {
        margin: 0;
        color: #222;
        font-size: 1em;
        margin-bottom: 50px;
        }

        .header-logo a:hover { opacity: .5; }

	header.scrolled {
  	background: #fff;
  	box-shadow: 0 0 10px rgba(0,0,0,0.3);
  	}

  nav ul {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    }

    nav li {
      margin-left: 2em;
      list-style: none;
      }

    nav a {
      color: #999;
      font-weight: 400;
      }

      nav a:hover,
      nav .current a {
        color: var(--gatehouse-blue);
        }

      nav li.highlight a {
        background: var(--gatehouse-orange);
        padding: .5em 1em;
        color: #fff;
        }

        nav li.highlight a:hover,
        nav li.highlight.current a {
          background: var(--gatehouse-blue);
          }

    nav i { margin-right: .25em; }

  .nav-up { top: -120px; }

    a.open {
      font-size: 26px;
      display: none;
      float: right;
      }

    a.close-btn { display: none; }

.title-wrapper {
  width: 100%;
  background: #fafafa;
  }

	.title-wrapper .plc {
  	max-width: 1320px;
  	height: 100%;
    height: 30em;
  	margin: 0 auto;
    display: flex;
  	align-items: flex-end;
  	}

  .title-wrapper h1 {
    margin: 0;
    padding-bottom: .5em;
    color: var(--gatehouse-blue);
    font-size: 5em;
    line-height: 1em;
    letter-spacing: -0.015625em;
    }

.contents {
  clear: both;
  width: 100%;
	margin: 0 auto;
	}

	.col-1,
	.col-2,
	.col-3,
	.col-4,
	.col-5,
	.col-6,
	.col-7,
	.col-8,
	.col-9,
	.col-10,
	.col-11,
	.col-1-4,
	.col-1-3,
	.col-1-2,
	.col-2-3,
	.col-3-4,
	.col-half {
		float: left;
		}

  /* Note: When nested, all column widths are counted relative to parent element */

  .col-1 { width: 8.333333%; }

  .col-2 { width: 16.666667%; }

  .col-3,
  .col-1-4 {
    width: 25%;
    }

  .col-4,
  .col-1-3 {
    width: 33.333333%;
    }

  .col-5 { width: 41.666665%; }

  .col-6,
  .col-1-2,
  .col-half {
    width: 50%;
    }

  .col-7 { width: 58.333333%; }

  .col-8,
  .col-2-3 {
    width: 66.666667%;
    }

  .col-9,
  .col-3-4 {
    width: 75%;
    }

  .col-10 { width: 83.333333%; }

  .col-11 { width: 91.666667%; }

  .col-12,
  .col-full {
    clear: both;
    width: 100%;
    max-width: 1320px;
    margin: auto;
    }

footer {
	clear: both !important;
	width: 100%;
	margin: 10em auto;
  margin-top: 10em;
	margin-bottom: 0;
  padding-top: var(--global-padding);
	padding-bottom: 8em;
  border-top: 1px solid var(--gatehouse-orange);
	overflow: hidden;
	}

	footer .plc {
  	max-width: 1320px;
  	margin: 0 auto;
		}

		footer p { color: #999; }

    footer .copyright p { font-size: 1.4em; }

    footer .social p { margin-top: -.5em; }

    footer .social i { margin-right: .25em; }

.section-wrapper {
  padding-top: 8em;
  clear: left;
  }

/* -------------------------------------------------------------

  Layout Specifics

------------------------------------------------------------- */

/* Home */

.home-feature h1 {
  margin-top: 100px;
  margin-bottom: .5em;
  color: var(--gatehouse-orange);
  font-size: 6.4em;
  letter-spacing: -0.03125em;
  line-height: 1.25em;
  }

.hero-notification {
  margin-bottom: 1em;

  p {
    display: inline-block;
    background: var(--gatehouse-blue);
    padding: .4em var(--global-padding-half);
    color: white;
    }
  }

.feature-set {
  display: flex;
  justify-content: space-between;
  border-bottom: 6px solid var(--gatehouse-orange);
  gap: 2px;
  }

  .feature-set > a {
    max-width: 33.33%;
    background-size: cover;
    background-position: center center;
    font-weight: normal;
    }

  .feature-set > a p { color: #444; }

  .feature-set > a:hover {
    background: var(--gatehouse-orange);
    box-shadow: var(--global-box-shadow);
    z-index: 2;
    transform: scale(1.05);
    }

    .feature-set > a:hover h2,
    .feature-set > a:hover p {
      color: #fff;
      }

.feature-item-1 { background-image: url("../images/gatehouse-hero-1.jpg"); }

.feature-item-2 { background-image: url("../images/gatehouse-hero-2.jpg"); }

.feature-item-3 { background-image: url("../images/gatehouse-hero-3.jpg"); }

.home-story-gatehouse-intro,
.home-story-gatehouse-1 div:first-child,
.home-story-gatehouse-2 div:first-child,
.home-story-gatehouse-3 div:first-child,
.home-story-gatehouse-outro {
  text-align: center;
  }

.home-story-gatehouse .flex {
  align-items: center;
  align-content: center;
  }

.home-story-gatehouse-2 div:first-child { order: 2; }

.client-logos {
  padding: var(--global-padding) 0;
  margin-top: 8em;
  }

.client-logo-set {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  }

/* Who We Are */
.gatehouse-way-item {
  max-width: 50%;
  padding: var(--global-padding-double);
  background: #eee;
  margin-bottom: 2em;
  border: 1px solid white;
  border-bottom: 6px solid #ccc;
  }

  .gatehouse-way-item h3 { color: var(--gatehouse-blue); }

.team-set {
  display: flex;
  flex-wrap: wrap;
  }

  .team-set > a {
    width: 20%;
    margin: 0 0 1em 0;
    padding-bottom: var(--global-padding);
    text-align: center;
    transition: all .2s ease-out;
    }

    .team-set img { transition: all .1s ease-out; }

    .team-set > a:hover {
      background: var(--gatehouse-orange);
      box-shadow: var(--global-box-shadow);
      z-index: 2;
      transform: scale(1.05);
      }

      .team-set > a:hover * { color: #fff !important; }

  .team-set > a h3 {
    margin: .5em 0 .25em 0;
    color: var(--gatehouse-blue);
    font-size: 2.2em;
    font-weight: 300;
    }

  .team-set > a p {
    margin: 0;
    padding-left: var(--global-padding-half);
    padding-right: var(--global-padding-half);
    }

  .team-set > a p.education {
    color: #666;
    font-weight: normal;
    }

.home-story-gatehouse .team-set {
  flex-wrap: nowrap;
  padding-bottom: var(--global-padding);
  }

  .home-story-gatehouse .team-set > a { padding: 0; }

    .home-story-gatehouse .team-set > a h3,
    .home-story-gatehouse .team-set > a p {
      display: none;
      }

.consultant-profile-page .team-set { flex-wrap: nowrap; }

  .consultant-profile-page .team-set > a { padding-bottom: 1em; }

    .consultant-profile-page .team-set > a h3 {
      font-size: 1.6em;
      font-weight: 700;
      }

    .consultant-profile-page .team-set > a p { display: none; }

/* Consultant Profile */

.consultant-profile h2 { margin-bottom: .125em; }

.consultant-profile h3.school {
  margin: 0;
  color: #999;
  }

.consultant-stats {
  column-count: 2;
  column-gap: 4em;
  column-fill: auto;
  }

  .consultant-stats .stat-group {
    display: block;
    break-inside: avoid;
    }

.consultant-words h4 {
  margin-bottom: 1em;
  font-size: 2em;
  }

.consultant-words p:last-child { margin: 0; }

.consultant-testimonials .flex {
  flex-wrap: nowrap;
  align-items: flex-start;
  }

  .consultant-testimonials .flex blockquote { width: 50%; }

.consultant-testimonials h3,
.consultant-video h3 {
  text-align: center;
  }

/* Resources */

.section-wrapper.resources-list {
  margin-top: 4em;
  padding-top: var(--global-padding);
  }

.resource-featured {
  overflow: auto;
  background: rgba(var(--gatehouse-blue-rgb),.15);
  margin-bottom: 1px;
  border-left: 1px solid white;
  border-right: 8px solid var(--gatehouse-orange);
  }

.resources-set {}

  .resource-item {
    width: 33.33%;
    background: rgba(0,0,0,.05);
    border: 1px solid white;
    }

    .resource-item p img {
      aspect-ratio: 4 / 3;
    }

    .resource-item h2 { font-size: 2.2em; }

  .resource-featured .button,
  .resource-item .button {
    font-size: 1em;
    }

.footer-nav { justify-content: space-between; }

  .footer-nav-prev {}

    .footer-nav-prev i { margin-right: .5em; }

  .footer-nav-next { text-align: right; }

    .footer-nav-next i { margin-left: .5em; }

.pagination {
  width: 100%;
  margin: 0;
  padding: 0;

  .pagination-list {
    display: flex;
    justify-content: center;
    }

  .pagination-item {
    margin: 0 1em 0 0;
    padding: 0;
    list-style: none;

    &.is-current {
      color: #999;
      font-weight: 700;
      }
    }

  .pagination-item:last-of-type {
    margin-right: 0;
    }
  }

.searchform p {
  display: flex;
  margin: none;
  }

.searchform p button {
  font-size: 1em;
  white-space: nowrap;
  }

.searchform p button i {
  margin: 0;
  color: white;
  opacity: 1;
  }

.tag-list {
  display: flex;
  flex-wrap: wrap;
  }

.tag-list a {
  background: var(--gatehouse-blue);
  display: inline-block;
  margin: 1px;
  padding: .25em .75em;
  color: #fff;
  font-weight: normal;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  }

  .tag-list a:hover { background: var(--gatehouse-orange); }

.post img {
  border: 1px solid #eee;
  box-shadow: var(--global-box-shadow) !important;
  }

.post img.alignright,
.post img.alignleft {
  max-width: 50%;
  height: auto;
  }

/* -------------------------------------------------------------

  Animations

------------------------------------------------------------- */

a, input, button, .button, header, i { /* general animation */
	transition: all .1s ease-out;
	}

/* -------------------------------------------------------------

  Media Queries

------------------------------------------------------------- */

/* -------------------------------------------------------------
  media-query-320-1023 (Settings for Responsive Menu)
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 1023px) {

a.open { display: block; }

/* Responsive Menu Overlay */

.overlay {
  background-color: rgba(67,79,134,1);
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: -100%;
  z-index: 1000000000;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  transition: 0.3s;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  }

.overlay-wrapper {
  width: 100%;
  height: 100%;
  }

nav ul {
  width: 100%;
  height: 100% !important;
  position: relative;
  margin: 0;
  padding: 0;
  font-size: 2.2em;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  }

  nav li {
    list-style: none;
    margin: 0 0 1px 0;
    padding: 0;
    }

    nav ul li a {
      color: #fff;
      display: block;
      padding: 1em;
      border-left: 8px solid var(--gatehouse-orange);
      }

      nav .current a,
      nav a:hover,
      nav a:focus {
        color: rgba(255,255,255,.35) !important;
        }

      nav li.highlight a {
        background: none;
        padding: 1em;
        }

    a.close-btn {
      display: block;
      position: absolute;
      top: .75em;
      right: 0.25em;
      color: rgba(255,255,255,.35);
      font-size: 32px;
      }

      a.close-btn:hover { color: #fff !important; }

header { height: auto; }

.header-logo img { max-width: 9rem; }

.consultant-testimonials .flex { flex-wrap: wrap; }

.consultant-testimonials .flex blockquote {
  width: 100%;
  margin-bottom: 1.6em;
  }

.resource-featured {
  border-right: 1px solid white;
  border-bottom: 8px solid var(--gatehouse-orange);
  }

  .resource-featured div { width: 100%; }

.resource-featured-image { padding-bottom: 0; }

.resource-featured-desc { padding-left: var(--global-padding-double); }

.resources-post-single,
.resources-post-category {
  width: 100% !important;
  }

.hero-text { width: 100%; }

.feature-set { flex-direction: column; }

  .feature-set .col-1-3 {
    width: 100%;
    max-width: 100%;
    }

.consultant-stats { column-count: 1; }

} /* End of 320px-1023px Media Query */

/* -------------------------------------------------------------
  media-query-320-767
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 767px) {

footer { margin-top: 2em; }

.section-wrapper { padding-top: 4em; }

.home-story-gatehouse-2 div:first-child { order: -1 !important; }

.resource-item { width: 100%; }

.home-feature h1 { font-size: 4em; }

.consultant-profile-page .team-set { flex-wrap: wrap; }

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-1-4,
.col-1-3,
.col-1-2,
.col-2-3,
.col-3-4,
.col-full,
.col-half {
	width: 100%;
  float: none;
  }

} /* End of 320px-767px Media Query */

/* -------------------------------------------------------------
  media-query-320-479
------------------------------------------------------------- */

@media only screen and (min-width: 319px) and (max-width: 479px) {

:root {
  --global-padding: 1.5em;
  --global-padding-double: 3em;
  --global-padding-half: .75em;
  }

.lightbox-set { flex-direction: column; }

  .lightbox-set > a { width: 100%; }

.service-wrapper { flex-direction: column !important; }

  .service-card { width: 100%; }

footer .social p { text-align: left !important; }

.team-set > a { width: 100%; }

.resource-featured div,
.resource-item {
  padding: var(--global-padding);
  }

.footer-nav { flex-direction: column; }

.footer-nav-prev {
  padding-bottom: 0;
  text-align: center;
  }

.footer-nav-next {
  padding-top: 0;
  text-align: center;
  }

.consultant-profile-page .team-set > a { width: 33.33%; }

	} /* End of 320px-479px Media Query */

/* -------------------------------------------------------------
  media-query-320-639
------------------------------------------------------------- */

@media only screen and (min-width: 320px) and (max-width: 639px) {

.title-wrapper .plc { height: 20em; }

.title-wrapper h1 { font-size: 4em; }

.home-feature h1 {
  margin-top: 50px;
  font-size: 4em;
  }

.image-align-left,
.post img.alignleft,
.image-align-right,
.post img.alignright {
  float: none !important;
  width: 100%;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  }

footer .col-6 { width: 100%; }

.gatehouse-way-item { max-width: 100%; }

} /* End of 320px-639px Media Query */

/* -------------------------------------------------------------
  media-query-480-639
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 639px) {

.team-set > a { width: 50%; }

.consultant-profile-page .team-set > a { width: 25%; }

} /* End of 480px-639px Media Query */

/* -------------------------------------------------------------
  media-query-480-767
------------------------------------------------------------- */

@media only screen and (min-width: 480px) and (max-width: 767px) {

.lightbox-set { flex-direction: row; }

  .lightbox-set > a { width: calc(50% - 1em); }

.gatehouse-way-item { max-width: 100%; }

	} /* End of 480px-767px Media Query */

/* -------------------------------------------------------------
media-query-640-767
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 767px) {

.title-wrapper .plc { height: 25em; }

.team-set > a { width: 33.33%; }

} /* End of 640px-767px Media Query */

/* -------------------------------------------------------------
  media-query-640-1023
------------------------------------------------------------- */

@media only screen and (min-width: 640px) and (max-width: 1023px) {

} /* End of 640px-1023px Media Query */

/* -------------------------------------------------------------
  media-query-768-1023
------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 1023px) {

.title-wrapper .plc { height: 25em; }

.gatehouse-way-item { max-width: 50%; }

.team-set > a { width: 25%; }

.who-we-are-text,
.who-we-are-people,
.what-we-do-items,
.what-we-do-text {
  width: 100%;
  }

.who-we-are-spacer { display: none; }
.what-we-do-spacer { display: none; }

  .lightbox-set > a { width: calc(50% - 1em); }

	} /* End of 768px-1023px Media Query */

/* -------------------------------------------------------------
media-query-768-1199
------------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 1199px) {

.resource-item { width: 50%; }

  } /* End of 768px-1199px Media Query */

/* -------------------------------------------------------------
  media-query-1024-beyond
------------------------------------------------------------- */

@media only screen and (min-width: 1024px) and (max-width: 1199px) {

	} /* End of 1024px-1199px Media Query */