/*   
Theme Name: JW
Theme URI: http://www.macintypedesign.com.au
Description: This is a WordPress Theme designed and coded by Macintype Design exclusively for JW Farm and Garden Equipment -- WordPress v6.1
Author: Macintype Design
Author URI: http://www.macintypedesign.com.au
Version: 1
*/

* { box-sizing:border-box; }
html, body {
    margin:0;
    padding:0;
    height:100%;
}
body {
    font:normal 18px 'Montserrat', sans-serif;
    font-weight:500;
    line-height:1.5em;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
video {
    width:100%;
    height:100%;
    object-fit:cover;
}
p {
    margin-top:0;
    margin-bottom:1.5em;
}
h3 {
    font-size:22px;
    font-weight:900;
    text-transform:uppercase;
    color:#307C1F;
}
iframe { max-width:100%; }
@media only screen and (max-width:1023px) {
    body {
        font-size:21px;
        line-height:1.5em;
    }
}

.width, .flex-control-nav, .section_brands .flex-direction-nav, main#main {
    max-width:1052px;
    margin-left:auto;
    margin-right:auto;
    position:relative;
}
@media only screen and (max-width:1110px) {
    .width, .flex-control-nav, .section_brands .flex-direction-nav, main#main { max-width:90%; }
}
a.button, button.button, .submit-wrap input {
    display:inline-block;
    font:normal 16px 'Montserrat', sans-serif !important;
    height:50px !important;
    line-height:50px !important;
    background:none !important;
    border:1px solid #888B8D !important;
    color:#888B8D !important;
    padding:0 !important;
    min-width:245px;
    text-align:center;
    text-decoration:none;
    text-transform:uppercase;
}
a:hover.button {
    background:#888B8D !important;
    color:#fff !important;
}

.cols { display:table; }
.cols::after {
    content:'';
    display:table;
    clear:both;
}
.cols > div {
    display:table-cell;
    vertical-align:top;
}
@media only screen and (max-width:1023px) {
    .cols, .cols > div { display:block; }
}

header {
    border-top:50px solid #307C1F;
    position:relative;
    height:150px;
    line-height:100px;
}
header img { margin-top:29px; }
#header_right {
    position:absolute;
    right:100px;
    bottom:0px;
    height:100px;
}
header .menu {
    list-style:none;
    margin:0;
    padding:0;
    font-size:13px;
    font-weight:300;
    text-transform:uppercase;
}
header .menu li {
    display:inline-block;
    margin:0;
    padding:0;
}
header .menu li::before { content:" \00a0 \\ \00a0 "; }
header .menu li:first-child::before { content:none; }
header .menu li a {
    text-decoration:none;
    color:#000;
}
header .menu li a:hover { text-decoration:underline; }
#header_desktop { display:block; }
#header_mobile { display:none; }
@media only screen and (max-width:1023px) {
    #header_desktop { display:none; }
    #header_mobile {
        display:block;
        border-top:30px solid #307C1F;
        height:auto;
        line-height:1em;
        text-align:center;
    }
    #header_mobile > a {
        display:block;
        font-size:60px;
        line-height:120px;
        font-weight:900;
        background:#3D484F;
        color:#fff;
        text-transform:uppercase;
        text-decoration:none;
    }
    #header_mobile img {
        margin-top:30px;
        margin-bottom:30px;
    }
}
@media only screen and (max-width:620px) {
    #header_mobile > a {
        font-size:40px;
        line-height:90px;
    }
}

.flexslider {
    margin:0;
    border:none;
    border-radius:0;
}
.section_slider .slides li {
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
    height:618px;
    position:relative;
}
.section_slider .slides li > div {
    position:absolute;
    left:0px;
    right:0px;
    top:50%;
    transform:translateY(-50%);
    -webkit-transform:translateY(-50%);
    color:#fff;
}
.section_slider h1, .section_slider h2 {
    margin-top:0;
    margin-bottom:0.8em;
    font-size:76px;
    font-weight:800;
    line-height:1em;
    letter-spacing:-5px;
    max-width:700px;
}
#hero_shop h2 {
    max-width:930px;
}
.section_slider a.button {
    color:#fff !important;
    border:1px solid #fff !important;
}
.section_slider a:hover.button {
    color:#000 !important;
    background:#fff !important;
}
.flex-control-nav {
    text-align:left;
    left:50%;
    bottom:30px;
    margin-left:0;
    margin-right:0;
    transform:translateX(-50%);
    -webkit-transform:translateX(-50%);
}
.flex-control-paging li a {
    background:#fff;
    border:none;
    width:13px;
    height:13px;
    box-shadow:none;
    -webkit-box-shadow:none;
    -moz-box-shadow:none;
    -o-box-shadow:none;
}
.flex-control-paging li a:hover, .flex-control-paging li a.flex-active { background:#999; }
.flex-direction-nav a {
    left:auto !important;
    opacity:1 !important;
    right:40px !important;
    margin:0 !important;
    width:62px;
    height:62px;
    top:57%;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:contain;
    background-image:url(images/ico_next.png);
    text-indent:-9999px;
    color:transparent;
    text-shadow:none;
}
.flex-direction-nav a::before { content:none !important; }
.flex-direction-nav .flex-prev {
    top:45%;
    background-image:url(images/ico_prev.png);
}
.section_brands .flex-direction-nav { position:relative; }
.section_brands .flex-direction-nav a, #products_slider .flex-direction-nav a {
    background-image:url(images/ico_next_grey.png);
}
.section_brands .flex-direction-nav a {
    top:-400px;
    left:auto !important;
    right:0px !important;
}
#products_slider .flex-direction-nav a {
    left:-80px !important;
    top:34%;
    right:auto !important;
}
.section_brands .flex-direction-nav .flex-prev, #products_slider .flex-direction-nav .flex-prev {
    background-image:url(images/ico_prev_grey.png);
}
.section_brands .flex-direction-nav .flex-prev { right:65px !important; }
#products_slider .flex-direction-nav .flex-prev { top:46%; }
@media only screen and (max-width:1023px) {
    .section_slider .button, .section_slider .flex-control-nav, .section_slider .flex-direction-nav {
        display:none;
    }
    .section_slider .slides li > div {
        top:auto;
        bottom:30px;
        transform:none;
        -webkit-transform:none;
    }
    .section_slider h1, .section_slider h2 {
        font-size:60px;
        line-height:1em;
        margin-bottom:0;
    }
}

.section_content {
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}
.section_content.image_left {
    margin-top:80px;
    margin-bottom:80px;
}
.section_content::after {
    content:'';
    display:table;
    clear:both;
}
.section_content h2 {
    font-size:45px;
    line-height:0.9em;
    color:#231F20;
    margin-top:80px;
}
.section_content h2.nomargin { margin-top:0; }
img.align_left {
    float:left;
    margin-right:55px;
}
.section_content .content {
    float:left;
    max-width:690px;
    clear:right;
}
.section_content.image_left .content p { max-width:580px; }
.image_background .content {
    float:none;
    max-width:1052px;
    margin-left:auto;
    margin-right:auto;
    position:relative;
    height:100%;
    color:#fff;
    font-size:32px;
    line-height:1.2em;
}
.image_background .content .heading_large {
    font-size:20px;
    line-height:1.2em;
}
@media only screen and (max-width:1110px) {
    .section_content .content { max-width:60%; }
    .image_background .content { max-width:90%; }
}
.image_background h2 {
    color:#fff;
    font-size:18px;
    font-weight:500;
    margin-top:0;
    margin-bottom:0.5em;
}
.image_background .heading_large h2 {
    font-size:45px;
    font-weight:700;
    line-height:1em;
    margin-bottom:1em;
    max-width:400px;
}
.image_background .content > div {
    position:absolute;
    right:0px;
    top:50%;
    width:690px;
    transform:translateY(-50%);
    -webkit-transform:translateY(-50%);
}
.section_content a.button { margin-top:40px; }
.image_background a.button {
    color:#fff !important;
    border:1px solid #fff !important;
}
@media only screen and (max-width:1023px) {
    .section_content h2 { font-size:34px; }
    .section_content > img { display:none; }
    .section_content .content {
        max-width:100%;
        float:none;
    }
    .section_content a.button { display:none; }
    .image_background .content > div {
        left:5%;
        right:auto;
        max-width:90%;
    }
}

.section_image h2 {
    font-size:35px;
    line-height:1.2em;
    padding-top:50px;
    padding-bottom:50px;
    /*height:150px;
    line-height:150px;*/
    margin:0;
    background:#307C1F;
    color:#fff;
    text-align:center;
}
.section_image > div {
    height:618px;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}

.section_brands {
    font-size:24px;
    line-height:1.5em;
    padding-bottom:80px;
}
.section_brands .width { padding-right:280px; }
.section_brands h2 { font-size:45px; }
.section_brands .slides a {
    display:block;
    position:relative;
    width:297px;
    height:297px;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}
.section_brands .slides a::after {
    content:'';
    position:absolute;
    left:0px;
    top:0px;
    right:0px;
    bottom:0px;
    background-color:rgba(48, 48, 48, 0.5);
    z-index:1;
    transition:all 0.5s;
}
.section_brands .slides a:hover::after { background-color:rgba(0, 126, 0, 0.5); }
.section_brands .slides div {
    position:absolute;
    left:20px;
    top:20px;
    min-width:21px;
    min-height:21px;
    max-width:100px;
    background:url(images/plus_circle.png) no-repeat left top;
    background-size:21px 21px;
    z-index:2;
    color:#fff;
    font-weight:bold;
    font-size:22px;
    line-height:1em;
    padding-top:30px;
}
.section_brands .slides .empty a:hover div::after { content:'VISIT SHOWROOM'; }
.section_brands .slides img {
    position:absolute;
    left:20px;
    bottom:10px;
    z-index:2;
}
@media only screen and (max-width:1023px) {
    .section_brands .width { padding-right:100px; }
    .section_brands h2 { font-size:34px; }
}
@media only screen and (max-width:767px) {
    .section_brands .width { padding-right:0; }
    #brands_slider { margin-top:80px; }
}

.section_product_cats {
    background-position:center center;
    background-repeat:no-repeat;
    background-size:cover;
    color:#fff;
}
.section_product_cats .width {
    display:flex;
    align-items:center;
}
.section_product_cats .width > div:first-child {
    border-right:1px solid #fff;
    padding-top:100px;
    padding-bottom:70px;
    padding-right:100px;
}
.section_product_cats .width > div:last-child { padding-left:60px; }
.section_product_cats h2 {
    font-size:45px;
    line-height:1em;
    margin-top:0;
    margin-bottom:1em;
    max-width:450px;
}
.section_product_cats p { max-width:560px; }
.section_product_cats .width > div:last-child p {
    font-size:16px;
    line-height:1.5em;
    margin-bottom:0.2em;
    text-transform:uppercase;
}
.section_product_cats a {
    color:#fff;
    text-decoration:none;
}
.section_product_cats a:hover { text-decoration:underline; }
.section_product_cats a.button {
    color:#fff !important;
    border:1px solid #fff !important;
}
@media only screen and (max-width:1023px) {
    .section_product_cats h2 { font-size:34px; }
}
@media only screen and (max-width:767px) {
    .section_product_cats .width { display:block; }
    .section_product_cats .width > div:first-child {
        padding-right:0;
        padding-top:60px;
        padding-bottom:60px;
        border-right:none;
    }
    .section_product_cats .width > div:last-child {
        padding-left:0;
        text-align:center;
        padding-bottom:60px;
    }
    .section_product_cats p { max-width:100%; }
}

.section_hero {
    height:345px;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
    background-image:url(images/hero.jpg);
}
.section_hero .width { height:100%; }
.section_hero h1 {
    margin:0;
    font-size:76px;
    font-weight:800;
    color:#fff;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    -webkit-transform:translateY(-50%);
}

main::after {
    content:'';
    display:table;
    clear:both;
}
aside {
    margin-top:60px;
    width:305px;
    float:left;
}
article {
    width:680px;
    float:left;
    margin-left:50px;
    border-bottom:1px solid #000;
    padding-bottom:2em;
    margin-bottom:2em;
}
article h2 {
    font-size:45px;
    letter-spacing:-2px;
    line-height:1em;
    margin-top:120px;
}
@media only screen and (max-width:1110px) {
    article { width:60%; }
}

ul.equipment {
    list-style:none;
    margin:0;
    padding:0;
}
ul.equipment li {
    margin:0;
    padding:0;
}
ul.equipment li::after {
    content:'';
    display:table;
    clear:both;
}
.equipment_thumb {
    width:305px;
    float:left;
}
.equipment_inclusions {
    width:680px;
    float:left;
    margin-left:50px;
    border-bottom:1px solid #000;
    margin-bottom:1em;
    padding-bottom:30px;
}
@media only screen and (max-width:1110px) {
    .equipment_inclusions { width:60%; }
}
.equipment_inclusions table { margin-bottom:30px; }
.equipment_inclusions table th, .equipment_inclusions table td {
    border-bottom:1px solid #C7C8CA;
    padding-top:8px;
    padding-bottom:8px;
    text-align:left;
}
.equipment_inclusions a.button, .submit-wrap input, .modal a.button {
    border:none;
    background:#307C1F !important;
    color:#fff !important;
}

ul#product_cats {
    list-style:none;
    margin-left:0;
    margin-right:0;
    margin-top:0;
    margin-bottom:40px;
    padding:0;
    display:flex;
    flex-wrap:wrap;
    gap:16px;
}
ul#product_cats li {
    margin:0;
    padding:0;
}
ul#product_cats a {
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:#e5e5e5;
    width:153px;
    height:153px;
    padding:16px;
    font-size:16px;
    font-weight:bold;
    line-height:1em;
    text-decoration:none;
    text-transform:uppercase;
    color:#000;
    transition:all 0.5s;
}
ul#product_cats a:hover, ul#product_cats li.selected a {
    background:#007e00;
    color:#fff;
}
ul#product_cats .empty a:hover div.name { flex-basis:100%; }
ul#product_cats div.call { display:none; }
ul#product_cats a:hover div.call { display:block; }

ul#product_brands {
    list-style:none;
    margin:0;
    padding:0;
}
ul#product_brands li {
    font-weight:300;
    line-height:1em;
    margin-top:0;
    margin-bottom:0;
    margin-left:0;
    margin-right:10px;
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
    padding-right:10px;
    display:inline-block;
    position:relative;
    border-right:1px solid #000;
    text-transform:uppercase;
}
ul#product_brands li.selected::after {
    content:'';
    position:absolute;
    left:0px;
    bottom:-10px;
    border-bottom:2px solid #007e00;
    width:52px;
}
ul#product_brands li:last-child { border-right:none; }
ul#product_brands li a {
    text-decoration:none;
    color:#000;
}

#shop_intro {
    list-style:none;
    margin-left:0;
    margin-right:0;
    margin-top:60px;
    margin-bottom:0;
    padding:0;
    display:flex;
    justify-content:space-between;
    font-size:16px;
    line-height:1.2em;
    font-weight:300;
    max-width:980px;
    gap:20px;
}
#shop_intro li {
    margin:0;
    padding-left:0;
    padding-right:0;
    padding-top:60px;
    padding-bottom:0;
    background-repeat:no-repeat;
    background-position:left top;
    flex-basis:313px;
}
#shop_intro li:first-child {
    background-image:url(images/ico_delivery.png);
    background-size:52px auto;
}
/*#shop_intro li:first-child p { max-width:250px; }*/
#shop_intro li:nth-child(2) {
    background-image:url(images/ico_payment.png);
    background-size:50px auto;
}
#shop_intro li:last-child {
    background-image:url(images/ico_service.png);
    background-size:49px auto;
}
#shop_intro h3 {
    font-size:18px;
    font-weight:bold;
    line-height:1em;
    margin-top:0;
    margin-bottom:0.25em;
    color:#000;
}
@media only screen and (max-width:1023px) {
    #shop_intro {
        font-size:14px;
        line-height:1.2em;
        gap:10px;
    }
    #shop_intro li { flex-basis:33.3%; }
}

h2.woocommerce-products-header__title {
    font-size:45px;
    line-height:1em;
    text-transform:uppercase;
}

#products_slider { 
    margin-right:-70px;
}
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    border:1px solid #7f7f7f;
    padding:16px;
    font-size:14px;
    line-height:1.2em;
    font-weight:300;
    height:510px;
    width:268px !important;
}
/*.woocommerce ul.products li.first, .woocommerce-page ul.products li.first { clear:none !important; }*/
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    margin-right:16px;
    margin-bottom:16px;
}
.woocommerce ul.products li.last, .woocommerce-page ul.products li.last {
    margin-right:0;
}
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
    font-size:24px;
    line-height:1em;
    margin-top:0;
    margin-bottom:0;
    padding:0;
    color:#000;
    letter-spacing:-1px;
}
.woocommerce ul.products li.product .onsale {
    left:0px;
    top:10px;
    right:auto;
    margin:0;
    padding:0;
    min-width:auto;
    min-height:auto;
    text-align:left;
    border-radius:0;
    background:none;
}
.woocommerce ul.products li.product a .onsale img {
    width:90px;
}
.woocommerce ul.products li.product.sale .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
    float:left;
}
.woocommerce ul.products li.product .price {
    font-size:38px;
    line-height:1em;
    font-weight:bold;
    color:#000;
}
.woocommerce ul.products li.product .price del {
    display:block;
    float:right;
    clear:right;
    margin-top:-5px;
    font-size:16px;
}
.woocommerce ul.products li.product .price ins {
    font-weight:bold;
    text-decoration:none;
}
.woocommerce ul.products li.product h4 {
    font-size:12px;
    line-height:1em;
    margin-top:0;
    margin-bottom:1em;
}
a.button.button_more {
    background:#007e00 !important;
    border:1px solid #007e00 !important;
    color:#fff !important;
    margin-bottom:60px;
}
@media only screen and (max-width:1023px) {
    #products_slider {
        /*margin-left:70px;*/
        margin-right:0;
    }
    /*.woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product {
        clear:none !important;
    }*/
}

body.single-product .brand_logo {
    display:block;
    margin-top:40px;
}
body.single-product div.product { margin-top:20px; }
.woocommerce #content div.product div.images, .woocommerce div.product div.images,
.woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images {
    width:39.9%;
}
.woocommerce #content div.product div.summary, .woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
    width:56%;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper { margin-bottom:10px; }
.woocommerce div.product div.images .woocommerce-product-gallery__image { padding-right:10px; }
.woocommerce div.product div.images .woocommerce-product-gallery__image a {
    border:1px solid #000;
    margin-bottom:10px;
}
body.single-product h1.product_title {
    margin-top:10px !important;
    margin-bottom:0;
    line-height:1em;
}
body.single-product .product .summary {
    font-size:16px;
    line-height:1.5em;
}
body.single-product .sku_wrapper {
    display:block;
    font-size:12px;
    font-weight:bold;
    line-height:1em;
}
body.single-product .product .summary h2 {
    font-size:24px;
    line-height:1em;
    font-weight:bold;
    text-transform:uppercase;
    margin-top:1em;
    margin-bottom:2em;
}
body.single-product .product .summary .price {
    margin-top:10px;
    margin-bottom:20px;
    font-size:38px !important;
    font-weight:bold;
    line-height:1em;
    color:#808080 !important;
}
body.single-product .product .summary .price::before {
    content:'';
    display:block;
    width:52px;
    border-top:3px solid #000;
    margin-bottom:15px;
}
body.single-product .product_meta .posted_in { display:none; }
body.single-product .woocommerce-product-details__short-description { font-weight:600; }
body.single-product .woocommerce-product-details__short-description::after {
    content:'';
    display:block;
    width:52px;
    border-top:3px solid #000;
    margin-bottom:20px;
}
body.single-product .product .summary h3 {
    font-size:16px;
    font-weight:600;
    color:#000;
}
body.single-product .product .summary h3::after {
    content:'';
    display:block;
    width:52px;
    margin-top:6px;
    border-top:3px solid #000;
}
ul#product_manuals {
    list-style:none;
    margin:0;
    padding:0;
}
ul#product_manuals li {
    margin-left:0;
    margin-right:0;
    margin-top:0;
    margin-bottom:20px;
    padding:0;
}
ul#product_manuals li a {
    font-weight:600;
    text-decoration:none;
    color:#000;
}
ul#product_manuals img {
    vertical-align:middle;
    margin-right:20px;
}
a.toggle {
    clear:both;
    display:block;
    font-size:16px;
    height:50px;
    line-height:50px;
    text-transform:uppercase;
    text-decoration:none;
    color:#808080;
    border-right:1px solid #808080;
    border-bottom:1px solid #808080;
    background:url(images/ico_down.png) no-repeat 98% center;
    background-size:15px 15px;
}
a.toggle.expanded { background-image:url(images/ico_up.png); }
a.toggle + div {
    height:auto;
    max-height:0px;
    overflow:hidden;
    transition:all 0.5s;
}
a.toggle.expanded + div { max-height:9999px; }
#product_specs table {
    width:90%;
    margin-top:20px;
    margin-bottom:20px;
    border-spacing:0;
}
#product_specs td {
    font-size:16px;
    line-height:1.5em;
    background:#f2f2f2;
    padding-top:7px;
    padding-bottom:7px;
    padding-left:30px;
    padding-right:30px;
}
#product_specs tr:nth-child(even) td { background:#f9f9f9; }
#product_specs small {
    display:block;
    width:90%;
    font-size:12px;
    line-height:1.5em;
}
body.single-product .related { clear:both; }
@media only screen and (max-width:1023px) {
    .woocommerce #content div.product div.images, .woocommerce div.product div.images,
    .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images {
        width:100%;
    }
    .woocommerce #content div.product div.summary, .woocommerce div.product div.summary,
    .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
        width:100%;
    }
}

body .nf-form-content {
    padding:0;
    margin-top:30px;
}
.ninja-forms-req-symbol { display:none; }
body .nf-field-container { margin-bottom:10px; }
body .nf-form-content input:not([type=submit]),
body .nf-form-content textarea {
    outline:none;
    background:#fff;
    border:1px solid #888B8D;
    height:50px;
    line-height:50px;
    padding-left:20px;
    padding-right:20px;
    font:normal 16px 'Montserrat', sans-serif;
}
body .nf-form-content textarea.ninja-forms-field { height: 150px; }
.nf-form-content .field-wrap label {
    font-size:16px;
    font-weight:normal;
    line-height:1em !important;
    pointer-events:none;
    position:absolute;
    left:20px;
    color:#808080;
    background:#fff;
    top:17px;
    transform-origin:left center;
    transition:all 0.5s; -webkit-transition:all 0.5s;
    z-index:10;
}
.field-wrap.focus label {
    font-weight:bold;
    padding-left:4px;
    padding-right:4px;
    color:#000;
    transform:translateY(-150%) scale(0.7); -webkit-transform:translateY(-150%) scale(0.7);
}
.selectric-wrapper, .selectric, .selectric-scroll { display:block !important; }
.selectric {
    background:#fff;
    border:1px solid #888B8D;
}
.selectric .label {
    font-size:16px;
    line-height:48px;
    height:48px;
    margin-left:20px;
}
.selectric .button {
    height:48px;
    background:none;
}
.selectric-items { background:#fff; }
.selectric-items li {
    font-size:16px;
    line-height:28px;
    min-height:28px;
    padding-left:20px;
}
.nf-error-msg {
    font-size:12px;
    position:absolute;
    right:0px;
    bottom:0px;
}

.modal {
    position:fixed;
    left:0px;
    top:0px;
    right:0px;
    bottom:0px;
    background:rgba(0, 0, 0, 0.85);
    display:none;
}
.modal.active { display:block; }
.modal > div {
    position: absolute;
    left: 50%;
    top: 80px;
    width: 750px;
    margin-left: -375px;
    background: #fff;
    padding-left: 40px;
    padding-top:40px;
    padding-right:40px;
    padding-bottom:20px;
}
.modal h2 {
    font-size: 37px;
    font-weight: normal;
    color: #464E5B;
    background: url(images/logo.png) no-repeat left top;
    margin-top: 0;
    padding-top: 100px;
    background-size:231px auto;
}
.modal_close {
    text-align: right;
    display: block;
    color: #000;
    text-decoration: none;
}

footer {
    font-size:16px;
    background:#3E484F;
    color:#E6E6E6;
    padding-top:50px;
    padding-bottom:30px;
}
footer a {
    color:#E6E6E6;
    text-decoration:none;
}
footer a:hover { text-decoration:underline; }
footer .cols { margin-top:30px; }
footer .cols > div {
    border-left:1px solid #fff;
    padding-left:22px;
    padding-right:22px;
    padding-top:10px;
    white-space:nowrap;
}
footer .cols > div:last-child {
    white-space:normal;
    padding-right:0;
    width:46%;
}
footer .cols > div:last-child strong { font-size:14px; }
footer .cols > div:last-child img { margin-right:10px; }
footer .tel {
    display:inline-block;
    font-size:44px;
    font-weight:bold;
    margin-top:40px;
}
footer ul.menu {
    list-style:none;
    margin:0;
    padding:0;
    text-transform:lowercase;
}
footer ul.menu li {
    margin:0;
    padding:0;
}
footer .cols img { vertical-align:middle; }
footer ul.social {
    display:block;
    list-style:none;
    margin-left:0;
    margin-right:0;
    margin-top:10px;
    margin-bottom:0;
    padding:0;
}
footer ul.social li {
    display:inline-block;
    margin:0;
    padding:0;
}
.legal {
    margin-top:40px;
    font-size:14px;
    line-height:1em;
}
.legal ul.menu, .legal ul.menu li {
    display:inline-block;
    text-transform:none;
}
.legal ul.menu {
    border-right:1px solid #E6E6E6;
    padding-right:5px;
    margin-right:3px;
}
.legal ul.menu li {
    border-left:1px solid #E6E6E6;
    padding-left:5px;
    margin-left:3px;
}
@media only screen and (max-width:1023px) {
    footer .cols > div {
        border-left:none;
        padding-left:0;
        padding-right:0;
    }
    footer .cols > div:last-child { width:auto; }
    #menu-footer { display:none; }
    .legal ul.menu {
        display:block;
        width:0px;
        height:0px;
        overflow:hidden;
    }
}