/* @group Site Footer
------------------------------------ */
.footer { position: relative; color: var(--white); background-color: var(--header-color); padding: 5rem 0 11.5rem; overflow: hidden; }
.footer a { color: var(--white); }
.footer a:hover { color: var(--med-green); }
.footer::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: url('../../img/layout/globals/texture-grained.png') center center; mix-blend-mode: multiply; background-size: auto 95rem; background-repeat: repeat; }
.footer .footer-cols [class^="col-"] { padding: 0; }
/* @group Back to top
------------------------------------ */
.footer .col-bttn { text-align: center; margin: 0 0 5rem; }
.footer .col-bttn a { font-weight: 700; font-size: 1.6em; line-height: 1.2em; letter-spacing: .17em; text-transform: uppercase; display: inline-flex; justify-content: center; align-items: center; flex-direction: column; }
.footer .col-bttn a i,.footer .col-bttn a svg, .footer .col-bttn a img { display: inline-flex; justify-content: center; align-items: center; width: 13rem; height: 8.5rem; margin: 0 0; object-fit: contain;}
/* @group Logo
------------------------------------ */
.footer .col-logo { text-align: center; margin: 0 0 5rem; }
.footer .col-logo .logo { height: 24.99rem; }
.footer .col-logo .logo img { object-fit: contain; }
/* @group Directions
------------------------------------ */
.footer .col-directions { text-align: center; margin: 0 0 7.4rem; }
.footer .col-directions .directions { margin: 0 0 7.5rem; }
.footer .col-directions .directions span { font: 420 2.2em / 1.36em var(--brandon-font); letter-spacing: .07em; display: block; max-width: 26.6rem; margin: 0 auto 2rem; }
.footer .col-directions .directions a { font: 450 2em / 2.25em var(--brandon-font); letter-spacing: .07em; text-transform: uppercase; position: relative; }
.footer .col-directions .directions a i { position: absolute; top: 50%; right: -3rem; transform: translate(0, -50%); }
.footer .col-directions .tel li { font-weight: 700; font-size: 2em; line-height: 1.2em; letter-spacing: .17em; text-transform: uppercase; margin: 0 0 2rem; }
.footer .col-directions .tel li:last-child { margin: 0; }
/* @group Form
------------------------------------ */
.footer .col-form { margin: 0 0 8rem; }
.footer .col-form > span { font: 420 2em / 1.6em var(--brandon-font); text-transform: uppercase; display: block; margin: 0 0 1.5rem; }
.footer .col-form .form .textlink { color: var(--white); display: block; margin-left: auto; }
.footer .col-form .form .textlink::after { background-color: var(--light-green); }
.footer .col-form .form .textlink:hover { color: var(--light-green); }
.footer .col-form .form form .wpcf7-form-control-wrap { display: inline-block; position: relative; margin: 0 0 3rem; width: 100%; padding-right: 6.4rem; }
.footer .col-form .form form .bttn-ico { position: absolute; right: 0; top: 0; width: 6.4rem; height: 6.4rem; background-color: var(--light-green); color: var(--black); display: inline-flex; justify-content: center; align-items: center; border-radius: 0; cursor: default; }
.footer .col-form .form form .wpcf7-form-control-wrap input,
.footer .col-form .form form .wpcf7-form-control-wrap input::placeholder { font: 450 1.8rem / 2.5em var(--brandon-font); letter-spacing: .07em; text-transform: uppercase; color: var(--white); }
.footer .col-form .form form .wpcf7-form-control-wrap input { border-radius: 0; border: .1rem solid var(--white); border-right: none; display: inline-block; width: 100%; padding: 0 1.5rem; height: 6.4rem; }
.footer .col-form .form form .wpcf7-not-valid-tip,
.footer .col-form .form form .wpcf7-response-output { position: absolute; top: 100%; margin: 3rem 10rem 0 0; font: 450 1.6em / 1.2em var(--brandon-font); letter-spacing: .07em; text-transform: uppercase; color: var(--gold); }
.footer .col-form .form form .wpcf7-response-output {  color: #46b450; border: none; margin: 0 0; padding: 0; top: 87%; }
.footer .col-form .form form:not(.sent) .wpcf7-response-output { display: none; }
.footer .col-form .form form > label { display: inline-block; position: relative; }
/* @group Main menu
------------------------------------ */
.footer .col-menu { text-align: center; margin: 0 0 10rem; }
.footer .col-menu .main-menu li { display: inline-block; line-height: 1.085em; letter-spacing: .15em; text-transform: uppercase; margin: 0 0 1.5rem; }
.footer .col-menu .main-menu li:not(:last-of-type)::after { content: '|'; display: inline-block; margin: 0 1.5rem; height: 100%; width: .2rem; color: var(--grey); }
/* @group Icons
------------------------------------ */
.footer .col-icons { text-align: center; margin: 0 0 5.15rem; }
.footer .col-icons .eho { width: 100%; margin: 0 0 5rem; }
.footer .col-icons .eho i { font-size: 4rem; }
.footer .col-icons .eho i:not(:last-of-type) { margin-right: 5rem; }
.footer .col-icons a i { font-size: 2.5rem; }
.footer .col-icons a:not(:last-of-type) i { margin-right: 4.5rem; }
/* @group Privacy menu
------------------------------------ */
.footer .col-privacy { text-align: center; margin: 0 0 3.15rem; }
.footer .col-privacy .privacy-menu li { font-weight: 400; font-size: 1.6em; line-height: 1.085em; letter-spacing: .15em; text-transform: uppercase; }
.footer .col-privacy .privacy-menu li:not(:first-of-type)::before { content: '|'; display: inline-block; margin: 0 1.5rem; height: 100%; width: .2rem; color: var(--grey); }
/* @group Copyright
------------------------------------ */
.footer .col-copy { text-align: center; margin: 0 0 6.2rem; }
.footer .col-copy p { font-weight: 400; font-size: 1.6em; line-height: 1.085em; letter-spacing: .15em; text-transform: uppercase; }
/* @group Design by
------------------------------------ */
.footer .col-design { text-align: center; }
.footer .col-design p { font-weight: 400; font-size: 1.6em; line-height: 1.085em; letter-spacing: .15em; text-transform: uppercase; color: var(--med-green); }
.footer .col-design p a { color: var(--med-green); }
.footer .col-design p a:hover { color: var(--streetsense); }
@media only screen
and (min-width : 961px) {
    .footer { padding: 8.6rem 0 6rem; }
    /* @group Layout
    ------------------------------------ */
    .footer .footer-cols { display: flex; flex-wrap: wrap; }
    .footer .col-logo { order: 1; margin: 0; }
    .footer .col-directions { order: 2; margin: 0 0 24rem; }
    .footer .col-menu { order: 3; margin: 0; }
    .footer .col-form { order: 4; margin: 0; }
    .footer .col-bttn { order: 5; margin: 0 }
    .footer .col-icons { order: 6; margin: 0; }
    .footer .col-privacy { order: 7; margin: 0; }
    .footer .col-design { order: 8; margin: 0; }
    .footer .col-copy { order: 9; margin: 0; }
    /* @group Logo
    ------------------------------------ */
    .footer .col-logo { flex: 0 1 30%; max-width: 30%; }
    .footer .col-logo .logo { height: 43.6rem; }
    /* @group Directions
    ------------------------------------ */
    .footer .col-directions { flex: 0 1 52%; max-width: 52%; margin-top: 10rem; }
    .footer .col-directions .directions { margin: 0 0 20rem; }    
    .footer .col-directions .tel li { font-size: 2.5em; margin: 0 0 1.4rem; }
    /* @group Main menu
    ------------------------------------ */
    .footer .col-menu { flex: 0 1 18%; max-width: 18%; margin-top: 10rem; }
    .footer .col-menu .main-menu li { display: block; text-align: right; }
    .footer .col-menu .main-menu li:not(:last-of-type) { margin: 0 0 3.5rem; }
    .footer .col-menu .main-menu li:last-of-type { margin: 0; }
    .footer .col-menu .main-menu li:not(:last-of-type)::after { content: none; }
    /* @group Form
    ------------------------------------ */
    .footer .col-form { flex: 0 1 25%; max-width: 25%; margin-left: 8.2%; position: relative; top: -11rem; }
    .footer .col-form > span { font-weight: 450; font-size: 2.4em; line-height: 1.87em; letter-spacing: .07em; margin: 0 0 2.2rem; }
    /* @group Back to top
    ------------------------------------ */
    .footer .col-bttn { flex: 0 1 36.8%; max-width: 36.8%; position: relative; top: -3.5rem; }
    /* @group Icons
    ------------------------------------ */
    .footer .col-icons { flex: 0 1 30%; max-width: 30%; }
    .footer .col-icons .eho { width: unset; display: inline-block; margin: 0; }
    .footer .col-icons .eho i,
    .footer .col-icons a i { font-size: 3rem; }
    .footer .col-icons .eho i,
    .footer .col-icons a:not(:last-of-type) i { margin-right: 5rem; }
    /* @group Privacy menu
    ------------------------------------ */
    .footer .col-privacy { flex: 0 1 30%; max-width: 30%; margin-left: 8.2%; margin-top: 5rem; text-align: left; }
    .footer .col-privacy .privacy-menu li:not(:first-of-type)::before { margin: 0 5rem; }
    /* @group Design by
    ------------------------------------ */
    .footer .col-design { flex: 0 1 31.8%; max-width: 31.8%; margin-top: 5rem; }
    /* @group Copyright
    ------------------------------------ */
    .footer .col-copy { flex: 0 1 30%; max-width: 30%; margin-top: 3rem; }
    .footer .col-copy p { line-height: 1.5em; max-width: 28.2rem; margin-left: auto; }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
}

/* @end */
