/*
Theme Name:   Hildegarda
Theme URI:    https://santahildegardadebingen.es
Description:  Tema hijo de Astra. Añade las plantillas de remedios, dolencias y glosario.
Author:       PowerGow
Template:     astra
Version:      1.0.0
Text Domain:  hildegarda
*/

/* ==========================================================================
   Paleta
   ========================================================================== */

:root{
  /* Verde oscuro: cabecera, pie, citas. */
  --hld-verde:#0A3D27;
  --hld-verde-2:#135C3A;

  /* Verde de texto y enlaces: 4,6:1 sobre blanco, legible. */
  --hld-viriditas:#00874A;

  /* Verde vivo: fondos, acentos y detalles. Nunca como color de texto
     sobre claro, porque su contraste es de 2,3:1. */
  --hld-viriditas-cl:#04C454;
  --hld-vivo:#04C454;
  --hld-vivo-sv:#37D97A;

  --hld-azul:#2F4370;
  --hld-azul-cl:#5A72A8;
  --hld-oro:#C89B2E;
  --hld-oro-cl:#E8C063;
  --hld-bermellon:#C4432E;
  --hld-papel:#FFFFFF;
  --hld-papel-2:#F2F7F3;

  /* Variables de estilo: las reasignan los bloques de más abajo. */
  --hld-hero-bg:var(--hld-verde);
  --hld-hero-tx:#F0EDE4;
  --hld-hero-tx-sv:#B4BDB6;
  --hld-hero-ac:var(--hld-oro-cl);
  --hld-hero-linea:rgba(196,155,46,.35);
  --hld-cab-bg:var(--hld-verde);
  --hld-cab-tx:#EDEAE1;
  --hld-cab-tx-sv:#B9C6BD;
  --hld-cita-bg:var(--hld-verde);
  --hld-cita-tx:#F2EFE6;
  --hld-cielo:#04C454;
  --hld-cielo-op:.5;
  --hld-rueda-color:#04C454;
  --hld-rueda-op:.15;
  --hld-cab-filete:linear-gradient(90deg,rgba(4,196,84,.1),rgba(200,155,46,.6) 22%,rgba(4,196,84,.9) 50%,rgba(200,155,46,.6) 78%,rgba(4,196,84,.1));
  --hld-cab-hover:#fff;
  --hld-colab-bg:var(--hld-verde);
  --hld-colab-tx:#EDEAE1;
  --hld-bloque-bg:var(--hld-papel-2);
  --hld-tinta:#1C2320;
  --hld-tinta-sv:#55635A;
  --hld-linea:#DDE7DF;

  /* Esquinas: una sola regla para todo el sitio.
     Rectángulos (botones, campos, tarjetas, paneles) a --hld-radio.
     Etiquetas y chips en --hld-pildora. Círculos al 50%. */
  --hld-radio:4px;
  --hld-pildora:999px;
  --hld-display:'Vollkorn',Georgia,serif;
  --hld-texto:'Karla',system-ui,-apple-system,sans-serif;
}

/* ==========================================================================
   Base de las fichas
   ========================================================================== */

.hld-ficha{
  font-family:var(--hld-texto);
  color:var(--hld-tinta);
  font-size:17px;
  line-height:1.68;
}
.hld-ficha h1,.hld-ficha h2,.hld-ficha h3,.hld-ficha h4{
  font-family:var(--hld-display);
  font-weight:600;
  line-height:1.15;
  margin:0;
}
.hld-wrap{max-width:1060px;margin:0 auto;padding:0 24px}
.hld-eyebrow{
  font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;
  font-weight:700;color:var(--hld-oro);margin:0 0 12px
}

/* Migas */
.hld-migas{
  background:var(--hld-papel-2);border-bottom:1px solid var(--hld-linea);
  font-size:13.5px;color:var(--hld-tinta-sv);padding:12px 0
}
.hld-migas a{text-decoration:none;color:inherit;border-bottom:1px solid var(--hld-linea)}
.hld-migas a:hover{border-bottom-color:var(--hld-viriditas)}
.hld-migas span{margin:0 8px;opacity:.5}

/* Cabecera de ficha */
.hld-head{padding:52px 0 38px;border-bottom:1px solid var(--hld-linea)}
.hld-head h1{font-size:clamp(2rem,4.4vw,3.1rem);letter-spacing:-.02em;margin-bottom:10px}
.hld-latino{
  font-family:var(--hld-display);font-style:italic;font-size:19px;
  color:var(--hld-tinta-sv);margin:0 0 18px
}
.hld-tags{display:flex;flex-wrap:wrap;gap:8px}
.hld-tag{
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  padding:5px 12px;border:1px solid var(--hld-linea);border-radius:var(--hld-radio);
  color:var(--hld-tinta-sv);background:#fff;text-decoration:none
}
.hld-tag.is-tipo{background:var(--hld-viriditas);color:#fff;border-color:var(--hld-viriditas)}
a.hld-tag:hover{border-color:var(--hld-viriditas);color:var(--hld-viriditas)}
a.hld-tag.is-tipo:hover{color:#fff;background:var(--hld-verde-2)}

/* Dos columnas */
.hld-cols{
  display:grid;grid-template-columns:1fr 300px;gap:52px;
  padding-top:44px;padding-bottom:68px;align-items:start
}

/* Capas */
.hld-capa{margin-bottom:46px}
.hld-capa:last-child{margin-bottom:0}
.hld-capa-num{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.hld-capa-num i{
  font-family:var(--hld-display);font-style:normal;font-size:13px;font-weight:700;
  width:28px;height:28px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;background:var(--hld-vivo);color:#08331F;flex:0 0 auto
}
.hld-capa-num h2{font-size:23px}
.hld-capa-num small{
  font-size:12.5px;color:var(--hld-tinta-sv);display:block;
  font-family:var(--hld-texto);font-weight:400;margin-top:2px
}
.hld-capa p{margin:0 0 14px}
.hld-capa p:last-child{margin-bottom:0}

/* Cita */
.hld-cita{
  background:var(--hld-verde)!important;color:#F2EFE6;
  padding:34px 34px 32px;border-top:3px solid var(--hld-oro);position:relative
}
.hld-cita::before{
  content:"\201C";position:absolute;top:6px;left:12px;font-family:var(--hld-display);
  font-size:64px;color:var(--hld-oro);opacity:.3;line-height:1;pointer-events:none
}
.hld-ficha .hld-cita blockquote,
.hld-cita blockquote{
  margin:0!important;padding:0 0 0 22px!important;
  background:none!important;border:0!important;border-left:0!important;
  font-family:var(--hld-display)!important;
  font-size:20px;line-height:1.6;
  font-style:normal;font-weight:400;
  color:#F2EFE6!important;
  quotes:none
}
.hld-ficha .hld-cita blockquote::before,
.hld-ficha .hld-cita blockquote::after{content:none}
.hld-ficha .hld-cita blockquote p{
  margin:0 0 12px;color:inherit!important;font-size:inherit;font-family:inherit
}
.hld-ficha .hld-cita blockquote p:last-child{margin-bottom:0}
.hld-ficha .hld-cita cite,
.hld-cita cite{
  display:block;font-family:var(--hld-texto)!important;font-style:normal!important;
  font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--hld-oro)!important;margin-top:20px;padding-left:22px;font-weight:700
}
.hld-cita-nota{font-size:13.5px;color:var(--hld-tinta-sv);margin-top:14px}

/* Capa moderna */
.hld-moderna{background:var(--hld-papel-2);border:1px solid var(--hld-linea);padding:28px 30px}
.hld-moderna h3{
  font-family:var(--hld-texto);font-size:12.5px;letter-spacing:.09em;
  text-transform:uppercase;color:var(--hld-tinta-sv);font-weight:700;margin:22px 0 9px
}
.hld-moderna h3:first-child{margin-top:0}
.hld-moderna p{margin:0 0 12px}
.hld-remite{
  display:flex;gap:14px;align-items:flex-start;background:#fff;
  border:1px solid var(--hld-linea);border-left:3px solid var(--hld-azul);
  padding:18px 20px;margin-top:20px;font-size:15px
}
.hld-remite b{
  display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--hld-azul);margin-bottom:5px
}
.hld-remite span{color:var(--hld-tinta-sv)}

/* Lateral */
.hld-aside{position:sticky;top:24px}
.hld-panel{border:1px solid var(--hld-linea);background:#fff;margin-bottom:20px}
.hld-panel h4{
  font-family:var(--hld-texto);font-size:12px;letter-spacing:.13em;text-transform:uppercase;
  font-weight:700;color:var(--hld-tinta-sv);padding:15px 18px;
  border-bottom:1px solid var(--hld-linea);background:var(--hld-papel-2);margin:0
}
.hld-panel .hld-cuerpo{padding:16px 18px}
.hld-panel dl{margin:0;font-size:14.5px}
.hld-panel dt{
  font-size:11px;letter-spacing:.09em;text-transform:uppercase;
  color:var(--hld-tinta-sv);margin-bottom:3px
}
.hld-panel dd{margin:0 0 13px;font-family:var(--hld-display);font-size:16px}
.hld-panel dd:last-child{margin-bottom:0}
.hld-refs{list-style:none;margin:0;padding:0}
.hld-refs li{padding:8px 0;border-bottom:1px solid var(--hld-linea);font-size:14.5px}
.hld-refs li:last-child{border-bottom:0}
.hld-refs a{text-decoration:none;color:var(--hld-azul)}
.hld-refs a:hover{color:var(--hld-viriditas)}
.hld-vacio{color:var(--hld-tinta-sv);font-size:14.5px;margin:0}

/* Términos y tooltip */
.hld-term{
  color:var(--hld-viriditas);font-weight:500;text-decoration:none;
  border-bottom:1.5px dotted var(--hld-vivo);cursor:help
}
.hld-term:hover,.hld-term:focus-visible{background:rgba(4,196,84,.12)}
#hld-tip{
  position:fixed;z-index:9999;max-width:330px;background:var(--hld-verde);
  color:#EFECE3;padding:15px 17px;font-size:14.5px;line-height:1.55;border-radius:var(--hld-radio);
  border-top:2px solid var(--hld-oro);box-shadow:0 16px 40px -12px rgba(0,0,0,.5);
  opacity:0;visibility:hidden;transition:opacity .14s;pointer-events:none
}
#hld-tip.is-visible{opacity:1;visibility:visible}
#hld-tip strong{
  display:block;font-family:var(--hld-display);font-size:17px;
  color:var(--hld-oro);margin-bottom:5px
}
#hld-tip em{
  display:block;margin-top:10px;font-style:normal;font-size:12px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--hld-viriditas-cl);font-weight:700
}

/* Advertencia */
.hld-advert{background:#FDF6E9;border-top:3px solid var(--hld-bermellon);padding:32px 0}
.hld-advert .hld-wrap{display:flex;gap:18px;align-items:flex-start;max-width:860px}
.hld-advert h4{font-size:16px;color:var(--hld-bermellon);margin-bottom:7px}
.hld-advert p{margin:0;font-size:14.5px;color:#5A4A38;line-height:1.65}

/* ==========================================================================
   Archivos con buscador
   ========================================================================== */

.hld-archivo-head{background:var(--hld-verde);color:#EDEAE1;padding:56px 0 48px}
.hld-archivo-head h1{font-size:clamp(2rem,4.4vw,3rem);color:#fff;margin-bottom:14px}
.hld-archivo-head p{max-width:56ch;color:#B4BDB6;margin:0;font-size:17.5px}

.hld-buscador{
  background:var(--hld-papel);border:1px solid var(--hld-linea);
  box-shadow:0 24px 60px -34px rgba(27,53,39,.6);
  max-width:1060px;margin:-40px auto 0;position:relative;z-index:5
}
.hld-bsc-tabs{display:flex;border-bottom:1px solid var(--hld-linea)}
.hld-bsc-tab{
  flex:1;background:var(--hld-papel-2);border:0;cursor:pointer;
  font-family:var(--hld-texto);font-size:13.5px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--hld-tinta-sv);padding:17px 12px;
  border-bottom:3px solid transparent;transition:.18s
}
.hld-bsc-tab[aria-selected="true"]{
  background:var(--hld-papel);color:var(--hld-verde);
  border-bottom-color:var(--hld-vivo)
}
.hld-bsc-body{padding:28px}
.hld-bsc-hint{margin:0 0 16px;font-size:14.5px;color:var(--hld-tinta-sv)}
.hld-campo{position:relative}
.hld-campo input{
  width:100%;font-family:var(--hld-texto);font-size:18px;padding:14px 14px 14px 48px;
  border:1px solid var(--hld-linea);background:#fff;border-radius:var(--hld-radio);color:var(--hld-tinta)
}
.hld-campo input:focus{outline:2px solid var(--hld-viriditas);outline-offset:1px;border-color:transparent}
.hld-campo svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);opacity:.45}

.hld-letras{display:flex;flex-wrap:wrap;gap:4px;margin:18px 0 0}
.hld-letras button{
  width:32px;height:32px;padding:0;flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--hld-linea);background:#fff;cursor:pointer;
  font-family:var(--hld-texto);font-size:13px;font-weight:700;
  color:var(--hld-tinta-sv);border-radius:var(--hld-radio);transition:color .15s,background-color .15s,border-color .15s,opacity .15s,transform .15s;line-height:1
}
.hld-letras button:hover:not(:disabled){
  background:var(--hld-viriditas);color:#fff;border-color:var(--hld-viriditas)
}
.hld-letras button:disabled{opacity:.3;cursor:default}
.hld-letras button.is-on{background:var(--hld-verde);color:#fff;border-color:var(--hld-verde)}

.hld-filtros{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.hld-filtros button{
  display:inline-flex;align-items:center;justify-content:center;
  height:32px;padding:0 15px;border:1px solid var(--hld-linea);background:#fff;
  cursor:pointer;border-radius:var(--hld-pildora);font-family:var(--hld-texto);font-size:13px;
  color:var(--hld-tinta-sv);line-height:1;transition:.15s
}
.hld-filtros button:hover{border-color:var(--hld-viriditas);color:var(--hld-viriditas)}
.hld-filtros button.is-on{background:var(--hld-azul);color:#fff;border-color:var(--hld-azul)}

.hld-resultados{margin-top:24px;border-top:1px solid var(--hld-linea)}
.hld-fila{
  display:grid;grid-template-columns:minmax(200px,260px) 1fr;gap:28px;
  padding:20px 0;border-bottom:1px solid var(--hld-linea);align-items:start
}
.hld-fila > *{min-width:0}
.hld-enlaza{display:flex;flex-direction:column;align-items:flex-start}
.hld-fila h3{font-size:19px;margin:0}
.hld-fila h3 a{
  text-decoration:none;color:var(--hld-verde);border-bottom:1px solid var(--hld-linea)
}
.hld-fila h3 a:hover{border-bottom-color:var(--hld-viriditas);color:var(--hld-viriditas)}
.hld-fila p{margin:6px 0 0;font-size:15px;color:var(--hld-tinta-sv)}
.hld-enlaza b{
  display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--hld-oro);margin-bottom:7px
}
.hld-chips{display:flex;flex-wrap:wrap;gap:6px}
.hld-chip{
  display:inline-flex;align-items:center;min-height:28px;
  border:1px solid var(--hld-linea);background:#fff;padding:3px 12px;
  border-radius:var(--hld-pildora);font-size:13px;line-height:1.3;
  text-decoration:none;color:var(--hld-azul);transition:.15s
}
.hld-chip:hover{background:var(--hld-viriditas);color:#fff;border-color:var(--hld-viriditas)}
.hld-nada{padding:34px 0;color:var(--hld-tinta-sv);font-size:15px}
.hld-contador{font-size:13.5px;color:var(--hld-tinta-sv);padding:14px 0 0}

/* Índice A-Z */
.hld-indice-letras{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 2.5rem}
.hld-indice-letras a{
  width:34px;height:34px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--hld-linea);border-radius:var(--hld-radio);text-decoration:none;
  font-weight:700;font-size:14px;color:inherit
}
.hld-indice-letras a:hover{
  background:var(--hld-viriditas);border-color:var(--hld-viriditas);color:#fff
}
.hld-grupo{margin-bottom:2.5rem}
.hld-grupo h2{
  font-size:1.5rem;padding-bottom:.4rem;
  border-bottom:2px solid var(--hld-oro);margin-bottom:1rem
}
.hld-grupo ul{list-style:none;padding:0;margin:0}
.hld-grupo li{padding:.65rem 0;border-bottom:1px solid var(--hld-linea)}
.hld-grupo li a{font-weight:500;text-decoration:none}
.hld-grupo li span{display:block;font-size:.9rem;opacity:.72;margin-top:.2rem}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media(max-width:900px){
  .hld-cols{grid-template-columns:1fr;gap:32px;padding-top:34px}
  .hld-aside{position:static}
  .hld-fila{grid-template-columns:1fr;gap:10px}
  .hld-cita{padding:24px 22px}
  .hld-cita blockquote{font-size:17.5px}
  .hld-buscador{margin-top:-24px}
  .hld-bsc-body{padding:20px 16px}
  .hld-bsc-tab{font-size:12px;padding:14px 8px}
}

@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
}

/* Astra estiliza todos los <button> del contenido: aquí no interesa. */
.hld-buscador button,
.hld-letras button,
.hld-filtros button{
  box-shadow:none;text-transform:none;letter-spacing:normal;margin:0
}
.hld-buscador button:focus-visible{outline:2px solid var(--hld-viriditas);outline-offset:2px}

/* ==========================================================================
   Cabecera
   ========================================================================== */

.hld-saltar{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--hld-oro);color:var(--hld-verde);padding:12px 20px;
  font-family:var(--hld-texto);font-weight:700;text-decoration:none
}
.hld-saltar:focus{left:8px;top:8px}

.hld-cabecera{
  position:sticky;top:0;z-index:60;
  background:var(--hld-cab-bg);
  font-family:var(--hld-texto);
  will-change:auto;
  transition:background .2s
}
.hld-cabecera-in{
  max-width:1180px;margin:0 auto;padding:0 24px;
  display:flex;align-items:center;gap:32px;
  height:88px;transition:height .22s ease
}
.hld-cabecera.is-compacta .hld-cabecera-in{height:58px}

/* El filete inferior: se hace más denso al compactarse, como el canto
   de un rollo de pergamino. */
.hld-filete{
  position:relative;z-index:1;
  display:block;height:3px;
  background:linear-gradient(90deg,
    rgba(4,196,84,.1) 0%, rgba(200,155,46,.6) 22%,
    rgba(4,196,84,.9) 50%, rgba(200,155,46,.6) 78%,
    rgba(4,196,84,.1) 100%);
  transition:height .22s ease,opacity .22s ease;opacity:.55
}
.hld-cabecera.is-compacta .hld-filete{height:5px;opacity:1}

/* Marca */
.hld-marca{display:flex;align-items:center;gap:13px;text-decoration:none;white-space:nowrap}
.hld-marca-icono{display:block;width:46px;height:46px;flex:0 0 auto;transition:width .22s ease,height .22s ease}
.hld-marca-icono svg{width:100%;height:100%;display:block}
.hld-cabecera.is-compacta .hld-marca-icono{width:34px;height:34px}
.hld-marca-texto{display:flex;flex-direction:column;line-height:1.1}
.hld-marca-texto strong{
  font-family:var(--hld-display);font-size:21px;font-weight:600;
  color:#F3F1E9;letter-spacing:.01em;transition:font-size .22s ease
}
.hld-cabecera.is-compacta .hld-marca-texto strong{font-size:18px}
.hld-marca-texto em{
  font-style:normal;font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--hld-oro);margin-top:3px;transition:opacity .22s ease,max-height .22s ease;
  overflow:hidden;max-height:16px
}
.hld-cabecera.is-compacta .hld-marca-texto em{opacity:0;max-height:0;margin-top:0}

/* Menú */
.hld-nav{margin-left:auto;position:relative;z-index:4}
.hld-menu{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}
.hld-menu li{position:relative}
.hld-menu a{
  display:block;text-decoration:none;font-size:14.5px;font-weight:500;
  color:#CFCBBF;padding:7px 0;border-bottom:2px solid transparent;transition:.18s
}
.hld-menu a:hover,.hld-menu a:focus-visible{color:#fff;border-bottom-color:var(--hld-oro)}
.hld-menu .current-menu-item > a,
.hld-menu .current_page_item > a{color:#fff;border-bottom-color:var(--hld-viriditas-cl)}

/* Submenú: se desenrolla desde arriba, como un pergamino. */
.hld-menu li.menu-item-has-children > a::after{
  content:"";display:inline-block;margin-left:7px;
  width:7px;height:7px;border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);transition:transform .2s
}
.hld-menu li.menu-item-has-children:hover > a::after,
.hld-menu li.menu-item-has-children:focus-within > a::after{
  transform:translateY(1px) rotate(-135deg)
}

.hld-menu .sub-menu{
  position:absolute;z-index:80;
  top:calc(100% + 14px);left:-18px;min-width:238px;
  background:var(--hld-papel);
  border:1px solid var(--hld-linea);
  border-top:2px solid var(--hld-oro);
  list-style:none;margin:0;padding:8px 0;
  box-shadow:0 18px 40px -18px rgba(27,53,39,.45);
  opacity:0;visibility:hidden;
  transform-origin:top center;transform:scaleY(.6);
  transition:opacity .18s ease,transform .22s cubic-bezier(.22,1.2,.4,1),visibility .18s
}
.hld-menu li:hover > .sub-menu,
.hld-menu li:focus-within > .sub-menu{opacity:1;visibility:visible;transform:scaleY(1)}

/* Puente entre la cabecera y el panel: sin él, el ratón pierde el hover
   al bajar y el submenú se cierra. */
.hld-menu .sub-menu::before{
  content:"";position:absolute;top:-17px;left:0;right:0;height:17px
}

/* El canto del rollo, solo abajo: arriba ya está el filete dorado del borde. */
.hld-menu .sub-menu::after{
  content:"";position:absolute;left:16px;right:16px;bottom:4px;height:1px;
  background:linear-gradient(90deg,
    transparent,rgba(196,160,85,.45) 22%,rgba(196,160,85,.45) 78%,transparent)
}

.hld-menu .sub-menu li{margin:0}
.hld-menu .sub-menu a{
  display:block;padding:11px 22px;border-bottom:0;
  font-size:14.5px;color:var(--hld-tinta);font-weight:400;
  transition:background .15s,color .15s,padding-left .18s
}
.hld-menu .sub-menu a:hover,
.hld-menu .sub-menu a:focus-visible{
  background:var(--hld-papel-2);color:var(--hld-viriditas);
  padding-left:27px;border-bottom:0
}
.hld-menu .sub-menu .current-menu-item > a{
  color:var(--hld-viriditas);font-weight:500;border-bottom:0
}

/* Botón de menú en móvil */
.hld-burger{
  display:none;margin-left:auto;background:none;border:0;cursor:pointer;
  padding:10px;line-height:0
}
.hld-burger-lineas{display:block;width:24px}
.hld-burger-lineas i{
  display:block;height:2px;background:#EDEAE1;margin:5px 0;
  transition:transform .2s ease,opacity .2s ease
}
.hld-burger[aria-expanded="true"] i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hld-burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.hld-burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:900px){
  .hld-burger{display:block}
  .hld-nav{
    display:none;position:absolute;top:100%;left:0;right:0;
    background:var(--hld-verde);border-bottom:1px solid rgba(196,160,85,.3);
    padding:10px 24px 22px;margin:0
  }
  .hld-nav.is-abierto{display:block}
  .hld-menu{flex-direction:column;align-items:stretch;gap:0}
  .hld-menu a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}
  .hld-menu li.menu-item-has-children > a::after{float:right;margin-top:6px}
  .hld-menu .sub-menu{
    position:static;opacity:1;visibility:visible;transform:none;
    border:0;border-left:2px solid rgba(196,160,85,.35);
    background:none;padding:0 0 0 14px;margin:0 0 6px 4px;
    box-shadow:none
  }
  .hld-menu .sub-menu::before,
  .hld-menu .sub-menu::after{display:none}
  .hld-menu .sub-menu a{
    color:#B9B5A9;padding:11px 0;
    border-bottom:1px solid rgba(255,255,255,.06)
  }
  .hld-menu .sub-menu a:hover{background:none;color:#fff;padding-left:0}
  .hld-menu .sub-menu li:last-child a{border-bottom:0}
  .hld-cabecera-in{height:70px}
  .hld-cabecera.is-compacta .hld-cabecera-in{height:56px}
}

/* ==========================================================================
   Pie
   ========================================================================== */

.hld-pie{background:var(--hld-colab-bg);color:#8B958C;font-family:var(--hld-texto);font-size:14.5px}
.hld-pie-in{
  max-width:1180px;margin:0 auto;padding:52px 24px 34px;
  display:flex;gap:48px;justify-content:space-between;flex-wrap:wrap
}
.hld-pie-marca{display:flex;gap:16px;align-items:flex-start;max-width:44ch}
.hld-pie-icono{display:block;width:44px;height:44px;flex:0 0 auto}
.hld-pie-icono svg{width:100%;height:100%;display:block}
.hld-pie-marca p{margin:0;line-height:1.6}
.hld-pie-marca strong{
  display:block;font-family:var(--hld-display);font-size:18px;
  color:#F3F1E9;font-weight:600;margin-bottom:5px
}
.hld-pie-menu{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(2,auto);gap:9px 40px
}
.hld-pie-menu a{color:#A5A196;text-decoration:none}
.hld-pie-menu a:hover{color:var(--hld-oro)}
.hld-pie-bajo{
  border-top:1px solid rgba(255,255,255,.11);
  max-width:1180px;margin:0 auto;padding:20px 24px 34px;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  font-size:13px;color:#6E7A70
}

@media(max-width:640px){
  .hld-pie-in{flex-direction:column;gap:32px}
  .hld-pie-menu{grid-template-columns:1fr}
}

/* ==========================================================================
   Bloques para Elementor (shortcodes)
   ========================================================================== */

.hld-buscador--suelto{margin:0 auto;box-shadow:0 -12px 34px -26px rgba(27,53,39,.45)}
/* Bloque que se pega al buscador sin duplicar el filete. */
.hld-banda--pegada{margin-top:-1px}
.hld-buscador--suelto .hld-bsc-body{padding:26px 28px 30px}

.hld-areas{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:1px;background:var(--hld-linea);border:1px solid var(--hld-linea)
}
.hld-area{
  background:var(--hld-papel);padding:30px 26px;text-decoration:none;
  display:block;transition:background .18s
}
.hld-area:hover{background:#fff}
.hld-area-num{
  font-family:var(--hld-display);font-size:13px;color:var(--hld-azul);
  font-weight:700;letter-spacing:.1em
}
.hld-area h3{font-size:21px;margin:9px 0 8px;color:var(--hld-tinta)}
.hld-area p{margin:0;font-size:15px;color:var(--hld-tinta-sv);line-height:1.55}
.hld-area-mas{
  display:inline-block;margin-top:15px;color:var(--hld-viriditas);
  font-size:14px;font-weight:700
}

.hld-muestra{
  background:var(--hld-papel);border:1px solid var(--hld-linea);
  padding:36px 40px;max-width:74ch;margin:0 auto;
  font-size:17.5px;line-height:1.8
}
.hld-banda > .hld-muestra{margin-left:auto;margin-right:auto}
.hld-muestra h3{font-size:24px;margin-bottom:15px}
.hld-muestra p{margin:0 0 14px}
.hld-muestra-nota{
  margin-top:24px!important;padding-top:19px;border-top:1px solid var(--hld-linea);
  font-size:14px;color:var(--hld-tinta-sv)
}

/* Banda: mismo ancho útil que el buscador, para que todo alinee. */
.hld-banda{max-width:1072px;margin:0 auto;padding:0 24px 78px}
.hld-banda--pegada{padding-bottom:0}

/* Encabezado de sección, común a todos los bloques */
.hld-sec-head{max-width:60ch;margin:0 0 38px;padding-top:78px}
/* Sin encabezado no hace falta ese aire: el bloque va pegado a lo anterior. */
.hld-banda--pegada{padding-top:0}
.hld-sec-head h2{
  font-family:var(--hld-display);font-weight:600;
  font-size:clamp(1.8rem,3.4vw,2.5rem);letter-spacing:-.015em;
  line-height:1.15;margin:0;color:var(--hld-tinta)
}
.hld-sec-lead{
  color:var(--hld-tinta-sv);font-size:17.5px;margin:13px 0 0;line-height:1.62
}
.hld-sec-head--claro h2{color:#fff}
.hld-sec-head--claro .hld-sec-lead{color:#B4BDB6}

.hld-cifras{
  display:flex;flex-wrap:wrap;gap:1px;background:var(--hld-linea);
  border:1px solid var(--hld-linea)
}
.hld-cifra{
  flex:1 1 140px;background:var(--hld-papel);padding:26px 20px;text-align:center;
  text-decoration:none;transition:background .18s
}
.hld-cifra:hover{background:#fff}
.hld-cifra strong{
  display:block;font-family:var(--hld-display);font-size:38px;
  color:var(--hld-verde);line-height:1;font-weight:600
}
.hld-cifra span{
  display:block;margin-top:7px;font-size:12px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--hld-tinta-sv);font-weight:700
}

@media(max-width:640px){
  .hld-muestra{padding:26px 22px}
}

/* ==========================================================================
   Hero con la rueda cósmica
   ========================================================================== */

.hld-hero{
  position:relative;overflow:hidden;
  background:var(--hld-verde);color:#F0EDE4;
  padding:78px 0 104px
}
.hld-hero-in{
  position:relative;z-index:2;
  max-width:1120px;margin:0 auto;padding:0 24px
}
.hld-hero h1{
  font-family:var(--hld-display);font-weight:600;
  font-size:clamp(2.3rem,5vw,3.6rem);line-height:1.1;letter-spacing:-.02em;
  max-width:17ch;margin:0 0 20px;color:#F0EDE4
}
.hld-hero h1 em{font-style:italic;color:var(--hld-oro)}
.hld-hero-lead{
  font-size:19px;max-width:54ch;color:#B4BDB6;margin:0;font-weight:300;line-height:1.62
}
.hld-hero-cita{
  border:0;border-left:2px solid var(--hld-oro);
  padding:0 0 0 22px;margin:38px 0 0;max-width:46ch;
  font-family:var(--hld-display);font-style:italic;font-size:19px;color:#DAD5C7
}
.hld-hero-cita span{
  display:block;font-family:var(--hld-texto);font-style:normal;font-size:11.5px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--hld-oro);
  margin-top:12px;font-weight:700
}

/* El cielo: constelaciones fijas que parpadean y anillos que giran
   en sentidos y velocidades distintas. */
.hld-cielo{
  position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden
}
.hld-constelacion{
  position:absolute;inset:0;width:100%;height:100%;opacity:1
}
.hld-lineas path{
  fill:none;stroke:#04C454;stroke-width:.7;opacity:.3;
  stroke-linecap:round;stroke-linejoin:round
}
.hld-estrellas circle{fill:#6FE3A0;opacity:.55;animation:hld-titilar 5s ease-in-out infinite}
.hld-estrellas circle:nth-child(3n){animation-duration:7.5s;animation-delay:-2.4s}
.hld-estrellas circle:nth-child(3n+1){animation-duration:6.2s;animation-delay:-4.1s}
.hld-estrellas circle:nth-child(4n){animation-duration:9s;animation-delay:-1.2s}
.hld-estrellas circle:nth-child(5n){animation-duration:4.4s;animation-delay:-3.3s}
.hld-estrellas circle:nth-child(7n){animation-duration:11s;animation-delay:-6s}
.hld-estrellas circle:nth-child(8n){animation-duration:5.6s;animation-delay:-0.8s}
.hld-estrellas circle:nth-child(9n){animation-duration:13s;animation-delay:-7.4s}
.hld-estrellas circle:nth-child(11n){animation-duration:8.3s;animation-delay:-5.2s}
.hld-estrellas circle:nth-child(13n){animation-duration:6.9s;animation-delay:-9.1s}
.hld-estrellas circle:nth-child(6n+2){animation-duration:10.2s;animation-delay:-3.9s}
/* Las más grandes brillan un punto más. */
.hld-estrellas circle[r="2.4"],
.hld-estrellas circle[r="2.3"],
.hld-estrellas circle[r="2.2"]{fill:#04C454}
@keyframes hld-titilar{
  0%,100%{opacity:.3}
  50%{opacity:1}
}

.hld-rueda{
  position:absolute;right:-180px;top:50%;
  width:720px;height:720px;margin-top:-360px;
  opacity:.15;z-index:2;pointer-events:none
}
.hld-aro{transform-origin:200px 200px}
.hld-aro-1{animation:hld-girar 300s linear infinite}
.hld-aro-2{animation:hld-girar-inv 190s linear infinite}
.hld-aro-3{animation:hld-girar 130s linear infinite}
.hld-aro-4{animation:hld-girar-inv 84s linear infinite}
.hld-aro-5{animation:hld-girar 46s linear infinite}
@keyframes hld-girar{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes hld-girar-inv{from{transform:rotate(0)}to{transform:rotate(-360deg)}}

.hld-hero-buscador{
  max-width:1072px;margin:-52px auto 0;position:relative;z-index:5;padding:0 24px
}
.hld-hero-buscador .hld-buscador{margin:0}

@media(max-width:900px){
  .hld-hero{padding:56px 0 84px}
  .hld-rueda{width:520px;height:520px;right:-250px;opacity:.1}
  .hld-hero-cita{display:none}
  .hld-hero-buscador{margin-top:-38px}
}

@media(prefers-reduced-motion:reduce){
  .hld-rueda{animation:none}
}

/* ==========================================================================
   El hero pega arriba del todo
   ========================================================================== */

/* Cualquier página con nuestros bloques: sin relleno del contenedor. */
.hld-bloques .site-content,
.hld-bloques .ast-container,
.hld-bloques #primary,
.hld-bloques .entry-content,
.hld-bloques article.page,
.hld-bloques .elementor,
.hld-bloques .elementor-section-wrap > .elementor-section:first-child{
  padding-top:0!important;padding-bottom:0!important;
  margin-top:0!important;margin-bottom:0!important
}
.hld-bloques .ast-container{max-width:none;padding-left:0;padding-right:0}
.hld-bloques .entry-header,
.hld-bloques .ast-archive-description{display:none}




/* ==========================================================================
   Mostrar más en el buscador
   ========================================================================== */

.hld-mas-wrap{padding:24px 0 4px;text-align:center}
.hld-mas{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--hld-papel-2);border:1px solid var(--hld-linea);
  color:var(--hld-verde);font-family:var(--hld-texto);font-size:14.5px;font-weight:700;
  padding:12px 26px;border-radius:var(--hld-radio);cursor:pointer;transition:.18s
}
.hld-mas:hover{background:var(--hld-viriditas);color:#fff;border-color:var(--hld-viriditas)}
.hld-mas span{font-weight:400;opacity:.75;font-size:13.5px}

/* Nada desborda a lo ancho: es el fallo más visible en móvil. */
.hld-ficha{overflow-wrap:break-word;word-wrap:break-word}
.hld-ficha img{max-width:100%;height:auto}
.hld-refs li,.hld-panel dd,.hld-fila h3,.hld-fila p{overflow-wrap:anywhere}
.hld-fila,.hld-areas,.hld-cifras{max-width:100%}

/* ==========================================================================
   Tablet y móvil
   ========================================================================== */

@media(min-width:901px) and (max-width:1024px){
  .hld-wrap{padding:0 20px}
  .hld-cols{grid-template-columns:1fr 260px;gap:36px}
}

@media(max-width:900px){
  .hld-banda{padding:0 20px 62px}
  .hld-sec-head{padding-top:62px}
  .hld-cols{grid-template-columns:1fr!important;gap:34px;padding-top:34px}
  .hld-aside{position:static;top:auto;margin-top:6px}
  .hld-panel{margin-bottom:16px}
  .hld-hero-buscador{padding:0 16px}
  .hld-buscador{margin-left:0;margin-right:0}
  .hld-areas{grid-template-columns:repeat(2,1fr)}
}

@media(min-width:681px) and (max-width:900px){
  .hld-wrap{padding:0 22px}
  .hld-head{padding:40px 0 30px}
  .hld-head h1{font-size:2.3rem}
  .hld-archivo-head{padding:46px 0 44px}
  .hld-capa{margin-bottom:42px}
}

@media(max-width:680px){
  .hld-banda{padding:0 16px 52px}
  .hld-sec-head{margin-bottom:26px;padding-top:52px}
  .hld-sec-lead{font-size:16px}
  .hld-wrap{padding:0 16px}
  .hld-head{padding:30px 0 24px}
  .hld-migas{padding:11px 0}
  .hld-cita{padding:26px 18px 24px;margin-top:2px}
  .hld-head h1{font-size:1.85rem}
  .hld-latino{font-size:16px}
  .hld-tags{gap:6px}
  .hld-tag{font-size:11px;padding:4px 9px}

  .hld-cols{padding-top:30px!important;padding-bottom:48px}
  .hld-capa{margin-bottom:38px}
  .hld-capa:first-child{margin-top:4px}
  .hld-capa-num{gap:11px;align-items:flex-start;margin-bottom:14px}
  .hld-capa-num i{width:25px;height:25px;font-size:12px;margin-top:2px}
  .hld-capa-num h2{font-size:20px;line-height:1.2}
  .hld-capa-num small{font-size:12px;margin-top:3px}
  .hld-cita{padding:22px 18px}
  .hld-cita::before{font-size:52px;top:0;left:6px}
  .hld-cita blockquote{font-size:16.5px;padding-left:16px}
  .hld-cita cite{padding-left:16px;font-size:11.5px}
  .hld-moderna{padding:22px 18px}
  .hld-remite{flex-direction:column;gap:10px;padding:16px}

  .hld-panel h4{padding:13px 15px}
  .hld-panel .hld-cuerpo{padding:14px 15px}

  .hld-areas{grid-template-columns:1fr}
  .hld-area{padding:24px 20px}
  .hld-cifras{flex-wrap:wrap}
  .hld-cifra{flex:1 1 100%}

  .hld-archivo-head{padding:38px 0 40px}
  .hld-archivo-head h1{font-size:1.85rem}
  .hld-archivo-head p{font-size:16px}

  /* El buscador ocupa todo el ancho: sin margen negativo ni sombra */
  .hld-buscador{margin:0;border-left:0;border-right:0;box-shadow:none}
  .hld-bsc-body{padding:18px 16px 22px}
  .hld-bsc-tab{font-size:11px;letter-spacing:.05em;padding:13px 6px}
  .hld-campo input{font-size:16px;padding:12px 12px 12px 42px}
  .hld-campo svg{left:13px}
  .hld-letras{gap:3px}
  .hld-letras button{width:29px;height:29px;font-size:12px}
  .hld-filtros{gap:6px}
  .hld-filtros button{height:29px;padding:0 12px;font-size:12px}

  .hld-cols{grid-template-columns:1fr!important}
  .hld-fila{padding:16px 0;gap:12px}
  .hld-fila h3{font-size:17.5px}
  .hld-fila p{font-size:14.5px}
  .hld-chip{font-size:12.5px;padding:3px 10px;min-height:26px}

  .hld-hero{padding:44px 0 72px}
  .hld-hero h1{font-size:2rem}
  .hld-hero-lead{font-size:16.5px}
  .hld-hero-buscador{margin-top:-30px;padding:0}

  .hld-muestra{padding:22px 18px;font-size:16.5px}
  .hld-muestra h3{font-size:21px}

  .hld-advert{padding:26px 0}
  .hld-advert .hld-wrap{gap:12px}
  .hld-advert p{font-size:13.5px}

  .hld-indice-letras a{width:31px;height:31px;font-size:13px}
  .hld-grupo h2{font-size:1.3rem}

  .hld-pie-in{padding:38px 16px 26px}
  .hld-pie-bajo{padding:18px 16px 30px;font-size:12.5px}
}

@media(max-width:400px){
  .hld-bsc-tabs{flex-direction:column}
  .hld-bsc-tab{border-bottom:1px solid var(--hld-linea)}
  .hld-bsc-tab[aria-selected="true"]{border-bottom-width:3px}
}

@media(prefers-reduced-motion:reduce){
  .hld-aro,.hld-estrellas circle{animation:none}
}

/* ==========================================================================
   Donativos
   ========================================================================== */

.hld-colab{background:var(--hld-verde);color:#EDEAE1}
.hld-colab .hld-banda{padding-bottom:78px}

.hld-colab-dos{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}

.hld-tarjeta{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(196,160,85,.3);
  padding:32px;display:flex;flex-direction:column;height:100%
}
.hld-tarjeta h3{
  color:#fff;font-family:var(--hld-display);font-size:24px;
  font-weight:600;margin:0 0 12px
}
.hld-tarjeta-lead{color:#B4BDB6;margin:0 0 18px;font-size:16px}

.hld-lista-oro{list-style:none;padding:0;margin:0}
.hld-lista-oro li{
  padding:11px 0 11px 26px;position:relative;font-size:15.5px;color:#C6CEC7;
  border-bottom:1px solid rgba(255,255,255,.09)
}
.hld-lista-oro li:last-child{border-bottom:0}
.hld-lista-oro li::before{
  content:"";position:absolute;left:2px;top:19px;
  width:8px;height:8px;background:var(--hld-oro);transform:rotate(45deg)
}

.hld-dl{display:grid;grid-template-columns:auto 1fr;gap:10px 20px;font-size:15px;margin:0}
.hld-dl dt{
  color:#8B958C;font-size:11.5px;letter-spacing:.08em;
  text-transform:uppercase;padding-top:5px
}
.hld-dl dd{margin:0;font-family:var(--hld-display);font-size:17px;color:#fff}
.hld-dl dd.hld-iban{
  font-variant-numeric:tabular-nums;letter-spacing:.02em;
  overflow-wrap:anywhere;user-select:all
}

.hld-tarjeta-nota{
  margin:20px 0 0;padding-top:17px;
  border-top:1px solid rgba(255,255,255,.12);
  font-size:13.5px;color:#949C95;line-height:1.6
}

.hld-btn-oro{
  display:inline-block;margin-top:auto;align-self:flex-start;
  background:var(--hld-vivo);color:#06301D;
  text-decoration:none;font-family:var(--hld-texto);font-weight:700;font-size:14.5px;
  padding:12px 24px;border-radius:var(--hld-radio);transition:background .18s
}
.hld-btn-oro:hover,.hld-btn-oro:focus-visible{background:var(--hld-vivo-sv);color:#06301D}
.hld-tarjeta .hld-btn-oro{margin-top:22px}

@media(max-width:820px){
  .hld-colab-dos{grid-template-columns:1fr;gap:20px}
  .hld-tarjeta{padding:26px 22px}
  .hld-tarjeta h3{font-size:21px}
  .hld-dl{grid-template-columns:1fr;gap:3px 0}
  .hld-dl dt{padding-top:12px}
  .hld-dl dt:first-child{padding-top:0}
}

/* ==========================================================================
   Fichas bibliográficas
   ========================================================================== */

.hld-obras{
  display:grid;
  grid-template-columns:repeat(var(--hld-obras-cols,3),1fr);
  gap:1px;background:var(--hld-linea);
  border:1px solid var(--hld-linea)
}
.hld-obra{
  background:var(--hld-papel-2);padding:28px 26px;
  display:flex;flex-direction:column
}
.hld-obra h3{
  font-family:var(--hld-display);font-size:21px;font-weight:600;
  color:var(--hld-verde);margin:0 0 4px;line-height:1.2
}
.hld-obra-sub{
  font-family:var(--hld-display);font-style:italic;font-size:15px;
  color:var(--hld-tinta-sv);margin:0 0 14px
}
.hld-obra-txt{font-size:15.5px;line-height:1.62;color:var(--hld-tinta)}
.hld-obra-txt p{margin:0 0 11px}
.hld-obra-txt p:last-child{margin-bottom:0}
.hld-obra-ref{
  margin:18px 0 0;padding-top:15px;margin-top:auto;
  border-top:1px solid var(--hld-linea);
  font-size:14px;color:var(--hld-tinta-sv);line-height:1.55
}
.hld-obra-ref b{
  display:block;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--hld-oro);margin-bottom:6px;font-weight:700
}
.hld-obra-ref span,.hld-obra-ref a{font-style:italic}
.hld-obra-ref a{color:var(--hld-azul);text-decoration:none;border-bottom:1px solid var(--hld-linea)}
.hld-obra-ref a:hover{color:var(--hld-viriditas);border-bottom-color:var(--hld-viriditas)}

/* La entradilla del encabezado admite varios párrafos */
.hld-sec-lead p{margin:0 0 13px}
.hld-sec-lead p:last-child{margin-bottom:0}
.hld-sec-lead strong{color:var(--hld-tinta);font-weight:700}
.hld-sec-head--claro .hld-sec-lead strong{color:#fff}
.hld-sec-lead a{color:var(--hld-viriditas);text-decoration:none;border-bottom:1px solid var(--hld-linea)}
.hld-sec-lead a:hover{border-bottom-color:var(--hld-viriditas)}

/* Encabezados encadenados: el segundo no necesita tanto aire */
.hld-banda + .hld-ficha .hld-sec-head,
.hld-ficha + .hld-ficha .hld-sec-head{padding-top:56px}

@media(max-width:900px){
  .hld-obras{grid-template-columns:1fr}
  .hld-obra{padding:24px 20px}
}

/* ==========================================================================
   Contacto
   ========================================================================== */

.hld-contacto{display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}
.hld-contacto-form{
  background:var(--hld-papel-2);border:1px solid var(--hld-linea);padding:34px 36px
}
.hld-contacto-info{position:sticky;top:24px}
.hld-contacto-info .hld-panel:last-child{margin-bottom:0}
.hld-contacto-info .hld-refs li{color:var(--hld-tinta-sv)}
.hld-contacto-info a{color:var(--hld-viriditas);text-decoration:none;border-bottom:1px solid var(--hld-linea)}
.hld-contacto-info a:hover{border-bottom-color:var(--hld-viriditas)}

/* WPForms dentro del bloque: que herede la tipografía y los colores */
.hld-contacto-form .wpforms-container{margin:0}
.hld-contacto-form .wpforms-field-label{
  font-family:var(--hld-texto)!important;font-size:12.5px!important;
  letter-spacing:.08em;text-transform:uppercase;color:var(--hld-tinta-sv)!important;
  font-weight:700!important;margin-bottom:7px!important
}
.hld-contacto-form input[type=text],
.hld-contacto-form input[type=email],
.hld-contacto-form input[type=tel],
.hld-contacto-form select,
.hld-contacto-form textarea{
  font-family:var(--hld-texto)!important;font-size:16px!important;
  padding:12px 14px!important;border:1px solid var(--hld-linea)!important;
  background:#fff!important;border-radius:var(--hld-radio)!important;color:var(--hld-tinta)!important;
  max-width:100%!important
}
.hld-contacto-form input:focus,
.hld-contacto-form select:focus,
.hld-contacto-form textarea:focus{
  outline:2px solid var(--hld-viriditas)!important;outline-offset:1px;border-color:transparent!important
}
.hld-contacto-form textarea{min-height:140px!important}
.hld-contacto-form button[type=submit],
.hld-contacto-form .wpforms-submit{
  background:var(--hld-viriditas)!important;color:#fff!important;
  font-family:var(--hld-texto)!important;font-weight:700!important;font-size:14.5px!important;
  padding:13px 28px!important;border:0!important;border-radius:var(--hld-radio)!important;
  text-transform:none!important;letter-spacing:normal!important
}
.hld-contacto-form button[type=submit]:hover,
.hld-contacto-form .wpforms-submit:hover{background:var(--hld-verde-2)!important}
.hld-contacto-form .wpforms-field-description{
  font-size:13.5px!important;color:var(--hld-tinta-sv)!important
}

@media(max-width:900px){
  .hld-contacto{grid-template-columns:1fr;gap:30px}
  .hld-contacto-info{position:static}
}
@media(max-width:680px){
  .hld-contacto-form{padding:24px 20px}
}

/* --- Correcciones sobre el marcado de WPForms --- */

/* El select traía alto fijo y el texto quedaba cortado. */
.hld-contacto-form select,
.hld-contacto-form .wpforms-field-select select{
  height:auto!important;min-height:0!important;line-height:1.4!important;
  padding:13px 40px 13px 14px!important;
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2357605A' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 15px center!important;
  background-size:12px 8px!important
}

/* Las casillas heredaban la viñeta de lista del tema. */
.hld-contacto-form ul.wpforms-field-required,
.hld-contacto-form .wpforms-field-checkbox ul,
.hld-contacto-form .wpforms-field-radio ul,
.hld-contacto-form .wpforms-field ul{
  list-style:none!important;margin:0!important;padding:0!important
}
.hld-contacto-form .wpforms-field ul li{
  list-style:none!important;margin:0 0 8px!important;padding:0!important;
  display:flex;align-items:flex-start;gap:10px
}
.hld-contacto-form .wpforms-field ul li::marker{content:none}
.hld-contacto-form .wpforms-field ul li:last-child{margin-bottom:0!important}
.hld-contacto-form .wpforms-field-checkbox input[type=checkbox],
.hld-contacto-form .wpforms-field-radio input[type=radio]{
  margin:3px 0 0!important;flex:0 0 auto;width:17px;height:17px;
  accent-color:var(--hld-viriditas)
}
.hld-contacto-form .wpforms-field ul li label{
  font-size:15px!important;line-height:1.5!important;
  color:var(--hld-tinta)!important;font-weight:400!important;
  text-transform:none!important;letter-spacing:normal!important;margin:0!important
}
.hld-contacto-form .wpforms-field ul li label a{
  color:var(--hld-viriditas);border-bottom:1px solid var(--hld-linea);text-decoration:none
}
.hld-contacto-form .wpforms-field ul li label a:hover{border-bottom-color:var(--hld-viriditas)}

/* Nombre y apellidos: los subtítulos quedaban en verde y desentonaban. */
.hld-contacto-form .wpforms-field-sublabel{
  color:var(--hld-tinta-sv)!important;font-size:12.5px!important;
  font-weight:400!important;text-transform:none!important;letter-spacing:normal!important
}

/* El asterisco de campo obligatorio */
.hld-contacto-form .wpforms-required-label{color:var(--hld-bermellon)!important}


/* ==========================================================================
   Estilos visuales conmutables
   ========================================================================== */

/* Hondo — el de partida: verde oscuro en cabecera, hero, citas y pie. */
.hld-estilo-hondo{
  --hld-hero-bg:#0A3D27;
  --hld-hero-tx:#F0EDE4;
  --hld-hero-tx-sv:#B4BDB6;
  --hld-hero-ac:#E8C063;
  --hld-cab-bg:#0A3D27;
  --hld-cab-tx:#CFCBBF;
  --hld-cab-hover:#fff;
  --hld-cita-bg:#0A3D27;
  --hld-cita-tx:#F2EFE6;
  --hld-cielo:#04C454;
  --hld-cielo-op:.5;
  --hld-rueda-color:#04C454;
  --hld-rueda-op:.15;
  --hld-colab-bg:#0A3D27;
  --hld-colab-tx:#EDEAE1;
  --hld-bloque-bg:#F2F7F3;
}

/* Vivo — verde brillante en cabecera y hero. El texto va en verde casi
   negro: el blanco sobre #04C454 solo da 2,3:1 y no se lee. */
.hld-estilo-vivo{
  --hld-hero-bg:#04C454;
  --hld-hero-tx:#06301D;
  --hld-hero-tx-sv:#0A3D27;
  --hld-hero-ac:#06301D;
  --hld-cab-bg:#04C454;
  --hld-cab-tx:#0A3D27;
  --hld-cab-hover:#06301D;
  --hld-cab-filete:linear-gradient(90deg,rgba(6,48,29,.08),rgba(6,48,29,.4) 25%,rgba(6,48,29,.6) 50%,rgba(6,48,29,.4) 75%,rgba(6,48,29,.08));
  --hld-cita-bg:#06301D;
  --hld-cita-tx:#F2EFE6;
  --hld-cielo:#06301D;
  --hld-cielo-op:.9;
  --hld-rueda-color:#06301D;
  --hld-rueda-op:.3;
  --hld-colab-bg:#06301D;
  --hld-colab-tx:#EDEAE1;
  --hld-bloque-bg:#E8F6EC;
}
.hld-estilo-vivo .hld-hero .hld-eyebrow{color:#06301D;opacity:.7}
.hld-estilo-vivo .hld-hero h1 em{color:#06301D;font-style:italic;opacity:.82}
.hld-estilo-vivo .hld-hero-cita{border-left-color:#06301D}
.hld-estilo-vivo .hld-hero-cita span{color:#06301D;opacity:.72}
.hld-estilo-vivo .hld-buscador{box-shadow:0 -14px 36px -26px rgba(6,48,29,.5)}
.hld-estilo-vivo .hld-marca-texto strong{color:#06301D}
.hld-estilo-vivo .hld-marca-texto em{color:#0A3D27;opacity:.8}
.hld-estilo-vivo .hld-burger-lineas i{background:#06301D}
.hld-estilo-vivo .hld-menu a:hover{border-bottom-color:#06301D}
.hld-estilo-vivo .hld-menu .current-menu-item > a{border-bottom-color:#06301D}
.hld-estilo-vivo .hld-selector button{border-color:rgba(6,48,29,.3)}
.hld-estilo-vivo .hld-archivo-head{background:#04C454;color:#06301D}
.hld-estilo-vivo .hld-archivo-head h1{color:#06301D}
.hld-estilo-vivo .hld-archivo-head p{color:#0A3D27}
.hld-estilo-vivo .hld-archivo-head .hld-eyebrow{color:#06301D;opacity:.7}

/* Claro — fondo blanco verdoso, verde vivo solo en los acentos. */
.hld-estilo-claro{
  --hld-hero-bg:#F2F7F3;
  --hld-hero-tx:#0A3D27;
  --hld-hero-tx-sv:#55635A;
  --hld-hero-ac:#00874A;
  --hld-cab-bg:#FFFFFF;
  --hld-cab-tx:#55635A;
  --hld-cab-hover:#0A3D27;
  --hld-cab-filete:linear-gradient(90deg,rgba(4,196,84,.15),#04C454 30%,#04C454 70%,rgba(4,196,84,.15));
  --hld-cita-bg:#0A3D27;
  --hld-cita-tx:#F2EFE6;
  --hld-cielo:#00874A;
  --hld-cielo-op:.42;
  --hld-rueda-color:#00874A;
  --hld-rueda-op:.11;
  --hld-colab-bg:#0A3D27;
  --hld-colab-tx:#EDEAE1;
  --hld-bloque-bg:#F2F7F3;
}
.hld-estilo-claro .hld-hero{border-bottom:3px solid var(--hld-vivo)}
.hld-estilo-claro .hld-hero .hld-eyebrow{color:#00874A}
.hld-estilo-claro .hld-hero h1 em{color:#00874A}
.hld-estilo-claro .hld-hero-cita{border-left-color:var(--hld-vivo)}
.hld-estilo-claro .hld-hero-cita span{color:#00874A}
.hld-estilo-claro .hld-marca-texto strong{color:#0A3D27}
.hld-estilo-claro .hld-marca-texto em{color:#00874A}
.hld-estilo-claro .hld-burger-lineas i{background:#0A3D27}
.hld-estilo-claro .hld-cabecera{border-bottom:1px solid var(--hld-linea)}
.hld-estilo-claro .hld-selector button{border-color:rgba(10,61,39,.25)}
.hld-estilo-claro .hld-archivo-head{background:#F2F7F3;color:#0A3D27;border-bottom:3px solid var(--hld-vivo)}
.hld-estilo-claro .hld-archivo-head h1{color:#0A3D27}
.hld-estilo-claro .hld-archivo-head p{color:#55635A}
.hld-estilo-claro .hld-archivo-head .hld-eyebrow{color:#00874A}


/* Las piezas leen las variables, no colores fijos */
.hld-hero{background:var(--hld-hero-bg);color:var(--hld-hero-tx)}
.hld-hero h1{color:var(--hld-hero-tx)}
.hld-hero h1 em{color:var(--hld-hero-ac)}
.hld-hero-lead{color:var(--hld-hero-tx-sv)}
.hld-hero-cita{color:var(--hld-hero-tx-sv)}

.hld-cabecera{background:var(--hld-cab-bg)}
.hld-menu a{color:var(--hld-cab-tx)}
.hld-menu a:hover,.hld-menu a:focus-visible{color:var(--hld-cab-hover)}
.hld-filete{background:var(--hld-cab-filete)}

.hld-cita{background:var(--hld-cita-bg)!important;color:var(--hld-cita-tx)}
.hld-colab{background:var(--hld-colab-bg);color:var(--hld-colab-tx)}
.hld-estrellas circle{fill:var(--hld-cielo)}
.hld-lineas path{stroke:var(--hld-cielo)}
.hld-constelacion{opacity:var(--hld-cielo-op)}
.hld-rueda{opacity:var(--hld-rueda-op)}
.hld-rueda circle,.hld-rueda path{stroke:var(--hld-rueda-color)!important}
.hld-rueda g[fill] circle{fill:var(--hld-rueda-color)!important}

/* ==========================================================================
   Selector de estilo
   ========================================================================== */

.hld-selector{display:flex;gap:6px;align-items:center;margin-left:18px}
.hld-selector button{
  width:20px;height:20px;padding:0;border-radius:50%;cursor:pointer;
  border:1.5px solid rgba(255,255,255,.35);transition:.16s
}
.hld-selector button:hover{transform:scale(1.15);border-color:rgba(255,255,255,.7)}
.hld-selector button[data-estilo="hondo"]{background:#0A3D27;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.hld-selector button[data-estilo="vivo"]{background:#04C454}
.hld-selector button[data-estilo="claro"]{background:#F2F7F3}
.hld-selector button[aria-pressed="true"]{
  border-color:var(--hld-vivo);box-shadow:0 0 0 2px rgba(4,196,84,.35)
}
@media(max-width:900px){
  .hld-selector{margin:0 12px 0 auto;order:-1}
}

/* ==========================================================================
   Ilustraciones de ficha
   ========================================================================== */

.hld-ilu{display:block;width:100%;height:auto;max-height:200px}
.hld-ilu path,.hld-ilu circle,.hld-ilu ellipse{
  fill:none;stroke:var(--hld-viriditas);stroke-width:2.4;
  stroke-linecap:round;stroke-linejoin:round
}
.hld-ilu .f{fill:var(--hld-vivo);fill-opacity:.18;stroke:var(--hld-viriditas)}
.hld-ilu .f2{fill:var(--hld-vivo);fill-opacity:.34;stroke:var(--hld-viriditas)}
.hld-ilu .s{fill:var(--hld-vivo);stroke:none}

.hld-portada{
  background:var(--hld-papel-2);border:1px solid var(--hld-linea);
  padding:22px;display:flex;align-items:center;justify-content:center;
  min-height:180px;overflow:hidden
}
.hld-portada-img{display:block;width:100%;height:auto;object-fit:cover}
.hld-portada:has(.hld-portada-img){padding:0}

/* Miniatura del listado. La rejilla pasa a tres columnas solo cuando la
   fila la lleva de verdad: si no, la primera columna queda vacía y el
   texto se estruja. */
.hld-fila-ilu{
  background:var(--hld-bloque-bg);
  border:1px solid var(--hld-linea);border-radius:var(--hld-radio);
  display:flex;align-items:center;justify-content:center;padding:8px;
  align-self:start
}
.hld-fila-ilu .hld-ilu{max-height:52px}
.hld-fila:has(.hld-fila-ilu){grid-template-columns:72px minmax(170px,230px) 1fr}

@media(max-width:900px){
  .hld-fila:has(.hld-fila-ilu){grid-template-columns:56px 1fr}
  .hld-fila:has(.hld-fila-ilu) .hld-fila-ilu .hld-ilu{max-height:40px}
  .hld-fila:has(.hld-fila-ilu) > div:last-child{grid-column:1/-1}
}

/* El nav móvil hereda el fondo de la cabecera */
@media(max-width:900px){
  .hld-nav{background:var(--hld-cab-bg)}
  .hld-estilo-vivo .hld-menu a{border-bottom-color:rgba(6,48,29,.12)}
  .hld-estilo-claro .hld-menu a{border-bottom-color:var(--hld-linea)}
  .hld-estilo-claro .hld-nav{border-bottom:1px solid var(--hld-linea)}
}

/* Bloques con fondo de sección */
.hld-muestra{background:var(--hld-papel)}
.hld-moderna{background:var(--hld-bloque-bg)}
.hld-obra{background:var(--hld-bloque-bg)}
.hld-area{background:var(--hld-papel)}
.hld-cifra{background:var(--hld-papel)}
.hld-contacto-form{background:var(--hld-bloque-bg)}
.hld-bsc-tab{background:var(--hld-bloque-bg)}
.hld-bsc-tab[aria-selected="true"]{background:var(--hld-papel)}
.hld-panel h4{background:var(--hld-bloque-bg)}
.hld-migas{background:var(--hld-bloque-bg)}
.hld-head{background:var(--hld-bloque-bg)}

/* En Vivo, el bloque de donativos cambia de verde y las tarjetas con él */
.hld-estilo-vivo .hld-tarjeta{border-color:rgba(4,196,84,.4)}
.hld-estilo-vivo .hld-lista-oro li::before{background:var(--hld-vivo)}
.hld-estilo-vivo .hld-btn-oro{background:var(--hld-vivo);color:#06301D}

/* El pie y la advertencia siguen el estilo */
.hld-estilo-vivo .hld-pie,
.hld-estilo-claro .hld-pie{background:#06301D}
.hld-estilo-vivo .hld-advert{background:#FDF6E9;border-top-color:var(--hld-bermellon)}
.hld-estilo-claro .hld-advert{background:#FDF6E9}



/* ==========================================================================
   Rueda de la alimentación
   ========================================================================== */

.hld-rueda-wrap{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:48px;align-items:center
}
.hld-rueda-svg{width:100%;max-width:520px;height:auto;margin:0 auto;display:block;overflow:visible}

/* Disco: relleno blindado, o el arco verde se funde con el hero */
.hld-rueda-svg .hld-rueda-disco{fill:#FFFFFF!important;stroke:none}
.hld-rueda-svg .hld-rueda-borde{fill:none!important;stroke:var(--hld-oro);stroke-width:1.6}

.hld-rueda-dias{fill:none;stroke:#9AA89F;stroke-width:.7}
.hld-rueda-dia1{fill:none;stroke:var(--hld-verde);stroke-width:1.8;stroke-linecap:round}
.hld-rueda-anillo{fill:#FFFFFF!important;stroke:var(--hld-linea);stroke-width:1}
.hld-rueda-radio{stroke:var(--hld-linea);stroke-width:1}
.hld-rueda-mes{
  font-family:var(--hld-texto);font-size:11px;font-weight:700;letter-spacing:.06em;
  fill:#55635A;text-anchor:middle;text-transform:uppercase
}
.hld-rueda-mes.is-hoy{fill:#0A3D27;font-size:13px}

.hld-rueda-estacion-bg{stroke:#FFFFFF;stroke-width:1}
.hld-rueda-estacion{
  font-family:var(--hld-display);font-size:11.5px;font-style:italic;font-weight:600;
  fill:#0A3D27;text-anchor:middle
}
.hld-rueda-corte{stroke:var(--hld-oro);stroke-width:1.6;stroke-dasharray:1 3;stroke-linecap:round}

.hld-rueda-centro{fill:#FFFFFF!important;stroke:var(--hld-oro);stroke-width:2}
.hld-rueda-ct{font-family:var(--hld-display);font-size:17px;font-weight:600;fill:#0A3D27;text-anchor:middle}
.hld-rueda-cs{font-family:var(--hld-texto);font-size:12px;font-weight:700;fill:#00874A;text-anchor:middle;letter-spacing:.04em}

/* Arcos e iconos */
.hld-rueda-arco{
  cursor:pointer;outline:none;
  transform-box:view-box;transform-origin:200px 200px;
  transition:transform .3s cubic-bezier(.22,1.2,.4,1),opacity .2s;
  opacity:0;transform:scale(.86)
}
.hld-rueda-svg.is-visible .hld-rueda-arco{opacity:1;transform:scale(1)}
.hld-rueda-svg.is-visible .hld-rueda-arco:nth-child(1){transition-delay:.05s}
.hld-rueda-svg.is-visible .hld-rueda-arco:nth-child(2){transition-delay:.15s}
.hld-rueda-svg.is-visible .hld-rueda-arco:nth-child(3){transition-delay:.25s}
.hld-rueda-svg.is-visible .hld-rueda-arco:nth-child(4){transition-delay:.35s}
.hld-rueda-svg.is-visible .hld-rueda-arco:nth-child(5){transition-delay:.45s}

.hld-rueda-arcos.is-activo .hld-rueda-arco{opacity:.42;transition-delay:0s}
.hld-rueda-arcos.is-activo .hld-rueda-arco.is-on{opacity:1;transform:scale(1.04)}
.hld-rueda-arco:focus-visible .hld-rueda-banda{stroke:#0A3D27;stroke-width:2}

.hld-rueda-icono path,.hld-rueda-icono circle,.hld-rueda-icono ellipse{fill:#FFFFFF;stroke:none}
.hld-rueda-icono .t{fill:none!important;stroke:#FFFFFF!important;stroke-width:1.6;stroke-linecap:round}

/* Aguja del día de hoy */
.hld-rueda-aguja{transform-box:view-box;transform-origin:200px 200px;transition:transform 1.6s cubic-bezier(.22,1,.36,1)}
.hld-rueda-aguja-l{stroke:#0A3D27;stroke-width:1.6;stroke-dasharray:3 3;opacity:.5}
.hld-rueda-aguja-p{fill:#0A3D27}
.hld-rueda-aguja-halo{display:none}
@keyframes hld-latido{
  0%{transform:scale(.6);opacity:.8}
  100%{transform:scale(2.4);opacity:0}
}

/* Ficha */
.hld-rueda-ficha{
  background:#FFFFFF;border:1px solid var(--hld-linea);border-left:5px solid var(--hld-vivo);
  border-radius:var(--hld-radio);padding:18px 22px;margin-bottom:24px;
  box-shadow:0 14px 34px -24px rgba(6,48,29,.45);transition:border-color .2s
}
.hld-rueda-f-mes{
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  color:#55635A;margin:0 0 6px
}
.hld-rueda-hoy{
  background:var(--hld-vivo);color:#06301D;font-size:10.5px;letter-spacing:.1em;
  padding:3px 9px;border-radius:var(--hld-pildora)
}
.hld-rueda-hoy[hidden]{display:none}
.hld-rueda-f-nom{
  font-family:var(--hld-display);font-size:25px;font-weight:600;
  color:#0A3D27;margin:0 0 8px;line-height:1.15
}
.hld-rueda-f-txt{font-size:15px;color:#55635A;margin:0 0 14px;line-height:1.6}
.hld-rueda-f-links{margin:14px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px}
.hld-rueda-f-receta{
  display:inline-flex;align-items:center;gap:9px;
  background:#0A3D27;color:#FFFFFF!important;text-decoration:none;
  font-family:var(--hld-texto);font-size:14.5px;font-weight:700;
  padding:11px 20px;border-radius:var(--hld-radio);transition:background .18s,transform .18s
}
.hld-rueda-f-receta:hover{background:#00874A;transform:translateY(-1px)}
.hld-rueda-f-link{
  font-size:14px;font-weight:700;color:#00874A!important;text-decoration:none;
  border-bottom:1px solid currentColor
}
.hld-rueda-f-link[hidden]{display:none}

.hld-rueda-siempre{
  background:var(--hld-bloque-bg);border:1px solid var(--hld-linea);
  border-radius:var(--hld-radio);padding:20px 22px
}
.hld-rueda-siempre > p{
  font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  color:var(--hld-oro);margin:0 0 12px
}

/* ==========================================================================
   Rueda en el hero
   ========================================================================== */

.hld-hero-in--rueda{
  max-width:1280px;
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:40px;align-items:center
}
.hld-hero-in--rueda .hld-hero-rueda{position:relative;z-index:2;display:block}
.hld-rueda-svg--hero{max-width:600px}
.hld-hero-in--rueda .hld-rueda-ficha{margin:30px 0 0;max-width:470px}
.hld-hero-in--rueda h1{font-size:clamp(2.2rem,4.2vw,3.4rem)}

/* Estrellas extra del hero */
.hld-cielo-extra{position:absolute;inset:0;width:100%;height:100%}
.hld-cielo-extra circle{fill:var(--hld-cielo)}

@media(max-width:1024px){
  .hld-hero-in--rueda{grid-template-columns:1fr;gap:30px}
  .hld-rueda-svg--hero{max-width:460px}
  .hld-hero-in--rueda .hld-rueda-ficha{max-width:none}
}
@media(max-width:900px){
  .hld-rueda-wrap{grid-template-columns:1fr;gap:28px}
}
@media(max-width:520px){
  .hld-rueda-f-nom{font-size:21px}
  .hld-rueda-f-receta{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .hld-rueda-arco{opacity:1;transform:none;transition:none}
  .hld-rueda-aguja{transition:none}
  .hld-rueda-aguja-halo{animation:none;opacity:0}
}

/* ==========================================================================
   Recetas
   ========================================================================== */

.hld-pasos{counter-reset:paso;list-style:none;margin:0;padding:0}
.hld-pasos li{
  counter-increment:paso;position:relative;
  padding:0 0 18px 46px;margin:0;font-size:16.5px;line-height:1.65
}
.hld-pasos li::before{
  content:counter(paso);position:absolute;left:0;top:-1px;
  width:30px;height:30px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--hld-bloque-bg);border:1px solid var(--hld-linea);
  font-family:var(--hld-display);font-size:14px;font-weight:600;color:var(--hld-viriditas)
}
.hld-pasos li:last-child{padding-bottom:0}

.hld-receta-nota{
  margin-top:24px;padding:16px 18px;
  background:var(--hld-bloque-bg);border-left:3px solid var(--hld-oro);
  font-size:15px;color:var(--hld-tinta-sv);line-height:1.6
}

.hld-ingredientes{list-style:none;margin:0;padding:0;font-size:15px}
.hld-ingredientes li{
  padding:9px 0 9px 18px;position:relative;
  border-bottom:1px solid var(--hld-linea);line-height:1.5
}
.hld-ingredientes li:last-child{border-bottom:0}
.hld-ingredientes li::before{
  content:"";position:absolute;left:0;top:16px;
  width:6px;height:6px;background:var(--hld-vivo);transform:rotate(45deg)
}
.hld-ingredientes a{
  color:var(--hld-viriditas);text-decoration:none;
  border-bottom:1px dotted var(--hld-vivo);font-weight:500
}
.hld-ingredientes a:hover{background:rgba(4,196,84,.12)}

/* Listado */
.hld-recetas{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:1px;background:var(--hld-linea);border:1px solid var(--hld-linea)
}
.hld-receta-card{
  display:flex;gap:16px;align-items:center;
  background:var(--hld-papel);padding:20px;text-decoration:none;transition:background .18s
}
.hld-receta-card:hover{background:var(--hld-bloque-bg)}
.hld-receta-ilu{
  flex:0 0 68px;height:68px;border-radius:50%;
  background:var(--hld-bloque-bg);border:1px solid var(--hld-linea);
  display:flex;align-items:center;justify-content:center;padding:10px
}
.hld-receta-ilu .hld-ilu{max-height:44px}
.hld-receta-txt{display:block;min-width:0}
.hld-receta-txt em{
  display:block;font-style:normal;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--hld-oro);font-weight:700;margin-bottom:4px
}
.hld-receta-txt strong{
  display:block;font-family:var(--hld-display);font-size:19px;font-weight:600;
  color:var(--hld-verde);line-height:1.2;margin-bottom:5px
}
.hld-receta-txt span{display:block;font-size:14px;color:var(--hld-tinta-sv);line-height:1.5}

@media(max-width:680px){
  .hld-pasos li{padding-left:40px;font-size:15.5px}
  .hld-pasos li::before{width:27px;height:27px;font-size:13px}
  .hld-receta-card{padding:16px}
}

/* ==========================================================================
   Estilo Códice
   ========================================================================== */

.hld-estilo-codice{
  --hld-verde:#14432C;
  --hld-verde-2:#1E5E3C;
  --hld-viriditas:#16704A;
  --hld-vivo:#2E9E63;
  --hld-vivo-sv:#48B47B;
  --hld-oro:#B8892B;
  --hld-oro-cl:#E0BC6A;
  --hld-azul:#2A3C6B;
  --hld-bermellon:#A8342A;
  --hld-papel:#FBF7EC;
  --hld-papel-2:#F3EBD8;
  --hld-tinta:#241E14;
  --hld-tinta-sv:#5C5141;
  --hld-linea:#DCCBA6;

  --hld-hero-bg:#14432C;
  --hld-hero-tx:#F6EFDE;
  --hld-hero-tx-sv:#C6BCA2;
  --hld-hero-ac:#E0BC6A;
  --hld-cab-bg:#14432C;
  --hld-cab-tx:#D6CDB6;
  --hld-cab-hover:#F6EFDE;
  --hld-cab-filete:linear-gradient(90deg,rgba(184,137,43,.15),#B8892B 25%,#E0BC6A 50%,#B8892B 75%,rgba(184,137,43,.15));
  --hld-cita-bg:#14432C;
  --hld-cita-tx:#F6EFDE;
  --hld-cielo:#E0BC6A;
  --hld-cielo-op:.55;
  --hld-rueda-color:#E0BC6A;
  --hld-rueda-op:.2;
  --hld-colab-bg:#14432C;
  --hld-colab-tx:#F6EFDE;
  --hld-bloque-bg:#F3EBD8;
}
.hld-estilo-codice .hld-rueda-disco{fill:#FBF7EC!important}
.hld-estilo-codice .hld-pie{background:#14432C}


/* ==========================================================================
   Ornamentación
   ========================================================================== */

/* Cenefa de vid, como separador o al abrir una sección */
.hld-cenefa{
  display:block;width:100%;height:26px;
  background-repeat:repeat-x;background-position:center;background-size:auto 26px
}

/* Rosetón */
.hld-roseton{display:block;width:100%;max-width:320px;margin:0 auto;height:auto}
.hld-roseton path{stroke:var(--hld-oro);stroke-width:1;fill:none}
.hld-roseton .aro{fill:none;stroke:var(--hld-oro);stroke-width:1.2}
.hld-roseton .petalos ellipse{fill:var(--hld-viriditas);opacity:.75}
.hld-roseton .centro{fill:var(--hld-oro)}
.hld-roseton .lado{fill:var(--hld-azul)}

/* Esquinas del marco de cita */
.hld-orn .hld-cita::after{
  content:"";position:absolute;right:10px;bottom:10px;width:30px;height:30px;
  background-repeat:no-repeat;background-size:contain;transform:rotate(180deg);
  opacity:.9;pointer-events:none
}
.hld-orn .hld-cita::before{
  content:"";position:absolute;top:10px;left:10px;width:30px;height:30px;
  background-repeat:no-repeat;background-size:contain;
  font-size:0;opacity:.9;color:transparent
}
.hld-orn .hld-cita blockquote{padding-left:38px}
.hld-orn .hld-cita cite{padding-left:38px}

/* Capitular iluminada: primera letra del primer párrafo de la ficha */
.hld-orn .hld-capa:first-of-type > p:first-of-type::first-letter,
.hld-orn .hld-sec-lead > p:first-of-type::first-letter{
  float:left;
  font-family:var(--hld-display);font-size:58px;font-weight:700;line-height:.86;
  color:var(--hld-oro-cl);background:var(--hld-azul);
  margin:6px 14px 2px 0;padding:14px 12px 12px;
  border:1.5px solid var(--hld-oro);border-radius:var(--hld-radio)
}

@media(max-width:680px){
  .hld-orn .hld-capa:first-of-type > p:first-of-type::first-letter,
  .hld-orn .hld-sec-lead > p:first-of-type::first-letter{
    font-size:44px;padding:10px 9px 9px;margin-right:11px
  }
  .hld-cenefa{height:20px;background-size:auto 20px}
}
@media print{
  .hld-cenefa,.hld-roseton{display:none}
}

/* Crédito de foto */
.hld-portada{position:relative}
.hld-credito{
  display:block;font-size:11px;line-height:1.4;color:var(--hld-tinta-sv);
  background:var(--hld-bloque-bg);padding:7px 10px;
  border-top:1px solid var(--hld-linea)
}


/* ==========================================================================
   Pasada de auditoría (guías de interfaz)
   ========================================================================== */

/* Foco visible en todo lo que se puede tabular */
.hld-ficha a:focus-visible,
.hld-ficha button:focus-visible,
.hld-pie a:focus-visible,
.hld-cabecera a:focus-visible,
.hld-cabecera button:focus-visible{
  outline:2px solid var(--hld-viriditas);outline-offset:2px;border-radius:var(--hld-radio)
}
.hld-cabecera a:focus-visible,.hld-cabecera button:focus-visible{outline-color:var(--hld-vivo)}

/* Titulares sin viudas */
.hld-ficha h1,.hld-ficha h2,.hld-ficha h3,.hld-hero h1{text-wrap:balance}
.hld-ficha p{text-wrap:pretty}

/* Cifras alineadas */
.hld-cifra strong,.hld-contador,.hld-dl dd.hld-iban{font-variant-numeric:tabular-nums}

/* Sin retardo de doble toque en móvil */
.hld-ficha button,.hld-ficha a,.hld-cabecera button,.hld-rueda-arco{touch-action:manipulation}

/* Los anclajes no quedan tapados por la cabecera fija */
.hld-ficha h2,.hld-ficha h3,.hld-capa{scroll-margin-top:96px}

/* Textos largos que no rompen el diseño */
.hld-fila > *,.hld-receta-txt,.hld-rueda-info{min-width:0}
.hld-chip{overflow-wrap:anywhere}

/* Miniatura con foto en el buscador */
.hld-fila-ilu{overflow:hidden}
.hld-fila-ilu .hld-mini-img{
  display:block;width:52px;height:52px;object-fit:cover;border-radius:var(--hld-radio)
}
@media(max-width:900px){
  .hld-fila-ilu .hld-mini-img{width:40px;height:40px}
}

/* Las fotos destacadas en la ficha, también sin saltos */
.hld-portada-img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}


/* ==========================================================================
   Rueda 2: fotos, aguja de reloj y rendimiento
   ========================================================================== */

/* La rueda no repinta el resto de la página al animarse */
.hld-hero-rueda{contain:layout paint}
.hld-rueda-svg{contain:layout paint}

.hld-rueda-svg .hld-rueda-borde2{fill:none;stroke:var(--hld-oro);stroke-width:.7;opacity:.6}

/* Medallones de cada periodo */
.hld-rueda-medallon{fill:#FFFFFF;stroke-width:2.5}
.hld-rueda-icono path,.hld-rueda-icono circle,.hld-rueda-icono ellipse{fill:currentColor;stroke:none}
.hld-rueda-icono .t{fill:none!important;stroke:currentColor!important;stroke-width:1.6;stroke-linecap:round}

/* Estaciones con foto: un velo suave para que el nombre se lea */
.hld-rueda-velo{fill:#FFFFFF;opacity:.18}
.hld-rueda-estacion.sobre-foto{
  fill:#FFFFFF;font-size:13px;
  paint-order:stroke;stroke:rgba(6,30,18,.75);stroke-width:3px;stroke-linejoin:round
}

/* Separaciones de estación: discretas y por debajo de los nombres */
.hld-rueda-corte{stroke:#FFFFFF;stroke-width:2;stroke-dasharray:none;opacity:.9}

/* Aguja de reloj antiguo */
.hld-rueda-aguja{transition:transform 1.8s cubic-bezier(.22,1,.36,1)}
.hld-rueda-aguja-v{fill:#1F2A44}
.hld-rueda-aguja-c{fill:#1F2A44}
.hld-rueda-aguja-anillo{fill:none;stroke:#1F2A44;stroke-width:2.4}
.hld-rueda-aguja-fondo{fill:#FFFFFF;opacity:.92}
.hld-rueda-mes{paint-order:stroke;stroke:#FFFFFF;stroke-width:3px;stroke-linejoin:round}
.hld-rueda-centro2{fill:none;stroke:var(--hld-oro);stroke-width:.8;opacity:.6}
.hld-estilo-codice .hld-rueda-aguja-v,
.hld-estilo-codice .hld-rueda-aguja-c{fill:#2A3C6B}
.hld-estilo-codice .hld-rueda-aguja-anillo{stroke:#2A3C6B}

/* ==========================================================================
   Cielo del hero: nítido y con paralaje
   ========================================================================== */

.hld-cielo-extra circle,.hld-cielo-extra .destello{fill:var(--hld-cielo)}
.hld-capa-1{opacity:.35}
.hld-capa-2{opacity:.6}
.hld-capa-3{opacity:.9}
.hld-cielo-extra .destello{opacity:.95}

/* Solo unas pocas parpadean, cada una con su ritmo */
.hld-brillos .b{opacity:0;animation:hld-brillo 6s ease-in-out infinite}
.hld-brillos .b1{animation-duration:7.5s;animation-delay:-2s}
.hld-brillos .b2{animation-duration:9s;animation-delay:-4.5s}
.hld-brillos .b3{animation-duration:5.5s;animation-delay:-1s}
@keyframes hld-brillo{0%,100%{opacity:0}50%{opacity:.9}}

/* Constelaciones: líneas visibles, estrellas quietas */
.hld-constelacion .hld-lineas path{stroke-width:1.1;opacity:.45}
.hld-constelacion .hld-estrellas circle{animation:none;opacity:.8}

/* Paralaje sin JavaScript: animación ligada al scroll del documento.
   En navegadores que no la soportan, las capas se quedan quietas. */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline: scroll()){
    .hld-capa-cielo,.hld-constelacion{
      animation-timing-function:linear;animation-fill-mode:both;
      animation-timeline:scroll(root);animation-range:0 100vh
    }
    .hld-capa-1{animation-name:hld-px-1}
    .hld-capa-2{animation-name:hld-px-2}
    .hld-capa-3{animation-name:hld-px-3}
    .hld-constelacion{animation-name:hld-px-2}
    .hld-brillos .b{animation-timeline:auto;animation-range:normal}
  }
}
@keyframes hld-px-1{to{transform:translateY(40px)}}
@keyframes hld-px-2{to{transform:translateY(90px)}}
@keyframes hld-px-3{to{transform:translateY(160px)}}

@media(prefers-reduced-motion:reduce){
  .hld-brillos .b{animation:none;opacity:.5}
}

/* ==========================================================================
   Orla lateral: acompaña a los listados por mucho que crezcan
   ========================================================================== */

.hld-orla-lateral body{background-repeat:repeat-y,repeat-y;background-attachment:scroll}
@media(max-width:1279px){
  .hld-orla-lateral body{background-image:none!important}
}

/* El contenedor de la home es transparente: deja ver la orla lateral */
.hld-home .site-content{background:transparent!important}
