/* TOP BAR */

.ma-top-bar,.ma-top-bar .site_margin,.ma-top-bar .social-icons,#menu-top-bar,.ma-navigation>.ctnr,.ma-nav {
    display: flex
}

.ma-navigation>.ctnr,.ma-top-bar .site_margin,.ma-nav {
    align-items: center
}

.ma-top-bar {
    gap: 32px;
    height: 40px;
    background: var(--c4);
    width: 100%;
    padding: 5px 0px
}

.ma-top-bar .site_margin {
    flex-direction: row;
    justify-content: space-between;
    gap: 32px
}

.ma-top-bar .column-2 {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 32px;
}

.ma-top-bar .site_margin .social-icons {
    gap: 12px
}

.ma-top-bar .site_margin .social-icons a:hover svg {
    fill: var(--c3)
}

@media (max-width: 1250px) {
    .ma-top-bar {
        display:none
    }
}

#menu-top-bar {
    column-gap: 32px;
    justify-content: end
}

#menu-top-bar a {
    color: var(--c1);
    font: 400 16px/30px var(--f2)
}

#menu-top-bar .current-menu-item {
    text-decoration: underline;
    text-underline-offset: 5px
}

/* NAVIGATION */

.ma-navigation>.ctnr {
    justify-content: space-between;
    width: 100%;
    height: 100px;
    background: #EFEFEF;
    border-radius: 16px;
    margin: 16px auto 20px;
    padding: 18px 24px
}

@media (max-width: 1440px) {
    .ma-navigation>.ctnr {
        width:calc(100% - 32px);
    }
}

@media (max-width: 1250px) {
    .ma-navigation>.ctnr {
        margin-top: 0px;
        padding: 8px;
        box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.15);
        border-radius: 8px;
        height: auto
    }
}

header .menu-menu-principal-container #menu-menu-principal {
    display: flex
}

header .menu-menu-principal-container .menu-item,header .menu-menu-principal-container .menu-item>a {
    z-index: 1;
    position: relative
}

header .menu-menu-principal-container .menu-item {
    padding: 10px 16px;
    overflow: hidden
}

header .menu-menu-principal-container .menu-item>a {
    font: 400 24px/120% var(--f1);
    color: var(--c12);
    text-transform: uppercase
}

header .menu-menu-principal-container .current-menu-item>a {
    color: var(--c1)
}

header .menu-menu-principal-container .menu-item:not(.current-menu-item)>a {
    color: #8A8A8A;
    opacity: 0.5;
    transition: 500ms
}

header .menu-menu-principal-container .menu-item:not(.current-menu-item)>a:hover {
    color: #000;
    opacity: 1;
    transition: 500ms
}

header .menu-menu-principal-container .current-menu-item:before,header .menu-menu-principal-container .current-menu-item>a:after,header .menu-menu-principal-container .menu-item:not(.current-menu-item):after {
    position: absolute;
    content: ""
}

header .menu-menu-principal-container .current-menu-item:before,header .menu-menu-principal-container .menu-item:not(.current-menu-item):after {
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    background: var(--c3);
    box-sizing: border-box;
    border-radius: 8px
}

header .menu-menu-principal-container .menu-item:not(.current-menu-item):after {
    opacity: 0;
    transform: scale(0);
    transition: all 500ms 150ms ease-in-out
}

header .menu-menu-principal-container .menu-item:not(.current-menu-item):hover:after {
    opacity: 1;
    transform: scale(1)
}

header .menu-menu-principal-container .menu-item:not(.current-menu-item):active:after {
    opacity: 1;
    transform: scale(0.8)
}

header .menu-menu-principal-container .current-menu-item>a:after {
    top: 0px;
    right: -9px;
    width: 16px;
    height: 16px;
    background: center right / contain no-repeat url("/wp-content/themes/maad/assets/images/smile-white.svg");
    transform-origin: center;
    animation: smiley 1s ease-in-out forwards
}

.ma-nav {
    justify-content: space-between
}

.ma-nav .ma-menu-resp {
    display: flex
}

@media (max-width: 1400px) {
    .ma-nav {
        box-sizing:border-box
    }
}

.ma-nav .ma-cta {
    margin-left: 16px;
    height: 46px;
    box-sizing: border-box
}

.ma-nav .ma-cta img {
    width: 16px;
    height: 16px
}

@media (max-width: 1250px) {
    .ma-nav .ma-cta.btn {
        padding:8px 16px;
        border-radius: 4px
    }

    .ma-nav .ma-cta svg {
        height: 30px
    }

    .ma-nav .ma-cta span {
        display: none
    }
}

@media (max-width: 1000px) {
    .ma-logo img {
        width:clamp(165px, calc(10.3125rem + ((1vw - 3.7px) * 16.8254)), 271px);
        height: auto
    }
}

/* SEARCHFORM */

.ma-search {
    position: relative;
    z-index: 0;
    width: 64px;
    height: 50px
}

@media (max-width: 1250px) {
    .ma-search {
        width:300px;
        max-width: 100%
    }
}

.ma-search-form {
    cursor: pointer;
    box-sizing: border-box
}

@media (min-width: 1251px) {
    .ma-search-form {
        position:absolute;
        z-index: 1;
        top: 0;
        right: 0;
        bottom: 0
    }
}

.ma-search-form input {
    display: block;
    height: auto;
    border: unset;
    padding: 13px 24px;
    height: 100%;
    border: 1px solid #000;
    border-radius: 8px;
    font-family: var(--f2);
    font-size: 16px;
    width: 64px
}

@media (min-width: 1251px) {
    .ma-search-form input {
        background:#FFF;
        max-width: 100%;
        transition: width 500ms ease-in-out;
        will-change: width;
        transform-origin: right center
    }
}

@media (max-width: 1250px) {
    .ma-search-form input {
        width:100%
    }
}

.ma-search-form img,
.ma-search-form svg {
    z-index: 2;
    position: absolute;
    right: 24px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background-color: #FFF;
}

@media (max-width: 1250px) {
    .ma-search-form {
        margin-left:0px
    }
}

@media (min-width: 1251px) {
    .ma-search-form.active input {
        width:250px;
        max-width: 100%
    }
}

input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none
}

.ma-menu-resp {
    gap: 16px
}

@media (min-width: 1251px) {
    .ma-menu-resp {
        overflow:hidden
    }
}

@media (max-width: 1250px) {
    .ma-menu-resp {
        gap:32px;
        padding-top: 100px
    }
}

.menu-menu-principal-container {
    will-change: opacity
}

@media (min-width: 1251px) {
    .menu-menu-principal-container {
        transition:opacity 250ms 250ms
    }
}

@media (min-width: 1251px) {
    .menu-menu-principal-container.hidden {
        opacity:0;
        pointer-events: none;
        transition: opacity 200ms
    }
}

#ma-menu-burger {
    background-color: #FFF;
    border: 1px solid #000;
    padding: 8px 16px;
    box-sizing: border-box;
    height: 46px;
    border-radius: 4px;
    margin-left: 8px;
    display: flex;
    cursor: pointer
}

@media (min-width: 1251px) {
    #ma-menu-burger {
        display:none
    }
}

#ma-menu-burger img {
    margin: auto;
    display: block
}

@media (max-width: 1250px) {
    .ma-menu-resp {
        z-index:-1;
        pointer-events: none;
        opacity: 0;
        background-color: #119CD2;
        flex-direction: column;
        position: fixed;
        inset: -8px 8px 0 8px;
        border-radius: 8px;
        display: flex;
        justify-content: end;
        align-items: center
    }

    .ma-menu-resp.active {
        pointer-events: auto;
        opacity: 1;
        height: 70vh;
        min-height: 585px
    }

    .ma-menu-resp.active #menu-menu-principal {
        flex-direction: column;
        gap: 0px
    }

    .ma-menu-resp.active #menu-menu-principal li {
        text-align: center
    }

    .ma-menu-resp.active #menu-menu-principal li>a {
        color: #FFF
    }
}

header.blur:has(.active),body:has(.active) header.blur {
    background: #00000050;
    height: 100vh
}

body.noscroll {
    overflow: hidden
}

#ma-menu-close {
    padding-bottom: 16px;
    cursor: pointer
}

@media (min-width: 1251px) {
    #ma-menu-close {
        display:none
    }
}

@keyframes smiley {
    from {
        opacity: 0;
        transform: translateX(30px) rotate(180deg) scale(0.2)
    }

    to {
        opacity: 1;
        transform: translateX(0px) rotate(0deg) scale(1)
    }
}

header {
    z-index: 99;
    position: fixed;
    top: 0px;
    right: 0;
    left: 0;
    height: auto
}

header .ma-top-bar,header .ma-navigation {
    transform: translateY(0px)
}

header .ma-top-bar {
    transition: 1s
}

header .ma-navigation {
    transition: 1s 0.3s
}

@media (max-width: 1000px) {
    header {
        padding-top:8px
    }

    header.blur {
        padding-top: 16px
    }
}

header.sticky {
    height: 105px
}

header.sticky .ma-top-bar,
header.sticky .ma-navigation {
    transform: translateY(-50px)
}

@media (max-width: 1250px) {
    header.sticky .ma-navigation {
        transform:translateY(0px)
    }
}

header.sticky .ma-top-bar {
    transition: transform 1s 0.3s
}

header.sticky .ma-navigation {
    transition: transform 1s
}

.progress-bar.scrolled {
    background-color: var(--c6);
    border-radius: 8px
}

.progress-bar.scrolled .steps-bar {
    right: 16px;
    left: 16px;
    width: calc(100% - 64px)
}

.top-bar-mobile {
    display: none
}

.ma-menu-resp.active .top-bar-mobile {
    display: block
}

.ma-menu-resp.active .top-bar-mobile ul {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
    margin-bottom: 32px
}

.ma-menu-resp.active .top-bar-mobile li {
    text-align: center
}

.ma-menu-resp.active .top-bar-mobile li a {
    color: #FFF;
    font-family: var(--f2);
    line-height: 24px
}

.ma-menu-resp.active .top-bar-mobile .social-icons {
    display: flex;
    gap: 16px
}

.ma-nav .ma-cta svg {
    width: 20px;
    height: auto
}

/* HEADER - STICKY & BCK */

header::after {
    content: '';
    z-index: -1;
    position: absolute;
    top: 0;
    inset: 0;
    background: linear-gradient(180deg, #FFF 68%, rgba(255, 255, 255, 0.00) 100%);
    opacity: 0;
    height: 100%;
    width: 100%;
    transition: opacity 1s;
}

header.sticky::after {
    opacity: 1;
    transition: opacity 500ms;
    padding-bottom: 20px;
}
@media (min-width: 1251px) {
    .single:has(.progress-bar.scrolled) header.sticky::after {
        padding-bottom: 100px;
    }
}