/* GANTRY5 DEVELOPMENT MODE ENABLED.
 *
 * WARNING: This file is automatically generated by Gantry5. Any modifications to this file will be lost!
 *
 * For more information on modifying CSS, please read:
 *
 * http://docs.gantry.org/gantry5/configure/styles
 * http://docs.gantry.org/gantry5/tutorials/adding-a-custom-style-sheet
 */

@charset "UTF-8";
/* ========================================================================== */
/* Notificaciones por Aviso                                                   */
/* ========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&display=swap");
.armenia-notificaciones-aviso {
  width: min(1200px, 100%);
  margin: 0 auto;
  padding: 0.5rem 0 1rem;
}
.armenia-notificaciones-aviso__header {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  margin-bottom: 1.5rem;
  padding-bottom: 0.9rem;
  border-bottom: 2px solid var(--color-primary);
}
.armenia-notificaciones-aviso__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  color: var(--color-primary);
}
.armenia-notificaciones-aviso__title {
  margin: 0;
  font-family: var(--font-family-heading);
  font-size: clamp(1.2rem, 2.2vw, 1.7rem);
  line-height: 1.25;
  color: var(--color-primary-darker);
  font-weight: var(--font-weight-bold);
  text-wrap: balance;
}
.armenia-notificaciones-aviso__subtitle {
  margin: 0.35rem 0 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-base);
}
.armenia-notificaciones-aviso__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1rem;
}
.armenia-notificaciones-aviso__card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 12px;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: transform 0.24s ease, box-shadow 0.24s ease;
}
.armenia-notificaciones-aviso__card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}
.armenia-notificaciones-aviso__card-head {
  padding: 0.95rem 1rem;
  background: linear-gradient(145deg, var(--color-primary-light) 0%, var(--color-primary-dark) 55%, var(--color-primary-darker) 100%);
  color: var(--color-text-on-primary);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-semibold);
}
.armenia-notificaciones-aviso__card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
}
.armenia-notificaciones-aviso__card-text {
  margin: 0;
  color: var(--color-text);
  line-height: var(--line-height-relaxed);
  font-size: var(--font-size-sm);
}
.armenia-notificaciones-aviso__card-action {
  margin-top: auto;
}
.armenia-notificaciones-aviso__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  width: 100%;
  padding: 0.6rem 0.95rem;
  border-radius: var(--radius-pill);
  border: 1px solid var(--color-primary-dark);
  background: var(--color-surface);
  color: var(--color-primary-darker) !important;
  text-decoration: none;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  transition: var(--btn-transition);
}
.armenia-notificaciones-aviso__btn:hover {
  border-color: var(--color-primary-darker);
  background: var(--color-accent-soft);
  color: var(--color-primary) !important;
  transform: translateY(-1px);
}
.armenia-notificaciones-aviso__btn-icon {
  display: inline-flex;
  flex-shrink: 0;
}
.armenia-notificaciones-aviso__btn-icon svg {
  width: 1rem;
  height: 1rem;
  display: block;
}
/* ========================================================================== */
/* Logos de dependencias (planes de accion)                                   */
/* ========================================================================== */
.armenia-planes-logos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 0.85rem;
  margin: 0.75rem 0 1.25rem;
}
.armenia-planes-logos__item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 110px;
  padding: 0.6rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: var(--shadow-sm);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}
.armenia-planes-logos__item:hover {
  transform: translateY(-2px);
  border-color: rgba(7, 137, 48, 0.42);
  box-shadow: var(--shadow-md);
}
.armenia-planes-logos__item:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: var(--outline-offset);
}
.armenia-planes-logos__item img {
  width: 100%;
  max-width: 300px;
  height: auto;
  display: block;
  object-fit: contain;
}
@media (max-width: 768px) {
  .armenia-notificaciones-aviso__header {
    align-items: flex-start;
  }
  .armenia-notificaciones-aviso__grid {
    grid-template-columns: 1fr;
  }
  .armenia-planes-logos {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
  }
}
/**
 * Sistema de diseño — Alcaldía de Armenia 
 */
:root {
  /* ——— Verde institucional (#078930 — marca principal del sitio) ——— */
  --color-primary: #078930;
  --color-primary-dark: #056d26;
  --color-primary-darker: #005c33;
  --color-primary-light: #007057;
  --color-secondary: #005c33;
  /* ——— Superficies (body en sitio actual: #efefef) ——— */
  --color-surface: #ffffff;
  --color-surface-muted: #efefef;
  --color-surface-alt: #e4e4e4;
  --color-border: #cccccc;
  --color-border-strong: #a8a8a8;
  /* ——— Texto (#505050 usado en bloques del tema) ——— */
  --color-text: #505050;
  --color-text-muted: #6b6b6b;
  --color-text-inverse: #ffffff;
  --color-text-on-primary: #ffffff;
  /* ——— Acentos (menú: hover lima #a7c62b; subtítulos rojo #b42d33) ——— */
  --color-accent: #a7c62b;
  --color-accent-hover: #8fad24;
  --color-accent-soft: rgba(7, 137, 48, 0.12);
  --color-brand-red: #b42d33;
  --color-focus: #078930;
  --color-link: #078930;
  --color-link-hover: #056d26;
  --color-link-visited: #005c33;
  /* ——— Estados (armonizados con la paleta verde / rojo institucional) ——— */
  --color-success: #005c33;
  --color-success-bg: #e8f5ec;
  --color-warning: #8a6d00;
  --color-warning-bg: #fff8e1;
  --color-error: #b42d33;
  --color-error-bg: #fce8e9;
  --color-info: #056d26;
  --color-info-bg: #e8f5ec;
  /* ——— Tipografía: Sora (Google Fonts), cargada arriba con @import ——— */
  --font-family-sans: "Sora", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-family-heading: "Sora", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-family-mono: "Consolas", "Liberation Mono", monospace;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-md: 1.0625rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;
  --font-size-4xl: 2.25rem;
  --line-height-tight: 1.25;
  --line-height-snug: 1.375;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;
  --line-height-loose: 1.75;
  --letter-spacing-tight: -0.02em;
  --letter-spacing-normal: 0;
  --letter-spacing-wide: 0.025em;
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-pill: 8px;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.06);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
  --outline-width: 2px;
  --outline-offset: 2px;
  /* Logos en tablas del aside: misma altura en todas las celdas (~57.33px render) */
  --module-aside-table-img-height: 57.33px;
  /* Botones (Bootstrap / Joomla) */
  --btn-radius: var(--radius-pill);
  --btn-padding-y: 0.55rem;
  --btn-padding-x: 1.15rem;
  --btn-font-size: var(--font-size-sm);
  --btn-transition:
    color 0.22s ease,
    background 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease,
    transform 0.22s ease;
}
body {
  font-family: var(--font-family-sans) !important;
  font-size: var(--font-size-base);
  line-height: var(--line-height-normal);
  color: var(--color-text);
}
a {
  color: var(--color-link);
  text-decoration-skip-ink: auto;
  font-family: var(--font-family-sans) !important;
}
a:hover, a:focus-visible {
  color: var(--color-link-hover);
}
a:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: var(--outline-offset);
}
/* ========== Botones (Bootstrap 5 / Joomla: .btn, variantes, tamaños) ========== */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  box-sizing: border-box;
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-semibold);
  font-size: var(--btn-font-size);
  line-height: 1.35;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: 1px solid transparent;
  border-radius: var(--btn-radius);
  padding: var(--btn-padding-y) var(--btn-padding-x);
  transition: var(--btn-transition);
}
.btn:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: var(--outline-offset);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  opacity: 0.58;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
  transform: none;
}
/* Primario — institucional (misma línea que buscador / aside) */
.btn-primary {
  color: var(--color-text-on-primary) !important;
  background: linear-gradient(145deg, var(--color-primary-light) 0%, var(--color-primary-dark) 55%, var(--color-primary-darker) 100%);
  border-color: var(--color-primary-dark);
  box-shadow: var(--shadow-sm), 0 2px 10px rgba(7, 137, 48, 0.28);
}
.btn-primary:hover {
  color: var(--color-text-on-primary) !important;
  filter: brightness(1.05);
  border-color: var(--color-primary-darker);
  box-shadow: var(--shadow-md), 0 4px 14px rgba(7, 137, 48, 0.32);
  transform: translateY(-1px);
}
.btn-primary:active {
  filter: brightness(0.97);
  transform: translateY(0);
}
/* Secundario — neutro, borde verde suave */
.btn-secondary {
  color: var(--color-primary-darker) !important;
  background: var(--color-surface);
  border-color: rgba(7, 137, 48, 0.35);
  box-shadow: var(--shadow-sm);
}
.btn-secondary:hover {
  color: var(--color-primary) !important;
  background: var(--color-accent-soft);
  border-color: rgba(7, 137, 48, 0.45);
  transform: translateY(-1px);
}
/* Éxito / peligro / aviso / info — legibles y sobrios */
.btn-success {
  color: #fff !important;
  background: linear-gradient(180deg, #0a7a45 0%, var(--color-success) 100%);
  border-color: var(--color-primary-darker);
  box-shadow: var(--shadow-sm);
}
.btn-success:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
}
.btn-danger {
  color: #fff !important;
  background: linear-gradient(180deg, #c43e44 0%, var(--color-brand-red) 100%);
  border-color: #8f2228;
  box-shadow: var(--shadow-sm);
}
.btn-danger:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}
.btn-warning {
  color: #3d2f00 !important;
  background: linear-gradient(180deg, #ffe082 0%, #f0c14a 100%);
  border-color: #c9a227;
  box-shadow: var(--shadow-sm);
}
.btn-warning:hover {
  filter: brightness(1.03);
  transform: translateY(-1px);
}
.btn-info {
  color: #fff !important;
  background: linear-gradient(180deg, var(--color-primary-light) 0%, var(--color-info) 100%);
  border-color: var(--color-primary-dark);
  box-shadow: var(--shadow-sm);
}
.btn-info:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
}
.btn-light {
  color: var(--color-text) !important;
  background: var(--color-surface);
  border-color: var(--color-border);
  box-shadow: var(--shadow-sm);
}
.btn-light:hover {
  background: var(--color-surface-muted);
  border-color: var(--color-border-strong);
}
.btn-dark {
  color: #fff !important;
  background: linear-gradient(180deg, #3d3d3d 0%, #2a2a2a 100%);
  border-color: #1f1f1f;
  box-shadow: var(--shadow-sm);
}
.btn-dark:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
}
/* Outline — fondo claro, borde de color */
.btn-outline-primary {
  color: var(--color-primary) !important;
  background: transparent;
  border-color: var(--color-primary);
  box-shadow: none;
}
.btn-outline-primary:hover {
  color: var(--color-text-on-primary) !important;
  background: linear-gradient(145deg, var(--color-primary-light) 0%, var(--color-primary-dark) 100%);
  border-color: var(--color-primary-dark);
  box-shadow: var(--shadow-sm);
}
.btn-outline-secondary {
  color: var(--color-text-muted) !important;
  background: transparent;
  border-color: var(--color-border-strong);
}
.btn-outline-secondary:hover {
  color: var(--color-primary-darker) !important;
  background: var(--color-accent-soft);
  border-color: rgba(7, 137, 48, 0.4);
}
.btn-outline-success {
  color: var(--color-success) !important;
  background: transparent;
  border-color: var(--color-success);
}
.btn-outline-success:hover {
  color: #fff !important;
  background: var(--color-success);
}
.btn-outline-danger {
  color: var(--color-error) !important;
  background: transparent;
  border-color: var(--color-error);
}
.btn-outline-danger:hover {
  color: #fff !important;
  background: var(--color-error);
}
.btn-outline-warning {
  color: var(--color-warning) !important;
  background: transparent;
  border-color: #d4a017;
}
.btn-outline-warning:hover {
  color: #3d2f00 !important;
  background: #ffe082;
}
.btn-outline-info {
  color: var(--color-info) !important;
  background: transparent;
  border-color: var(--color-info);
}
.btn-outline-info:hover {
  color: #fff !important;
  background: var(--color-info);
}
.btn-outline-light {
  color: var(--color-surface) !important;
  background: transparent;
  border-color: rgba(255, 255, 255, 0.65);
}
.btn-outline-light:hover {
  color: var(--color-text) !important;
  background: var(--color-surface);
  border-color: var(--color-surface);
}
.btn-outline-dark {
  color: #2a2a2a !important;
  background: transparent;
  border-color: #2a2a2a;
}
.btn-outline-dark:hover {
  color: #fff !important;
  background: #2a2a2a;
}
/* Enlace con aspecto de botón mínimo */
.btn-link {
  font-weight: var(--font-weight-medium);
  color: var(--color-link) !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.btn-link:hover {
  color: var(--color-link-hover) !important;
  transform: none;
}
/* Tamaños */
.btn-sm, .btn-group-sm > .btn {
  --btn-font-size: var(--font-size-xs);
  padding: 0.4rem 0.85rem;
  border-radius: var(--radius-md);
}
.btn-lg, .btn-group-lg > .btn {
  --btn-font-size: var(--font-size-md);
  padding: 0.65rem 1.4rem;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition-duration: 0.01ms !important;
  }
  .btn:hover, .btn-primary:hover, .btn-secondary:hover, .btn-success:hover, .btn-danger:hover, .btn-warning:hover, .btn-info:hover, .btn-dark:hover, .btn-outline-primary:hover, .btn-outline-secondary:hover {
    transform: none;
  }
}
/* Estilos Header GOV.CO */
#g-Header-GOVCO, #g-footer {
  background-color: #36c;
}
#g-Header-GOVCO .g-grid {
  align-items: center;
}
#g-footer {
  padding: 2rem 2rem !important;
}
.module-govco-up {
  padding: 0 1rem !important;
}
/* Logos Colombia + Gov.co (partícula HTML; no usar clases Bootstrap aquí) */
.govco-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  padding: 0.75rem 0;
  list-style: none;
  gap: 0 1.25rem;
}
.govco-logos__item {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
.govco-logos__img {
  display: block;
  height: auto;
  max-width: 100%;
}
.govco-logos__img--co {
  width: 90px;
}
.govco-logos__img--gov {
  width: 162px;
  max-width: min(162px, 50vw);
}
.govco-logos__link {
  display: inline-flex;
  line-height: 0;
  text-decoration: none;
  border-radius: var(--radius-sm);
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.govco-logos__link:hover {
  opacity: 0.92;
}
.govco-logos__link:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}
/* Separador vertical (sustituye el <li> vacío con bordes Bootstrap) */
.govco-logos__sep {
  flex: 0 0 auto;
  align-self: stretch;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
  min-height: 2rem;
}
.govco-logos__sep::before {
  content: "";
  width: 1px;
  height: 100%;
  min-height: 2.25rem;
  background: rgba(255, 255, 255, 0.92);
  border-radius: 1px;
}
#g-Header-GOVCO .govco-logos__sep::before {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08);
}
@media (max-width: 479.98px) {
  .govco-logos {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem 0;
  }
  .govco-logos__sep {
    align-self: stretch;
    min-height: 0;
  }
  .govco-logos__sep::before {
    width: 100%;
    height: 1px;
    min-height: 1px;
  }
}
/* Estilos Menu Principal */
/* Separación respecto al contenido inferior: misma línea que footer + sombra suave hacia abajo */
#g-navigation {
  position: relative;
  padding: 1rem 0 !important;
  align-items: center !important;
  background: #fff;
  box-shadow: 0 6px 28px rgba(0, 92, 51, 0.07);
}
#g-navigation::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  pointer-events: none;
  background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 48%, var(--color-primary-dark) 100%);
}
/* Búsqueda inteligente (mod_finder) — cabecera GOV.CO (módulo reubicado aquí) */
#g-Header-GOVCO .g-container {
  padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
  padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
}
@media (max-width: 767.98px) {
  #g-Header-GOVCO .g-container {
    padding: 0 1rem 1rem 1rem !important;
  }
}
#g-Header-GOVCO .module-search {
  width: 100%;
  max-width: min(26rem, 100%);
}
#g-Header-GOVCO .module-search form.mod-finder {
  margin: 0;
}
#g-Header-GOVCO .module-search .mod-finder__search.input-group {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0.5rem;
  width: 100%;
}
#g-Header-GOVCO .module-search .mod-finder__search > .form-control, #g-Header-GOVCO .module-search .mod-finder__search > input.form-control {
  flex: 1 1 auto;
  min-width: 0;
  border-radius: var(--radius-pill) !important;
  border: 1px solid rgba(255, 255, 255, 0.35);
  padding: 0.5rem 1rem;
  font-family: var(--font-family-sans);
  font-size: var(--font-size-sm);
  color: var(--color-text);
  background: rgba(255, 255, 255, 0.97);
  box-shadow: var(--shadow-sm);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
#g-Header-GOVCO .module-search .mod-finder__search > .form-control::placeholder {
  color: var(--color-text-muted);
  opacity: 1;
}
/* Focus verde muy sutil (anula plugins con outline naranja + !important) */
#g-Header-GOVCO .module-search .mod-finder__search > .form-control:focus, #g-Header-GOVCO .module-search .mod-finder__search > input.form-control:focus, #g-Header-GOVCO .module-search .mod-finder__search input.js-finder-search-query:focus {
  border-color: rgba(7, 137, 48, 0.38) !important;
  box-shadow: 0 0 0 1px rgba(7, 137, 48, 0.12) !important;
  outline: none !important;
}
#g-Header-GOVCO .module-search .mod-finder__search > .form-control:focus-visible, #g-Header-GOVCO .module-search .mod-finder__search > input.form-control:focus-visible, #g-Header-GOVCO .module-search .mod-finder__search input.js-finder-search-query:focus-visible {
  border-color: rgba(7, 137, 48, 0.42) !important;
  box-shadow: 0 0 0 1px rgba(7, 137, 48, 0.14) !important;
  outline: 1px solid rgba(7, 137, 48, 0.28) !important;
  outline-offset: 1px !important;
}
#g-Header-GOVCO .module-search .mod-finder__search .btn.btn-primary {
  flex-shrink: 0;
  border-radius: var(--radius-pill) !important;
  border: none;
  padding: 0.5rem 1rem;
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-sm);
  white-space: nowrap;
  color: var(--color-text-on-primary) !important;
  background: linear-gradient(145deg, var(--color-primary-light) 0%, var(--color-primary-dark) 55%, var(--color-primary-darker) 100%);
  box-shadow: var(--shadow-sm), 0 2px 10px rgba(7, 137, 48, 0.28);
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}
#g-Header-GOVCO .module-search .mod-finder__search .btn.btn-primary:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
  box-shadow: var(--shadow-md), 0 4px 14px rgba(7, 137, 48, 0.35);
}
#g-Header-GOVCO .module-search .mod-finder__search .btn.btn-primary:focus-visible {
  outline: var(--outline-width) solid #fff;
  outline-offset: var(--outline-offset);
}
#g-Header-GOVCO .module-search .mod-finder__search .btn .icon-search {
  margin-right: 0.2rem;
}
#g-Header-GOVCO .module-search .mod-finder__search > :not(:first-child):not(.dropdown-menu) {
  margin-left: 0 !important;
}
@media (max-width: 575.98px) {
  #g-Header-GOVCO .module-search .mod-finder__search .btn.btn-primary {
    padding: 0.45rem 0.75rem;
    font-size: var(--font-size-xs);
  }
}
@media (prefers-reduced-motion: reduce) {
  #g-Header-GOVCO .module-search .mod-finder__search .btn.btn-primary {
    transition: none;
  }
  #g-Header-GOVCO .module-search .mod-finder__search .btn.btn-primary:hover {
    transform: none;
  }
}
@media (max-width: 767.98px) {
  .module-govco-up p {
    text-align: center !important;
  }
}
@media (max-width: 767.98px) {
  .dj-megamenu-accordion {
    text-align: center !important;
    margin-top: 1rem !important;
  }
}
/* Items del menú: base + animaciones hover / active */
.dj-megamenu-modern li.dj-up {
  position: relative;
  background-color: var(--color-primary) !important;
  transition: background-color 0.38s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.38s ease, transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}
/* Franja inferior (acento) que crece al interactuar */
.dj-megamenu-modern li.dj-up::after {
  content: "";
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: 0;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: linear-gradient(90deg, var(--color-accent), #c5d94a);
  transform: scaleX(0);
  transform-origin: center;
  opacity: 0;
  transition: transform 0.45s cubic-bezier(0.34, 1.2, 0.64, 1), opacity 0.3s ease;
  pointer-events: none;
  z-index: 2;
}
.dj-megamenu-modern li.dj-up:hover, .dj-megamenu-modern li.dj-up.hover {
  background-color: var(--color-primary-dark) !important;
  box-shadow: 0 6px 18px rgba(7, 137, 48, 0.28);
  transform: translateY(-2px);
}
.dj-megamenu-modern li.dj-up:hover::after, .dj-megamenu-modern li.dj-up.hover::after {
  transform: scaleX(1);
  opacity: 1;
}
.dj-megamenu-modern li.dj-up.active {
  background-color: var(--color-primary-darker) !important;
  box-shadow: 0 4px 16px rgba(0, 92, 51, 0.35);
}
.dj-megamenu-modern li.dj-up.active::after {
  transform: scaleX(1);
  opacity: 1;
  height: 4px;
  left: 4%;
  right: 4%;
  background: var(--color-accent);
}
.dj-megamenu-modern li.dj-up.active:hover, .dj-megamenu-modern li.dj-up.active.hover {
  background-color: var(--color-primary-dark) !important;
}
/* Enlace: transición de color y leve “respiración” del texto */
.dj-megamenu-modern li a.dj-up_a {
  position: relative;
  z-index: 1;
  color: var(--color-text-on-primary) !important;
  transition: color 0.32s ease, transform 0.32s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.dj-megamenu-modern li.dj-up:hover a.dj-up_a, .dj-megamenu-modern li.dj-up.hover a.dj-up_a {
  color: var(--color-accent) !important;
}
.dj-megamenu-modern li.dj-up.active a.dj-up_a {
  color: #fff !important;
  font-weight: var(--font-weight-semibold);
}
@media (prefers-reduced-motion: reduce) {
  .dj-megamenu-modern li.dj-up, .dj-megamenu-modern li.dj-up::after, .dj-megamenu-modern li a.dj-up_a {
    transition-duration: 0.01ms !important;
  }
  .dj-megamenu-modern li.dj-up:hover, .dj-megamenu-modern li.dj-up.hover {
    transform: none;
  }
}
/* Barra del menú: redondeo solo en los extremos */
.dj-megamenu-modern li.dj-up.first, .dj-megamenu-modern li.dj-up:first-child {
  border-top-left-radius: var(--radius-pill);
  border-bottom-left-radius: var(--radius-pill);
}
.dj-megamenu-modern li.dj-up:last-child {
  border-top-right-radius: var(--radius-pill);
  border-bottom-right-radius: var(--radius-pill);
}
.dj-megamenu-modern {
  justify-content: center !important;
}
.dj-megamenu-modern li a.dj-up_a {
  padding: 0 10px !important;
  height: 50px !important;
}
.dj-megamenu-modern li a.dj-up_a > span {
  height: 50px !important;
  transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.dj-megamenu-modern li.dj-up:hover a.dj-up_a > span, .dj-megamenu-modern li.dj-up.hover a.dj-up_a > span {
  transform: translateY(-1px);
}
/* ——— Submenús (DJ-MegaMenu): ul.dj-submenu > li > a > span.title ——— */
/* El wrap por defecto suele traer fondo del tema; el “card” es el ul */
.dj-megamenu-modern li div.dj-subwrap {
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
}
.dj-megamenu-modern ul.dj-submenu {
  margin: 0 !important;
  padding: 0.4rem 0 !important;
  min-width: 16rem;
  max-width: 22rem;
  list-style: none !important;
  background: var(--color-surface) !important;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  box-shadow: var(--shadow-md), 0 12px 28px rgba(7, 137, 48, 0.12);
  /* visible: overflow:hidden recortaba los submenús anidados (flyout a la derecha) */
  overflow: visible;
}
/* Submenús dentro de submenús: por encima de filas hermanas */
.dj-megamenu-modern ul.dj-submenu > li:hover, .dj-megamenu-modern ul.dj-submenu > li.hover {
  z-index: 1;
}
.dj-megamenu-modern ul.dj-submenu > li:hover > div.dj-subwrap, .dj-megamenu-modern ul.dj-submenu > li.hover > div.dj-subwrap {
  z-index: 500 !important;
}
.dj-megamenu-modern ul.dj-submenu > li {
  margin: 0 !important;
  padding: 0 !important;
  border-top: 1px solid var(--color-surface-muted);
}
.dj-megamenu-modern ul.dj-submenu > li.first, .dj-megamenu-modern ul.dj-submenu > li:first-child {
  border-top: none !important;
}
.dj-megamenu-modern ul.dj-submenu > li > a {
  position: relative;
  display: flex !important;
  align-items: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0.55rem 1rem 0.55rem 1.1rem !important;
  color: var(--color-text) !important;
  text-decoration: none !important;
  font-family: var(--font-family-sans);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-snug);
  transition: background-color 0.28s ease, color 0.28s ease, padding-left 0.3s cubic-bezier(0.34, 1.2, 0.64, 1), box-shadow 0.28s ease;
}
/* Barra vertical de acento al hover/focus */
.dj-megamenu-modern ul.dj-submenu > li > a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.35rem;
  bottom: 0.35rem;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: linear-gradient(180deg, var(--color-accent), var(--color-primary-light));
  transform: scaleY(0);
  transform-origin: center top;
  transition: transform 0.32s cubic-bezier(0.34, 1.2, 0.64, 1);
  pointer-events: none;
}
.dj-megamenu-modern ul.dj-submenu > li > a:hover, .dj-megamenu-modern ul.dj-submenu > li > a:focus-visible, .dj-megamenu-modern ul.dj-submenu > li.hover > a, .dj-megamenu-modern ul.dj-submenu > li.active > a {
  background-color: var(--color-accent-soft) !important;
  color: var(--color-primary-darker) !important;
  padding-left: 1.35rem !important;
  box-shadow: inset 0 0 0 1px rgba(7, 137, 48, 0.08);
}
.dj-megamenu-modern ul.dj-submenu > li > a:hover::before, .dj-megamenu-modern ul.dj-submenu > li > a:focus-visible::before, .dj-megamenu-modern ul.dj-submenu > li.hover > a::before, .dj-megamenu-modern ul.dj-submenu > li.active > a::before {
  transform: scaleY(1);
}
.dj-megamenu-modern ul.dj-submenu > li.active > a {
  font-weight: var(--font-weight-semibold);
}
.dj-megamenu-modern ul.dj-submenu span.title {
  display: block;
  flex: 1;
}
@media (prefers-reduced-motion: reduce) {
  .dj-megamenu-modern ul.dj-submenu > li > a, .dj-megamenu-modern ul.dj-submenu > li > a::before {
    transition-duration: 0.01ms !important;
  }
}
.logopage a {
  display: flex !important;
  justify-content: end !important;
}
/* ====== Seccion de noticias ========== */
/* Ancho mayor en escritorio sin forzar 85rem en móvil (evita scroll horizontal e imágenes desmesuradas) */
.Noticias-Inicio #g-container-main .g-container {
  width: 100% !important;
  max-width: min(85rem, calc(100vw - 1.5rem)) !important;
  box-sizing: border-box;
}
.Noticias-Inicio .com-content-category-blog, .Noticias-Inicio .com-content-category-blog.blog {
  min-width: 0;
  max-width: 100%;
}
.Noticias-Inicio .com-content-category-blog H1 {
  text-align: center;
  font-family: var(--font-family-sans);
  margin-bottom: 0 !important;
}
.Noticias-Inicio .category-desc {
  text-align: center;
  font-family: var(--font-family-sans);
  border-bottom: 1px solid var(--color-border);
  padding-bottom: 1rem;
}
.Noticias-Inicio .category-desc p {
  margin: 0 !important;
}
.noticia-principal {
  margin-top: 1rem !important;
}
/* Intro del artículo en párrafos: oculto (solo tarjeta: imagen + título + fecha) */
.Noticias-Inicio .com-content-category-blog__item .item-content p {
  display: none !important;
}
/* Ocultar tags, iconos de edición y metadatos del bloque salvo fecha de publicación */
.Noticias-Inicio .item-content .tags, .Noticias-Inicio .item-content .icons {
  display: none !important;
}
.Noticias-Inicio .item-content .article-info .article-info-term, .Noticias-Inicio .item-content .article-info dd:not(.published) {
  display: none !important;
}
/* Cuadrícula: tarjetas siempre en columna (imagen arriba), aunque el blog use image-left */
.Noticias-Inicio .com-content-category-blog__items .blog-item, .Noticias-Inicio .blog-items .blog-item {
  flex-direction: column !important;
}
.Noticias-Inicio .blog-items.image-left .blog-item .item-image, .Noticias-Inicio .blog-items.image-right .blog-item .item-image, .Noticias-Inicio .com-content-category-blog__items.image-left .blog-item .item-image, .Noticias-Inicio .com-content-category-blog__items.image-right .blog-item .item-image {
  flex: none !important;
  max-width: 100% !important;
}
.Noticias-Inicio .blog-items.image-left .blog-item .item-content, .Noticias-Inicio .blog-items.image-right .blog-item .item-content, .Noticias-Inicio .com-content-category-blog__items.image-left .blog-item .item-content, .Noticias-Inicio .com-content-category-blog__items.image-right .blog-item .item-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Misma altura por fila + separación clara entre tarjetas (grid o flex) */
.Noticias-Inicio .com-content-category-blog__items.blog-items {
  align-items: stretch;
  min-width: 0;
  max-width: 100%;
  --noticias-grid-gap: 1.75rem;
  gap: var(--noticias-grid-gap) !important;
  row-gap: var(--noticias-grid-gap) !important;
  column-gap: var(--noticias-grid-gap) !important;
  /* Anula márgenes negativos del blog de Joomla que pegan las columnas */
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0.125rem;
  padding-right: 0.125rem;
  padding-bottom: 0.5rem;
}
.Noticias-Inicio .com-content-category-blog__items.blog-items[class*="masonry-"] {
  display: grid !important;
  column-count: auto !important;
  grid-auto-flow: row;
  width: 100%;
}
@media (min-width: 768px) {
  .Noticias-Inicio .com-content-category-blog__items.blog-items.masonry-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .Noticias-Inicio .com-content-category-blog__items.blog-items.masonry-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .Noticias-Inicio .com-content-category-blog__items.blog-items.masonry-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.Noticias-Inicio .com-content-category-blog__item.blog-item {
  position: relative;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-width: 0;
  max-width: 100%;
  min-height: 0;
  height: 100%;
  align-self: stretch;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-pill);
  overflow: hidden;
  box-shadow: var(--shadow-sm), 0 14px 32px rgba(0, 92, 51, 0.07);
  transition: box-shadow 0.45s cubic-bezier(0.33, 1, 0.68, 1), transform 0.45s cubic-bezier(0.33, 1, 0.68, 1), border-color 0.35s ease;
}
.Noticias-Inicio .com-content-category-blog__item.blog-item::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
  z-index: 2;
}
@media (hover: hover) and (pointer: fine) {
  .Noticias-Inicio .com-content-category-blog__item.blog-item:hover {
    border-color: rgba(7, 137, 48, 0.35);
    box-shadow: var(--shadow-md), 0 22px 48px rgba(0, 92, 51, 0.14), 0 0 0 1px rgba(167, 198, 43, 0.2);
    transform: translateY(-6px) scale(1.01);
  }
}
.Noticias-Inicio .blog-item figure.item-image {
  flex-shrink: 0;
  float: none !important;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0 !important;
  position: relative;
  z-index: 0;
  overflow: hidden;
  aspect-ratio: 1.6;
  background: linear-gradient(145deg, var(--color-surface-muted) 0%, #e8ece9 100%);
}
.Noticias-Inicio .blog-item figure.item-image::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 55%, rgba(0, 92, 51, 0.08) 100%);
  opacity: 0.85;
  transition: opacity 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  .Noticias-Inicio .blog-item:hover figure.item-image::after {
    opacity: 0.55;
  }
}
.Noticias-Inicio .blog-item figure.item-image a {
  display: block;
  height: 100%;
  line-height: 0;
}
.Noticias-Inicio .blog-item figure.item-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform-origin: center center;
  transition: transform 0.6s cubic-bezier(0.33, 1, 0.68, 1);
  animation: noticias-inicio-img-float 7s ease-in-out infinite;
}
@media (hover: hover) and (pointer: fine) {
  .Noticias-Inicio .blog-item:hover figure.item-image img {
    animation-play-state: paused;
    transform: scale(1.07);
  }
}
@keyframes noticias-inicio-img-float {
  0%, 100% {
    transform: scale(1) translateY(0);
  }
  50% {
    transform: scale(1.03) translateY(-4px);
  }
}
.Noticias-Inicio .blog-item .item-content {
  position: relative;
  z-index: 1;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 0;
  padding: 1rem 1.2rem 1.15rem !important;
  gap: 0.5rem;
  background: linear-gradient(180deg, var(--color-surface) 0%, #fafcfb 100%);
}
.Noticias-Inicio .blog-item .item-content::before {
  content: "";
  display: block;
  height: 3px;
  width: 2.5rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--color-primary), var(--color-accent));
  margin-bottom: 0.15rem;
  opacity: 0.9;
}
.Noticias-Inicio .blog-item .page-header {
  flex: 1 1 auto;
  margin: 0 !important;
  padding: 0 !important;
  border: none;
}
.Noticias-Inicio .blog-item .page-header h2 {
  font-family: var(--font-family-heading);
  font-size: clamp(1rem, 2.5vw, 1.15rem);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-snug);
  letter-spacing: var(--letter-spacing-tight);
  margin: 0 !important;
}
.Noticias-Inicio .blog-item .page-header h2 a {
  color: var(--color-text);
  text-decoration: none;
  transition: color 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .Noticias-Inicio .blog-item:hover .page-header h2 a {
    color: var(--color-primary-dark);
  }
  .Noticias-Inicio .blog-item .page-header h2 a:hover {
    color: var(--color-primary);
  }
}
.Noticias-Inicio .blog-item .article-info {
  flex-shrink: 0;
  margin: 0 !important;
  margin-top: auto !important;
  padding: 0 !important;
  border: none;
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}
.Noticias-Inicio .blog-item .article-info dd.published {
  margin: 0 !important;
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0.35rem 0.65rem;
  border-radius: var(--radius-md);
  background: var(--color-accent-soft);
  border: 1px solid rgba(7, 137, 48, 0.12);
  width: fit-content;
  max-width: 100%;
  line-height: 1.35;
}
.Noticias-Inicio .blog-item .article-info dd.published .icon-calendar {
  color: var(--color-primary);
}
.Noticias-Inicio .blog-item .article-info dd.published time {
  font-weight: var(--font-weight-medium);
  color: var(--color-text);
}
@media (prefers-reduced-motion: reduce) {
  .Noticias-Inicio .com-content-category-blog__item.blog-item {
    transition: none;
  }
  .Noticias-Inicio .com-content-category-blog__item.blog-item:hover {
    transform: none;
  }
  .Noticias-Inicio .blog-item figure.item-image img {
    animation: none;
    transition: none;
  }
  .Noticias-Inicio .blog-item:hover figure.item-image img {
    transform: none;
  }
}
/* Paginación del listado de noticias (blog de categoría): centrada, aire entre ítems, radios institucionales */
.Noticias-Inicio .com-content-category-blog__navigation {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding-top: 1.5rem;
  padding-bottom: 0.25rem;
}
.Noticias-Inicio .com-content-category-blog__counter.counter {
  float: none !important;
  width: 100%;
  max-width: 100%;
  text-align: center;
  padding: 0 !important;
  margin: 0 !important;
  font-family: var(--font-family-sans);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-muted);
  letter-spacing: var(--letter-spacing-wide);
}
.Noticias-Inicio .com-content-category-blog__pagination {
  width: 100%;
  display: flex;
  justify-content: center;
}
.Noticias-Inicio .com-content-category-blog__pagination .pagination__wrapper {
  display: flex;
  justify-content: center;
  width: 100%;
}
.Noticias-Inicio .com-content-category-blog__pagination ul.pagination {
  margin: 0 !important;
  margin-inline: auto !important;
  padding-left: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  row-gap: 0.5rem;
}
.Noticias-Inicio .com-content-category-blog__pagination .page-item {
  margin: 0;
}
.Noticias-Inicio .com-content-category-blog__pagination .page-link {
  position: relative;
  z-index: 0;
  margin-left: 0;
  margin-right: 0;
  min-width: 2.75rem;
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 0.65rem;
  border-radius: var(--radius-pill);
  font-family: var(--font-family-sans);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
  line-height: 1.2;
  color: var(--color-primary-darker);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-sm);
  transition: color 0.22s ease, background 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}
.Noticias-Inicio .com-content-category-blog__pagination .page-item.active .page-link {
  z-index: 1;
  color: var(--color-text-on-primary);
  background: linear-gradient(145deg, var(--color-primary-light) 0%, var(--color-primary-dark) 55%, var(--color-primary-darker) 100%);
  border-color: var(--color-primary-dark);
  box-shadow: 0 2px 10px rgba(7, 137, 48, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.Noticias-Inicio .com-content-category-blog__pagination .page-item:not(.active):not(.disabled) .page-link:hover {
  color: var(--color-primary);
  background: var(--color-accent-soft);
  border-color: rgba(7, 137, 48, 0.35);
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.Noticias-Inicio .com-content-category-blog__pagination .page-item.disabled .page-link {
  color: var(--color-text-muted);
  background: var(--color-surface-muted);
  border-color: var(--color-border);
  opacity: 0.7;
  cursor: not-allowed;
  box-shadow: none;
  pointer-events: none;
}
.Noticias-Inicio .com-content-category-blog__pagination .page-link:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: var(--outline-offset);
}
.Noticias-Inicio .com-content-category-blog__pagination .page-link .icon-angle-double-left, .Noticias-Inicio .com-content-category-blog__pagination .page-link .icon-angle-left, .Noticias-Inicio .com-content-category-blog__pagination .page-link .icon-angle-right, .Noticias-Inicio .com-content-category-blog__pagination .page-link .icon-angle-double-right {
  color: inherit;
}
/* ========== Seccion de Columna Derecha ========== */
.module-aside table {
  border: none !important;
}
.module-aside {
  position: relative;
  border-radius: var(--radius-pill);
  overflow: hidden;
  margin-bottom: 1.35rem;
  min-width: 0;
  max-width: 100%;
  background: var(--color-surface);
  box-shadow: var(--shadow-sm), 0 12px 28px rgba(0, 92, 51, 0.08);
  transition: box-shadow 0.35s ease, transform 0.35s ease, border-color 0.35s ease;
}
.module-aside:last-child {
  margin-bottom: 0;
}
@media (hover: hover) and (pointer: fine) {
  .module-aside:hover {
    border-color: rgba(7, 137, 48, 0.35);
    box-shadow: var(--shadow-md), 0 16px 36px rgba(0, 92, 51, 0.12);
    transform: translateY(-3px);
  }
}
.module-aside h3 {
  position: relative;
  color: var(--color-text-on-primary);
  font-family: var(--font-family-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-semibold);
  text-align: center;
  letter-spacing: var(--letter-spacing-tight);
  line-height: var(--line-height-tight);
  margin: 0 !important;
  padding: 0.9rem 0 !important;
  background: linear-gradient(145deg, var(--color-primary-light) 0%, var(--color-primary-dark) 55%, var(--color-primary-darker) 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}
.module-aside h3::after {
  content: "";
  position: absolute;
  left: 12%;
  right: 12%;
  bottom: 0;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: linear-gradient(90deg, transparent, var(--color-accent) 35%, var(--color-accent-hover) 65%, transparent);
  opacity: 0.85;
}
.module-aside .mod-custom {
  position: relative;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  background: linear-gradient(180deg, #f6f8f7 0%, var(--color-surface) 40%);
}
.module-aside .mod-custom::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(120% 80% at 50% 0%, rgba(167, 198, 43, 0.06) 0%, transparent 55%);
}
.module-aside p {
  margin: 0 !important;
  line-height: 0;
}
.module-aside img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  box-sizing: border-box;
  transform-origin: center bottom;
  transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  animation: module-aside-img-float 5s ease-in-out infinite;
}
@media (hover: hover) and (pointer: fine) {
  /* Imágenes dentro de tablas: sin zoom global al hover del bloque */
  .module-aside:hover img {
    animation-play-state: paused;
    transform: scale(1.035) translateY(-4px);
  }
  .module-aside:hover table img {
    transform: none;
  }
  .module-aside table td a:hover img {
    transform: scale(1.04);
  }
}
/* Módulos aside con tabla de enlaces (2 columnas): rejilla alineada, sin heredar el “float” del banner */
.module-aside:has(table) .mod-custom {
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  padding: 0.85rem 0.65rem 1rem;
}
.module-aside table {
  width: 100% !important;
  height: auto !important;
  max-width: 100%;
  margin: 0 auto !important;
  border-collapse: separate;
  border-spacing: 0.65rem 0.75rem;
  table-layout: fixed;
}
.module-aside table td {
  width: 50%;
  padding: 0;
  vertical-align: middle !important;
  text-align: center !important;
}
/* Fila final con 3 celdas: reparto equitativo */
.module-aside table tr:last-child td:nth-child(1):nth-last-child(3), .module-aside table tr:last-child td:nth-child(2):nth-last-child(2), .module-aside table tr:last-child td:nth-child(3):nth-last-child(1) {
  width: 33.333%;
}
.module-aside table td a {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: calc(var(--module-aside-table-img-height) + 0.95rem);
  padding: 0.45rem 0.5rem;
  border-radius: var(--radius-md);
  background: var(--color-surface);
  border: 1px solid rgba(7, 137, 48, 0.12);
  box-shadow: var(--shadow-sm);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}
.module-aside table td a:hover {
  border-color: rgba(7, 137, 48, 0.35);
  box-shadow: var(--shadow-md);
  transform: translateY(-2px);
}
.module-aside table img {
  display: block;
  width: auto !important;
  max-width: 100% !important;
  height: var(--module-aside-table-img-height) !important;
  min-height: var(--module-aside-table-img-height) !important;
  max-height: var(--module-aside-table-img-height) !important;
  margin: 0 auto;
  object-fit: contain;
  object-position: center;
  animation: none !important;
  transition: transform 0.28s cubic-bezier(0.33, 1, 0.68, 1) !important;
  transform: none !important;
}
.module-aside table p {
  line-height: normal !important;
}
@keyframes module-aside-img-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .module-aside {
    transition: none;
  }
  .module-aside:hover {
    transform: none !important;
  }
  .module-aside img {
    animation: none;
    transition: none;
  }
  .module-aside:hover img {
    transform: none;
  }
  .module-aside table td a {
    transition: none;
  }
  .module-aside table td a:hover {
    transform: none;
  }
  .module-aside table td a:hover img {
    transform: none !important;
  }
}
/* ========== Seccion de Articulos ========== */
/* Vista artículo individual (Joomla: .com-content-article.item-page) */
.com-content-article.item-page .page-header {
  position: relative;
  margin: 0 0 1.75rem;
  padding-bottom: 1.35rem;
  border-bottom: 1px solid rgba(7, 137, 48, 0.12);
}
.com-content-article.item-page .page-header::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: min(240px, 50%);
  height: 3px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 55%, var(--color-primary-dark) 100%);
}
.com-content-article.item-page .page-header h1, .com-content-article.item-page .page-header h2 {
  margin: 0;
  font-family: var(--font-family-heading);
  font-size: clamp(1.45rem, 3vw, 2.05rem);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
  color: var(--color-primary-darker) !important;
}
.com-content-article.item-page .com-content-article__body {
  font-size: var(--font-size-base);
  line-height: var(--line-height-relaxed);
  color: var(--color-text);
}
.com-content-article.item-page .com-content-article__body > :first-child {
  margin-top: 0;
}
/* Metadatos: fecha, visitas, autor, etc. */
.com-content-article.item-page dl.article-info {
  box-sizing: border-box;
  margin: 1.75rem 0;
  padding: 1rem 1.15rem 1.1rem;
  max-width: 100%;
  border-radius: var(--radius-pill);
  background: linear-gradient(165deg, var(--color-surface-muted) 0%, #fff 100%);
  border: 1px solid rgba(7, 137, 48, 0.1);
  box-shadow: var(--shadow-sm);
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.85rem 1rem;
  align-items: center;
  font-family: var(--font-family-sans);
  color: var(--color-text) !important;
}
.com-content-article.item-page dl.article-info.text-muted {
  --bs-text-opacity: 1;
}
.com-content-article.item-page .article-info-term {
  grid-column: 1 / -1;
  margin: 0;
  padding: 0 0 0.5rem;
  border-bottom: 1px solid rgba(7, 137, 48, 0.08);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  font-family: var(--font-family-heading);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-primary) !important;
}
.com-content-article.item-page dl.article-info dd {
  margin: 0;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-snug);
  color: var(--color-text) !important;
}
.com-content-article.item-page dl.article-info dd [class^="icon-"], .com-content-article.item-page dl.article-info dd [class*=" icon-"] {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: var(--radius-md);
  background: var(--color-accent-soft);
  color: var(--color-primary-dark);
  font-size: 0.95rem;
}
.com-content-article.item-page dl.article-info dd time {
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
}
@media (min-width: 576px) {
  .com-content-article.item-page dl.article-info {
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  }
  .com-content-article.item-page .article-info-term {
    grid-column: 1 / -1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .com-content-article.item-page .page-header::after {
    transition: none;
  }
}
/* ========== Migas de pan (mod_breadcrumbs) — v2: slashes visibles + tarjeta clara ========== */
.mod-breadcrumbs__wrapper {
  /* Lima legible sobre fondo claro (slash siempre visible) */
  --crumb-slash-color: #7d9a2a;
  --crumb-slash-size: 1.08em;
  box-sizing: border-box;
  max-width: 100%;
  margin: 0 0 1.5rem;
  padding: 0;
  font-family: var(--font-family-sans);
}
.mod-breadcrumbs__wrapper *, .mod-breadcrumbs__wrapper *::before, .mod-breadcrumbs__wrapper *::after {
  box-sizing: border-box;
}
.mod-breadcrumbs.breadcrumb {
  --bs-breadcrumb-divider: "/";
  --bs-breadcrumb-divider-color: var(--crumb-slash-color);
  list-style: none;
  margin: 0;
  padding: 0.85rem 1.15rem 0.9rem !important;
  border-radius: 12px;
  background: radial-gradient(120% 180% at 0% 0%, rgba(167, 198, 43, 0.07) 0%, transparent 55%), linear-gradient(180deg, #ffffff 0%, var(--color-surface-muted) 100%);
  border: 1px solid rgba(7, 137, 48, 0.14);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset, 0 8px 28px rgba(0, 92, 51, 0.06);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 0.35rem;
  column-gap: 0;
}
.mod-breadcrumbs.breadcrumb > li {
  float: none !important;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  max-width: 100%;
  min-width: 0;
  font-size: var(--font-size-sm);
  line-height: 1.45;
}
/* Slash entre “Está aquí” / icono y el primer ítem del recorrido (Bootstrap no lo pinta) */
.mod-breadcrumbs__here + .breadcrumb-item::before, .mod-breadcrumbs__divider + .breadcrumb-item::before {
  content: "/" !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  float: none !important;
  padding-left: 0.35rem;
  padding-right: 0.55rem;
  margin: 0;
  color: var(--crumb-slash-color);
  font-weight: var(--font-weight-bold);
  font-size: var(--crumb-slash-size);
  line-height: 1;
  opacity: 0.95;
}
/* Slashes entre ítems .breadcrumb-item (recuperados para flex: sin float) */
.mod-breadcrumbs.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  content: "/" !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  float: none !important;
  padding-left: 0.35rem;
  padding-right: 0.55rem;
  margin: 0;
  color: var(--crumb-slash-color);
  font-weight: var(--font-weight-bold);
  font-size: var(--crumb-slash-size);
  line-height: 1;
  opacity: 0.95;
}
/* “Está aquí:” — pastilla */
.mod-breadcrumbs__here {
  float: none !important;
  display: inline-flex !important;
  align-items: center;
  margin: 0 0.15rem 0 0;
  padding: 0.28rem 0.65rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(7, 137, 48, 0.18);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  color: var(--color-primary-darker);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-xs);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.mod-breadcrumbs__divider {
  float: none !important;
  margin-right: 0.15rem;
}
.mod-breadcrumbs__divider .divider {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 999px;
  background: linear-gradient(145deg, var(--color-accent-soft) 0%, #fff 100%);
  border: 1px solid rgba(7, 137, 48, 0.15);
  color: var(--color-primary-dark);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
/* Enlaces: pastilla suave al hover */
.mod-breadcrumbs__wrapper .pathway {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.5rem;
  margin: -0.2rem -0.35rem;
  color: var(--color-primary) !important;
  font-weight: var(--font-weight-semibold);
  text-decoration: none !important;
  border-radius: 8px;
  transition: color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}
.mod-breadcrumbs__wrapper .pathway:hover {
  color: var(--color-primary-dark) !important;
  background: var(--color-accent-soft);
  box-shadow: 0 0 0 1px rgba(7, 137, 48, 0.12);
}
.mod-breadcrumbs__wrapper .pathway:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: 2px;
}
.mod-breadcrumbs__wrapper .breadcrumb-item:not(.active) a.pathway span {
  color: inherit;
}
.mod-breadcrumbs__wrapper .breadcrumb-item:not(.active):not(:has(a)) span {
  color: var(--color-text-muted);
  font-weight: var(--font-weight-medium);
}
/* Página actual: destacada sin parecer enlace */
.mod-breadcrumbs__wrapper .breadcrumb-item.active span {
  display: inline-block;
  padding: 0.25rem 0.55rem;
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(7, 137, 48, 0.1) 0%, rgba(167, 198, 43, 0.12) 100%);
  border: 1px solid rgba(7, 137, 48, 0.2);
  color: var(--color-primary-darker) !important;
  font-weight: var(--font-weight-bold);
  line-height: 1.35;
}
@media (prefers-reduced-motion: reduce) {
  .mod-breadcrumbs__wrapper .pathway {
    transition-duration: 0.01ms !important;
  }
}
#g-container-main #g-aside {
  padding: 0 !important;
}
.Noticias-Inicio #g-container-main #g-aside {
  padding: 3rem 0 !important;
}
/* ========== Footer institucional (clase .footer-armenia) ========== */
/* Separación del footer respecto al contenido: franja verde/lima + sombra suave */
#g-Footer-GOVCO {
  position: relative;
  background: var(--color-surface) !important;
  box-shadow: 0 -6px 28px rgba(0, 92, 51, 0.07);
}
#g-Footer-GOVCO::before {
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 48%, var(--color-primary-dark) 100%);
}
#g-footer .g-content {
  margin: 0 !important;
}
.footer-armenia {
  --footer-muted: #6b7280;
  --footer-bar-border: #e8ecf0;
  --footer-mail: #1565c0;
  background: var(--color-surface);
  color: var(--color-text);
  font-family: var(--font-family-sans);
}
.footer-armenia__inner {
  box-sizing: border-box;
  max-width: 1700px;
  margin: 0 auto;
  padding: 2.5rem 1.25rem 2rem;
  display: grid;
  gap: 2rem;
  align-items: start;
}
@media (min-width: 992px) {
  .footer-armenia__inner {
    grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
    gap: 3rem;
    padding: 3rem 1.5rem 2.5rem;
  }
}
.footer-armenia__logo-row {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.footer-armenia__logo-img {
  width: 300px;
  height: auto;
  object-fit: contain;
  flex-shrink: 0;
}
.footer-armenia__titles {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  line-height: 1.15;
}
.footer-armenia__kicker {
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text);
  letter-spacing: 0.02em;
}
.footer-armenia__name {
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.footer-armenia__social-label {
  margin: 1.35rem 0 0.75rem;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-darker);
}
.footer-armenia__social {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer-armenia__social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  color: #fff;
  transition: transform 0.28s cubic-bezier(0.34, 1.3, 0.64, 1), box-shadow 0.28s ease, filter 0.28s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}
.footer-armenia__social-link:hover {
  transform: translateY(-4px) scale(1.06);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  filter: brightness(1.05);
  color: var(--color-surface) !important;
}
.footer-armenia__social-link:active {
  transform: translateY(-1px) scale(1.02);
}
.footer-armenia__social-link:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}
.footer-armenia__social-link--facebook {
  background: #1877f2;
}
.footer-armenia__social-link--instagram {
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}
.footer-armenia__social-link--youtube {
  background: #ff0000;
}
.footer-armenia__social-link--x {
  background: #0f1419;
  color: #fff;
}
.footer-armenia__contact {
  min-width: 0;
}
.footer-armenia__heading {
  margin: 0 0 1.25rem;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-darker);
  line-height: var(--line-height-snug);
}
.footer-armenia__grid {
  display: grid;
  gap: 1.35rem;
  min-width: 0;
}
@media (min-width: 768px) {
  .footer-armenia__grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  }
}
.footer-armenia__card {
  display: flex;
  gap: 0.85rem;
  align-items: flex-start;
  min-width: 0;
  padding: 1rem 1.1rem;
  border-radius: var(--radius-pill);
  background: linear-gradient(145deg, var(--color-surface-muted) 0%, #fff 100%);
  border: 1px solid rgba(7, 137, 48, 0.08);
  box-shadow: var(--shadow-sm);
  transition: box-shadow 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.footer-armenia__card:hover {
  box-shadow: var(--shadow-md);
  border-color: rgba(7, 137, 48, 0.15);
  transform: translateY(-2px);
}
.footer-armenia__card-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: var(--color-primary);
  background: var(--color-accent-soft);
  border-radius: var(--radius-md);
}
/* Evita que correos largos desborden el flex (min-width: auto por defecto) */
.footer-armenia__card > div {
  flex: 1 1 0;
  min-width: 0;
}
.footer-armenia__card-label {
  margin: 0 0 0.35rem;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-darker);
}
.footer-armenia__card-text {
  margin: 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-relaxed);
  color: var(--color-text);
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}
.footer-armenia__mail {
  color: var(--footer-mail);
  font-weight: var(--font-weight-medium);
  text-decoration: none;
  display: inline-block;
  max-width: 100%;
  vertical-align: top;
  overflow-wrap: anywhere;
  word-break: break-word;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 0% 1px;
  transition: color 0.2s ease, background-size 0.3s ease;
}
.footer-armenia__mail:hover, .footer-armenia__mail:focus-visible {
  color: var(--color-link-hover);
  background-size: 100% 1px;
}
.footer-armenia__bar {
  box-sizing: border-box;
  max-width: 1200px;
  margin: 0 auto;
  padding: 1.1rem 1.25rem 1.5rem;
  border-top: 1px solid var(--footer-bar-border);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.footer-armenia__copyright {
  margin: 0;
  font-size: var(--font-size-xs);
  color: var(--footer-muted);
  line-height: var(--line-height-normal);
}
.footer-armenia__legal {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem 0.75rem;
  font-size: var(--font-size-xs);
}
.footer-armenia__sep {
  color: var(--color-border-strong);
  user-select: none;
}
.footer-armenia__legal-link {
  color: var(--color-primary);
  font-weight: var(--font-weight-medium);
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 0% 1px;
  transition: color 0.2s ease, background-size 0.3s ease;
}
.footer-armenia__legal-link:hover, .footer-armenia__legal-link:focus-visible {
  color: var(--color-primary-dark);
  background-size: 100% 1px;
}
@media (max-width: 767.98px) {
  .footer-armenia__bar {
    flex-direction: column;
    text-align: center;
    justify-content: center;
  }
  .footer-armenia__legal {
    justify-content: center;
  }
}
@media (prefers-reduced-motion: reduce) {
  .footer-armenia__social-link, .footer-armenia__card, .footer-armenia__mail, .footer-armenia__legal-link {
    transition-duration: 0.01ms !important;
  }
  .footer-armenia__social-link:hover, .footer-armenia__card:hover {
    transform: none;
  }
}
/* ========== Mapa del sitio (HTML en artículo — clase raíz .armenia-sitemap) ========== */
.armenia-sitemap {
  box-sizing: border-box;
  max-width: 1200px;
  margin: 0 auto 2.5rem;
  padding: 0 0.25rem;
  font-family: var(--font-family-sans);
  color: var(--color-text);
}
.armenia-sitemap *, .armenia-sitemap *::before, .armenia-sitemap *::after {
  box-sizing: border-box;
}
.armenia-sitemap__header {
  position: relative;
  margin-bottom: 2rem;
  padding-bottom: 1.35rem;
  border-bottom: 1px solid rgba(7, 137, 48, 0.12);
}
.armenia-sitemap__header::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: min(220px, 45%);
  height: 3px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 55%, var(--color-primary-dark) 100%);
}
.armenia-sitemap__title {
  margin: 0 0 0.65rem;
  font-family: var(--font-family-heading);
  font-size: clamp(1.5rem, 3.2vw, 2rem);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  color: var(--color-primary-darker);
  letter-spacing: var(--letter-spacing-tight);
}
.armenia-sitemap__lead {
  margin: 0;
  max-width: 52ch;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-relaxed);
  color: var(--color-text-muted);
}
.armenia-sitemap__grid {
  display: grid;
  gap: 1.25rem;
}
@media (min-width: 640px) {
  .armenia-sitemap__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.35rem;
  }
}
@media (min-width: 1024px) {
  .armenia-sitemap__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}
.armenia-sitemap__column {
  min-width: 0;
  padding: 1.15rem 1.2rem 1.25rem;
  border-radius: var(--radius-pill);
  background: linear-gradient(160deg, var(--color-surface) 0%, var(--color-surface-muted) 100%);
  border: 1px solid rgba(7, 137, 48, 0.1);
  box-shadow: var(--shadow-sm);
  transition: box-shadow 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}
.armenia-sitemap__column:hover {
  box-shadow: var(--shadow-md);
  border-color: rgba(7, 137, 48, 0.18);
  transform: translateY(-2px);
}
.armenia-sitemap__heading {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 0.85rem;
  padding-bottom: 0.65rem;
  border-bottom: 1px solid rgba(7, 137, 48, 0.1);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  font-family: var(--font-family-heading);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-primary);
  line-height: var(--line-height-snug);
}
.armenia-sitemap__heading-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: var(--radius-md);
  background: var(--color-accent-soft);
  color: var(--color-primary-dark);
}
.armenia-sitemap__heading-icon svg {
  display: block;
  width: 16px;
  height: 16px;
}
.armenia-sitemap__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.armenia-sitemap__list > li {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.armenia-sitemap__list > li:last-child {
  border-bottom: 0;
}
.armenia-sitemap__link {
  display: block;
  padding: 0.55rem 0;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text) !important;
  text-decoration: none !important;
  line-height: var(--line-height-snug);
  transition: color 0.2s ease, padding-left 0.2s ease;
  border-radius: var(--radius-sm);
}
.armenia-sitemap__link:hover {
  color: var(--color-primary) !important;
  padding-left: 0.35rem;
}
.armenia-sitemap__link:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: 2px;
}
.armenia-sitemap__sublist {
  list-style: none;
  margin: 0 0 0.35rem 0.65rem;
  padding: 0 0 0 0.75rem;
  border-left: 2px solid var(--color-accent-soft);
}
.armenia-sitemap__sublist .armenia-sitemap__link {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-regular);
  padding: 0.4rem 0;
  color: var(--color-text-muted) !important;
}
.armenia-sitemap__sublist .armenia-sitemap__link:hover {
  color: var(--color-primary) !important;
}
@media (prefers-reduced-motion: reduce) {
  .armenia-sitemap__column {
    transition-duration: 0.01ms !important;
  }
  .armenia-sitemap__column:hover {
    transform: none;
  }
  .armenia-sitemap__link {
    transition-duration: 0.01ms !important;
  }
  .armenia-sitemap__link:hover {
    padding-left: 0;
  }
}
.armenia-politicas-norm {
  box-sizing: border-box;
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 1rem 2.5rem;
  font-family: var(--font-family-sans);
  color: var(--color-text);
}
.armenia-politicas-norm *, .armenia-politicas-norm *::before, .armenia-politicas-norm *::after {
  box-sizing: border-box;
}
.armenia-politicas-norm__hero {
  text-align: center;
  margin-bottom: 2rem;
  padding: 2rem 1.5rem;
  background: linear-gradient(165deg, var(--color-surface) 0%, rgba(7, 137, 48, 0.04) 55%, var(--color-surface) 100%);
  border-radius: var(--radius-pill);
  border: 1px solid rgba(7, 137, 48, 0.12);
  box-shadow: 0 8px 28px rgba(0, 40, 25, 0.06);
}
.armenia-politicas-norm__page-title {
  margin: 0 0 0.75rem;
  font-family: var(--font-family-heading);
  font-size: clamp(var(--font-size-2xl), 4vw, var(--font-size-3xl));
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-darker);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
}
.armenia-politicas-norm__intro {
  margin: 0 auto 1.25rem;
  max-width: 44rem;
  font-size: var(--font-size-md);
  line-height: var(--line-height-relaxed);
  color: var(--color-text-muted);
}
.armenia-politicas-norm__featured {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  margin-top: 0.25rem;
  padding: 0.75rem 1.35rem;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-on-primary);
  text-decoration: none !important;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  box-shadow: 0 4px 14px rgba(7, 137, 48, 0.28);
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}
.armenia-politicas-norm__featured:hover {
  filter: brightness(1.06);
  box-shadow: 0 6px 20px rgba(7, 137, 48, 0.35);
  color: var(--color-text-on-primary) !important;
}
.armenia-politicas-norm__featured:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: 3px;
}
.armenia-politicas-norm__grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
  gap: 1.25rem;
}
.armenia-politicas-norm__cell {
  margin: 0;
  padding: 0;
  display: flex;
  min-height: 0;
}
.armenia-politicas-norm__card {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  background: var(--color-surface);
  border-radius: var(--radius-pill);
  overflow: hidden;
  border: 1px solid rgba(7, 137, 48, 0.1);
  box-shadow: 0 4px 16px rgba(0, 40, 25, 0.07);
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}
.armenia-politicas-norm__card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0, 40, 25, 0.12);
}
.armenia-politicas-norm__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4.5rem;
  font-size: 1.85rem;
  line-height: 1;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  color: var(--color-text-on-primary);
}
.armenia-politicas-norm__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 1.25rem 1.25rem 1.35rem;
}
.armenia-politicas-norm__title {
  margin: 0 0 1rem;
  font-family: var(--font-family-heading);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
  line-height: var(--line-height-snug);
}
.armenia-politicas-norm__link {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary) !important;
  text-decoration: none !important;
  transition: color 0.2s ease, gap 0.2s ease;
}
.armenia-politicas-norm__link:hover {
  color: var(--color-link-hover) !important;
  gap: 0.45rem;
}
.armenia-politicas-norm__link:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: 2px;
  border-radius: var(--radius-sm);
}
@media (max-width: 639px) {
  .armenia-politicas-norm {
    padding: 1.25rem 0.85rem 2rem;
  }
  .armenia-politicas-norm__hero {
    padding: 1.5rem 1rem;
  }
  .armenia-politicas-norm__grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .armenia-politicas-norm__card, .armenia-politicas-norm__featured, .armenia-politicas-norm__link {
    transition-duration: 0.01ms !important;
  }
  .armenia-politicas-norm__card:hover {
    transform: none;
  }
  .armenia-politicas-norm__link:hover {
    gap: 0.25rem;
  }
}
.armenia-manual-contratacion {
  box-sizing: border-box;
  max-width: 1000px;
  margin: 0 auto;
  padding: 2rem 1rem 2.5rem;
  font-family: var(--font-family-sans);
  color: var(--color-text);
}
.armenia-manual-contratacion *, .armenia-manual-contratacion *::before, .armenia-manual-contratacion *::after {
  box-sizing: border-box;
}
.armenia-manual-contratacion__hero {
  text-align: center;
  margin-bottom: 2.5rem;
}
.armenia-manual-contratacion__title {
  position: relative;
  display: inline-block;
  margin: 0 0 0.5rem;
  font-family: var(--font-family-heading);
  font-size: clamp(var(--font-size-2xl), 4vw, 2.5rem);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-darker);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
}
.armenia-manual-contratacion__title::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  width: 5rem;
  height: 4px;
  background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  transform: translateX(-50%);
  border-radius: 2px;
}
.armenia-manual-contratacion__lead {
  max-width: 50rem;
  margin: 1.75rem auto 0;
  font-size: var(--font-size-md);
  line-height: var(--line-height-relaxed);
  color: var(--color-text-muted);
}
.armenia-manual-contratacion__doc {
  margin: 0 0 2rem;
  background: var(--color-surface);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--shadow-md);
  border: 1px solid rgba(7, 137, 48, 0.1);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.armenia-manual-contratacion__doc:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 40, 25, 0.12);
}
.armenia-manual-contratacion__doc-head {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.35rem 1.5rem;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  color: var(--color-text-on-primary);
}
.armenia-manual-contratacion__doc-icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.15);
  color: inherit;
}
.armenia-manual-contratacion__doc-icon svg {
  display: block;
}
.armenia-manual-contratacion__doc-title {
  margin: 0;
  flex: 1;
  min-width: 0;
  font-family: var(--font-family-heading);
  font-size: clamp(var(--font-size-lg), 2.5vw, var(--font-size-xl));
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-snug);
  color: inherit;
}
.armenia-manual-contratacion__doc-body {
  padding: 1.75rem 1.5rem 2rem;
}
.armenia-manual-contratacion__doc-desc {
  margin: 0 0 1.75rem;
  font-size: var(--font-size-md);
  line-height: var(--line-height-relaxed);
  color: var(--color-text);
}
.armenia-manual-contratacion__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.armenia-manual-contratacion__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border-radius: var(--radius-pill);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  font-family: var(--font-family-sans);
  text-decoration: none !important;
  color: var(--color-text-on-primary) !important;
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  box-shadow: 0 4px 14px rgba(7, 137, 48, 0.25);
  transition: var(--btn-transition);
  cursor: pointer;
  border: none;
}
.armenia-manual-contratacion__btn:hover {
  filter: brightness(1.05);
  box-shadow: 0 6px 18px rgba(7, 137, 48, 0.32);
  color: var(--color-text-on-primary) !important;
  transform: translateY(-1px);
}
.armenia-manual-contratacion__btn:focus-visible {
  outline: var(--outline-width) solid var(--color-focus);
  outline-offset: 3px;
}
.armenia-manual-contratacion__btn-icon {
  display: flex;
  flex-shrink: 0;
}
.armenia-manual-contratacion__btn-icon svg {
  display: block;
}
.armenia-manual-contratacion__info {
  margin-top: 2.5rem;
  padding: 1.75rem 1.5rem 2rem;
  background: var(--color-surface);
  border-radius: 12px;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--color-border);
}
.armenia-manual-contratacion__info-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0 0 1rem;
  padding-bottom: 0.75rem;
  font-family: var(--font-family-heading);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-primary-darker);
  border-bottom: 2px solid var(--color-surface-alt);
}
.armenia-manual-contratacion__info-icon {
  flex-shrink: 0;
  width: 1.35rem;
  height: 1.35rem;
  color: var(--color-primary);
}
.armenia-manual-contratacion__info-text {
  margin: 0 0 1rem;
  font-size: var(--font-size-base);
  line-height: var(--line-height-relaxed);
  color: var(--color-text);
}
.armenia-manual-contratacion__info-text:last-child {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .armenia-manual-contratacion {
    padding: 1.5rem 0.85rem 2rem;
  }
  .armenia-manual-contratacion__doc-head {
    flex-wrap: wrap;
    padding: 1.25rem 1.15rem;
  }
  .armenia-manual-contratacion__doc-title {
    flex-basis: 100%;
    padding-left: 0;
  }
  .armenia-manual-contratacion__actions {
    flex-direction: column;
  }
  .armenia-manual-contratacion__btn {
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .armenia-manual-contratacion__doc, .armenia-manual-contratacion__btn {
    transition-duration: 0.01ms !important;
  }
  .armenia-manual-contratacion__doc:hover, .armenia-manual-contratacion__btn:hover {
    transform: none;
  }
}
/*# sourceMappingURL=custom_13.css.map */