/* =========================================================
   HEADER PREMIUM COMPACTO — Loja da Barba
   Proporções compactas, SVGs Retina e estados acessíveis.
   Reverter: remova CSS/JS premium compacto do header.twig.
   ========================================================= */

.ldb-ui-icon {
    display: block;
    width: 1em;
    height: 1em;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
    shape-rendering: geometricPrecision;
}

.ldb-ui-icon circle,
.ldb-ui-icon path,
.ldb-ui-icon rect {
    vector-effect: non-scaling-stroke;
}

/* Faixa superior clara: separa visualmente as duas áreas do cabeçalho. */
.top-advantage-bar {
    background: #f7f2e8 !important;
    color: #1e392a !important;
    border-bottom-color: rgba(184, 146, 58, 0.42) !important;
    box-shadow: 0 1px 0 rgba(30, 57, 42, 0.05) !important;
}

.top-advantage-bar .top-highlight,
.top-advantage-bar .top-icon {
    color: #795b18 !important;
}

.top-advantage-bar .top-icon {
    display: inline-flex;
    width: 16px;
    height: 16px;
    font-size: 16px;
}

.top-advantage-bar .top-advantage-link:hover,
.top-advantage-bar .top-advantage-link:focus-visible {
    color: #10281c !important;
}

header#site-header .ldb-ui-icon {
    color: currentColor;
}

header#site-header #search {
    filter: drop-shadow(0 3px 10px rgba(8, 25, 17, 0.12));
}

header#site-header #search .input-lg {
    background: #fbf8f1 !important;
    border: 1px solid rgba(30, 57, 42, 0.13) !important;
    border-right: 0 !important;
    color: #26342d !important;
    font-weight: 400;
}

header#site-header #search .input-lg::placeholder {
    color: #707a75;
    opacity: 1;
}

header#site-header #search .input-lg:focus {
    background: #fff !important;
    border-color: #d4af68 !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 104, 0.17) !important;
}

header#site-header #search .input-group-btn {
    position: relative;
    z-index: 4;
}

header#site-header #search .btn-lg {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    padding: 0 !important;
    background: #d4af68 !important;
    border: 1px solid #d4af68 !important;
    color: #173426 !important;
}

header#site-header #search .btn-lg .ldb-ui-icon {
    width: 19px;
    height: 19px;
    transition: transform 0.2s ease;
}

header#site-header #search .btn-lg:hover,
header#site-header #search .btn-lg:focus-visible {
    background: #e0bf79 !important;
    border-color: #e0bf79 !important;
    color: #10281c !important;
}

header#site-header #search .btn-lg:hover .ldb-ui-icon,
header#site-header #search .btn-lg:focus-visible .ldb-ui-icon {
    transform: scale(1.06);
}

header#site-header #search .btn-lg:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -4px;
}

header#site-header .header-contact-btn .ldb-ui-icon,
header#site-header .circleBtn .ldb-ui-icon {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    transition: color 0.22s ease, transform 0.22s cubic-bezier(0.34, 1.4, 0.64, 1);
}

header#site-header .header-contact-btn .ldb-ui-icon {
    width: 18px;
    height: 18px;
    color: #d4af68;
}

header#site-header .circleBtn:hover .ldb-ui-icon,
header#site-header .circleBtn:focus-visible .ldb-ui-icon,
header#site-header .header-contact-btn:hover .ldb-ui-icon,
header#site-header .header-contact-btn:focus-visible .ldb-ui-icon {
    color: #d4af68;
    transform: translateY(-1px) scale(1.06);
}

.ldb-header-location__trigger .ldb-ui-icon {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    margin-top: 1px;
    color: #d4af68;
}

.ldb-header-location__trigger:hover .ldb-ui-icon,
.ldb-header-location__trigger:focus-visible .ldb-ui-icon {
    color: #fff;
}

@media (min-width: 992px) {
    :root {
        --ldb-top-advantage-height: 34px;
    }

    header#site-header > .container {
        min-height: 76px;
    }

    header#site-header .row.flexwrap991 {
        min-height: 76px;
        gap: 10px;
    }

    header#site-header #logo {
        min-height: 76px !important;
        height: 76px !important;
    }

    header#site-header #logo img.site-logo,
    header#site-header #logo img.site-logo.img-responsive {
        height: 72px !important;
        max-height: 72px !important;
    }

    header#site-header .header-search-col {
        flex: 1 1 520px;
        max-width: 520px;
    }

    header#site-header .header-search-col #search {
        max-width: 520px;
    }

    header#site-header #search .input-lg,
    header#site-header #search .btn-lg {
        height: 44px !important;
    }

    header#site-header #search .input-lg {
        padding-left: 18px !important;
        font-size: 13px !important;
        border-radius: 24px 0 0 24px !important;
    }

    header#site-header #search .btn-lg {
        width: 46px;
        border-radius: 0 24px 24px 0 !important;
    }

    header#site-header .header-icons-col .d-flex {
        gap: 6px;
    }

    header#site-header .header-contact-btn {
        min-height: 40px;
        padding: 8px 12px !important;
        border-color: rgba(255, 255, 255, 0.25) !important;
        border-radius: 21px !important;
    }

    header#site-header .circleBtn,
    header#site-header .dropdown-toggle.circleBtn {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px;
        padding: 0 !important;
        border-radius: 50% !important;
    }

    header#site-header .circleBtn:hover,
    header#site-header .circleBtn:focus-visible {
        background: rgba(255, 255, 255, 0.08) !important;
    }

    header#site-header .cimenu {
        margin-top: 0 !important;
        border-top: 1px solid rgba(255, 255, 255, 0.07);
        border-bottom: 1px solid rgba(212, 175, 104, 0.32);
    }

    body.ldb-header-scrolled header#site-header .cimenu {
        margin-top: 0 !important;
    }

    .cimenu.ldb-menu-phase3 #menu {
        min-height: 58px;
        padding: 0 !important;
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-collapse,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav {
        min-height: 58px;
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li > a {
        min-height: 58px;
        padding-top: 9px !important;
        padding-bottom: 9px !important;
        border-bottom: 2px solid transparent;
        transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease !important;
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li > a:hover,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li > a:focus-visible,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li > a.is-current,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.is-current > a {
        background: rgba(212, 175, 104, 0.08) !important;
        border-bottom-color: #d4af68 !important;
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li > a:focus-visible {
        outline: 2px solid #d4af68;
        outline-offset: -3px;
    }

    /* OFERTAS funciona como CTA sem recorrer ao vermelho promocional. */
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a {
        align-items: center;
        min-height: 44px;
        margin: 7px 2px;
        padding-top: 7px !important;
        padding-bottom: 7px !important;
        color: #f3d78f !important;
        background: rgba(212, 175, 104, 0.1) !important;
        border: 1px solid rgba(212, 175, 104, 0.52) !important;
        border-radius: 10px;
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a .ldb-mega-trigger-icon {
        color: #e0bf79 !important;
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a:hover,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a:focus-visible,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a.is-current,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers.is-current > a {
        color: #173426 !important;
        background: #d4af68 !important;
        border-color: #d4af68 !important;
        box-shadow: 0 5px 14px rgba(8, 25, 17, 0.14);
    }

    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a:hover .ldb-mega-trigger-icon,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a:focus-visible .ldb-mega-trigger-icon,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers > a.is-current .ldb-mega-trigger-icon,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li.ldb-mega-offers.is-current > a .ldb-mega-trigger-icon {
        color: #173426 !important;
    }

    .cimenu.ldb-menu-phase3 .ldb-mega-trigger-icon {
        width: 28px;
        height: 28px;
    }

    body.ldb-header-scrolled header#site-header {
        padding: 0 !important;
    }

    body.ldb-header-scrolled header#site-header > .container,
    body.ldb-header-scrolled header#site-header .row.flexwrap991 {
        min-height: 62px;
    }

    body.ldb-header-scrolled header#site-header #logo {
        min-height: 62px !important;
        height: 62px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    header#site-header .header-search-col {
        flex-basis: 340px;
        max-width: 340px;
    }

    header#site-header .header-search-col #search {
        max-width: 340px;
    }
}

@media (max-width: 767px) {
    :root {
        --ldb-top-advantage-height: 30px;
        --ldb-mobile-header-height: 54px;
        --ldb-mobile-header-cep-row: 24px;
    }

    .top-advantage-bar {
        font-size: 10.5px;
    }

    .top-advantage-bar .top-icon {
        width: 14px;
        height: 14px;
        font-size: 14px;
    }

    header#site-header > .container {
        padding: 0 8px !important;
    }

    header#site-header .row.flexwrap991 {
        gap: 3px 8px !important;
    }

    header#site-header #logo img.site-logo {
        max-height: 30px !important;
        max-width: 72px !important;
    }

    header#site-header #search {
        filter: none;
    }

    header#site-header #search .input-lg,
    header#site-header #search .btn-lg {
        height: 42px !important;
    }

    header#site-header #search .input-lg {
        padding-left: 14px !important;
        border-radius: 22px 0 0 22px !important;
    }

    header#site-header #search .btn-lg {
        width: 44px;
        border-radius: 0 22px 22px 0 !important;
    }

    .ldb-header-location__trigger .ldb-ui-icon {
        width: 15px;
        height: 15px;
        margin-top: 0;
    }

    body.ldb-header-scrolled {
        --ldb-mobile-header-height: 52px;
    }

    body.ldb-header-scrolled header#site-header {
        height: auto !important;
        min-height: calc(var(--ldb-mobile-header-height) + var(--ldb-mobile-header-cep-row)) !important;
        padding: 0 0 2px !important;
    }

    body.ldb-header-scrolled header#site-header #search .input-lg,
    body.ldb-header-scrolled header#site-header #search .btn-lg {
        height: 40px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    header#site-header .ldb-ui-icon,
    header#site-header #search .btn-lg .ldb-ui-icon,
    .cimenu.ldb-menu-phase3 #menu .navbar-nav > li > a {
        transition: none !important;
    }
}
