/*
Theme Name: SMB Betonjerka
Author: Nemanja Janjic
Author URI: https://nstudio.rs/
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: smb_betonjerka
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

.open-sans-300 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-400 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-500 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-600 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-700 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.open-sans-800 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.oswald {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}

.oswald-200 {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
}

.oswald-300 {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
}

.oswald-400 {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

.oswald-500 {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

.oswald-600 {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}

.oswald-700 {
    font-family: "Oswald", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}

.montserrat-100 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
}

.montserrat-200 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    font-style: normal;
}

.montserrat-300 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
}

.montserrat-400 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

.montserrat-500 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

.montserrat-600 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
}

.montserrat-700 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}

.montserrat-800 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
}

.montserrat-900 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 900;
    font-style: normal;
}

body {
    font-family: "Montserrat", sans-serif;
    background-color: #F7F7F7;
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    font-stretch: 100%; /* Adjust width between 75%–125% */
    margin: 0;
    word-break: break-word;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
    outline-width: 2px;
    outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
    margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
    outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    outline-offset: 0;
}

/*
 * Fonts
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
    text-wrap: pretty;
    margin-block: 0;
}

h1,
.h1 {
    font-size: 40px;
    line-height: 120%;
    font-weight: 700;
    @media screen and (min-width: 767.8px) {
        font-size: 64px;
    }
}

h2,
.h2 {
    font-size: 34px;
    line-height: 120%;
    font-weight: 700;
    margin-bottom: 20px;
    @media screen and (min-width: 767.8px) {
        font-size: 56px;
        margin-bottom: 20px;
    }
}

h3,
.h3 {
    font-size: 30px;
    line-height: 120%;
    font-weight: 700;
    margin-bottom: 20px;
    @media screen and (min-width: 767.8px) {
        font-size: 36px;
    }
}

h4,
.h4 {
    font-size: 20px;
    line-height: 120%;
    font-weight: 400;
}

p {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    margin-bottom: 20px;
}

li {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    margin-bottom: 20px;
}

.uppercase {
    text-transform: uppercase;
}

img {
    max-width: 100%;
    height: auto;
}

.buttons-wrapper {
    margin-block: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
}

.j-center {
    justify-content: center;
}

/*
==========================
COLORS
==========================
 */
:root {
    --black-100: #000;
    --black-200: #212322;
    --grey-100: #848380;
    --grey-200: #f7f7f7;
    --grey-300: #B1B3B6;
    --grey-400: #F9F9FA;
    --grey-900: #e1e6e9;
    --white: #FFF;
    --vh: 100vh; /* fallback */
    --yellow-100: #FFC326;
    --yellow-900: #ffae1a;
    --blue-100: #0d60ae;
}

.black {
    color: var(--black-100);
}

.white {
    color: var(--white);
}

.grey-100 {
    color: var(--grey-100);
}

.blue-100 {
    color: var(--blue-100);
}


body {
    min-height: 100vh;
}

header {
    position: sticky;
    top: 0;
    left: 0;
    padding: 5px 0;
    background: var(--grey-200);
    z-index: 99;
}

#logo-wrapper img {
    width: 50px;
    height: auto;
}
@media (min-width: 992px) {
    #logo-wrapper img {
        width: 80px;
        height: auto;
    }
}
a {
    transition: all .5s ease-in-out;
}

.button {
    display: inline-block;
    padding: 20px 32px;
    text-decoration: none;
    text-align: center;

}

.yellow-100-button {
    background: var(--yellow-100);
    color: var(--black-100);
}

.yellow-100-button:hover {
    background: var(--blue-100);
    color: var(--white);
}

section {
    position: relative;
    overflow: hidden;
    padding-block: 80px;
    @media screen and (min-width: 991.8px) {
        padding-block: 120px 80px;
    }
}

section .container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.row {
    row-gap: 20px;
}

header .row {
    align-items: center;
}

nav.main-navigation ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    list-style-type: none;
    padding: 0;
    margin: 0;
    gap: 20px;
}

nav.main-navigation ul li {
    /*padding: 15px;*/
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: relative;
    margin: 0;
}

nav.main-navigation ul li a {
    color: var(--black-200);
    text-decoration-line: none;
    padding: 15px;
}


nav.main-navigation ul li a:hover {
    text-decoration-line: none;
    color: var(--blue-100);
}

nav.main-navigation ul li.button {
    margin-bottom: 0;
}

nav.main-navigation ul li.cta-button {

}

nav.main-navigation ul li.cta-button a {
    margin: 0;
    background: var(--yellow-100);
    color: var(--black-100);
    padding: 16px 32px;
    text-decoration: none;
}

nav.main-navigation ul li.cta-button a:hover {
    background: var(--blue-100);
    color: var(--white);
}

nav.main-navigation ul li.current-menu-item > a,
nav.main-navigation ul li.current-menu-ancestor > a {
    color: var(--green-200);
}

nav.main-navigation ul.sub-menu {
    position: absolute;
    left: 0;
    width: 250px;
    top: 40px;
    /*display: flex;*/
    flex-wrap: wrap;
    justify-content: flex-start;
    background-color: var(--white);
    padding: 20px 0;
    border-radius: 20px;
    gap: 10px;
    box-shadow: 0px 10px 15px 0px rgb(6, 140, 68, .4);
    display: none;
}

nav.main-navigation ul.sub-menu li {
    padding: 0 10px;
}

nav.main-navigation ul.sub-menu li a {
    padding: 0;
}

nav.main-navigation ul li.menu-item-has-children:hover > .sub-menu {
    display: flex;
}

.menu-contact-menu-container {
    position: absolute;
    top: -65px;
    right: 0;
}

.menu-contact-menu-container ul {
    padding: 0;
    margin: 0;
}

.menu-contact-menu-container ul li a {
    padding: 10px 20px;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    display: inline-block;
    background-color: #fed5ac;
    text-decoration-line: none;
}

.menu-contact-menu-container ul li a:hover {
    color: #FFF;
    text-decoration-line: none;
}


.menuToggle {
    display: none;
}

#site-navigation {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
}

nav ul#menu-language {
    gap: 10px;
}

nav ul#menu-language li a {
    padding: 15px 0;
}

nav ul#menu-language li a {
    font-weight: 500;
}

nav ul li.current-lang a {
    color: var(--green-200);
}

@media (max-width: 991.8px) {
    header {
        padding: 10px 0;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        background-color: #FFF;
        backdrop-filter: blur(25px);
        -webkit-box-shadow: 1px 2px 5px 0px rgba(0, 0, 0, .17);
        -moz-box-shadow: 1px 2px 5px 0px rgba(0, 0, 0, .17);
        box-shadow: 1px 2px 5px 0px rgba(0, 0, 0, .17);
        height: 80px;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    #menu-wrapper {
        position: relative;
    }

    .menuToggle {
        display: block;
    }

    .menuToggle {
        display: block;
        position: absolute;
        top: -12px;
        right: 15px;
        left: auto;

        -webkit-user-select: none;
        user-select: none;
        z-index: 99;
    }

    .menuToggle a {
        text-decoration: none;
        color: var(--black-200);
        transition: color 0.3s ease;
    }


    .menuToggle a:hover {
        color: var(--blue);
    }


    .menuToggle input {
        display: block;
        width: 40px;
        height: 32px;
        position: absolute;
        top: -7px;
        left: -5px;

        cursor: pointer;

        opacity: 0; /* hide this */
        z-index: 2; /* and place it over the hamburger */

        -webkit-touch-callout: none;
    }

    /*
     * Just a quick hamburger
     */
    .menuToggle span {
        display: block;
        width: 30px;
        height: 4px;
        margin-bottom: 5px;
        position: relative;
        background: var(--blue-100);
        border-radius: 5px;
        z-index: 1;
        transform-origin: 4px 0px;

        transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),
        background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),
        opacity 0.55s ease;
    }


    .menuToggle span:first-child {
        transform-origin: 0% 0%;
    }

    .menuToggle span:nth-last-child(2) {
        transform-origin: 0% 100%;
    }

    /*
     * Transform all the slices of hamburger
     * into a crossmark.
     */
    .menuToggle input:checked ~ span {
        opacity: 1;
        transform: rotate(45deg) translate(-7px, -18px);
        background: var(--yellow-100);
    }

    /*
     * But let's hide the middle one.
     */
    .menuToggle input:checked ~ span:nth-last-child(3) {
        opacity: 0;
        transform: rotate(0deg) scale(0.2, 0.2);
    }

    /*
     * Ohyeah and the last one should go the other direction
     */
    .menuToggle input:checked ~ span:nth-last-child(2) {
        transform: rotate(-45deg) translate(0, 12px);
    }


    #site-navigation {
        position: fixed;
        right: 0;
        width: 400px;
        top: 0;
        padding-top: 80px;
        max-width: 100%;
        height: 100vh;
        -webkit-font-smoothing: antialiased;
        transform-origin: 0% 0%;
        transform: translate(150%, 0);
        transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
        z-index: 1;
        background-color: rgba(255, 255, 255, 1);
        backdrop-filter: blur(25px);
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        overflow-y: auto;
        justify-content: flex-start;
        padding-bottom: 120px;
    }


    #site-navigation.visible {
        transform: translate(0, 0);
    }

    nav.main-navigation ul {
        width: 100%;
        flex-basis: 100%;
        gap: 0;
        padding: 20px;
    }

    nav.main-navigation ul li {
        width: 100%;
        flex-basis: 100%;
        text-align: center;
        font-size: 32px;
        /*color: #393939;*/
        padding: 20px 0;
        justify-content: center;

    }


    nav.main-navigation ul.nav-menu li:first-of-type {
    }

    nav.main-navigation ul.nav-menu .sub-menu li:first-of-type {
        border-top: none;
    }

    nav.main-navigation ul li a {
        font-size: 26px;
        color: var(--black-100);
        text-align: left;
        padding: 0;
        font-weight: 600;
        text-transform: uppercase;
        padding-inline: 30px;
    }

    nav.main-navigation ul.sub-menu {
        padding: 0;
        box-shadow: none;
        position: relative;
        width: 100%;
        background: rgba(255, 255, 255, 0);
        top: 0;
        left: 0;
        opacity: 1;
        border-radius: 0;
        padding-left: 20px;
        padding-top: 15px;

    }

    nav.main-navigation ul.sub-menu li {
        border: none;
    }

    nav.main-navigation ul.sub-menu li a {
        padding-left: 20px;
    }

    .language-wrapper,
    .menu-contact-menu-container {
        position: relative;
        top: auto;
        right: auto;
        width: 100%;
        margin-top: auto;
    }

    nav #menu-language {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    nav ul#menu-language li {
        padding: 0;
        border: none;
        width: auto;
        flex-basis: auto;
    }

    nav ul#menu-language li a {
        padding: 0 30px;
    }

    .menu-contact-menu-container ul li a {
        width: 100%;
        text-align: center;
        border-radius: 30px;
        font-size: 16px;
    }

    .pll-parent-menu-item .sub-menu {
        left: 20px;
    }

    .menu-main-menu-english-container {
        order: 1;
    }

    .language-wrapper {
        order: 3;
    }

    .menu-contact-menu-container {
        order: 2;
    }

    #menu-language-mneu {
        background-color: var(--white);
    }

    .pll-parent-menu-item .sub-menu {
        background-color: var(--white);
    }

    #main-menu .sub-menu {
        display: none;
        padding: 0;
        box-shadow: none;
        position: relative;
        width: 100%;
        background: rgba(255, 255, 255, 0);
        top: 0;
        left: 0;
        opacity: 1;
        display: none;
        border-radius: 0;
    }

    #main-menu .sub-menu.visible {
        display: block;
    }

}

.contact-section {
    background: var(--grey-900);
}
.contact-section iframe{
    max-width: 100%;
}
.contact-section__container .wpforms-container-full button[type="submit"] {
    background-color: var(--yellow-100) !important;
    color: var(--black-100) !important;
    display: inline-block;
    padding: 20px 32px;
    text-decoration: none;
    text-align: center;
    height: auto;
    border-radius: 0;
}

.contact-section__container .wpforms-container-full button[type="submit"]:hover {
    background-color: var(--blue-100) !important;
    color: var(--white) !important;
}

.contact-section__container div.wpforms-container-full input[type=text],
.contact-section__container div.wpforms-container-full input[type=email],
.contact-section__container div.wpforms-container-full textarea {
    border: none;
    color: var(--black-100);
    resize: none !important;
}

.contact-section__container div.wpforms-container-full input[type=text]::placeholder,
.contact-section__container div.wpforms-container-full input[type=email]::placeholder,
.contact-section__container div.wpforms-container-full textarea::placeholder {
    color: var(--blue-100);

}

footer {
    background-color: var(--black-100);
    padding: 30px 0;
    margin: 0;
    text-align: center;
    @media screen and (min-width: 991.8px) {
        text-align: left;
    }
}
footer h5{
    font-size: 20px;
    color: var(--white);
}
footer p,
footer li {
    color: var(--white);
    font-size: 16px;
    margin-bottom: 8px;
}
footer ul{
    list-style: none;
    padding: 0;
}
footer a{
    color: var(--yellow-100);
    text-decoration: none;
}
footer a:hover{
    color: var(--white);
}
footer h5{
    margin-bottom: 20px;
}
.footer-copy p{
    text-align: center;
    font-size: 14px;
}