/* Huerto en Casa | Directorio 3.1 · capa editorial adaptable al tema.
   Cargada DESPUÉS de directorio.css. Solo afecta a componentes hec-.
   Variables de colores pueden personalizarse en Directorio Huerto > Diseño. */
:is(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) {
  --hec-brand:var(--wp--preset--color--primary,var(--global-palette1,var(--ast-global-color-0,#24543e)));
  --hec-ink:#1f3229;
  --hec-paper:#f7f8f2;
  --hec-line:#dae4d9;
  --hec-radius:16px;
  --hd-forest:var(--hec-brand);
  --hd-green:var(--hec-brand);
  --hd-ink:var(--hec-ink);
  --hd-cream:var(--hec-paper);
  --hd-border:var(--hec-line);
  font-family:inherit;
  font-size:clamp(15px,1vw + 11px,16px);
  line-height:1.6;
  color:var(--hec-ink);
  accent-color:var(--hec-brand);
  max-width:100%;
  overflow-wrap:anywhere;
}
:where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) :is(h2,h3) {
  font-family:inherit;
  text-transform:none;
}
:where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) :is(a,button,input,select,textarea,summary):focus-visible {
  outline:3px solid var(--hec-brand);
  outline-offset:3px;
}
/* Amplía solo el bloque del directorio en entradas de Gutenberg con columna estrecha. */
:where(.entry-content,.wp-block-post-content,.post-content) > .hec-directory,
:where(.entry-content,.wp-block-post-content,.post-content) > .hec-plans {
  width:min(1160px,calc(100vw - 40px));
  max-width:none;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  margin-block:30px 55px;
}
.hec-archive-shell {width:min(1160px,calc(100% - 40px));max-width:1160px;margin:32px auto 68px;}
.hec-archive-title {font-size:clamp(1.65rem,3vw,2.35rem)!important;letter-spacing:-.035em;margin-bottom:20px;}
.hec-archive-context {border-bottom:1px solid var(--hec-line,#dae4d9);padding-bottom:20px;margin-bottom:26px;}
.hec-archive-context h1 {line-height:1.14;letter-spacing:-.035em;}
/* Hero editorial: menos bloque publicitario y más continuidad con las guías. */
.hec-directory .hec-hero {
  min-height:0;
  grid-template-columns:minmax(0,1fr) 190px;
  border-radius:18px;
  margin:0 0 20px;
  background:var(--hec-paper);
  border:1px solid var(--hec-line);
  box-shadow:none;
  overflow:hidden;
}
.hec-directory .hec-hero__copy {padding:34px 40px 30px;color:var(--hec-ink);}
.hec-directory .hec-hero .hec-kicker {color:var(--hec-brand);letter-spacing:.085em;font-size:.72rem;}
.hec-directory .hec-hero h2 {
  font-family:inherit;
  color:var(--hec-ink)!important;
  font-size:clamp(2rem,3.6vw,3.12rem)!important;
  letter-spacing:-.045em;
  line-height:1.11;
  max-width:750px;
  margin:11px 0 13px;
  font-weight:800;
}
.hec-directory .hec-hero h2 em {color:var(--hec-brand)!important;}
.hec-directory .hec-hero p {max-width:690px;font-size:1rem;color:#57685f!important;line-height:1.58;}
.hec-directory .hec-hero__art {background:linear-gradient(145deg,#e6eedc,#dce8d5);border-left:1px solid var(--hec-line);}
.hec-directory .hec-hero__art:before,.hec-directory .hec-hero__art:after {border-color:#5c805a23;}
.hec-directory .hec-hero__art .hec-mark {color:var(--hec-brand);width:100px;height:100px;filter:none;}
.hec-directory .hec-hero__art span {color:var(--hec-brand);font-size:.66rem;line-height:1.5;}
.hec-directory .hec-hero__assurances {color:#526557;margin-top:14px;gap:7px 12px;font-size:.74rem;}
.hec-directory .hec-hero__assurances span {background:#fff9;border:1px solid var(--hec-line);color:#455a4b;padding:4px 10px;}
/* Filtros que parecen herramienta, no un formulario comercial flotante. */
.hec-directory .hec-filters {
  position:static;
  border:1px solid var(--hec-line);
  box-shadow:none;
  margin:0 0 18px;
  padding:22px 24px 16px;
  border-radius:16px;
  background:white;
}
.hec-directory .hec-filters__intro strong {font-size:1.03rem;color:var(--hec-ink);}
.hec-directory .hec-filters__intro span {color:#66756b;}
.hec-directory .hec-filters__fields {grid-template-columns:minmax(170px,1.7fr) repeat(3,minmax(112px,1fr)) auto;gap:10px;}
.hec-directory .hec-field label {color:var(--hec-ink);font-size:.78rem;font-weight:750;}
.hec-directory .hec-field :is(input,select) {
  border-radius:9px;
  border-color:#ccd8cc;
  background:#fff;
  color:var(--hec-ink);
  height:46px;
  min-height:46px;
  box-shadow:none;
}
.hec-directory .hec-field :is(input,select):focus {border-color:var(--hec-brand);box-shadow:0 0 0 3px #6d95722b;}
.hec-directory .hec-filters__fields .hec-button {min-height:46px;height:46px;background:var(--hec-brand)!important;border-color:var(--hec-brand)!important;box-shadow:none;border-radius:9px;padding-inline:20px;}
.hec-directory .hec-filters__extras {margin-top:14px;padding-top:13px;border-top:1px solid #e6ede5;}
.hec-directory .hec-tick,.hec-directory .hec-sort {color:#52685b;}
.hec-directory .hec-categories {margin:18px 0 32px;gap:7px;}
.hec-directory .hec-categories a {border-color:var(--hec-line);border-radius:9px;color:var(--hec-brand)!important;background:#fff;padding:7px 11px;}
.hec-directory .hec-categories a:hover,.hec-directory .hec-categories a[aria-current=page] {color:var(--hec-ink)!important;background:var(--hec-paper);border-color:#afc7b1;}
.hec-directory .hec-active-filters a {border-color:#cbdcca;}
/* Secciones y resultados. */
.hec-directory .hec-results-title {margin:28px 0 18px;align-items:center;}
.hec-directory .hec-results-title h2 {font-size:clamp(1.55rem,2.5vw,2.05rem);font-weight:800;color:var(--hec-ink);letter-spacing:-.035em;}
.hec-directory .hec-kicker {color:var(--hec-brand);}
.hec-directory .hec-results-title__side {font-size:.77rem;color:#617268;font-weight:500;}
.hec-directory .hec-spotlight-heading {border:0;padding-top:8px;margin-top:18px;}
.hec-directory .hec-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.hec-directory .hec-grid--sponsored {background:#f8f7f2;border:1px solid #e7e4d6;padding:14px;border-radius:16px;margin-bottom:30px;}
.hec-directory .hec-card,.hec-detail .hec-card {
  box-shadow:none;
  border:1px solid var(--hec-line,#dae4d9);
  border-radius:14px;
  background:#fff;
  transform:none;
  overflow:hidden;
}
.hec-directory .hec-card:hover,.hec-detail .hec-card:hover {box-shadow:0 10px 24px #1b433217;transform:translateY(-2px);border-color:#bed0c0;}
.hec-directory .hec-card__image {aspect-ratio:3/1.55;border-bottom:1px solid #e4eae2;}
.hec-directory .hec-card__body {padding:17px 18px 16px;gap:4px;}
.hec-directory .hec-card__category {color:var(--hec-brand);font-size:.67rem;}
.hec-directory .hec-card__title {font-weight:800!important;font-size:1.16rem!important;line-height:1.3!important;}
.hec-directory .hec-card__title a {color:var(--hec-ink)!important;}
.hec-directory .hec-card__location {color:#567061;}
.hec-directory .hec-card__excerpt {color:#5b6d63;font-size:.87rem;line-height:1.55;}
.hec-directory .hec-card__actions {gap:7px;margin-top:5px;}
.hec-directory .hec-mini-link,.hec-detail .hec-mini-link {border-radius:8px;color:var(--hec-brand);background:var(--hec-paper);border-color:var(--hec-line);}
.hec-directory .hec-save,.hec-detail .hec-save {border-radius:8px;}
.hec-directory .hec-card__more {color:var(--hec-brand)!important;}
.hec-directory .hec-verified {border-radius:6px;background:#eff6ee;border:0;color:#39704e;}
.hec-directory .hec-ribbon,.hec-directory .hec-ad-label {background:#fff4db;color:#755121;border:1px solid #ecd9b3;}
.hec-directory .hec-bottom-cta {background:var(--hec-brand)!important;border-radius:16px;margin-top:38px;box-shadow:none;}
.hec-directory .hec-bottom-cta h3 {color:#fff;}
.hec-directory .hec-button--light {background:#f5f8ed!important;color:var(--hec-brand)!important;border:0!important;}
/* Fichas individuales: resaltar los hechos, no el patrocinio. */
.hec-detail .hec-breadcrumb {color:#66756b;margin-bottom:21px;}
.hec-detail .hec-detail__layout {gap:24px;}
.hec-detail .hec-detail__top {border-bottom:1px solid var(--hec-line);padding-bottom:13px;margin-bottom:20px;}
.hec-detail .hec-fact {border-radius:12px;background:var(--hec-paper);border:1px solid var(--hec-line);box-shadow:none;}
.hec-detail .hec-contact-card {border-radius:15px;border:1px solid var(--hec-line);box-shadow:none;padding:25px;}
.hec-detail .hec-contact-card__icon {background:var(--hec-paper);}
.hec-detail .hec-contact-card__icon .hec-mark {color:var(--hec-brand);}
.hec-detail .hec-contact-card .hec-button--primary,.hec-plans .hec-button--primary,.hec-suggest button {background:var(--hec-brand)!important;border-color:var(--hec-brand)!important;}
.hec-detail .hec-correction {border-radius:13px;border-color:var(--hec-line);background:var(--hec-paper);}
.hec-detail .hec-detail__disclaimer {font-size:.77rem;color:#66776a;}
/* Páginas secundarias: mismo ritmo editorial. */
.hec-plans .hec-plans__intro h2,.hec-suggest .hec-suggest__intro h2 {color:var(--hec-ink);letter-spacing:-.035em;font-weight:800;}
.hec-plans .hec-price,.hec-plans .hec-request,.hec-suggest {border-radius:15px;box-shadow:none;border-color:var(--hec-line);}
.hec-plans .hec-price--featured {background:var(--hec-paper);border-color:#b7cdb6;box-shadow:none;}
.hec-plans .hec-price__amount {color:var(--hec-brand);}
.hec-plans .hec-request {background:var(--hec-paper);}
.hec-plans .hec-price__flag {background:var(--hec-brand);}
.hec-suggest {background:#fff;}
/* Inherit typography and avoid theme button resets (scoped only). */
:where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) .hec-button {
  font-family:inherit;
  text-transform:none;
  letter-spacing:normal;
  border-radius:9px;
  text-decoration:none;
}
:where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) .hec-button--primary {background:var(--hec-brand)!important;border-color:var(--hec-brand)!important;color:#fff!important;}
@media (max-width:1050px) {
  .hec-directory .hec-filters__fields {grid-template-columns:repeat(2,minmax(0,1fr));}
  .hec-directory .hec-filters__fields .hec-button {grid-column:1/-1;}
  .hec-directory .hec-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:780px) {
  .hec-directory .hec-hero {grid-template-columns:minmax(0,1fr) 110px;}
  .hec-directory .hec-hero__copy {padding:27px 27px 24px;}
  .hec-directory .hec-hero__art .hec-mark {width:65px;height:65px;}
  .hec-directory .hec-hero__art span {display:none;}
  .hec-directory .hec-filters {padding:18px;margin-inline:0;}
  .hec-directory .hec-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:570px) {
  :where(.entry-content,.wp-block-post-content,.post-content) > .hec-directory,
  :where(.entry-content,.wp-block-post-content,.post-content) > .hec-plans {width:calc(100vw - 24px);}
  .hec-archive-shell {width:calc(100% - 24px);margin:16px auto 45px;}
  .hec-directory .hec-hero {display:block;border-radius:14px;margin-bottom:12px;}
  .hec-directory .hec-hero__copy {padding:24px 21px 22px;}
  .hec-directory .hec-hero h2 {font-size:clamp(1.84rem,8vw,2.25rem)!important;}
  .hec-directory .hec-hero p {font-size:.91rem;}
  .hec-directory .hec-hero__art {display:none;}
  .hec-directory .hec-hero__assurances {gap:7px;font-size:.71rem;}
  .hec-directory .hec-filters {border-radius:13px;padding:16px 14px;}
  .hec-directory .hec-filters__intro {display:block;}
  .hec-directory .hec-filters__intro span {display:block;margin-top:2px;}
  .hec-directory .hec-filters__fields {grid-template-columns:1fr;gap:12px;}
  .hec-directory .hec-filters__fields .hec-button {grid-column:auto;}
  .hec-directory .hec-categories {margin:13px 0 24px;}
  .hec-directory .hec-grid {grid-template-columns:1fr;gap:14px;}
  .hec-directory .hec-card__image {aspect-ratio:16/7;}
  .hec-directory .hec-results-title__side {display:none;}
  .hec-directory .hec-grid--sponsored {padding:9px;}
  .hec-directory .hec-bottom-cta {border-radius:13px;}
  .hec-detail .hec-contact-card {padding:17px;}
}
@media (prefers-reduced-motion: reduce) {
  :where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) *,
  :where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) *::before,
  :where(.hec-directory,.hec-detail,.hec-plans,.hec-suggest) *::after {transition:none!important;animation:none!important;}
}
