/*
 Theme Name:     Divi Visitvirolahti
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Juha Kerminen
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
@import url("../Divi/style.css");
/* =Theme customization starts here
------------------------------------------------------- */

a {
    transition: all .3s;
    -moz-transition: all .3s;
    -webkit-transition: all .3s;
}
body {
    font-family: museo, serif;;
}
.container, .et_pb_row {
    width: 90%;
}
#top-header {
    display: none;
}
#logo {
    margin-top: -4px;
}
.big-logo img {
    width: 400px;
    max-width: 90%;
    height: auto;
}
.big-logo:after {
    content: " ";
    position: absolute;
    background: url("/wp-content/themes/Divi-visitvirolahti/v-kaari-green.png") no-repeat;
    background-size: cover;
    width: 50px;
    height: 50px;
    margin-left: -25px;
    margin-top: -30px;
}
#top-menu li a {
    font-weight: 500;
}
#top-menu .current-lang a {
    color: #dddc00;
}

#et-top-navigation .et_mobile_menu {
    border-color: #dddc00;
}

#et-top-navigation .et_mobile_menu .current_page_item a {
    text-decoration: underline;
}

#main-header .et_mobile_menu .menu-item-has-children > a { background-color: transparent; position: relative; }
#main-header .et_mobile_menu ul.sub-menu { display: none !important; visibility: hidden !important;  transition: all 1.5s ease-in-out;}
#main-header .et_mobile_menu .visible > ul.sub-menu { display: block !important; visibility: visible !important; }

#main-header .et_mobile_menu .after {
    float: right;
    padding: 10px 12px;
    cursor: pointer;
    color: white;
    font-weight: 500;
}
#main-header .et_mobile_menu .menu-item-has-children > a {
    width: 90%;
}

.v-menu {
    display: inline-block;
}
.v-menu a {
    color: white;
    font-size: 20px;
    padding-right: 0px;
    -webkit-animation: intro 1.5s ease-out;
    -moz-animation: intro 1.5s ease-out;
    -ms-animation: intro 1.5s ease-out;
    -o-animation: intro 1.5s ease-out;
    animation: intro 1.5s ease-out;
}
.v-menu a:hover, #top-menu-nav>ul>li>a:hover {
    color: #dddc00;
    opacity: 1;
}
.v-menu .current-menu-item a {
    color: #dddc00;
}
.v-menu #et-secondary-nav li ul {
    background: rgba(43,44,47,0.94);    
}
#et-secondary-nav li li a {
    font-size: 16px;
}
#et-secondary-nav li ul {
    left: 0px;
    right: auto;
}
#et-secondary-nav li {
    text-align: left;
    margin-right: 17px;
    margin-left: 2px;
}
#et-secondary-nav li li a {
    padding: 10px 0px;
    line-height: 22px;
    font-weight: 300;
    color: white;
}
#et-secondary-nav li li a:hover {
    opacity: 1;
    color: #dddc00;
}
#et-secondary-nav .sub-menu .sub-menu {
    display: none;
}
#et-secondary-nav .menu-item-has-children>a:after {
    content: none!important;
}
.v-menu .current-menu-ancestor a {
    color: #dddc00;
}
.v-menu #et-secondary-nav .menu-item-has-children>a {
    padding-right: 0px;
}
.hero:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.15));
    top: 0;
    left: 0;
}
.main:before {
    height: 80px;
    width: 1px;
    position: absolute;
    content: " ";
    background: rgba(255, 255, 255, 0.8);
    left: 50%;
    top: -80px;
}
.main .et_pb_blurb_content img {
    /*filter: grayscale(0%);*/
    height: 80px!important;
    width: auto;
    transition: all .3s;
    -moz-transition: all .3s;
    -webkit-transition: all .3s;
}
/*.main .et_pb_blurb_content:hover img {
    filter: grayscale(100%);
}*/
.main .et_pb_blurb_content:hover img {
    transform: translateY(-5px);
}
.main .et_pb_blurb_content:hover h4 a {
    color: #007a3d;
}
.boxes .et_pb_row {
    padding: 0;
    max-width: 100%;
    width: 100%;
}
/*.boxes .et_pb_row .et_pb_column {
    width: 50%;
    margin-right: 0;
}*/
.small-box {
    height: 320px;
}
.big-box {
    height: 560px;
}
.half-box {
    height: 380px;
}
.et_pb_text.small-box {
    padding: 45px;
    color: white;
}
.small-box:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.2));
    opacity: 0.25;
    top: 0;
    left: 0;
    transition: all .4s;
    -moz-transition: all .4s;
    -webkit-transition: all .4s;
}
.small-box .et_pb_text_inner {
    z-index: 1;
    font-size: 26px;
    padding-top: 25px;
    padding-bottom: 25px;
    max-width: 600px;
}
.small-box:hover:after {
    opacity: 0.9;
}
.small-box .et_pb_text_inner:after {
    content: " ";
    position: absolute;
    background: url("/wp-content/themes/Divi-visitvirolahti/v-kaari.png") no-repeat;
    background-size: cover;
    opacity: 0;
    width: 50px;
    height: 50px;
    margin-left: -5px;
    margin-top: 10px;
    transition: all .5s;
    -moz-transition: all .5s;
    -webkit-transition: all .5s;
}
.small-box:hover .et_pb_text_inner:after {
    margin-top: 15px;
    opacity: 1;
}
.nostolaatikko img {
    object-fit: cover;
    height: 260px;
}
.nostolaatikko p {
    padding-bottom: 5px;
    font-size: 18px;
}
.nostolaatikko .et_pb_text_inner:after {
    content: " ";
    position: absolute;
    background: url("/wp-content/themes/Divi-visitvirolahti/v-kaari.png") no-repeat;
    background-size: cover;
    opacity: 0;
    width: 50px;
    height: 50px;
    top: 90px;
    left: 50%;
    margin-left: -25px;
    transition: all .4s;
    -moz-transition: all .4s;
    -webkit-transition: all .4s;
}
.nostolaatikko:hover .et_pb_text_inner:after {
    margin-top: 5px;
    opacity: 1;
}
h3 {
    margin-bottom: 5px;
}
.listaus h3 {
    margin-bottom: 15px;
}

.sivuvalikko .widget_nav_menu {
    width: 100%!important;
    /*text-align: center;*/
    padding-left: 120px;
    margin-bottom: 20px!important;
}
.sivuvalikko ul li {
    display: none;
}
.sivuvalikko ul li.current_page_parent, .sivuvalikko ul li.current_page_ancestor {
    display: block;
}
.sivuvalikko li a {
    display: none;
}
.sivuvalikko ul li.current_page_parent ul li {
    display: inline-block;
}
.sivuvalikko .et_pb_widget ul li.current_page_parent ul li a {
    display: block;
    color: #1a1b1c;
    font-size: 16px;
    padding-right: 3px;
    padding-bottom: 10px;
}
.sivuvalikko .et_pb_widget ul li.current_page_parent ul li a:hover, .sivuvalikko .et_pb_widget ul li.current_page_parent ul li.current_page_item a {
    color: #007b3d;
}
.sivuvalikko.et_pb_widget_area_left {
    border-right: none;
}

.sivuvalikko ul li ul li {
    display: none;
}
.sivuvalikko ul li ul li.current_page_parent {
    display: block;
}
.sivuvalikko ul li ul li ul li {
    display: inline-block;
}
.sivuvalikko .et_pb_widget ul li ul li ul li a {
    display: block;
    color: #1a1b1c;
    font-size: 16px;
    padding-right: 3px;
    padding-bottom: 10px;
}

.map iframe {
    margin-bottom: -10px;
}

.et_pb_scroll_top.et-pb-icon {
    border-radius: 0px;
}

/* SOME */
.some-section {
    padding-top: 65px;
    padding-bottom: 55px;
    font-size: 24px;
}
.some-column {
    width: 50%;
    float: left;
}
.insta {
    border-top: 1px solid #e9e9e9;
}
.insta, .insta h2, .insta a {
    color: #5e5e5e;
}
.ig-logo:before {
    content: " ";
    background: url("/wp-content/themes/Divi-visitvirolahti/instagram.png") no-repeat;
    position: absolute;
    width: 50px;
    height: 50px;
    top: -10px;
    margin-left: -55px;
    background-size: cover;
}
.face, .face h2, .face a {
    background: #e1e7f2;
    color: #4267b2;
}
.fb-logo:before {
    content: " ";
    background: url("/wp-content/themes/Divi-visitvirolahti/facebook.png") no-repeat;
    position: absolute;
    width: 50px;
    height: 50px;
    top: -10px;
    margin-left: -52px;
    background-size: cover;
}
.twitter, .twitter h2, .twitter a {
    background: #e0f2f9;
    color: #00a4d3;
}
.tw-logo:before {
    content: " ";
    background: url("/wp-content/themes/Divi-visitvirolahti/twitter.png") no-repeat;
    position: absolute;
    width: 50px;
    height: 50px;
    top: -10px;
    margin-left: -53px;
    background-size: cover;
}
.youtube, .youtube h2, .youtube a {
    background: #ffeded;
    color: #ff0000;
}
.yo-logo:before {
    content: " ";
    background: url("/wp-content/themes/Divi-visitvirolahti/youtube.png") no-repeat;
    position: absolute;
    width: 50px;
    height: 50px;
    top: -10px;
    margin-left: -55px;
    background-size: cover;
}
#main-footer {
    background: url("/wp-content/themes/Divi-visitvirolahti/footer-bg.jpg") no-repeat;
    background-size: cover;
    background-position: 50%;
    padding-top: 35px;
}
/*.some-section {
    transition: all .3s;
    -moz-transition: all .3s;
    -webkit-transition: all .3s;
}
.some-section:hover {
    padding-top: 70px;
    padding-bottom: 60px;
}*/
#main-footer .container {
    width: 80%;
}
#main-footer h4 {
    padding-bottom: 20px;
}
#main-footer .footer-widget .widget_nav_menu li a:hover {
    color: #dddc00;
}
#footer-widgets .footer-widget li:before {
    border-color: transparent;
}
#footer-widgets .footer-widget li a {
    padding-top: 3px;
    display: block;
}
#footer-widgets .footer-widget li {
    padding-left: 0;
}
.footer-logo {
    background: url("/wp-content/themes/Divi-visitvirolahti/vaaka_visitvirolahti.png") no-repeat;
    background-size: contain;
    background-position: 50%;
    width: 400px;
    height: 200px;
    max-width: 80%;
    margin: auto;
}
.footer-logo:after {
    content: " ";
    background: url("/wp-content/themes/Divi-visitvirolahti/v-kaari-green.png") no-repeat;
    background-size: cover;
    background-position: 50%;
    width: 50px;
    height: 50px;
    margin: auto;
    bottom: -15px;
    left: 50%;
    margin-left: -25px;
    position: absolute;
}
#footer-widgets {
    padding-top: 65px;
}
.footer-widget {
    margin-bottom: 65px;
}
.textwidget {
    font-weight: 300;
}
#footer-bottom {
    display: none;
}


/* alisivun tyylit */

.image-container {
    padding-top: 0px!important;
    max-width: none!important;
    width: 100%;
}
.big-image {
    height: 540px;
    background-size: cover;
    background-position: 50%;
    padding-top: 180px;
}
.big-image:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    background: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.15));
    top: 0;
    left: 0;
}
.image-container:after {
    height: 80px;
    width: 1px;
    position: absolute;
    content: " ";
    background: rgba(255, 255, 255, 0.8);
    left: 50%;
    bottom: -10px;
}
.vv-logo {
    position: relative;
    display: block;
    margin: auto;
    width: 400px;
    height: 200px;
    z-index: 2;
    background: url("/wp-content/themes/Divi-visitvirolahti/vaaka_visitvirolahti.png") no-repeat;
    background-size: cover;
    -webkit-animation: vvlogo 2s ease-out;
    -moz-animation: vvlogo 2s ease-out;
    -ms-animation: vvlogo 2s ease-out;
    -o-animation: vvlogo 2s ease-out;
    animation: vvlogo 2s ease-out;
}
#content-area {
    padding-bottom: 65px;
    padding-top: 20px;
}
#left-area {
    width: 70%;
    padding-left: 35px;
}
.entry-content a {
    text-decoration: underline;
}
.entry-content a:hover {
    text-decoration: none;
}
/*#left-area a {
    color: #2ea3f2;
}
#left-area a:hover {
    color: #1f5187;
}*/

/* sidebar */
.side-menu {
    width: 24%;
    float: left;
}
.side-menu a {
    color: #1a1b1c;
    padding-top: 2px;
    padding-bottom: 3px;
    display: block;
}
.side-menu a:hover {
    color: #007b3d;
}
.side-menu ul li,
.side-menu ul li ul li ul li,
.side-menu ul li ul li ul li ul {
    display: none;
}
.side-menu .sub-menu .sub-menu {
    margin-left: 10px;
}
.side-menu ul .current_page_item,
.side-menu ul li ul li,
.side-menu .current_page_parent {
    display: block;
}

.side-menu .current-menu-ancestor,
.side-menu .current-menu-ancestor>ul,
.side-menu ul li ul li.current_page_item ul li,
.side-menu ul .current-menu-ancestor .sub-menu .current-menu-ancestor .sub-menu li,
.side-menu ul li ul li ul .current-menu-item ul {
    display: block !important;
}
.side-menu li.current-menu-item a {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
    display: block;
}
.side-menu li.current-menu-item ul li a {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 8px;
}
.side-menu li.current-menu-parent a {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 7px;
    display: block;
}
.side-menu li.current-menu-ancestor a {
    margin-bottom: 6px;
}
.side-menu li.current-menu-parent ul li a {
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 8px;
}
.side-menu li.current_page_item a {
    color: #007b3d;
    text-decoration: underline;
}
.side-menu li.current_page_item ul li a {
    text-decoration: none;
}
.side-menu li.current_page_item .sub-menu a {
    color: #1a1b1c;
}
.side-menu li.current_page_item .sub-menu a:hover {
    color: #007b3d;
}
.side-menu .sub-menu {
    padding-left: 10px;
}


@media (min-width: 981px) {
    .et_header_style_left #et-top-navigation {
        padding-right: 10px;
    }
    #top-menu {
        padding-right: 20px;
        margin-top: 1px;
    }
    .v-menu {
        margin-left: 6px;
    }
    .v-menu a {
        padding-left: 6px;
        padding-bottom: 10px;
        display: block;
    }
    .et-fixed-header #top-menu .current-lang a {
        color: #dddc00!important;
    }
     #mobilesidebar {
        display: none;
    }
    .side-menu {
        display: block;
    }
    #main-content .container:before {
        background-color: transparent;
    }
}

@media (max-width: 1200px) {
    .big-image {
        height: 480px;
    }
}

@media (max-width: 980px) {
    /*fixed header for mobile*/

    /*.et_fixed_nav #main-header.et-fixed-header  {
        position: fixed;
        background: rgba(43,44,47,0.92);
        height: 55px;
    }
    .et-fixed-header .logo_container {
        height: 55px;
    }
    .et-fixed-header .mobile_menu_bar {
        padding-bottom: 5px;
    }*/
    .big-image {
        height: 360px;
        padding-top: 70px;
    }
    .et_divi_100_custom_hamburger_menu__icon div {
        width: 110%;
    }
    .small-box {
        height: 280px;
    }
    .big-box {
        height: 400px;
    }
    .small-box:after {
        background: rgba(0, 0, 0, 0.1);
    }
    .small-box .et_pb_text_inner {
        font-size: 20px;
    }
    .small-box .et_pb_text_inner:after {
        opacity: 1;
    }
    .nostolaatikko .et_pb_text_inner:after {
        opacity: 1;
        margin-top: 5px;
    }
    .main .et_pb_blurb_content {
        margin-top: 3px;
        margin-bottom: 3px;
    }
    .main .et_pb_blurb_content img {
        height: 32px;
        /*filter: grayscale(0%);*/
    }
    #main-header .et_mobile_menu {
        background-color: rgba(43,44,47,0.92)!important;
    }
    #main-header .et_mobile_menu li a {
        font-size: 18px;
        padding-top: 12px;
        padding-bottom: 15px;
    }
    #mobile_menu li.lang-item {
        display: inline-block;
    }
    #mobile_menu li.lang-item a {
        padding-right: 12px;
        font-size: 14px;
        opacity: 0.8;
        display: inline-block;
    }
    #mobile_menu li.lang-item.current-lang a {
        color: #dddc00;
        opacity: 1;
    }
    #mobile_menu li.lang-item:first-child {
        margin-left: 5%;
    }
    .some-column {
        width: 100%;
        padding-left: 65px;
        padding-right: 65px;
    }
    .sivuvalikko .widget_nav_menu { 
        padding-left: 0px;
    }
    #mobilesidebar {
        display: block;
        margin-top: 35px;
        width: 100%;
    }
    .side-menu {
        display: none;
    }
}

@media (max-width: 767px) {
   .hero h1 {
    font-size: 30px;
   }
  .footer-logo {
    width: 340px;
  }
  .footer-logo:after {
    bottom: -5px;
  }
  #footer-widgets {
    padding-top: 60px;
  }
}

.single-post #main-header {
    background-color: rgba(43,44,47,0.95);
}
@media (min-width: 981px) {
    .single-post #sidebar {
        width: 30%;
        padding-left: 7%;
    }
    .single-post #main-content:before {
        content: "";
        position: absolute;
        background: #f9f9f9;
        right: 0;
        top: 0px;
        width: 30%;
        height: 100%;
        z-index: -1;
    }
    .single-post #left-area {
        padding-left: 5%;
    }
}
@media (min-width: 1500px) {
    .single-post #left-area {
        padding-left: 8%;
    }
}
@media (min-width: 2000px) {
    .single-post #left-area {
        padding-left: 10%;
    }
}
.single-post #main-content {
    padding: 180px 5% 5% 5%;
    background-color: transparent;
}
.single-post #main-content p {
    max-width: 1000px;
}
#sidebar .et_pb_widget a, .divi-side .et_pb_widget a {
    color: #1a1b1c!important;
    text-decoration: none;
}
#sidebar .et_pb_widget a:hover, .divi-side .et_pb_widget a:hover {
    text-decoration: underline;
}
#sidebar .widgettitle, .divi-side .widgettitle {
    margin-bottom: 8px;
}
.et_pb_widget_area_left {
    border-right: none;
}
.et_pb_blog_grid .entry-title:hover {
    text-decoration: underline;
}
.single-post #left-area h2 {
    margin-top: 10px;
}
.single-post .wp-block-image figcaption {
    margin-bottom: 18px;
    line-height: 24px;
}

@media (max-width: 980px) {
    .single-post #main-content {
        padding-top: 100px;
    }
}

@keyframes intro {
    0% { 
        padding-left: 10px; 
        opacity: 0;
    }
    50% { 
        padding-left: 10px; 
        opacity: 0;
    }
    100% { 
        padding-left: 6px; 
        opacity: 1;
    }
}

@keyframes vvlogo {
    0% { 
        opacity: 0;
    }
    40% { 
        opacity: 0;
    }
    100% { 
        opacity: 1;
    }
}

#top-menu li:first-child a {
    background: #007a3d;
    padding: 12px 30px!important;
    border-radius: 20px;
    display: inline;
}
#top-menu li:first-child a:hover {
    background: #202020;
    color: white;
}

@media (max-width: 980px) {
    #et_mobile_nav_menu .menu-item-type-custom {
        display: inline-block;
        margin-left: 4.7%;
        margin-bottom: 40px;
        margin-top: -11px;
    }
    #mobile_menu li.lang-item a {
        padding-right: 0;
    }
    #et_mobile_nav_menu .menu-item-type-custom a {
        font-size: 14px!important;
    }
    .et_mobile_menu {
        padding: 25px;
    }
    #mobile_menu:before {
        content:"";
        background: rgba(43,44,47,0.92);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 78px;
        z-index: -1;
    }
}

.wp-block-buttons {
    margin-top: 10px;
    margin-bottom: 15px;
}
.wp-block-button.blackbutton a {
    background-color: #32373c;
}
.wp-block-button.blackbutton a:hover {
    background-color: #007a3d;
}
.et_pb_button.etusivu-painike {
    text-decoration: none;
    width: 100%;
    color: #1a1b1c;
}
.et_pb_button.etusivu-painike:hover {
    color: #007a3d;
}
body #page-container .et_pb_section .et_pb_button.etusivu-painike:after {
    margin-left: 0;
    font-size: 20px!important;
}
body #page-container .et_pb_section .et_pb_button.etusivu-painike:hover:after {
    margin-left: 6px;
}
.entry-content .wp-element-button, .entry-content .wp-block-button__link {
    text-decoration: none;
    background-color: #007a3d;
}
.entry-content .wp-element-button:hover, .entry-content .wp-block-button__link:hover {
    text-decoration: none;
    background-color: #32373c;
}
.entry-content p:not(.has-background):last-of-type {
    padding-bottom: 1em;
}