/* ==========================================================
   HEADER / MENU — mobile-first
   Carregado depois de responsive.css; sobrescreve o legado
   (escopo .main-header.header-style-one).
   ========================================================== */

/* ---------- Base (mobile) ---------- */
.main-header.header-style-one .header-bottom {
    background: #fff;
    padding: 12px 0;
}

.main-header.header-style-one .header-bottom .logo {
    display: block;
    margin: 0;
    padding: 0;
    text-align: center;
    width: 100%;
}

.main-header.header-style-one .logo img {
    display: inline-block;
    height: 64px;
    margin: 0;
    padding: 0;
    width: auto;
}

.main-header.header-style-one .main_mane-area {
    background: #14232a;
    left: auto;
    position: relative;
    right: auto;
}

.main-header.header-style-one .menu {
    background: transparent;
    border-radius: 0;
}

.main-header.header-style-one .main-menu {
    display: block;
    float: none !important;
    margin: 0;
    padding: 0;
    width: 100%;
}

/* Botão hambúrguer (alvo de toque 48px) */
.main-header.header-style-one .main-menu .navbar-header {
    float: none;
    padding: 0;
    text-align: right;
    width: 100%;
}

.main-header.header-style-one .main-menu .navbar-header .navbar-toggle {
    background: transparent;
    border: 0;
    display: inline-flex;
    flex-direction: column;
    float: none;
    height: 48px;
    justify-content: center;
    margin: 4px 4px 4px 0;
    padding: 0 13px;
    top: auto;
    width: 52px;
}

.main-header.header-style-one .main-menu .navbar-header .navbar-toggle .icon-bar {
    background: #fff;
    border-radius: 2px;
    height: 3px;
    width: 100%;
}

.main-header.header-style-one .main-menu .navbar-header .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 5px;
}

/* Painel recolhível */
.main-header.header-style-one .main-menu .navbar-collapse {
    border: 0;
    border-radius: 0;
    margin: 0;
    max-height: none;
    overflow: visible;
    padding: 0 0 12px;
    width: 100%;
}

.main-header.header-style-one .main-menu .navbar-collapse > .navigation {
    float: none !important;
    list-style: none;
    margin: 0 !important;
    padding: 0;
    width: 100% !important;
}

.main-header.header-style-one .main-menu .navigation > li {
    border-top: 1px solid rgba(255, 255, 255, .12);
    float: none;
    margin: 0;
    padding: 0;
    text-align: left;
    width: 100%;
}

.main-header.header-style-one .main-menu .navigation > li > a {
    border-bottom: 0;
    color: #fff;
    display: block;
    font-size: 17px;
    line-height: 1.4;
    min-height: 48px;
    padding: 14px 20px;
}

.main-header.header-style-one .main-menu .navigation > li > a:hover,
.main-header.header-style-one .main-menu .navigation > li > a:focus-visible,
.main-header.header-style-one .main-menu .navigation > li.current > a {
    color: #1AAFA5;
}

.main-header.header-style-one .main-menu .navigation > li > a:focus-visible,
.main-header.header-style-one .main-menu .navbar-toggle:focus-visible {
    outline: 2px solid #1AAFA5;
    outline-offset: -2px;
}

/* Último item (Área do cliente) em destaque */
.main-header.header-style-one .main-menu .navigation > li:last-child {
    border-top: 0;
    padding: 12px 20px 0;
}

.main-header.header-style-one .main-menu .navigation > li:last-child > a {
    background: #1AAFA5;
    border-radius: 8px;
    color: #fff;
    font-weight: 700;
    text-align: center;
}

.main-header.header-style-one .main-menu .navigation > li:last-child > a:hover {
    background: #159b92;
    color: #fff;
}

/* ---------- Menu recolhível (<992px): vence as regras legadas com !important ---------- */
@media (max-width: 991.98px) {
    /* barra de ponta a ponta */
    .main-header.header-style-one .main_mane-area .container {
        padding-left: 0;
        padding-right: 0;
    }

    .main-header.header-style-one .main_mane-area .row {
        margin-left: 0;
        margin-right: 0;
    }

    .main-header.header-style-one .main_mane-area [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li {
        border-top: 1px solid rgba(255, 255, 255, .1) !important;
        margin: 0 !important;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li:first-child {
        border-top: 1px solid rgba(255, 255, 255, .1) !important;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li > a {
        background: transparent !important;
        color: #fff !important;
        font-size: 17px;
        font-weight: 500;
        line-height: 1.4;
        padding: 15px 20px !important;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li:hover > a,
    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li.current > a {
        background: rgba(26, 175, 165, .16) !important;
        color: #5fe0d6 !important;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li:last-child {
        border-top: 0 !important;
        padding: 14px 20px 4px;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li:last-child > a,
    .main-header.header-style-one .main-menu .navbar-collapse > .navigation > li:last-child:hover > a {
        background: #1AAFA5 !important;
        border-radius: 10px;
        color: #fff !important;
        font-weight: 700;
        padding: 14px 20px !important;
        text-align: center;
    }

    /* anel de foco só para teclado */
    .main-header.header-style-one .main-menu .navbar-toggle:focus:not(:focus-visible) {
        outline: 0;
    }
}

/* ---------- Tablet (768–991px): mantém o hambúrguer (o Bootstrap esconderia) ---------- */
@media (min-width: 768px) and (max-width: 991.98px) {
    .main-header.header-style-one .logo img {
        height: 80px;
    }

    .main-header.header-style-one .main-menu .navbar-header .navbar-toggle {
        display: inline-flex;
    }

    .main-header.header-style-one .main-menu .navbar-collapse.collapse {
        display: none !important;
    }

    .main-header.header-style-one .main-menu .navbar-collapse.collapse.in {
        display: block !important;
    }
}

/* ---------- Desktop (≥992px): menu em linha, sempre numa única linha ---------- */
@media (min-width: 992px) {
    .main-header.header-style-one .header-bottom {
        padding: 22px 0;
    }

    .main-header.header-style-one .header-bottom .logo {
        text-align: left;
    }

    .main-header.header-style-one .logo img {
        height: 96px;
    }

    .main-header.header-style-one:not(.fixed-header) .main_mane-area {
        background: transparent;
        left: 0;
        position: absolute;
        right: 0;
    }

    .main-header.header-style-one .menu {
        backdrop-filter: blur(6px);
        background: rgba(5, 5, 5, .6);
        border-radius: 0 0 16px 16px;
    }

    .main-header.header-style-one .main-menu .navbar-header {
        display: none;
    }

    .main-header.header-style-one .main-menu .navbar-collapse {
        padding: 0;
    }

    .main-header.header-style-one .main-menu .navbar-collapse > .navigation {
        align-items: center;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        padding: 0 8px;
    }

    .main-header.header-style-one .main-menu .navigation > li,
    .main-header.header-style-one .main-menu .navigation > li:last-child {
        border: 0;
        margin: 0;
        padding: 0;
        width: auto;
    }

    /* fonte e espaçamento acompanham a largura da tela para os 9 itens caberem em 1 linha */
    .main-header.header-style-one .main-menu .navigation > li > a {
        border-bottom: 3px solid transparent;
        font-size: clamp(13.5px, .7vw + 7px, 18px);
        min-height: 0;
        padding: 20px clamp(5px, 1.6vw - 10px, 16px) 17px;
        white-space: nowrap;
    }

    .main-header.header-style-one .main-menu .navigation > li > a:hover,
    .main-header.header-style-one .main-menu .navigation > li.current > a {
        border-bottom-color: #1AAFA5;
    }

    .main-header.header-style-one .main-menu .navigation > li:last-child > a {
        border-bottom: 0;
        border-radius: 999px;
        margin: 0 0 0 8px;
        padding: 10px clamp(12px, 1.2vw, 20px);
    }
}
