progress,
sub,
sup {
    vertical-align: baseline;
}

button,
hr,
input {
    overflow: visible;
}

[type=checkbox],
[type=radio],
legend {
    box-sizing: border-box;
    padding: 0;
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}

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

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: bolder;
}

dfn {
    font-style: italic;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

mark {
    background-color: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

img {
    border-style: none;
}

svg:not(:root) {
    overflow: hidden;
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
}

button,
input,
select,
textarea {
    font: inherit;
    margin: 0;
}

optgroup {
    font-weight: 700;
}

button,
select {
    text-transform: none;
}

[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: button;
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: ButtonText dotted 1px;
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal;
}

textarea {
    overflow: auto;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

@font-face {
    font-family: "fonts/Helvetica Neue";
    src: url("fonts/HelveticaNeue.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
	font-display: swap; 
}

@font-face {
    font-family: "fonts/Helvetica Neue";
    src: url("fonts/HelveticaNeue Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
	font-display: swap; 
}

@font-face {
    font-family: "fonts/Helvetica Neue";
    src: url("fonts/HelveticaNeue Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
	font-display: swap; 
}

@font-face {
    font-family: "fonts/Helvetica Neue";
    src: url("fonts/Helvetica Neu Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
	font-display: swap;
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 20px;
    line-height: 1.6;
    color: #212629;
    font-weight: 300;
    font-family: "fonts/Helvetica Neue", Arial, sans-serif;
    background-color: white;
    padding: 0 25px;
    font-family: 'fonts/Helvetica Neue', sans-serif;
}

h1,
h2,
h3,
h4,
.h2,
.h3 {
    margin-top: 0;
    color: #1d3d62;
    font-weight: 700;
    line-height: 1;
    display: block;
    font-family: "fonts/Helvetica Neue", Arial, sans-serif;
}

h1,
.h1,
#append {
    font-size: 45px;
    margin: 0px;
}

h2,
.h2 {
    font-size: 30px;
    line-height: 1;
}

h3 {
    font-size: 20px;
    line-height: 1.1;
}

h4 {
    font-size: 18px;
    line-height: 1.1;
}

b,
strong {
    font-weight: 700;
}

#page-title h1:not(:only-child) {
    font-size: 15px;
    font-family: "fonts/Helvetica Neue", Arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-bottom: 10px;
}

#page-title h2#append,
#page-title h1:only-child {
    font-size: 80px;
}

a {
    text-decoration: none;
    transition: .3s ease;
    color: #1d3d62;
}

a:hover {
    text-decoration: underline;
}

a[name]:before {
    height: 80px;
    margin-top: -80px;
    display: block;
    content: "";
    visibility: hidden;
}

@media (min-width:1020px) {
    a[name]:before {
        height: 125px;
        margin-top: -125px;
    }
}

hr {
    position: relative;
    height: 1px;
    width: 100%;
    display: table;
    clear: both;
    margin: 2em auto;
    border: none;
    background-color: #ccc;
}

address {
    font-style: normal;
}

figure {
    margin: 0px;
}

.stars:before {
    content: "\e80f \e80f \e80f \e80f \e80f";
    color: #f5d06b;
    font-family: fontello;
    font-weight: 400;
    margin: 0;
    font-style: normal;
}

#fixed-tabs {
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    box-shadow: -2px 0 2px rgba(0, 0, 0, 0.5);
    z-index: 1100;
}

#fixed-tabs a {
    background-color: #1d3d62;
    flex: 100%;
    font-size: 12px;
    padding: 15px 0;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    box-sizing: border-box;
    text-transform: uppercase;
    line-height: 1;
}

#fixed-tabs a span:last-of-type {
    display: none;
}

#fixed-tabs a.ra {
    background-color: #00659a;
}

#fixed-tabs a.fb {
    background-color: #4d70a8;
}

#fixed-tabs a.gp {
    background-color: #dc4e41;
}

#fixed-tabs a.call,
#fixed-tabs a.map {
    display: none;
}

#fixed-tabs a.call {
    background-color: #212629;
}

#fixed-tabs a:hover {
    text-decoration: none;
}

@media screen and (min-width:1023px) {
    #fixed-tabs {
        display: none;
    }
}

@media screen and (max-width:759px) {
    #fixed-tabs a.fm {
        display: none;
    }
}

@media screen and (max-width:600px) {
    #fixed-tabs a {
        flex: 1;
    }

    #fixed-tabs a.ra {
        flex: 2;
    }

    #fixed-tabs a.fm,
    #fixed-tabs a.gp,
    #fixed-tabs a.fb {
        display: none;
    }

    #fixed-tabs a.call,
    #fixed-tabs a.map {
        display: block;
    }
}

main .forms label {
    margin-bottom: .5em;
}

main .forms .btn {
    background-color: white;
    color: black;
}

main .forms {
    background-color: #212629;
    box-sizing: border-box;
    padding: 20px;
    color: white;
}

.forms .inline-box>div {
    padding: 10px;
    margin-bottom: 10px;
    background-color: rgba(38, 169, 223, 0.2);
}

.forms .inline {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    justify-content: space-between;
    box-sizing: border-box;
}

.forms .inline>* {
    width: calc(100%/3 - 5px);
    box-sizing: border-box;
}

.forms .inline-2>* {
    width: calc(100%/2 - 5px);
}

.forms span {
    display: block;
}

.forms .full {
    flex: 100%;
    max-width: 100%;
}

.forms .inline .btn {
    min-width: 100%;
}

.forms input:focus,
.forms textarea:focus {
    background: rgba(0, 0, 0, 0.8) !important;
    color: #fff;
}

::-webkit-input-placeholder {
    opacity: 1;
}

::-moz-placeholder {
    opacity: 1;
}

@media screen and (max-width:759px) {
    article .forms .input {
        display: block;
        width: 100%;
    }

    article .forms .inline {
        border: none;
        min-height: 0px;
    }

    .forms .inline>* {
        width: 100%;
    }

    .forms .wide {
        max-width: 100%;
    }
}

.ra-select {
    display: flex;
    align-items: center;
}

.ra-select em {
    font-style: normal;
    margin-right: auto;
}

.ra-select .custom-radio {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    margin-left: 10px;
    margin-bottom: 10px;
}

.ra-select .custom-radio input[type=radio] {
    position: absolute;
    left: -999px;
}

.ra-select .custom-radio label {
    display: block;
    width: 42px;
    height: 42px;
    line-height: 42px;
    text-align: center;
    background-color: #00659a;
}

.ra-select .custom-radio input[type="radio"]:checked+label {
    background: #1d3d62;
    color: white;
}

[class^="btn"] {
    min-width: 250px;
    display: inline-block;
    padding: 25px 10px;
    margin: 0 5px 5px 0;
    box-sizing: border-box;
    text-align: center;
    color: #212629;
    line-height: 1;
    font-size: 16px;
    letter-spacing: .05em;
    font-weight: bold;
    border: 2px solid #212629;
}

[class^="btn"]:hover {
    text-decoration: none;
    background-color: #00659a;
    color: white;
}

.btn-alt {
    background-color: white;
    border-color: white;
    color: #1d3d62;
}

.btn-alt:hover {
    background-color: #00659a;
}

.btn-clear {
    background: none;
    border-color: white;
    color: white;
}

.more-to-explore {
    text-align: center;
    margin: 0 0 -60px;
    padding: 80px 0 60px;
    position: relative;
    z-index: 10;
}

.more-to-explore:before {
    content: "";
    position: absolute;
    left: -999px;
    top: 0;
    bottom: 0;
    right: -999px;
    background: #1d3d62;
    z-index: -1;
}

.more-to-explore span {
    margin-bottom: 30px;
    font-size: 30px;
    color: white;
}

.more-to-explore .btn,
.more-to-explore .btn-alt {
    min-width: 32%;
    margin: 0 .5% 10px;
    border-color: white;
    color: white;
}

.more-to-explore .btn-alt {
    color: #212629;
}

.more-to-explore .btn-alt:hover {
    color: white;
}

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

    .more-to-explore .btn,
    .more-to-explore .btn-alt {
        min-width: 48%;
        margin: 0 1% 5px;
    }
}

@media screen and (max-width:600px) {

    .more-to-explore .btn,
    .more-to-explore .btn-alt {
        min-width: 100%;
        margin: 0 0 5px;
    }
}

main ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
    overflow: hidden;
}

main ul li {
    position: relative;
    padding-left: 30px;
}

main ul li:before {
    content: "\e832";
    color: #212629;
    font-size: 17px;
    position: absolute;
    left: 0;
    top: 0;
    font-family: "fontello";
}

.logo {
    display: block;
    text-align: center;
    color: #212629;
}

.logo img {
    margin: 0 auto;
    display: block;
}

.logo .tag {
    display: block;
    font-size: 11px;
}

.logo .tag b {
    margin: 0 1em;
    color: #00659a;
}

header {
    position: absolute;
    z-index: 1010;
    line-height: 1;
    width: 100%;
    left: 0;
    top: 0;
    background: white;
}

header a:hover {
    text-decoration: none;
}

header .safety-page {
    display: block;
    background: #00659a;
    text-align: center;
    color: white;
    font-weight: bold;
    padding: 8px 10px;
    font-size: 16px;
}

header .safety-page:hover {
    background: #1d3d62;
}

header #hd-contents {
    max-width: 1300px;
    margin: 0 auto;
    padding: 10px;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
}

header #hd-container {
    flex: 100%;
    max-width: 800px;
}

header #hd-info {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 10px;
}

header #hd-info address a {
    color: #212629;
    font-size: 15px;
    font-weight: 500;
    margin-right: 20px;
}

header #hd-info address a:hover {
    color: #1d3d62;
}

header #hd-info .phone {
    display: block;
    color: #212629;
    font-size: 18px;
    font-weight: bold;
    margin-left: 20px;
}

header #hd-info .phone:hover {
    color: #1d3d62;
}

header #hd-info .btn-app {
    margin: 0 0 0 30px;
    padding: 10px;
    border: none;
    background: #00659a;
    color: white;
}

header #hd-info .btn-app:hover {
    background: #1d3d62;
}

nav#main-nav {
    flex: 100%;
    align-items: center;
}

nav#main-nav ul {
    margin: 0px;
    padding: 0px;
    text-align: center;
    flex: 100%;
    list-style: none;
}

nav#main-nav>ul {
    max-width: 100%;
    display: flex;
    justify-content: space-between;
}

nav#main-nav ul li {
    display: inline-block;
    position: relative;
}

nav#main-nav>ul>li:last-of-type>ul {
    left: auto;
    right: 0;
}

nav#main-nav ul li a {
    color: #212629;
    padding: 0 5px;
    font-size: 20px;
    line-height: 34px;
    font-weight: bold;
    display: block;
}

nav#main-nav ul li a:hover {
    text-decoration: none;
    color: #1d3d62;
}

nav#main-nav ul ul {
    display: none;
    width: 280px;
    text-align: left;
    position: absolute;
    left: 0;
    top: 34px;
    list-style: none;
    background-color: #212629;
    z-index: 1020;
    line-height: 1;
    font-size: 0;
}

nav#main-nav ul ul li {
    width: 100%;
}

nav#main-nav ul li:hover>ul {
    display: block;
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft;
    -webkit-animation-duration: .25s;
    animation-duration: .25s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

nav#main-nav ul ul li a {
    line-height: 1.6;
    padding: 5px 10px;
    font-weight: 300;
    text-transform: none;
    color: white;
    font-size: 15px;
}

nav#main-nav ul ul li a:hover {
    background: #1d3d62;
    color: white;
}

nav#main-nav ul ul ul {
    left: 280px;
    top: 0;
}

nav#main-nav ul ul ul ul {
    position: static;
    display: block;
    left: 0;
    background: rgba(0, 0, 0, 0.8);
}

nav#main-nav ul ul ul ul li a {
    padding-left: 40px;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

.fix-nav.page_index header,
.fix-nav header {
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 1010;
    animation-duration: .5s;
    animation-fill-mode: both;
    animation-name: slideIn;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
}

.container {
    max-width: 98%;
    margin: 0 1%;
}

@media screen and (min-width:1250px) {
    .container {
        max-width: 1250px;
        margin: 0 auto;
    }
}

#page {
    padding: 0 0 60px;
    overflow: hidden;
}

#page-banner {
    background: #1d3d62;
    padding: 80px 0;
    margin-bottom: 60px;
    position: relative;
    z-index: 10;
}

#page-banner #page-title {
    box-sizing: border-box;
    padding: 10px;
}

#page-banner h1,
#page-banner h2 {
    color: white;
}

#page-banner.has-img {
    min-height: 760px;
    display: flex;
    align-items: center;
    background: #212629;
}

#page-banner.has-img #page-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    bottom: 0;
    z-index: -1;
}

#page-banner.has-img .container {
    flex: 100%;
}

#page-banner.has-attach .container {
    max-width: 1250;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#page-banner.has-attach .attach {
    margin: 0 auto;
}

#page-banner.has-attach .forms {
    background: none;
    text-align: center;
}

#page-banner.has-attach .forms textarea {
    height: 160px;
}

#intro {
    font-size: 30px;
    line-height: 1.5;
}

.hours {
    display: block;
    text-align: left;
    max-width: 300px;
    line-height: 1.5;
}

.hours b,
.hours label {
    display: inline-block;
    min-width: 110px;
}

.social {
    margin: 0px;
    display: block;
}

.social a {
    display: inline-block;
    vertical-align: top;
    margin: 0px;
}

.social a i:before {
    font-size: 36px;
    color: white;
    line-height: 1;
    display: block;
    transition: .2s;
    padding: 10px;
    border-radius: 50%;
}

.social a:hover {
    text-decoration: none;
}

.social a:hover i.icon-facebook:before {
    color: #4d70a8;
}

.social a:hover i.icon-gplus:before {
    color: #dc4e41;
}

.social a:hover i.icon-yelp:before {
    color: #b62717;
}

.social a:hover i.icon-youtube:before {
    color: #d00;
}

.social a:hover i.icon-instagramm:before {
    color: #833ab4;
}

footer {
    background: #212629;
    line-height: 1;
    position: relative;
    color: white;
    font-size: 18px;
}

footer .fo-title {
    display: block;
    font-size: 30px;
    margin-bottom: 10px;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1;
}

footer #fo-contents {
    max-width: 1300px;
    flex: 100%;
    margin: 0 auto;
    justify-content: space-between;
    padding: 60px 0;
    box-sizing: border-box;
}

footer #fo-contents a:hover {
    text-decoration: none;
}

footer #fo-form {
    max-width: 300px;
    flex: 100%;
    box-sizing: border-box;
    padding: 0 10px 10px;
    color: white;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
}

footer .forms {
    max-width: 300px;
    margin: 0;
    overflow: hidden;
}

footer .forms input,
footer .forms textarea {
    font-size: 16px;
    color: #212629;
    position: relative;
    text-align: left;
    margin: 0px;
}

footer .forms textarea {
    height: 80px;
}

footer .forms input:invalid,
footer .forms input:required {
    outline: none;
    border: none;
    box-shadow: none;
}

footer .forms .btn-clear {
    min-width: 80px;
    margin: 0 0 0 10px;
    padding: 10px 5px;
    white-space: nowrap;
}

footer .forms .tab-field {
    display: flex !important;
    align-items: center;
}

footer .hours {
    flex: 100%;
    max-width: 480px;
}

footer .hours .flex-ed {
    justify-content: space-between;
}

footer .hours b {
    min-width: 60px;
}

footer #copy {
    max-width: 1300px;
    margin: 0 auto;
    padding: 40px 0;
    text-align: right;
    font-size: 16px;
    font-family: "fonts/Helvetica Neue", Arial, sans-serif;
    font-weight: 100;
    letter-spacing: 1.6px;
}

footer #copy a {
    color: white;
}

footer #copy a:hover {
    text-decoration: none;
    color: white;
}

body.page_index #page {
    display: none;
}

body.page_index h1,
body.page_index h2,
body.page_index .h2,
body.page_index h3,
body.page_index .h3 {
    margin: 0px;
    line-height: 1;
}

body.page_index h2,
body.page_index .h2 {
    font-size: 80px;
    color: #1d3d62;
}

body.page_index h2 span,
body.page_index .h2 span {
    display: block;
}

body.page_index h2 small,
body.page_index .h2 small {
    font-size: 15px;
    display: block;
    margin-bottom: 10px;
    letter-spacing: .3em;
    text-transform: uppercase;
}

.section {
    max-width: 1250px;
    margin: 0 auto;
}

.section article {
    box-sizing: border-box;
    padding: 10px;
}

.section figure {
    position: relative;
}

.section figure img {
    display: block;
}

.section.flex-ed {
    align-items: center;
    justify-content: space-between;
}

.section.flex-ed article {
    max-width: 600px;
}

.name {
    position: absolute;
    left: 0;
    bottom: 0;
    box-sizing: border-box;
    padding: 10px;
    font-weight: bold;
    letter-spacing: .08em;
    font-size: 16px;
}

#banner {
    position: relative;
    overflow: hidden;
}

#banner figure img {
    display: block;
    width: 100%;
}

#banner article {
    text-align: center;
    box-sizing: border-box;
    padding: 50px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    text-align: left;
}

#banner article h1 {
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: .2em;
    color: #1d3d62;
    margin-bottom: 20px;
}

#banner article h2 {
    font-size: 80px;
    line-height: 1.2;
    color: #1d3d62;
}

#banner video {
    width: 100%;
    display: block;
    opacity: .5;
}

#banner.playing {
    z-index: 1011;
}

#banner.playing article {
    display: none;
}

#banner .play-btn {
    display: block;
    font-size: 40px;
    font-weight: 700;
    margin-top: 20px;
}

#banner .play-btn:hover {
    text-decoration: none;
    color: #00659a;
}

body.playing.not-scrolled header {
    z-index: 1012;
}

#welcome {
    padding: 80px 0 102px;
}

#welcome article {
    font-size: 30px;
    line-height: 1.2;
}

#welcome .callouts {
    flex-flow: wrap;
    justify-content: space-between;
    text-align: center;
}

#welcome .callouts>* {
    max-width: 396px;
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
}

#welcome .callouts h3 {
    text-shadow: 1px 1px 10px rgba(1, 1, 1, 0.25);
    font-size: 20px;
    width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    color: white;
}

#welcome .callouts img {
    transition: .3s;
    display: block;
}

#welcome .callouts a:hover img {
    transform: scale(1.2);
}

#welcome article b {
    color: #1d3d62;
}

@media screen and (min-width:1250px) {
    #welcome article {
        max-width: 80%;
    }
}

#meet {
    position: relative;
    text-align: center;
}

#meet img {
    width: 100%;
    display: block;
}

#meet h2,
#meet .h2 {
    color: #1d3d62;
    text-shadow: 1px 1px 10px rgba(1, 1, 1, 0.25);
}

#meet a {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    justify-content: center;
    width: 100%;
    display: flex;
    align-items: center;
    flex-flow: column;
    z-index: 10;
}

#meet a .btn-clear {
    margin: 20px 0 0;
    transition: 0.3s;
    color: #1d3d62;
    border-color: #1d3d62;
}

#meet a:hover {
    text-decoration: none;
    background: rgba(34, 31, 32, 0.4);
}

#meet a:hover h2,
#meet a:hover .h2 {
    color: white;
}

#meet a:hover .btn-clear {
    background: #1d3d62;
    color: white;
    border-color: white;
}

#stories {
    padding: 140px 0;
}

#stories .slick-stories {
    margin-top: -100px;
}

#stories .slick-stories .stories-slide {
    display: flex !important;
    justify-content: space-between;
    align-items: flex-end;
}

#stories .slick-stories .stories-slide .quote {
    display: block;
    box-sizing: border-box;
    padding: 50px;
    background: #f2f7fa;
    max-width: 600px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: bold;
    flex: 100%;
    height: 488px;
    color: #1d3d62;
}

#stories .slick-stories .stories-slide .quote:after,
#stories .slick-stories .stories-slide .quote:before {
    display: block;
    height: 73px;
    width: 81px;
    /*    background: url(assets/images/index-quote.png) left top no-repeat;*/
    content: "";
}

#stories .slick-stories .stories-slide .quote:after {
    transform: scale(-1);
    float: right;
}

#stories .slick-stories .stories-slide .stories-play a {
    display: block;
    position: relative;
}

#stories .slick-stories .stories-slide .stories-play a:before {
    width: 1em;
    height: 1em;
    line-height: 1;
    transform: translateX(-50%);
    text-align: center;
    content: "\e938";
    color: white;
    border: 5px solid white;
    font-size: 60px;
    border-radius: 50%;
    padding: 30px;
    font-family: "fontello";
    position: absolute;
    left: 50%;
    top: 50%;
}

#stories .slick-stories .stories-slide figure {
    max-width: 599px;
    flex: 100%;
    background-position: left bottom;
    background-repeat: no-repeat;
}

#stories .slick-stories .stories-slide figure img {
    display: block;
    margin-left: 20px;
}

/*
#stories .slick-stories .stories-slide figure.stories-1 {
    background-image: url(assets/images/index-stories-bg-1.jpg);
}

#stories .slick-stories .stories-slide figure.stories-2 {
    background-image: url(assets/images/index-stories-bg-2.jpg);
}

#stories .slick-stories .stories-slide figure.stories-3 {
    background-image: url(assets/images/index-stories-bg-3.jpg);
}
*/

#stories #controls-wrapper {
    display: flex;
}

#stories #controls-wrapper #controls {
    max-width: 600px;
    flex: 100%;
    margin-left: auto;
}

.stories-modal {
    width: 90%;
}

.stories-modal .youtube {
    max-width: 100%;
}

.stories-modal img {
    width: 100%;
}

@media screen and (min-width:600px) {
    .stories-modal {
        width: 600px;
        max-width: 600px;
    }
}

#services .services-switch {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}

#services .slick-switch {
    max-width: 649px;
    flex: 100%;
}

#services #switch-nav, #services #switch-nav1 {
    max-height: 800px;
}

#services #switch-nav .slick-list, #services #switch-nav1 .slick-list {
    overflow: visible;
}

#services #switch-nav .slick-slide, #services #switch-nav1 .slick-slide {
    outline: none;
}

#services #switch-nav .card, #services #switch-nav1 .card {
    display: block !important;
    box-sizing: border-box;
    padding: 20px 10px;
    cursor: pointer;
    position: relative;
    outline: none;
}

#services #switch-nav .card h3, #services #switch-nav1 .card h3 {
    font-size: 30px;
    color: #1d3d62;
}

#services #switch-nav .card span, #services #switch-nav1 .card span {
    display: none;
}

#services #switch-nav .card em, #services #switch-nav1 .card em {
    font-style: normal;
    display: block;
    margin-top: 10px;
}

#services #switch-nav .card i, #services #switch-nav1 .card i {
    font-size: 22px;
}

#services #switch-nav .card a, #services #switch-nav1 .card a {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #00659a;
}

#services #switch-nav .card a:hover, #services #switch-nav1 .card a:hover {
    text-decoration: none;
}

#services #switch-nav .slick-current .card:before, #services #switch-nav1 .slick-current .card:before {
    width: 80px;
    height: 2px;
    background: #00659a;
    position: absolute;
    left: -80px;
    top: 30px;
    content: "";
}

#services #switch-nav .slick-current .card span, #services #switch-nav1 .slick-current .card span {
    display: block;
}

@media screen and (min-width:1250px) {
    #services article {
        max-width: 80%;
    }
}

#reviews {
    padding: 50px 0;
    color: white;
    background: #1e354f;
    margin: 160px 0;
}

#reviews h2,
#reviews .h2 {
    color: white;
}

#reviews-wrapper {
    position: relative;
}

#reviews-wrapper:before {
    position: absolute;
    right: 0;
    top: -70px;
    color: white;
    font-size: 50px;
    letter-spacing: .4em;
    line-height: 1;
}

#reviews .slick-reviews .review {
    font-size: 36px;
    font-style: italic;
    line-height: 1.2;
    box-sizing: border-box;
    padding: 20px 10px 20px 120px;
    position: relative;
}

#reviews .slick-reviews .review p {
    margin-top: 0px;
}

#reviews .slick-reviews .review author {
    font-size: 16px;
    letter-spacing: .1em;
    font-style: normal;
}

#reviews .slick-reviews .google-review:before {
    position: absolute;
    left: 0;
    content: "\e846";
    font-family: "fontello";
    font-size: 100px;
    line-height: 1;
    font-style: normal;
    top: 20px;
}

#reviews .slick-reviews .zocdoc-review:before {
    position: absolute;
    left: 0;
    top: 20px;
    width: 80px;
    height: 120px;
    content: "";
    /*    background: url(assets/images/index-zocdoc.png) left top no-repeat;*/
}

#reviews #controls-wrapper {
    display: flex;
    justify-content: space-between;
}

#reviews #controls-wrapper #controls .slick-dots li span, .gallery2 #controls1 .slick-dots li span {
    border-color: white;
}

#reviews #controls-wrapper #controls .slick-dots li.slick-active span, .gallery2 #controls1 .slick-dots li.slick-active span {
    background: white;
}

#reviews #controls-wrapper #controls #prev,
#reviews #controls-wrapper #controls #next, .gallery2 #controls1 #prev,
.gallery2 #controls1 #next {
    color: white;
}

#options {
    position: relative;
    text-align: center;
}

#options img {
    width: 100%;
    display: block;
}

#options h2,
#options .h2 {
    color: white;
    text-shadow: 1px 1px 10px rgba(1, 1, 1, 0.25);
}

#options a {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    justify-content: center;
    width: 100%;
    display: flex;
    align-items: center;
    flex-flow: column;
    z-index: 10;
}

#options a .btn-clear {
    margin: 20px 0 0;
    transition: .3s;
}

#options a:hover {
    text-decoration: none;
    background: rgba(34, 31, 32, 0.4);
}

#options a:hover .btn-clear {
    background: #1d3d62;
}

#options figure {
    position: relative;
}

#options .name {
    left: auto;
    right: 20px;
    bottom: 20px;
    color: white;
    text-shadow: 1px 1px 2px #000;
}

#giving,
#same-day {
    padding: 160px 0 80px;
}

#giving figure,
#same-day figure {
    position: relative;
}

#giving article>div {
    background: #f2f7fa;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
    color: #1d3d62;
    box-sizing: border-box;
    padding: 20px 50px;
    margin-top: 20px;
}

#same-day article>div {
    background: #f2f7fa;
    box-sizing: border-box;
    padding: 20px 50px;
    margin-top: 20px;
}

#giving .slick-giving {
    width: 286px;
    height: 296px;
    position: absolute;
    right: 75px;
    top: 69px;
}

@media screen and (min-width:1400px) {
    #giving h2 {
        width: 110%;
    }

    #same-day h2 {
        width: 110%;
    }
}

#assoc {
    padding: 80px 0;
}

#assoc .flex-ed {
    justify-content: space-around;
    flex-flow: wrap;
}

#assoc .flex-ed>* {
    max-width: calc(100% / 5);
    flex: 100%;
    border-right: 1px solid #212629;
    border-bottom: 1px solid #212629;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 10px;
}

#assoc .flex-ed> :nth-child(5) {
    border-right: none;
}

#assoc .flex-ed> :nth-child(6),
#assoc .flex-ed> :nth-child(7),
#assoc .flex-ed> :nth-child(8),
#assoc .flex-ed> :nth-child(9) {
    border-bottom: none;
}

#assoc .flex-ed> :last-of-type {
    border: none;
}

.page-services {
    margin-top: 40px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
}

.page-services a:hover {
    text-decoration: none;
    color: #1d3d62;
}

.page-services>div {
    flex: 100%;
    max-width: 376px;
    margin-bottom: 40px;
    background: #00659a;
    text-align: center;
}

.page-services p {
    margin: 0 auto;
    position: relative;
    line-height: 1;
    font-size: 19px;
}

.page-services p img {
    margin-left: -10px;
}

.page-services p span {
    display: block;
    padding: 15px 10px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 10;
    background: #1d3d62;
}

.page-services p a {
    display: block;
    padding: 0;
    color: white;
    box-sizing: border-box;
    font-size: 20px;
    font-weight: 700;
}

.page-services p a:hover {
    color: #1d3d62;
}

.page-services p a:hover span {
    background: white;
}

.page-services ul {
    max-width: 376px;
    padding: 0px;
    margin: 20px auto;
    list-style: none;
    line-height: 1;
}

.page-services ul li {
    margin-bottom: 10px;
    padding: 0px;
}

.page-services ul li:before {
    display: none;
}

.page-services ul li a {
    color: white;
    font-size: 16px;
    font-weight: 700;
    display: block;
    padding: 10px;
    box-sizing: border-box;
}

.page-services ul li a:hover {
    text-decoration: none;
    background: white;
    color: #1d3d62;
}

.accordion .toggle {
    font-size: 30px;
    font-weight: 300;
    color: #212629;
    background-color: #f2f7fa;
    cursor: pointer;
    padding: 20px 10px 20px 80px;
    position: relative;
    margin: 10px 0 0;
    text-align: left;
}

.accordion .toggle:before {
    content: "\e81a";
    font-family: "fontello";
    font-size: 48px;
    font-style: normal;
    position: absolute;
    left: 20px;
    top: 15px;
    display: block;
    color: #221f20;
    line-height: 1;
    transition: .3s;
    width: 1em;
    height: 1em;
}

.accordion .toggle.active {
    border: none;
}

.accordion .toggle.active:before {
    content: "\e825";
}

.accordion .accordion-content {
    display: none;
    padding: 5px 10px 10px 80px;
    margin: 0 auto;
    background: #f2f7fa;
}

.accordion .accordion-content p:first-of-type {
    margin-top: 0px;
}

@media screen and (max-width:600px) {
    .accordion .accordion-content {
        max-width: 100%;
    }
}

main .slick-slider {
    max-width: 100%;
    margin: 20px auto;
}

main .slick-slider .slick-slide img {
    margin: 0 auto;
    display: block;
}

main .slick-slider .caption {
    display: block;
    box-sizing: border-box;
    padding: 20px;
    font-size: 30px;
    line-height: 1.1;
    text-align: center;
}

main .slick-gallery .case {
    display: flex !important;
    flex-flow: wrap;
    justify-content: space-around;
}

main .slick-gallery .case img {
    display: block;
}

main .slick-gallery .case .before,
main .slick-gallery .case .after {
    position: relative;
}

main .slick-gallery .case .before:after,
main .slick-gallery .case .after:after {
    position: absolute;
    right: 20px;
    bottom: 10px;
    color: white;
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
}

main .slick-gallery .case .after:after {
    content: "After";
}

main .slick-gallery .case .before:after {
    left: 20px;
    right: auto;
    content: "Before";
}

#controls, #control1 {
    align-items: center;
    justify-content: center;
}

#controls .slick-dots li span, #controls1 .slick-dots li span {
    width: 1em;
    height: 1em;
    line-height: 1;
    cursor: pointer;
    background-color: none;
    border: 1px solid #1b459c;
    display: inline-block;
    margin: 0 5px;
    font-size: 13px;
    border-radius: 50%;
}

#controls .slick-dots li.slick-active span, #controls1 .slick-dots li.slick-active span {
    background: #1b459c;
}

#controls.flex-ed #next, #controls1.flex-ed #next {
    order: 2;
}

#prev,
#next {
    font-size: 48px;
    z-index: 100;
    line-height: 1;
    border-radius: 50%;
    padding: 5px;
}

#prev i:before,
#next i:before {
    margin: 0px;
    width: 1em;
}

.slick-slider #prev,
.slick-slider #next {
    position: absolute;
    left: -50px;
    top: 50%;
    transform: translateY(-50%);
}

.slick-slider #next {
    right: -50px;
    left: auto;
}

.why {
    text-align: center;
    padding: 220px 0 60px;
    line-height: 1;
    margin-top: 0px;
    background: #212629;
    position: relative;
}

.why:before {
    position: absolute;
    left: 30px;
    top: 30px;
    content: "Why Choose";
    color: #f2f7fa;
    font-size: 160px;
    font-weight: 700;
    line-height: 1;
    opacity: .2;
}

.why h2 {
    color: white;
}

.why ul {
    max-width: 980px;
    margin: 60px auto 0;
    padding: 0px;
    display: flex;
    justify-content: space-around;
    color: white;
    font-size: 20px;
    font-weight: 700;
    overflow: visible;
}

.why ul li {
    flex: 100%;
    padding: 0px;
    max-width: 28%;
    box-sizing: border-box;
}

.why ul li:before {
    display: none;
}

@media screen and (max-width:600px) {
    .why .why ul {
        flex-flow: wrap;
    }

    .why .why ul li {
        max-width: 100%;
    }
}

.page-divider {
    margin-top: 40;
}

.pd-img,
.pd-anchor {
    margin: 0px;
}

.pd-block {
    padding: 100px 0;
    position: relative;
}

.pd-alt:before {
    position: absolute;
    left: -999px;
    right: -999px;
    top: 0;
    bottom: 0;
    content: "";
    background-color: #f2f7fa;
    z-index: -1;
}

.pd-title {
    margin: 0px;
}

.pd-body {
    width: 100%;
}

.pd-wrap {
    display: table;
    width: 100%;
}

.block {
    display: table;
    width: 100%;
}

@media screen and (min-width:1200px) {
    .block .elem-right {
        padding-right: 292px;
    }

    .block .elem-left {
        padding-left: 292px;
    }
}

#lean_overlay {
    position: fixed;
    z-index: 1100;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: none;
    justify-content: center;
    align-items: center;
}

.modal-close {
    position: absolute;
    right: -15px;
    top: -15px;
    width: 30px;
    color: #fff;
    z-index: 1002;
    border-radius: 50%;
    border: 2px solid white;
    background: #000;
    cursor: pointer;
    transform-origin: center center;
    transform: rotate(45deg);
    margin: 0;
    text-align: center;
    font: normal 28px/30px Arial;
    box-shadow: 0 0 4px 2px rgba(0, 0, 0, 0.3);
}

.modal-close:before {
    content: "+";
}

.modal-content {
    display: none;
    flex: 100%;
    position: relative;
}

.docs-landing {
    flex-flow: wrap;
    justify-content: space-around;
    margin: 40px 0;
}

.docs-landing>* {
    margin: 0 0 10px;
    max-width: 396px;
    flex: 100%;
}

.docs-landing img {
    display: block;
    margin-bottom: 20px;
    transition: .3s;
}

.docs-landing .btn {
    min-width: 100%;
}

.docs-landing a:hover img {
    filter: grayscale(100%);
}

.page-split.page-about {
    padding: 100px 0;
}

.page-split.page-about>div {
    box-sizing: border-box;
    padding: 20px;
}

.about-light {
    position: relative;
}

.about-light:before {
    position: absolute;
    left: -999px;
    right: -999px;
    top: 0;
    bottom: 0;
    content: "";
    background: #f2f7fa;
    z-index: -1;
}

.meet-video {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    background-color: rgba(78, 89, 120, 0.07);
    padding: 30px 10px;
}

.meet-video span {
    font-size: 35px;
    line-height: 1.2;
}

.meet-video .youtube {
    flex: 0 1 480px;
}

.fluid-vid {
    padding-top: 21.25% !important;
    margin: 20px 0;
    max-width: 450px;
}

.page_media-and-press h2 {
    margin: 40px 0;
}

@media screen and (max-width:1250px) {
    img {
        max-width: 100%;
    }

    .logo img {
		width: auto;
        height: 46px;
    }

    header #hd-info .phone {
        font-size: 16px;
        margin-left: 0px;
    }

    nav#main-nav ul li a {
        font-size: 16px;
    }

    #welcome .callouts {
        justify-content: space-around;
    }

    #services #switch-nav .card h3, #services #switch-nav1 .card h3 {
        font-size: 20px;
    }

    #services .slick-switch {
        max-width: 600px;
    }

    body.page_index h2,
    body.page_index .h2 {
        font-size: 50px;
    }

    footer .hours {
        max-width: 240px;
    }

    footer .hours .flex-ed {
        display: block;
    }

    #page-title h2#append,
    #page-title h1:only-child {
        font-size: 50px;
    }

    #page-banner.has-img {
        min-height: 460px;
    }

    .page-services {
        justify-content: space-around;
    }
}

@media screen and (max-width:1023px) {
    body {
        padding: 0 10px;
    }

    header {
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
    }

    .attach #hd-top {
        display: none;
    }

    .attach header {
        position: fixed;
    }

    nav#main-nav {
        display: none;
    }

    body,
    header,
    .mean-container .mean-nav {
        -webkit-transition: all .3s;
        transition: all .3s;
    }

    body {
        right: 0;
        position: relative;
    }

    body.mean-active header {
        left: -80%;
        position: fixed;
    }

    body.mean-active {
        overflow: hidden;
        right: 80%;
    }

    body.mean-active:before {
        z-index: 98;
        content: '';
        opacity: 0.7;
        background-color: #000;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
    }

    body.mean-active .mean-container .mean-nav {
        right: 0;
    }

    .mean-container .mean-bar,
    .mean-container .mean-nav {
        background-color: #212629;
    }

    a.meanmenu-reveal {
        display: none;
    }

    .mean-container {
        display: -webkit-box !important;
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        -webkit-flex-flow: row nowrap !important;
        -ms-flex-flow: row nowrap !important;
        flex-flow: row nowrap !important;
        -webkit-box-align: center !important;
        -webkit-align-items: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
        -webkit-box-pack: justify !important;
        -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .mean-container .mean-bar {
        flex: 0 !important;
        margin: 8px;
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
    }

    .mean-container a.meanmenu-reveal {
        width: 22px;
        height: 22px;
        padding: 10px 9px 8px 9px;
        cursor: pointer;
        color: #fff !important;
        text-decoration: none;
        font-size: 16px;
        line-height: 22px;
        display: block;
        font-family: Arial, fonts/Helvetica, sans-serif;
        font-weight: 700;
    }

    .mean-container a.meanmenu-reveal span {
        display: block;
        background: #fff;
        height: 3px;
        margin-top: 3px;
    }

    .mean-container .mean-nav {
        font-size: 16px;
        position: fixed;
        right: -80%;
        margin: 0;
        top: 0;
        bottom: 0;
        width: 80%;
        overflow: auto;
        display: flex;
        flex-flow: column;
    }

    .mean-container .mean-nav ul {
        padding: 0;
        margin: 0;
        width: 100%;
        list-style-type: none;
    }

    .mean-container .mean-nav ul li {
        position: relative;
        float: left;
        width: 100%;
    }

    .mean-container .mean-nav ul li a {
        display: block;
        float: left;
        width: 90%;
        padding: 1em 5%;
        margin: 0;
        text-align: left;
        color: #fff;
        border-top: 1px solid #383838;
        border-top: 1px solid rgba(255, 255, 255, 0.5);
        text-decoration: none;
    }

    .mean-container .mean-nav ul li li a {
        width: 80%;
        padding: 1em 10%;
        border-top: 1px solid #f1f1f1;
        border-top: 1px solid rgba(255, 255, 255, 0.25);
        opacity: .75;
        filter: alpha(opacity=75);
        text-shadow: none !important;
        visibility: visible;
    }

    .mean-container .mean-nav ul li.mean-first a {
        border-top: none;
        margin-top: 0;
    }

    .mean-container .mean-nav ul li.mean-last a {
        border-bottom: none;
        margin-bottom: 0;
    }

    .mean-container .mean-nav ul li li li a {
        width: 70%;
        padding: 1em 15%;
    }

    .mean-container .mean-nav ul li li li li a {
        width: 60%;
        padding: 1em 20%;
    }

    .mean-container .mean-nav ul li li li li li a {
        width: 50%;
        padding: 1em 25%;
    }

    .mean-container .mean-nav ul li a:hover {
        background: #252525;
        background: rgba(255, 255, 255, 0.1);
    }

    .mean-container .mean-nav ul li a.mean-expand {
        margin-top: 1px;
        width: 24px;
        height: 24px;
        padding: 12px !important;
        text-align: center;
        position: absolute;
        right: 0;
        top: 0;
        z-index: 2;
        font-weight: 700;
        background: rgba(255, 255, 255, 0.1);
        border: none !important;
        border-left: 1px solid rgba(255, 255, 255, 0.4) !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
    }

    .mean-container .mean-nav ul li a.mean-expand:hover {
        background: rgba(0, 0, 0, 0.9);
    }

    .mean-container .mean-push {
        float: left;
        width: 100%;
        padding: 0;
        margin: 0;
        clear: both;
        width: 0;
    }

    .mean-nav .wrapper {
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .mean-container .mean-bar,
    .mean-container .mean-bar * {
        box-sizing: content-box;
    }

    .mean-remove {
        display: none !important;
    }

    .mean-container .mean-nav ul li a.mean-expand::before {
        content: '\e825';
        font-family: 'fontello';
        font-weight: 300;
        margin: 0;
        font-style: normal;
    }

    .mean-container .mean-nav ul li a.mean-expand.mean-clicked::before {
        content: '\e83a';
    }

    body.mean-active .mean-container a.meanmenu-reveal i {
        transform: rotate(45deg);
        display: block;
    }

/*     .nav-up {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    } */

    .container {
        max-width: 96%;
        margin: 0 2%;
    }

    .logo {
        flex: 1 0 auto;
    }

    .logo .tag {
        display: none;
    }

    header .social {
        background: rgba(0, 0, 0, 0.5);
        box-sizing: border-box;
        padding: 0;
        text-align: center;
    }

    header .social a i:before {
        margin: 0px;
    }

    header .social .fo-title {
        display: none;
    }

    header .hours {
        margin: 40px auto 60px;
        color: white;
    }

    header .hours .flex-ed {
        display: block;
    }

    header .hours .fo-title {
        display: block;
        font-size: 18px;
        text-align: center;
    }

    header #hd-info {
        justify-content: center;
    }

    header .safety-page {
        display: none;
    }

    header .btn-app {
        display: none;
    }

    #banner article h2 {
        font-size: 50px;
    }

    #banner article {
        padding: 20px 10px;
        position: static;
        transform: none;
    }

    #banner article h1,
    #banner article h2,
    #banner article .h2 {}

    #banner .play-btn {
        font-size: 20px;
    }

    #welcome {
        padding: 60px 0;
    }

    #welcome .callouts>* {
        max-width: 49%;
    }

    #stories .slick-stories {
        margin-top: 0px;
    }

    #stories .slick-stories .stories-slide {
        flex-flow: wrap;
        justify-content: space-around;
    }

    #stories .slick-stories .stories-slide figure {
        display: none;
    }

    #stories #controls-wrapper #controls {
        max-width: 100%;
    }

    #stories .slick-stories .stories-slide .quote {
        max-width: 100%;
    }

    #stories {
        padding: 60px 0;
    }

    #services .slick-switch {
        display: none;
    }

    #services #switch-nav, #services #switch-nav1 {
        max-height: none;
    }

    #services #switch-nav .slick-current .card:before, #services #switch-nav1 .slick-current .card:before {
        left: 0;
        top: 0;
        width: 2px;
        height: 100%;
    }

    #services #switch-nav .slick-list, #services #switch-nav1 .slick-list,
    .slick-slider .slick-track {
        height: auto !important;
    }

    #reviews {
        margin: 60px 0;
    }

    #reviews .slick-reviews .review {
        font-size: 20px;
        padding: 20px 10px;
    }

    #reviews .slick-reviews .review:before {
        position: static;
        display: block;
        font-size: 40px;
        margin-bottom: 20px;
    }

    #reviews .slick-reviews .zocdoc-review:before {
        height: 40px;
        background-size: auto 40px;
    }

    #reviews #controls-wrapper {
        justify-content: center;
        flex-flow: wrap;
    }

    #reviews-wrapper:before {
        top: 20px;
        font-size: 20px;
    }

    #meet a,
    #options a {
        position: static;
        padding: 40px 10px;
        box-sizing: border-box;
    }

    #meet a h2,
    #meet a .h2,
    #options a h2,
    #options a .h2 {
        color: #1d3d62;
    }

    #giving {
        padding: 60px 0;
    }

    #giving figure {
        order: 2;
    }

    #same-day {
        padding: 60px 0;
    }

    #options .btn-clear {
        border: 2px solid #212629;
        color: #212629;
    }

    .section.flex-ed {
        flex-flow: wrap;
        justify-content: space-around;
    }

    #page-banner.has-attach .container {
        flex-flow: wrap;
        justify-content: space-around;
        text-align: center;
    }

    footer #fo-contents {
        flex-flow: column;
        justify-content: center;
        align-items: center;
        padding: 40px 0;
    }

    footer .hours {
        margin-bottom: 20px;
    }

    footer .fo-title {
        text-align: center;
    }

    footer #copy {
        padding-bottom: 60px;
        text-align: center;
        line-height: 1.4;
    }

    footer #copy span {
        display: block;
    }

    footer #copy span span {
        display: none;
    }

    .social a i:before {
        font-size: 20px;
    }

    #page-banner.has-img {
        min-height: 0px;
    }

    #page-banner.has-img #page-img {
        /* background: #1d3d62; */
    }

    .page-services p img {
        margin: 0px;
    }

    #intro {
        font-size: 24px;
    }

    #assoc {
        padding: 40px 0;
    }

    #assoc .flex-ed>* {
        padding: 10px 5px;
    }

    .page-about {
        flex-flow: wrap;
    }

    .why {
        background-image: none !important;
    }

    .elem-right,
    .elem-left {
        max-width: 100%;
        float: none !important;
        margin: 0 auto 15px !important;
        display: block;
    }
}

@media (max-width:700px) {
    .fluid-vid {
        padding-top: 50.25% !important;
    }
}

@media screen and (max-width:600px) {

    #banner article,
    body {
        text-align: center;
    }

    body.page_index h2 small,
    body.page_index .h2 small {
        letter-spacing: .1em;
    }

    body.page_index h2,
    body.page_index .h2 {
        font-size: 40px;
    }

    header #hd-info {
        display: none;
    }

    header #hd-info address {
        display: none;
    }

    #welcome .callouts>* {
        max-width: 100%;
    }

    #services .services-switch {
        display: block;
    }

    #stories .slick-stories .stories-slide .quote {
        padding: 10px;
        height: auto;
    }

    #map {
        display: none;
    }

    #giving article>div {
        font-size: 24px;
        padding: 10px;
    }

    #assoc {
        display: none;
    }

    #giving .slick-giving {
        position: static;
        margin: 0 auto;
    }

    #giving figure>img {
        display: none;
    }

    .why {
        background-size: cover;
        padding: 40px 10px;
        box-sizing: border-box;
    }

    .why:before {
        display: none;
    }

    .why ul {
        flex-flow: wrap;
    }

    .why ul li {
        max-width: 100%;
        margin-bottom: 20px;
    }
}

.section-toggle {
    display: none;
    margin-top: 20px;
}

button.togg {
    transition: .4s all;
}

.section-toggle {
    display: none;
    padding: 30px 20px;
    max-width: 97%;
    margin: 0 auto 0;
    position: relative;
    z-index: 12;
}

.togg-container {
    max-width: 1050px;
    margin: auto;
}

button.togg {
    transition: .4s all;
}

.sv-close {
    background-color: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
}

.sv-close svg {
    margin-left: 10px;
    max-width: 50px;
    height: auto;
    transition: .3s all;
}

.sv-close svg:hover svg * {
    fill: #00659a
}

.sv-close svg:hover svg * #Path_2166 {
    fill: #fff;
}

#gallery,
#smileGallery,
#index-ba-gallery {
    position: relative;
    text-align: center;
    margin: 0 auto;
}

#gallery article,
#smileGallery .galleryCase {
    width: 100%;
    text-align: center;
}

#smileGallery .galleryCase>div {
    display: inline-block;
    margin: 1%;
    vertical-align: middle;
}

#smileGallery .galleryCase>div img {
    display: block;
    margin: 0 auto 10px;
}

#gallery article figure {
    margin: 0 auto;
    box-shadow: 0 0 0 3px #fff;
    display: inline-block;
}

#gallery article div {
    max-width: 250px;
    float: left;
}

#gallery article div:last-of-type {
    border-top: 3px solid #fff;
    clear: left;
}

#gallery article img {
    display: block;
    margin: 0 auto;
}

#gallery article div span {
    background-color: #466097;
    padding: 0 10px;
    font-weight: 500;
    line-height: 34px;
    color: #fff;
    text-align: left;
    text-transform: uppercase;
    display: block;
}

#gallery article figure>img {
    float: right;
    border-left: 3px solid #fff;
}

#gallery .cycle-pager {
    margin-top: 20px;
}



/* gravity form */

#gform_1 {
    background-color: #212629;
    box-sizing: border-box;
    padding: 20px;
    color: white;
}

#gform_1 input,
#gform_1 textarea {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border: none;
    padding: 15px 10px;
    margin-bottom: 10px;
    color: inherit;
    line-height: 1em;
    transition: .3s ease all;
}

#gform_1 input:focus,
#gform_1 textarea:focus {
    background: rgba(0, 0, 0, 0.8) !important;
    color: #fff;
}

#gform_1 fieldset {
    padding: 35px 10px 10px 10px;
    background-color: rgba(38, 169, 223, 0.2);

}

#gform_1 fieldset input {
    width: auto;
    display: inline-block;
}

#gform_1 fieldset label {
    font-size: 20px;
    position: relative;
    bottom: 5px;
}

#gform_1 legend,
#gform_1 label {
    font-size: 18px;
}

#gform_1 fieldset legend {
    position: relative;
    top: 30px;
    left: 5px;
}

#gform_1 textarea {
    height: 75px;
}

#gform_1 select {
    width: 150px;
    color: #333;
    font-weight: 600;
}

#gform_1 option {
    font-weight: 400;
}

#gform_1 #field_submit {
    display: flex;
    justify-content: end;
}

#gform_1 #field_submit input[type="submit"] {
    background-color: white !important;
    color: black;
    width: 50%;
    cursor: pointer;
}

@media (max-width: 786px) {
    #gform_1 #field_submit input[type="submit"] {
        width: 100%;
    }
}

#gform_1 .gfield_required_text {
    display: none;
}

#gform_2 #gform_page_2_1 .top_label, 
#gform_2 #gform_page_2_2 .top_label, 
#gform_2 #gform_page_2_3 .top_label, 
#gform_2 #gform_page_2_4 .top_label, 
#gform_2 #gform_page_2_5 .top_label {
    margin: 0 0 0 10px;
    padding: 0;
}

#gform_2 input[type="text"], 
#gform_2 input[type="number"], 
#gform_2 input[type="email"], 
#gform_2 input[type="phone"], 
#gform_2 input[type="tel"], 
#gform_2 textarea {
    color: #000;
}

#gform_2 input[type="text"]:focus, 
#gform_2 input[type="number"]:focus, 
#gform_2 input[type="email"]:focus, 
#gform_2 input[type="phone"]:focus, 
#gform_2 input[type="tel"]:focus, 
#gform_2 textarea:focus {
    background: #000;
    color: #fff;
}

@media (max-width: 766px){
	.alignleft, .alignright{
		float: none !important;
	}
	
	
	
	#welcome .callouts img {
    opacity: 0 !important;
    object-fit: cover !important;
    height: 120px !important;
    width: 300px !important;
}

#welcome .callouts>* {
    border: 3px solid #00659a !important;
    border-radius: 20px !important;
	padding: 10px 20px !important;
}
	
	#welcome .callouts h3 {
    color: #212629 !important;
    text-shadow: none !important;
}
	
	#options, .ctm-mobile-off {
		display: none !important;
	}
	
 	#reviews-wrapper:before{
		top: -15px;
		left: 50%;
        transform: translate(-50%, -50%);
	}
	.slick-slider{
		margin-top: 40px;
	}
	#reviews .slick-reviews .zocdoc-review:before {
    background-size: 40px !important;
    height: 50px !important;
    width: 50px !important;
    margin-inline: auto !important;
}
	
	
	#stories {
        padding: 20px 0 !important;
    }
	#stories .slick-stories {
        margin-top: 20px !important;
    }
	
	#welcome {
        padding: 20px 0;
    }
	
	#welcome article{
		font-size: 20px !important;
	}
	
	  #same-day {
        padding: 15px 0 0;
    }
	
	
	#services .services-switch{
		margin-top: 25px !important;
	}
	
	#reviews {
        margin: 40px 0 0;
    }
	
	#banner article h2 {
        font-size: 40px;
    }
	
	.ctm-rev{
		margin-top: 15px !important;
	}
}
@media (max-width: 600px){
	.alignleft, .alignright{
	  margin: auto !important;
	}
}