/* Variables globales del tema */
:root {
  --mm-green: var(--wp--preset--color--mm-green, #4ccc8d);
  --mm-green-dark: var(--wp--preset--color--mm-green-dark, #004735);
  --mm-mint: var(--wp--preset--color--mm-mint, #ddf7eb);
  --mm-cream: var(--wp--preset--color--mm-cream, #f7f1e5);
  --mm-coral: var(--wp--preset--color--mm-coral, #ff5f4a);
  --mm-yellow: var(--wp--preset--color--mm-yellow, #ffd84d);
  --mm-violet: var(--wp--preset--color--mm-violet, #6e53ff);
  --mm-ink: var(--wp--preset--color--mm-ink, #101614);
  --mm-white: var(--wp--preset--color--mm-white, #fff);
  --mm-shadow: 0 24px 70px rgba(0, 71, 53, 0.12);
  --mm-radius-sm: 18px;
  --mm-radius-md: 28px;
  --mm-radius-lg: 42px;
}

html {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeLegibility;
}

/* Fuente de interfaz*/
body,
button,
input,
select,
textarea {
  font-family:
    Raleway,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

/* Fuente de lectura*/

p,
li,
figcaption,
.wp-block-post-excerpt,
.wp-block-post-date,
.wp-block-post-terms,
.mm-news-card__excerpt,
.mm-persona-card__excerpt {
  font-family:
    Roboto,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

/* Sin scroll horizontal */
:where(.wp-site-blocks) > * {
  margin-block-start: 0;
}

.wp-site-blocks {
  overflow-x: clip;
}

/*Tamaño del logo */

.wp-block-site-logo img,
.custom-logo {
  max-height: 60px;
  width: auto;
}

/* Fuentes */
@font-face {
  font-family: "GT Super Display Sup";
  src: url("../fonts/GT-Super-Display-Super.woff") format("woff");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

/* ================================================
   CABECERA — mm-site-header
   ================================================ */

.mm-site-header {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid color-mix(in srgb, var(--mm-green-dark) 10%, transparent);
  position: sticky;
  top: 0;
  z-index: 100;
}

.admin-bar .mm-site-header {
  top: 32px;
}

.mm-site-header .wp-block-navigation__container {
  gap: clamp(0.75rem, 1.8vw, 1.4rem);
}

.mm-site-header .wp-block-navigation a {
  text-decoration: none;
}

.mm-site-header .wp-block-navigation a:hover,
.mm-site-header .wp-block-navigation .current-menu-item > a {
  color: var(--mm-green-dark);
  text-decoration: underline;
  text-decoration-color: var(--mm-green);
  text-decoration-thickness: 0.22em;
  text-underline-offset: 0.35em;
}

/* Cabecera con funcion sticky */
header.wp-block-template-part:has(.mm-site-header) {
  position: sticky;
  top: 0;
  z-index: 100;
}

.mm-site-header .wp-block-navigation__container {
  gap: clamp(0.5rem, 1.2vw, 1rem);
  font-size: 0.65rem;
}

/* Sin subrayado en todo el menú */
.mm-site-header .wp-block-navigation a {
  text-decoration: none !important;
}

/* Menú principal — color base */
.mm-site-header .wp-block-navigation > ul > li > a.wp-block-navigation-item__content {
  color: var(--mm-ink);
  transition: color 150ms ease;
}

/* Menú principal — hover y página activa */
.mm-site-header .wp-block-navigation > ul > li:hover > a.wp-block-navigation-item__content,
.mm-site-header .wp-block-navigation > ul > li.current-menu-item > a.wp-block-navigation-item__content,
.mm-site-header .wp-block-navigation > ul > li.current-menu-ancestor > a.wp-block-navigation-item__content {
  color: var(--mm-green) !important;
  text-decoration: none !important;
}

/* ------------------------------------------------
   Submenú desplegable
   ------------------------------------------------ */
.mm-site-header .wp-block-navigation__submenu-container {
  background: var(--mm-white);
  border: 1px solid color-mix(in srgb, var(--mm-green) 10%, transparent);
  box-shadow: var(--mm-shadow);
  min-width: 260px;
}

/* Ítems del submenú — reposo */
.mm-site-header .wp-block-navigation__submenu-container li a.wp-block-navigation-item__content {
  display: block;
  color: var(--mm-green) !important;
  font-weight: 600;
  text-decoration: none !important;
  background: transparent;
  transition:
    background 150ms ease,
    color 150ms ease;
}

/* Ítems del submenú — hover */
.mm-site-header .wp-block-navigation__submenu-container li:hover > a.wp-block-navigation-item__content {
  background: var(--mm-green) !important;
  color: var(--mm-white) !important;
}

/* El span del label hereda el color */
.mm-site-header
  .wp-block-navigation__submenu-container
  li:hover
  > a.wp-block-navigation-item__content
  .wp-block-navigation-item__label {
  color: var(--mm-white) !important;
}
/* El li ocupa todo el ancho */
.mm-site-header .wp-block-navigation__submenu-container li {
  display: block;
  width: 100%;
}

/* El enlace ocupa todo el ancho del li */
.mm-site-header .wp-block-navigation__submenu-container li a.wp-block-navigation-item__content {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 0.75rem 1.2rem;
  color: var(--mm-green) !important;
  font-weight: 600;
  text-decoration: none !important;
  background: transparent;
  transition:
    background 150ms ease,
    color 150ms ease;
}

/* Hover ocupa todo el ancho */
.mm-site-header .wp-block-navigation__submenu-container li:hover > a.wp-block-navigation-item__content {
  background: var(--mm-green) !important;
  color: var(--mm-white) !important;
  width: 100%;
}
/* Flecha del submenú anidado dentro de la franja */
.mm-site-header .wp-block-navigation__submenu-container li .wp-block-navigation-submenu__toggle {
  position: absolute;
  right: 0.8rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 1;
  background: transparent;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
}

/* Flecha blanca en hover */
.mm-site-header .wp-block-navigation__submenu-container li:hover > .wp-block-navigation-submenu__toggle svg path {
  stroke: var(--mm-white) !important;
}

/* Submenú de segundo nivel — mismo estilo que el primero */
.mm-site-header .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container {
  box-shadow: var(--mm-shadow);
  padding: 0.4rem 0;
}

.mm-site-header
  .wp-block-navigation__submenu-container
  .wp-block-navigation__submenu-container
  li
  a.wp-block-navigation-item__content {
  color: var(--mm-green) !important;
  background: var(--mm-white);
}

.mm-site-header
  .wp-block-navigation__submenu-container
  .wp-block-navigation__submenu-container
  li:hover
  > a.wp-block-navigation-item__content {
  background: var(--mm-green) !important;
  color: var(--mm-white) !important;
}

.mm-site-header .wp-block-social-links.is-style-logos-only .wp-block-social-link a:hover {
  color: var(--mm-green) !important;
}

.mm-site-header .wp-block-social-links.is-style-logos-only .wp-block-social-link a:hover svg {
  fill: var(--mm-green) !important;
  color: var(--mm-green) !important;
}

.mm-site-header .wp-block-site-logo img {
  transition: max-height 300ms ease;
}

.mm-site-header.is-scrolled .wp-block-site-logo img {
  max-height: 36px !important;
}

/* ------------------------------------------------
   Responsive
   ------------------------------------------------ */
@media (max-width: 900px) {
  .admin-bar .mm-site-header {
    top: 46px;
  }
}

@media (max-width: 640px) {
  .mm-site-header {
    position: relative;
  }
  .admin-bar .mm-site-header {
    top: 0;
  }
}

/* ------------------------------------------------
   Footer
   ------------------------------------------------ */

.mm-site-footer {
  margin-bottom: 0 !important;
}

.mm-site-footer a {
  color: var(--mm-white);
}

.mm-site-footer .wp-block-separator {
  border-color: rgba(255, 255, 255, 0.26);
}

.mm-site-footer .wp-block-list {
  list-style: none !important;
  padding-left: 0 !important;
  text-decoration: none !important;
  line-height: 2.7;
  margin-bottom: 0.8rem;
}

.mm-site-footer .wp-block-list a,
.mm-site-footer .wp-block-list a:hover,
.mm-site-footer ul li a {
  text-decoration: none !important;
  color: #ffffff !important;
}

.mm-site-footer .wp-block-social-link {
  position: relative;
}

.mm-site-footer .wp-block-social-link a:hover::after {
  opacity: 1;
}

footer.wp-block-template-part {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.mm-hero {
  isolation: isolate;
  overflow: hidden;
  position: relative;
}

.mm-hero::before,
.mm-hero::after {
  content: "";
  border-radius: 999px;
  position: absolute;
  z-index: -1;
}

.mm-hero::before {
  background: var(--mm-yellow);
  height: 18rem;
  right: -7rem;
  top: -4rem;
  width: 18rem;
}

.mm-hero::after {
  background: var(--mm-mint);
  bottom: -8rem;
  height: 28rem;
  left: -12rem;
  width: 28rem;
}

.mm-hero__title strong,
.mm-accent {
  color: var(--mm-green-dark);
  text-decoration: underline;
  text-decoration-color: var(--mm-green);
  text-decoration-thickness: 0.18em;
  text-underline-offset: 0.14em;
}

.mm-kicker,
.mm-persona-card__label,
.mm-news-card__date,
.mm-card-kicker {
  color: var(--mm-green-dark);
  font-family: Raleway, sans-serif;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.09em;
  line-height: 1.2;
  margin: 0 0 0.5rem;
  text-transform: uppercase;
}

.mm-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mm-pill-list li,
.mm-pill {
  background: var(--mm-mint);
  border-radius: 999px;
  color: var(--mm-green-dark);
  display: inline-flex;
  font-weight: 800;
  padding: 0.45rem 0.8rem;
}

.is-style-mm-card,
.mm-card,
.mm-news-card,
.mm-persona-card,
.wp-block-group.is-style-mm-card {
  background: var(--mm-white);
  border: 1px solid color-mix(in srgb, var(--mm-green-dark) 12%, transparent);
  border-radius: var(--mm-radius-md);
  box-shadow: var(--mm-shadow);
  overflow: hidden;
}

.wp-block-group.is-style-mm-card {
  padding: clamp(1rem, 2vw, 2rem);
}

.wp-block-group.is-style-mm-highlight {
  background: var(--mm-mint);
  border-radius: var(--mm-radius-lg);
  padding: clamp(1.5rem, 4vw, 4rem);
  position: relative;
}

.wp-block-group.is-style-mm-highlight::after {
  content: "+";
  color: var(--mm-green-dark);
  font-size: clamp(4rem, 12vw, 10rem);
  font-weight: 900;
  line-height: 0.7;
  opacity: 0.12;
  position: absolute;
  right: clamp(1rem, 4vw, 3rem);
  top: clamp(1rem, 4vw, 3rem);
}

.wp-block-columns.is-style-mm-equal-cards {
  align-items: stretch !important;
}

.wp-block-columns.is-style-mm-equal-cards > .wp-block-column > .wp-block-group {
  height: 100%;
}

.wp-block-button.is-style-mm-solid .wp-block-button__link,
.wp-block-button .wp-block-button__link {
  box-shadow: 0 10px 26px rgba(0, 71, 53, 0.18);
  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    background-color 160ms ease;
}

.wp-block-button.is-style-mm-solid .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:hover {
  background: color-mix(in srgb, var(--mm-green-dark) 88%, black);
  transform: translateY(-2px);
}

.wp-block-button.is-style-mm-outline .wp-block-button__link {
  background: transparent;
  border: 2px solid var(--mm-green-dark);
  color: var(--mm-green-dark);
  box-shadow: none;
}

.wp-block-button.is-style-mm-outline .wp-block-button__link:hover {
  background: var(--mm-green-dark);
  color: var(--mm-white);
}

.wp-block-button.is-style-mm-secondary .wp-block-button__link {
  background: var(--mm-mint);
  color: var(--mm-green-dark);
  box-shadow: none;
}

.wp-block-button.is-style-mm-solid .wp-block-button__link,
.wp-block-button .wp-block-button__link {
  background-color: var(--mm-green) !important;
  color: var(--mm-white) !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  border-radius: 4px !important;
  box-shadow: 0 10px 26px rgba(0, 71, 53, 0.18);
  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    background-color 160ms ease;
}

.wp-block-button.is-style-mm-solid .wp-block-button__link,
.wp-block-button .wp-block-button__link {
  background-color: var(--mm-green) !important;
  color: var(--mm-white) !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  border-radius: 4px !important;
  box-shadow: 0 10px 26px rgba(0, 71, 53, 0.18);
  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    background-color 160ms ease;
}

.wp-block-image.is-style-mm-rounded img {
  border-radius: var(--mm-radius-lg);
  box-shadow: var(--mm-shadow);
}

.mm-section-band {
  background: var(--mm-cream);
  border-radius: var(--mm-radius-lg);
}

.mm-news-grid,
.mm-personas {
  display: grid;
  gap: clamp(1rem, 2vw, 1.5rem);
}

.mm-news-grid--cols-1,
.mm-personas--cols-1 {
  grid-template-columns: 1fr;
}
.mm-news-grid--cols-2,
.mm-personas--cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mm-news-grid--cols-3,
.mm-personas--cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.mm-news-grid--cols-4,
.mm-personas--cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mm-news-card,
.mm-persona-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.mm-news-card__media,
.mm-persona-card__media {
  background: var(--mm-mint);
  display: block;
  overflow: hidden;
}

.mm-news-card__media img,
.mm-persona-card__image {
  aspect-ratio: 4 / 3;
  display: block;
  height: auto;
  object-fit: cover;
  transition: transform 220ms ease;
  width: 100%;
}

.mm-persona-card__image {
  aspect-ratio: 1 / 1;
}

.mm-news-card:hover img,
.mm-persona-card:hover img {
  transform: scale(1.035);
}

.mm-persona-card__placeholder {
  align-items: center;
  aspect-ratio: 1 / 1;
  background: linear-gradient(135deg, var(--mm-green), var(--mm-green-dark));
  color: var(--mm-white);
  display: flex;
  font-family: Raleway, sans-serif;
  font-size: clamp(2rem, 6vw, 4rem);
  font-weight: 900;
  justify-content: center;
  width: 100%;
}

.mm-news-card__content,
.mm-persona-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: clamp(1rem, 1.5vw, 1.5rem);
}

.mm-news-card__title,
.mm-persona-card__title {
  font-size: clamp(1.15rem, 1rem + 0.55vw, 1.5rem);
  letter-spacing: -0.03em;
  line-height: 1.06;
  margin: 0 0 0.65rem;
}

.mm-news-card__title a,
.mm-persona-card__title a {
  color: var(--mm-green-dark);
  text-decoration: none;
}

.mm-news-card__title a:hover,
.mm-persona-card__title a:hover {
  text-decoration: underline;
  text-decoration-color: var(--mm-green);
  text-decoration-thickness: 0.18em;
  text-underline-offset: 0.18em;
}

.mm-persona-card__role {
  color: var(--mm-green-dark);
  font-family: Raleway, sans-serif;
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.mm-persona-card__excerpt,
.mm-news-card__excerpt {
  color: color-mix(in srgb, var(--mm-ink) 78%, white);
  font-size: 0.96rem;
  line-height: 1.52;
}

.mm-persona-card__excerpt p,
.mm-news-card__excerpt p {
  margin: 0;
}

.mm-persona-card__contact {
  margin-top: auto;
}

.mm-empty-state {
  background: var(--mm-mint);
  border-radius: var(--mm-radius-sm);
  color: var(--mm-green-dark);
  font-weight: 800;
  grid-column: 1 / -1;
  padding: 1rem;
}

.mm-breadcrumb-like {
  color: var(--mm-green-dark);
  font-weight: 800;
}

.mm-stat {
  align-items: flex-start;
  display: flex;
  gap: 0.75rem;
}

.mm-stat strong {
  color: var(--mm-green-dark);
  font-size: clamp(2rem, 5vw, 4rem);
  letter-spacing: -0.06em;
  line-height: 0.9;
}

.mm-stat span {
  display: block;
  font-family: Roboto, sans-serif;
  line-height: 1.3;
  max-width: 14rem;
}

.mm-color-strip {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.mm-color-strip > * {
  border-radius: 999px;
  min-height: 0.6rem;
}

.mm-color-strip > :nth-child(1) {
  background: var(--mm-green);
}
.mm-color-strip > :nth-child(2) {
  background: var(--mm-yellow);
}
.mm-color-strip > :nth-child(3) {
  background: var(--mm-coral);
}
.mm-color-strip > :nth-child(4) {
  background: var(--mm-violet);
}
.mm-color-strip > :nth-child(5) {
  background: var(--mm-green-dark);
}

.wp-block-post-featured-image img {
  border-radius: var(--mm-radius-lg);
}

.wp-block-query .wp-block-post-template {
  gap: clamp(1rem, 2vw, 1.5rem);
}

.wp-block-query .wp-block-post {
  background: var(--mm-white);
  border: 1px solid color-mix(in srgb, var(--mm-green-dark) 12%, transparent);
  border-radius: var(--mm-radius-md);
  box-shadow: var(--mm-shadow);
  padding: clamp(1rem, 2vw, 1.5rem);
}

@media (max-width: 900px) {
  .mm-news-grid--cols-3,
  .mm-news-grid--cols-4,
  .mm-personas--cols-3,
  .mm-personas--cols-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-bar .mm-site-header {
    top: 46px;
  }
}

@media (max-width: 640px) {
  .mm-news-grid,
  .mm-personas,
  .mm-news-grid--cols-2,
  .mm-news-grid--cols-3,
  .mm-news-grid--cols-4,
  .mm-personas--cols-2,
  .mm-personas--cols-3,
  .mm-personas--cols-4 {
    grid-template-columns: 1fr;
  }

  .mm-site-header {
    position: relative;
  }

  .admin-bar .mm-site-header {
    top: 0;
  }
}

@supports not (color: color-mix(in srgb, white, black)) {
  .mm-site-header,
  .mm-card,
  .mm-news-card,
  .mm-persona-card,
  .wp-block-group.is-style-mm-card,
  .wp-block-query .wp-block-post {
    border-color: rgba(0, 71, 53, 0.12);
  }
}
