/*
Theme Name: Base51
Author: ZMI
Author URI: https://www.base51.com.ua
Description: Сайт для Саши
Tested up to: 7.0
Requires PHP: 8.0
Version: 1.0.0
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
Text Domain: base51
Tags: portfolio, e-commerce, blog, one-column, two-columns, three-columns, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, right-sidebar, custom-background, wide-blocks

Base51 is based on Glamup by Starthemes (starthemes.net), which itself is based on the Underscores theme (Underscores is distributed under the terms of the GNU GPL v2 or later).
Base51 WordPress Theme is released under the terms of GNU GPL
*/

a{
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

a:focus,
button:focus{
	outline: 2px solid blue !important;
}

.wp-block-navigation__container ul.has-background{
    padding: 0;
}
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{
    background-color: var(--wp--preset--color--secondary);
}

.wp-block-navigation__responsive-container .wp-block-navigation-link a{
    color: var(--wp--preset--color--white);
}

.wp-block-image img{
    vertical-align: middle;
}

h3.wp-block-post-title a{
	text-decoration: none !important;
}

.pos-relative{
    position: relative;
}

.has-shadow{
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.counter-box:before,
.counter-box:after {
    width: 35px;
    height: 35px;
    content: '';
    position: absolute;
}

.counter-box:after {
    bottom: 0;
    right: 0;
    border-right: 2px solid var(--wp--preset--color--primary);
    border-bottom: 2px solid var(--wp--preset--color--primary);
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

.counter-box:before {
    top: 0;
    left: 0;
    border-left: 2px solid var(--wp--preset--color--primary);
    border-top: 2px solid var(--wp--preset--color--primary);
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

.counter-box:hover::before,
.counter-box:hover::after{
    width: 100%;
    height: 100%;
}

.ser-item{
    margin: 25px 0 !important;
    position: relative;
}

.ser-thumb{
    padding: 1.875rem;
    position: relative;
}

.ser-thumb:before{
    content: '';
    position: absolute;
    top: 0;
    z-index: -1;
    right: 0;
    width: 50%;
    height: 50%;
    border: solid 2px var(--wp--preset--color--secondary);
    -webkit-transition: all .5s;
    transition: all .5s;
}

.ser-thumb:after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
    height: 50%;
    z-index: -1;
    border: solid 2px var(--wp--preset--color--secondary);
    -webkit-transition: all .5s;
    transition: all .5s;
}

.ser-item:hover .ser-thumb::before,
.ser-item:hover .ser-thumb::after{
    width: 96%;
    height: 96%;
    border-color: var(--wp--preset--color--primary);
    border-width: 7px;
    z-index: 2;
}

.footer-post-excerpt p{ 
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

form {
    position: relative;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
    width: 100%;
    margin: 10px 0;
    padding: 10px 15px;
    border: 1px solid #ebebeb;
    outline: 0;
    resize: none;
    line-height: 20px;
    background: none;
    color: #a1a1a1;
    font-weight: 400;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 18px;
    border-radius: 5px;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select::-ms-expand {
    display: none; /* hide the default arrow in ie10 and ie11 */
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus,
select:focus {
    border-color: var(--wp--preset--color--primary);
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    cursor: pointer;
    border: none;
    outline: none;
    padding: 12px 20px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: var(--wp--preset--color--primary);
    color: #ffffff;
}
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    text-align: center;
    letter-spacing: 2px;
}

.wpcf7-form label {
    display: block;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0 0 8px;
    color: #000000;
    font-weight: 700;
}

.form-group {
    margin-bottom: 30px;
}

.form-group p{
    margin: 0;
}

.form-group.half {
    width: 48%;
    margin-right: 4%;
    float: left;
}

.form-group.half.last {
    margin-right: 0;
}

.form-group.third {
    width: 32%;
    margin-right: 2%;
    float: left;
}

.form-group.third.last {
    margin-right: 0;
}


/* --- Block Media Quries
-------------------------------------------------------- */
/* --- > Media Queries
-------------------------------------------------------- */
/* --- > 781px
-------------------------------------------------------- */
@media screen and (max-width:999px) {
    .wp-block-navigation__responsive-container,
    .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{
        display: none;
    }

    .wp-block-navigation__responsive-container-close svg,
    .wp-block-navigation__responsive-container-open svg{
        width: 42px;
        height: 42px;
    }
    
    .wp-block-navigation__responsive-container-open svg path,
    .wp-block-navigation__responsive-container-close svg path{
        fill: var(--wp--preset--color--white);
    }

    .wp-block-navigation__responsive-container-close{
        top: 20px;
        right: 20px;
    }

    .wp-block-navigation__responsive-container-open:not(.always-shown){
        display: block;
    }

    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none; 
    }

    .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open{
        background-color: var(--wp--preset--color--secondary);
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
        padding: 1.5em;
    }

    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container {
        width: 100%;
        gap: 0 !important;
        border-bottom: none;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item {
        width: 100%;
        gap: 0 !important;
        border: none !important;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item a {
        width: calc( 100% - 48px );
        padding: 12px 24px 12px;
        line-height: 30px;
    }

    /*
    * Submenu Css
    */

    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation__submenu-icon {
        display: block !important;
        margin-left: 15px;
        padding: 3px 10px;
        float: right;
        font-size: 19px;
        line-height: 1;
        position: absolute;
        right: 0;
        top: 0;
        height: 42px;
        width: 42px;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation__submenu-icon svg {
        stroke: var(--wp--preset--color--white);
        display: block;
        width: 30px;
        height: 13px;
        margin: 0 !important;
        padding: 0 !important;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item ul.wp-block-navigation__submenu-container {
        width: 100%;
        gap: 0;
        margin: 0;
        padding: 0;
        display: none;
        box-shadow: none;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item ul.wp-block-navigation__submenu-container li.wp-block-navigation-item a {
        padding-left: 35px;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] + ul.wp-block-navigation__submenu-container {
        display: block;
        margin: 0;
        padding: 0;
    }
}