/**
 * Tema Nahani - Estilos generales
 * Tipografía: Open Sans (texto), Poppins Semibold (destacados)
 */

/* Variables de tipografía */
:root {
  --nahani-font-body: 'Open Sans', sans-serif;
  --nahani-font-heading: 'Poppins', sans-serif;
  --nahani-font-display: 'Domine', serif;
  --nahani-font-size-body: 18px;
  --nahani-font-size-heading: 21px;
  --nahani-line-height: 30px;
  --nahani-letter-spacing: 0;
  --nahani-color-text: #333;
  --nahani-color-green: #6BA800;
  --nahani-color-grey: #AEAEAE;
} 

/* Texto general 
body {
  font-family: var(--nahani-font-body);
  font-size: var(--nahani-font-size-body);
  line-height: var(--nahani-line-height);
  letter-spacing: var(--nahani-letter-spacing);
  color: var(--nahani-color-text);
} */

/* Fuente especial: Poppins Semibold (títulos, destacados) 
.nahani-heading,
h1, h2, h3, h4, h5, h6,
.page-title .base,
.block .title strong {
  font-family: var(--nahani-font-heading);
  font-weight: 600;
  font-size: var(--nahani-font-size-heading);
  line-height: var(--nahani-line-height);
  letter-spacing: var(--nahani-letter-spacing);
  color: var(--nahani-color-text);
} */

/* Contenido del footer (CMS block) hereda estilos del body */
.footer.content .block-cms,
.footer.content [data-content-type='html'],
.footer.content .nahani-footer-content {
  font-family: var(--nahani-font-body);
  font-size: var(--nahani-font-size-body);
  line-height: var(--nahani-line-height);
  letter-spacing: var(--nahani-letter-spacing);
  color: var(--nahani-color-text);
}

/* Barra copyright */
.nahani-copyright-bar {
  width: calc(100% + 48px);
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
  padding: 0;
  background: #efefef;
  text-align: center;
  box-sizing: border-box;
}

.nahani-copyright-bar .copyright,
.nahani-copyright-bar .copyright span {
  font-family: var(--nahani-font-body);
  font-size: 14px;
  line-height: 1.4;
  color: #76777A;
  margin: 0;
  background: #efefef;
}

/* Footer */
.page-footer {
  background: #efefef !important;
}
.page-footer .footer-links p:first-child {
  font-family: var(--nahani-font-heading);
  font-size: var(--nahani-font-size-heading);
  background-image: url(../images/footer_ico_leaf.svg);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 28px;
}

.page-footer .footer-links a {
    font-family: var(--nahani-font-body);
    font-size: var(--nahani-font-size-body);
    color: var(--nahani-color-text);
}

.page-footer .footer-links a:hover {
    text-decoration: underline;
    color: var(--nahani-color-green);
}

/* Newsletter - .page-bottom: fondo a ancho completo de ventana */
.page-bottom {
  position: relative;
  width: 100vw !important;
  max-width: 100vw !important;
  background: url('../images/footer_bg_newsletter.png') center center / cover no-repeat;
}
.page-bottom .block.newsletter {
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    max-width: 1280px;
    padding-left: 20px;
    padding-right: 20px;
    width: auto;
}

.page-bottom .block.newsletter .title {
    margin: 50px 0 24px 0;
    display: block;
    text-align: center;
}

.page-bottom .block.newsletter .title strong {
    display: inline-block;
    font-family: var(--nahani-font-heading);
    font-size: 36px;
    line-height: 1.2;
    color: #fff;
    background-image: url(../images/footer_ico_white_leaf.svg);
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 50px;
}

.page-bottom .block.newsletter .nahani-newsletter-subtitle {
    margin: 8px auto 24px;
    max-width: 720px;
    font-family: var(--nahani-font-body);
    font-size: 18px;
    line-height: 1.6;
    text-align: center;
    color: #fff;
}

.page-bottom .block.newsletter .field.newsletter {
    margin: 0 0 16px;
}

.page-bottom .block.newsletter .field.newsletter .label span {
    display: block;
    margin-bottom: 8px;
    font-family: var(--nahani-font-body);
    font-size: 18px;
    line-height: 1.6;
    color: #fff;
}

.block.newsletter .field .control:before {
    display: none;
}

.page-bottom .block.newsletter .field.newsletter .control input {
    width: 100%;
    border-radius: 6px;
    border: none;
    font-family: var(--nahani-font-body);
    font-size: 16px;
    color: #a1a1a1;
    line-height: 50px;
    height: 50px;
    padding: 0 0 0 10px;
}

.page-bottom .block.newsletter .field.newsletter .control input::placeholder {
    color: #a1a1a1;
}

.page-bottom .block.newsletter .form.subscribe {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 12px 16px;
    overflow-x: hidden;
}

.page-bottom .block.newsletter .form.subscribe .field.newsletter {
    flex: 1 1 280px !important;
    width: 370px;
    max-width: 370px;
    padding-left: 90px;
}

.page-bottom .block.newsletter .form.subscribe .actions {
    flex: 0 0 auto;
    display: flex;
    align-items: stretch;
}

.page-bottom .block.newsletter .form.subscribe .action.subscribe.primary {
    padding: 0 32px;
    border-radius: 6px;
    border: 1px solid var(--nahani-color-green) !important;
    background: #fff !important;
    color: #333 !important;
    font-family: var(--nahani-font-body);
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 50px;
}

.page-bottom .block.newsletter .form.subscribe .action.subscribe.primary:hover {
    background: #5c8f00;
}

/* Alineación en una sola línea en escritorio */
@media (min-width: 768px) {
  .page-bottom .block.newsletter .form.subscribe {
      max-width: 720px;
      margin: 0 auto;
  }

  .page-bottom .block.newsletter .form.subscribe .field.newsletter {
      flex: 1 1 auto;
  }

  .page-bottom .block.newsletter .form.subscribe .actions {
      flex: 0 0 auto;
  }
}

/* Checkbox GDPR y texto legal */
.page-bottom #prgdpr_newsletter_checkbox {
    margin-top: 0;
    font-family: var(--nahani-font-body);
    font-size: 14px;
    line-height: 1.5;
    color: #fff;
    padding: 0 0 0 90px;
}

.page-bottom #prgdpr_newsletter_checkbox a {
    color: #fff;
    text-decoration: underline;
}

.page-bottom .field-recaptcha {
    margin-top: 12px;
}

.page-bottom > p {
    margin-top: 12px;
    font-family: var(--nahani-font-body);
    font-size: 13px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.9);
}

.page-bottom .nahani-newsletter-legal {
    margin: 0 auto 60px auto !important;
    max-width: 540px;
    color: #fff;
}
.page-bottom .nahani-newsletter-legal a {
    color: var(--nahani-color-green);
}
.page-bottom .nahani-newsletter-legal a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .page-footer {
        margin-top: 0 !important;
    }
    .page-bottom .block.newsletter .form.subscribe .field.newsletter {
        flex: auto;
        width: 100%;
        max-width: 100%;
        padding-left: 0;
    }
    .page-bottom .block.newsletter .form.subscribe .actions {
        flex: 0 0 auto;
        display: block;
        width: 100%;
    }
    .page-bottom #prgdpr_newsletter_checkbox {
        padding: 0;
    }
    .page-bottom .block.newsletter .form.subscribe .action.subscribe.primary {
        width: 100%;
    }
}

/* Header Nahani: sticky en page-header; panel.wrapper se oculta al scroll, header.content se comprime */
.page-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: #fff;
    transition: box-shadow 0.2s ease;
    /* Reducir vibración: capa GPU y suavizado */
    transform: translateZ(0);
    backface-visibility: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.page-header.nahani-header-scrolled {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
/* Al scroll: ocultar panel wrapper (SSL, TrustedShops, etc.) para que no quede sticky */
.page-header.nahani-header-scrolled .panel.wrapper {
    display: none !important;
}

/* Estado comprimido: logo más pequeño, menos padding en header.content (solo desktop) */
@media (min-width: 769px) {
    .page-header.nahani-header-scrolled .header.content {
        padding-top: 8px;
        padding-bottom: 8px;
    }
    .page-header.nahani-header-scrolled .header.content a.logo {
        width: 160px;
        margin-bottom: 0;
    }
    .page-header.nahani-header-scrolled .header.content a.logo img {
        max-height: 40px;
        width: auto;
    }
    .page-header.nahani-header-scrolled .block-search {
        margin-top: 0;
    }
    .page-header.nahani-header-scrolled .navigation {
        margin-top: 0 !important;
        padding-left: 24px !important;
    }
    .page-header.nahani-header-scrolled .header.links {
        font-size: 13px;
        margin-top: 0 !important;
    }
    .page-header.nahani-header-scrolled .minicart-wrapper {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
    }
    .page-header.nahani-header-scrolled .minicart-wrapper .action.showcart {
        margin-top: 0 !important;
    }
    .page-header.nahani-header-scrolled .minicart-wrapper .action.showcart span.text {
        line-height: 4px !important;
    }
}

/* Header Nahani: logo - menú - buscador - cuenta - carrito en una sola fila */
/* Barra superior del header (panel header) */
.panel.header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.panel.header .nahani-header-panel-inner {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

/* Agrupa enlace B2B + idioma a la derecha (New Roots móvil y desktop alineados) */
.panel.header .nahani-panel-end {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: nowrap;
}

.panel.header .nahani-panel-links-slot {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
    min-width: 0;
}

/*
 * Quitar float/fondo/padding solo en enlaces CMS e idioma (fila flex).
 * El enlace B2B en .nahani-panel-links-slot debe seguir usando .page-header .panel.wrapper a (gris, 16px).
 */
.panel.header .nahani-panel-custom-links a.nahani-test-link,
.panel.header .nahani-panel-language a {
    float: none !important;
    margin-left: 0 !important;
    margin-right: 20px !important;
    background: transparent !important;
    padding: 0 !important;
}

.panel.header .nahani-panel-language {
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center;
    min-width: 0;
    margin-right: 15px !important;
    z-index: 9999999;
}

.panel.header .nahani-panel-language .switcher.language {
    display: inline-block !important;
    position: relative !important;
    margin: 0 !important;
}

/* Etiqueta “Language”: ocultar en barra compacta (accesibilidad: el toggle sigue siendo usable) */
.panel.header .nahani-panel-language .switcher-language > .switcher-label {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.panel.header .nahani-panel-language .switcher .options ul.dropdown a {
    float: none !important;
}

.panel.header .nahani-panel-item {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 13px;
    color: inherit;
    text-decoration: none;
}

.panel.header .nahani-ssl-icon {
    flex-shrink: 0;
}

.panel.header .nahani-trustedshops {
    display: inline-flex;
    align-items: center;
}

.panel.header .nahani-panel-custom-links {
    margin-left: auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.panel.header .nahani-test-link:hover {
    text-decoration: underline;
}

body.customer-logged-in .panel.header .nahani-panel-links-slot {
    position: relative;
}

body.customer-logged-in .panel.header .nahani-panel-links-slot .nahani-test-link {
    background: #208215 !important;
    color: #fff !important;
    font-weight: 600;
    border-radius: 4px;
    text-decoration: none;
    padding: 10px 34px 10px 16px !important;
    position: relative;
}

body.customer-logged-in .panel.header .nahani-panel-links-slot .nahani-test-link::after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 14px;
    transform-origin: center;
    transition: transform 0.2s ease;
}

body.customer-logged-in .panel.header .nahani-panel-links-slot.is-open .nahani-test-link::after {
    transform: rotate(-135deg) translateY(0);
}

body.customer-logged-in .panel.header .nahani-panel-links-slot .nahani-test-link:hover,
body.customer-logged-in .panel.header .nahani-panel-links-slot .nahani-test-link:focus {
    text-decoration: none;
    background: #1b7412 !important;
}

body.customer-logged-in .panel.header .nahani-panel-menu-dropdown {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 260px;
    background: #fff;
    border: 1px solid #d6d6d6;
    border-radius: 4px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
    padding: 12px;
    z-index: 50;
}

body.customer-logged-in .panel.header .nahani-panel-menu-dropdown[hidden] {
    display: none !important;
}

.panel.header .nahani-test-link.last {
    text-decoration: none;
    margin-right: 10px;
    background: none;
    color: #76777A;
    font-weight: 600;
}
.panel.header .nahani-test-link.last:hover {
    text-decoration: none;
    color: var(--nahani-color-green);
}
.page-header .panel.wrapper {
    background-color: #F0F0EF !important;
    padding-top: 0;
    padding-bottom: 0;
    border-bottom: 0; 
}
.page-header .panel.wrapper a {
    padding: 10px 20px;
    background: #AEAEAE;
    font-size: 16px;
    float: right;
    margin-right: 0;
    margin-left: auto;
}

.panel.header .nahani-ssl-text {
    font-size: 16px;
    color: var(--nahani-color-text);
}

.header.content {
    display: flex;
    align-items: center;
    padding-top: 16px;
    padding-bottom: 16px;
    transition: padding 0.25s ease;
}
.header.content a.logo {
    width: 250px;
    transition: width 0.25s ease;
}
.header.content a.logo img {
    transition: max-height 0.25s ease;
}

.block-search {
    flex: 1;
    padding-left: 15px;
    position: relative;
    min-width: 200px;
    max-width: 250px;
    z-index: 1 !important;
    margin: 0 1rem 0 2rem;
    margin-top: 16px;
}

.block-search input {
    background: #EFEFEF;
    font-size: 14px;
    border: 0 !important;
    border-radius: 4px;
    color: #000;
    padding: 0 0 0 10px;
}

.block-search input::placeholder {
    color: #aeaeae !important;
}
.block-search .action.search {
    background: var(--nahani-color-green) !important;
    width: 34px !important;
    margin-right: -10px !important;
    opacity: 1 !important;
    width: 40px !important;
    border-radius: 4px !important;
}
.block-search .action.search:before {
    color: #fff !important;
}
.navigation {
    margin-top: 16px !important;
    padding-left: 40px !important;
    z-index: 1 !important;
}

/* Zona derecha del header: cuenta + carrito - layout horizontal, icono + texto */
.header.content .header.links,
.header.content .minicart-wrapper {
    margin: 16px 0 0 0;
    padding: 0;
}
.header.content .header.links {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1.5rem;
    list-style: none;
    margin-left: 1rem;
    margin-top: 16px;
}
.header.content .header.links li {
    display: inline-flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
}
/* Ocultar Sign In / Sign Out (authorization-link); el acceso queda en my-account-link */
.header.content .header.links li.authorization-link {
    display: none !important;
}
.header.content .header.links li::before {
    display: none !important;
}
.header.content .header.links li a,
.header.content .header.links li a:link,
.header.content .header.links li a:visited {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: #333 !important;
    text-decoration: none !important;
    font-size: 16px;
    margin-right: 20px;
    white-space: nowrap;
}
.header.content .header.links li a:hover {
    color: var(--nahani-color-green);
    text-decoration: none;
}
/* Icono perfil para enlaces de cuenta (header_profile.png) */
.header.content .header.links li.my-account-link a::before,
.header.content .header.links li.authorization-link a::before,
.header.content .header.links li.register-link a::before,
.header.content .header.links li a::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url("../images/header_profile.png") no-repeat center;
    background-size: contain;
    flex-shrink: 0;
}
.header.content .header.links li a:hover::before {
    opacity: 0.8;
}

/* Minicart: icono header_minicart.png + texto horizontalmente */
.header.content .minicart-wrapper {
    display: flex;
    align-items: center;
}
.header.content .minicart-wrapper .action.showcart {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 16px;
}
.header.content .minicart-wrapper .action.showcart::before {
    content: "" !important;
    display: inline-block !important;
    width: 24px !important;
    height: 24px !important;
    background: url("../images/header_minicart.png") no-repeat center !important;
    background-size: contain !important;
    font-size: 0 !important;
    color: transparent !important;
}
.header.content .minicart-wrapper .action.showcart .text {
    color: #333 !important;
}

/* Etiqueta "Warenkorb"/"Carrito" a la derecha del minicart en el header */
.header.content .nahani-minicart-label {
    font-size: 14px;
    color: #76777A;
    margin-left: 0.35rem;
}

#ninjamenus1.ninjamenus .level0 > a, 
#ninjamenus2.ninjamenus .level0 > a, 
#ninjamenus3.ninjamenus .level0 > a, 
#ninjamenus4.ninjamenus .level0 > a, 
#ninjamenus5.ninjamenus .level0 > a, 
#ninjamenus6.ninjamenus .level0 > a, 
#ninjamenus1.ninjamenus.ninjamenus-drilldown .level0 > a,
#ninjamenus2.ninjamenus.ninjamenus-drilldown .level0 > a,
#ninjamenus3.ninjamenus.ninjamenus-drilldown .level0 > a,
#ninjamenus4.ninjamenus.ninjamenus-drilldown .level0 > a,
#ninjamenus5.ninjamenus.ninjamenus-drilldown .level0 > a,
#ninjamenus6.ninjamenus.ninjamenus-drilldown .level0 > a {
    color: #76777A !important;
    font-size: 15px;
}
#ninjamenus1.ninjamenus .level0:hover > a, 
#ninjamenus2.ninjamenus .level0:hover > a, 
#ninjamenus3.ninjamenus .level0:hover > a, 
#ninjamenus4.ninjamenus .level0:hover > a, 
#ninjamenus5.ninjamenus .level0:hover > a, 
#ninjamenus6.ninjamenus .level0:hover > a, 
#ninjamenus1.ninjamenus.ninjamenus-drilldown .level0:hover > a,
#ninjamenus2.ninjamenus.ninjamenus-drilldown .level0:hover > a,
#ninjamenus3.ninjamenus.ninjamenus-drilldown .level0:hover > a,
#ninjamenus4.ninjamenus.ninjamenus-drilldown .level0:hover > a,
#ninjamenus5.ninjamenus.ninjamenus-drilldown .level0:hover > a,
#ninjamenus6.ninjamenus.ninjamenus-drilldown .level0:hover > a {
    color: var(--nahani-color-green) !important;
    text-decoration: underline !important;
    background-color: transparent !important;
}

#ninjamenus1.ninjamenus .level0.active > a,
#ninjamenus2.ninjamenus .level0.active > a,
#ninjamenus3.ninjamenus .level0.active > a,
#ninjamenus4.ninjamenus .level0.active > a,
#ninjamenus5.ninjamenus .level0.active > a,
#ninjamenus6.ninjamenus .level0.active > a,
.ninjamenus.ninjamenus-desktop.ninjamenus-vertical .nav-item.level0.active > a,
.ninjamenus.ninjamenus-desktop.ninjamenus-horizontal
    .nav-item.level0.active
    > a {
    background-color: #fff !important;
    color: #6BA800 !important;
}

.field-recaptcha {
    display: none !important;
}

/* Responsive: menú y account en header (desktop) vs nav-sections (mobile) */
@media (max-width: 768px) {
    /* Ocultar menú y links de cuenta del header en mobile (están en nav-sections) */
    .header.content .navigation,
    .header.content .header.links,
    .panel.header .header.links {
        display: none !important;
    }
    .header.content {
        padding-bottom: 42px !important;
    }
    .block.block-search {
        margin: -40px 0 0 0 !important;
        position: absolute;
        bottom: 0;
        width: 100%;
        max-width: calc(100% - 30px);
        padding: 0 !important;
    }
    .block-search .control {
        border: 0 !important;
    }
    .action.showcart span.text {
        display: none !important;
    }
    .nav-toggle {
        top: 36px !important;
    }
    .logo {
        margin-top: 0 !important;
    }
    .header.content .minicart-wrapper {
        margin-left: 0 !important;
        margin-top: 12px !important;
    }
    .nahani-copyright-bar {
        width: 100% !important;
    }
    .page-bottom {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .header.content .header.links {
        display: block !important;
    }
    a.logo {
        padding-left: 30px;
    }
    .page-header .panel.wrapper a {
        padding: 11px 8px !important;
        font-size: 15px !important;
    }
    /* Pestañas del panel móvil eliminadas (sections.phtml plano) */
    .nahani-nav-sections-flat {
        display: flex;
        flex-direction: column;
        min-height: 0;
        max-height: 100%;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-items-flat {
        flex: 1 1 auto;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        min-height: 0;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-shrink: 0;
        padding: 12px 16px;
        border-bottom: 1px solid #e0e0e0;
        background: #fff;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-logo .nav-toggle {
        display: none !important;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-logo a.logo {
        padding-left: 0;
        margin: 0;
        display: inline-block;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-logo .logo img {
        max-height: 40px;
        width: auto;
        vertical-align: middle;
    }
    .nahani-nav-sections-flat .nahani-nav-close {
        flex-shrink: 0;
        margin: 0;
        padding: 4px 8px;
        border: 0;
        background: transparent;
        cursor: pointer;
        color: #333;
        line-height: 1;
    }
    .nahani-nav-sections-flat .nahani-nav-close-icon {
        display: block;
        font-size: 32px;
        font-weight: 300;
        line-height: 1;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-items-flat .section-item-content {
        display: block !important;
        padding: 0;
    }
    .nahani-nav-sections-flat .nahani-nav-sections-items-flat .section-item-content + .section-item-content {
        border-top: 1px solid #eee;
    }
    .panel.header .nahani-panel-end {
        gap: 0.85rem;
        max-width: 100%;
        min-width: 0;
        justify-content: flex-end;
        margin-right: -15px;
    }
    /* Nahani (y otros): enlaces CMS del panel solo en el menú hamburguesa */
    body:not(.nahani-site-newroots) .panel.header .nahani-panel-custom-links {
        display: none !important;
    }
    /* New Roots móvil: ocultar Sonderaktion / Topseller (.nahani-test-link.last en el CMS); Therapeutenbereich + idioma siguen en panel */
    body.nahani-site-newroots .panel.header .nahani-panel-custom-links .nahani-test-link.last {
        display: none !important;
    }
    body.nahani-site-newroots .nahani-nav-mobile-custom-links .nahani-test-link.last {
        display: none !important;
    }
    .nahani-nav-mobile-custom-links {
        padding: 12px 16px;
    }
    .nahani-nav-mobile-custom-links a {
        display: block;
        padding: 10px 0;
        font-size: 1.6rem;
        color: #333;
        text-decoration: none;
    }
    .nahani-nav-mobile-custom-links a:hover {
        color: var(--nahani-color-green, #1979c3);
    }
    .minicart-wrapper .action.showcart .counter.qty {
        top: 13px;
        left: 17px;
    }
    .nav-before-open .page-wrapper {
        overflow: visible;
    }
}

@media (min-width: 769px) {
    /* Ocultar menú y links de cuenta duplicados en nav-sections en desktop */
    .nav-sections .navigation,
    .nav-sections .header.links {
        display: none !important;
    }
    /* Ocultar header.links en su ubicación original en desktop (usamos top.links en header.content) */
    .panel.header .header.links,
    .mgz-element-header_links {
        display: none !important;
    }
}

/* minicart */
.action.showcart span.text {
    position: relative !important;
    color: grey;
    align-items: center;
    display: inline-block;
    width: 112px !important;
    line-height: 2px;
    overflow: visible !important;
    padding-left: 6px !important;
}

@media (max-width: 1192px) {
    .action.showcart span.text {
        display: none !important;
    }
    .header.links li:first-of-type a {
        font-size: 0 !important;
    }
}

.minicart-wrapper .action.showcart .counter.qty {
    background: #ff5501;
    color: #fff;
    height: 16px;
    line-height: 16px;
    border-radius: 2px;
    display: inline-block;
    margin: 3px 0 0;
    min-width: 16px;
    overflow: hidden;
    padding: 0;
    text-align: center;
    white-space: normal;
    position: absolute;
    top: -7px;
    left: 12px;
    font-size: 12px;
    border-radius: 13px;
}

@media (max-width: 768px) {
    .minicart-wrapper .action.showcart .counter.qty {
        top: 13px;
        left: 17px;
    }
}

.page-header .switcher {
    margin-left: 0px !important;
}
.page-header .panel.wrapper .switcher .options .action.toggle:after {
    color: #000 !important;
}
.switcher-dropdown a {
    background: #fff !important;
}
.page-header .panel.wrapper .switcher .options ul.dropdown:before {
    top: -11px !important;
}
.page-header .panel.wrapper .switcher .options ul.dropdown:after {
    top: -13px !important;
}

.nahani-nav-sections-header {
    display: none;
}
@media (max-width: 768px) {
    .nahani-nav-sections-header {
        border-bottom: 0 !important;
    }
    .nahani-nav-sections-header img {
        width: 100px !important;
        height: 43px !important;
        max-height: 43px !important;
    }
    .nav-sections-item-content {
        margin-top: 0;
    }
    .nav-sections-items {
        background-color: #fff;
    }
    .nav-sections-item-title.active, 
    .nav-sections-item-content {
        background-color: #fff !important;
    }
    .navigation {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    .ninjamenus .opener:before {
        color: var(--nahani-color-green) !important;
        font-weight: 600 !important;
    }
    .navigation .level0 {
        border-top: 0;
        border-bottom: 1px solid var(--nahani-color-text);
    }
    #ninjamenus1.ninjamenus .level0 > a,
    #ninjamenus2.ninjamenus .level0 > a,
    #ninjamenus3.ninjamenus .level0 > a,
    #ninjamenus4.ninjamenus .level0 > a,
    #ninjamenus5.ninjamenus .level0 > a,
    #ninjamenus6.ninjamenus .level0 > a {
        padding: 0 !important;
    }
    #ninjamenus1.ninjamenus .level0:hover > a,
    #ninjamenus2.ninjamenus .level0:hover > a,
    #ninjamenus3.ninjamenus .level0:hover > a,
    #ninjamenus4.ninjamenus .level0:hover > a,
    #ninjamenus5.ninjamenus .level0:hover > a,
    #ninjamenus6.ninjamenus .level0:hover > a,
    #ninjamenus1.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus2.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus3.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus4.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus5.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus6.ninjamenus .level0 .item-submenu .nav-item > a {
        color: #76777A !important;
    }
    #ninjamenus1.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus2.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus3.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus4.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus5.ninjamenus .level0 .item-submenu .nav-item > a,
    #ninjamenus6.ninjamenus .level0 .item-submenu .nav-item > a {
        background-color: inherit !important;
    }
    .ninjamenus-mobile .item-submenu {
        background-color: rgba(238, 238, 238, 1);
    }
    .ninjamenus .ninjamenus-toggle-active > .opener:before {
        color: var(--nahani-color-text) !important;
    }
    .ninjamenus .opener:hover {
        background-color: #fff !important;
    }
    .ninjamenus-mobile .mgz-element-inner {
        border: 0;
    }
    div#nahani\.custom\.links\.header\.nav a {
        font-size: var(--nahani-font-size-body);
        color: var(--nahani-color-green);
        font-weight: 600;
        border-bottom: 1px solid #000;
    }
    .nahani-nav-mobile-custom-links.nahani-custom-links-header {
        padding-top: 0;
    }
    .nahani-nav-mobile-custom-links a {
        padding: 12px 0;
    }
    .navigation .level0.active > a:not(.ui-state-active) {
        border: 0;
    }
    .nav-sections-item-content {
        margin-left: 0;
    }
    .nav-open .nav-toggle:after {
        height: 680%;
        top: -50px;
    }
    /* No forzar margen en el botón B2B (.nahani-panel-links-slot): debe mantener el aspecto del panel */
    .panel.header .nahani-panel-custom-links a.nahani-panel-item.nahani-test-link,
    .panel.header .nahani-panel-language a.nahani-panel-item {
        margin-right: 0 !important;
    }
    .panel.header .nahani-panel-language .switcher .options ul.dropdown a {
        padding-left: 6px !important;
    }
}

.panel.header p {
    display: inline-flex;
    margin-bottom: 0;
}
.nahani-panel-language a {
    width: 100%;
}
@media (min-width: 768px) {
    .nahani-panel-language a {
        text-align: center;
        margin: 10px 0;
    }
    .nahani-panel-language .switcher-dropdown {
        padding: 0 8px !important;
    }
}

.nav-item .caret {
    height: 30px !important;
}

@media (max-width: 768px) {
    div#ninjamenus7.ninjamenus.ninjamenus-mobile .caret,
    div#ninjamenus8.ninjamenus.ninjamenus-mobile .caret,
    div#ninjamenus9.ninjamenus.ninjamenus-mobile .caret,
    div#ninjamenus10.ninjamenus.ninjamenus-mobile .caret {
        display: inline-block !important;
    }
    div#ninjamenus7.ninjamenus.ninjamenus-mobile .nav-item > .opener,
    div#ninjamenus8.ninjamenus.ninjamenus-mobile .nav-item > .opener,
    div#ninjamenus9.ninjamenus.ninjamenus-mobile .nav-item > .opener,
    div#ninjamenus10.ninjamenus.ninjamenus-mobile .nav-item > .opener {
        height: 52px !important;
        width: 20px !important;
        background-color: transparent !important;
        right: 0;
        top: 0;
    }
    div#ninjamenus7.ninjamenus.ninjamenus-mobile .nav-item > a,
    div#ninjamenus8.ninjamenus.ninjamenus-mobile .nav-item > a,
    div#ninjamenus9.ninjamenus.ninjamenus-mobile .nav-item > a,
    div#ninjamenus10.ninjamenus.ninjamenus-mobile .nav-item > a {
        line-height: 30px !important;
    }
    .mgz-fa-angle-down:before {
        color: transparent !important;
    }
    div#ninjamenus7.ninjamenus .opener:before,
    div#ninjamenus8.ninjamenus .opener:before,
    div#ninjamenus9.ninjamenus .opener:before,
    div#ninjamenus10.ninjamenus .opener:before {
        font-family: 'Font Awesome 5 Free' !important;
        content: "\f107" !important;
        color: #fff !important;
    }
    div#ninjamenus7.ninjamenus .ninjamenus-toggle-active > .opener:before,
    div#ninjamenus8.ninjamenus .ninjamenus-toggle-active > .opener:before,
    div#ninjamenus9.ninjamenus .ninjamenus-toggle-active > .opener:before,
    div#ninjamenus10.ninjamenus .ninjamenus-toggle-active > .opener:before {
        font-family: 'Font Awesome 5 Free' !important;
        content: "\f106" !important;
        color: #fff !important;
    }
    div#ninjamenus7.ninjamenus.ninjamenus-mobile,
    div#ninjamenus8.ninjamenus.ninjamenus-mobile,
    div#ninjamenus9.ninjamenus.ninjamenus-mobile,
    div#ninjamenus10.ninjamenus.ninjamenus-mobile {
        overflow-x: hidden !important;
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        z-index: 1000 !important;
        background-color: transparent !important;
    }
    div#ninjamenus7 .item-submenu.mgz-element-inner,
    div#ninjamenus8 .item-submenu.mgz-element-inner,
    div#ninjamenus9 .item-submenu.mgz-element-inner,
    div#ninjamenus10 .item-submenu.mgz-element-inner {
        top: 0 !important;
    }
    div#ninjamenus7 .item-submenu,
    div#ninjamenus8 .item-submenu,
    div#ninjamenus9 .item-submenu,
    div#ninjamenus10 .item-submenu {
        max-width: 970px !important;
        width: 100% !important;
        background: white;
        overflow: scroll;
        max-height: 100%;
        height: calc(100vh - 95px);
    }
    .panel.header .nahani-ssl-text {
        line-height: 52px !important;
    }
    div#ninjamenus7 p,
    div#ninjamenus8 p,
    div#ninjamenus9 p,
    div#ninjamenus10 p,
    div#ninjamenus7 a,
    div#ninjamenus8 a,
    div#ninjamenus9 a,
    div#ninjamenus10 a {
        color: #76777A;
    }
    #ninjamenus7.ninjamenus .level0 .item-submenu .nav-item > a, 
    #ninjamenus8.ninjamenus .level0 .item-submenu .nav-item > a, 
    #ninjamenus9.ninjamenus .level0 .item-submenu .nav-item > a, 
    #ninjamenus10.ninjamenus .level0 .item-submenu .nav-item > a, 
    #ninjamenus7.ninjamenus-drilldown .nav-item > a,
    #ninjamenus8.ninjamenus-drilldown .nav-item > a,
    #ninjamenus9.ninjamenus-drilldown .nav-item > a,
    #ninjamenus10.ninjamenus-drilldown .nav-item > a {
        background-color: rgba(238, 238, 238, 1) !important;
    }
    #ninjamenus7 .mgz-element-empty_space, 
    #ninjamenus8 .mgz-element-empty_space, 
    #ninjamenus9 .mgz-element-empty_space, 
    #ninjamenus10 .mgz-element-empty_space, 
    #ninjamenus7 .mgz-element-separator,
    #ninjamenus8 .mgz-element-separator,
    #ninjamenus9 .mgz-element-separator,
    #ninjamenus10 .mgz-element-separator {
        display: none !important;
    }
    div#ninjamenus7 .item-submenu p,
    div#ninjamenus8 .item-submenu p,
    div#ninjamenus9 .item-submenu p,
    div#ninjamenus10 .item-submenu p {
        margin: 12px 0 0 0;
    }

    div#ninjamenus8 .level0 > a,
    div#ninjamenus9 .level0 > a,
    div#ninjamenus10 .level0 > a,
    div#ninjamenus8 .level0 > .opener,
    div#ninjamenus9 .level0 > .opener,
    div#ninjamenus10 .level0 > .opener {
        right: 66px !important;
    }

    div#ninjamenus8,
    div#ninjamenus9,
    div#ninjamenus10 {
        width: 100% !important;
    }
}

/* Estilos de categoría → nahani-category.css */

.breadcrumbs {
    margin: 25px 0 55px 0;
}
.breadcrumbs .items {
    font-size: 14px;
}
.breadcrumbs .item:not(:last-child):after {
    margin: 0;
}
.breadcrumbs .items .item.home a {
    color: var(--nahani-color-green);
}
.breadcrumbs .items .item {
    color: var(--nahani-color-grey);
}
