/* BC Menu — frontend styles. Variables (--bcm-*) inyectadas inline desde el renderer. */

/* ───── Wrapper ───── */
.bcm{
  font-family:var(--bcm-font,inherit);
  background:var(--bcm-bg,transparent);
  color:var(--bcm-fg,inherit);
  font-size:var(--bcm-font-size,15px);
  font-weight:var(--bcm-font-weight,400);
  text-transform:var(--bcm-text-transform,none);
  width:100%;
  max-width:var(--bcm-menu-width,none);
  margin:0 auto;
  position:relative;
}

/* Lista de items principales — gap configurable + ancho del contenedor de links. */
.bcm__list{
  list-style:none;
  display:flex;
  justify-content:var(--bcm-item-align,flex-start);
  align-items:center;
  gap:var(--bcm-item-gap,24px);
  margin:0 auto;
  padding:0;
  width:100%;
  max-width:var(--bcm-links-width,var(--bcm-menu-width,none));
  position:relative;
}

.bcm__item{position:relative}
.bcm__trigger{
  color:inherit;
  text-decoration:none;
  padding:12px 0;
  display:inline-block;
  position:relative;
  transition:color .2s ease,transform .25s ease,letter-spacing .25s ease,opacity .25s ease;
}

/* ───── Hover animations en items principales ───── */
/* underline (grosor configurable vía --bcm-underline-thickness) */
.bcm[data-hover="underline"] .bcm__trigger::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:6px;
  height:var(--bcm-underline-thickness,2px);
  background:var(--bcm-accent,currentColor);
  transform:scaleX(0);
  transform-origin:right center;
  transition:transform .25s ease;
}
.bcm[data-hover="underline"] .bcm__item:hover>.bcm__trigger::after,
.bcm[data-hover="underline"] .bcm__trigger:focus-visible::after{
  transform:scaleX(1);
  transform-origin:left center;
}

/* underline-center (crece desde el centro) */
.bcm[data-hover="underline-center"] .bcm__trigger::after{
  content:"";
  position:absolute;left:50%;bottom:6px;height:var(--bcm-underline-thickness,2px);
  width:0;background:var(--bcm-accent,currentColor);
  transform:translateX(-50%);
  transition:width .25s ease;
}
.bcm[data-hover="underline-center"] .bcm__item:hover>.bcm__trigger::after{width:100%}

/* underline-grow (grosor crece) */
.bcm[data-hover="underline-grow"] .bcm__trigger{
  border-bottom:0 solid var(--bcm-accent,currentColor);
  transition:border-bottom-width .2s ease,color .2s ease;
}
.bcm[data-hover="underline-grow"] .bcm__item:hover>.bcm__trigger{
  border-bottom-width:var(--bcm-underline-thickness,3px);
}

/* color */
.bcm[data-hover="color"] .bcm__item:hover>.bcm__trigger,
.bcm[data-hover="underline"] .bcm__item:hover>.bcm__trigger,
.bcm[data-hover="underline-center"] .bcm__item:hover>.bcm__trigger,
.bcm[data-hover="underline-grow"] .bcm__item:hover>.bcm__trigger{
  color:var(--bcm-accent,currentColor);
}

/* scale */
.bcm[data-hover="scale"] .bcm__item:hover>.bcm__trigger{
  transform:scale(1.08);color:var(--bcm-accent,currentColor);
}

/* lift (sube ligeramente) */
.bcm[data-hover="lift"] .bcm__item:hover>.bcm__trigger{
  transform:translateY(-2px);color:var(--bcm-accent,currentColor);
}

/* letter-spacing */
.bcm[data-hover="spacing"] .bcm__item:hover>.bcm__trigger{
  letter-spacing:.08em;color:var(--bcm-accent,currentColor);
}

/* fade (baja opacidad de los demás) */
.bcm[data-hover="fade"] .bcm__list:hover>.bcm__item>.bcm__trigger{opacity:.5}
.bcm[data-hover="fade"] .bcm__list>.bcm__item:hover>.bcm__trigger{opacity:1;color:var(--bcm-accent,currentColor)}

.bcm[data-hover="none"] .bcm__item:hover>.bcm__trigger{color:inherit}

/* ───── Panel (dropdown / mega) ─────
 * IMPORTANTE: la transición de visibility solo aplica al ESTADO base
 * (hidden→visible necesita visibility instantánea; visible→hidden con delay).
 */
.bcm__dropdown,.bcm__mega{
  position:absolute;top:100%;left:0;
  background:var(--bcm-panel-bg,#fff);
  color:var(--bcm-panel-text,var(--bcm-fg,inherit));
  box-shadow:var(--bcm-panel-shadow,0 10px 30px rgba(0,0,0,.12));
  padding:var(--bcm-panel-padding-top,var(--bcm-panel-padding-y,16px)) var(--bcm-panel-padding-x,16px) var(--bcm-panel-padding-bottom,var(--bcm-panel-padding-y,16px));
  min-width:220px;
  z-index:9999;
  border:var(--bcm-panel-border-width,1px) solid var(--bcm-border,rgba(0,0,0,.08));
  border-radius:var(--bcm-panel-radius,0);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s;
}
.bcm[data-panel-anim="slide"] .bcm__dropdown,
.bcm[data-panel-anim="slide"] .bcm__mega{transform:translateY(8px)}
.bcm[data-panel-anim="none"]  .bcm__dropdown,
.bcm[data-panel-anim="none"]  .bcm__mega{transition:none}

.bcm__item:hover>.bcm__dropdown,
.bcm__item:hover>.bcm__mega,
.bcm__item.is-open>.bcm__dropdown,
.bcm__item.is-open>.bcm__mega{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:none;
  transition:opacity .2s ease,transform .2s ease,visibility 0s linear 0s;
}

/* Mega: anclado a .bcm__list, centrado respecto al contenedor de links. */
.bcm__item--mega{position:static}
.bcm__mega{
  left:50%;
  right:auto;
  transform:translateX(-50%);
  width:min(var(--bcm-mega-width,var(--bcm-links-width,1100px)),calc(100vw - 32px));
  min-width:0;
  max-width:100%;
}
.bcm[data-panel-anim="slide"] .bcm__mega{transform:translate(-50%,8px)}
.bcm__item:hover>.bcm__mega,
.bcm__item.is-open>.bcm__mega{transform:translateX(-50%)}

/* Mega full-width: ocupa todo el viewport, pero sigue anclado al nav.
   Evitamos position:fixed porque top:100% lo mandaba al borde inferior del viewport. */
.bcm[data-mega-width="full"] .bcm__mega{
  position:absolute;
  left:50%;
  right:auto;
  width:100vw;
  min-width:0;
  max-width:none;
  transform:translateX(-50%);
}
.bcm[data-mega-width="full"][data-panel-anim="slide"] .bcm__mega{transform:translate(-50%,8px)}
.bcm[data-mega-width="full"] .bcm__item:hover>.bcm__mega,
.bcm[data-mega-width="full"] .bcm__item.is-open>.bcm__mega{transform:translateX(-50%)}
.bcm[data-mega-width="full"] .bcm__mega-grid{
  max-width:var(--bcm-mega-content-width,var(--bcm-links-width,var(--bcm-menu-width,1280px)));
  margin:0 auto;
}

/* Grid interno */
.bcm__mega-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--bcm-panel-gap,24px);
  align-items:start;
  max-width:var(--bcm-mega-content-width,100%);
  margin-left:auto;
  margin-right:auto;
}
.bcm__mega:has(.bcm__cards-col) .bcm__mega-grid{
  grid-template-columns:1fr minmax(220px,var(--bcm-promo-col-width,260px));
}
.bcm__mega[data-cards-side="left"]:has(.bcm__cards-col) .bcm__mega-grid{
  grid-template-columns:minmax(220px,var(--bcm-promo-col-width,260px)) 1fr;
}
/* Ancho dinámico del aside según cuántas cols ocupe (1 ó 2). */
.bcm__mega[data-promo-cols="2"]{--bcm-promo-col-width:520px}
.bcm__mega[data-promo-cols="1"]{--bcm-promo-col-width:260px}
.bcm__mega[data-cards-side="left"] .bcm__cols{order:2}
.bcm__mega[data-cards-side="left"] .bcm__cards-col{order:1}
/* Banner horizontal: respeta el ratio configurado en settings (regla aplicada en .bcm__card-media más abajo) */

.bcm__cols{
  display:flex;
  flex-wrap:wrap;
  gap:var(--bcm-panel-gap,24px);
}
.bcm__col{flex:0 0 calc(var(--col-pct,25%) - var(--bcm-panel-gap,24px));min-width:0}
.bcm__col-title{
  margin:0 0 var(--bcm-col-title-gap,8px);
  font-size:var(--bcm-col-title-size,13px);
  font-weight:var(--bcm-col-title-weight,600);
  text-transform:var(--bcm-col-title-transform,uppercase);
  letter-spacing:.04em;
  color:var(--bcm-col-title-color,#666);
}
.bcm__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--bcm-link-gap,6px)}

.bcm__cards-col{
  display:grid;
  grid-template-columns:repeat(var(--mega-cards-cols,1),minmax(0,1fr));
  grid-auto-rows:auto;
  gap:12px;
  align-self:start;
}
.bcm__cards-col>.bcm__card{display:flex;flex-direction:column}

/* ───── Sub-links: hover animation también aquí ───── */
.bcm__col a{
  color:var(--bcm-link-color,inherit);
  text-decoration:none;
  font-size:var(--bcm-link-size,inherit);
  font-weight:var(--bcm-link-weight,inherit);
  position:relative;
  display:inline-block;
  transition:color .2s ease,transform .25s ease,letter-spacing .25s ease;
}
.bcm__col a:hover{color:var(--bcm-link-hover,var(--bcm-accent,currentColor))}

.bcm[data-hover="underline"] .bcm__col a::after,
.bcm[data-hover="underline-center"] .bcm__col a::after,
.bcm[data-hover="underline-grow"] .bcm__col a::after{
  content:"";
  position:absolute;left:0;right:0;bottom:-2px;
  height:calc(var(--bcm-underline-thickness,2px) * 0.6);
  background:var(--bcm-link-hover,var(--bcm-accent,currentColor));
  transform:scaleX(0);transform-origin:right center;
  transition:transform .25s ease;
}
.bcm[data-hover="underline"] .bcm__col a:hover::after,
.bcm[data-hover="underline-center"] .bcm__col a:hover::after,
.bcm[data-hover="underline-grow"] .bcm__col a:hover::after{
  transform:scaleX(1);transform-origin:left center;
}
.bcm[data-hover="scale"] .bcm__col a:hover{transform:translateX(4px)}
.bcm[data-hover="lift"] .bcm__col a:hover{transform:translateY(-1px)}
.bcm[data-hover="spacing"] .bcm__col a:hover{letter-spacing:.05em}

/* Dropdown simple */
.bcm__dropdown ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.bcm__dropdown a{
  color:var(--bcm-link-color,inherit);
  text-decoration:none;
  font-size:var(--bcm-link-size,inherit);
  display:block;padding:6px 0;
  transition:color .2s ease;
}
.bcm__dropdown a:hover{color:var(--bcm-link-hover,var(--bcm-accent,currentColor))}

/* Dropdown icon */
.bcm[data-dropdown-icon="chevron"] .bcm__item--dropdown>.bcm__trigger::before,
.bcm[data-dropdown-icon="chevron"] .bcm__item--mega>.bcm__trigger::before{
  content:"";display:inline-block;width:.5em;height:.5em;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);margin-right:.5em;vertical-align:middle;
  transition:transform .2s ease;
}
.bcm[data-dropdown-icon="chevron"] .bcm__item:hover>.bcm__trigger::before{
  transform:rotate(225deg) translateY(-1px);
}
.bcm[data-dropdown-icon="plus"] .bcm__item--dropdown>.bcm__trigger::before,
.bcm[data-dropdown-icon="plus"] .bcm__item--mega>.bcm__trigger::before{
  content:"+";margin-right:.4em;font-weight:300;transition:transform .2s ease;display:inline-block;
}
.bcm[data-dropdown-icon="plus"] .bcm__item:hover>.bcm__trigger::before{
  transform:rotate(45deg);
}

/* Badges */
.bcm__badge{
  display:inline-block;
  margin-left:6px;
  font-size:10px;
  padding:1px 6px;
  border-radius:var(--bcm-badge-radius,999px);
  background:var(--bcm-badge-bg,var(--bcm-accent,#eee));
  color:var(--bcm-badge-text,#fff);
  text-transform:var(--bcm-badge-transform,uppercase);
  letter-spacing:.04em;
}

/* Promo cards — variantes según data-style */
.bcm__card{
  display:flex;
  flex-direction:column;
  border-radius:var(--bcm-promo-radius,12px);
  overflow:hidden;
  background:var(--bcm-promo-bg,#fafafa);
  color:var(--bcm-panel-text,var(--bcm-fg,inherit));
  text-decoration:none;
  padding:0;
  text-align:var(--bcm-promo-align,left);
  transition:transform .25s ease,box-shadow .25s ease;
}
.bcm__card[data-style="flat"]{border:0;box-shadow:none}
.bcm__card[data-style="outlined"]{
  border:var(--bcm-promo-border-width,1px) solid var(--bcm-promo-border-color,rgba(0,0,0,.12));
  box-shadow:none;
}
.bcm__card[data-style="shadow"]{
  border:0;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}
.bcm__card[data-style="shadow"]:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,0,0,.18)}
.bcm__card[data-align="center"]{align-items:center}
.bcm__card[data-align="right"]{align-items:flex-end}
.bcm__card-media{display:block;width:100%;overflow:hidden;aspect-ratio:var(--bcm-promo-ratio,16/10)}
.bcm__card-media img{
  width:100%;
  height:100%;
  object-fit:var(--bcm-promo-fit,cover);
  display:block;
}
.bcm__card-body{display:flex;flex-direction:column;gap:6px;padding:12px;width:100%}
.bcm__card-body strong,.bcm__card-body span{width:100%}
.bcm__card[data-align="center"] .bcm__card-body{text-align:center;align-items:center}
.bcm__card[data-align="right"] .bcm__card-body{text-align:right;align-items:flex-end}
.bcm__card--media-only .bcm__card-media{aspect-ratio:var(--bcm-promo-ratio,16/10)}

/* "Ver todos" */
.bcm__see-all{
  display:inline-block;margin-top:10px;
  font-size:calc(var(--bcm-link-size,13px) - 1px);
  font-weight:600;color:var(--bcm-accent,currentColor);
  text-decoration:none;
}
.bcm__see-all:hover{text-decoration:underline}

/* ─────────── Blocks (footer/column/under_footer) ─────────── */
.bcm__mega-footer{
  margin-top:var(--bcm-mf-mt,16px);
  padding-top:var(--bcm-mf-pt,16px);
  padding-bottom:var(--bcm-mf-pb,0px);
  border-top:var(--bcm-mf-top-w,1px) solid var(--bcm-mf-top-c,var(--bcm-border,rgba(0,0,0,.08)));
  background:var(--bcm-mf-bg,transparent);
  color:var(--bcm-mf-color,inherit);
  display:flex;flex-wrap:wrap;
  gap:var(--bcm-mf-gap,24px);
  align-items:center;
  justify-content:var(--bcm-mf-align,space-between);
}
.bcm__mega-footer > .bcm__block{position:relative}
.bcm__mega-footer > .bcm__block + .bcm__block{
  padding-left:var(--bcm-mf-gap,24px);
  border-left:var(--bcm-mf-div-w,0px) solid var(--bcm-mf-div-c,rgba(0,0,0,.08));
}
.bcm__under-footer{margin-top:12px;padding-top:12px;border-top:1px solid var(--bcm-border,rgba(0,0,0,.06));font-size:12px;opacity:.85}
.bcm__block{min-width:0}
.bcm__block-title{margin:0 0 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--bcm-col-title-color,#666)}

/* ───── Payments ─────
   layout="row"  → flex nowrap (overflow-x si no caben)
   layout="grid" → grid auto-fit con columnas mínimas legibles            */
.bcm__payments{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:nowrap;align-items:center;
  gap:var(--bcm-pm-gap,8px);
  justify-content:var(--bcm-pm-align,flex-start);
  overflow-x:auto;
}
.bcm[data-pm-layout="row"] .bcm__payments{
  display:flex;flex-wrap:nowrap;flex-direction:row;align-items:center;
  gap:var(--bcm-pm-gap,8px);
  justify-content:var(--bcm-pm-align,flex-start);
  overflow-x:auto;
}
.bcm[data-pm-layout="grid"] .bcm__payments{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(56px,1fr));
  justify-items:center;align-items:center;
  overflow:visible;
}
.bcm__payments>li{flex:0 0 auto;list-style:none}
.bcm__payment{
  display:inline-flex;align-items:center;justify-content:center;
  height:calc(var(--bcm-pm-icon-h,28px) + 4px);
  padding:2px 6px;
  background:transparent;border:0;border-radius:4px;
  filter:var(--bcm-pm-grayscale,none);
}
.bcm[data-pm-style="outlined"] .bcm__payment{
  background:#fff;border:1px solid rgba(0,0,0,.12);
}
.bcm[data-pm-style="card"] .bcm__payment{
  background:#fff;border:0;box-shadow:0 2px 6px rgba(0,0,0,.12);
}
.bcm__payment img{height:var(--bcm-pm-icon-h,28px);width:auto;display:block;object-fit:contain}
.bcm__payment-fallback{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#444}

/* ───── Trust logos ───── */
.bcm__logos{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:nowrap;align-items:center;
  gap:var(--bcm-tl-gap,16px);
  justify-content:var(--bcm-tl-align,flex-start);
  overflow-x:auto;
}
.bcm[data-tl-layout="row"] .bcm__logos{
  display:flex;flex-wrap:nowrap;flex-direction:row;align-items:center;
  gap:var(--bcm-tl-gap,16px);
  justify-content:var(--bcm-tl-align,flex-start);
  overflow-x:auto;
}
.bcm[data-tl-layout="grid"] .bcm__logos{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(80px,1fr));
  justify-items:center;align-items:center;
  overflow:visible;
}
.bcm__logos>li{flex:0 0 auto;list-style:none}
.bcm__logos img{
  height:var(--logo-h,var(--bcm-tl-h,48px));
  width:auto;display:block;object-fit:contain;
  filter:var(--bcm-tl-grayscale,none);
}

/* ───── Subscription ───── */
.bcm__sub{
  display:flex;gap:8px;align-items:stretch;flex-wrap:wrap;
  background:var(--bcm-sub-bg,transparent);
}
.bcm[data-sub-style="boxed"] .bcm__sub{padding:12px;background:var(--bcm-sub-bg,#f5f5f5)}
.bcm[data-sub-style="pill"] .bcm__sub input,
.bcm[data-sub-style="pill"] .bcm__sub button{border-radius:999px}
.bcm__sub--stacked{flex-direction:column;align-items:stretch}
.bcm__sub input{
  flex:1 1 180px;min-width:0;padding:8px 10px;
  border:1px solid var(--bcm-border,rgba(0,0,0,.15));
  border-radius:var(--bcm-sub-radius,6px);
  font:inherit;
  background:var(--bcm-sub-input-bg,#fff);
  color:var(--bcm-sub-input-text,#222);
}
.bcm__sub button{
  padding:8px 14px;border:0;
  border-radius:var(--bcm-sub-radius,6px);
  background:var(--bcm-sub-btn-bg,var(--bcm-accent,#222));
  color:var(--bcm-sub-btn-text,#fff);
  font-weight:600;cursor:pointer;
}
.bcm__sub button:hover{opacity:.9}
.bcm__sub-msg{margin:6px 0 0;font-size:12px;color:#0a7d3e}

/* ───── Socials ───── */
.bcm__socials{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;align-items:center;
  gap:var(--bcm-soc-gap,12px);
  justify-content:var(--bcm-soc-align,flex-start);
}
.bcm[data-soc-layout="grid"] .bcm__socials{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(40px,max-content));
  justify-items:center;
}
.bcm__social{
  display:inline-flex;align-items:center;gap:6px;
  color:var(--bcm-soc-color,currentColor);
  text-decoration:none;
  font-size:13px;line-height:1;
  transition:color .2s ease,background .2s ease,transform .2s ease,opacity .2s ease;
  padding:6px;
}
.bcm__social-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:var(--bcm-soc-icon,20px);
  height:var(--bcm-soc-icon,20px);
}
.bcm__social-icon svg{width:100%;height:100%;display:block}
.bcm__social-label{font-weight:500}

/* Forma del badge — solo aplica fondo si no es "none" */
.bcm[data-soc-shape="circle"] .bcm__social,
.bcm[data-soc-shape="square"] .bcm__social,
.bcm[data-soc-shape="rounded"] .bcm__social{
  background:var(--bcm-soc-bg,rgba(0,0,0,.06));
  padding:8px;
  min-width:calc(var(--bcm-soc-icon,20px) + 16px);
  min-height:calc(var(--bcm-soc-icon,20px) + 16px);
  justify-content:center;
}
.bcm[data-soc-shape="circle"] .bcm__social{border-radius:9999px}
.bcm[data-soc-shape="square"] .bcm__social{border-radius:0}
.bcm[data-soc-shape="rounded"] .bcm__social{border-radius:8px}

/* Hover: solo color */
.bcm[data-soc-hover="color"] .bcm__social:hover{color:var(--bcm-soc-hover,currentColor)}
/* Hover: scale */
.bcm[data-soc-hover="scale"] .bcm__social:hover{
  color:var(--bcm-soc-hover,currentColor);transform:scale(1.12);
}
/* Hover: lift */
.bcm[data-soc-hover="lift"] .bcm__social:hover{
  color:var(--bcm-soc-hover,currentColor);transform:translateY(-2px);
}
/* Hover: fade en otros */
.bcm[data-soc-hover="fade"] .bcm__socials:hover .bcm__social{opacity:.4}
.bcm[data-soc-hover="fade"] .bcm__socials .bcm__social:hover{opacity:1;color:var(--bcm-soc-hover,currentColor)}

/* ───── Contact ───── */
.bcm__contact{
  list-style:none;margin:0;padding:0;
  display:flex;flex-direction:column;gap:6px;font-size:13px;
}
.bcm__contact>li{
  display:flex;align-items:center;
  gap:var(--bcm-ct-gap,8px);
}
.bcm__contact[data-icons="0"]>li{gap:0}
.bcm__contact-icon{
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--bcm-ct-icon-color,currentColor);
  width:var(--bcm-ct-icon-size,14px);
  height:var(--bcm-ct-icon-size,14px);
  flex:0 0 auto;
}
.bcm__contact-icon svg{width:100%;height:100%;display:block}
.bcm__contact a{color:inherit;text-decoration:none;transition:color .2s ease}
.bcm__contact a:hover{color:var(--bcm-ct-link-hover,var(--bcm-accent,currentColor))}

/* Under footer */
.bcm__under{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.bcm__under[data-align="center"]{justify-content:center;text-align:center}
.bcm__under[data-align="right"]{justify-content:flex-end;text-align:right}
.bcm__legal{list-style:none;margin:0;padding:0;display:flex;gap:14px;flex-wrap:wrap}
.bcm__legal a{color:inherit;text-decoration:none;opacity:.8}
.bcm__legal a:hover{opacity:1;text-decoration:underline}

/* ───── Footer body (placement="footer") ───── */
.bcm--footer{display:block;background:var(--bcm-footer-bg,var(--bcm-panel-bg,transparent));color:var(--bcm-footer-text,var(--bcm-panel-text,inherit));border-top:var(--bcm-footer-border-width,0) solid var(--bcm-footer-border,var(--bcm-border,transparent))}
.bcm__footer-body{
  display:flex;flex-direction:column;
  gap:var(--bcm-footer-row-gap,var(--bcm-panel-gap,24px));
  padding:var(--bcm-footer-py,var(--bcm-panel-padding-y,32px)) var(--bcm-footer-px,var(--bcm-panel-padding-x,32px));
  max-width:var(--bcm-footer-inner-width,var(--bcm-menu-width,none));
  margin:0 auto;width:100%;
}
.bcm__footer-cols{
  display:flex;
  flex-wrap:wrap;
  column-gap:var(--bcm-footer-col-gap,var(--bcm-panel-gap,24px));
  row-gap:var(--bcm-footer-row-gap,var(--bcm-panel-gap,24px));
  align-items:start;
}
.bcm__footer-col{flex:0 0 calc(var(--col-pct,25%) - var(--bcm-footer-col-gap,var(--bcm-panel-gap,24px)));min-width:0}
.bcm__footer-col-toggle{
  all:unset;display:flex;align-items:center;justify-content:space-between;
  width:100%;cursor:default;margin-bottom:8px;
}
.bcm__footer-col-title{
  font-size:var(--bcm-col-title-size,13px);
  font-weight:var(--bcm-col-title-weight,600);
  text-transform:var(--bcm-col-title-transform,uppercase);
  letter-spacing:.04em;
  color:var(--bcm-footer-heading,var(--bcm-col-title-color,inherit));
}
.bcm__footer-col-title a{color:inherit;text-decoration:none}
.bcm__footer-col-chevron{display:none}
.bcm__footer-links,.bcm__nested-links,.bcm__dropdown-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--bcm-footer-link-gap,var(--bcm-link-gap,6px))}
.bcm__nested-links{display:none;position:absolute;left:100%;top:0;min-width:180px;padding:10px;background:var(--bcm-panel-bg,#fff);border:1px solid var(--bcm-border,rgba(0,0,0,.08));box-shadow:var(--bcm-panel-shadow,0 12px 28px rgba(0,0,0,.12));z-index:3}
.bcm__link-node{position:relative}
.bcm__link-node--dropdown:hover>.bcm__nested-links{display:flex}
.bcm__link-node--dropdown>a::after{content:"›";margin-left:6px;opacity:.6}
.bcm__footer-links a{color:var(--bcm-footer-link,var(--bcm-link-color,inherit));text-decoration:none}
.bcm__dropdown-links a,.bcm__nested-links a{
  color:var(--bcm-link-color,inherit);text-decoration:none;
  font-size:var(--bcm-link-size,14px);font-weight:var(--bcm-link-weight,400);
  transition:color .2s ease;
}
.bcm__footer-links a:hover{color:var(--bcm-footer-link-hover,var(--bcm-link-hover,var(--bcm-accent,currentColor)))}
.bcm__dropdown-links a:hover,.bcm__nested-links a:hover{color:var(--bcm-link-hover,var(--bcm-accent,currentColor))}
.bcm__footer-extra{
  display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;
  padding-top:16px;border-top:1px solid var(--bcm-border,rgba(0,0,0,.08));
}

/* ───── Mobile trigger + drawer (≤768px) ───── */
.bcm__mobile-trigger,.bcm__mobile-bar{display:none}
.bcm__drawer-overlay,.bcm__drawer{display:none}

@media (max-width:768px){
  body.bcm-mobile-lock{overflow:hidden}

  /* Dropdown apilado (modo "dropdown") — comportamiento existente. */
  .bcm[data-mobile-mode="dropdown"] .bcm__list{flex-direction:column;gap:0;align-items:stretch}
  .bcm[data-mobile-mode="dropdown"] .bcm__mega,
  .bcm[data-mobile-mode="dropdown"] .bcm__dropdown{
    position:static;transform:none;min-width:0;width:auto;
    box-shadow:none;padding:8px 0;opacity:1;visibility:visible;pointer-events:auto;
    border:0;
  }
  .bcm[data-mobile-mode="dropdown"][data-mega-width="full"] .bcm__mega{position:static;width:auto}
  .bcm[data-mobile-mode="dropdown"] .bcm__mega-grid{grid-template-columns:1fr !important;gap:12px;display:block}
  .bcm[data-mobile-mode="dropdown"] .bcm__cols{flex-direction:column;gap:0;display:flex}
  .bcm[data-mobile-mode="dropdown"] .bcm__col{flex:0 0 auto;width:100%;padding:4px 0}
  .bcm[data-mobile-mode="dropdown"] .bcm__cards-col,
  .bcm[data-mobile-mode="dropdown"] .bcm__mega-footer,
  .bcm[data-mobile-mode="dropdown"] .bcm__under-footer{display:none !important}
  .bcm[data-mobile-mode="dropdown"] .bcm__col-title{font-size:13px;margin:6px 0 4px;opacity:.7}
  .bcm[data-mobile-mode="dropdown"] .bcm__col ul{gap:2px}
  .bcm[data-mobile-mode="dropdown"] .bcm__col a{padding:6px 0;display:block}
  .bcm[data-mobile-mode="dropdown"] .bcm__see-all{margin-top:4px}

  /* Modo "drawer": un único hamburger global, oculta la lista inline. */
  .bcm[data-mobile-mode="drawer"] .bcm__list{display:none}
  .bcm[data-mobile-mode="drawer"] .bcm__mobile-bar{
    display:flex;align-items:center;gap:var(--bcm-mobile-bar-gap,10px);width:100%;
  }
  .bcm[data-mobile-mode="drawer"][data-mobile-trigger-side="right"] .bcm__mobile-bar{flex-direction:row-reverse}
  .bcm[data-mobile-mode="drawer"] .bcm__mobile-trigger{
    display:inline-flex;align-items:center;justify-content:center;
    width:44px;height:44px;border:0;background:transparent;cursor:pointer;
    color:var(--bcm-fg,inherit);font-size:var(--bcm-drawer-icon-size,22px);line-height:1;
    margin:4px 0;flex:0 0 auto;
  }
  .bcm__mobile-logo{display:inline-flex;align-items:center;text-decoration:none;color:inherit}
  .bcm__mobile-logo img{display:block;width:auto}

  /* Overlay + drawer panel */
  .bcm[data-mobile-mode="drawer"] .bcm__drawer-overlay{
    display:block;position:fixed;inset:0;
    background:var(--bcm-drawer-overlay,#000);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .25s ease,visibility 0s linear .25s;
    z-index:10000;
  }
  .bcm[data-mobile-mode="drawer"].is-drawer-open .bcm__drawer-overlay{
    opacity:var(--bcm-drawer-overlay-op,.5);visibility:visible;pointer-events:auto;
    transition:opacity .25s ease,visibility 0s linear 0s;
  }
  .bcm[data-mobile-mode="drawer"] .bcm__drawer{
    display:flex;flex-direction:column;
    position:fixed;top:0;bottom:0;
    width:var(--bcm-drawer-w,88%);
    max-width:100vw;
    height:100vh;height:100dvh;
    min-height:100vh;min-height:100dvh;
    max-height:100vh;max-height:100dvh;
    background:var(--bcm-panel-bg,#fff);
    color:var(--bcm-panel-text,inherit);
    box-shadow:0 24px 48px rgba(0,0,0,.18);
    z-index:10001;
    overflow:hidden;
    visibility:hidden;
    transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .25s ease,visibility 0s linear .3s;
  }
  /* Lado del drawer */
  .bcm[data-mobile-mode="drawer"][data-mobile-drawer-direction="left"] .bcm__drawer{left:0;right:auto;transform:translateX(-100%)}
  .bcm[data-mobile-mode="drawer"][data-mobile-drawer-direction="right"] .bcm__drawer{right:0;left:auto;transform:translateX(100%)}

  /* Animaciones */
  .bcm[data-mobile-drawer-anim="fade"] .bcm__drawer{transform:none !important;opacity:0}
  .bcm[data-mobile-drawer-anim="scale"][data-mobile-drawer-direction="left"] .bcm__drawer,
  .bcm[data-mobile-drawer-anim="scale"][data-mobile-drawer-direction="right"] .bcm__drawer{transform:scale(.9);opacity:0;transform-origin:top center}

  .bcm[data-mobile-mode="drawer"].is-drawer-open .bcm__drawer{
    visibility:visible;opacity:1;transform:translateX(0);
    transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .25s ease,visibility 0s linear 0s;
  }
  .bcm[data-mobile-drawer-anim="scale"].is-drawer-open .bcm__drawer{transform:scale(1)}

  /* Push: empuja el body al abrir (clase agregada en JS) */
  body.bcm-drawer-push{overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
  body.bcm-drawer-push-left{transform:translateX(var(--bcm-drawer-push-amount,80%))}
  body.bcm-drawer-push-right{transform:translateX(calc(-1 * var(--bcm-drawer-push-amount,80%)))}

  /* ====== Drawer estilo OKA ====== */

  /* Topbar sticky superior. En root: muestra logo + X. En sub: muestra Back ← + X. */
  .bcm__drawer-topbar{
    display:flex;align-items:center;justify-content:space-between;
    gap:8px;padding:14px 16px;
    border-bottom:1px solid var(--bcm-border,rgba(0,0,0,.08));
    flex:0 0 auto;background:var(--bcm-panel-bg,#fff);
    position:sticky;top:0;z-index:5;
    min-height:56px;
  }
  .bcm__drawer-back{
    background:transparent;border:0;cursor:pointer;color:inherit;
    display:inline-flex;align-items:center;gap:6px;
    padding:6px 8px 6px 4px;border-radius:6px;
    font-size:14px;font-weight:500;letter-spacing:.02em;
  }
  .bcm__drawer-back-icon{font-size:22px;line-height:1;display:inline-block;transform:translateY(-1px)}
  .bcm__drawer-back-label{font-size:14px}
  .bcm__drawer-close{
    background:transparent;border:0;cursor:pointer;color:inherit;
    font-size:26px;line-height:1;width:36px;height:36px;
    display:inline-flex;align-items:center;justify-content:center;border-radius:6px;
    margin-left:auto;
  }
  .bcm__drawer-back:hover,.bcm__drawer-close:hover{background:rgba(0,0,0,.05)}
  .bcm__drawer-back[hidden],.bcm__drawer-back:not(.is-visible){visibility:hidden;display:inline-flex}
  /* Logo del root: se oculta cuando hay back visible (sub-view). */
  .bcm__drawer-logo{
    display:inline-flex;align-items:center;justify-content:flex-start;
    flex:1;text-decoration:none;color:inherit;
    margin:0 8px;
  }
  .bcm__drawer-logo img{display:block;max-width:100%;height:auto}
  .bcm__drawer-logo-fallback{font-weight:600;font-size:18px;letter-spacing:.02em}
  .bcm__drawer:not(.is-sub) .bcm__drawer-back{display:none !important}
  .bcm__drawer.is-sub .bcm__drawer-logo{display:none}
  /* Título central oculto: el subnivel usa H1 display dentro del scroll */
  .bcm__drawer-title{display:none}

  /* Bloque textual estilo OKA: Search, Wishlist, Profile/Sign in, Cart.
     Más pequeño que el menú principal y separado por divider arriba/abajo. */
  .bcm__drawer-text-actions{
    list-style:none;margin:18px 0 0;padding:10px 0;
    border-top:1px solid var(--bcm-border,rgba(0,0,0,.08));
    border-bottom:1px solid var(--bcm-border,rgba(0,0,0,.08));
  }
  .bcm__drawer-text-actions li{margin:0}
  .bcm__drawer-text-actions a{
    display:block;padding:11px 18px;
    color:inherit;text-decoration:none;
    font-size:11.5px;font-weight:500;
    text-transform:uppercase;letter-spacing:.1em;
    transition:background .2s ease;
  }
  .bcm__drawer-text-actions a:hover{background:rgba(0,0,0,.04)}

  /* Divider entre nav y promos */
  .bcm__drawer-promos-stack{
    border-top:1px solid var(--bcm-border,rgba(0,0,0,.08));
    margin-top:0;
  }

  /* Nav drill-down: contenedor de vistas */
  .bcm__drawer-nav{
    flex:1 1 auto;overflow:hidden;position:relative;
    min-height:0;
    margin-bottom:var(--bcm-drawer-section-gap,0);
  }
  .bcm__drawer-view{
    position:absolute;inset:0;
    display:flex;flex-direction:column;
    transform:translateX(0);transition:transform .32s cubic-bezier(.2,.8,.2,1);
    background:var(--bcm-panel-bg,#fff);
  }
  .bcm__drawer-view[hidden]{display:flex !important;transform:translateX(100%);visibility:hidden}
  .bcm__drawer-view.is-leaving{transform:translateX(-30%);visibility:visible}

  /* Área scrolleable interna de cada vista. Usa gap para separar
     nav / acciones textuales / promos según --bcm-drawer-section-gap. */
  .bcm__drawer-scroll{
    flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;
    padding:8px 0 16px;
    min-height:0;
    display:flex;flex-direction:column;
    gap:var(--bcm-drawer-section-gap,0);
  }

  /* Título display tipo OKA dentro del subnivel */
  .bcm__drawer-display{
    margin:18px 18px 14px;
    font-family:var(--bcm-display-font,Georgia,'Times New Roman',serif);
    font-weight:500;font-size:34px;line-height:1.1;letter-spacing:-.01em;
    color:inherit;
  }

  /* Lista de links */
  .bcm__drawer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--bcm-drawer-link-gap,0)}
  .bcm__drawer-link{
    display:flex;align-items:center;justify-content:space-between;
    width:100%;background:transparent;border:0;cursor:pointer;
    color:inherit;text-decoration:none;
    padding:16px 18px;font-size:14px;font-weight:500;
    text-transform:uppercase;letter-spacing:.08em;
    text-align:var(--bcm-drawer-text-align,left);
    transition:background .2s ease,color .2s ease,box-shadow .2s ease;
  }
  .bcm__drawer-link:hover{background:var(--bcm-drawer-hover-bg,rgba(0,0,0,.03));color:var(--bcm-drawer-hover-color,var(--bcm-accent,currentColor))}
  .bcm__drawer-link>span:first-child{flex:1;text-align:var(--bcm-drawer-text-align,left)}
  .bcm__drawer-chevron{opacity:.55;font-size:18px;line-height:1;transition:transform .25s ease}

  /* Active state evidente */
  .bcm__drawer-link.is-active{
    color:var(--bcm-drawer-active-color,var(--bcm-active,var(--bcm-accent,currentColor)));
    font-weight:600;
    background:var(--bcm-drawer-active-bg,rgba(0,0,0,.04));
    box-shadow:inset 3px 0 0 var(--bcm-drawer-active-indicator,var(--bcm-active,var(--bcm-accent,currentColor)));
  }
  .bcm__drawer-item.is-active>.bcm__drawer-link:not(.is-active){
    color:var(--bcm-drawer-active-color,var(--bcm-active,var(--bcm-accent,currentColor)));
  }

  /* Accordion mode */
  .bcm__drawer[data-nav-mode="accordion"] .bcm__drawer-view{position:relative;inset:auto;overflow:visible}
  .bcm__drawer[data-nav-mode="accordion"] .bcm__drawer-scroll{overflow:visible}
  .bcm__drawer-sub{padding-left:14px;background:rgba(0,0,0,.02)}
  .bcm__drawer-list--sub .bcm__drawer-link{font-size:13px;font-weight:400;padding:12px 18px;letter-spacing:.04em}
  .bcm__drawer-link[data-bcm-toggle][aria-expanded="true"] .bcm__drawer-chevron{transform:rotate(90deg)}

  /* Promos apiladas dentro del subnivel (estilo OKA) */
  .bcm__drawer-promos-stack{
    display:flex;flex-direction:column;gap:14px;
    padding:18px 18px 24px;
  }
  .bcm__drawer-promo-card{
    display:block;color:inherit;text-decoration:none;
    border-radius:var(--bcm-promo-radius,4px);overflow:hidden;
    background:var(--bcm-promo-bg,#f4f1ec);
    position:relative;
  }
  .bcm__drawer-promo-card-media{display:block;width:100%;aspect-ratio:16/11;overflow:hidden}
  .bcm__drawer-promo-card-media img{width:100%;height:100%;object-fit:cover;display:block}
  .bcm__drawer-promo-card-cta{
    display:flex;align-items:center;gap:6px;
    padding:14px 16px;font-size:13px;font-weight:500;
    text-transform:uppercase;letter-spacing:.08em;
  }

  /* CTA sticky inferior por subnivel ("SHOP X") */
  .bcm__drawer-cta{
    flex:0 0 auto;
    display:flex;align-items:center;justify-content:center;
    padding:18px 16px;
    background:var(--bcm-cta-bg,#1f1f1f);
    color:var(--bcm-cta-color,#fff);
    text-decoration:none;
    font-size:13px;font-weight:600;letter-spacing:.12em;
    text-transform:uppercase;
    border-top:1px solid rgba(0,0,0,.06);
  }
  .bcm__drawer-cta:hover{filter:brightness(1.1)}

  /* Footer accordion (sin cambios) */
  .bcm--footer .bcm__footer-cols{flex-direction:column;gap:0}
  .bcm--footer .bcm__footer-col{
    flex:0 0 auto;width:100%;
    border-bottom:1px solid var(--bcm-border,rgba(0,0,0,.1));
  }
  .bcm--footer .bcm__footer-col-toggle{
    cursor:pointer;padding:14px 0;margin:0;
  }
  .bcm--footer .bcm__footer-col-chevron{
    display:inline-block;width:.5em;height:.5em;
    border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
    transform:rotate(45deg);transition:transform .25s ease;
  }
  .bcm--footer .bcm__footer-col-toggle[aria-expanded="true"] .bcm__footer-col-chevron{
    transform:rotate(225deg);
  }
  .bcm--footer .bcm__footer-col-panel{
    max-height:0;overflow:hidden;
    transition:max-height .3s ease,padding .3s ease;
    padding:0;
  }
  .bcm--footer .bcm__footer-col-toggle[aria-expanded="true"]+.bcm__footer-col-panel{
    max-height:1500px;padding:0 0 14px;
  }
}

