﻿@charset "utf-8";

:root {
	/* Colors */
	--primary:#0178BD;
	--secondary:#00B3BE;
	--secondary2:#0EB082;
	--lines:#ECEFF1;
	--banner:#212121;
	--table:#ECEFF1;
	--fields:#E8E8E8;
	--section-light:#ECEFF1;
	--section-dark:#3878B0;

	/* Text */
	--body-font:'Inter';
  --text-color:#212121;
	--heading-font:var(--body-font);
	--heading-color:var(--text-color);
	--link-color:var(--primary);
	
	/* Header */
	--header-background:#ffffff;
	--header-ontop-background:transparent;
	--logo-background:#ffffff;
	--icon-hover:#7DD0E0;
	--icon-ontop-hover:rgba(255,255,255,0.1);
	--header-border:transparent;
	--header-ontop-border:transparent;

	/* Nav */
	--nav-hover:var(--icon-hover);
	--nav-hover-text:var(--text-color);
	--nav-sub-hover:var(--icon-hover);
	--nav-sub-hover-text:var(--text-color);
	--nav-radius:0;
	
	/* Modals */
	--modal-overlay:rgba(51,51,51,0.8);
	
	/* Content */
	--image-radius:0;

	/* Buttons */
	--btn-radius:1.9em;
	--primary-text:#ffffff;
	--secondary-text:#ffffff;

	/* Scrollbar */
	--scrollbar-thumb:var(--icon-hover);
	--scrollbar-track:rgba(0,0,0,0.08);

	/* Footer */
	--footer-top:transparent;	
	--footer-left:var(--section-dark);	
	--footer-right:var(--section-dark);	
}

/* -------- Icons ------------ */
.btn-nav:after,
.header-button:before,
.close:before,
.checkbox input[type="checkbox"]:checked + label:before,
.btn-sub:after,
.btn-scroll:before,
.scroll-top:before,
.splide__arrow:after,
.btn__arrow:after, .btn__arrow-text:after,
.btn__icon:after,
.btn__social:after,
.image-menu__btn:after,
.block-tab-header:after,
.expand-header:after,
.lightbox a:after,
.number button:before,
.news-more a:after,
.news .page-navigation li.previous a:before,
.news .page-navigation li.next a:before,
ul.tx-indexedsearch-browsebox li:first-child:not(.tx-indexedsearch-browselist-currentPage) a:before,
ul.tx-indexedsearch-browsebox li:last-child:not(.tx-indexedsearch-browselist-currentPage) a:before,
.browse-menu a:after,
#cursor:after,
.tx-indexedsearch-search-submit input[type="submit"],
.tx-indexedsearch-icon:before,
.video-play:after,
.btn__circle:after,
.btn__close,
.btn__basic:before {background-image:url(../images/icons.png); background-image:url(../images/icons.svg), linear-gradient(transparent, transparent), none; background-repeat:no-repeat;}

/* -------- Text ------------ */
html, body  {font-size:18px; line-height:1.66; font-weight:400;}
h1, .h1 {font-size:120px; font-weight:800; line-height:1.05;}
h2, .h2 {font-size:80px; font-weight:800; line-height:1.2;}
h3, .h3 {font-size:60px; font-weight:800; line-height:1.2;}
h4, .h4 {font-size:48px; font-weight:300; line-height:1.25;}
h5, .h5 {font-size:36px; font-weight:400; line-height:1.33;}
h6, .h6 {font-size:1.33rem; font-weight:400; line-height:1.5;}
p {font-size:1rem; font-weight:400; line-height:1.66;}

b, strong {font-weight:700;}

.light {font-weight:300;}
.semibold {font-weight:600;}
.extrabold {font-weight:800;}

.large {font-size:1.33em;}
h2 .large, .h2 .large {font-size:1.5em;}
h5 .small, .h5 .small {display:block; font-size:1rem; margin-top:5px;}

.blue {color:var(--section-dark);}

.text-white blockquote {border-color:#ffffff;}

.width-1180 {max-width:1180px;}
.width-1180.align-center {margin:0 auto;}
.width-1180.align-right {margin:0 0 0 auto;}

.box-heading {position:relative; z-index:0; padding:1em 0 0 0.8em;}
.box-heading:before,
.box-heading:after {content:""; display:block; width:4.5em; height:100%; min-height:4.25em; padding:0 0 1em 0; box-sizing:content-box; position:absolute; z-index:-2; left:0; top:0; background:radial-gradient(circle at 22% 16%, #F1F1F1, #F1F2F2 12%, #F0F3F5 42%, #CFD8DC); transform-origin:left center; animation:box 0.8s forwards paused;}
.box-heading:after {z-index:-1; background:linear-gradient(120deg, transparent 30%, #ffffff 50%, transparent 51%) right top; background-size:400% 100%; animation:shine 0.8s forwards paused;}

.indent-small {margin-left:64px;}
.indent-medium {margin-left:110px;}
.indent-large {margin-left:460px;}

.scrolled .box-heading:before,
.scrolled .box-heading:after {animation-play-state:running;}
@keyframes box {
	0% {transform:perspective(8em) rotateZ(-20deg) rotateY(90deg); opacity:0;}
	100% {transform:perspective(8em) rotateZ(0deg) rotateY(0deg); opacity:1;}
}
@keyframes shine {
	0% {transform:perspective(8em) rotateZ(-20deg) rotateY(90deg); background-position-x:right; opacity:0;}
	100% {transform:perspective(8em) rotateZ(0deg) rotateY(0deg); background-position-x:left; opacity:1;}
}

/* -------- Tables ------------ */
table td {min-width:auto;}

.table-hours tr:nth-child(2n) {background:none;}
.table-hours td {padding:0 16px;}
.table-hours td:first-child {padding-left:0;}
.table-hours td:last-child {padding-right:0;}

table.table-grid {display:block; width:106%; padding:0; margin:0 -3%;}
table.table-grid > tbody {display:block;}
table.table-grid > tbody > tr {display:flex; flex-wrap:wrap;}
table.table-grid > tbody > tr > td {vertical-align:top; padding:0 3%; box-sizing:border-box; flex:1 0 auto; max-width:100%; overflow-X:auto;}
table.table-grid > tbody > tr:nth-child(even) {background:none;}

table.table-grid > tbody > tr > td {-webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);}
table.table-grid > tbody > tr > td::-webkit-scrollbar {height:8px;}
table.table-grid > tbody > tr > td::-webkit-scrollbar-track {height:8px; background:var(--scrollbar-track);}
table.table-grid > tbody > tr > td::-webkit-scrollbar-thumb {background:var(--scrollbar-thumb);}

/* -------- Message ------------ */
.message-box {position:relative; overflow:hidden; background:var(--section-light);}
.message-box.message-hide {display:none;}
.message-box .content-1920 {overflow:hidden; padding:16px;}

.message-box .btn__close {border-radius:0; margin:0; font-size:100px; background-size:6em auto; background-position:-1em 0; background-color:var(--section-light);}

/* -------- Header ------------ */
.header-logo a {padding-left:30px; padding-right:30px;}
.header-logo a:before {content:""; display:block; width:100%; height:100%; box-sizing:content-box; position:absolute; z-index:1; left:0; top:0; background:linear-gradient(120deg, transparent 40%, #ffffff 50%, transparent 51%) right top; background-size:300% 100%; animation:logoshine 2s forwards; animation-delay:0.2s;}
@keyframes logoshine {
	0% {background-position-x:right; opacity:0;}
	100% {background-position-x:left; opacity:1;}
}

.header-button span {font-weight:500;}

.header-contact:before {background-position:-5.33em -17em;}
#header.header-white .header-contact:before {background-position-y:-18.66em;}

.header-locations {background:var(--section-light);}
.header-locations:before {background-position:-7em -17em;}
.header-white .header-locations {background:rgba(255,255,255,0.2);}
#header.header-white .header-locations:hover {background:rgba(255,255,255,0.3);}
#header.header-white .header-locations:before {background-position-y:-18.66em;}

.header-extra {display:inline-flex; align-items:center; background:#3878B0; background:var(--section-dark); padding:0 30px; width:auto;}
.header-extra span {font-size:24px; color:#ffffff;}
.header-extra:hover span {color:var(--text-color);}
.header-extra:before {display:none;}

#header-sticky.header-white .header-locations {background:var(--section-light);}
#header-sticky.header-white .header-locations:hover {background:var(--icon-hover);}
#header-sticky .header-extra {width:auto; padding-top:0;}

.dropdown {position:relative; display:inline-block; vertical-align:top;}
.dropdown-menu {position:absolute; top:100%; left:0; min-width:100%; background:#ffffff; background:var(--section-light); box-shadow:4px 4px 16px rgba(0,0,0,0.2); max-height:0; overflow:hidden; transform:translateY(-20px); opacity:0; transition:all 0.3s, max-height 0s 0.3s;}
.dropdown > a {z-index:1;}
.dropdown:hover .dropdown-menu,
.dropdown > a:focus + .dropdown-menu {max-height:1000px; opacity:1; transform:none; transition:all 0.3s, max-height 0s;}
.dropdown-menu a {display:block; position:relative; font-size:24px; line-height:34px; font-weight:500; color:var(--text-color); padding:1em; text-align:left; transition:all 0.3s;}
.dropdown-menu a:hover {text-decoration:none; background:var(--icon-hover);}


/* -------- Modals ------------ */
.btn__close {background-color:var(--section-dark); background-position-y:-1.375em;}

.modal-small .modal-box {border-radius:0;}

.modal-box .header-button {background:#ffffff;}
.modal-box .header-extra {background:#7DD0E0; background:var(--icon-hover);}
.modal-box .header-extra span {color:var(--text-color);}
.modal-box .header-button:hover {background:var(--icon-hover);}
.modal-box .header-extra:hover {background:var(--section-light);}

[data-hotdoc-lightbox] > .hotdoc-overlay {background:var(--modal-overlay) !important;}
.hotdoc-modal {overflow:hidden; border-radius:16px !important;}
[data-hotdoc-lightbox] > button.close {width:50px !important; height:50px !important; border-radius:50% !important; background:var(--primary) !important;}
[data-hotdoc-lightbox] > button.close::after, [data-hotdoc-lightbox] > button.close::before {height:2px !important; top:50% !important; margin-top:-1px !important;}

/* -------- Nav ------------ */
.nav ul li a {font-size:18px; font-weight:500;}
.nav ul li ul {background:var(--section-light);}
#header.header-white .nav ul li:hover > a {background:rgba(255,255,255,0.2); color:#ffffff;}
.header-white .nav ul li ul li:hover > a {background:var(--icon-hover);}

/* -------- Nav Side ------------ */
.nav-container {display:flex; min-height:100%;}
.nav-side {flex:1 0 42%;}
.nav-side .content-padding {padding-top:40px; padding-bottom:40px; margin:0;}
.nav-side ul {margin:0; max-width:none;}
.nav-side ul li {font-size:21px; text-align:left; padding-left:2.62em;}
.nav-side ul li a {display:inline-block; font-size:1em; line-height:1.43; font-weight:500; padding:1.19em; border:none; transition:background-color 0.3s, color 0.3s;}
.nav-side ul li:hover > a,
.nav-side ul li:hover > a, .nav-side ul li.nav-open > a {background:none;}
.nav-side ul li a:hover {background:var(--icon-hover);}
.nav-side ul li ul li {padding-left:2.62em;}
.nav-side ul li ul li a {font-size:1em; font-weight:300; line-height:1.43; padding:1.19em;}

.nav-side:first-child {position:relative; z-index:2; box-shadow:4px 0 90px rgba(0,0,0,0.25);}
.nav-side:nth-child(2) {flex-basis:58%; background:#3878B0; background:var(--section-dark);}
.nav-side:nth-child(2) ul li {font-size:48px; padding:0;}
.nav-side:nth-child(2) ul li a {font-weight:800; color:#ffffff; padding:0.54em;}
.nav-side:nth-child(2) ul li a:hover {background:#ffffff; color:#3878B0; color:var(--section-dark);}
.nav-side:nth-child(2) .btn-sub {display:none;}
.nav-side:nth-child(2) .sub ul {display:none;}

.btn-sub,
.nav-side ul li ul li .btn-sub {font-size:3.8em; width:0.75em; height:1em; left:0; right:auto;}
.btn-sub:after {font-size:0.75em; background-position:-2em -10.33em; border-radius:50%; transition:background-color 0.3s, transform 0.3s;}
.btn-sub:hover:after {background-color:var(--icon-hover);}
.sub.nav-open > .btn-sub:after {background-position-x:-0.33em;}

/* -------- Content ------------ */
#body {z-index:10; animation:bodyreveal 1s forwards;}

@keyframes bodyreveal {
	from {opacity:0;}
	to {opacity:1;}
}

.bg-light {--lines:#CFD8DC;}
.bg-logo {position:relative; display:flex; flex-direction:column; justify-content:center; min-height:1330px;}
.bg-logo:before {content:""; display:block; width:960px; height:960px; position:absolute; z-index:-1; left:50%; top:50%; margin:-480px; background:url(../images/bg-logo.svg) no-repeat center; background-size:contain; opacity:0.3; mix-blend-mode:soft-light;}

.bg-white {padding:1px 0; box-shadow:0 9px 24px rgba(0,0,0,0.1);}

.bg-dark-box > div > .content-padding > div {background:#3878B0; background:var(--section-dark); padding:8%;}
.bg-dark-box > div > .content-padding .content-padding {margin:0;}

.callout .ce-bodytext {padding:150px 50px; background:#3878B0; background:var(--section-dark);}
.callout .ce-bodytext-block {box-shadow:none; padding:0 0 0 50px; background:none; border-left:10px solid #ffffff;}

@supports (animation:blockreveal 0.5s forwards paused) {
	.scroll-reveal {opacity:0; transform:translateY(120px);}
}
.scroll-reveal {animation:blockreveal 0.5s forwards paused;}
.scroll-reveal.scrolled {animation-play-state:running;}
@keyframes blockreveal {
	from {opacity:0; transform:translateY(120px);}
	to {opacity:1; transform:translateY(0);}
}

/* -------- Buttons ------------ */
.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"] {padding:1.14em 3em; font-size:21px; line-height:1.42857; font-weight:500; min-width:auto;}

.text-white .btn__secondary:hover {color:var(--secondary);}

.btn__secondary.alt {background:var(--secondary2);}
.btn__secondary.alt:hover {color:var(--secondary2);}

.btn__primary.large {font-size:36px; padding:1.35em 2.6em; border-radius:4.16em;}

/* Icon */
.btn__icon {font-weight:400; line-height:1.5; padding:0.916em 1em 0.916em 5em; border-radius:1.66em;}
.btn__icon:after {font-size:2.5em; left:0; top:0; border:0.16em solid transparent; background-color:var(--primary); border-radius:50%; background-position-y:-2em;}

.btn-phone {font-size:36px; font-weight:700; padding:0.35em 0.66em 0.35em 3.3em; white-space:nowrap;}
.btn-phone:after {font-size:1.65em;}

.btn-location:after {background-position-y:-12em;}

.btn-fax {white-space:nowrap; cursor:auto; pointer-events:none;}
.btn-fax:after {background-position:-8.66em -18.66em;}

.text-white .btn__icon:after {background-color:#ffffff; background-position-y:-0.33em;}
.text-white .btn-location:after {background-position-y:-10.33em;}
.text-white .btn-fax:after {background-position-y:-17em;}

_:-ms-lang(x), .btn__icon:after {font-size:60px;} /* IE Fix */

/* Social */
.btn__social:hover:after {background-position-y:-8.66em;}
.text-white .btn__social:hover:before {background:#ffffff;}
.text-white .btn__social:hover:after {background-position-y:-7em;}

/* Arrow */
.btn__arrow-text {font-weight:700;}

/* Extra */
.btn__basic {display:inline-block; vertical-align:middle; position:relative; z-index:1; padding:1.14em 1.14em; box-sizing:border-box; min-width:10em; max-width:100%; font-size:21px; line-height:1.42857; font-weight:500; text-align:center; color:var(--text-color); background:var(--section-light); overflow:hidden; cursor:pointer; transition:background 0.3s;}
.btn__basic:hover {text-decoration:none;}
.btn__basic:after {content:""; display:block; width:100%; height:100%; position:absolute; z-index:-1; left:-100%; top:0; background:linear-gradient(to right, transparent, #ffffff, transparent); transition:transform 0s;}
.btn__basic:hover:after {transform:skew(-40deg) translateX(200%); transition:transform 0.4s;}
.bg-light .btn__basic:hover {background:#ffffff;}
.bg-light .btn__basic:after {display:none;}

.icon-phone:before {content:""; display:inline-block; vertical-align:middle; font-size:2.86em; width:1em; height:1em; margin:-0.3em 0.08em -0.3em -0.3em; background-size:10em auto; background-position:-5.33em -17em;}

/* -------- Banner ------------ */
.banner-columns {padding:50px 0;}

.banner__text-block > * {animation:bannertext 1s forwards;}
@keyframes bannertext {
	0%,50% {transform:translateY(40px); opacity:0;}
	100% {transform:translateY(0); opacity:1;}
}

.banner .box-heading:before {animation:bannerbox 1.4s forwards;}
.banner .box-heading:after {animation:bannershine 1.4s forwards;}

@keyframes bannerbox {
	0%,60% {transform:perspective(8em) rotateZ(-20deg) rotateY(90deg); opacity:0;}
	100% {transform:perspective(8em) rotateZ(0deg) rotateY(0deg); opacity:1;}
}
@keyframes bannershine {
	0%,60% {transform:perspective(8em) rotateZ(-20deg) rotateY(90deg); background-position-x:right; opacity:0;}
	100% {transform:perspective(8em) rotateZ(0deg) rotateY(0deg); background-position-x:left; opacity:1;}
}

/* -------- Image Menu ------------ */
.image-menu__text {border-radius:0;}
.image-menu__text p {transition:color 0.3s;}
.image-menu__text:before {background:var(--section-dark); opacity:1; transition:background 0.3s;}
.image-menu__card:hover .image-menu__text p {color:var(--section-dark);}
.image-menu__card:hover .image-menu__text:before {background:#ffffff;}
.image-menu__card:hover .image-menu__btn {background:none;}

/* -------- Tabs ------------ */
.tab {font-size:24px; padding:36px 24px;}

/* -------- Expand ------------ */
.expand-header p {border:none; background:var(--section-light);}
.expand-content, 
.expand-open .expand-content {padding-left:50px; padding-right:50px;}
.expand-content:after {position:absolute; left:0; right:0;}

/* -------- Grid ------------ */
.group-tabs__btns a:hover {color:var(--text-color);}
.group-tabs__btns a.active {color:#ffffff;}

.grid.grid-bignumbers {display:flex; flex-wrap:nowrap; justify-content:center; margin:0 -16px;}
.grid-bignumbers .block {flex-basis:33.33%; width:33.33%; max-width:33.33%; padding:16px; margin:0;}

.grid.grid-locations {display:flex; margin:0 -25px;}
.grid-locations .block {flex:1 1 20%; max-width:25%; padding:0; margin:0;}
.grid-locations .content-1920 {height:100%;}
.grid.grid.grid-locations .content-padding {height:100%; padding:25px;}
.grid-locations .ce-textpic {display:flex; flex-direction:column; height:100%;}
.grid-locations p {margin:0;}
.grid-locations a[class] {display:block; min-width:auto;}
.grid-locations .btn__primary {margin:16px 0;}
.grid-locations .btn__basic {border:1px solid var(--lines); border-width:1px 0; margin-bottom:-1px;}
.grid-locations .ce-bodytext {flex:1 0 auto; padding-bottom:1px;}
.grid-locations .ce-bodytext-block {display:flex; flex-direction:column; height:100%;}
.grid-locations p:first-child {margin-bottom:auto;}
.grid-locations .btn__primary {padding-left:1em; padding-right:1em;}
.grid-locations .btn__basic {padding-left:10px; padding-right:10px;}

.grid-locations .layout-image-icon .image {box-shadow:none;}
.grid-locations .layout-image-icon .ce-gallery {margin-bottom:0;}


/* -------- Profile ------------ */
.profile__card {border-radius:0; background:#ffffff;}
.profile__position {font-weight:300;}
.profile__teaser a {display:block; max-width:280px; margin:16px auto;}
.profile__teaser .btn__basic {display:block; max-width:280px; width:100%; margin:16px auto;}

.overlay-profile {align-items:center; justify-content:center; padding:16px 0;}
.overlay-profile .modal-box {height:80vh; max-height:1080px;  max-width:1620px; padding:0; margin:auto 7.8%; border-radius:var(--image-radius);}
.overlay-profile.open .modal-box {transform:rotateX(0deg);}
.profile__columns {display:flex; height:100%;}
.profile__left {flex:0 0 50%; height:100%; padding:0;}
.profile__right {flex:0 0 50%; height:100%; box-sizing:border-box; padding-left:4%; overflow-y:auto;}
.overlay-profile .profile__image {display:block; position:relative; width:100%; max-width:none; min-height:100%; box-sizing:border-box; border-radius:0; margin:0;}
.overlay-profile .profile__image img {display:block; position:absolute; width:100%; height:100%; object-fit:cover;}
.profile__text {padding-right:20px; margin:0 10% 0 0; position:relative; top:14%; max-height:72%;}

/* -------- Footer ------------ */
.footer-scroll-wrap {float:right;}
.scroll-top {position:relative; margin:0; top:auto;}
.scroll-top:before {background-position-y:-2em;}
.scroll-top:after {border-color:#ffffff;}

.footer-mid {background-color:#3878B0; background-color:var(--section-dark); background:var(--section-dark) url(../images/bg-footer.png) no-repeat center; background-size:cover;}
.footer-mid .bg-light {background:#ffffff; clear:both; margin-bottom:-1px;}
.footer-left {background:none;}
.footer-right {vertical-align:bottom;}
.footer-right .block,
.footer-right .content-padding:after,
.footer-right .ce-textpic:after,
.footer-right .ce-bodytext {clear:none;}
.footer-right .ce-row:last-child .image {max-width:60%;}

.footer-links {font-size:24px; font-weight:500;}
.footer-links.footer-links-large {font-weight:800; margin-top:0;}
.footer-links ul li a:hover,
.text-white .footer-links ul li a:hover {background:#ffffff; color:#3878B0; color:var(--section-dark);}

.copyright {font-size:1rem; font-weight:600;}
.website span {font-size:1rem; font-weight:600;}


/* -------- Media Queries ------------ */
@media screen and (max-width:1920px) {
	/* -------- Text ------------ */
	h1, .h1 {font-size:6.25vw;}
	h2, .h2 {font-size:4.16vw;}
	h3, .h3 {font-size:3.125vw;}
	h4, .h4 {font-size:2.5vw;}
	h5, .h5 {font-size:1.875vw;}
	.width-1180 {width:61.5vw; max-width:100%;}
	.indent-small {margin-left:3.33vw;}
	.indent-medium {margin-left:5.72vw;}
	.indent-large {margin-left:23.96vw;}
	/* -------- Nav Side ------------ */
	.nav-side:nth-child(2) ul li {font-size:2.5vw;}
	/* -------- Content ------------ */
	.bg-logo {min-height:69.27vw;}
	.bg-logo:before {width:50%; height:0; padding-bottom:50%; margin:-25%;}
	/* -------- Buttons ------------ */
	.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"], .btn__basic {font-size:1.09vw;}
	.btn__primary.large {font-size:1.875vw;}
	/* -------- Footer ------------ */
	.footer-links {font-size:1.25vw;}
}

@media screen and (max-width:1800px) {
	/* -------- Message ------------ */
	.message-box .btn__close {font-size:80px;}
	.message-box .content-1920 {padding-top:8px; padding-bottom:8px;}
	/* -------- Header ------------ */
	.header-extra span {font-size:1rem;}
	.dropdown-menu a {font-size:20px;}
}

@media screen and (max-width:1600px) {
	/* -------- Text ------------ */
	h6, .h6 {font-size:1.5vw;}
	/* -------- Message ------------ */
	.message-box .btn__close {font-size:60px;}
	.message-box .content-1920 {padding-top:0; padding-bottom:0;}
	/* -------- Header ------------ */
	.dropdown-menu a {font-size:1rem;}
	/* -------- Nav ------------ */
	.nav ul li a {font-size:16px;}
	/* -------- Buttons ------------ */
	.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"] {padding:1em 1.5em; border-radius:1.66em;}
	.btn-phone {font-size:27.25px;}
	/* -------- Grid ------------ */
	.grid-locations .block {flex:1 0 25%; max-width:33.33%;}
	.grid-locations .block:nth-last-child(2):nth-child(4),
	.grid-locations .block:nth-last-child(2):nth-child(4) ~ .block {flex:1 0 50%; max-width:33.33%;}
}

@media screen and (max-width:1300px) {
	/* -------- Text ------------ */
	html, body {font-size:16px;}
	h4, .h4 {font-size:32px;}
	h5, .h5 {font-size:24px;}
	h6, .h6 {font-size:20px;}
	.width-1180 {width:auto; max-width:800px;}
	/* -------- Nav Side ------------ */
	.nav-side:nth-child(2) {flex-basis:50%;}
	.nav-side:nth-child(2) ul li {font-size:32px;}
	/* -------- Content ------------ */
	.callout .ce-bodytext {padding:100px 30px;}
	.callout .ce-bodytext-block {padding-left:30px;}
	/* -------- Buttons ------------ */
	.btn__primary, .btn__secondary, .btn__tertiary, button[type="submit"], .btn__basic {font-size:16px;}
	/* -------- Expand ------------ */
	.expand-header:after {margin-right:16px;}
	/* -------- Footer ------------ */
	.footer-links {font-size:16px;}
}

@media screen and (max-width:1080px) {
	/* -------- Text ------------ */
	h3, .h3 {font-size:34px;}
	/* -------- Buttons ------------ */
	.btn__primary.large {font-size:20px;}
	/* -------- Grid ------------ */
	.grid-locations .block {flex:1 0 33.33%; max-width:50%;}
	.grid-locations .block:nth-last-child(4):first-child,
	.grid-locations .block:nth-last-child(4):first-child ~ .block {flex-basis:50%; max-width:50%;}
}

@media screen and (max-width:960px) {
	/* -------- Text ------------ */
	h2, .h2 {font-size:40px;}
	.indent-small {margin-left:32px;}
	.indent-medium {margin-left:55px;}
	.indent-large {margin-left:230px;}
	.col:first-child .align-right {text-align:left;}
	/* -------- Modals ------------ */
	.btn__close {font-size:50px;}
	.modal-box .columns {max-width:none;}
	.modal-box .col {padding:40px 0;}
	.modal-box .col .block {max-width:480px; margin:0 auto;}
	/* -------- Nav Side ------------ */
	.nav-side ul li {font-size:16px;}
	.nav-side:nth-child(2) ul li {font-size:21px;}
	/* -------- Content ------------ */
	.bg-dark-box .col {display:table; width:auto; margin:0 auto;}
	.col .content-padding {margin:20px 0;}
	/* -------- Buttons ------------ */
	.btn__icon {font-size:16px; padding-left:4em;}
	.btn__icon:after {font-size:2.8125em; border-width:0.10em;}
	.btn__icon .small {margin-left:0;}
	.btn-phone {padding:0.916em 1em 0.916em 4em;}
	_:-ms-lang(x), .btn__icon:after {font-size:45px;} /* IE Fix */
	/* -------- Expand ------------ */
	.expand-header p {padding-left:16px;}
	.expand-header:after {margin-right:6px;}
	.expand-content, 
	.expand-open .expand-content {padding-left:0; padding-right:0;}
	/* -------- Grid ------------ */
	.grid.grid-locations {margin:0 -16px;}
	.grid.grid.grid-locations .content-padding {padding:16px;}
	/* -------- Footer ------------ */
	.footer-mid .col .block > * {max-width:none;}
	.footer-left {text-align:center;}
	.footer-links {display:block;}
	.footer-links ul {text-align:center;}
	.footer-links ul li {display:inline-block;}
}

@media screen and (max-width:800px) {
	/* -------- Text ------------ */
	h1, .h1 {font-size:50px;}
	/* -------- Profile ------------ */
	.overlay-profile .modal-box {max-height:none; max-width:480px; height:auto; margin:auto 16px;}
	.profile__columns {display:block;}
	.profile__left {position:relative; display:block; width:auto; height:0; padding-bottom:80%;}
	.overlay-profile .profile__image {position:absolute;}
	.profile__right {display:block; width:auto; padding:0;}
	.profile__text {display:block; width:auto; padding:0; margin:16px; height:auto; top:auto;}
}

@media screen and (max-width:700px) {
	/* -------- Text ------------ */
	.box-heading {padding-left:0; margin-bottom:1.2em;}
	.box-heading:before,
	.box-heading:after {min-height:auto; padding:0 0 0.8em 0; left:-16px;}
	.indent-small {margin-left:0;}
	.indent-medium {margin-left:0;}
	.indent-large {margin-left:0;}
	/* -------- Header ------------ */
	.header-logo a {padding-left:10px; padding-right:10px;}
	.header-extra {width:50px; padding:4px 0;}
	.header-extra span {display:block; font-size:9px; letter-spacing:0.1em; text-transform:uppercase;}
	#header-sticky .header-extra {width:50px;}
	/* -------- Banner ------------ */
	.banner-columns {padding:0;}
	.banner-columns * {color:#ffffff !important;}
	/* -------- Grid ------------ */
	.grid-locations .block {flex:1 0 50%; max-width:50%;}
	.grid-locations .block:nth-last-child(2):nth-child(4),
	.grid-locations .block:nth-last-child(2):nth-child(4) ~ .block {max-width:50%;}
}

@media screen and (max-width:600px) {
	/* -------- Text ------------ */
	h1, .h1 {font-size:40px;}
	h2, .h2 {font-size:36px;}
	h3, .h3 {font-size:26px;}
	h4, .h4 {font-size:24px;}
	h5, .h5 {font-size:20px;}
	h6, .h6 {font-size:17px;}
	/* -------- Tables ------------ */
	.table-hours td {padding:0 4px;}
	/* -------- Nav Side ------------ */
	.nav-container {flex-direction:column;}
	.nav-side {height:auto;}
	.nav-side:nth-child(2) {padding-top:0;}
	.nav-side:nth-child(2) ul li {padding-left:2.62em;}
	/* -------- Content ------------ */
	.bg-logo {min-height:380px;}
	.bg-logo:before {width:300px; height:300px; padding-bottom:0; margin:-150px;}
	.bg-dark-box > div > .content-padding > div {padding:0 16px;}
	.callout .ce-bodytext {padding:80px 16px;}
	.callout .ce-bodytext-block {padding-left:16px; border-left-width:6px;}
	/* -------- Grid ------------ */
	.grid-bignumbers h1,
	.grid-bignumbers .h1 {font-size:6.66vw;}
	.grid-bignumbers h6,
	.grid-bignumbers .h6 {font-size:3vw;}
}

@media screen and (max-width:440px) {
	/* -------- Text ------------ */
	h1, .h1 {font-size:36px;}
	h2, .h2 {font-size:32px;}
	/* -------- Header ------------ */
	.header-locations {display:none;}
	.dropdown {display:none;}
	/* -------- Grid ------------ */
	.grid.grid-locations {display:block;}
	.grid-locations .block {max-width:none;}
	.grid-locations .block:nth-last-child(2):nth-child(4),
	.grid-locations .block:nth-last-child(2):nth-child(4) ~ .block,
	.grid-locations .block:nth-last-child(4):first-child,
	.grid-locations .block:nth-last-child(4):first-child ~ .block {max-width:none;}

}
