/* -------------------------
BASE CSS
(MOSTLY taken from old site)
------------------------- */



* {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.5;
}

.hide {
  display: none !important;
}

@media screen and (min-width: 541px) {
  html {
    font-size: 3vw;
  }
}
@media screen and (min-width: 641px) {
  html {
    font-size: 2.5vw;
  }
}
@media screen and (min-width: 801px) {
  html {
    font-size: 2vw;
  }
}
@media screen and (min-width: 1025px) {
  html {
    font-size: 1.3vw;
  }
}
body {
	max-width: 3000px;
}
h1, h2, h3, h4, h5, h6 {
  margin: 2rem 0 0.5rem 0;
}

h1 {
  color: #1e1e1e;
  font-family: "lato", "Lato", sans-serif;
  font-size: 3.33rem;
  font-weight: 300;
  line-height: 1.32;
}
h1.light {
  color: white;
}
h2 {
  color: #666666;
  font-family: "lato", "Lato", sans-serif;
  font-size: 2.66rem;
  font-weight: 300;
  line-height: 1.25;
}
h2.purple {
  color: #320066;
  font-weight: 700;
}
h2.purple a {
  color: #320066;
  font-weight: 700;
}
h2.purple a:hover {
  color: #9689bf;
}
h2 a {
  color: #1e1e1e;
  font-family: "lato", "Lato", sans-serif;
  font-size: 2.66rem;
  font-weight: 300;
  line-height: 1.25;
}
h2 a:hover {
  color: #9689bf;
}

h3 {
  color: #666666;
  font-family: "lato", "Lato", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.33;
}

h4,
h4.purple {
  color: #320066;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.33rem;
  font-weight: 700;
  line-height: 1.25;
}

h4.black {
  color: #320066;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.33rem;
  font-weight: 700;
  line-height: 1.25;
}

h5 {
  color: #320066;
  font-family: "lato", "Lato", sans-serif;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.33;
}

h5.highlight {
  text-align: center;
}

h5.light {
  color: white;
}
h5.grey {
  color: #919191;
}
h5.alt {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.6rem;
  font-weight: 300;
}

h6 {
  color: #320066;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.33rem;
  font-weight: 300;
  line-height: 1.25;
}
h6.sans {
  font-family: "lato", "Lato", sans-serif;
}
h6.light {
  color: white;
}

p,
p.black {
  color: #1e1e1e;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.66;
  margin: 1rem 0;
}
p a,
p.black a {
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1em;
}

p.grey {
  color: #919191;
}

p.purple {
  color: #320066;
}

strong {
  font-weight: 700;
}

em {
  text-style: italic;
}

span {
  font-family: "utopia-std", "Utopia", serif;
}

a,
a.one,
a.one.dark {
  color: #320066;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1.33rem;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none;
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
}
a:hover,
a.one:hover,
a.one.dark:hover {
  color: #9689bf;
}

a.one.light {
  color: white;
}

a.two {
  color: #320066;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.33;
  text-decoration: none;
}
a.two:hover {
  color: #320066;
}

a.three {
  color: #320066;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.33;
  text-decoration: none;
}
a.three:hover {
  color: #9689bf;
}

a.four {
  color: #e6e6e6;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.33;
  text-decoration: none;
}
a.four:hover {
  color: #320066;
}



hr,
hr.grey {
  border: none;
  border-top: 1px solid #e6e6e6;
  margin: 2rem 0;
  width: 100%;
}

hr.purple {
  border-top: 1px solid #320066;
}

img {
  max-width: 100%;
}

img.alignleft {
  float: left;
  padding: 0 1rem 1rem 0;
}

img.alignright {
  float: right;
  padding: 0 0 1rem 1rem;
}



.button,
.button:focus,
.button:active,
.button:link,
.button:visited,
.button.light,
.button.light:focus,
.button.light:active,
.button.light:link,
.button.light:visited,
.button-cta,
.button-cat:focus,
.button-cta:active,
.button-cta:link,
.button-cta:visited {
  background: #9689bf;
  border-radius: 10px;
  color: white;
  display: inline-block;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.22rem;
  font-weight: 500;
  line-height: 1.2;
  padding: 1rem 2rem 1.1rem 2rem;
  text-transform: lowercase;
  -webkit-transition: background .3s ease;
  transition: background .3s ease;
}

.button-cta,
.button-cat:focus,
.button-cta:active,
.button-cta:link,
.button-cta:visited {
  text-transform: none;
}

.button:hover,
.button:focus:hover,
.button:active:hover,
.button:link:hover,
.button:visited:hover,
.button.light:hover,
.button.light:focus:hover,
.button.light:active:hover,
.button.light:link:hover,
.button.light:visited:hover,
.button-cta:hover,
.button-cat:focus:hover,
.button-cta:active:hover,
.button-cta:link:hover,
.button-cta:visited:hover {
  background: #71588c;
}

.button.dark,
.button.dark:focus,
.button.dark:active,
.button.dark:link,
.button.dark:visited {
  background: #320066;
  border-radius: 10px;
  color: white;
  display: inline-block;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.33rem;
  font-weight: 500;
  line-height: 1.2;
  padding: 1rem 2rem 1.1rem 2rem;
  text-transform: lowercase;
}
.button.dark:hover,
.button.dark:focus:hover,
.button.dark:active:hover,
.button.dark:link:hover,
.button.dark:visited:hover {
  background: #9689bf;
}

.button.payments-button, .button.dark.payments-button, .button.payments-submit {
  margin-top: 1rem;
  text-transform: capitalize;
}

::-webkit-placeholder {
  color: white;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none;
}

input {
  background: none;
  border: none;
  box-shadow: none;
}


.dropdown {
  padding: 1rem 2rem;
  position: relative;
  z-index: 50;
}



@media screen and (min-width: 801px) {
  .dropdown .container {
    max-width: 50rem;
  }
}

.dropdown select {
    display: inline-block;
    position: relative;
    line-height: 1;
    width: 100%;
    padding: 1rem 2rem;
    border: 1px solid #b2b2b2 !important;
    box-shadow: none !important;
    background: #fff;
    font-family: "lato", "Lato", sans-serif;
    font-weight: 300;
    line-height: 1.5;
    text-align: left;
    outline: 0;
    outline-offset: -2px;
    cursor: default;
    z-index: 50;
}

.split select {
  width: 49%;
}


.dropdown select.focus {
    box-shadow: 0 0 5px rgba(0,0,0,.2);
}

.dropdown select:hover, select.open, select.focus {
    border-color: #000;
}

.dropdown select:after {
    color: #9689bf;
    content: '\f0d7';
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: 1rem;
    top: 1.3rem;
    right: 2rem;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.dropdown select option {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 15px;
    font-size: 1rem;

}

.dropdown select option:hover {
  background: #eee;
}





.container ul {
  list-style: none;
  margin-left: 1rem;
  padding: 0;
}
@media screen and (min-width: 801px) {
  .container ul {
    padding: 0 0 0 1rem;
  }
}
.container ul li {
  color: #1e1e1e;
  font-family: "utopia-std", "Utopia", serif;
  list-style-position: inside;
  margin: .5rem 0;
  text-indent: -1rem;
}
.container ul li:before {
  background: #9689bf;
  border-radius: 100%;
  content: '';
  display: inline-block;
  height: 8px;
  margin: 0 .5rem 0 0;
  width: 8px;
}
.container ul li a {
  font-size: 1rem;
}
.container ul li span {
  color: #1e1e1e;
}
.container ul li ul {
  margin: 0 0 0 1rem;
}

ol {
  color: #1e1e1e;
  font-family: "utopia-std", "Utopia", serif;
  margin-left: 1rem;
  padding: 0;
}
@media screen and (min-width: 801px) {
  ol {
    padding: 0 0 0 1rem;
  }
}
ol li {
  color: #1e1e1e;
  font-family: "utopia-std", "Utopia", serif;
  list-style-position: inside;
  margin: .5rem 0;
  text-indent: -1rem;
}
ol li span {
  color: #1e1e1e;
}
ol li ul {
  margin: 0 0 0 1rem;
}
ol li a {
  font-size: inherit;
}

dl {
  margin: 0;
  padding: 0;
}
dl dt {
  display: none;
}
dl dd {
  margin: 0;
  padding: 0;
}


/* -------------------------
TOP BANNER
------------------------- */
.top-banner {
	display: inline-block;
	margin: 0 6%;
  width: 88%;
	height: auto;
	font-family: "lato", "Lato", sans-serif;
}

@media screen and (max-width: 1000px) {
  .top-banner {
    text-align: center;
    vertical-align: top;
  }
}

@media screen and (min-width: 1000px) {
  .top-banner {
    /*display: grid;
    display: -ms-grid;
    grid-template-columns: 1fr 1.5fr 1.2fr;
    -ms-grid-columns: 1fr 1.5fr 1.2fr;*/
    display
    margin: 0 6.25%;
    height: 120px;
  }

  .banner-section {
    display: inline-block;
    vertical-align: top;
    width: 33.3%;
  }

  .top-middle {
    margin-top: 0;
    margin-left: 1rem;
    text-align: right;
    width: 39%;
  }
}

@media screen and (min-width: 1000px) {
  .top-middle {
    margin-top: 1rem;
    width: 38%;
  }
}

@media screen and (min-width: 1026px) {
  .top-middle {
    width: 40%;
  }
}

@media screen and (min-width: 1080px) {
  .top-middle {
    width: 35%;
  }
}



@media screen and (min-width: 1260px) {
  .top-middle {
    width: 40%;
  }
}

@media screen and (min-width: 1000px) {
  .logo {
    width: 25%;
    margin-right: 1em;
  }
}

@media screen and (min-width: 1080px) {
  .logo {
    width: 30%;
    margin-right: 1em;
  }
}

@media screen and (max-width: 1000px) {
  .logo {
    margin: 0 auto;
  }
}



.top-nav {
  color: #b6b6b6;
}

.top-nav a {
  font-family: "lato", "Lato", sans-serif;
  font-size: 14px;
  font-weight: normal;
  color: #b6b6b6;
}

.top-nav a:hover {
  color: #320066;
}

.top-search {
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin-top: 6px;
}

@media screen and (max-width: 650px) {
  .top-search {
    display: none;
  }
}

.top-search form {
  display: inline-block;
  width: 45%;
}

@media screen and (min-width: 1000px) {
  .top-search form {
    width: 100%;
  }
}

.top-search input {
  background: white;
  border: 1px solid #e4e4e4 !important;
  border-radius: 8px;
  box-shadow: 2px 2px 7px #f2f2f2 inset;
  box-sizing: border-box;
  font-family: "lato","Lato",sans-serif;
  font-size: 14px;
  color: #b6b6b6;
  line-height: 1;
  padding: .7em;
  width: 100%;
}

.top-search input:hover {
  background: #fff;
}

.top-search input::placeholder {
  color: #b6b6b6;
}

.top-search input:-ms-input-placeholder {
  color: #b6b6b6;
}

.top-search input::-ms-input-placeholder {
  color: #b6b6b6;
}

/* remove "x" icon from Chrome and IE */
input[type=text]::-ms-clear {  display: none; width : 0; height: 0; }
input[type=text]::-ms-reveal {  display: none; width : 0; height: 0; }
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }

.top-search button {
  background: none;
  border: none;
}

.top-search form button {
  font-size: 1em;
  position: absolute;
  top: 50%;
  transform: translateY(-40%);
  left: 29rem;
}

@media screen and (min-width: 1000px) {
  .top-search form button {
    right: .5rem;
    left: initial;
  }
}

@media screen and (max-width: 800px) {
  .top-search form button {
    left: 23rem;
  }
}







/* -------------------------
TOP ACTION BUTTONS
------------------------- */
.top-actions {
  margin: 20px auto;
  text-align: center;
  display: none;
}

@media screen and (min-width: 800px) {
  .top-actions {
    display: block;
  }
}

@media screen and (min-width: 1000px) {
  .top-actions {
    width: 31%;
    margin: 20px 0 0 0;
    text-align: right;
    float: right;
  }
}

@media screen and (min-width: 1100px) {
  .top-actions {
    width: 29%;
  }
}

@media screen and (min-width: 1229px) {
  .top-actions {
    width: 25%;
  }
}

.top-actions a {
	display: inline-block;
	height: 54px;
	background: #320066;
	color: #fff;
	padding: 18px 8px 5px;
	font-family: "lato", "Lato", sans-serif;
	font-size: 12px;
	border-radius: 10px;
}

@media screen and (min-width: 1000px) {
  .top-actions a {
    height: 58px;
    padding: 18px 10px 5px;
    font-size: 15px;
  }
}

.top-actions a:hover {
	background: #9689bf;
	color: #fff;
}


/* -------------------------
MOBILE NAVIGATION
------------------------- */
.menu-icon {
  display: block;
  margin: 1em 0;
  text-align: center;
  line-height: 1;
}

.fa-bars  {
  display: block;
  margin: 0 auto;
  width: 46px;
  height: 46px;
  color: #320066;
  font-size: 35px;
}

.fa-window-close {
  display: inline;
  color: #fff;
  font-size: 35px;
}

/* Online Payment Button on Mobile */

.menu-mobile-only {
  display: none !important;
}

@media screen and (max-width: 800px) {
  .fa.mobile-only {
    display: inline-block;
  }

  .menu-mobile-only {
    display: list-item !important;
  }

}

.mobile-only.fa-window-close {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

.menu-icon span.menu-text {
  display: block;
  margin-top: -1rem;
  font-family: "lato", "Lato", sans-serif;
}


.main-nav, .sub-menu {
  position: relative;
  top: 0;
  right: -100vw;
  height: 0;
  transition: all 300ms ease;
}

@media screen and (max-width: 800px) {
  .main-nav .sf-navbar a {
    font-size: 1.5rem;
  }

  .sf-menu li {
    padding: 0.4rem 0;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
   .main-nav, .sub-menu {
      right: auto;
   }
}


.main-nav {
  z-index: 100;
}

@media screen and (max-width: 800px) {
  .main-nav {
    overflow: hidden;
  }
}

.sub-menu {
  z-index: 120;
}

.mobile-slider {
  position: absolute;
  right: 0;
  min-height: 100vh;
  height: auto;
  width: 100%;
  background-color: #320066;
}

.mobile-slider-sub-menu {
  right: 0;
  height: auto;
  width: 100%;
}



/* -------------------------
MAIN NAVIGATION
------------------------- */


@media screen and (min-width: 800px) {
  .menu-icon, li.mobile-nav-close, .mobile-only {
    display: none;
  }

  .main-nav, .sub-menu {
    position: static;
    height: auto;
    right: initial;
    transition: none;
  }

  .main-menu {
    display: block;
    width: 100%;
  }

  .sub-menu {

  }
}

.sf-navbar {
	background: #320066;
}

.sf-navbar a {
	font-family: "lato", "Lato", sans-serif;
	font-size: .875rem;
}


/* -------------------------
COVID BANNER
------------------------- */
.covid {
  padding: 20px 0;
  background-color: #9c84b8;
  text-align: center;
  font-size: 1.3rem;
}

.covid .fa-exclamation-circle {
  display: inline;
  color: #330067;
}

.covid-title {
  display: inline-block;
  color: #330067;
}

.covid-text {
  display: block;
  padding: 0 2rem;
  color: #fff;
  font-size: 1.3rem;
}

.covid a {
  font-size: 1.3rem;
}

.covid a:hover {
  color: #330067;
  text-decoration: underline;
}

@media screen and (min-width: 1100px) {

  .covid .fa-exclamation-circle {
   display: inline;
  }

  .covid-title {
    display: inline;
  }

  .covid-text {
    display: inline;
    padding: 0;
  }
}

@media screen and (min-width: 1400px) {
  .covid, .covid-text, .covid a {
    font-size: 24px;
  }
}

/* -------------------------
PAGE HEADER
------------------------- */
.page-header {
  background: #320066;
  overflow: hidden;
  position: relative;
  text-align: center;
  margin-top: .5em;
}
@media screen and (min-width: 801px) {
  .page-header {
    padding: 3rem;
  }
}
.page-header .go-home {
  display: block;
  margin: 1rem auto;
  position: relative;
  width: 40%;
}
@media screen and (min-width: 768px) {
  .page-header .go-home {
    width: 25%;
  }
}
@media screen and (min-width: 1024px) {
  .page-header .go-home {
    margin: 0;
    position: absolute;
    top: 1rem;
    left: 1rem;
  }
}
@media screen and (min-width: 1100px) {
  .page-header .go-home {
    margin: 0;
    position: absolute;
    top: 1rem;
    left: 1.5rem;
    width: 15%;
  }
}
.page-header h1 {
  font-size: 3rem;
  margin: 1rem 0 2rem 0;
  text-align: center;
}
@media screen and (min-width: 701px) {
  .page-header h1 {
    font-size: 3.33rem;
  }
}
.page-header > img {
  z-index: -1;
  opacity: .2;
  position: absolute;
  right: 0;
  -webkit-transform: translate(25%, -15%);
  transform: translate(25%, -15%);
}
.page-header .back-services {
  color: white;
  display: block;
  font-family: "lato", "Lato", sans-serif;
  font-size: .8rem;
  margin: 2rem 0 0 0;
  text-align: center;
}
.page-header.alt {
  padding: 1rem;
}
.page-header.alt img {
  top: 0;
  left: 0;
  right: auto;
  -webkit-transform: translate(-25%, -15%);
  transform: translate(-25%, -15%);
}


/* -------------------------
PAGE FLOURISH
------------------------- */
.page-flourish {
  padding: 0;
  position: relative;
  z-index: 0;
  overflow: visible;
}

.page-flourish img {
  opacity: .2;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-10%, -40%);
  transform: translate(-10%, -40%);
  width: 45vw;
}

@media screen and (min-width: 701px) {
  .page-flourish img {
    top: -4rem;
    -webkit-transform: translate(-10%, -25%);
    transform: translate(-10%, -25%);
  }
}

.page-flourish .bottom img {
  -webkit-transform: translate(40%, -50%);
  transform: translate(40%, -50%);
  width: 60vw;
}

@media screen and (min-width: 701px) {
  .page-flourish.bottom img {
    -webkit-transform: translate(110%, -50%);
    transform: translate(110%, -50%);
    width: 30vw;
  }
}

/* -------------------------
PHOTO BANNER
(about and careers pages)
------------------------- */
.photo-banner {
  background-position: bottom;
  background-size: cover;
  padding-bottom: 0;
  position: relative;
}
.photo-banner:after {
  background: #9689bf;
  content: ' ';
  display: block;
  height: 100%;
  opacity: .3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 5;
}
.photo-banner .wrapper {
  background: white;
  margin: 5rem 0;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 801px) {
  .photo-banner .wrapper {
    margin: 5rem 0;
    position: relative;
    left: -7.5%;
    width: 115%;
  }
}
.photo-banner .wrapper h5 {
  padding: 2rem 2rem 0 2rem;
  text-align: center;
}
@media screen and (min-width: 801px) {
  .photo-banner .wrapper h5 {
    padding: 3rem 0;
  }
}


/* -------------------------
EMBED VIDEO on ABOUT PAGE
------------------------- */
.embed-video {
  text-align: center;
}

.embed-video iframe {

  max-width: 100%;
}




/* -------------------------
CONTENT
------------------------- */
section {
  background-position: center;
  background-size: cover;
  max-width: 100%;
  padding: 2rem;
  position: relative;
  width: 100vw;
  z-index: 5;
  overflow: hidden;
}
@media print {
  section {
    width: 100%;
  }
}
@media screen and (min-width: 801px) {
  section {
    max-width: 100%;
    padding: 1rem;
    width: 100%;
  }
}

.container {
  display: block;
  margin: 0 auto;
  max-width: 40rem;
}

.content a {
  font-size: 1em;
}

@media screen and (min-width: 801px) {
  .content {
    padding: 1rem 1rem 2rem 1rem;
  }

  .content a {
    font-size: 1.33vw;
  }
}
.content .container {
  position: relative;
}
.content .table-wrapper {
  overflow-x: auto;
  width: 100%;
}
.content .container img {
  display: block;
  margin: 2rem 0;
}
@media screen and (min-width: 801px) {
  .content .container img {
    position: relative;
  }
}
.content .container .alignleft,
.content .container .aligncenter,
.content .container .alignright {
  display: inline-block !important;
  height: auto !important;
  margin: 2rem;
  width: auto;
}
.content .container .alignleft img,
.content .container .aligncenter img,
.content .container .alignright img {
  margin: 0 !important;
}
.content .container .alignleft {
  float: left !important;
  margin: 2rem 2rem 2rem 0;
}
.content .container .aligncenter {
  display: block !important;
  float: none !important;
  margin: 2rem auto;
}
@media screen and (min-width: 801px) {
  .content .container .aligncenter {
    left: auto;
  }
}
.content .container .alignright {
  float: right !important;
  margin: 2rem 0 2rem 2rem;
}
@media screen and (min-width: 801px) {
  .content .container .alignright {
    left: 7.5%;
  }
}
.content .container p + ul {
  margin: 0 0 2rem 1rem;
}
.content .container ul {
  color: #1e1e1e;
  list-style: none;
  margin: 2rem 0 2rem 1rem;
}
.content .container ul ul {
  margin: 0 0 0 1rem;
}
.content .container ul li {
  color: #1e1e1e;
  margin: .5rem 0;
}
.content .container ul li:before {
  background: #9689bf;
  border-radius: .5rem;
  content: '';
  display: inline-block;
  height: 10px;
  margin: 0 .5rem 0 0;
  width: 10px;
}
.content .whitepaper {
  border-top: 1px solid #919191;
  border-bottom: 1px solid #919191;
  display: none;
  padding-top: 2rem;
  padding-right: 4rem;
  padding-bottom: 2rem;
  padding-left: 4rem;
  position: relative;
  margin: 2rem 0;
  width: 100%;
}
@media screen and (min-width: 801px) {
  .content .whitepaper {
    display: block;
  }
}
.content .whitepaper:hover h6 {
  color: #919191;
}
.content .whitepaper h6 {
  display: inline-block;
  margin: 0;
  position: absolute;
  top: 50%;
  left: 4rem;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 50%;
}
.content .whitepaper img {
  float: right;
  margin: 0 !important;
  width: 25% !important;
}
.content .gallery .gallery-item {
  margin-top: 0 !important;
  width: 33.33% !important;
}
@media screen and (max-width: 800px) {
  .content .gallery .gallery-item {
    width: 50% !important;
  }
}
.content .gallery .gallery-item img {
  border: none !important;
  margin: 0;
}
@media screen and (min-width: 801px) {
  .content .gallery .gallery-item img {
    height: auto !important;
    min-width: 100% !important;
  }
}



section.twitter {
	display: grid;
	grid-template-columns: 14% 1fr;

}

.twitter-logo {
	padding-right: 3rem;
}

.twitter-logo img {
	border-radius: 1rem !important;
    box-shadow: 0 3px 3px rgba(30, 30, 30, 0.3);
    height: 6rem !important;
    width: 6rem !important;
}




/* -------------------------
ACCORDIAN
------------------------- */

/*taken from Bootstrap.css and used for Accordion functionality. Works with assets/js/bootstrap.js */
.collapse {
  	display: none;
}

.collapse.show {
  	display: block;
}

.collapsing {
	position: relative;
	height: 0;
	overflow: hidden;
	-webkit-transition-timing-function: ease;
	   -o-transition-timing-function: ease;
	      transition-timing-function: ease;
	-webkit-transition-duration: .35s;
	   -o-transition-duration: .35s;
	      transition-duration: .35s;
	-webkit-transition-property: height, visibility;
	   -o-transition-property: height, visibility;
	      transition-property: height, visibility;
}

.show {
  	display: block !important;
}

.accordian {
  	margin: 2rem 0;
}
@media screen and (min-width: 701px) {
  .accordian {
    	margin: 3rem 0 5rem 0;
  }
}
.accordian dd {
  	display: block;
  	margin: .5rem 0;
  	font-family: "lato", "Lato", sans-serif;
}

.accordian dd > a {
  	background: #9689bf;
  	display: block;
 	padding: 1rem 4rem 1rem 2rem;
  	position: relative;
}

.accordian dd > a:hover {
  	background: #320066;
}

.accordian dd > a i {
  float: right;
  position: absolute;
  top: 1.1rem;
  right: 1rem;
}

.accordian dd.active > a {
  background: #320066;
}
.accordian dd.active > a i:before {
  content: '\f00d';
}


.accordian dd > a.anchor {
	display: inline;
	margin: 0;
	padding: 0;
	height: 0;
}

.accordian dd > div {
  background: white;
}

.accordian dd > div .info {
  padding: 1rem 2rem 2rem 2rem;
}
.accordian dd > div .info h6 {
  margin: 1rem 0;
  padding: 0;
}
.accordian dd > div .info p {
  margin: 1rem 0;
  padding: 0;
}
.accordian dd > div .info a {
  background: none !important;
}
.accordian dd > div .info ul li p {
  margin: 1rem 0;
}
.accordian dd > div .info ul li a {
  font-size: 1rem;
}
.accordian dd > div > h6 {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  margin: 0;
  padding: 2rem 2rem .5rem 2rem;
}

.accordian dd > div > p {
  margin: 0;
  padding: 2rem;
}

.accordian dd > div > a {
  background: none !important;
  border-bottom: 1px solid #dadada;
  color: #999999;
  display: block;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1rem;
  margin: .5rem 2rem .5rem 2rem;
  padding: 0 0 .5rem 0;

}
.accordian dd > div > a:hover {
  color: #9689bf;
}
.accordian dd > div > ul {
  margin: 0;
  padding: 1rem 1rem 1rem 3rem;
}

.accordian dd > div > ul > li {
	margin: 0;
	margin-bottom: 1em;
}
.accordian dd > div .padding {
  height: 2rem;
  width: 100%;
}
.resource-content {
  padding: 2rem;
}


.accordian.clean dd a {
  background: none;
  color: #320066;
}
.accordian.clean dd a:hover {
  background: none;
  color: #919191;
}
.accordian.clean dd a i {
  color: #919191;
}
.accordian.clean dd  {
  background: none;
  border-bottom: 1px solid #e6e6e6;
}


@media screen and (min-width: 701px) {
  .accordian.clean {
    margin: 5rem 0 2rem 0;
  }
}


@media print {
  .accordian dd > div {
    max-height: 4000px !important;
  }

  .accordian dd > div > h6 {
    opacity: 1 !important;
  }

  .accordian dd > div > p {
    opacity: 1 !important;
  }

  .accordian dd > div > a {
    opacity: 1 !important;
  }

  .accordian dd > div > ul {
    opacity: 1 !important;
  }

}

/*old accordian styling*/


}
/*.accordian dd.active > div {
  max-height: 4000px;
  -webkit-transition: max-height .3s ease;
  transition: max-height .3s ease;
}
.accordian dd.active > div > h6 {
  opacity: 1;
  -webkit-transition: opacity .3s ease .3s;
  transition: opacity .3s ease .3s;
}
.accordian dd.active > div > p {
  opacity: 1;
  -webkit-transition: opacity .3s ease .3s;
  transition: opacity .3s ease .3s;
}
.accordian dd.active > div > a {
  opacity: 1;
  -webkit-transition: opacity .3s ease .3s;
  transition: opacity .3s ease .3s;
}
.accordian dd.active > div > ul {
  opacity: 1;
  -webkit-transition: opacity .3s ease .3s;
  transition: opacity .3s ease .3s;
}
.accordian dd.active > div *:first-child {
  margin-top: 0;
}
.accordian dd.active > div *:last-child {
  margin-bottom: 0;
}

*/



/* -------------------------
SUB SERVICES (single-bc_service)
------------------------- */

.subservices {
  background-position: top;
  background-size: cover;
  overflow: hidden;
  position: relative;
}
.subservices h2 {
  position: relative;
  text-align: center;
}
.subservices > img {
  position: absolute;
  right: 0;
  -webkit-transform: translate(30%, -50%);
          transform: translate(30%, -50%);
}
@media screen and (min-width: 701px) {
  .subservices > img {
    width: 50vw;
  }
}





/* -------------------------
LAWYER GRID
------------------------- */
.lawyer-list {
  font-size: 0;
}
@media screen and (min-width: 375px) {
  .lawyer-list {
    text-align: center;
  }
}
.lawyer-list h2 {
  text-align: center;
}
.lawyer-list > dl {
  display: block;
  margin: 0 auto;
  /*max-width: 45rem;*/
}

@media screen and (min-width: 801px) {
  .lawyer-list .page-template-page-search_results .lawyer-profile {
    width: 33%;
  }
}
.lawyer-list .lawyer-profile {
  margin: 2rem 0 0 0;
  text-align: center;
  display: block;
  width: 100%
}


@media screen and (min-width: 500px) {
  .lawyer-list .lawyer-profile {
    display: inline-block;
    width: 45%;
    vertical-align: top;
  }
}

@media screen and (min-width: 701px) {
  .lawyer-list .lawyer-profile {
    padding: 0 2rem;
    width: 45%;
  }
}
@media screen and (min-width: 801px) {
  .lawyer-list .lawyer-profile {
    width: 30%;
  }
}

@media screen and (min-width: 1100px) {
  .lawyer-list .lawyer-profile {
    width: 30%;
  }
}


.lawyer-list .lawyer-profile.nolaw > a h6:hover {
  color: #320066;
}
.lawyer-list .lawyer-profile.nolaw > a img {
  border-radius: 100%;
}
.lawyer-list .lawyer-profile > a h6 {
  color: #320066;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
  margin: 1rem 0 .2rem 0;
  text-decoration: none;
}
.lawyer-list .lawyer-profile > a h6:hover {
  color: #9689bf;
}
.lawyer-list .lawyer-profile > p {
  margin: 1rem 0 2rem 0;
}
.lawyer-list .lawyer-profile .lawyer-headshot {
  background-position: center;
  background-size: cover;
  border-radius: 1000rem;
  display: block;
  height: 35vw;
  margin: 0 auto;
  width: 35vw;
}
@media screen and (min-width: 701px) {
  .lawyer-list .lawyer-profile .lawyer-headshot {
    height: 20vw;
    width: 20vw;
  }
}
@media screen and (min-width: 801px) {
  .lawyer-list .lawyer-profile .lawyer-headshot {
    height: 15vw;
    width: 15vw;
  }
}
.lawyer-list .lawyer-profile .connect {
  color: #1e1e1e;
  display: block;
  font-family: "azo-sans-web", "Azo Sans", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  margin: 0 0 .5rem 0;
}
@media screen and (min-width: 801px) {
  .lawyer-list .lawyer-profile .connect {
    font-size: .8rem;
  }
}
.lawyer-list .lawyer-profile .connect.email, .lawyer-list .lawyer-profile .connect.phone {
  font-weight: 500;
}
.lawyer-list .lawyer-profile .connect span {
  font-family: "azo-sans-web", "Azo Sans", sans-serif;
}
.lawyer-list .lawyer-profile.placeholder {
  margin: 0;
  padding: 0;
}
.lawyer-list .lawyer-profile:last-child {
  width: 100%;
}
@media screen and (min-width: 801px) {
  .lawyer-list .search-results .lawyer-results .lawyer-profile {
    width: 30% !important;
  }
}

.lawyer-list .lawyer-profile.push {
  margin-right: 1px !important;
}
.lawyer-list .lawyer-profile.placeholder {
  display: none !important;
}



/* -------------------------
FAQ
------------------------- */
.faq > h2,
.faq > h6 {
  text-align: center;
}
.faq > h2 {
  margin-bottom: 1rem;
}
.faq > h6 {
  color: #919191;
  margin: 0 0 2rem 0;
}


/* -------------------------
HUBSPOT CTA
------------------------- */
.hubspot-cta {
  display: none;
  background: #320066;
  margin: 0 0 2rem 0;
  overflow: hidden;
  padding: 3rem;
  position: relative;
}

@media screen and (min-width: 650px) {
  .hubspot-cta {
    display: block;
  }
}

.hubspot-cta > i {
  color: #9689bf;
  display: inline-block;
  margin: .5rem 0 0 0;
  font-size: 4rem;
  vertical-align: top;
}
.hubspot-cta h5 {
  color: white;
  display: inline-block;
  font-size: 1.8rem;
  margin: 0;
  padding: 0 0 0 2rem;
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
  vertical-align: top;
  width: 60%;
}
.hubspot-cta img {
  opacity: .14;
  position: absolute !important;
  right: 0;
  bottom: 0;
  -webkit-transform: translate(0, 50%);
          transform: translate(0, 50%);
  width: 35%;
}
.hubspot-cta span {
  color: white;
  font-size: 1rem;
  font-weight: 700;
  position: absolute;
  right: 3rem;
  bottom: 3rem;
}

.hubspot-cta span i {
  margin: 0 .5rem 0 0;
}


.hubspot-cta:hover h5 {
  color: #9689bf;
  -webkit-transition: color .3s ease;
  transition: color .3s ease;
}


/* -------------------------
SERVICE CTA
------------------------- */
.service-cta {
  background: #320066;
  overflow: hidden;
  position: relative;
  text-align: center;
}
.service-cta h5 {
  margin: 2rem 0;
  text-align: center;
}
.service-cta i {
  color: white;
  display: block;
  font-size: 1.6rem;
  margin: 2rem 0 0 0;
}
.service-cta img {
  opacity: .2;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transform: translate(-35%, 40%);
          transform: translate(-35%, 40%);
}
.service-cta .button {
  position: relative;
}

.service-cta__grid-wrapper {
  display: block;
}

@media screen and (min-width: 1025px) {
  .service-cta__consultation-wrapper {
    display: inline-block;
    margin: 0 -4px 0 0;
    padding: 0 2rem 1rem 2rem;
    width: 50%;
    vertical-align: top;
  }
}

@media screen and (min-width: 1025px) {
  .service-cta__contact-wrapper {
    display: inline-block;
    margin: 0 -4px 0 0;
    padding: 0 2rem 1rem 2rem;
    width: 50%;
    vertical-align: top;
  }
}

/* -------------------------
SERVICE RESOURCES
------------------------- */
.service-resources {
  background: #9689bf;
  overflow: hidden;
  position: relative;
  text-align: center;
}
@media screen and (min-width: 801px) {
  .service-resources {
    padding: 2rem 8rem;
  }
}
.service-resources .button {
  margin: 0 0 2rem 0;
}
.service-resources .button i {
  margin: 0 0 0 .5rem;
}



/* -------------------------
RELATED POSTS | NEWS
------------------------- */
@media screen and (min-width: 801px) {
  .news {
    padding: 0;
  }
}
.news > h2 {
  display: block;
  text-align: center;
}
@media screen and (min-width: 801px) {
  .news > h2 {
    margin: 2rem 0 3rem 0;
  }
}

.news-item .wrapper {
  background: #e6e6e6;
  padding: 1rem;
}

.news-item {
  margin-bottom: 1rem;
}

@media screen and (min-width: 801px) {
  .news-item {
    display: inline-block;
    margin: 0;
    padding: 0 0 3rem 1rem;
    width: 49%;
    vertical-align: top;
  }
}
.news-item h5,
.news-item > span {
      font-family: "lato","Lato",sans-serif;
      color: #919191;
}
.news-item h5 a,
.news-item > span a {
  color: #320066;
  font-size: 1em;
}
.news-item h5 a:hover,
.news-item > span a:hover {
  color: #999999;
}
.news-item span a {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1em;
}
.news-item .author {
  display: block;
}
.news-item .author img {
  height: 1rem;
  margin: 0 .5rem 0 0;
  -webkit-transform: translate(0, 0.1rem);
          transform: translate(0, 0.1rem);
  width: 1rem;
}
.news-item h5 a,
.news-item > a {
  font-family: "lato", "Lato", sans-serif;
  font-weight: 700;
}
.news-item > a {
  font-family: "lato", "Lato", sans-serif !important;
}
.news-item h5 {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1rem;
}
.news-item h4 a {
  color: #320066;
  font-family: "lato", "Lato", sans-serif;
  font-weight: 700;
  font-size: 1.25;
}
.news-item h4 a:hover {
  color: #999999;
}


/* -------------------------
LOAD MORE BUTTON
------------------------- */
.load-more {
  padding-top: 0;
  text-align: center;
  margin-bottom: 3rem;
}
.load-more .loader {
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: opacity .1s ease;
  transition: opacity .1s ease;
  width: 5rem;
  z-index: 5;
}
.load-more .loader.active {
  opacity: 1;
  -webkit-transition: opacity .1s ease;
  transition: opacity .1s ease;
}
.load-more .button {
  position: relative;
  z-index: 10;
}


/* -------------------------
SOCIAL BUTTONS
------------------------- */
.social-buttons {
  padding: 3rem 0 1rem;
}
.social-buttons dl {
  vertical-align: middle;
}
.social-buttons dl dt {
  display: inline-block;
  font-family: "lato", "Lato", sans-serif;
  font-weight: 800;
  margin: 0 .3rem 0 0;
  vertical-align: middle;
}
.social-buttons dl dd {
  display: inline-block;
  margin: 0 .3rem 0 0;
  vertical-align: middle;
}
.social-buttons dl dd a {
  background: #9689bf;
  border-radius: 100%;
  display: block;
  height: 2.5rem;
  position: relative;
  -webkit-transition: background .3s ease;
  transition: background .3s ease;
  width: 2.5rem;
}
.social-buttons dl dd a i {
  color: white;
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.social-buttons dl dd a:hover {
  background: #320066;
  -webkit-transition: background .3s ease;
  transition: background .3s ease;
}



/* -------------------------
CTA Box
------------------------- */
.cta-box {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  background: #320066;
  background-image: url(../img/icon_boyne_alt_faded.png);
  background-repeat: no-repeat;
  padding: 1rem;
  text-align: center;
}

.cta-box-left, .cta-box-right {
  display: block;
}

.cta-box-right {
  margin-top: 1rem;
}

h2.cta-box-header {
  color: #fff;
  margin: 0;
  font-size: 1.6rem;
}

a.cta-box-button {
  text-align: center;
}

@media screen and (min-width: 800px) {
  .cta-box {
    display: table;
    text-align: left;
  }

  .cta-box-left, .cta-box-right {
    display: table-cell;
    vertical-align: middle;
  }

  .cta-box-left {
    width: 61%
    margin-right: 5%;
  }

  .cta-box-right {
    width: 33%;
    margin: 0;
  }

  a.cta-box-button {
    float: right;
  }
}



/* -------------------------
ARTICLE FORM (ASK A QUESTION)
------------------------- */
.article-form {
  padding: 0;
}

.article-form__trigger {
  background: #320066;
  cursor: pointer;
  padding: 2rem 1rem;
  text-align: center;
  -webkit-transition: background .2s ease;
  transition: background .2s ease;
}
.article-form__trigger:hover {
  background: #71588c;
  -webkit-transition: background .2s ease;
  transition: background .2s ease;
}
.article-form__trigger.active .article-form__trigger-title i {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transition: -webkit-transform .2s ease;
  transition: -webkit-transform .2s ease;
  transition: transform .2s ease;
  transition: transform .2s ease, -webkit-transform .2s ease;
}

.article-form__trigger-title {
  color: white;
  margin: 0;
}
.article-form__trigger-title i {
  margin: 0 1rem;
  -webkit-transition: -webkit-transform .2s ease;
  transition: -webkit-transform .2s ease;
  transition: transform .2s ease;
  transition: transform .2s ease, -webkit-transform .2s ease;
}

.article-form__content {
  display: block;
  padding: 2rem 1rem;
}
.article-form__content.active {
  display: block;
}
.article-form__content h1, .article-form__content h2, .article-form__content h3, .article-form__content h4, .article-form__content h5 {
  text-align: center;
}
.article-form__content h1:first-child, .article-form__content h2:first-child, .article-form__content h3:first-child, .article-form__content h4:first-child, .article-form__content h5:first-child {
  margin-top: 0;
}

.article-form__container {
  display: block;
  margin: 0 auto;
  max-width: 800px;
}

ul#gform_fields_7 {
  padding: 0;
}


/* -------------------------
FEATURED ARTICLE
------------------------- */
.featured-article {
  text-align: center;
}
.featured-article h2.purple a {
  font-size: 2.5rem;
}
.featured-article span {
  color: #919191;
  display: block;
}
.featured-article span:first-of-type {
  margin: 3rem 0 0 0;
}
.featured-article span a {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1em;
}
.featured-article .author {
  display: block;
}
.featured-article .author img {
  height: 1rem;
  margin: 0 .5rem 0 0;
  -webkit-transform: translate(0, 0.1rem);
          transform: translate(0, 0.1rem);
  width: 1rem;
}
.featured-article h5 {
  color: #1e1e1e;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1.8rem;
  margin-bottom: 0;
}



/* -------------------------
BLOG AND NEWS PAGE OF POSTS
------------------------- */
.archive .article-preview {
  display: inline-block;
  width: 49%;
  margin: 5rem 0;
  padding: 0 0 0 2rem;
  text-align: left;
  vertical-align: top;
}

@media screen and (max-width: 600px) {
  .archive .article-preview {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}

@media screen and (min-width: 701px) {
  .archive .article-preview {
    margin: 1rem 0;
  }
}

.archive .article-preview h4 {
  margin: 1rem 0;
}
.archive .article-preview h4 a {
  font-weight: 700;
}
.archive .article-preview span {
  color: #919191;
  font-size: .8rem;
}
.archive .article-preview span a {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1em;
}

.archive .article-preview .author {
  display: block;
}

.archive .article-preview .three {
  font-family: "lato", "Lato", sans-serif;
}


/* -------------------------
MOBILE MOMENTS
------------------------- */
.mobile-moments-video iframe {
  max-width: 100%;
}




/* -------------------------
CAREER PAGES
------------------------- */
.mid-heading {
  background: #320066;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  text-align: center;
}
.mid-heading.alt {
  background: #9689bf;
}
.mid-heading h2 {
  color: white;
  margin: 0;
}

.job-listing {
  background: white;
}
.job-listing .container:not(.listing) {
  border-bottom: 1px solid #e6e6e6;
}
@media screen and (min-width: 801px) {
  .job-listing .container:not(.listing) {
    text-align: justify;
  }
}
.job-listing .container:not(.listing) > div:not(.lawyer-profile) {
  display: inline-block;
  width: 100%;
  vertical-align: top;
}
@media screen and (min-width: 801px) {
  .job-listing .container:not(.listing) > div:not(.lawyer-profile) {
    width: 68%;
  }
}
.job-listing .container:not(.listing) .lawyer-profile {
  display: inline-block;
  width: 100%;
  vertical-align: top;
}
@media screen and (min-width: 801px) {
  .job-listing .container:not(.listing) .lawyer-profile {
    width: 25%;
  }
}
.job-listing .container:not(.listing) .break {
  display: inline-block;
  width: 100%;
}
.job-listing .listing {
  text-align: center;
}
.job-listing .listing .no-job {
  color: #919191;
}
@media screen and (min-width: 701px) {
  .job-listing .listing .row {
    text-align: justify;
  }
}
.job-listing .listing .job {
  margin: 5rem 0;
  text-align: left;
  vertical-align: top;
}
@media screen and (min-width: 701px) {
  .job-listing .listing .job {
    display: inline-block;
    margin: 1rem 0;
    width: 48%;
  }
}
.job-listing .listing .job h4 {
  margin: 1rem 0;
}
.job-listing .listing .job h4 a {
  font-weight: 700;
}
.job-listing .listing .job span {
  color: #919191;
  font-size: .8rem;
}
.job-listing .listing .job span a {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1em;
}
.job-listing .listing .job:last-child {
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0;
  width: 100%;
}
.job-listing .listing .job .three {
  font-family: "lato", "Lato", sans-serif;
}
.job-listing .listing .break {
  display: inline-block;
  width: 100%;
}



/* -------------------------
RESOURCES PAGE
------------------------- */
.resources {
  background-position: top;
  background-size: cover;
  overflow: hidden;
  position: relative;
}
.resources h3 {
  color: #666666;
  font-family: "lato", "Lato", sans-serif;
  font-size: 2.66rem;
  font-weight: 300;
  line-height: 1.25;
  position: relative;
  text-align: center;
  z-index: 5;
}
.resources > img {
  position: absolute;
  right: 0;
  -webkit-transform: translate(30%, -50%);
          transform: translate(30%, -50%);
}

@media screen and (min-width: 701px) {
  .resources > img {
    width: 50vw;
  }
}


/* -------------------------
CAREER CONTACT
------------------------- */
.contact-profile .contact-headshot {
  background-position: cover;
  background-size: cover;
  border-radius: 10rem;
  display: block;
  margin: 0 auto 1rem auto;
  height: 10rem;
  width: 10rem;
}
@media screen and (min-width: 701px) {
  .contact-profile .contact-headshot {
    display: inline-block;
    margin: 0;
  }
}
.contact-profile .wrapper {
  display: block;
  text-align: center;
}
@media screen and (min-width: 701px) {
  .contact-profile .wrapper {
    display: inline-block;
    padding: 0 0 0 2rem;
    text-align: left;
    width: 50%;
    vertical-align: top;
  }
}
.contact-profile h6 {
  color: #320066;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1.33rem;
  font-weight: 700;
  line-height: 1.25;
  margin: .5rem 0 .5rem 0;
  text-decoration: none;
}
.contact-profile h6.grey {
  color: #919191;
}
.contact-profile .connect {
  color: #1e1e1e;
  display: block;
  font-family: "azo-sans-web", "Azo Sans", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  margin: 0 0 .5rem 0;
}
@media screen and (min-width: 801px) {
  .contact-profile .connect {
    font-size: .8rem;
  }
}
.contact-profile .connect:first-of-type {
  margin: 1.5rem 0 .5rem 0;
}



/* -------------------------
CONTACT PAGE - MAP
------------------------- */
@media screen and (min-width: 801px) {
  section.contact-content {
    padding: 0;
  }
}

a.contact, a.contact:hover {
  color: #9689bf;
  font-size: 2rem;
}

.wrapper-map {
  cursor: pointer;
  padding: 0;
  position: relative;
}
.wrapper-map:after {
  content: '';
  display: block;
  height: 350px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.wrapper-map.active:after {
  display: none;
}
.wrapper-map iframe {
  display: block;
}


/* -------------------------
CONTACT PAGE - CONTACT INFO
------------------------- */


.wrapper-address {
  background: #e6e6e6;
  padding: 1rem;
}

.notification {
  padding: 1rem;
}

@media screen and (min-width: 801px) {
  .notification {
    padding: 3rem;
  }
  
  .wrapper-address {
    font-size: 1px;
    padding: 3rem;
  }
}
.wrapper-address h3 {
  color: #320066;
  font-weight: 700;
}

.wrapper-address h4 {
  font-size: 1.7rem;
}


.wrapper-address a:hover {
  color: #9689bf;
}
@media screen and (min-width: 801px) {
  .wrapper-address .column {
    display: inline-block;
    padding: 0 1rem 3rem 0;
    width: 33%;
    vertical-align: top;
  }
}
@media screen and (min-width: 801px) {
  .wrapper-address .column h4 {
    margin: 4rem 0 .5rem 0;
  }
}
@media screen and (min-width: 801px) {
  .wrapper-address .column h4:first-of-type {
    margin-top: 0;
  }
}
.wrapper-address .column p,
.wrapper-address .column a {
  color: #1e1e1e;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1rem;
}

.wrapper-address .column a {
  color: #320066;
}

.wrapper-address .column:last-of-type h4 {
  margin: 1rem 0 0 0;
}
@media screen and (min-width: 801px) {
  .wrapper-address .column:last-of-type h4:first-of-type {
    margin-top: 0;
  }
}
.wrapper-address .column:last-of-type p {
  margin: 0;
}


/* -------------------------
FOOTER
------------------------- */
footer {
  background: #320066;
  max-width: 100%;
  margin-top: 1rem;
  padding: 2rem;
  width: 100vw;
  clear: both;
  /* Jetpack Newsletter */
  /* Jetpack Newsletter */
}
@media print {
  footer {
    width: 100%;
  }
}
@media screen and (min-width: 801px) {
  footer {
    max-width: 100%;
    padding: 3rem 3rem 3rem 3rem;
    width: 100vw;
  }
}
footer dd {
  color: white;
  font-family: "utopia-std", "Utopia", serif;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.5;
}
footer dd a {
  color: #9689bf;
  font-family: "azo-sans-web", "Azo Sans", sans-serif;
  font-size: .8rem;
  font-weight: 500;
  line-height: 1.5;
}
footer dl {
  margin: 0 0 2rem 0;
}
@media print {
  footer dl {
    display: inline-block;
    font-size: 0.8rem;
    margin: 0 0 0 -5px;
    padding: 0 4rem 0 0;
    width: 24.9%;
    vertical-align: top;
  }
}
@media screen and (min-width: 801px) {
  footer dl {
    display: inline-block;
    font-size: 0.8rem;
    margin: 0 0 0 -5px;
    padding: 0 4rem 0 0;
    width: 24.9%;
    vertical-align: top;
  }
}
footer dl dd {
  margin: 0 0 .5rem 0;
}
footer dl dd i {
  margin: 0 .5rem 0 0;
}
footer dl:first-of-type dd:last-child {
  font-family: "azo-sans-web", "Azo Sans", sans-serif;
  font-weight: 500;
}
footer > span {
  color: #9689bf;
  display: block;
  text-transform: uppercase;
}
@media print {
  footer > span {
    display: inline-block;
    font-size: 0.8rem;
    margin: 5rem 0 0 -5px;
    width: 24.9%;

  }
}
@media screen and (min-width: 801px) {
  footer > span {
    display: inline-block;
    font-size: 0.8rem;
    margin: .5rem 0 0 -5px;
    width: 33%;
    vertical-align: top;
  }
}
footer > span a {
  color: white;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1em;
}

footer > span.social {
  color: #9689bf;
  font-family: "utopia-std", "Utopia", serif;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.5;
  text-transform: none;
  text-align: left;
  margin-top: 1rem;
}

footer .norex {
  font-family: "lato", "Lato", sans-serif;
  text-align: left;
  margin-top: 1rem;
}

@media screen and (min-width: 801px) {
  footer > span.social {
    text-align: center;
    margin: 0;
  }

  footer .norex {
    text-align: right;
    margin: 0;
  }
}

footer > span.social a {
  color: white;
  display: inline-block;
  margin: 0 0 0 .5rem;
}
footer > span.social a:hover {
  color: #9689bf;
}


footer .gform_wrapper,
footer .gform_confirmation_wrapper {
  border-bottom: 1px solid #9689bf;
  margin: 2rem 0 1rem 0;
  padding: 0 0 1rem 0;
}
@media screen and (min-width: 801px) {
  footer .gform_wrapper .gform_body,
  footer .gform_confirmation_wrapper .gform_body {
    display: inline-block;
    margin: 0 1rem 0 0 !important;
    width: 50%;
    vertical-align: top;
  }
}

footer .gform_body {
  padding-left: 0;
}

footer .gform_body .gform_fields,
footer .gform_confirmation_wrapper .gform_body .gform_fields {
  padding: 0;
}
footer .gform_wrapper .gform_body .gform_fields .gfield .gfield_label,
footer .gform_confirmation_wrapper .gform_body .gform_fields .gfield .gfield_label {
  color: white;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1.5rem;
  font-weight: 700;
}
footer .gform_wrapper .gform_body .gform_fields .gfield .gfield_description,
footer .gform_confirmation_wrapper .gform_body .gform_fields .gfield .gfield_description {
  color: white;
  font-family: "lato", "Lato", sans-serif;
  font-size: .8rem;
  margin: 1rem 0;
}
footer .gform_wrapper .gform_body .gform_fields .gfield .ginput_container input,
footer .gform_confirmation_wrapper .gform_body .gform_fields .gfield .ginput_container input {
  background: white;
  border: none;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.1rem;
  margin: 0;
  padding: 1rem;
  width: 100%;
}
@media screen and (min-width: 801px) {
  footer .gform_wrapper .gform_footer,
  footer .gform_confirmation_wrapper .gform_footer {
    display: inline-block;
    vertical-align: bottom;
  }
}
footer .gform_wrapper .gform_footer input,
footer .gform_confirmation_wrapper .gform_footer input {
  background: #9689bf;
  border-radius: 10px;
  color: white;
  display: inline-block;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1.22rem;
  font-weight: 500;
  line-height: 1;
  margin: 0 0 1rem 0;
  padding: 1rem 2rem 1.1rem 2rem;
  text-transform: lowercase;
  -webkit-transition: background .3s ease;
  transition: background .3s ease;
}
footer .gform_wrapper .gform_footer input:hover,
footer .gform_confirmation_wrapper .gform_footer input:hover {
  background: #71588c;
}
footer .gform_wrapper .gform_confirmation_message,
footer .gform_confirmation_wrapper .gform_confirmation_message {
  color: white;
  font-family: "utopia-std", "Utopia", serif;
  font-size: 1.2em;
  font-weight: 700;
}

.footer-navigation dd {
  margin: 0;
}
.footer-navigation dd a {
  border-bottom: 1px solid #71588c;
  display: block;
  font-family: "utopia-std", "Utopia", serif;
  font-size: .9rem;
  padding: .5rem 0;
}
.footer-navigation dd a:first-of-type {
  padding: 0 0 .5rem 0;
}
.footer-navigation dd a:last-of-type {
  border-bottom: none;
}





/* -------------------------
PAYMENTS PAGE
------------------------- */

@media print {
  .payments__header {
    background: none !important;
    border-top: 1px solid #320066;
    border-bottom: 1px solid #320066;
  }
}

@media print {
  .payments__logo {
    display: none !important;
  }
}

@media print {
  .payments__title {
    color: black !important;
  }
}

.payment-logo {
  display: none;
}

.payment-text-container {
  text-align: center;
}

.payments__link {
  background-position: center;
  background-size: cover;
  display: block;
  margin: 2rem 0;
  padding: 2rem;
  position: relative;
}
.payments__link:before {
  background: #320066;
  content: " ";
  display: block;
  height: 100%;
  opacity: .8;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: background .2s ease;
  transition: background .2s ease;
  width: 100%;
}
.payments__link:hover:before {
  background: #71588c;
  -webkit-transition: background .2s ease;
  transition: background .2s ease;
}

.payments__link-title {
  color: white;
  margin: 0 0 1rem 0;
  position: relative;
}

.payments__link-copy {
  color: white;
  margin: 0;
  position: relative;
}

/* Payments Forms */
#invoice-payment-button:hover, #retainer-payment-button:hover {
  cursor: pointer;
}

.payments__form-wrapper {
  margin: 2rem 0 3rem;
}

.payments__form-wrapper form p {
  margin-bottom: 2rem;
}
.payments__form-wrapper label {
  font-family: "lato", "Lato", sans-serif;
  font-size: 1rem;
  margin: 0 0 .5rem 0;
}

::-webkit-input-placeholder {
   font-family: 'Lato', sans-serif;
}
:-moz-placeholder {
   font-family: 'Lato', sans-serif;
}
::-moz-placeholder {
   font-family: 'Lato', sans-serif;
}
:-ms-input-placeholder {
   font-family: 'Lato', sans-serif;
}

.payments__form-wrapper input[type="text"],
.payments__form-wrapper input[type="number"] {
  border: 1px solid #320066;
  display: block;
  margin: 0 0 1.5rem 0;
  padding: 1rem;
  width: 100%;
  font-family: 'Lato', sans-serif;
}

.payments__form-wrapper input[type="number"] {
  background: url(../img/lato-dollar-sign.png) no-repeat;
  background-size: 12px;
  background-position: 1rem 50%;
  padding-top: 1.1rem;
  padding-left: 1.75rem;
}

.payments__form-wrapper input[type="text"]:focus,
.payments__form-wrapper input[type="number"]:focus {
  border: 1px solid #9689bf;
}

/* Turn of number "spinners" */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
    -moz-appearance:textfield; /* Firefox */
}

/* Payments Receipts */
.payments__receipt {
  margin-top: 4rem;
}

.payments__receipt-warning {
  font-size: 1.5rem;
  text-align: center;
}

.payments__receipt-group {
  margin: 2rem 0;
}
.payments__receipt-group:first-of-type {
  margin-top: 4rem;
}

.payments__receipt-item {
  margin: 0;
}
.payments__receipt-item span {
  color: #320066;
  font-weight: 800;
}
.payments__receipt-item span.payments__approved {
  color: #47c568;
}
.payments__receipt-item span.payments__declined {
  color: red;
}










/* -------------------------
CONTACT PAGE - CONTACT FORM
------------------------- */
.wrapper-form {


}
@media screen and (min-width: 801px) {
  .wrapper-form {

  }
}

.gform_heading {
  margin-top: 2rem;
  padding: 1rem;
  text-align: center;
  background: #320066;
  color: #fff;
}

.gform_body {
  padding: 2rem;
}

.gform_footer {
  padding-bottom: 2rem;
  padding-right: 2rem;
}


.wrapper-form .gform_description {
  margin: 0 0 1rem;
  color: #fff;
  font-family: "lato","Lato",sans-serif;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.33;
}

.wrapper-form > h5 {
  margin-top: 0;
  margin-bottom: 1rem;
}
.wrapper-form > h5 span {
  color: #9689bf;
  font-size: .8rem;
}
@media screen and (min-width: 801px) {
  .wrapper-form > h5 span {
    margin-right: 2rem;
  }
}
.wrapper-form ul {
  list-style: none;
  padding: 0;
}
.wrapper-form ul li input {
  background: white;
  border: none;
  padding: 1rem;
  width: 100%;
}
.wrapper-form ul li textarea {

  height: 250px;
  padding: 1rem;
  width: 100%;
}
.wrapper-form .gform_ajax_spinner {
  display: none !important;
}
.wrapper-form .gform_footer {
  text-align: right;
}
.wrapper-form .gform_button {
  float: right;
  margin-bottom: 2rem;
}
.wrapper-form .validation_error {
  color: #9689bf;
  font-family: "lato", "Lato", sans-serif;
  font-size: 1rem;
}

.wrapper-form .gform_confirmation_message {
  color: #9689bf;
  font-family: "utopia-std", "Utopia", serif;
}
.wrapper-form .gform_confirmation_message a {
  color: #919191;
  font-size: 1rem;
}
.wrapper-form .gform_confirmation_message a:hover {
  color: #9689bf;
}
.wrapper-form .gform_fields {
  margin-top: 2rem;
  margin-left: 0;
  text-align: justify;
}
.wrapper-form .gform_fields:after {
  content: '';
  display: block;
  font-size: 0;
  height: 0;
  line-height: 0;
  width: 100%;
}
.wrapper-form input[type='submit'] {
  background: #9689bf;
}

.wrapper-form .gfield {
  margin: 1rem 0;
  text-indent: 0;
}
@media screen and (min-width: 801px) {
  .wrapper-form .gfield {
    display: inline-block;
    width: 48%;
  }
}
@media screen and (min-width: 801px) {
  .wrapper-form .gfield:nth-child(odd) {
    float: left;
  }
}
@media screen and (min-width: 801px) {
  .wrapper-form .gfield:nth-child(even) {
    float: right;
  }
}
.wrapper-form .gfield:last-of-type, .wrapper-form .gfield:nth-last-child(2) {
  width: 100% !important;
}

.wrapper-form .gfield:last-of-type {
  float: left;
}

.wrapper-form .gfield label {
  color: #9689bf;
  font-size: 1.3rem;
}
.wrapper-form .gfield label span {
  color: #9689bf;
}

.wrapper-form .ginput_container_text, .wrapper-form .gfield_select option {
  font-size: 1.3rem;
  color: #666;
  font-weight: 300;
  font-family: "lato", "Lato", sans-serif;
}
.wrapper-form .gfield .ginput_container.error {
  position: relative;
}
.wrapper-form .gfield .ginput_container.error:after {
  color: red;
  content: 'Please enter a valid email address';
  display: block;
  position: absolute;
  top: 1rem;
  left: 1rem;
}
.wrapper-form .gfield:last-child > label {
  display: inline-block;
  margin: 0 .5rem 0 0;
  width: auto;
}
.wrapper-form .gfield:last-child > div {
  display: inline-block;
  width: auto;
}
.wrapper-form .gfield:last-child > div ul li > input,
.wrapper-form .gfield:last-child > div ul li > label {
  display: inline-block;
  width: auto;
}

/* SELECT DROPDOWN */
.wrapper-form .gfield_select {
  width: 100%;
  border: 1px solid #b2b2b2;
  font-weight: 300;
  padding: 1rem;
}

/* SELECT DROPDOWN FOR PROVINCE*/
select.sod-province {
  width: 95%;
  padding: .91rem 0;
}


/* TEXT BOX */
.wrapper-form .gfield:last-child > div.ginput_container_textarea {
  width: 100%;
}



/* -------------------------
FORMS - Gravity Forms in Content
------------------------- */
.content .gform_wrapper .gfield_label {
  font-size: 1rem;
}

span.screen-reader-text {
    display: none;
}


@media screen and (min-width: 1024px) {
  .content .gform_wrapper .ginput_left {
    display: inline-block;
    width: 48%;
  }
}
@media screen and (min-width: 1024px) {
  .content .gform_wrapper .ginput_right {
    display: inline-block;
    float: right;
    width: 48%;
  }
}


.content .gform_wrapper .validation_error {
  color: red;
  font-family: "utopia-std", "Utopia", serif;
  font-size: .8rem;
}
.content .gform_wrapper .validation_message {
  color: red;
  font-family: "utopia-std", "Utopia", serif;
  font-size: .8rem;
  padding: 0;
}
.content .gform_wrapper ul {
  margin: 0;
  padding: 0;
}
.content .gform_wrapper ul .gfield {
  margin: 1.5rem 0;
}
.content .gform_wrapper ul li:before {
  display: none;
}
.content .gform_wrapper ul ul {
  margin: 0;
}
.content .gform_wrapper ul ul li:before {
  display: none;
}
.content .gform_wrapper input:not([type='submit']) {
  margin: 0 0 1rem 0;
}
.content .gform_wrapper textarea,
.content .gform_wrapper select {
  margin: 0 0 1rem 0;
  width: 100%;
}
.content .gform_wrapper input[type='checkbox'] {
  display: inline-block;
  width: auto;
}


/* -------------------------
FORMS - Gravity Forms
used where??
------------------------- */

@media screen and (min-width: 801px) {
  .gform_fields .gfield {
    margin-right: 20px;
  }
}
@media screen and (min-width: 801px) {
  .gform_fields .wrapper .input-wrapper:nth-child(1) {
    display: inline-block;
    width: 60%;
    vertical-align: top;
  }
}
@media screen and (min-width: 801px) {
  .gform_fields .wrapper .input-wrapper:nth-child(2) {
    display: inline-block;
    width: 37%;
    vertical-align: top;
  }
}
@media screen and (min-width: 801px) {
  .gform_fields .gform_fileupload_multifile {
    margin-right: 20px;
  }
}
.gform_fields .sod_select {
  border: 1px solid #919191 !important;
  box-shadow: none !important;
  padding: .89rem;
  position: relative;
  width: 100%;
  z-index: 50;
}
.gform_fields .sod_select:before {
  display: none;
}
.gform_fields .sod_select:after {
  color: #9689bf;
  content: '\f0d7';
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: 1rem;
  top: 1.3rem;
  right: 1rem;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.gform_fields .sod_select .sod_label {
  color: #1e1e1e;
  font-size: 1rem;
  font-weight: 500;
  text-transform: initial;
}
.gform_fields .sod_select .sod_list_wrapper {
  border: 1px solid #919191 !important;
  margin: 0;
  padding: 1rem;
  width: 200%;
}
.gform_fields .sod_select .sod_list_wrapper .sod_option {
  color: #1e1e1e;
  font-size: 1rem;
  font-weight: 500;
  text-transform: initial;
}

.gform_wrapper .gfield {
  margin: 0 0 1rem 0;
  width: 100%;
  vertical-align: top;
}
.gform_wrapper .gfield label {
  color: #1e1e1e;
  font-size: .7rem;
}
@media screen and (min-width: 801px) {
  .gform_wrapper .gfield.half {
    display: inline-block;
    width: 45%;
  }
}
@media screen and (min-width: 801px) {
  .gform_wrapper .gfield.quarter {
    display: inline-block;
    width: 22%;
  }
}
.gform_wrapper .validation_message {

  padding: .5rem;
}
.gform_wrapper textarea {
  display: block;
  width: 100%;
}
.gform_wrapper .gform_confirmation_message {
  text-align: center;
}
.gform_wrapper ul {
  list-style: none !important;
  margin: 0;
  text-indent: 0;
}
.gform_wrapper ul li {
  color: #9689bf;
  margin: 0;
  text-indent: 0;
}
.gform_wrapper ul li:before, .gform_wrapper ul li:after {
  display: none;
}
.gform_wrapper input:not([type='submit']) {
  border: 1px solid #b2b2b2;
  font-weight: 300;
  padding: 1rem;
  width: 100%;
}
.gform_wrapper .gform_fileupload_multifile {
  background: #919191;
}
.gform_wrapper .gform_fileupload_multifile span {
  display: none;
}
.gform_wrapper .gform_fileupload_multifile input {
  background: #919191;
  border-radius: 0;
  font-weight: 500;
}

.gform_wrapper input[type='submit'] {
  background: #320066;
  display: block;
  margin: 0 auto;
}


/* -------------------------
FORMS - Intake Form
------------------------- */
.intake-form {
  max-width: 1024px;
  margin: 0 auto;
}

.intake-form .gform_wrapper .gfield label {
  margin-right: 0.5rem;
  font-size: 1.2rem;
  vertical-align: top;
}

.wrapper-form.intake-form .gform_fields {
  text-align: left;
}

.intake-form .gform_fields .gfield span label {
  font-size: .9rem;
  color: #9689bf;
}

.intake-form .gfield .ginput_container_checkbox, .intake-form .gfield .ginput_container_radio {
  display: inline-block;
}

.intake-form .gfield .ginput_container_checkbox input, .intake-form .gfield .ginput_container_radio input {
  display: inline-block;
  width: auto;
  margin-top: 10px;
}

.intake-form .gfield .ginput_container_checkbox label, .intake-form .gfield .ginput_container_radio label {
  display: inline-block;
  width: auto;
  margin-left: 5px;
}

.gform_confirmation_wrapper {
  padding: 50px 0;
  font-size: 1.5rem;
}

.intake-form .gfield_visibility_hidden {
  display: none;
}
