/* CSS Document */
.row {
    max-width: 75rem;
}

.row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
}

.row .row.collapse {
    margin-right: 0;
    margin-left: 0;
}

.row.expanded {
    max-width: none;
}

.row.expanded .row {
    margin-right: auto;
    margin-left: auto;
}

.row:not(.expanded) .row {
    max-width: none;
}

.row.collapse>.columns,
.row.collapse>.columns {
    padding-right: 0;
    padding-left: 0;
}

.row.is-collapse-child,
.row.collapse>.column>.row,
.row.collapse>.columns>.row {
    margin-right: 0;
    margin-left: 0;
}

.row .column.row.row,
.row .columns.row.row {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
}

.small-collapse>.column,
.small-collapse>.columns {
    padding-right: 0;
    padding-left: 0;
}

.small-uncollapse>.column,
.small-uncollapse>.columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
}

.row.small-unstack>.column,
.row.small-unstack>.columns {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
}

.shrink {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: 100%;
}

body {
    font-size: 1rem;
    font-family: 'Prompt', sans-serif;
}

a {
    text-decoration: none;
    color: #313131;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

a:hover {
    text-decoration: none;
    color: #2ba6cb;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Libre Baskerville', serif;
    text-transform: capitalize;
    line-height: 1.5;
    margin-bottom: 1rem;
    color: #313131;
}

.index h1,
.index h2,
.index h3,
.index h4,
.index h5,
.index h6 {
    text-align: center;
}

h1 {
    line-height: 1.15;
    font-size: 2.375rem;
}

h2 {
    font-size: 1.75rem;
}

.subtitle {
    font-size: 1.25rem;
    font-family: "proxima-nova", sans-serif;
    text-transform: none;
}

.subtitle::after {
    content: '';
    display: block;
    margin: 1.125rem auto 1.5rem;
    width: 5.3125rem;
    height: 5px;
    background-color: #2e7eb7;
}

h3 {
    font-size: 1.125rem;
}

h4 {
    font-size: 1rem;
}

h5 {
    font-size: 0.875rem;
}

h6 {
    font-size: 0.75rem;
}

p {
    font-size: 1rem;
}

ul,
ol,
dl {
    line-height: 1.5;
    margin-bottom: 1rem;
    list-style-position: outside;
}

ol,
ul {
    margin-left: 1.25rem;
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-left: 1.25rem;
}

dl {
    margin-bottom: 1rem;
}

dt {
    font-weight: bold;
    margin-bottom: 0.3rem;
}

ul {
    list-style: disc;
}

ol {
    font-size: inherit;
}

li {
    font-size: inherit;
}

blockquote {
    padding: 1.875rem 1.25rem 0.1875rem 2.1875rem;
    color: #cacaca;
    border-left: none;
    position: relative;
    z-index: 1;
    max-width: 90%;
    margin: 3rem auto;
    clear: both;
    float: none;
}

blockquote::before {
    content: '';
    display: block;
    width: 100%;
    max-width: 75rem;
    margin: 0 auto;
    border: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    height: 2px;
    background: -webkit-gradient(linear,left top,right top,from(rgba(202, 202, 202, 1)),color-stop(14%,rgba(202,202,202,1.93)),color-stop(15%,#cacaca),color-stop(50%,#cacaca),color-stop(85%,#cacaca),to(rgba(202, 202, 202, 1)));
    background: -o-linear-gradient(left,rgba(202, 202, 202, 1) 0%,rgba(202,202,202,1.93) 14%,#cacaca 15%,#cacaca 50%,#cacaca 85%,rgba(202, 202, 202, 1) 100%);
    background: linear-gradient(to right,rgba(202, 202, 202, 1) 0%,rgba(202,202,202,1.93) 14%,#cacaca 15%,#cacaca 50%,#cacaca 85%,rgba(202, 202, 202, 1) 100%);
    line-height: 100%;
}

blockquote::after {
    content: '\201C';
    font-size: 6rem;
    font-family: "Libre Baskerville",serif;
    color: #cacaca;
    background-color: #ffffff;
    position: absolute;
    left: 0;
    right: 0;
    top: -1rem;
    line-height: 100%;
    height: 30px;
    width: 48px;
    margin: 0 auto;
    text-align: center;
}

blockquote p {
    color: #313131;
}

cite {
    font-size: 0.8125rem;
    color: #313131;
}

strong,
b {
    font-weight: bold;
}

small {
    font-size: 80%;
}

em,
i {
    font-style: italic;
}

hr {
    max-width: 75rem;
    margin: 1.25rem auto;
    border: 1px solid #cacaca;
}

code {
    font-family: "Lucida Console", "Lucida Sans Typewriter", monospace;
    font-weight: normal;
    padding: 0.125rem 0.3125rem 0.0625rem;
    color: #000000;
    border: 1px solid #cacaca;
    background: #eeeeee;
}

sup {
    font-size: 80%;
}

.svg-container {
    position: absolute;
    height: 0;
}

body {
    margin: 0;
    padding: 0;
}

.main--interior {
    display: block;
}

.main--index {
    display: block;
}

.content {
    padding-left: .375rem;
    padding-right: .375rem;
}
.content .row {
    margin-left:-0.625rem;
    margin-right:-0.625rem;
}
.content--index .row {
    margin-left:auto;
    margin-right:auto;
}
.content--interior {
    display: block;
    padding-bottom: 3rem;
}

.content--interior> :last-child {
    margin-bottom: 0;
}

.content--index {
    display: block;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.header {
    position: relative;
    z-index: 999;
    background: #ffffff;
    -webkit-box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.38);
    box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.38);
}
.header__row {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
}
.header__phone {
    background-color:#2e7eb7;
    text-align:center;
}
.header__phone-link {
    display:inline-block;
    padding:0.5rem 0.75rem 0.5rem 2.25rem;
    position:relative;
    font-size:1.125rem;
    background-color:#2e7eb7;
}
.header__phone-link,
.header__phone-link:is(:hover, :active, :focus, :focus-visible) {
    color:#fff;
}
.header__phone-link:hover {
    background-color:#2ba6cb;
}
.header__phone-link::before {
    display:block;
    width:19px;
    height:19px;
    background-color:#fff;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 19' width='19' height='19'%3E%3Cpath d='M12.776,19.106a8.568,8.568,0,0,1-6.1-2.528L2.528,12.428a8.619,8.619,0,0,1,0-12.2.8.8,0,0,1,1.126,0L7.8,4.384a.8.8,0,0,1,0,1.126L6.421,6.893a1.162,1.162,0,0,0,0,1.641l4.151,4.151a1.16,1.16,0,0,0,1.641,0L13.6,11.3a.8.8,0,0,1,1.126,0l4.151,4.151a.8.8,0,0,1,0,1.126,8.568,8.568,0,0,1-6.1,2.528M3.122,1.953A7.041,7.041,0,0,0,3.653,11.3L7.8,15.453a7.041,7.041,0,0,0,9.349.531L14.16,12.991l-.821.821a2.752,2.752,0,0,1-3.893,0L5.295,9.66a2.756,2.756,0,0,1,0-3.893l.821-.821Z' /%3E%3C/svg%3E");
    content:"";
    position:absolute;
    left:0.75rem;
    top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
}
@media all and (min-width:640px) {
    .header__phone {
        padding-top:0.5rem;
        margin-bottom:-0.5rem;
        text-align:right;
        background-color:#fff;
    }    
}
@media only screen and (min-width: 64rem) {
    .header__phone {
        padding:0.5rem 5vw 0;
    }
}
.nav__global {
    position: absolute;
    width: 100%;
    top: 100%;
    left: 0;
    z-index: 200;
}

.header__logo {
    background: #313131;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    left: 0;
    right: 0;
    height: 100%;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    position: relative;
    width: auto;
    -ms-flex: 1 1 auto;
    -webkit-box-flex: 1;
    flex: 1 1 auto;
    z-index: 300;
}

.header__logo__image {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 100;
    position: relative;
    width:125px;
}

@media screen and (max-width: 40rem) {
    .header__logo__image {
        padding: 20px;
    }
} 



.footer {
    display: block;
    background-color: #313131;
    color: #ffffff;
    text-align: center;
    position: relative;
}

.footer a {
    color: currentColor;
}

.footer .copy {
    /*margin-top: -40px;*/
    margin-top:2rem;
    /* pointer-events:none; */
}

@media screen and (max-width: 40rem) {
    .footer .copy {
        margin-top: 0;
    }
}  

.footer__logo {
    padding-top: 3rem;
}

.footer__logo__image {
    margin-bottom: 1rem;
}

.btn {
    margin: 1rem 0;
    display: inline-block;
    padding: 0.5rem 2rem;
    background: #313131;
    color: #ffffff;
    text-align: center;
    font-size: 1rem;
}

.btn:hover {
    background: #1a1a1a;
}

.btn--secondary {
    background: #2e7eb7;
}

.btn--secondary:hover {
    background: #313131;
}

.btn--third {
    background: #f1c40f;
}

.btn--third:hover {
    background: #c29d0b;
}

.btn--expanded {
    display: block;
    width: 100%;
}

.btn--large {
    font-size: 1.5rem;
}

.btn--icon {
    line-height: 0;
    margin: 0.25rem;
    padding: 0.5rem;
}

.btn--icon svg {
    fill: currentColor;
}

.breadcrumb {
    margin-top: 2.063rem;
    margin-bottom: 2.813rem;
}

.breadcrumb li {
    vertical-align: text-bottom;
    margin-top: .5rem;
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

.breadcrumb a {
    text-decoration: none;
    font-family: "proxima-nova", sans-serif;
    font-weight: 400;
    color:#313131;
}

.breadcrumb li:last-child a {
    font-weight: bold;
    color: #2e7eb7;
}

.breadcrumb li svg {
    height: 15px;
    width: 15px;
    margin: 0 0.5em;
    fill: #afaca1;
}

fieldset {
    border: 1px solid #cacaca;
    padding: 1.25rem;
    margin: 1.125rem 0;
}

legend {
    padding: 0 0.1875rem;
}

input {
    color: #000000;
    font-family: inherit;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.5;
    background: #ffffff;
    border: 1px solid #cacaca;
    padding: 0.5rem;
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    -o-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
    border-radius: 0;
}

input.placeholder {
    color: #cacaca;
}

input:-moz-placeholder {
    color: #cacaca;
}

input::-moz-placeholder {
    color: #cacaca;
}

input:-ms-input-placeholder {
    color: #cacaca;
}

input::-webkit-input-placeholder {
    color: #cacaca;
}

input:focus {
    background: #ffffff;
    border: 1px solid #313131;
    -webkit-box-shadow: 0 0 5px #cacaca;
    box-shadow: 0 0 5px #cacaca;
}

input:disabled {
    background: #eeeeee;
    cursor: not-allowed;
}

input[type="submit"],
form button {
    border-radius: 0;
}

.expander {
    margin: 0;
}

.expander__wrapper {
    max-width: 100%;
    background: #222;
    margin-left: auto;
    margin-right: auto;
}

.expander__title {
    background-color: #2e7eb7;
    text-align: center;
    padding: 1em 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.expander__title__text {
    margin: 0 0.5rem;
    color: #FFF;
    font-family: 'Libre Baskerville', serif;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 1.875rem;
}

.expander__title__ico {
    fill: #fff;
    height: 30px;
    width: 20px;
}

.expander__block {
    background: rgba(0, 0, 0, 0.5);
    height: 300px;
    height: 42vh;
    height: calc(50vh - 1.25rem);
    overflow: hidden;
    position: relative;
    -webkit-transition: width 500ms ease-in-out;
    -o-transition: width 500ms ease-in-out;
    transition: width 500ms ease-in-out;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    outline: 1px solid #616161;
    outline-offset: -14px;
    padding: 2rem;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.expander__block__title {
    font-family: 'Libre Baskerville', sans-serif;  
    color: #fff;
    position: relative;
    z-index: 100;
    font-weight: normal;
    margin: 0 0 1.125rem 0;
    line-height: 1.3;   
    -webkit-transition: all 500ms ease-in-out;
    -o-transition: all 500ms ease-in-out;
    transition: all 500ms ease-in-out;
    font-size: 1.563rem;
    text-transform: capitalize;
}

.expander__block__title::before {
    content: '';
    width: 73px;
    height: 4px;
    display: block;
    background-color: #2e7eb7;
    margin: 0 auto 1.438rem;
}

.expander__block__text {
    top: 36vh;
    position: absolute;
    z-index: 101;
    margin: 0;
    position: relative;
    top: auto;
    display: inline-block;
}

.expander__block__link {
    color: #fff;
    text-decoration: none;
    font-family: "Prompt", sans-serif;
    font-size: 1.25rem;
    text-transform: uppercase;
}

.expander__block__image {
    -webkit-transform: scale(1) translateX(50%) translateY(50%);
    -ms-transform: scale(1) translateX(50%) translateY(50%);
    transform: scale(1) translateX(50%) translateY(50%);
    min-width: 500px;
    position: absolute;
    bottom: 50%;
    right: 50%;
    opacity: .75;
    transition: transform 5s ease-out, opacity 300ms ease-out, min-width 500ms ease-in-out, -webkit-transform 5s ease-out;
}

.expander__block:hover .expander__block__image {
    -webkit-transform: scale(1.15) translateX(50%) translateY(45%);
    -ms-transform: scale(1.15) translateX(50%) translateY(45%);
    transform: scale(1.15) translateX(50%) translateY(45%);
    opacity: 1;
    min-width: 130%;
    transition: transform 10s linear, opacity 500ms ease-in, min-width 500ms ease-in-out, -webkit-transform 10s linear;
}

@supports (display: grid) {
    @media only screen and (min-width: 64rem) {
        .expander {
            margin: 1em 0;
        }

        .expander__wrapper {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            overflow: hidden;
        }

        .expander__block {
            height: 400px;
            height: 40vh;
            padding: 0 2rem;
            -webkit-transition: all 500ms ease-in-out;
            -o-transition: all 500ms ease-in-out;
            transition: all 500ms ease-in-out;
            max-width: 100%;
        }

        .expander__block:hover img {
            -webkit-transform: scale(1.15) translateX(50%) translateY(45%);
            -ms-transform: scale(1.15) translateX(50%) translateY(45%);
            transform: scale(1.15) translateX(50%) translateY(45%);
            opacity: .85;
            transition: transform 750ms linear, opacity 500ms ease-in, -webkit-transform 750ms linear;
        }
    }
}

.table {
    background: #ffffff;
    border: 1px solid #f2f2f2;
    padding: 0.5rem 0.625rem 0.625rem;
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 0.5rem;
    border-radius: 0;
}

thead,
tbody,
tfoot {
    border: 1px solid #f2f2f2;
    background-color: #ffffff;
}

caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
}

thead {
    background: #f9f9f9;
    color: #000000;
}

tfoot {
    background: #f2f2f2;
    color: #000000;
}

thead tr,
tfoot tr {
    background: transparent;
}

thead th,
thead td,
tfoot th,
tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left;
}

tbody th,
tbody td {
    padding: 0.5rem 0.625rem 0.625rem;
}

tr:nth-child(even) {
    background: #f2f2f2;
    border-bottom: 0;
}

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

.hero__image {
    vertical-align: bottom;
    width: 100%;
}

.banner {
    overflow: hidden;
}

.banner img {
    width: 100%;
}

@supports ((-o-object-fit: cover) or (object-fit: cover)) {
    .banner {
        position: relative;
        height: 22rem;
    }

    .banner img {
        position: absolute;
        top: 50%;
        left: 50%;
        min-width: 100%;
        min-height: 100%;
        -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
        transform: translateX(-50%) translateY(-50%);
        -o-object-fit: cover;
        object-fit: cover;
    }
}
/*---> Hero Video added 1/13/2025 EAE <---*/
.hero-index {
    position:relative;
    background-color:#000;
  }
.hero__flex-container {
    background:url(../images/bg-for-hero-video-1920x832.jpg) top center no-repeat;
    background-size:auto 100%;
	position:relative;
	height:0;
	padding-bottom:43.33334%; /* Given a 1920:832 aspect ratio, 832/1920*100 = 43.33334 */
	overflow: hidden;    
    line-height:0;
    isolation:isolate;
}
.hero__video {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
/*---> end Hero Video added 1/13/2025 EAE <---*/

.steps {
    background-color: #eeeeee;
    counter-reset: steps;
    padding-left: .375rem;
    padding-right: .375rem;
}

.steps__wrap {
    padding: 2.625rem 0;
}

.steps__block {
    text-align: center;
    padding: 0 .5rem;
}

.steps__heading {
    font-size: 2rem;
    margin-bottom: 0;
    padding: 0 0 1rem 0;
}

.steps__title {
    font-size: 1.5rem;
    text-transform: capitalize;
    position: relative;
}

.steps__title::before {
    counter-increment: steps;
    content: counter(steps);
    display: block;
    background-color: #2e7eb7;
    color: #ffffff;
    line-height: 0;
    width: 95px;
    height: 95px;
    border-radius: 50%;
    margin: 2rem auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 3.375rem;
    -webkit-box-shadow: 0px 1px 16px 0px rgba(0, 0, 0, 0.31);
    box-shadow: 0px 1px 16px 0px rgba(0, 0, 0, 0.31);
}

.steps__text {
    font-size: 1rem;
}

.social {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    margin: 1em 0;
    width: 100%;
}

.social .icons {
    border: 2px solid #ffffff;
    height: 40px;
    width: 40px;
    border-radius: 50%;
    overflow: hidden;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
    margin: 0 0.5em;
    position: relative;
    z-index: 1;
    -webkit-transition: all 0.2s 0.1s linear;
    -o-transition: all 0.2s 0.1s linear;
    transition: all 0.2s 0.1s linear;
    background-color: #ffffff;
}

.social .icons a {
    height: 25px;
    width: 25px;
}

.social .icons svg {
    height: 25px;
    width: 25px;
    fill: #313131;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.social .icons.linkedin svg {
    width: 22px;
    height: 22px;
}

.social .icons.youtube svg {
    width: 22px;
    height: 22px;
}

.social .icons:hover {
    -webkit-box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.25);
}

.social .icons.facebook:hover svg {
    fill: #3b5998;
}

.social .icons.twitter:hover svg {
    fill: #55acee;
}

.social .icons.pinterest:hover svg {
    fill: #bd081c;
}

.social .icons.houzz:hover svg {
    fill: #7ac142;
}

.social .icons.linkedin:hover svg {
    fill: #0077b5;
}

.social .icons.instagram:hover svg {
    fill: #833ab4;
}

.social .icons.youtube:hover svg {
    fill: #cd201f;
}
.content--interior img:not([class]) {
    position: relative;
    margin: 10px auto;
}

.image--shadowed {
    -webkit-box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.41);
    box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.41);
}

.image--medium-right,
.image--medium-left {
    position: relative;
    margin: 10px auto;
}

.o-hidden {
    overflow: hidden;
}

.o-visible {
    overflow: visible;
}

.bold {
    font-weight: bold;
}

.center {
    text-align: center;
}

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

.titlecase {
    text-transform: capitalize;
}

.lowercase {
    text-transform: lowercase;
}

.underline {
    text-decoration: underline;
}

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

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

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

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

.font--primary {
    font-family: "proxima-nova", sans-serif;
}

.font--secondary {
    font-family: serif;
}

.font--lighter {
    font-weight: lighter;
}

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

.font--bold {
    font-weight: bold;
}

.font--bolder {
    font-weight: bolder;
}

.font--normal {
    font-style: normal;
}

.font--italic {
    font-style: italic;
}

.font--oblique {
    font-style: oblique;
}

.hidden {
    visibility: hidden;
}

.visible {
    visibility: visible;
}

.color--primary  {
    color: #313131;
}

.color--secondary {
    color: #2e7eb7;
}

.color--third {
    color: #f1c40f;
}

.color--white {
    color: #ffffff;
}

.color--black {
    color: #000000;
}

.color--facebook {
    color: #3b5998;
}

.color--twitter {
    color: #1da1f2;
}

.color--instagram {
    color: #833ab4;
}

.color--linkedin {
    color: #0077b5;
}

.color--youtube {
    color: #cd201f;
}

.color--google-plus {
    color: #dd4b39;
}

.color--pinterest {
    color: #bd081c;
}

.background--primary {
    background: #313131;
}

.background--secondary {
    background: #2e7eb7;
}

.background--third {
    background: #f1c40f;
}

.background--white {
    background: #ffffff;
}

.background--black {
    background: #000000;
}

.background--facebook {
    background: #3b5998;
}

.background--twitter {
    background: #1da1f2;
}

.background--instagram {
    background: #833ab4;
}

.background--linkedin {
    background: #0077b5;
}

.background--youtube {
    background: #cd201f;
}

.background--google-plus {
    background: #dd4b39;
}

.background--pinterest {
    background: #bd081c;
}

.pad {
    padding: 0.5rem;
}

.pad--vert {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.pad--horiz {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.pad--top {
    padding-top: 0.5rem;
}

.pad--bottom {
    padding-bottom: 0.5rem;
}

.pad--left {
    padding-left: 0.5rem;
}

.pad--right {
    padding-right: 0.5rem;
}

.pad--2x {
    padding: 1rem;
}

.pad--2x--vert {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.pad--2x--horiz {
    padding-left: 1rem;
    padding-right: 1rem;
}

.pad--2x--top {
    padding-top: 1rem;
}

.pad--2x--bottom {
    padding-bottom: 1rem;
}

.pad--2x--left {
    padding-left: 1rem;
}

.pad--2x--right {
    padding-right: 1rem;
}

.pad--3x {
    padding: 1.5rem;
}

.pad--3x--vert {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.pad--3x--horiz {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.pad--3x--top {
    padding-top: 1.5rem;
}

.pad--3x--bottom {
    padding-bottom: 1.5rem;
}

.pad--3x--left {
    padding-left: 1.5rem;
}

.pad--3x--right {
    padding-right: 1.5rem;
}

.marg {
    margin: 0.5rem;
}

.marg--vert {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.marg--horiz {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}

.marg--top {
    margin-top: 0.5rem;
}

.marg--bottom {
    margin-bottom: 0.5rem;
}

.marg--left {
    margin-left: 0.5rem;
}

.marg--right {
    margin-right: 0.5rem;
}

.marg--2x {
    margin: 1rem;
}

.marg--2x--vert {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.marg--2x--horiz {
    margin-left: 1rem;
    margin-right: 1rem;
}

.marg--2x--top {
    margin-top: 1rem;
}

.marg--2x--bottom {
    margin-bottom: 1rem;
}

.marg--2x--left {
    margin-left: 1rem;
}

.marg--2x--right {
    margin-right: 1rem;
}

.marg--3x {
    margin: 1.5rem;
}

.marg--3x--vert {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.marg--3x--horiz {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
}

.marg--3x--top {
    margin-top: 1.5rem;
}

.marg--3x--bottom {
    margin-bottom: 1.5rem;
}

.marg--3x--left {
    margin-left: 1.5rem;
}

.marg--3x--right {
    margin-right: 1.5rem;
}

.flex-container,
.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.flex-child-auto {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.flex-child-grow {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.flex-child-shrink {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
}

.flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
}

/* Style Guide */

.styleGuide h6 small {
    font-size: 80%;
    line-height: 1.5;
    display: block;
}

.example {
    position: relative;
    margin: 1.5rem 0;
    padding: 2rem 1.5rem;
    border: 1px solid #cacaca;
}

.example:before {
    content: 'Example';
    font-size: 80%;
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 4.6875rem;
    padding: 0.3125rem 0.4375rem;
    color: #ffffff;
    background: #313131;
}

code {
    overflow: visible;
    padding-right: 0.3125rem;
    padding-left: 0.3125rem;
    background: #eeeeee;
}

.code {
    font-size: inherit;
    line-height: 1.5;
    position: relative;
    margin-bottom: 2rem;
    padding: 1.875rem 0.9375rem;
    border: 1px solid #cacaca;
    background: #ffffff;
}

.code:before {
    content: 'Code';
    font-size: 80%;
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 4.6875rem;
    padding: 0.3125rem 0.4375rem;
    color: #ffffff;
    background: #2e7eb7;
}

.code code {
    padding: 0.125rem 0.25rem;
    margin: 0 0.125rem;
    color: #2e7eb7;
    border: none;
    background: tranparent;
}

pre.code {
    line-height: 1;
}

.colors {
    padding-top: 1rem;
    padding-bottom: 1.5rem;
}

.colors .box {
    margin-top: rem-cal(15);
    background: #ffffff;
    -webkit-box-shadow: 2px 2px 20px 2px rgba(0, 0, 0, 0.25);
    box-shadow: 2px 2px 20px 2px rgba(0, 0, 0, 0.25);
    padding-bottom: 1rem;
}

.colors .box div {
    width: 100%;
    height: 3.75rem;
    margin-bottom: 0.5rem;
    padding: 0.5rem 0;
}

.colors .box div h6 {
    font-weight: normal;
    color: #ffffff;
}

.pswp__caption__center {
    font-size: 1.2rem;
}

@media only screen and (min-width: 40rem) {

    .medium-collapse>.column,
    .medium-collapse>.columns {
        padding-right: 0;
        padding-left: 0;
    }

    .medium-uncollapse>.column,
    .medium-uncollapse>.columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .medium-expand {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .row.medium-unstack>.column,
    .row.medium-unstack>.columns {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .medium-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        max-width: 100%;
    }

    .medium-align-right {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .medium-align-left {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .medium-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .medium-align-justify {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .medium-align-spaced {
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .medium-align-top {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .medium-align-self-top {
        -ms-flex-item-align: start;
        align-self: flex-start;
    }

    .medium-align-bottom {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .medium-align-self-bottom {
        -ms-flex-item-align: end;
        align-self: flex-end;
    }

    .medium-align-middle {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .medium-align-self-middle {
        -ms-flex-item-align: center;
        align-self: center;
    }

    .medium-align-stretch {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .medium-align-self-stretch {
        -ms-flex-item-align: stretch;
        align-self: stretch;
    }

    .medium-align-center-middle {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
    }

    h1 {
        font-size: 2.625rem;
    }

    h2 {
        font-size: 2rem;
    }

    h3 {
        font-size: 1.625rem;
    }

    h4 {
        font-size: 1.5rem;
    }

    h5 {
        font-size: 1.25rem;
    }

    h6 {
        font-size: 0.75rem;
    }

    .header__row {
        display: block;
    }

    .nav__global {
        position: relative;
        width: auto;
        top: auto;
        left: auto;
    }

    .header__logo {
        width:10%;
        padding: 1em;
        position: absolute;
        margin: 0 auto;
    }
    .footer__left {
        text-align: left;
        padding-top: 3rem;
    }

    .footer__right {
        padding-top: 2.5rem;
    }

    .breadcrumb li {
        margin-top: 1.75rem;
    }

    .expander__title {
        display: none;
    }

    .footer .social {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .image--medium-right {
        margin: 0 0 1rem 1rem;
        float: right;
    }

    .pad {
        padding: 1rem;
    }

    .pad--vert {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .pad--horiz {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .pad--top {
        padding-top: 1rem;
    }

    .pad--bottom {
        padding-bottom: 1rem;
    }

    .pad--left {
        padding-left: 1rem;
    }

    .pad--right {
        padding-right: 1rem;
    }

    .pad--2x {
        padding: 2rem;
    }

    .pad--2x--vert {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .pad--2x--horiz {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .pad--2x--top {
        padding-top: 2rem;
    }

    .pad--2x--bottom {
        padding-bottom: 2rem;
    }

    .pad--2x--left {
        padding-left: 2rem;
    }

    .pad--2x--right {
        padding-right: 2rem;
    }

    .pad--3x {
        padding: 3rem;
    }

    .pad--3x--vert {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .pad--3x--horiz {
        padding-left: 3rem;
        padding-right: 3rem;
    }

    .pad--3x--top {
        padding-top: 3rem;
    }

    .pad--3x--bottom {
        padding-bottom: 3rem;
    }

    .pad--3x--left {
        padding-left: 3rem;
    }

    .pad--3x--right {
        padding-right: 3rem;
    }

    .marg {
        margin: 1rem;
    }

    .marg--vert {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }

    .marg--horiz {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .marg--top {
        margin-top: 1rem;
    }

    .marg--bottom {
        margin-bottom: 1rem;
    }

    .marg--left {
        margin-left: 1rem;
    }

    .marg--right {
        margin-right: 1rem;
    }

    .marg--2x {
        margin: 2rem;
    }

    .marg--2x--vert {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .marg--2x--horiz {
        margin-left: 2rem;
        margin-right: 2rem;
    }

    .marg--2x--top {
        margin-top: 2rem;
    }

    .marg--2x--bottom {
        margin-bottom: 2rem;
    }

    .marg--2x--left {
        margin-left: 2rem;
    }

    .marg--2x--right {
        margin-right: 2rem;
    }

    .marg--3x {
        margin: 3rem;
    }

    .marg--3x--vert {
        margin-top: 3rem;
        margin-bottom: 3rem;
    }

    .marg--3x--horiz {
        margin-left: 3rem;
        margin-right: 3rem;
    }

    .marg--3x--top {
        margin-top: 3rem;
    }

    .marg--3x--bottom {
        margin-bottom: 3rem;
    }

    .marg--3x--left {
        margin-left: 3rem;
    }

    .marg--3x--right {
        margin-right: 3rem;
    }

    .medium-flex-container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .medium-flex-child-auto {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }

    .medium-flex-child-grow {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }

    .medium-flex-child-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }

    .medium-flex-dir-row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .medium-flex-dir-row-reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    .medium-flex-dir-column {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .medium-flex-dir-column-reverse {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

@media only screen and (min-width: 64rem) {

    .large-collapse>.column,
    .large-collapse>.columns {
        padding-right: 0;
        padding-left: 0;
    }

    .large-uncollapse>.column,
    .large-uncollapse>.columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .large-expand {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .row.large-unstack>.column,
    .row.large-unstack>.columns {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .large-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        max-width: 100%;
    }
    
    .large-align-right {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .large-align-left {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .large-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .large-align-justify {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .large-align-spaced {
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .large-align-top {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .large-align-self-top {
        -ms-flex-item-align: start;
        align-self: flex-start;
    }

    .large-align-bottom {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .large-align-self-bottom {
        -ms-flex-item-align: end;
        align-self: flex-end;
    }

    .large-align-middle {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .large-align-self-middle {
        -ms-flex-item-align: center;
        align-self: center;
    }

    .large-align-stretch {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .large-align-self-stretch {
        -ms-flex-item-align: stretch;
        align-self: stretch;
    }

    .large-align-center-middle {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
    }

    h1 {
        font-size: 2.375rem;
    }

    h2 {
        font-size: 1.75rem;
    }

    h3 {
        font-size: 1.125rem;
    }

    h4 {
        font-size: 1rem;
    }

    h5 {
        font-size: 0.875rem;
    }

    h6 {
        font-size: 0.75rem;
    }

    body {
        padding: 1rem;
    }

    body::before {
        content: '';
        display: block;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        border: 1rem solid #313131;
        border-top: none;
        border-bottom: none;
        z-index: -1;
    }

    body::after {
        content: '';
        display: block;
        height: 1rem;
        background-color: #313131;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
    }
    .header__logo {
        width: 20%;
    }

    .content {
        padding-left: 0;
        padding-right: 0;
    }

    .footer::after {
        content: '';
        display: block;
        height: 1rem;
        background-color: #313131;
        position: absolute;
        bottom: -1rem;
        left: 0;
        right: 0;
    }

    .steps {
        padding: 3.75rem 0;
    }

    .steps__wrap {
        background-color: #ffffff;
        -webkit-box-shadow: 0px 1px 16px 0px rgba(0, 0, 0, 0.14);
        box-shadow: 0px 1px 16px 0px rgba(0, 0, 0, 0.14);
    }

    .steps__block {
        padding: 0 1rem;
    }

    .pad {
        padding: 1.5rem;
    }

    .pad--vert {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .pad--horiz {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .pad--top {
        padding-top: 1.5rem;
    }

    .pad--bottom {
        padding-bottom: 1.5rem;
    }

    .pad--left {
        padding-left: 1.5rem;
    }

    .pad--right {
        padding-right: 1.5rem;
    }

    .pad--2x {
        padding: 3rem;
    }

    .pad--2x--vert {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .pad--2x--horiz {
        padding-left: 3rem;
        padding-right: 3rem;
    }

    .pad--2x--top {
        padding-top: 3rem;
    }

    .pad--2x--bottom {
        padding-bottom: 3rem;
    }

    .pad--2x--left {
        padding-left: 3rem;
    }

    .pad--2x--right {
        padding-right: 3rem;
    }

    .pad--3x {
        padding: 4.5rem;
    }

    .pad--3x--vert {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem;
    }

    .pad--3x--horiz {
        padding-left: 4.5rem;
        padding-right: 4.5rem;
    }

    .pad--3x--top {
        padding-top: 4.5rem;
    }

    .pad--3x--bottom {
        padding-bottom: 4.5rem;
    }

    .pad--3x--left {
        padding-left: 4.5rem;
    }

    .pad--3x--right {
        padding-right: 4.5rem;
    }

    .marg {
        margin: 1.5rem;
    }

    .marg--vert {
        margin-top: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .marg--horiz {
        margin-left: 1.5rem;
        margin-right: 1.5rem;
    }

    .marg--top {
        margin-top: 1.5rem;
    }

    .marg--bottom {
        margin-bottom: 1.5rem;
    }

    .marg--left {
        margin-left: 1.5rem;
    }

    .marg--right {
        margin-right: 1.5rem;
    }

    .marg--2x {
        margin: 3rem;
    }

    .marg--2x--vert {
        margin-top: 3rem;
        margin-bottom: 3rem;
    }

    .marg--2x--horiz {
        margin-left: 3rem;
        margin-right: 3rem;
    }

    .marg--2x--top {
        margin-top: 3rem;
    }

    .marg--2x--bottom {
        margin-bottom: 3rem;
    }

    .marg--2x--left {
        margin-left: 3rem;
    }

    .marg--2x--right {
        margin-right: 3rem;
    }

    .marg--3x {
        margin: 4.5rem;
    }

    .marg--3x--vert {
        margin-top: 4.5rem;
        margin-bottom: 4.5rem;
    }

    .marg--3x--horiz {
        margin-left: 4.5rem;
        margin-right: 4.5rem;
    }

    .marg--3x--top {
        margin-top: 4.5rem;
    }

    .marg--3x--bottom {
        margin-bottom: 4.5rem;
    }

    .marg--3x--left {
        margin-left: 4.5rem;
    }

    .marg--3x--right {
        margin-right: 4.5rem;
    }

    .large-flex-container {
        display: -ms-flexbox;
        display: -webkit-box;
        display: flex;
    }

    .large-flex-child-auto {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }

    .large-flex-child-grow {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }

    .large-flex-child-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }

    .large-flex-dir-row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .large-flex-dir-row-reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    .large-flex-dir-column {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .large-flex-dir-column-reverse {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

@media only screen and (min-width: 75rem) {

    .xl-collapse>.column,
    .xl-collapse>.columns {
        padding-right: 0;
        padding-left: 0;
    }

    .xl-uncollapse>.column,
    .xl-uncollapse>.columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .xl-expand {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .row.xl-unstack>.column,
    .row.xl-unstack>.columns {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .xl-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        max-width: 100%;
    }

    .xl-align-right {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .xl-align-left {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .xl-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .xl-align-justify {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .xl-align-spaced {
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .xl-align-top {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .xl-align-self-top {
        -ms-flex-item-align: start;
        align-self: flex-start;
    }

    .xl-align-bottom {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .xl-align-self-bottom {
        -ms-flex-item-align: end;
        align-self: flex-end;
    }

    .xl-align-middle {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .xl-align-self-middle {
        -ms-flex-item-align: center;
        align-self: center;
    }

    .xl-align-stretch {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .xl-align-self-stretch {
        -ms-flex-item-align: stretch;
        align-self: stretch;
    }

    .xl-align-center-middle {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
    }

    .xl-flex-container {
        display: -ms-flexbox;
        display: -webkit-box;
        display: flex;
    }

    .xl-flex-child-auto {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }

    .xl-flex-child-grow {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }

    .xl-flex-child-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }

    .xl-flex-dir-row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .xl-flex-dir-row-reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    .xl-flex-dir-column {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .xl-flex-dir-column-reverse {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

@media only screen and (min-width: 83.75rem) {
    .header__logo {
        width: 25.4375rem;
    }

    .header__logo::before {
        content: '';
        display: block;
        width: 100%;
        height: 170px;
        position: absolute;
        top: -1rem;
        left: 0;
        background-color: #313131;
    }
    .header__logo__image {
        width:175px;
    }
}

@media only screen and (min-width: 90rem) {

    .xxl-collapse>.column,
    .xxl-collapse>.columns {
        padding-right: 0;
        padding-left: 0;
    }

    .xxl-uncollapse>.column,
    .xxl-uncollapse>.columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem;
    }

    .xxl-expand {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .row.xxl-unstack>.column,
    .row.xxl-unstack>.columns {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0px;
    }

    .xxl-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        max-width: 100%;
    }

    .xxl-align-right {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .xxl-align-left {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .xxl-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .xxl-align-justify {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .xxl-align-spaced {
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .xxl-align-top {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .xxl-align-self-top {
        -ms-flex-item-align: start;
        align-self: flex-start;
    }

    .xxl-align-bottom {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .xxl-align-self-bottom {
        -ms-flex-item-align: end;
        align-self: flex-end;
    }

    .xxl-align-middle {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .xxl-align-self-middle {
        -ms-flex-item-align: center;
        align-self: center;
    }

    .xxl-align-stretch {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
    }

    .xxl-align-self-stretch {
        -ms-flex-item-align: stretch;
        align-self: stretch;
    }

    .xxl-align-center-middle {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
    }

    .xxl-flex-container {
        display: -ms-flexbox;
        display: -webkit-box;
        display: flex;
    }

    .xxl-flex-child-auto {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    }

    .xxl-flex-child-grow {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    }

    .xxl-flex-child-shrink {
        -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }

    .xxl-flex-dir-row {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .xxl-flex-dir-row-reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }

    .xxl-flex-dir-column {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .xxl-flex-dir-column-reverse {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

/* No Header Image Template */

.no-header-image {}

@media(min-width: 64rem) {
    .no-header-image .content {
        padding-top: 3rem;
    }

    .no-header-image .subnav {
        padding-top: 4.75rem;
    }
}

/* Site Map Link */

.footer .copy a:hover {
    text-decoration: underline;
}

/* Search */

.search__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.search__form {
    width: 100%;
    max-width: 300px;
    margin-right: auto;
    margin-left: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 1rem;
}

@media(min-width: 64rem) {
    .search__form {
        margin-right: 0;
        margin-left: auto;
    }
}

.search__input {
    border: 1px solid #aaa;
    border-radius: 3px 0 0 3px;
    border-right: 0;
    margin: 0;
}

.search__button {
    background-color: #ccc;
    border-radius: 0 3px 3px 0;
    border: 1px solid #aaa;
    border-left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 0.5rem;
    cursor: pointer;
    -webkit-transition: 0.1s ease-in-out;
    -o-transition: 0.1s ease-in-out;
    transition: 0.1s ease-in-out;
}

.search__button:hover {
    background-color: #aaa;
}

.search__icon {
    fill: #555;
    -webkit-transition: 0.1s ease-in-out;
    -o-transition: 0.1s ease-in-out;
    transition: 0.1s ease-in-out;
}

.search__button:hover .search__icon {
    fill: #333;
}

p.address {
    margin-bottom: 0;
}

.content--index .page-title--index {
    font-size: 2.625rem;
    text-transform: capitalize;
    padding-top: 3.438rem;
}

.content--index .page-title--index:after {
    content: '';
    width: 95px;
    height: 4px;
    display: block;
    background-color: #2e7eb7;
    margin: 1.563rem auto 1.875rem;
}

.content--index p {
    font-size: 1.125rem;
    padding-bottom: 0.625rem;
}

.slick-slider {
    margin: 0;
}

.slick-slider img {
    margin-left: auto;
    margin-right: auto;
}

.font-primary {
    font-family: 'Libre Baskerville', serif;
}

.font--secondary {
    font-family: 'Prompt', sans-serif;
}

.formElements .row > ul,
.formElements .formRow > ul,
.formElements {
    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;
}

.formElements .row > ul > li,
.formElements .formRow > ul > li {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50%;
    flex: 1 1 50%;
    float: none;
    max-width: 100%;
    padding-right: 3rem;
}
.formElements .row > ul > li > span,
.formElements .formRow > ul > li span {
    display: inline-block;
    margin-right: 1rem;
}
.formElements span label {
    margin-left: 6px;
}

.lightBoxImgs {
	margin:0 -0.625rem; /* pull margins to accommodate .lbThumb margins */
	display:-ms-flexbox;
	display:flex;
	-ms-flex-flow:row wrap;
	flex-flow:row wrap;
}
.pswp { /*-- Overlay --*/
	z-index:11000; /* Higher than Sticky Header */
}
.pswp__button {
	background-color:transparent !important;
}
.lbThumb {
	position:relative;
	-ms-flex:0 0 calc(50% - 1.25rem);
	flex:0 0 calc(50% - 1.25rem);
	max-width:calc(50% - 1.25rem);
	margin:0.625rem;
	float:none;
	border:0;
	border-radius:0;	
}
.lbThumb:hover,
.lightBoxImgs .lbThumb:hover {
    /* Reset from lightbox default */
    top:auto !important;
    box-shadow:none;
}
/* .lbThumb::before {
	background:rgba(var(--color-base-rgb),0.75);
	opacity:0;
	display:block;
	content:'';
	width:100%;
	height:100%;
	position:absolute;
    inset:0;
    margin:auto;
	-webkit-transform:scale(0);
	-ms-transform:scale(0);
	transform:scale(0);
	-webkit-transition:all 0.3s ease-out;
	-o-transition:all 0.3s ease-out;
	-moz-transition:all 0.3s ease-out;
	transition:all 0.3s ease-out;
	z-index:120;
} */
/* .lbThumb:hover::before {
	cursor:pointer;
	-ms-transform: scale(1);
	transform: scale(1);
	opacity:1;
}
.lbThumb::after {
	display:block;
	content:'View Larger Image';
	font-size:var(--font-size-base);
	text-align:center;
	color:var(--color-white);
	position:absolute;
	left:0;
	right:0;
	top:50%;
	-webkit-transform:translateY(-50%) scale(0);
	transform:translateY(-50%) scale(0);
	-webkit-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	opacity:0;
	z-index:120;
}
.lbThumb:hover::after {
	cursor:pointer;
	-ms-transform:translateY(-50%) scale(1);
	transform:translateY(-50%) scale(1);
	opacity:1;
} */
.content--interior .lbThumb img:not([class]) {
	display:block;
	height:auto;
	width:100%;	
	margin:0;
	position:relative;
	top:0;
	opacity:1;
	box-shadow:none;
}
@media all and (min-width:768px) {
	/*---> Galleries <---*/
	.lbThumb {
		-ms-flex:0 0 calc(33.33333% - 1.25rem);
		flex:0 0 calc(33.33333% - 1.25rem);
		max-width:calc(33.33333% - 1.25rem);
	}
}

/* SuperTemplate Card Styles */

.card {
	position:relative;
	background:var(--color-white);
	display:flex;
	flex-direction:column;
	height:calc(100% - 1.25rem);
	margin-bottom:1.25rem;
	text-align:center;
	-webkit-box-shadow:var(--box-shadow-default);
	-moz-box-shadow:var(--box-shadow-default);
	box-shadow:var(--box-shadow-default);
	isolation:isolate;
}
.card__head,
.card__main {
	pointer-events:none;
}
.card__head {
	background:var(--color-secondary-dark);
	padding:1.5rem 2rem 0.75rem;
}
.card__title {
	/* Default h6 size. Set size so can use whatever header is appropriate */
	font-size:var(--font-size-h6);
	color:var(--color-white);
}
.card__main {
	padding:2.5rem 2rem 0;
	display:flex;
	flex-direction:column;
	flex-grow:1;
}
.card__foot {
	padding:0 2rem 1.5rem;
}
.card__foot,
.card > :last-child.card__foot {
	margin-bottom:0;
}
.card__foot__text {
}
.card__btn {
	position:static;
    margin: 0;
}
.card__btn::after {
    content:'';
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:1;
}
.card__media {
	pointer-events:none;
}
.card__img {
	display:block;
	width:100%;
}
.card__head--for-media-card {
	background:transparent;
	padding:1.5rem 2rem 0;
}
.card__title--for-media-card {
	color:inherit;
}
.card__main--for-media-card {
	padding:0 2rem;
}

/* Super Template Logo Carousel */
/*- Slider -*/
.js-logo-carousel { /* JS Hook, no styling */
}
.logo-carousel {
    padding-top:3rem;
    padding-left:0;
    padding-right:0;
    /* This pulls the Carousel past the 0.625rem padding of the column */
    /*margin-left:-0.625rem;
    margin-right:-0.625rem;*/
}
.logo-carousel .slick-track {
    display:flex;
	align-items:center;
    justify-content:center;
}
.logo-carousel__item {
    padding-left:1.5rem;
    padding-right:1.5rem;
}
.logo-carousel__link {
    display:flex;
}
.logo-carousel__link:is(:active, :focus, :focus-visible) {
    text-decoration:none;
}
.logo-carousel__link:active {
    -webkit-box-shadow: 0 0 0 2px var(--color-primary-dark);
	-moz-box-shadow: 0 0 0 2px var(--color-primary-dark);
	box-shadow: 0 0 0 2px var(--color-primary-dark);
}
.logo-carousel__link:is(:focus-visible) {
    -webkit-box-shadow: 0 0 0 2px var(--color-primary);
	-moz-box-shadow: 0 0 0 2px var(--color-primary);
	box-shadow: 0 0 0 2px var(--color-primary);
}
.logo-carousel__logo {
    display:block;
    -webkit-transform:scale(1);
    -ms-transform:scale(1);
    transform:scale(1);
	-webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
}
.logo-carousel__link:hover .logo-carousel__logo {
	-webkit-transform:scale(1.1);
    -ms-transform:scale(1.1);
    transform:scale(1.1);
}
/*- Autoplay Button -*/
.logo-carousel .slick-autoplay-toggle-button {
    left:0.625rem;
    display:none;
}
@media (min-width: 1024px) {
    .logo-carousel__item {
        padding-left:2rem;
        padding-right:2rem;
    }
}