/*
Theme Name:   Astra Child – Alnutips
Description:  Tema hijo de Astra para Alnutips Cooperativa
Template:     astra
Version:      1.0.0
Text Domain:  astra-child-alnutips
*/

/* ============================================================
   === SISTEMA TIPOGRÁFICO ALNUTIPS ===
   Sistema dual: Lora (narrativo/emocional) + Montserrat (funcional)
   Aplicado: 2026-05-06
   Lora    → H1, heroes, blockquotes, titulares emocionales
   Montserrat → H2–H6, body, labels, nav, botones, precios, forms
   ============================================================ */


/* ── 1. BASE — BODY & GLOBAL ──────────────────────────────────
   ANTES: 'Source Sans Pro' 400 17px / 1.65em
   DESPUÉS: Montserrat 400 16px / 1.75
   ─────────────────────────────────────────────────────────── */
body,
button,
input,
select,
textarea {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}

p {
  margin-bottom: 1.4em;
}


/* ── 2. HEADINGS GLOBALES ─────────────────────────────────────
   H1 → Lora 700 (función narrativa/emocional)
   H2 → Montserrat 700 26px / 1.3
   H3 → Montserrat 600 17px / 1.4
   H4–H6 → Montserrat 600 / 1.4
   ANTES: Montserrat 500 todos, line-height 1em (clipping)
   ─────────────────────────────────────────────────────── */
h1 {
  font-family: 'Lora', serif;
  font-weight: 700;
  font-size: 38px;
  line-height: 1.2;
}

h2 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.3;
}

h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 17px;
  line-height: 1.4;
}

h4,
h5,
h6 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  line-height: 1.4;
}


/* ── 3. BLOCKQUOTES (Lora 400 italic) ────────────────────────
   ANTES: hereda body (Source Sans Pro 400)
   DESPUÉS: Lora 400 italic 20px / 1.8 / #1a1a1a
   ─────────────────────────────────────────────────────── */
blockquote,
.elementor-blockquote__content,
.wp-block-quote p {
  font-family: 'Lora', serif;
  font-style: italic;
  font-weight: 400;
  font-size: 20px;
  line-height: 1.8;
  color: #1a1a1a;
}


/* ── 4. ELEMENTOR HEADING WIDGET — GLOBALES ──────────────────
   Override Astra line-height 1em → valores por nivel
   Los tamaños en editor Elementor se preservan donde existen.
   ANTES: hereda Astra (Montserrat 500 / 1em todas)
   DESPUÉS: por nivel con nueva escala
   ─────────────────────────────────────────────────────── */
.elementor-widget-heading h1.elementor-heading-title {
  font-family: 'Lora', serif;
  font-weight: 700;
  line-height: 1.15;
}

.elementor-widget-heading h2.elementor-heading-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.3;
}

.elementor-widget-heading h3.elementor-heading-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 17px;
  line-height: 1.4;
}

.elementor-widget-heading h4.elementor-heading-title,
.elementor-widget-heading h5.elementor-heading-title,
.elementor-widget-heading h6.elementor-heading-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.4;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}


/* ── 5. HERO / BANNER PRINCIPAL (post-25, homepage) ──────────
   Título → Lora 700 52px blanco / line-height 1.15
   ANTES: Montserrat 500 64px blanco (widget override)
   Subtítulo → Montserrat 400 17px #f0f0f0 / 1.7
   ANTES: hereda body (Source Sans Pro 400 17px)
   ─────────────────────────────────────────────────────── */
.elementor-25 .elementor-element-453e66a .elementor-heading-title,
.elementor-25 .elementor-element-0032ecd .elementor-heading-title {
  font-family: 'Lora', serif !important;
  font-weight: 700 !important;
  font-size: 52px !important;
  line-height: 1.15 !important;
}

@media (max-width: 1024px) {
  .elementor-25 .elementor-element-453e66a .elementor-heading-title,
  .elementor-25 .elementor-element-0032ecd .elementor-heading-title {
    font-size: 40px !important;
  }
}

@media (max-width: 767px) {
  .elementor-25 .elementor-element-453e66a .elementor-heading-title,
  .elementor-25 .elementor-element-0032ecd .elementor-heading-title {
    font-size: 32px !important;
  }
}

/* Subtítulo del hero */
.elementor-25 .elementor-element-274e09a {
  font-family: 'Montserrat', sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.7;
  color: #f0f0f0;
}


/* ── 6. LABELS DE SECCIÓN EN MAYÚSCULAS (eyebrow labels) ─────
   Montserrat 600 12px letter-spacing 0.14em
   Aplica a H4/H5/H6 con text-transform uppercase en Elementor
   ANTES: Montserrat 500 / line-height 1em
   ─────────────────────────────────────────────────────── */
/* Regla global aplicada en sección 4 (h4-h6.elementor-heading-title) */


/* ── 7. ICON BOX — 3 COLUMNAS DE BENEFICIOS ─────────────────
   Label (title) → Montserrat 700 13px / letter-spacing 0.08em
   Descripción → Montserrat 400 14px #555 / 1.6
   ANTES: title hereda Montserrat 500 (sin peso explícito)
   ANTES: description 15px / 1.4em / Montserrat (sin declarar)
   ─────────────────────────────────────────────────────── */
.elementor-icon-box-title,
.elementor-icon-box-title a {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  line-height: 1.4 !important;
}

.elementor-icon-box-description {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #555555 !important;
}


/* ── 8. TESTIMONIAL WIDGET — GLOBAL (beneficios, quotes) ─────
   Content → Montserrat 400 16px / 1.65
   Name/label → Montserrat 700 12px / uppercase / 0.14em
   ANTES: content 18px/500 (home) vs 18px/600 (Nosotros/PV) — inconsistente
   ANTES: name 12px/600 (home) vs 14px/inherit (Nosotros) — inconsistente
   ─────────────────────────────────────────────────────── */
.elementor-testimonial-content {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}

.elementor-testimonial-name {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}


/* ── 9. HFE INFO CARD (Nosotros, Puntos de Venta) ────────────
   Title → Montserrat 700 / 1.4
   Text → Montserrat 400 16px / 1.75
   ANTES: hereda Montserrat 500 / sin tamaño/line-height
   ─────────────────────────────────────────────────────── */
.hfe-infocard-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  line-height: 1.4;
}

.hfe-infocard-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
}


/* ── 10. WOOCOMMERCE — TARJETAS DE PRODUCTO ──────────────────
   Título → Montserrat 600 16px / 1.4
   Categoría → Montserrat 500 12px / #9CA3AF / mb:6px
   Precio → Montserrat 700 17px / verde marca
   ANTES: title hereda 500 sin font-size explícito
   ANTES: price hereda 500 (Additional CSS lo puso en 700)
   ─────────────────────────────────────────────────────── */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
}

.woocommerce ul.products li.product .product-category {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 12px;
  color: #9CA3AF;
  margin-bottom: 6px;
  display: block;
}

.woocommerce ul.products li.product .price,
.woocommerce .price {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  color: var(--e-global-color-astglobalcolor0) !important;
}

.woocommerce .price .amount,
.woocommerce .price ins .amount {
  color: var(--e-global-color-astglobalcolor0);
}

/* Categoría en página individual de producto */
.woocommerce .posted_in,
.woocommerce .tagged_as {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 13px;
  color: #6B7280;
}


/* ── 11. FORMULARIOS ──────────────────────────────────────────
   Labels → Montserrat 600 13px #374151
   Inputs → Montserrat 400 15px
   Placeholders → Montserrat 400 #9CA3AF
   ANTES: hereda body (Source Sans Pro 400)
   ─────────────────────────────────────────────────────── */
label,
.elementor-field-label,
.srfm-label {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 13px;
  color: #374151;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="number"],
textarea,
select {
  font-weight: 400;
  font-size: 15px;
}

input::placeholder,
textarea::placeholder {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  color: #9CA3AF;
}


/* ── 12. BOTONES ──────────────────────────────────────────────
   Montserrat 600 — coherente con funcional
   ANTES: hereda body (Source Sans Pro)
   ─────────────────────────────────────────────────────── */
.elementor-widget-button button,
.button,
.elementor-button,
.wp-block-button__link,
input[type="submit"],
.woocommerce button.button,
.woocommerce a.button {
  font-weight: 600;
}



/* ── 14. FOOTER ALNUTIPS — Newsletter ────────────────────────
   Título → Montserrat 700 20px
   Subtítulo → Montserrat 400 14px #ccc
   Botón → Montserrat 600 14px
   ANTES: hereda sistema anterior (newsletter-heading sin font declarado)
   ─────────────────────────────────────────────────────── */
.alnutips-footer .newsletter-heading {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 20px;
}

.alnutips-footer .newsletter-sub {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: #cccccc;
}

.alnutips-footer .newsletter-field button[type="submit"] {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 14px;
}

.alnutips-footer .footer-nav-list li a,
.alnutips-footer .footer-contact-list li,
.alnutips-footer .footer-contact-list a {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
}

.alnutips-footer .footer-heading {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
}

.alnutips-footer .footer-logo-text {
  font-family: 'Montserrat', sans-serif;
}


/* ── 15. PÁGINA CONTACTO (body.page-id-357) ──────────────────
   Labels VISITANOS/LLAMANOS → Montserrat 600 12px / 0.12em
   Textos de info → Montserrat 400 #6B7280
   H1/H2 cubiertos por reglas globales (§2, §4)
   ─────────────────────────────────────────────────────── */

/* Labels VISITANOS / LLAMANOS / ESCRIBENOS */
.page-id-357 .elementor-widget-heading h3.elementor-heading-title,
.page-id-357 .elementor-widget-heading h4.elementor-heading-title,
.page-id-357 .elementor-widget-heading h5.elementor-heading-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  line-height: 1.4;
}

/* Texto de contacto bajo el label */
.page-id-357 .elementor-icon-list-text,
.page-id-357 .elementor-widget-text-editor p,
.page-id-357 .elementor-icon-list-item a {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  color: #6B7280;
}


/* ── 16. PÁGINA NOSOTROS (body.page-id-252) ──────────────────
   Label "NUESTRA HISTORIA" → Montserrat 600 12px 0.15em verde
   Párrafos → Montserrat 400 16px / 1.75 (global)
   Quote / Blockquote → Lora 400 italic 20px / 1.8 / #1a1a1a
   Nombre BIBIANA DÍAZ → Montserrat 700 12px / 0.1em uppercase
   Cargo "Socia fundadora" → Montserrat 400 12px #6B7280
   ANTES: testimonial 18px/600 / name 14px / sin Lora
   ─────────────────────────────────────────────────────── */

/* Label eyebrow de sección → verde de marca */
.page-id-252 .elementor-widget-heading h5.elementor-heading-title,
.page-id-252 .elementor-widget-heading h6.elementor-heading-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.15em;
  color: var(--e-global-color-astglobalcolor0);
  text-transform: uppercase;
  line-height: 1.4;
}

/* Quote testimonial → Lora italic (override del global Montserrat) */
.page-id-252 .elementor-testimonial-content {
  font-family: 'Lora', serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
  font-size: 20px !important;
  line-height: 1.8 !important;
  color: #1a1a1a !important;
}

/* Nombre del autor (BIBIANA DÍAZ) */
.page-id-252 .elementor-testimonial-name {
  font-family: 'Montserrat', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

/* Cargo del autor (Socia fundadora) */
.page-id-252 .elementor-testimonial-job {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 12px;
  color: #6B7280;
}


/* ── 17. PÁGINA PUNTOS DE VENTA (body.page-id-1958) ──────────
   Labels de sección → Montserrat 600 12px / verde
   Testimonial de beneficio → Montserrat 400 16px (global)
   ─────────────────────────────────────────────────────── */
.page-id-1958 .elementor-widget-heading h5.elementor-heading-title,
.page-id-1958 .elementor-widget-heading h6.elementor-heading-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.14em;
  color: var(--e-global-color-astglobalcolor0);
  text-transform: uppercase;
}


/* ── RESPONSIVE ───────────────────────────────────────────────
   Ajustes de escala para tablet y móvil
   ─────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
  h1 { font-size: 32px; }
  h2 { font-size: 22px; }
  h3 { font-size: 16px; }
  .page-id-252 .elementor-testimonial-content { font-size: 18px !important; }
}

@media (max-width: 767px) {
  h1 { font-size: 28px; }
  h2 { font-size: 20px; }
  h3 { font-size: 15px; }
  .page-id-252 .elementor-testimonial-content { font-size: 16px !important; }
  .alnutips-footer .newsletter-heading { font-size: 18px; }
}


/* ── 18. REVERT HEADER & NAVEGACIÓN ──────────────────────────
   Restaura valores Astra originales en header/nav.
   Conserva Montserrat como familia.
   PROBLEMA: body 16px/1.75 + nav 500 + button 600 sobreescribían
   nav links (originales: 17px/400/1.65) y botones de header (400).
   ─────────────────────────────────────────────────────── */

/* Site title */
.site-title,
.site-title a {
  font-family: 'Montserrat', sans-serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
}

/* Nav links — menú principal */
.main-header-menu .menu-link,
.main-header-menu > .menu-item > a,
.main-navigation a,
.ast-primary-nav li a,
.ast-header-navigation-wrap a {
  font-family: 'Montserrat', sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
  text-transform: none;
}

/* Submenús */
.main-header-menu .sub-menu .menu-link,
.main-header-menu .sub-menu a {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
}

/* Contexto general del header — herencia base */
.site-header,
.main-header-bar {
  font-size: 17px;
  line-height: 1.65;
}

/* Botones dentro del header */
.main-header-bar input[type="submit"],
.main-header-bar .elementor-button,
.ast-header-button-wrap .ast-custom-button,
.ast-header-button-wrap a.button {
  font-family: 'Montserrat', sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
}

/* ============================================================
   === FIN SISTEMA TIPOGRÁFICO ALNUTIPS ===
   ============================================================ */
