/* ===== VARIABLES Y RESET ===== */
  :root{
    --sdc-accent: #722A03;
    --sdc-dark: #1C1E13;
    --sdc-olive: #535439;
    --sdc-maroon: #63190F;
    --sdc-cream: #E2DECF;
    --sdc-black: #000000;
  }

  
  body.sdc-lock{ overflow:hidden; }

  .sdc-nav, .sdc-menu, .sdc-menu-backdrop, .sdc-nav *, .sdc-menu *{
    box-sizing:border-box;
    font-family:'Montserrat','Helvetica Neue',Arial,sans-serif;
  }
  .sdc-menu__list a{
    font-family:'MedievalSharp', 'Montserrat', cursive;
  }

  /* ===== NAV STICKY ===== */
  .sdc-nav{
    position:fixed; top:0; left:0; right:0;
    z-index:9998;
    pointer-events:none;
  }
  .sdc-nav__bg{
    position:absolute; inset:0;
    background:rgba(28,30,19,0);
    backdrop-filter:blur(0px); -webkit-backdrop-filter:blur(0px);
    transition: background .45s ease, backdrop-filter .45s ease, border-color .45s ease;
    border-bottom:1px solid rgba(226,222,207,0);
  }
  .sdc-nav.is-scrolled .sdc-nav__bg,
  .sdc-nav.is-menu-open .sdc-nav__bg{
    background:rgba(20,22,14,.65);
    backdrop-filter:blur(14px) saturate(120%);
    -webkit-backdrop-filter:blur(14px) saturate(120%);
    border-bottom-color:rgba(226,222,207,.08);
  }
  .sdc-nav__row{
    position:relative; pointer-events:auto;
    display:flex; align-items:center; justify-content:space-between;
    gap:clamp(16px,3vw,32px);
    padding:14px clamp(18px,4vw,40px);
    transition: padding .4s ease;
  }
  .sdc-nav.is-scrolled .sdc-nav__row{
    padding-top:10px; padding-bottom:10px;
  }

  /* Sello (ahora logotipo horizontal) */
  .sdc-nav__seal{
    display:block; flex-shrink:0;
    line-height:0;
  }
  .sdc-nav__seal img{
    height:clamp(52px,6vw,64px); width:auto; display:block;
    transition: height .4s ease, opacity .3s ease;
  }
  .sdc-nav.is-scrolled .sdc-nav__seal img{ height:clamp(44px,5vw,54px); }
  .sdc-nav__seal:hover img{ opacity:.85; }

  /* Navegación desktop */
  .sdc-nav__links ul{
    display:flex; align-items:center;
    list-style:none; margin:0; padding:0;
    gap:clamp(16px,2vw,28px);
  }
  .sdc-nav__links a{
    color:var(--sdc-cream);
    text-decoration:none;
    font-weight:600; font-size:13px;
    letter-spacing:.08em; text-transform:uppercase;
    padding:6px 0;
    position:relative;
    transition: color .35s ease;
  }
  .sdc-nav__links a::after{
    content:""; position:absolute; left:0; bottom:0;
    width:100%; height:1px;
    background:var(--sdc-accent);
    transform:scaleX(0); transform-origin:right;
    transition: transform .35s cubic-bezier(.2,.7,.2,1);
  }
  .sdc-nav__links a:hover{ color:var(--sdc-accent); }
  .sdc-nav__links a:hover::after{
    transform:scaleX(1); transform-origin:left;
  }

  /* Iconos desktop */
  .sdc-nav__icons{
    display:flex; align-items:center;
    gap:18px; flex-shrink:0;
  }
  .sdc-nav__icons a{
    color:var(--sdc-cream);
    display:inline-flex;
    transition: color .35s ease, transform .35s ease;
  }
  .sdc-nav__icons a:hover{
    color:var(--sdc-accent);
    transform:translateY(-2px);
  }

  /* Hamburguesa */
  .sdc-burger{
    width:44px; height:44px;
    background:transparent; border:0; cursor:pointer;
    display:flex; flex-direction:column;
    align-items:center; justify-content:center;
    gap:5px; flex-shrink:0;
    z-index:10001;
    padding:0;
  }
  .sdc-burger span{
    display:block; width:24px; height:1.5px;
    background:var(--sdc-cream);
    transition: transform .4s cubic-bezier(.7,0,.3,1), opacity .3s, background .3s;
  }
  .sdc-burger:hover span{ background:var(--sdc-accent); }
  .sdc-burger.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
  .sdc-burger.is-open span:nth-child(2){ opacity:0; }
  .sdc-burger.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

  /* Color del botón: prevalece sobre el rosado del tema. */
  #sdcNav .sdc-burger{
    background:transparent !important;
    border:0 !important;
    color:var(--sdc-cream) !important;
    box-shadow:none !important;
    border-radius:4px;
    -webkit-tap-highlight-color:transparent;
    transition:background .25s ease;
  }
  #sdcNav .sdc-burger:hover,
  #sdcNav .sdc-burger:focus,
  #sdcNav .sdc-burger:active{
    background:var(--sdc-accent) !important;
    color:var(--sdc-cream) !important;
    border-color:transparent !important;
    box-shadow:none !important;
  }
  #sdcNav .sdc-burger span,
  #sdcNav .sdc-burger:hover span,
  #sdcNav .sdc-burger:focus span,
  #sdcNav .sdc-burger:active span{
    background:var(--sdc-cream) !important;
  }
  #sdcNav .sdc-burger:focus-visible{
    outline:1px solid var(--sdc-cream);
    outline-offset:4px;
  }

  /* ===== BACKDROP ===== */
  .sdc-menu-backdrop{
    position:fixed; inset:0; z-index:9990;
    background:rgba(0,0,0,.55);
    backdrop-filter:blur(18px) saturate(130%);
    -webkit-backdrop-filter:blur(18px) saturate(130%);
    opacity:0; visibility:hidden; pointer-events:none;
    transition: opacity .5s ease, visibility .5s ease;
  }
  .sdc-menu-backdrop.is-open{
    opacity:1; visibility:visible; pointer-events:auto;
  }

  /* ===== MENÚ FLOTANTE ===== */
  .sdc-menu{
    position:fixed; inset:0; z-index:9995;
    display:flex; align-items:center; justify-content:center;
    padding: clamp(90px,12vh,140px) clamp(16px,4vw,48px) clamp(32px,6vh,64px);
    opacity:0; visibility:hidden; pointer-events:none;
    transition: opacity .5s ease, visibility .5s ease;
  }
  .sdc-menu.is-open{
    opacity:1; visibility:visible; pointer-events:auto;
  }

  .sdc-menu__panel{
    position:relative;
    width:100%;
    max-width:880px;
    max-height:100%;
    overflow-y:auto;
    border-radius:28px;
    background:rgba(14,15,12,.70);
    backdrop-filter:blur(24px) saturate(140%);
    -webkit-backdrop-filter:blur(24px) saturate(140%);
    border:1px solid rgba(226,222,207,.08);
    box-shadow:
      0 30px 80px rgba(0,0,0,.55),
      0 0 0 1px rgba(226,222,207,.02) inset,
      0 1px 0 rgba(226,222,207,.06) inset;
    transform:translateY(20px) scale(.98);
    opacity:0;
    transition: transform .55s cubic-bezier(.2,.7,.2,1), opacity .45s ease;
  }
  .sdc-menu.is-open .sdc-menu__panel{
    transform:translateY(0) scale(1); opacity:1;
  }

  .sdc-menu__panel::before{
    content:""; position:absolute; inset:0; pointer-events:none; border-radius:inherit;
    background:
      radial-gradient(ellipse 60% 45% at 50% 0%, rgba(114,42,3,.10), transparent 60%),
      radial-gradient(ellipse 80% 50% at 50% 100%, rgba(114,42,3,.04), transparent 70%);
  }

  .sdc-menu__inner{
    position:relative; z-index:1;
    padding: clamp(36px,5vw,64px) clamp(24px,5vw,64px);
    display:flex; flex-direction:column; align-items:center; text-align:center;
  }

  .sdc-menu__eyebrow{
    display:inline-flex; align-items:center; gap:12px;
    margin:0 0 28px;
    font-family:'MedievalSharp','Montserrat',cursive;
    font-size:16px;
    letter-spacing:.25em;
    color:var(--sdc-accent);
    text-transform:uppercase;
  }
  .sdc-line{
    display:inline-block; width:36px; height:1px;
    background:var(--sdc-accent);
  }
  .sdc-dot{
    width:6px; height:6px;
    background:var(--sdc-accent);
    border-radius:50%;
    box-shadow:0 0 10px rgba(114,42,3,.5);
    animation:sdc-pulse 1.6s ease-in-out infinite;
  }
  @keyframes sdc-pulse{
    0%,100%{ opacity:1; transform:scale(1); }
    50%{ opacity:.4; transform:scale(.6); }
  }

  .sdc-menu__list{
    list-style:none; padding:0; margin:0;
    display:flex; flex-direction:column; gap:4px;
    width:100%;
  }
  .sdc-menu__list li{
    opacity:0; transform:translateY(18px);
    transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1);
    transition-delay: var(--d);
  }
  .sdc-menu.is-open .sdc-menu__list li{
    opacity:1; transform:none;
  }
  .sdc-menu__list a{
    display:inline-flex; align-items:baseline; gap:14px; justify-content:center;
    color:var(--sdc-cream); text-decoration:none;
    font-weight:400;
    text-transform:uppercase;
    font-size:clamp(24px,3.4vw,38px);
    line-height:1.2; letter-spacing:.02em;
    padding:6px 10px;
    transition: color .35s ease, transform .35s ease;
  }
  .sdc-menu__list a:hover{
    color:var(--sdc-accent);
    transform:translateX(6px);
  }
  .sdc-num{
    font-family:'Montserrat',sans-serif;
    font-weight:600; font-size:10px; letter-spacing:.3em;
    color:rgba(226,222,207,.35);
    align-self:flex-start; margin-top:.6em;
  }

  .sdc-menu__social{
    margin-top:32px;
    display:flex; gap:16px; align-items:center; flex-wrap:wrap; justify-content:center;
    opacity:0; transform:translateY(18px);
    transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1);
    transition-delay: var(--d);
  }
  .sdc-menu.is-open .sdc-menu__social{
    opacity:1; transform:none;
  }
  .sdc-menu__social a{
    width:44px; height:44px; border-radius:50%;
    display:inline-flex; align-items:center; justify-content:center;
    border:1px solid rgba(226,222,207,.18);
    color:rgba(226,222,207,.75);
    background:rgba(226,222,207,.02);
    transition: color .35s ease, border-color .35s ease, transform .35s ease, background .35s ease;
  }
  .sdc-menu__social a:hover{
    color:var(--sdc-cream);
    border-color:var(--sdc-accent);
    background:rgba(114,42,3,.14);
    transform:translateY(-3px);
  }

  .sdc-menu__foot{
    margin:28px 0 0;
    font-weight:600; font-size:10px; letter-spacing:.4em;
    color:rgba(226,222,207,.35);
    text-transform:uppercase;
  }

  .sdc-menu__panel::-webkit-scrollbar{ width:6px; }
  .sdc-menu__panel::-webkit-scrollbar-thumb{ background:rgba(226,222,207,.15); border-radius:3px; }

  /* ===== RESPONSIVE ===== */
  @media (max-width:1024px){
    .sdc-nav__links a{ font-size:12px; }
    .sdc-nav__icons{ gap:14px; }
  }

  @media (max-width:768px){
    .sdc-nav__links,
    .sdc-nav__icons{
      display:none !important;
    }
    .sdc-nav__row{
      padding:12px 16px;
      justify-content:space-between;
    }
    .sdc-nav__seal img{ height:clamp(44px,8vw,50px); }
    .sdc-nav.is-scrolled .sdc-nav__seal img{ height:clamp(40px,7vw,44px); }

    .sdc-menu{
      padding: clamp(80px,11vh,110px) 14px clamp(24px,5vh,40px);
    }
    .sdc-menu__panel{ border-radius:22px; }
    .sdc-menu__inner{ padding:32px 18px; }
    .sdc-menu__list a{
      font-size:26px; gap:10px;
    }
    .sdc-num{ font-size:9px; }
    .sdc-menu__eyebrow{ font-size:14px; }
  }

  @media (max-width:380px){
    .sdc-menu__list a{ font-size:22px; }
    .sdc-menu__social a{ width:40px; height:40px; }
  }

  /* ===== REDUCED MOTION ===== */
  @media (prefers-reduced-motion: reduce){
    .sdc-menu__panel,
    .sdc-menu__list li,
    .sdc-menu__social,
    .sdc-menu,
    .sdc-menu-backdrop,
    .sdc-nav__bg,
    .sdc-nav__seal img,
    .sdc-nav__row{
      transition:none !important;
      animation:none !important;
    }
  }

  /* ===== FIX WORDPRESS / ELEMENTOR ===== */
  

  /* Ocultar headers residuales del tema */
  .site-header,
  header.site-header,
  #masthead,
  .elementor-hello-theme header,
  header[role="banner"]:not(.sdc-nav){
    display:none !important;
  }

  /* Quitar márgenes de ubicación header de Elementor */
  .elementor-location-header,
  .elementor-location-header .elementor-section-wrap,
  .elementor-location-header > div{
    margin:0 !important;
    padding:0 !important;
  }

  /* Admin bar */
  body.admin-bar .sdc-nav{ top:32px; }
  @media screen and (max-width:782px){
    body.admin-bar .sdc-nav{ top:46px; }
  }

  /* Contador conectado a la sesión real de WooCommerce. */
  .sdc-nav .sdc-cart-link, .sdc-menu .sdc-cart-link {
    position:relative;
    overflow:visible;
  }
  .sdc-nav .sdc-cart-count, .sdc-menu .sdc-cart-count {
    position:absolute;
    top:-9px; right:-11px;
    display:inline-flex;
    align-items:center; justify-content:center;
    min-width:19px; height:19px;
    padding:0 5px;
    border:1px solid #D69965;
    border-radius:999px;
    background:#722A03;
    color:#E2DECF;
    font-family:'Montserrat',sans-serif;
    font-size:10px; font-weight:600; line-height:1;
    font-variant-numeric:tabular-nums;
    pointer-events:none;
  }
  .sdc-nav .sdc-cart-count[data-count="0"],
  .sdc-menu .sdc-cart-count[data-count="0"] { display:none; }
  .sdc-menu .sdc-cart-count { top:-3px; right:-5px; }
  #sdcNav .sdc-cart-mobile { display:none; }
  @media(max-width:768px) {
    #sdcNav .sdc-cart-mobile {
      display:inline-flex;
      align-items:center; justify-content:center;
      width:44px; height:44px;
      margin-left:auto;
      color:var(--sdc-cream);
      text-decoration:none;
    }
    #sdcNav .sdc-cart-mobile .sdc-cart-count { top:0; right:-1px; }
    #sdcNav .sdc-cart-mobile:hover,
    #sdcNav .sdc-cart-mobile:active { color:#D69965; }
    #sdcNav .sdc-nav__seal { min-width:0; }
    #sdcNav .sdc-nav__seal img { max-width:100%; object-fit:contain; }
  }

#sdcFooter {
  --sdc-black:#050505;
  --sdc-ivory:#E2DECF;
  --sdc-terra:#722A03;
  --sdc-hover:#D69965;
  --sdc-line:rgba(226,222,207,.17);
  position:relative;
  width:100%;
  overflow:hidden;
  background:var(--sdc-black);
  color:var(--sdc-ivory);
  font-family:'Montserrat',sans-serif;
  -webkit-font-smoothing:antialiased;
}
#sdcFooter, #sdcFooter *, #sdcFooter *::before, #sdcFooter *::after { box-sizing:border-box; }
#sdcFooter .sdc-footer__inner { width:min(88%,1240px); margin:0 auto; }

/* Moneda ampliada como único elemento de marca. */
#sdcFooter .sdc-footer__brand {
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 0 12px;
  border-bottom:1px solid var(--sdc-line);
}
#sdcFooter .sdc-footer__coin-link { display:block; width:196px; max-width:100%; line-height:0; }
#sdcFooter .sdc-footer__coin-link picture,
#sdcFooter .sdc-footer__coin {
  display:block; width:100%; height:auto;
  margin:0; padding:0; border:0; background:transparent;
}

/* Tres columnas alineadas; sin fila reservada al logo anterior. */
#sdcFooter .sdc-footer__grid {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.8fr) minmax(0,1.25fr);
  align-items:start;
  gap:24px clamp(28px,5vw,72px);
  padding:26px 0;
}
#sdcFooter .sdc-footer__column { min-width:0; }
#sdcFooter .sdc-footer__heading {
  display:flex; align-items:center; gap:10px;
  margin:0 0 14px; padding:0;
  color:var(--sdc-ivory);
  font-family:'Montserrat',sans-serif;
  font-size:10px; font-weight:600; line-height:1.5;
  letter-spacing:.2em; text-transform:uppercase;
}
#sdcFooter .sdc-footer__heading::before {
  content:''; width:16px; height:1px; flex-shrink:0;
  background:var(--sdc-terra);
}
#sdcFooter .sdc-footer__contact-list,
#sdcFooter .sdc-footer__nav { display:grid; gap:4px; margin:0; padding:0; }
#sdcFooter .sdc-footer__text,
#sdcFooter .sdc-footer__contact,
#sdcFooter .sdc-footer__nav a {
  margin:0; padding:0;
  color:rgba(226,222,207,.7);
  font-family:'Montserrat',sans-serif;
  font-size:12px; font-weight:300; line-height:1.75;
}
#sdcFooter .sdc-footer__contact,
#sdcFooter .sdc-footer__nav a {
  display:block; width:fit-content; max-width:100%; min-height:0;
  text-decoration:none;
  transition:color .25s ease;
}
#sdcFooter .sdc-footer__contact > span { white-space:nowrap; }
#sdcFooter .sdc-footer__contact:hover,
#sdcFooter .sdc-footer__contact:active,
#sdcFooter .sdc-footer__nav a:hover,
#sdcFooter .sdc-footer__nav a:active { color:var(--sdc-hover); }
#sdcFooter a:focus-visible { outline:1px solid var(--sdc-hover); outline-offset:5px; }

/* Cierre compacto con separaciones consistentes. */
#sdcFooter .sdc-footer__bottom {
  display:grid; grid-template-columns:1fr auto;
  align-items:center; gap:12px 24px;
  padding:18px 0;
  border-top:1px solid var(--sdc-line);
}
#sdcFooter .sdc-footer__meta {
  display:flex; flex-wrap:wrap; gap:5px 16px;
  color:rgba(226,222,207,.5);
  font-size:9px; font-weight:500;
  letter-spacing:.1em; line-height:1.6;
  text-transform:uppercase;
}
#sdcFooter .sdc-footer__meta > span { white-space:nowrap; }
#sdcFooter .sdc-footer__social {
  display:flex; align-items:center; flex-wrap:wrap;
  justify-content:flex-end; gap:16px;
}
#sdcFooter .sdc-footer__social a {
  display:inline-flex; align-items:center;
  min-height:30px; margin:0; padding:0;
  color:rgba(226,222,207,.7);
  font-size:9px; font-weight:500; line-height:1.6;
  letter-spacing:.12em;
  text-decoration:none; text-transform:uppercase;
  transition:color .25s ease;
}
#sdcFooter .sdc-footer__social a:hover,
#sdcFooter .sdc-footer__social a:active { color:var(--sdc-hover); }
#sdcFooter .sdc-footer__alcohol-notice {
  padding:12px 24px;
  border-top:1px solid rgba(226,222,207,.1);
  background:#030303;
  color:rgba(226,222,207,.64);
  font-size:10px; font-weight:400; line-height:1.65;
  text-align:center;
}
#sdcFooter .sdc-footer__credit {
  margin:0; padding:13px 20px 16px;
  border-top:1px solid rgba(226,222,207,.07);
  background:#030303;
  color:rgba(226,222,207,.5);
  font-size:9px; font-weight:400;
  letter-spacing:.1em; line-height:1.8;
  text-align:center;
}
#sdcFooter .sdc-footer__credit strong { color:var(--sdc-ivory); font-weight:500; }

@media(max-width:767px) {
  #sdcFooter .sdc-footer__inner { width:calc(100% - 36px); max-width:560px; }
  #sdcFooter .sdc-footer__brand { padding:8px 0 12px; }
  #sdcFooter .sdc-footer__coin-link { width:168px; }
  #sdcFooter .sdc-footer__grid {
    grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
    gap:24px 16px;
    padding:24px 0;
    text-align:center;
  }
  #sdcFooter .sdc-footer__column--legal { grid-column:1 / -1; }
  #sdcFooter .sdc-footer__heading { justify-content:center; margin-bottom:12px; font-size:9px; letter-spacing:.16em; gap:8px; }
  #sdcFooter .sdc-footer__heading::before { width:13px; }
  #sdcFooter .sdc-footer__contact-list,
  #sdcFooter .sdc-footer__nav { justify-items:center; gap:4px; }
  #sdcFooter .sdc-footer__text,
  #sdcFooter .sdc-footer__contact,
  #sdcFooter .sdc-footer__nav a { font-size:11px; line-height:1.75; }
  #sdcFooter .sdc-footer__bottom {
    grid-template-columns:1fr;
    justify-items:center;
    gap:10px; padding:16px 0;
    text-align:center;
  }
  #sdcFooter .sdc-footer__meta { flex-direction:column; align-items:center; gap:5px; font-size:8px; }
  #sdcFooter .sdc-footer__social { justify-content:center; gap:16px; }
  #sdcFooter .sdc-footer__social a { min-height:28px; font-size:8px; }
  #sdcFooter .sdc-footer__alcohol-notice { padding:12px 20px; font-size:9px; }
  #sdcFooter .sdc-footer__credit { padding:12px 20px 15px; font-size:9px; }
}
@media(prefers-reduced-motion:reduce) {
  #sdcFooter *, #sdcFooter *::after { transition:none!important; animation:none!important; }
}


/* Integración global: marca única y espacio para la cabecera fija. */
body.sdc-site-identidad { background:#050505; color:#E2DECF; }
body.sdc-site-identidad #site-header,
body.sdc-site-identidad #site-footer,
body.sdc-site-identidad .elementor-location-header,
body.sdc-site-identidad .elementor-location-footer { display:none!important; }
body.sdc-site-identidad .sdc-header-space { height:100px; flex:none; }
body.sdc-site-identidad #sdcFooter { width:100%; clear:both; }
body.sdc-site-identidad #sdcNav a,
body.sdc-site-identidad #sdcMenu a { text-decoration:none; }
body.sdc-site-identidad #sdcNav a:focus-visible,
body.sdc-site-identidad #sdcMenu a:focus-visible { outline:1px solid #D69965; outline-offset:4px; }
body.sdc-site-identidad #sdcNav .sdc-nav__links a:hover,
body.sdc-site-identidad #sdcMenu .sdc-menu__list a:hover { color:#D69965; }
body.sdc-site-identidad .sdc-menu__close {
  position:absolute; top:14px; right:14px; z-index:2;
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; padding:0;
  border:1px solid rgba(226,222,207,.18); border-radius:50%;
  background:transparent; color:#E2DECF; cursor:pointer;
}
body.sdc-site-identidad .sdc-menu__close:hover { background:#722A03; color:#E2DECF; }
@media(max-width:1100px) {
  body.sdc-site-identidad #sdcNav .sdc-nav__links { display:none!important; }
}
@media(max-width:768px) {
  body.sdc-site-identidad .sdc-header-space { height:84px; }
  body.sdc-site-identidad #sdcNav .sdc-nav__seal { max-width:calc(100% - 120px); }
}
/* Respaldo frente a un fragmento antiguo de Elementor servido desde caché. */
@supports selector(:has(*)) {
  body.sdc-site-identidad .elementor-widget-html:has(#sdcNav,#sdcFooter,header.sdc-nav,footer.sdc-footer):not(:has(main,section,article)) { display:none!important; }
}
@media(prefers-reduced-motion:reduce) {
  body.sdc-site-identidad #sdcNav *,
  body.sdc-site-identidad #sdcMenu * { animation:none!important; transition:none!important; }
}
