/* ============================================================
   Navegación compartida — Clara Dell’Oro · Tejiendo Voces
   Se carga DESPUÉS del <style> de cada página para poder
   sobreescribir las reglas antiguas de nav.
   ============================================================ */

html { scroll-padding-top: 84px; }

nav.cdo-nav{
  background:#FFFFFF;
  border-bottom:1px solid var(--divisor,#EEE2D6);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:12px 32px;
  position:sticky;
  top:0;
  z-index:1000;
  font-family:var(--sans,'Glacial Indifference','Jost',-apple-system,'Segoe UI',sans-serif);
}

nav.cdo-nav .cdo-brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto;}
nav.cdo-nav .cdo-brand img{height:52px;width:auto;object-fit:contain;display:block;}
nav.cdo-nav .cdo-brand .cdo-wm{display:none;flex-direction:column;line-height:1.15;text-align:left;}
nav.cdo-nav .cdo-brand.sin-logo .cdo-wm{display:flex;}
nav.cdo-nav .cdo-brand .cdo-wm b{font-size:15px;letter-spacing:.14em;color:var(--titulo,#1A1B1F);font-weight:700;}
nav.cdo-nav .cdo-brand .cdo-wm small{font-size:10px;letter-spacing:.3em;color:var(--texto-suave,#8a8880);}

/* ---- lista principal ---- */
nav.cdo-nav ul.cdo-menu{
  display:flex;
  align-items:center;
  gap:4px;
  list-style:none;
  margin:0;
  padding:0;
}
nav.cdo-nav ul.cdo-menu > li{position:relative;list-style:none;}

nav.cdo-nav ul.cdo-menu a,
nav.cdo-nav ul.cdo-menu .cdo-sub-toggle{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:inherit;
  font-size:12.5px;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:400;
  color:var(--texto-suave,#6b6560);
  text-decoration:none;
  background:none;
  border:0;
  cursor:pointer;
  padding:10px 14px;
  border-radius:var(--radio,6px);
  transition:color .2s, background .2s;
  white-space:nowrap;
}
nav.cdo-nav ul.cdo-menu a:hover,
nav.cdo-nav ul.cdo-menu .cdo-sub-toggle:hover{color:var(--naranja,#D8580F);}
nav.cdo-nav ul.cdo-menu a.activa,
nav.cdo-nav ul.cdo-menu li.activa > .cdo-sub-toggle{color:var(--naranja,#D8580F);font-weight:700;}

nav.cdo-nav .cdo-caret{
  width:8px;height:8px;
  border-right:1.6px solid currentColor;
  border-bottom:1.6px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .2s;
}
nav.cdo-nav li.cdo-has-sub.abierto .cdo-caret{transform:rotate(-135deg) translateY(-2px);}

/* ---- submenú Cursos ---- */
nav.cdo-nav ul.cdo-sub{
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  min-width:250px;
  background:#fff;
  border:1px solid var(--divisor,#EEE2D6);
  border-radius:10px;
  box-shadow:0 14px 38px rgba(120,90,60,.16);
  padding:8px;
  list-style:none;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:2px;
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s;
}
nav.cdo-nav li.cdo-has-sub:hover > ul.cdo-sub,
nav.cdo-nav li.cdo-has-sub:focus-within > ul.cdo-sub,
nav.cdo-nav li.cdo-has-sub.abierto > ul.cdo-sub{
  opacity:1;visibility:visible;transform:none;
}
nav.cdo-nav ul.cdo-sub a{
  display:block;
  text-align:left;
  text-transform:none;
  letter-spacing:.01em;
  font-size:15px;
  color:var(--texto,#2C2C2C);
  padding:11px 14px;
  border-radius:6px;
  white-space:normal;
}
nav.cdo-nav ul.cdo-sub a:hover{background:var(--highlight,#FBE9D9);color:var(--naranja-osc,#A03F08);}
nav.cdo-nav ul.cdo-sub a small{
  display:block;
  font-size:12.5px;
  letter-spacing:.02em;
  color:var(--texto-suave,#8a8880);
  margin-top:2px;
  text-transform:none;
}

/* ---- botón hamburguesa ---- */
nav.cdo-nav .cdo-burger{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:44px;height:44px;
  background:none;border:0;cursor:pointer;padding:10px;
  border-radius:8px;
}
nav.cdo-nav .cdo-burger span{
  display:block;height:2px;width:100%;
  background:var(--titulo,#1A1B1F);
  border-radius:2px;
  transition:transform .25s, opacity .2s;
}
nav.cdo-nav.abierto .cdo-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
nav.cdo-nav.abierto .cdo-burger span:nth-child(2){opacity:0;}
nav.cdo-nav.abierto .cdo-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---- móvil ---- */
@media(max-width:900px){
  nav.cdo-nav{padding:10px 18px;flex-wrap:wrap;}
  nav.cdo-nav .cdo-brand img{height:44px;}
  nav.cdo-nav .cdo-burger{display:flex;}

  nav.cdo-nav ul.cdo-menu{
    display:none;
    flex-basis:100%;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:8px 0 14px;
    border-top:1px solid var(--divisor,#EEE2D6);
    margin-top:10px;
  }
  nav.cdo-nav.abierto ul.cdo-menu{display:flex;}

  nav.cdo-nav ul.cdo-menu > li{width:100%;}
  nav.cdo-nav ul.cdo-menu a,
  nav.cdo-nav ul.cdo-menu .cdo-sub-toggle{
    width:100%;
    justify-content:space-between;
    font-size:14px;
    padding:14px 6px;
    border-bottom:1px solid rgba(238,226,214,.6);
    border-radius:0;
  }
  nav.cdo-nav ul.cdo-sub{
    position:static;
    opacity:1;visibility:visible;transform:none;
    border:0;box-shadow:none;border-radius:0;
    padding:0 0 0 14px;
    display:none;
    background:var(--rosa,#FFF8F4);
  }
  nav.cdo-nav li.cdo-has-sub.abierto > ul.cdo-sub{display:flex;}
  nav.cdo-nav li.cdo-has-sub:hover > ul.cdo-sub{display:none;}
  nav.cdo-nav li.cdo-has-sub.abierto:hover > ul.cdo-sub{display:flex;}
  nav.cdo-nav ul.cdo-sub a{font-size:14.5px;padding:13px 10px;}
}

/* ---- redes del footer con iconos reales ---- */
footer .rrss a svg{width:17px;height:17px;fill:currentColor;display:block;}
footer .rrss a{
  width:38px;height:38px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--crema,#FFFDFB);
  border:1px solid var(--divisor,#EEE2D6);
  color:var(--texto-suave,#8a8880);
  text-decoration:none;
  transition:background .2s,color .2s,border-color .2s,transform .2s;
}
footer .rrss a:hover{background:var(--naranja,#D8580F);border-color:var(--naranja,#D8580F);color:#fff;transform:translateY(-2px);}
footer .rrss{display:flex;gap:14px;justify-content:center;margin:20px 0 0;}


/* fix submenu movil */
@media(max-width:900px){
 nav.cdo-nav ul.cdo-sub{width:100%;min-width:0;flex-direction:column;align-items:stretch;text-align:left;padding:0 0 0 10px;}
 nav.cdo-nav ul.cdo-sub li{width:100%;}
 nav.cdo-nav ul.cdo-sub a{text-align:left;justify-content:flex-start;padding:13px 10px 13px 14px;}
}
