/*
 * MAG'S MULTISERVICIOS — propuesta tipográfica (borrador)
 * Montserrat: lectura y navegación. Cinzel: títulos.
 * Mantiene los colores corporativos y la tipografía aprobada del distintivo 2 HORAS.
 */
:root {
  --font-sans: "Montserrat", "Segoe UI", Arial, sans-serif;
  --font-serif: "Cinzel", Georgia, serif;
  --font-display: "Cinzel", Georgia, serif;
}
body {
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.7;
  color: #2c2c2c;
  background-color: #f8f9fa;
  -webkit-font-smoothing: antialiased;
}
body h1, body .titulo-principal {
  font-family: var(--font-serif);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .115em;
  line-height: 1.2;
  margin-bottom: 24px;
  overflow-wrap: normal;
}
body h2, body .titulo-seccion {
  font-family: var(--font-serif);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .095em;
  line-height: 1.3;
  margin-bottom: 20px;
}
body h3, body h4, body .titulo-bloque {
  font-family: var(--font-sans);
  font-weight: 600;
  letter-spacing: .05em;
  color: #1a1a1a;
}
body p:not(.eyebrow) {
  font-family: var(--font-sans);
  font-weight: 300;
  margin-bottom: 16px;
}
body .button, body .header-cta, body .site-nav a,
body .mobile-menu a, body .boton-cta, body .menu-navegacion a {
  font-family: var(--font-sans);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .09em;
}
body .mobile-menu a { font-size: .98rem; letter-spacing: .065em; }
/* El logotipo oficial es una imagen. El distintivo 2 HORAS no cambia de fuente. */
body .two-hours-badge span,
body .two-hours-badge b,
body .two-hours-badge strong {
  font-family: "Trebuchet MS", "Segoe UI", Arial, sans-serif;
  text-transform: none;
  letter-spacing: -.07em;
}
body .two-hours-badge strong { letter-spacing: normal; }
/* Evitar títulos largos cortados en pantallas estrechas. */
@media (max-width: 700px) {
  body h1, body .titulo-principal {
    font-size: clamp(1.85rem, 6.7vw, 2.8rem);
    letter-spacing: .035em;
    line-height: 1.22;
  }
  body h2, body .titulo-seccion {
    font-size: clamp(1.45rem, 5.6vw, 2.2rem);
    letter-spacing: .04em;
    line-height: 1.3;
  }
  body .hero h1, body .two-hours-hero__copy h1 {
    font-size: clamp(1.85rem, 6.7vw, 2.8rem);
    letter-spacing: .025em;
  }
  body p:not(.eyebrow) { font-weight: 400; }
  body .mobile-menu a { letter-spacing: .04em; }
}

/* Portada exclusivamente: retirar duplicación y limpiar la composición central. */
body.home .site-header .brand { display: flex; }
body.home .site-header .header-row { min-height: 116px; }
body.home .site-header .brand img { width: 175px; height: auto; max-height: 105px; object-fit: contain; }
@media (max-width: 760px) {
  body.home .site-header .header-row { min-height: 112px; }
  body.home .site-header .brand img { width: 153px; max-height: 97px; }
}
/* Cabecera de cristal: mantiene la barra blanca arriba y revela el contenido al bajar. */
.site-header {
  background: rgba(255, 255, 255, .97);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  transition: background-color .28s ease, box-shadow .28s ease,
    border-color .28s ease, -webkit-backdrop-filter .28s ease, backdrop-filter .28s ease;
}
.site-header.is-scrolled {
  background: rgba(255, 255, 255, .72);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  box-shadow: 0 6px 18px rgba(7, 29, 52, .08);
  border-bottom-color: rgba(11, 47, 85, .08);
}
@media (prefers-reduced-motion: reduce) {
  .site-header { transition: none; }
}
body.home .site-header .header-row { justify-content: flex-end; }
body.home .site-header .menu-toggle { margin-left: auto; }
body.home .hero-v3__logo {
  width: min(350px, 83%);
  max-width: 100%;
  height: auto;
  opacity: .82;
  mix-blend-mode: multiply;
  filter: drop-shadow(0 2px 1px rgba(255,255,255,.72)) drop-shadow(0 3px 3px rgba(8,29,49,.13));
  margin: 0 auto 12px;
}
/* Solo portada: recuperar la cocina luminosa y el emblema de cristal aprobado. */
body.home .hero-v2__media { opacity: 1; }
body.home .hero-v2__image { opacity: 1; filter: none; }
body.home .hero-v2__veil { display: none; }
/* La portada aprobada ya incorpora logotipo y rótulo: no duplicar capas. */
body.home .hero-v3__logo, body.home .hero-v3__service-line { display: none; }
body.home .hero-v2 { min-height: 0; aspect-ratio: 1440 / 953; background: #f2eee8; }
body.home .hero-v2__media { position: absolute; inset: 0; opacity: 1; }
body.home .hero-v2__image { display: none; }
body.home .hero-v2__media { background: url('/wp-content/uploads/2026/09/Cocina-contemporanea-reformada-scaled.jpg') center / cover no-repeat; }
body.home .hero-v2__media::after { content: none; }
body.home .hero-v2__content { min-height: 0; padding: 0; }
body.home .hero-v2__identity { padding: 0; }
@media(max-width:760px) { body.home .hero-v2 { min-height: 0; aspect-ratio: 1440 / 953; } body.home .hero-v2__image { height: 100%; top: 0; } }

body.home .hero-v3__logo {
  width: min(350px, 83%);
  opacity: .84;
  mix-blend-mode: screen;
  filter: grayscale(1) invert(1) contrast(1.8) brightness(2.2)
    drop-shadow(0 1px 1px rgba(15,32,45,.35));
}
body.home .hero-v3__service-line {
  position: absolute;
  top: clamp(18px, 3.2vw, 38px);
  left: 24px;
  right: 24px;
  width: auto;
  margin: 0;
  color: #163048;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: clamp(.64rem, 1.5vw, .84rem);
  font-weight: 500;
  letter-spacing: clamp(.08em, .5vw, .26em);
  text-align: center;
  white-space: nowrap;
}
body.home .hero-v3__identity { position: static; }
body.home .hero-v2__content { position: relative; }
body.home .hero-v3__descriptor, body.home .hero-v3__areas { display: none; }
body.home .hero-v3__actions { display: none; }
@media (max-width: 520px) {
  body.home .hero-v3__service-line { font-size: .59rem; letter-spacing: .08em; left: 8px; right: 8px; }
}
body.home .hero-v3__descriptor { margin-bottom: 6px; }
@media (max-width: 760px) {
  body.home .hero-v3__logo { width: min(290px, 76vw); }
}
@media (max-width: 520px) {
  body.home .hero-v3__logo { width: min(260px, 75vw); }
}
