/*
Theme Name: Nupsu
Theme URI: 
Author: Martin Talimets
Author URI: 
Description: Nupsu Mängumaa OÜ
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: nupsu
Tags: 
*/

body {
    font-family: 'Comic neue', sans-serif;
    background-color: #f9f4eb;
}

h1 {
    color: #232156;
    font-size: 18px;
    line-height: 22px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    margin: 0;
}

@media (min-width: 64em) {
    h1 {
        font-size: 32px;
        line-height: 37px;
    }
}

h2 {
    color: #232156;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;
    margin: 0;
}

h3 {
    color: #232156;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    margin: 0;
}

p {
    color: #222222;
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    margin: 0;
}

.header__container {
    padding: 16px;
    background-color: #ffffff;

    .header__content {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        max-width: 1216px;
        margin: 0 auto;
        padding: 0;

        .navbar-toggler:focus,
        .navbar-toggler {
            padding: 0;
            border: 0;
            box-shadow: none;
        }

        .navbar-toggler:not(.collapsed) {
            svg:nth-child(1) {
                display: none;
            }
        }

        .navbar-toggler.collapsed {
            svg:nth-child(2) {
                display: none;
            }
        }

        .navbar-collapse {
            flex-grow: 0;
        }

        .header__logo {
            img {
                width: 188px;
                height: 53px;
            }
        }

        .header__navigation {
            display: flex;
            flex-direction: column;
            gap: 16px;
            padding: 16px;

            .header__menu {
                display: flex;
                flex-direction: column;
                gap: 16px;
                padding: 0;
                margin: 0;

                li {
                    padding: 6px 0;
                }

                li::marker {
                    content: "";
                }

                a {
                    text-decoration: none;
                    font-size: 16px;
                    font-weight: 700;
                    line-height: 19px;
                    color: #1B1B1B;
                }

                .current-menu-item {
                    position: relative;
                    padding-left: 20px;

                    a {
                        color: #423E9D;
                        font-size: 16px;
                        font-weight: 700;
                        line-height: 22px;
                    }
                }

                .current-menu-item::after {
                    content: "";
                    position: absolute;
                    left: 0;
                    top: 50%;
                    transform: translateY(-50%);
                    border-left: 5px solid transparent;
                    border-right: 5px solid transparent;
                    border-bottom: 5px solid #423E9D;
                    width: 0;
                    height: 0;
                }
            }

            .dropdown {
                display: flex;
                align-items: center;

                a {
                    text-decoration: none;
                    text-transform: uppercase;
                    font-size: 16px;
                    font-weight: 400;
                    line-height: 25px;
                    color: #252A2D;
                }

                a::after {
                    display: none;
                }

                svg {
                    margin-left: 4px;
                }

                .dropdown-menu {
                    padding: 8px;
                    min-width: unset;

                    li {
                        margin-bottom: 8px;
                    }

                    li:last-child {
                        margin-bottom: 0;
                    }

                    li:hover {
                        a {
                            color: #423E9D;
                        }
                    }
                }
            }
        }
    }
}

.footer__container {
    background-color: #232156;
    padding: 32px 16px;

    .footer__content {
        max-width: 1216px;
        margin: 0 auto;

        .footer__content-row {
            display: flex;
            flex-direction: column;
            gap: 32px;
            padding-bottom: 32px;
            border-bottom: 1px solid rgba(255, 255, 255, 0.15);

            .footer__block-form {
                display: flex;
                flex-direction: column;
                gap: 8px;

                p {
                    color: #ffffff;
                    font-size: 16px;
                    font-weight: 700;
                    line-height: 22px;
                    margin-bottom: 8px;
                }

                button {
                    color: #232156;
                    font-size: 18px;
                    font-weight: 700;
                    line-height: 21px;
                    background-color: #ffffff;
                    margin-top: 16px;
                    border: 1px solid #000000;
                }

                textarea,
                input {
                    width: 100%;
                    background-color: #ffffff;
                    border: 1px solid #ECECEC;
                    padding: 16px;

                    font-size: 14px;
                    font-weight: 400;
                    line-height: 22px;
                    color: #61696E;
                }

                .contact-object-form {
                    width: 100%;
                    display: flex;
                    flex-direction: column;
                    gap: 8px;
                }
            }

            .footer__block.footer__block--desktop .footer__logos {
                display: none;
            }

            .footer__block {
                display: flex;
                flex-direction: row;
                gap: 73px;

                .footer__logos {
                    display: flex;
                    flex-direction: column;
                    gap: 71px;

                    .footer__logo {
                        width: 134px;
                        height: 134px;
                    }

                    .footer__logo-stamps {
                        width: 198px;
                        display: flex;
                        flex-direction: row;
                        gap: 18px;

                        div {
                            display: flex;
                            align-items: center;
                            flex: 1;
                        }

                        img {
                            width: 100%;
                        }
                    }
                }

                .footer__menu {
                    padding: 0;
                    margin: 0;

                    li::marker {
                        content: "";
                    }

                    a {
                        text-decoration: none;
                        font-size: 14px;
                        font-weight: 400;
                        line-height: 30px;
                        color: rgba(255, 255, 255, 0.8);
                    }

                    .current-menu-item {
                        a {
                            color: #ffffff;
                            font-size: 16px;
                            font-weight: 700;
                            line-height: 22px;
                        }
                    }
                }
            }
        }

        .footer__copyright {
            color: rgba(255, 255, 255, 0.8);
            font-size: 16px;
            font-weight: 400;
            line-height: 25px;
            margin-top: 32px;
            text-align: center;
        }
    }
}

.anchor__button {
    display: inline-block;
    padding: 16px 0;
    background-color: #232156;
    text-align: center;
    text-decoration: none;

    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 21px;

    transition: background-color 0.3s;

    &:hover {
        background-color: #423E9D;
    }
}

.nupsu__button {
    padding: 16px 0;
    background-color: #232156;
    text-align: center;
    text-decoration: none;

    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 21px;

    transition: background-color 0.3s;

    &:hover {
        background-color: #423E9D;
    }
}

.nupsu__button--white {
    color: #232156;
    background-color: #ffffff;

    &:hover {
        background-color: #ffffff;
    }
}

.nupsu__button--no-bg {
    background-color: transparent;
    color: #ffffff;

    &:hover {
        background-color: transparent;
    }
}

.blog-post {
    background-color: #FAFAFA;
    padding-bottom: 56px;

    .blog-post__content {
        width: 100%;
        margin: 0 auto;
        max-width: 328px;
        padding: 0 16px;

        .wp-block-post-content {
            margin: 0 auto;
            max-width: 800px;
        }

        .wp-block-post-title {
            font-size: 48px;
            font-weight: 700;
            line-height: 56px;
            letter-spacing: 0.02em;
            color: #232156;
            margin: 25px auto 32px;
            max-width: 800px;
        }
    }
}

.nupsu-page {
    background-color: #FAFAFA;
    padding-bottom: 56px;

    .nupsu-page__content {
        width: 100%;
        margin: 0 auto;
        max-width: 328px;
        padding: 0 16px;
    }
}

.yoast-breadcrumbs {
    background-color: #FAFAFA;
    padding: 16px;

    > span {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 9px;

        width: 100%;
        margin: 0 auto;
    }

    span,
    a {
        font-size: 14px;
        font-weight: 400;
        line-height: 22px;
        text-decoration: none;
        color: #222222;
    }

    .breadcrumb_last {
        color: #61696E;
    }
}

.breadcrumbs-white {
    margin-bottom: 16px;

    > span {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 9px;
    }

    span,
    a {
        font-size: 14px;
        font-weight: 400;
        line-height: 22px;
        text-decoration: none;
        color: #ffffff;
    }

    .breadcrumb_last {
        color: #D1D1D1;
    }
}

.breadcrumbs-arrow {
    margin-bottom: 2px;
}

@media (min-width: 37.5em) {
    .yoast-breadcrumbs {
        > span {
            max-width: 1216px;
        }
    }
}

@media (min-width: 48em) {
    .blog-post {
        .blog-post__content {
            max-width: 768px;
        }
    }

    .nupsu-page {
        .nupsu-page__content {
            max-width: 768px;
        }
    }

    .footer__container {
        .footer__content {
            .footer__copyright {
                text-align: left;
            }

            .footer__content-row {
                flex-direction: row;
                justify-content: space-between;

                .footer__block {
                    gap: 32px
                }

                .footer__block.footer__block--desktop .footer__logos {
                    display: flex;
                }

                .footer__block.footer__block--mobile {
                    display: none;
                }
            }
        }
    }
}

@media (min-width: 992px) {
    .header__container {
        .header__content {
            .header__navigation {
                flex-direction: row;

                .header__menu {
                    gap: 8px;
                    flex-direction: row;

                    li,
                    .current-menu-item {
                        padding: 6px 10px;
                    }

                    .current-menu-item::after {
                        left: 50%;
                        top: unset;
                        bottom: 0;
                        transform: translateX(-50%);
                    }
                }
            }
        }
    }
}

@media (min-width: 64em) {
    .breadcrumbs-white {
        margin-bottom: 25px;
    }

    .yoast-breadcrumbs {
        padding-left: 64px;
        padding-right: 64px;
    }

    .nupsu-page {
        .nupsu-page__content {
            max-width: 1216px;
        }
    }

    .blog-post {
        .blog-post__content {
            max-width: 1216px;
        }
    }

    .footer__container {
        padding: 64px;

        .footer__content {
            .footer__content-row {
                gap: 32px;
                padding-bottom: 32px;

                .footer__block {
                    gap: 73px
                }
            }
        }
    }
}

@media (min-width: 90em) {
    .nupsu-page {
        .nupsu-page__content {
            max-width: 1216px;
        }
    }

    .blog-post {
        .blog-post__content {
            max-width: 1216px;
        }
    }


    .header__container {
        .header__content {
            .header__navigation {
                .header__menu {
                    li,
                    .current-menu-item {
                        padding: 6px 20px;
                    }
                }
            }
        }
    }
}

/* Utility class to remove text decoration */
.no-underline {
    text-decoration: none !important;
}

/* Utility class for font weight */
.font-semibold {
    font-weight: 600 !important;
}