/**
 * Martha Castaño Landing Page Styles - Static Version
 * Basado fielmente en el diseño de Figma
 * Todas las clases tienen prefijo mc-
 */

/* ========================================
   Variables y Reset
   ======================================== */
:root {
  --mc-purple: #6412CE;
  --mc-purple-light: #6412CE;
  --mc-purple-lighter: #b585f4;
  --mc-purple-bg: #e8d9ff;
  --mc-purple-pale: #ede5fb;
  --mc-bg-lavender: #eceefe;
  --mc-bg-light: #fafbff;
  --mc-bg-metrics: #e8ebf2;
  --mc-dark-blue: #1a2644;
  --mc-blue: #0074ff;
  --mc-blue-dark: #005dcc;
  --mc-violet: #6b14dc;
  --mc-text-dark: #1a1a1a;
  --mc-text-body: #1a2644;
  --mc-text-gray: #5a5a7a;
  --mc-text-light: rgba(26,26,26,0.7);
  --mc-white: #ffffff;
  --mc-border: rgba(26,26,26,0.1);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--mc-text-dark);
  background-color: var(--mc-bg-lavender);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s ease;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

html {
  scroll-behavior: smooth;
}

/* ========================================
   Containers
   ======================================== */
.mc-container-wide {
  max-width: 1400px;
  margin: auto;
  padding: 0 68px;
}

.mc-container-narrow {
  max-width: 896px;
  margin: 0 auto;
  padding: 0 24px;
}

/* ========================================
   Typography
   ======================================== */
.mc-section-overline {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 3.6px;
  color: var(--mc-purple-light);
  margin-bottom: 16px;
}

.mc-section-overline.mc-text-light {
  color: var(--mc-purple-lighter);
  font-weight: 700;
}

.mc-section-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 48px;
  font-weight: 400;
  line-height: 1;
  color: var(--mc-text-dark);
  margin-bottom: 16px;
}

.mc-section-title.mc-text-white {
  color: var(--mc-white);
}

.mc-section-subtitle {
  font-family: 'DM Sans', sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--mc-text-dark);
}

.mc-section-subtitle.mc-text-white {
  color: var(--mc-white);
}

.mc-text-center {
  text-align: center;
}

.mc-mb-large {
  margin-bottom: 64px;
}

.mc-text-purple {
  color: var(--mc-purple);
}

/* ========================================
   Navegación Fija
   ======================================== */
.mc-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: rgba(255,255,255,0.7);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0px 1px 2px 0px rgba(0,0,0,0.05);
  z-index: 1000;
  min-height: 96px;
  display: flex;
  align-items: center;
  padding: 16px 20px;
}

.mc-nav-container {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 48px;
}

.mc-logo {
  display: flex;
  align-items: center;
  gap: 12px;
}

.mc-logo-text {
  display: flex;
  flex-direction: column;
}

.mc-logo-name {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  font-weight: 700;
  color: var(--mc-text-dark);
  line-height: 1.2;
}

.mc-logo-subtitle {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 400;
  color: var(--mc-text-gray);
  line-height: 1.2;
}

.mc-nav-menu {
  display: flex;
  align-items: center;
  gap: 48px;
}

.mc-nav-menu a {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 3.6px;
  color: var(--mc-text-body);
  cursor: pointer;
  transition: color 0.3s ease;
}

.mc-nav-menu a:hover {
  color: var(--mc-purple);
}

/* ========================================
   Hero Section
   ======================================== */
.mc-hero {
  min-height: 800px;
  display: flex;
  align-items: center;
  padding-top: 96px;
  background-color: var(--mc-bg-lavender);
}

.mc-hero-content {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 0;
  padding: 48px 20px;
}

.mc-hero-text {
  flex: 0 0 55%;
  padding: 48px 96px 48px 96px;
}

.mc-hero-overline {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 3.6px;
  color: var(--mc-purple-light);
  margin-bottom: 48px;
}

.mc-hero-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 72px;
  font-weight: 400;
  line-height: 1;
  color: var(--mc-text-dark);
  margin-bottom: 36px;
}

.mc-hero-title em {
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  color: var(--mc-purple);
}

.mc-hero-description {
  font-family: 'DM Sans', sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.5px;
  color: var(--mc-text-dark);
  margin-bottom: 16px;
  max-width: 600px;
}

.mc-hero-buttons {
  display: flex;
  gap: 12px;
  margin-top: 16px;
  max-width: 600px;
}

.mc-btn {
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding: 17px 33px;
  border-radius: 4px;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 2.8px;
  cursor: pointer;
  transition: all 0.3s ease;
  border: none;
  text-decoration: none;
}

.mc-btn-outline {
  background: transparent;
  color: var(--mc-text-body);
  border: 1px solid var(--mc-text-dark);
}

.mc-btn-outline:hover {
  opacity: 0.8;
}

.mc-btn-primary {
  background: var(--mc-dark-blue);
  color: var(--mc-white);
  border: 1px solid var(--mc-purple-lighter);
}

.mc-btn-primary:hover {
  background: #0f1827;
}

.mc-btn svg {
  flex-shrink: 0;
}

.mc-hero-image {
  flex: 0 0 45%;
  height: 800px;
  overflow: hidden;
  position: relative;
}

.mc-hero-image img {
  position: absolute;
  top: -26px;
  left: -29px;
  width: auto;
  height: 1100px;
  max-width: none;
  object-fit: cover;
}

/* ========================================
   Sección El Origen
   ======================================== */
.mc-section-origin {
  background-color: var(--mc-bg-light);
  padding: 80px 0;
  border-top: 1px solid var(--mc-border);
}

.mc-origin-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 96px;
  align-items: start;
}

/* Métricas Card */
.mc-metrics-card {
  background-color: var(--mc-bg-metrics);
  border-radius: 32px;
  padding: 24px 48px;
}

.mc-metrics-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 3.6px;
  color: var(--mc-purple-light);
  margin-bottom: 32px;
  padding-left: 24px;
}

.mc-metric {
  padding: 13.5px 0 2.5px 25px;
  border-left: 1px solid var(--mc-border);
  margin-bottom: 0;
}

.mc-metric:not(:last-child) {
  margin-bottom: 0;
}

.mc-metric-number {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 72px;
  font-weight: 400;
  line-height: 1;
  color: var(--mc-text-dark);
  margin-bottom: 13.5px;
}

.mc-metric-text {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.7;
  color: var(--mc-dark-blue);
}

/* Origen Content */
.mc-origin-content {
  padding-top: 0;
}

.mc-origin-text p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.9;
  color: var(--mc-text-dark);
  margin-bottom: 16px;
}

.mc-origin-text p em {
  font-family: 'DM Sans', sans-serif;
  font-style: italic;
  font-weight: 300;
}

.mc-origin-text p strong {
  font-weight: 600;
}

.mc-quote {
  border-left: 4px solid var(--mc-purple-light);
  padding-left: 32px;
  margin-top: 16px;
}

.mc-quote p {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 18px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.7;
  color: var(--mc-text-dark);
  margin-bottom: 8px;
}

.mc-quote cite {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 400;
  font-style: normal;
  color: var(--mc-text-gray);
}

/* ========================================
   Sección Metodología
   ======================================== */
.mc-section-methodology {
  background-color: var(--mc-bg-lavender);
  padding: 80px 68px;
  border-top: 1px solid var(--mc-border);
  position: relative;
  overflow: hidden;
}

/* 3 Cs Cards */
.mc-cs-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  margin-bottom: 80px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 8px 48px 0px rgba(26,38,68,0.12);
}

.mc-c-card {
  padding: 48px 36px;
  min-height: 211px;
  position: relative;
  color: var(--mc-white);
}

.mc-c-card[data-bg="#1a2644"] {
  background-color: #1a2644;
}

.mc-c-card[data-bg="#6b14dc"] {
  background-color: #6b14dc;
}

.mc-c-card[data-bg="#005dcc"] {
  background-color: #005dcc;
}

.mc-c-card-header {
  position: relative;
  z-index: 2;
}

.mc-c-letter {
  position: absolute;
  top: -83px;
  right: 16px;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 206px;
  font-weight: 900;
  line-height: 1;
  color: rgba(255,255,255,0.08);
  pointer-events: none;
}

.mc-c-content h3 {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--mc-white);
  margin-bottom: 7px;
}

.mc-c-subtitle {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.7;
  color: rgba(255,255,255,0.9);
  margin-bottom: 7px;
}

.mc-c-description {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 600;
  font-style: italic;
  line-height: 1.6;
  color: rgba(255,255,255,0.6);
}

.mc-c-card-list {
  display: none;
}

/* Methodology Quote */
.mc-methodology-quote {
  background: transparent;
  border-radius: 24px;
  padding: 24px;
  text-align: center;
}

.mc-methodology-quote p {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 18px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.7;
  color: #1a1a2e;
}

.mc-methodology-quote strong {
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  font-weight: 700;
}

/* ========================================
   Sección Galería
   ======================================== */
.mc-section-gallery {
  background-color: var(--mc-white);
  padding: 80px 0;
  border-top: 1px solid var(--mc-border);
}

.mc-gallery-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-top: 48px;
}

.mc-gallery-card {
  background: var(--mc-white);
  border: 1px solid var(--mc-border);
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
}

.mc-gallery-card:hover {
  box-shadow: 0px 12px 32px rgba(26,38,68,0.15);
  transform: translateY(-4px);
}

.mc-gallery-image {
  width: 100%;
  height: 280px;
  overflow: hidden;
  position: relative;
}

.mc-gallery-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.mc-gallery-card:hover .mc-gallery-image img {
  transform: scale(1.05);
}

.mc-gallery-content {
  padding: 32px 24px;
}

.mc-gallery-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--mc-purple-light);
  margin-bottom: 12px;
  display: block;
}

.mc-gallery-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--mc-text-dark);
  margin-bottom: 12px;
}

.mc-gallery-description {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--mc-text-gray);
}

/* ========================================
   Sección Blog Preview
   ======================================== */
.mc-section-blog {
  background-color: var(--mc-bg-lavender);
  padding: 80px 0;
  border-top: 1px solid var(--mc-border);
}

.mc-blog-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-top: 48px;
}

.mc-blog-card {
  background: var(--mc-white);
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
  display: flex;
  flex-direction: column;
}

.mc-blog-card:hover {
  box-shadow: 0px 12px 32px rgba(26,38,68,0.15);
  transform: translateY(-4px);
}

.mc-blog-image {
  width: 100%;
  height: 240px;
  overflow: hidden;
  position: relative;
}

.mc-blog-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.mc-blog-card:hover .mc-blog-image img {
  transform: scale(1.05);
}

.mc-blog-content {
  padding: 28px 24px 32px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.mc-blog-category {
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--mc-purple-light);
  margin-bottom: 12px;
}

.mc-blog-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--mc-text-dark);
  margin-bottom: 12px;
}

.mc-blog-excerpt {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--mc-text-gray);
  margin-bottom: 16px;
  flex: 1;
}

.mc-blog-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid var(--mc-border);
}

.mc-blog-date {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: var(--mc-text-light);
}

.mc-blog-readmore {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: var(--mc-purple);
  margin-left: auto;
  transition: color 0.3s ease;
}

.mc-blog-card:hover .mc-blog-readmore {
  color: var(--mc-purple-light);
}

/* ========================================
   Sección Para Quién
   ======================================== */
.mc-section-para-quien {
  position: relative;
  min-height: 875px;
  padding: 96px 0 45px;
  color: var(--mc-white);
}

.mc-section-para-quien-bg {
  position: absolute;
  inset: 0;
  background-color: var(--mc-dark-blue);
  z-index: 0;
}

.mc-section-para-quien-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/images/f6bbc87bb8dad82e4f5ad286c92400c06ffbc493.png');
  background-size: 140% auto;
  background-position: -20% -30%;
  opacity: 0.2;
  z-index: 1;
}

.mc-container-narrow {
  position: relative;
  z-index: 2;
}

.mc-para-quien-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 45px;
}

.mc-level-card {
  background: var(--mc-white);
  border: 0.8px solid #e0e0ee;
  border-radius: 16px;
  padding: 40px 32px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mc-level-icon {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mc-level-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--mc-text-gray);
}

.mc-level-title {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--mc-dark-blue);
  margin-top: -10px;
}

.mc-level-badge {
  display: inline-block;
  padding: 4px 12px;
  background-color: #e5eeff;
  color: var(--mc-blue);
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 600;
  border-radius: 20px;
  align-self: flex-start;
}

.mc-level-description {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  color: var(--mc-text-gray);
}

.mc-level-list {
  list-style: disc;
  padding-left: 20px;
  border-top: 0.8px solid #e0e0ee;
  padding-top: 16px;
  margin-top: -4px;
}

.mc-level-list li {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.7;
  color: #1a1a2e;
  margin-bottom: 0;
}

.mc-level-link {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--mc-purple-light);
  margin-top: auto;
}

.mc-level-link:hover {
  color: var(--mc-purple);
}

/* ========================================
   Sección Trayectoria
   ======================================== */
.mc-section-trajectory {
  background-color: var(--mc-white);
  padding: 49px 68px;
  border-top: 1px solid var(--mc-border);
  border-bottom: 1px solid var(--mc-border);
}

.mc-trajectory-title {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 2.4px;
  color: var(--mc-text-light);
  text-align: center;
  margin-bottom: 32px;
}

.mc-trajectory-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0 96px;
  opacity: 0.6;
}

.mc-trajectory-logo {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  color: var(--mc-text-light);
}

/* ========================================
   Sección Sobre Mí
   ======================================== */
.mc-section-about {
  background-color: #f2f2f2;
  padding: 80px 68px;
}

.mc-about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 96px;
  align-items: center;
  height: 841px;
}

.mc-about-image {
  height: 100%;
  overflow: hidden;
  border-radius: 4px;
}

.mc-about-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mc-about-content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  height: 100%;
  justify-content: flex-start;
}

.mc-about-text p {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.9;
  color: var(--mc-text-dark);
  margin-bottom: 16px;
}

.mc-about-credentials {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 16px;
}

.mc-about-credentials span {
  padding: 6px 16px;
  border: 0.8px solid var(--mc-purple-light);
  border-radius: 20px;
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  color: var(--mc-purple-light);
}

.mc-about-achievements {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: transparent;
  border-radius: 24px;
  padding: 24px;
}

.mc-achievement {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.mc-achievement-icon {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background-color: var(--mc-purple);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mc-achievement-text h4 {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  font-style: normal;
  line-height: 1.5;
  color: #1a1a2e;
  margin-bottom: 0;
}

.mc-achievement-text p {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 16px;
  font-weight: 400;
  font-style: italic;
  line-height: 1.6;
  color: #1a1a2e;
  margin-bottom: 0;
}

/* ========================================
   Sección Contacto
   ======================================== */
.mc-section-contact {
  position: relative;
  padding: 129px 272px 128px;
  color: var(--mc-white);
}

.mc-section-contact-bg {
  position: absolute;
  inset: 0;
  background-color: var(--mc-dark-blue);
  z-index: 0;
}

.mc-section-contact-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url('assets/images/f6bbc87bb8dad82e4f5ad286c92400c06ffbc493.png');
  background-size: cover;
  background-position: center;
  opacity: 0.12;
  z-index: 1;
}

.mc-section-contact .mc-container-narrow {
  position: relative;
  z-index: 2;
}

.mc-section-contact .mc-section-title {
  font-size: 60px;
  line-height: 1;
}

.mc-section-contact .mc-section-subtitle {
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: 0.5px;
  margin-bottom: 48px;
}

.mc-contact-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 500px;
  margin: 0 auto;
}

.mc-contact-form input,
.mc-contact-form select {
  padding: 16px 20px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.2);
  background: rgba(255,255,255,0.05);
  color: var(--mc-white);
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  transition: all 0.3s ease;
}

.mc-contact-form input::placeholder {
  color: rgba(255,255,255,0.5);
}

.mc-contact-form input:focus,
.mc-contact-form select:focus {
  outline: none;
  border-color: #b180ff;
  background: rgba(255,255,255,0.08);
}

.mc-phone-group {
  display: flex;
  gap: 12px;
}

.mc-phone-group select {
  width: 140px;
  cursor: pointer;
}

.mc-phone-group input {
  flex: 1;
}

.mc-btn-submit {
  margin-top: 8px;
  padding: 18px 32px;
  background: var(--mc-purple-light);
  color: var(--mc-white);
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.5px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

.mc-btn-submit:hover {
  background: #6b14dc;
  box-shadow: 0 8px 24px rgba(133,53,237,0.3);
  transform: translateY(-2px);
}

.mc-contact-note {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 2.4px;
  color: rgba(26,26,26,0.4);
  text-align: center;
  margin-top: 8px;
}

.mc-form-success {
  background: rgba(100,200,100,0.2);
  border: 1px solid rgba(100,200,100,0.5);
  color: #90ee90;
  padding: 16px;
  border-radius: 8px;
  text-align: center;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  margin-top: 16px;
}

.mc-form-error {
  background: rgba(220,53,69,0.2);
  border: 1px solid rgba(220,53,69,0.5);
  color: #ff6b6b;
  padding: 16px;
  border-radius: 8px;
  text-align: center;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  margin-top: 16px;
}

/* ========================================
   Footer
   ======================================== */
.mc-footer {
  background-color: var(--mc-dark-blue);
  border-top: 1px solid #e5eeff;
  padding: 49px 68px 48px;
}

.mc-footer-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 776px;
}

.mc-footer-copyright {
  font-family: 'DM Sans', sans-serif;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 2.4px;
  color: #e5eeff;
}

.mc-footer-social {
  display: flex;
  gap: 32px;
  align-items: center;
}

.mc-footer-social a {
  color: #e5eeff;
  transition: color 0.3s ease;
}

.mc-footer-social a:hover {
  color: var(--mc-white);
}

/* ========================================
   Botones Flotantes
   ======================================== */
.mc-floating-buttons {
  position: fixed;
  bottom: 32px;
  right: 32px;
  z-index: 999;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.mc-floating-buttons.mc-scroll-button {
  bottom: 144px;
}

.mc-fab-button {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg, #b180ff 0%, #8535ed 100%);
  color: var(--mc-white);
  border: none;
  box-shadow: 0 8px 24px rgba(133,53,237,0.4);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  position: relative;
}

.mc-fab-button.mc-fab-small {
  width: 56px;
  height: 56px;
}

.mc-fab-button:hover {
  box-shadow: 0 12px 32px rgba(133,53,237,0.5);
  transform: scale(1.05);
}

.mc-fab-label {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--mc-dark-blue);
  white-space: nowrap;
}

.mc-social-menu {
  position: fixed;
  bottom: 120px;
  right: 32px;
  z-index: 998;
  display: flex;
  flex-direction: column-reverse;
  gap: 16px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.mc-social-menu.mc-active {
  opacity: 1;
  pointer-events: all;
}

.mc-social-link {
  display: flex;
  align-items: center;
  gap: 12px;
  transition: all 0.3s ease;
}

.mc-social-link:hover {
  transform: translateX(-8px);
}

.mc-social-label {
  background: var(--mc-white);
  color: var(--mc-dark-blue);
  padding: 6px 12px;
  border-radius: 6px;
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  white-space: nowrap;
  opacity: 0;
  transform: translateX(10px);
  transition: all 0.2s ease;
}

.mc-social-link:hover .mc-social-label {
  opacity: 1;
  transform: translateX(0);
}

.mc-social-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  transition: transform 0.3s ease;
}

.mc-social-link:hover .mc-social-icon {
  transform: scale(1.1);
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 1024px) {
  .mc-container-wide {
    padding: 0 40px;
  }

  .mc-hero-title {
    font-size: 56px;
  }

  .mc-section-title {
    font-size: 40px;
  }

  .mc-origin-grid,
  .mc-about-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .mc-cs-cards {
    grid-template-columns: 1fr;
  }

  .mc-para-quien-cards {
    grid-template-columns: 1fr;
  }

  .mc-gallery-cards,
  .mc-blog-cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .mc-nav-container {
    padding: 0 20px;
  }

  .mc-nav-menu {
    gap: 24px;
  }

  .mc-hero-content {
    flex-direction: column;
    padding: 24px 20px;
  }

  .mc-hero-text {
    flex: 1 1 auto;
    padding: 24px;
  }

  .mc-hero-title {
    font-size: 48px;
  }

  .mc-hero-buttons {
    flex-direction: column;
  }

  .mc-hero-image {
    flex: 1 1 auto;
    height: 500px;
  }

  .mc-section-title {
    font-size: 32px;
  }

  .mc-container-wide {
    padding: 0 20px;
  }

  .mc-section-contact {
    padding: 80px 20px;
  }

  .mc-floating-buttons {
    bottom: 24px;
    right: 24px;
  }

  .mc-fab-button {
    width: 56px;
    height: 56px;
  }

  .mc-fab-button.mc-fab-small {
    width: 48px;
    height: 48px;
  }
}
/* === Blog preview refinement === */

.mc-section-blog {
  background: #ffffff;
  padding: 120px 48px 112px;
  overflow-x: hidden;
}

.mc-section-blog .mc-container-wide {
  max-width: 1720px;
  margin: 0 auto;
}

.mc-section-blog .mc-text-center {
  text-align: center;
}

.mc-section-blog .mc-section-overline {
  color: #8535ED;
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  margin-bottom: 24px;
}

.mc-section-blog .mc-section-title {
  font-family: "Playfair Display", serif;
  font-size: clamp(48px, 4.8vw, 76px);
  line-height: 0.98;
  font-weight: 400;
  color: #05071A;
  margin: 0 0 80px;
}

.mc-blog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px;
}

.mc-blog-card {
  overflow: hidden;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(20, 24, 42, 0.12);
  display: flex;
  flex-direction: column;
  min-height: 610px;
}

.mc-blog-card-image {
  width: 100%;
  height: 275px;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%);
  overflow: hidden;
}

.mc-blog-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mc-blog-card-content {
  padding: 38px 48px 44px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.mc-blog-card-meta {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

.mc-blog-card-category {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 24px;
  border-radius: 999px;
  background: rgba(133, 53, 237, 0.18);
  color: #6B14DC;
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mc-blog-card-date {
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  color: #5A5A7A;
}

.mc-blog-card-title {
  font-family: "Playfair Display", serif;
  font-size: clamp(29px, 2vw, 40px);
  line-height: 1.15;
  font-weight: 500;
  color: #05071A;
  margin: 0 0 24px;
}

.mc-blog-card-excerpt {
  font-family: "DM Sans", sans-serif;
  font-size: 22px;
  line-height: 1.45;
  color: #25304D;
  margin: 0 0 34px;
}

.mc-blog-card-link {
  margin-top: auto;
  font-family: "DM Sans", sans-serif;
  color: #6B14DC !important;
  font-size: 20px;
  font-weight: 700;
  text-decoration: none;
}

.mc-blog-more {
  display: flex;
  justify-content: center;
  margin-top: 64px;
}

.mc-blog-more-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 260px;
  height: 56px;
  padding: 0 36px;
  border-radius: 999px;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%);
  color: #ffffff !important;
  font-family: "DM Sans", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: 0 14px 32px rgba(107, 20, 220, 0.24);
  transition: transform 220ms ease, box-shadow 220ms ease;
}

.mc-blog-more-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(107, 20, 220, 0.32);
}

@media (max-width: 1024px) {
  .mc-section-blog {
    padding: 88px 24px;
  }

  .mc-blog-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .mc-blog-card {
    min-height: auto;
  }

  .mc-blog-card-content {
    padding: 30px 28px 36px;
  }

  .mc-blog-card-excerpt {
    font-size: 18px;
  }
}
/* === HERO REFINEMENT === */

.mc-hero {
  position: relative;
  width: 100%;
  min-height: 760px;
  padding-top: 76px;
  background: #ECEEFE;
  overflow: hidden;
}

.mc-hero-content {
  width: 100%;
  max-width: 1440px;
  min-height: 684px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
}

.mc-hero-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 80px 88px 88px 120px;
  max-width: 620px;
  align-self: center;
}

.mc-hero-overline {
  margin: 0 0 26px;
  color: #8535ED;
  font-family: "DM Sans", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.36em;
  text-transform: uppercase;
}

.mc-hero-title {
  margin: 0 0 30px;
  color: #111111;
  font-family: "Playfair Display", serif;
  font-size: clamp(64px, 5.4vw, 88px);
  line-height: 0.92;
  font-weight: 400;
  letter-spacing: -0.04em;
}

.mc-hero-title em {
  display: inline-block;
  color: #8535ED;
  font-style: italic;
  font-weight: 400;
}

.mc-hero-description {
  max-width: 455px;
  margin: 0 0 44px;
  color: #1A1A1A;
  font-family: "DM Sans", sans-serif;
  font-size: 18px;
  line-height: 1.48;
  font-weight: 400;
}

.mc-hero-buttons {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.mc-btn {
  min-height: 56px;
  padding: 0 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border-radius: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 220ms ease;
}

.mc-btn-outline {
  border: 1px solid rgba(26, 38, 68, 0.55);
  background: transparent;
  color: #1A2644 !important;
}

.mc-btn-outline:hover {
  background: rgba(26, 38, 68, 0.06);
  border-color: #1A2644;
}

.mc-btn-primary {
  border: 1px solid #1A2644;
  background: #1A2644;
  color: #ffffff !important;
}

.mc-btn-primary:hover {
  background: #111A32;
  border-color: #111A32;
  transform: translateY(-1px);
}

.mc-hero-image {
  position: relative;
  width: 100%;
  min-height: 684px;
  overflow: hidden;
}

.mc-hero-image img {
  width: 100%;
  height: 100%;
  min-height: 684px;
  object-fit: cover;
  object-position: center center;
  display: block;
}

/* Floating statement under hero */
.mc-hero::after {
  content: "Gente Guapa se conoce.     Gente Guapa crece con otros.     Gente Guapa se hace cargo.";
  position: absolute;
  left: 50%;
  bottom: 34px;
  transform: translateX(-50%);
  width: min(760px, calc(100% - 48px));
  height: 54px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.75);
  background: rgba(255,255,255,0.28);
  backdrop-filter: blur(16px);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6B14DC;
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-size: 16px;
  line-height: 1;
  white-space: pre;
  box-shadow: 0 20px 50px rgba(26, 38, 68, 0.08);
}

/* Responsive hero */
@media (max-width: 1024px) {
  .mc-hero {
    min-height: auto;
    padding-top: 72px;
  }

  .mc-hero-content {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .mc-hero-text {
    padding: 80px 32px 48px;
    max-width: none;
  }

  .mc-hero-title {
    font-size: clamp(54px, 12vw, 76px);
  }

  .mc-hero-description {
    max-width: 560px;
    font-size: 17px;
  }

  .mc-hero-image {
    min-height: 520px;
  }

  .mc-hero-image img {
    min-height: 520px;
  }

  .mc-hero::after {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    margin: -28px auto 40px;
    width: calc(100% - 48px);
    height: auto;
    min-height: 58px;
    padding: 16px 20px;
    white-space: normal;
    text-align: center;
    line-height: 1.4;
  }
}

@media (max-width: 640px) {
  .mc-hero-text {
    padding: 64px 24px 40px;
  }

  .mc-hero-title {
    font-size: 50px;
    line-height: 0.96;
  }

  .mc-hero-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .mc-btn {
    width: 100%;
  }

  .mc-hero-image,
  .mc-hero-image img {
    min-height: 420px;
  }
}
/* Ocultar cápsula inferior del hero */
.mc-hero::after {
  display: none !important;
  content: none !important;
}
/* Reparar visibilidad de imagen en hero */
.mc-hero-content {
  grid-template-columns: 1fr 1fr !important;
}

.mc-hero-image {
  display: block !important;
  position: relative !important;
  min-height: 684px !important;
  height: 684px !important;
  overflow: hidden !important;
}

.mc-hero-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 684px !important;
  object-fit: cover !important;
  object-position: center center !important;
  opacity: 1 !important;
  visibility: visible !important;
}
/* === HERO FULL-BLEED FIX === */

/* Evita la barra horizontal inferior */
html,
body {
  overflow-x: hidden !important;
}

.mc-landing-page {
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
}

/* Header sobre el hero */
.mc-nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 96px !important;
  z-index: 9999 !important;
  background: rgba(255, 255, 255, 0.72) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  border-bottom: 1px solid rgba(26, 38, 68, 0.08) !important;
}

.mc-nav-container {
  width: 100% !important;
  max-width: 1440px !important;
  height: 96px !important;
  margin: 0 auto !important;
  padding: 0 64px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

/* Hero ocupa todo el ancho, sin margen visual */
.mc-hero {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-height: 820px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #eceefe !important;
  overflow: hidden !important;
}

/* La grilla ya no debe estar contenida a 1440 si queremos full bleed */
.mc-hero-content {
  width: 100vw !important;
  max-width: none !important;
  min-height: 820px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 55% 45% !important;
  align-items: stretch !important;
}

/* Texto alineado como contenedor editorial */
.mc-hero-text {
  width: 100% !important;
  max-width: 720px !important;
  align-self: center !important;
  justify-self: end !important;
  padding: 160px 96px 96px 64px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

/* Imagen pegada al borde derecho y subiendo detrás del nav */
.mc-hero-image {
  position: 45% center !important;
  width: 100% !important;
  height: 820px !important;
  min-height: 820px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  align-self: stretch !important;
}

/* Ajuste de encuadre */
.mc-hero-image img {
  width: 100% !important;
  height: 100% !important;
  min-height: 820px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

/* Que el contenido del hero respire como en el diseño */
.mc-hero-overline {
  margin-bottom: 28px !important;
}

.mc-hero-title {
  margin-bottom: 36px !important;
}

.mc-hero-description {
  max-width: 520px !important;
  margin-bottom: 64px !important;
}

.mc-hero-buttons {
  display: flex !important;
  flex-direction: row !important;
  gap: 24px !important;
}

/* Quitar cápsula inferior si aún existe */
.mc-hero::after {
  display: none !important;
  content: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
  .mc-nav {
    height: 82px !important;
  }

  .mc-nav-container {
    height: 82px !important;
    padding: 0 24px !important;
  }

  .mc-hero {
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
  }

  .mc-hero-content {
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
    grid-template-columns: 1fr !important;
  }

  .mc-hero-text {
    justify-self: stretch !important;
    max-width: none !important;
    padding: 140px 32px 56px !important;
  }

  .mc-hero-image {
    height: 560px !important;
    min-height: 560px !important;
  }

  .mc-hero-image img {
    min-height: 560px !important;
  }
}

@media (max-width: 640px) {
  .mc-hero-text {
    padding: 120px 24px 48px !important;
  }

  .mc-hero-image {
    height: 440px !important;
    min-height: 440px !important;
  }

  .mc-hero-image img {
    min-height: 440px !important;
  }

  .mc-hero-buttons {
    flex-direction: column !important;
  }
}
/* === Logo image === */

.mc-logo {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
}

.mc-logo-img {
  display: block !important;
  width: auto !important;
  height: 64px !important;
  max-width: 340px !important;
  object-fit: contain !important;
}

@media (max-width: 768px) {
  .mc-logo-img {
    height: 48px !important;
    max-width: 240px !important;
  }
}
/* === Header/logo alignment fix === */

.mc-nav-container {
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding-left: 96px !important;
  padding-right: 96px !important;
  box-sizing: border-box !important;
}

.mc-logo {
  margin-left: 0 !important;
}

.mc-logo-img {
  height: 56px !important;
  width: auto !important;
  max-width: 320px !important;
}

.mc-nav-menu {
  display: flex !important;
  align-items: center !important;
  gap: 64px !important;
  margin-left: auto !important;
}

@media (max-width: 1024px) {
  .mc-nav-container {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  .mc-nav-menu {
    gap: 32px !important;
  }

  .mc-logo-img {
    height: 48px !important;
    max-width: 260px !important;
  }
}

@media (max-width: 768px) {
  .mc-nav-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .mc-logo-img {
    height: 42px !important;
    max-width: 220px !important;
  }
}
/* === Font enforcement === */
.mc-landing-page,
.mc-landing-page p,
.mc-landing-page a,
.mc-landing-page span,
.mc-landing-page li,
.mc-landing-page input,
.mc-landing-page select,
.mc-landing-page button,
.mc-landing-page textarea,
.mc-nav-menu a,
.mc-section-overline,
.mc-hero-description,
.mc-blog-card-excerpt,
.mc-blog-card-category,
.mc-blog-card-date,
.mc-blog-card-link {
  font-family: "DM Sans", sans-serif !important;
}

.mc-landing-page h1,
.mc-landing-page h2,
.mc-landing-page h3,
.mc-landing-page h4,
.mc-hero-title,
.mc-section-title,
.mc-blog-card-title,
.mc-metric-number {
  font-family: "Playfair Display", serif !important;
}

/* === Gallery preview refinement === */

.mc-section-gallery {
  background: #ffffff !important;
  padding: 96px 48px 88px !important;
  overflow-x: hidden !important;
}

.mc-section-gallery .mc-container-wide {
  max-width: 1536px !important;
  margin: 0 auto !important;
}

.mc-section-gallery .mc-text-center {
  text-align: center !important;
  margin-bottom: 72px !important;
}

.mc-section-gallery .mc-section-overline {
  display: block !important;
  color: #8535ED !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.42em !important;
  text-transform: uppercase !important;
  margin-bottom: 28px !important;
}

.mc-section-gallery .mc-section-title {
  font-family: "Playfair Display", serif !important;
  font-size: clamp(48px, 4.8vw, 76px) !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  color: #05071A !important;
  margin: 0 0 28px !important;
}

.mc-section-gallery .mc-section-subtitle {
  max-width: 760px !important;
  margin: 0 auto !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 24px !important;
  line-height: 1.38 !important;
  color: #1A2644 !important;
}

/* Grid 3 columnas */
.mc-gallery-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 32px !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: stretch !important;
}

/* Card visual */
.mc-gallery-card {
  position: relative !important;
  height: 378px !important;
  min-height: 378px !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #101828 !important;
  border: none !important;
  box-shadow: none !important;
  isolation: isolate !important;
}

/* Imagen ocupa toda la card */
.mc-gallery-card-img,
.mc-gallery-card img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Overlay oscuro */
.mc-gallery-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.08) 0%,
    rgba(0, 0, 0, 0.18) 45%,
    rgba(0, 0, 0, 0.72) 100%
  ) !important;
  pointer-events: none !important;
}

.mc-gallery-card-overlay {
  display: none !important;
}

/* Ícono central */
.mc-gallery-play-btn {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 3 !important;
  width: 80px !important;
  height: 80px !important;
  border-radius: 999px !important;
  background: rgba(37, 40, 48, 0.78) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.mc-gallery-play-btn svg {
  width: 32px !important;
  height: 32px !important;
  color: #ffffff !important;
}

/* Texto inferior sobre la imagen */
.mc-gallery-card-content {
  position: absolute !important;
  left: 36px !important;
  right: 36px !important;
  bottom: 34px !important;
  z-index: 4 !important;
  color: #ffffff !important;
  padding: 0 !important;
}

.mc-gallery-card-label {
  margin: 0 0 10px !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 22px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  color: #ffffff !important;
}

.mc-gallery-card-desc {
  margin: 0 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.92) !important;
}

/* Botón Ver galería completa */
.mc-section-gallery .mc-gallery-more,
.mc-section-gallery .mc-gallery-cta {
  display: flex !important;
  justify-content: center !important;
  margin-top: 72px !important;
}

.mc-section-gallery .mc-gallery-more a,
.mc-section-gallery .mc-gallery-cta a,
.mc-section-gallery a.mc-gallery-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 300px !important;
  height: 64px !important;
  padding: 0 36px !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
  color: #ffffff !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
  .mc-section-gallery {
    padding: 88px 24px !important;
  }

  .mc-gallery-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .mc-gallery-card {
    height: 360px !important;
  }

  .mc-section-gallery .mc-section-subtitle {
    font-size: 20px !important;
  }
}
.mc-gallery-cta {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  margin-top: 72px !important;
  position: relative !important;
  z-index: 5 !important;
}

.mc-gallery-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  min-width: 300px !important;
  height: 64px !important;
  padding: 0 36px !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
  color: #ffffff !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 16px 36px rgba(107, 20, 220, 0.22) !important;
}

.mc-gallery-button span {
  font-size: 32px !important;
  line-height: 1 !important;
  transform: translateY(-1px);
}
/* Galería: usar mismo CTA visual del Blog */
.mc-section-gallery .mc-gallery-cta {
  display: flex !important;
  justify-content: center !important;
  margin-top: 64px !important;
}

.mc-section-gallery .mc-blog-more-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 260px !important;
  height: 56px !important;
  padding: 0 36px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
  color: #ffffff !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 14px 32px rgba(107, 20, 220, 0.24) !important;
  transition: transform 220ms ease, box-shadow 220ms ease !important;
}

.mc-section-gallery .mc-blog-more-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 40px rgba(107, 20, 220, 0.32) !important;
}
/* === Gallery CTA identical to Blog CTA === */

.mc-section-gallery .mc-gallery-cta {
  display: flex !important;
  justify-content: center !important;
  margin-top: 64px !important;
}

.mc-section-gallery .mc-gallery-cta .mc-blog-more-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 260px !important;
  height: 56px !important;
  padding: 0 36px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
  color: #ffffff !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 14px 32px rgba(107, 20, 220, 0.24) !important;
  transition: transform 220ms ease, box-shadow 220ms ease !important;
}

.mc-section-gallery .mc-gallery-cta .mc-blog-more-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 18px 40px rgba(107, 20, 220, 0.32) !important;
}
/* === Floating social menu === */

.mc-social-menu {
  position: fixed !important;
  right: 48px !important;
  bottom: 160px !important;
  z-index: 99999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 18px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(20px) scale(0.96) !important;
  pointer-events: none !important;
  transition: opacity 220ms ease, transform 220ms ease, visibility 220ms ease !important;
}

.mc-social-menu.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
  pointer-events: auto !important;
}

.mc-social-link {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  text-decoration: none !important;
}

.mc-social-label {
  display: none !important;
  padding: 10px 18px !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  box-shadow: 0 10px 28px rgba(26, 38, 68, 0.16) !important;
}

.mc-social-link:hover .mc-social-label {
  display: inline-flex !important;
}

.mc-social-icon {
  width: 64px !important;
  height: 64px !important;
  border-radius: 999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 12px 28px rgba(26, 38, 68, 0.18) !important;
}

.mc-floating-buttons {
  position: fixed !important;
  right: 48px !important;
  bottom: 48px !important;
  z-index: 100000 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
}

.mc-fab-button {
  width: 88px !important;
  height: 88px !important;
  border-radius: 999px !important;
  border: none !important;
  background: linear-gradient(135deg, #b585f4 0%, #8535ed 100%) !important;
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 16px 36px rgba(133, 53, 237, 0.36) !important;
  transition: transform 220ms ease, box-shadow 220ms ease !important;
}

.mc-fab-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 20px 44px rgba(133, 53, 237, 0.44) !important;
}

.mc-fab-button.is-open svg {
  transform: rotate(45deg) !important;
}

.mc-fab-button svg {
  transition: transform 220ms ease !important;
}

.mc-fab-label {
  margin: 0 !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  .mc-social-menu {
    right: 24px !important;
    bottom: 136px !important;
  }

  .mc-floating-buttons {
    right: 24px !important;
    bottom: 32px !important;
  }

  .mc-social-icon {
    width: 56px !important;
    height: 56px !important;
  }

  .mc-fab-button {
    width: 72px !important;
    height: 72px !important;
  }
}
/* === Floating social menu refinement === */

/* Oculta el botón "Ir al inicio" cuando el menú social está abierto */
body.mc-social-open #mc-scroll-to-top {
  display: none !important;
}

/* Botón principal */
.mc-floating-buttons:not(.mc-scroll-button) {
  position: fixed !important;
  right: 36px !important;
  bottom: 36px !important;
  z-index: 100000 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
}

/* Botón de scroll separado */
#mc-scroll-to-top {
  position: fixed !important;
  right: 36px !important;
  bottom: 140px !important;
  z-index: 99990 !important;
}

/* Tamaño del botón principal */
#mc-fab-social.mc-fab-button {
  width: 72px !important;
  height: 72px !important;
}

/* El + rota a X */
#mc-fab-social.is-open svg {
  transform: rotate(45deg) !important;
}

/* Menú social */
#mc-social-menu.mc-social-menu {
  position: fixed !important;
  right: 42px !important;
  bottom: 130px !important;
  z-index: 99999 !important;
  display: flex !important;
  flex-direction: column-reverse !important;
  align-items: center !important;
  gap: 16px !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(16px) scale(0.96) !important;
  pointer-events: none !important;
  transition: opacity 220ms ease, transform 220ms ease, visibility 220ms ease !important;
}

#mc-social-menu.mc-social-menu.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
  pointer-events: auto !important;
}

/* Link social */
#mc-social-menu .mc-social-link {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  text-decoration: none !important;
}

/* Íconos más pequeños */
#mc-social-menu .mc-social-icon {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  border-radius: 999px !important;
}

#mc-social-menu .mc-social-icon svg {
  width: 26px !important;
  height: 26px !important;
}

/* Etiqueta tipo tooltip */
#mc-social-menu .mc-social-label {
  display: none !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  box-shadow: 0 10px 28px rgba(26, 38, 68, 0.16) !important;
}

#mc-social-menu .mc-social-link:hover .mc-social-label {
  display: inline-flex !important;
}

/* Mobile */
@media (max-width: 768px) {
  .mc-floating-buttons:not(.mc-scroll-button) {
    right: 22px !important;
    bottom: 28px !important;
  }

  #mc-scroll-to-top {
    right: 22px !important;
    bottom: 116px !important;
  }

  #mc-fab-social.mc-fab-button {
    width: 64px !important;
    height: 64px !important;
  }

  #mc-social-menu.mc-social-menu {
    right: 26px !important;
    bottom: 116px !important;
    gap: 14px !important;
  }

  #mc-social-menu .mc-social-icon {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
  }

  #mc-social-menu .mc-social-icon svg {
    width: 24px !important;
    height: 24px !important;
  }

  .mc-fab-label {
    font-size: 12px !important;
  }
}
/* === Back to top button: small, left, discreet === */

#mc-scroll-to-top {
  position: fixed !important;
  left: 28px !important;
  right: auto !important;
  bottom: 28px !important;
  z-index: 99980 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

#mc-scroll-to-top .mc-fab-button,
#mc-scroll-to-top .mc-fab-small {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  border-radius: 999px !important;
  background: rgba(26, 38, 68, 0.78) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(26, 38, 68, 0.18) !important;
  opacity: 0.72 !important;
}

#mc-scroll-to-top .mc-fab-button:hover,
#mc-scroll-to-top .mc-fab-small:hover {
  opacity: 1 !important;
  transform: translateY(-2px) !important;
}

#mc-scroll-to-top svg {
  width: 20px !important;
  height: 20px !important;
}

#mc-scroll-to-top .mc-fab-label {
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: rgba(26, 38, 68, 0.72) !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

/* En mobile lo dejamos todavía más discreto */
@media (max-width: 768px) {
  #mc-scroll-to-top {
    left: 18px !important;
    bottom: 18px !important;
  }

  #mc-scroll-to-top .mc-fab-button,
  #mc-scroll-to-top .mc-fab-small {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
  }

  #mc-scroll-to-top svg {
    width: 18px !important;
    height: 18px !important;
  }

  #mc-scroll-to-top .mc-fab-label {
    display: none !important;
  }
}
/* === Back to top: discreet left pill === */

#mc-scroll-to-top.mc-back-to-top {
  position: fixed !important;
  left: 28px !important;
  right: auto !important;
  bottom: 28px !important;
  z-index: 99980 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  height: 40px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(26, 38, 68, 0.14) !important;
  border-radius: 999px !important;

  background: rgba(255, 255, 255, 0.84) !important;
  color: #1A2644 !important;
  box-shadow: 0 8px 24px rgba(26, 38, 68, 0.12) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;

  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;

  cursor: pointer !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;

  transition:
    opacity 200ms ease,
    visibility 200ms ease,
    transform 200ms ease,
    background 200ms ease,
    box-shadow 200ms ease !important;
}

#mc-scroll-to-top.mc-back-to-top.is-visible {
  opacity: 0.82 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

#mc-scroll-to-top.mc-back-to-top:hover {
  opacity: 1 !important;
  background: #ffffff !important;
  box-shadow: 0 12px 30px rgba(26, 38, 68, 0.18) !important;
  transform: translateY(-2px) !important;
}

#mc-scroll-to-top.mc-back-to-top svg {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 auto !important;
}

#mc-scroll-to-top.mc-back-to-top span {
  display: inline-block !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  #mc-scroll-to-top.mc-back-to-top {
    left: 16px !important;
    bottom: 18px !important;
    height: 36px !important;
    padding: 0 12px !important;
    font-size: 11px !important;
  }
}
/* === Back to top: left pill button === */

#mc-back-to-top.mc-back-to-top {
  position: fixed !important;
  left: 24px !important;
  right: auto !important;
  bottom: 24px !important;
  z-index: 100001 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  height: 40px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(26, 38, 68, 0.14) !important;
  border-radius: 999px !important;

  background: rgba(255, 255, 255, 0.9) !important;
  color: #1A2644 !important;
  box-shadow: 0 8px 24px rgba(26, 38, 68, 0.14) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;

  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.04em !important;

  cursor: pointer !important;

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;

  transition:
    opacity 200ms ease,
    visibility 200ms ease,
    transform 200ms ease,
    background 200ms ease,
    box-shadow 200ms ease !important;
}

#mc-back-to-top.mc-back-to-top.is-visible {
  opacity: 0.9 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

#mc-back-to-top.mc-back-to-top:hover {
  opacity: 1 !important;
  background: #ffffff !important;
  box-shadow: 0 12px 30px rgba(26, 38, 68, 0.18) !important;
  transform: translateY(-2px) !important;
}

#mc-back-to-top svg {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 auto !important;
}

#mc-back-to-top span {
  display: inline-block !important;
  white-space: nowrap !important;
}

@media (max-width: 768px) {
  #mc-back-to-top.mc-back-to-top {
    left: 16px !important;
    bottom: 18px !important;
    height: 36px !important;
    padding: 0 12px !important;
    font-size: 11px !important;
  }
}
/* === Floating social menu: spacing + softer hover === */

/* Subimos un poco el menú para que WhatsApp no quede pegado al FAB */
#mc-social-menu.mc-social-menu {
  bottom: 180px !important;
  gap: 20px !important;
}

/* Íconos un poco más separados y con transición más suave */
#mc-social-menu .mc-social-link {
  transform: none !important;
  transition: opacity 180ms ease, transform 180ms ease !important;
}

/* Evita hover agresivo */
#mc-social-menu .mc-social-link:hover {
  transform: translateX(-2px) !important;
}

/* Íconos sin expansión fuerte */
#mc-social-menu .mc-social-icon {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  min-height: 54px !important;
  transform: none !important;
  transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease !important;
  box-shadow: 0 10px 24px rgba(26, 38, 68, 0.14) !important;
}

/* Hover más sutil */
#mc-social-menu .mc-social-link:hover .mc-social-icon {
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 26px rgba(26, 38, 68, 0.18) !important;
}

/* Tooltip menos invasivo */
#mc-social-menu .mc-social-label {
  padding: 7px 12px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  box-shadow: 0 8px 20px rgba(26, 38, 68, 0.12) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateX(4px) !important;
  transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease !important;
}

/* Aparece suave, no tan brusco */
#mc-social-menu .mc-social-link:hover .mc-social-label {
  display: inline-flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(0) !important;
}

/* Ajuste específico mobile */
@media (max-width: 768px) {
  #mc-social-menu.mc-social-menu {
    bottom: 156px !important;
    gap: 18px !important;
  }

  #mc-social-menu .mc-social-icon {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
  }

  #mc-social-menu .mc-social-icon svg {
    width: 23px !important;
    height: 23px !important;
  }

  #mc-social-menu .mc-social-label {
    font-size: 12px !important;
    padding: 7px 11px !important;
  }
}
/* === Floating social menu: softer and friendlier interaction === */

/* Mantiene los links estables */
#mc-social-menu .mc-social-link {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  text-decoration: none !important;
  transform: none !important;
  transition: opacity 180ms ease !important;
}

/* Hover casi imperceptible: no desplaza fuerte */
#mc-social-menu .mc-social-link:hover {
  transform: none !important;
}

/* Íconos con microinteracción suave */
#mc-social-menu .mc-social-icon {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  min-height: 52px !important;
  transform: none !important;
  transition:
    transform 220ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 220ms ease,
    filter 220ms ease !important;
  box-shadow: 0 8px 22px rgba(26, 38, 68, 0.14) !important;
}

/* En hover solo respira un poco */
#mc-social-menu .mc-social-link:hover .mc-social-icon {
  transform: scale(1.035) !important;
  box-shadow: 0 10px 26px rgba(26, 38, 68, 0.18) !important;
  filter: saturate(1.04) !important;
}

/* Tooltip estable: no usa display none/block */
#mc-social-menu .mc-social-label {
  display: inline-flex !important;
  position: absolute !important;
  right: 68px !important;
  top: 50% !important;
  transform: translateY(-50%) translateX(8px) !important;

  padding: 8px 13px !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 22px rgba(26, 38, 68, 0.12) !important;

  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;

  transition:
    opacity 180ms ease 80ms,
    transform 180ms ease 80ms,
    visibility 180ms ease 80ms !important;
}

/* Aparece suave y con delay */
#mc-social-menu .mc-social-link:hover .mc-social-label,
#mc-social-menu .mc-social-link:focus-visible .mc-social-label {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(-50%) translateX(0) !important;
}

/* Feedback accesible por teclado */
#mc-social-menu .mc-social-link:focus-visible .mc-social-icon {
  outline: 2px solid rgba(133, 53, 237, 0.42) !important;
  outline-offset: 4px !important;
}

/* Mobile: sin tooltip para evitar comportamiento extraño */
@media (max-width: 768px) {
  #mc-social-menu .mc-social-label {
    display: none !important;
  }

  #mc-social-menu .mc-social-icon {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
  }

  #mc-social-menu .mc-social-link:hover .mc-social-icon {
    transform: none !important;
  }
}

/* Respeta usuarios con reducción de movimiento */
@media (prefers-reduced-motion: reduce) {
  #mc-social-menu .mc-social-link,
  #mc-social-menu .mc-social-icon,
  #mc-social-menu .mc-social-label {
    transition: none !important;
    transform: none !important;
  }
}
/* Eliminar comillas decorativas del quote */
.mc-quote::before,
.mc-quote::after,
blockquote::before,
blockquote::after {
  content: none !important;
  display: none !important;
}
/* === Contact form refinement === */

.mc-section-contact .mc-contact-form {
  width: min(100%, 500px) !important;
  margin: 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

/* Nombre y correo a ancho completo */
.mc-section-contact .mc-contact-form > input[type="text"],
.mc-section-contact .mc-contact-form > input[type="email"] {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Estilo base de inputs */
.mc-section-contact .mc-contact-form input,
.mc-section-contact .mc-contact-form select {
  height: 58px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: #ffffff !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

/* Placeholder */
.mc-section-contact .mc-contact-form input::placeholder {
  color: rgba(255, 255, 255, 0.56) !important;
}

/* Grupo indicativo + teléfono */
.mc-section-contact .mc-phone-group {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 150px 1fr !important;
  gap: 12px !important;
  box-sizing: border-box !important;
}

/* Indicativo completo */
.mc-section-contact .mc-phone-group select {
  width: 150px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  padding-left: 16px !important;
  padding-right: 36px !important;
  appearance: auto !important;
  -webkit-appearance: menulist !important;
}

/* Teléfono ocupa el resto */
.mc-section-contact .mc-phone-group input[type="tel"] {
  width: 100% !important;
  min-width: 0 !important;
}

/* Botón full width */
.mc-section-contact .mc-btn-submit {
  width: 100% !important;
  height: 60px !important;
  margin-top: 8px !important;
  border-radius: 8px !important;
}

/* Focus más premium */
.mc-section-contact .mc-contact-form input:focus,
.mc-section-contact .mc-contact-form select:focus {
  outline: none !important;
  border-color: rgba(181, 133, 244, 0.9) !important;
  box-shadow: 0 0 0 3px rgba(181, 133, 244, 0.18) !important;
}

/* Mobile */
@media (max-width: 640px) {
  .mc-section-contact .mc-contact-form {
    width: min(100%, 340px) !important;
  }

  .mc-section-contact .mc-phone-group {
    grid-template-columns: 132px 1fr !important;
    gap: 10px !important;
  }

  .mc-section-contact .mc-phone-group select {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    padding-left: 12px !important;
    padding-right: 28px !important;
  }
}

/* === Método GG cards: hover expansion === */

.mc-c-cards {
  align-items: flex-start !important;
  overflow: visible !important;
}

.mc-c-card-interactive {
  position: relative !important;
  min-height: 211px !important;
  height: 211px !important;
  padding: 48px 36px !important;
  overflow: hidden !important;
  cursor: default !important;
  transition:
    height 280ms cubic-bezier(0.22, 1, 0.36, 1),
    min-height 280ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 220ms ease,
    box-shadow 220ms ease !important;
}

.mc-c-card-interactive:hover,
.mc-c-card-interactive:focus-visible {
  height: 458px !important;
  min-height: 458px !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 48px rgba(26, 38, 68, 0.18) !important;
  z-index: 5 !important;
}

.mc-c-card-interactive .mc-c-letter {
  position: absolute !important;
  right: 16px !important;
  top: -84px !important;
  font-family: "Playfair Display", serif !important;
  font-size: 206px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  color: rgba(255, 255, 255, 0.08) !important;
  pointer-events: none !important;
}

.mc-c-card-interactive .mc-c-content {
  position: relative !important;
  z-index: 2 !important;
}

.mc-c-card-interactive h3 {
  font-family: "Playfair Display", serif !important;
  font-size: 28px !important;
  line-height: 33.6px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin: 0 0 7px !important;
}

.mc-c-card-interactive .mc-c-subtitle {
  font-family: "DM Sans", sans-serif !important;
  font-size: 15px !important;
  line-height: 25.5px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.9) !important;
  margin: 0 0 7px !important;
}

.mc-c-card-interactive .mc-c-description {
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  line-height: 20.8px !important;
  font-style: italic !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.6) !important;
  margin: 0 !important;
}

.mc-c-details {
  list-style: none !important;
  padding: 24px 0 0 !important;
  margin: 0 !important;
  opacity: 0 !important;
  transform: translateY(-6px) !important;
  transition:
    opacity 220ms ease 80ms,
    transform 220ms ease 80ms !important;
}

.mc-c-card-interactive:hover .mc-c-details,
.mc-c-card-interactive:focus-visible .mc-c-details {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.mc-c-details li {
  position: relative !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 7px 0 7px 18px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  line-height: 19.5px !important;
  font-weight: 400 !important;
  color: rgba(255, 255, 255, 0.85) !important;
}

.mc-c-details li:last-child {
  border-bottom: none !important;
}

.mc-c-details li::before {
  content: "›" !important;
  position: absolute !important;
  left: 0 !important;
  top: 7px !important;
  color: rgba(255, 255, 255, 0.45) !important;
  font-size: 16px !important;
  line-height: 24px !important;
  font-weight: 300 !important;
}

/* Mobile: mostrar contenido siempre para evitar hover inaccesible */
@media (max-width: 1024px) {
  .mc-c-card-interactive,
  .mc-c-card-interactive:hover,
  .mc-c-card-interactive:focus-visible {
    height: auto !important;
    min-height: 360px !important;
    transform: none !important;
  }

  .mc-c-details {
    opacity: 1 !important;
    transform: none !important;
  }
}
/* === Blog page === */

.mc-blog-page {
  margin: 0 !important;
  background: #ffffff !important;
  color: #1A1A1A !important;
  font-family: "DM Sans", sans-serif !important;
  overflow-x: hidden !important;
}

.mc-blog-page .mc-nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  height: 96px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  border-bottom: 1px solid rgba(26, 38, 68, 0.08) !important;
}

.mc-blog-main {
  padding-top: 96px !important;
}

.mc-blog-hero {
  background: #ECEEFE !important;
  padding: 128px 32px 104px !important;
  text-align: center !important;
}

.mc-blog-hero-inner {
  max-width: 900px !important;
  margin: 0 auto !important;
}

.mc-blog-hero .mc-section-overline {
  color: #8535ED !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.36em !important;
  text-transform: uppercase !important;
  margin: 0 0 24px !important;
}

.mc-blog-hero h1 {
  margin: 0 auto 28px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(52px, 6vw, 88px) !important;
  line-height: 0.98 !important;
  font-weight: 400 !important;
  letter-spacing: -0.04em !important;
  color: #111111 !important;
}

.mc-blog-hero p {
  max-width: 720px !important;
  margin: 0 auto !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  line-height: 1.5 !important;
}

.mc-blog-list-section {
  background: #ffffff !important;
  padding: 104px 32px 120px !important;
}

.mc-blog-list-container {
  max-width: 1440px !important;
  margin: 0 auto !important;
}

.mc-blog-list-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 48px !important;
}

.mc-blog-list-card {
  overflow: hidden !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 36px rgba(20, 24, 42, 0.12) !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 610px !important;
}

.mc-blog-list-image {
  display: block !important;
  width: 100% !important;
  height: 275px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
}

.mc-blog-list-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 500ms ease !important;
}

.mc-blog-list-card:hover .mc-blog-list-image img {
  transform: scale(1.04) !important;
}

.mc-blog-list-image-placeholder {
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
}

.mc-blog-list-content {
  padding: 38px 48px 44px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
}

.mc-blog-list-meta {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  margin-bottom: 24px !important;
}

.mc-blog-list-category {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: rgba(133, 53, 237, 0.18) !important;
  color: #6B14DC !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.mc-blog-list-date {
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
  color: #5A5A7A !important;
}

.mc-blog-list-title {
  margin: 0 0 24px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(29px, 2vw, 40px) !important;
  line-height: 1.15 !important;
  font-weight: 500 !important;
  color: #05071A !important;
}

.mc-blog-list-title a {
  color: inherit !important;
  text-decoration: none !important;
}

.mc-blog-list-title a:hover {
  color: #6B14DC !important;
}

.mc-blog-list-excerpt {
  margin: 0 0 34px !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  line-height: 1.45 !important;
  color: #25304D !important;
}

.mc-blog-list-link {
  margin-top: auto !important;
  font-family: "DM Sans", sans-serif !important;
  color: #6B14DC !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.mc-blog-pagination {
  margin-top: 72px !important;
  display: flex !important;
  justify-content: center !important;
}

.mc-blog-pagination .nav-links {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
}

.mc-blog-pagination a,
.mc-blog-pagination span {
  min-width: 42px !important;
  height: 42px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.mc-blog-pagination a {
  background: rgba(133, 53, 237, 0.12) !important;
  color: #6B14DC !important;
}

.mc-blog-pagination .current {
  background: #6B14DC !important;
  color: #ffffff !important;
}

.mc-blog-empty {
  max-width: 720px !important;
  margin: 0 auto !important;
  text-align: center !important;
  padding: 80px 32px !important;
  background: #ECEEFE !important;
  border-radius: 24px !important;
}

.mc-blog-empty h2 {
  font-family: "Playfair Display", serif !important;
  font-size: 42px !important;
  margin: 0 0 16px !important;
}

.mc-blog-empty p {
  font-family: "DM Sans", sans-serif !important;
  font-size: 18px !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  .mc-blog-list-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .mc-blog-list-card {
    min-height: auto !important;
  }

  .mc-blog-hero {
    padding: 104px 24px 80px !important;
  }

  .mc-blog-list-section {
    padding: 80px 24px 96px !important;
  }

  .mc-blog-list-content {
    padding: 32px 28px 38px !important;
  }
}
/* === Single post page === */

.mc-single-page {
  margin: 0 !important;
  background: #ffffff !important;
  color: #1A1A1A !important;
  font-family: "DM Sans", sans-serif !important;
  overflow-x: hidden !important;
}

.mc-single-main {
  padding-top: 96px !important;
}

.mc-single-hero {
  background: #ECEEFE !important;
  padding: 104px 32px 88px !important;
  text-align: center !important;
}

.mc-single-hero-inner {
  max-width: 980px !important;
  margin: 0 auto !important;
}

.mc-single-back {
  display: inline-flex !important;
  margin-bottom: 40px !important;
  color: #6B14DC !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.mc-single-meta {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  margin-bottom: 28px !important;
}

.mc-single-category {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  background: rgba(133, 53, 237, 0.18) !important;
  color: #6B14DC !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.mc-single-date {
  color: #5A5A7A !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
}

.mc-single-hero h1 {
  max-width: 980px !important;
  margin: 0 auto 28px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(52px, 6vw, 86px) !important;
  line-height: 0.98 !important;
  font-weight: 400 !important;
  letter-spacing: -0.04em !important;
  color: #111111 !important;
}

.mc-single-excerpt {
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 21px !important;
  line-height: 1.5 !important;
}

.mc-single-featured {
  max-width: 1180px !important;
  margin: -48px auto 0 !important;
  padding: 0 32px !important;
  position: relative !important;
  z-index: 2 !important;
}

.mc-single-featured img {
  width: 100% !important;
  max-height: 620px !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 60px rgba(26, 38, 68, 0.14) !important;
}

.mc-single-content-section {
  padding: 88px 32px 112px !important;
  background: #ffffff !important;
}

.mc-single-content {
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #1A1A1A !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 19px !important;
  line-height: 1.8 !important;
}

.mc-single-content p {
  margin: 0 0 28px !important;
}

.mc-single-content h2,
.mc-single-content h3,
.mc-single-content h4 {
  font-family: "Playfair Display", serif !important;
  color: #111111 !important;
  font-weight: 500 !important;
  margin: 56px 0 22px !important;
}

.mc-single-content h2 {
  font-size: 42px !important;
  line-height: 1.12 !important;
}

.mc-single-content h3 {
  font-size: 32px !important;
  line-height: 1.16 !important;
}

.mc-single-content a {
  color: #6B14DC !important;
  font-weight: 700 !important;
}

.mc-single-content blockquote {
  margin: 48px 0 !important;
  padding: 32px 36px !important;
  border-left: 4px solid #8535ED !important;
  background: #ECEEFE !important;
  border-radius: 0 18px 18px 0 !important;
  font-family: "Playfair Display", serif !important;
  font-size: 28px !important;
  line-height: 1.35 !important;
  font-style: italic !important;
  color: #111111 !important;
}

.mc-single-content ul,
.mc-single-content ol {
  margin: 0 0 32px 24px !important;
  padding: 0 !important;
}

.mc-single-content li {
  margin-bottom: 12px !important;
}

.mc-single-related {
  background: #ECEEFE !important;
  padding: 96px 32px 120px !important;
}

.mc-single-related-container {
  max-width: 1440px !important;
  margin: 0 auto !important;
}

.mc-single-related .mc-section-overline {
  text-align: center !important;
  color: #8535ED !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.36em !important;
  text-transform: uppercase !important;
  margin: 0 0 20px !important;
}

.mc-single-related h2 {
  margin: 0 0 72px !important;
  text-align: center !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(42px, 5vw, 72px) !important;
  line-height: 1 !important;
  font-weight: 400 !important;
  color: #111111 !important;
}

.mc-single-related-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 48px !important;
}

@media (max-width: 1024px) {
  .mc-single-hero {
    padding: 96px 24px 72px !important;
  }

  .mc-single-featured {
    padding: 0 24px !important;
  }

  .mc-single-content-section {
    padding: 72px 24px 88px !important;
  }

  .mc-single-related-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .mc-single-hero h1 {
    font-size: clamp(42px, 11vw, 64px) !important;
  }

  .mc-single-content {
    font-size: 17px !important;
  }
}
/* === Unified nav margins: home, blog and single posts === */

.mc-landing-page .mc-nav,
.mc-blog-page .mc-nav,
.mc-single-page .mc-nav {
  width: 100% !important;
  height: 96px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.mc-landing-page .mc-nav-container,
.mc-blog-page .mc-nav-container,
.mc-single-page .mc-nav-container {
  width: 100% !important;
  max-width: 1400px !important;
  height: 96px !important;
  margin: 0 auto !important;
  padding: 0 48px !important;
  box-sizing: border-box !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

/* Logo */
.mc-landing-page .mc-logo,
.mc-blog-page .mc-logo,
.mc-single-page .mc-logo {
  flex-shrink: 0 !important;
  margin: 0 !important;
}

.mc-landing-page .mc-logo-img,
.mc-blog-page .mc-logo-img,
.mc-single-page .mc-logo-img {
  height: 64px !important;
  width: auto !important;
  max-width: 320px !important;
  display: block !important;
}

/* Menú */
.mc-landing-page .mc-nav-menu,
.mc-blog-page .mc-nav-menu,
.mc-single-page .mc-nav-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 48px !important;
  margin-left: auto !important;
}

.mc-landing-page .mc-nav-menu a,
.mc-blog-page .mc-nav-menu a,
.mc-single-page .mc-nav-menu a {
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 16px !important;
  letter-spacing: 3.6px !important;
  text-transform: uppercase !important;
  color: #1A2644 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .mc-landing-page .mc-nav-container,
  .mc-blog-page .mc-nav-container,
  .mc-single-page .mc-nav-container {
    padding: 0 32px !important;
  }

  .mc-landing-page .mc-nav-menu,
  .mc-blog-page .mc-nav-menu,
  .mc-single-page .mc-nav-menu {
    gap: 28px !important;
  }

  .mc-landing-page .mc-logo-img,
  .mc-blog-page .mc-logo-img,
  .mc-single-page .mc-logo-img {
    height: 52px !important;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .mc-landing-page .mc-nav,
  .mc-blog-page .mc-nav,
  .mc-single-page .mc-nav {
    height: auto !important;
    min-height: 82px !important;
  }

  .mc-landing-page .mc-nav-container,
  .mc-blog-page .mc-nav-container,
  .mc-single-page .mc-nav-container {
    height: auto !important;
    min-height: 82px !important;
    padding: 16px 20px !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 16px !important;
  }

  .mc-landing-page .mc-nav-menu,
  .mc-blog-page .mc-nav-menu,
  .mc-single-page .mc-nav-menu {
    width: 100% !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 16px 22px !important;
    margin-left: 0 !important;
  }

  .mc-landing-page .mc-logo-img,
  .mc-blog-page .mc-logo-img,
  .mc-single-page .mc-logo-img {
    height: 46px !important;
    max-width: 260px !important;
  }
}
/* === HOME NAV: igualar márgenes visuales del blog === */

.mc-landing-page .mc-nav-container {
  width: 100% !important;
  max-width: 1240px !important;
  height: 96px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 48px !important;
  padding-right: 48px !important;
  box-sizing: border-box !important;
}

.mc-landing-page .mc-logo {
  margin-left: 0 !important;
}

.mc-landing-page .mc-nav-menu {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 48px !important;
}

/* Evita que el nav se estire más que el blog */
.mc-landing-page .mc-nav {
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* === HOME NAV HARD FIX === */

body.mc-landing-page nav.mc-nav {
  padding-left: clamp(48px, 8vw, 160px) !important;
  padding-right: clamp(48px, 8vw, 160px) !important;
  box-sizing: border-box !important;
}

body.mc-landing-page nav.mc-nav .mc-nav-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.mc-landing-page nav.mc-nav .mc-logo {
  margin-left: 0 !important;
}

body.mc-landing-page nav.mc-nav .mc-nav-menu {
  margin-left: auto !important;
  gap: 48px !important;
}
/* === Gallery page === */

.mc-gallery-page {
  margin: 0 !important;
  background: #ffffff !important;
  color: #1A1A1A !important;
  font-family: "DM Sans", sans-serif !important;
  overflow-x: hidden !important;
}

.mc-gallery-main {
  padding-top: 96px !important;
}

.mc-gallery-hero {
  background: #ECEEFE !important;
  padding: 132px 32px 104px !important;
  text-align: center !important;
}

.mc-gallery-hero-inner {
  max-width: 920px !important;
  margin: 0 auto !important;
}

.mc-gallery-hero .mc-section-overline {
  color: #8535ED !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.36em !important;
  text-transform: uppercase !important;
  margin: 0 0 24px !important;
}

.mc-gallery-hero h1 {
  margin: 0 auto 28px !important;
  font-family: "Playfair Display", serif !important;
  font-size: clamp(54px, 6vw, 88px) !important;
  line-height: 0.98 !important;
  font-weight: 400 !important;
  letter-spacing: -0.04em !important;
  color: #111111 !important;
}

.mc-gallery-hero p {
  max-width: 720px !important;
  margin: 0 auto !important;
  color: #1A2644 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 20px !important;
  line-height: 1.5 !important;
}

.mc-gallery-filter-section {
  background: #ffffff !important;
  padding: 48px 32px 0 !important;
}

.mc-gallery-filter-container {
  max-width: 1180px !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.mc-gallery-filter {
  height: 44px !important;
  padding: 0 22px !important;
  border: 1px solid rgba(133, 53, 237, 0.28) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #6B14DC !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease !important;
}

.mc-gallery-filter:hover,
.mc-gallery-filter.is-active {
  background: #6B14DC !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

.mc-gallery-full-section {
  background: #ffffff !important;
  padding: 64px 32px 124px !important;
}

.mc-gallery-full-container {
  max-width: 1440px !important;
  margin: 0 auto !important;
}

.mc-gallery-full-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 36px !important;
}

.mc-gallery-full-card {
  background: #ffffff !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 14px 38px rgba(26, 38, 68, 0.12) !important;
  transition: transform 240ms ease, box-shadow 240ms ease !important;
}

.mc-gallery-full-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 22px 54px rgba(26, 38, 68, 0.16) !important;
}

.mc-gallery-full-media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 300px !important;
  overflow: hidden !important;
  background: #1A2644 !important;
}

.mc-gallery-full-media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.04) 0%,
    rgba(0, 0, 0, 0.16) 52%,
    rgba(0, 0, 0, 0.58) 100%
  ) !important;
  z-index: 1 !important;
}

.mc-gallery-full-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 520ms ease !important;
}

.mc-gallery-full-card:hover .mc-gallery-full-media img {
  transform: scale(1.045) !important;
}

.mc-gallery-full-icon {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 2 !important;
  transform: translate(-50%, -50%) !important;
  width: 72px !important;
  height: 72px !important;
  border-radius: 999px !important;
  background: rgba(37, 40, 48, 0.76) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 220ms ease, background 220ms ease !important;
}

.mc-gallery-full-card:hover .mc-gallery-full-icon {
  transform: translate(-50%, -50%) scale(1.04) !important;
  background: rgba(133, 53, 237, 0.86) !important;
}

.mc-gallery-full-content {
  padding: 30px 32px 36px !important;
}

.mc-gallery-full-category {
  display: inline-flex !important;
  margin-bottom: 18px !important;
  color: #6B14DC !important;
  background: rgba(133, 53, 237, 0.14) !important;
  border-radius: 999px !important;
  padding: 6px 14px !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.mc-gallery-full-content h2 {
  margin: 0 0 14px !important;
  font-family: "Playfair Display", serif !important;
  font-size: 30px !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
  color: #101828 !important;
}

.mc-gallery-full-content p {
  margin: 0 !important;
  color: #4A5565 !important;
  font-family: "DM Sans", sans-serif !important;
  font-size: 17px !important;
  line-height: 1.5 !important;
}

.mc-gallery-full-card.is-hidden {
  display: none !important;
}

@media (max-width: 1024px) {
  .mc-gallery-full-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  .mc-gallery-hero {
    padding: 104px 24px 80px !important;
  }

  .mc-gallery-full-section {
    padding: 56px 24px 96px !important;
  }

  .mc-gallery-full-media {
    height: 360px !important;
  }
}

@media (max-width: 640px) {
  .mc-gallery-hero h1 {
    font-size: clamp(42px, 12vw, 58px) !important;
  }

  .mc-gallery-hero p {
    font-size: 18px !important;
  }

  .mc-gallery-full-media {
    height: 260px !important;
  }

  .mc-gallery-full-content {
    padding: 26px 24px 30px !important;
  }

  .mc-gallery-full-content h2 {
    font-size: 26px !important;
  }
}
/* === Home blog preview from real WordPress posts === */

.mc-section-blog .mc-blog-card-image {
  display: block !important;
  width: 100% !important;
  height: 192px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
  text-decoration: none !important;
}

.mc-section-blog .mc-blog-card-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 420ms ease !important;
}

.mc-section-blog .mc-blog-card:hover .mc-blog-card-image img {
  transform: scale(1.04) !important;
}

.mc-section-blog .mc-blog-card-image-placeholder {
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
}

.mc-section-blog .mc-blog-card-title a {
  color: inherit !important;
  text-decoration: none !important;
}

.mc-section-blog .mc-blog-card-title a:hover {
  color: #6B14DC !important;
}

.mc-section-blog .mc-blog-card-meta {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin-bottom: 18px !important;
}

.mc-section-blog .mc-blog-card-date {
  font-family: "DM Sans", sans-serif !important;
  font-size: 14px !important;
  color: #6A7282 !important;
}

.mc-blog-empty-home {
  text-align: center !important;
  font-family: "DM Sans", sans-serif !important;
  color: #1A2644 !important;
  font-size: 16px !important;
  padding: 48px 0 !important;
}

/* === Mobile hamburger menu === */

.mc-mobile-menu-toggle {
  display: none !important;
}

/* Desktop se mantiene igual */
@media (min-width: 769px) {
  .mc-nav-menu {
    display: flex !important;
  }
}

@media (max-width: 768px) {
  body.mc-menu-open {
    overflow: hidden !important;
  }

  .mc-landing-page .mc-nav,
  .mc-blog-page .mc-nav,
  .mc-single-page .mc-nav,
  .mc-gallery-page .mc-nav {
    height: 76px !important;
    min-height: 76px !important;
    padding: 0 20px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-bottom: 1px solid rgba(26, 38, 68, 0.08) !important;
  }

  .mc-landing-page .mc-nav-container,
  .mc-blog-page .mc-nav-container,
  .mc-single-page .mc-nav-container,
  .mc-gallery-page .mc-nav-container {
    width: 100% !important;
    height: 76px !important;
    min-height: 76px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
  }

  .mc-landing-page .mc-logo,
  .mc-blog-page .mc-logo,
  .mc-single-page .mc-logo,
  .mc-gallery-page .mc-logo {
    position: relative !important;
    z-index: 100002 !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
  }

  .mc-landing-page .mc-logo-img,
  .mc-blog-page .mc-logo-img,
  .mc-single-page .mc-logo-img,
  .mc-gallery-page .mc-logo-img {
    height: 42px !important;
    width: auto !important;
    max-width: 230px !important;
  }

  .mc-mobile-menu-toggle {
    position: relative !important;
    z-index: 100002 !important;
    width: 44px !important;
    height: 44px !important;
    border: 1px solid rgba(26, 38, 68, 0.12) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    padding: 0 !important;
    cursor: pointer !important;
    box-shadow: 0 8px 22px rgba(26, 38, 68, 0.08) !important;
  }

  .mc-mobile-menu-toggle span {
    width: 18px !important;
    height: 1.5px !important;
    border-radius: 99px !important;
    background: #1A2644 !important;
    display: block !important;
    transition: transform 220ms ease, opacity 220ms ease !important;
  }

  body.mc-menu-open .mc-mobile-menu-toggle span:nth-child(1) {
    transform: translateY(6.5px) rotate(45deg) !important;
  }

  body.mc-menu-open .mc-mobile-menu-toggle span:nth-child(2) {
    opacity: 0 !important;
  }

  body.mc-menu-open .mc-mobile-menu-toggle span:nth-child(3) {
    transform: translateY(-6.5px) rotate(-45deg) !important;
  }

  .mc-landing-page .mc-nav-menu,
  .mc-blog-page .mc-nav-menu,
  .mc-single-page .mc-nav-menu,
  .mc-gallery-page .mc-nav-menu {
    position: fixed !important;
    top: 76px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 100001 !important;

    width: 100% !important;
    height: calc(100vh - 76px) !important;
    padding: 56px 28px 32px !important;
    margin: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0 !important;

    background: rgba(236, 238, 254, 0.98) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;

    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-8px) !important;
    transition: opacity 220ms ease, visibility 220ms ease, transform 220ms ease !important;
  }

  body.mc-menu-open .mc-landing-page .mc-nav-menu,
  body.mc-menu-open .mc-blog-page .mc-nav-menu,
  body.mc-menu-open .mc-single-page .mc-nav-menu,
  body.mc-menu-open .mc-gallery-page .mc-nav-menu,
  body.mc-menu-open .mc-nav-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .mc-landing-page .mc-nav-menu a,
  .mc-blog-page .mc-nav-menu a,
  .mc-single-page .mc-nav-menu a,
  .mc-gallery-page .mc-nav-menu a {
    width: 100% !important;
    padding: 20px 0 !important;
    border-bottom: 1px solid rgba(26, 38, 68, 0.1) !important;

    font-family: "DM Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0.32em !important;
    text-transform: uppercase !important;
    color: #1A2644 !important;
    text-decoration: none !important;
  }

  .mc-landing-page .mc-nav-menu a:last-child,
  .mc-blog-page .mc-nav-menu a:last-child,
  .mc-single-page .mc-nav-menu a:last-child,
  .mc-gallery-page .mc-nav-menu a:last-child {
    border-bottom: none !important;
  }
}
/* === Mobile header refinement: match Figma 414px === */

@media (max-width: 768px) {
  .mc-landing-page .mc-nav,
  .mc-blog-page .mc-nav,
  .mc-single-page .mc-nav,
  .mc-gallery-page .mc-nav {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom: 1px solid #F3F4F6 !important;
    box-shadow: none !important;
  }

  .mc-landing-page .mc-nav-container,
  .mc-blog-page .mc-nav-container,
  .mc-single-page .mc-nav-container,
  .mc-gallery-page .mc-nav-container {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 24px !important;
    box-sizing: border-box !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
  }

  .mc-landing-page .mc-logo,
  .mc-blog-page .mc-logo,
  .mc-single-page .mc-logo,
  .mc-gallery-page .mc-logo {
    display: flex !important;
    align-items: center !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    position: relative !important;
    z-index: 100002 !important;
  }

  .mc-landing-page .mc-logo-img,
  .mc-blog-page .mc-logo-img,
  .mc-single-page .mc-logo-img,
  .mc-gallery-page .mc-logo-img {
    height: 44px !important;
    width: auto !important;
    max-width: 197px !important;
    object-fit: contain !important;
    display: block !important;
  }

  .mc-mobile-menu-toggle {
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;

    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    position: relative !important;
    z-index: 100002 !important;
    cursor: pointer !important;
  }

  .mc-mobile-menu-toggle span {
    width: 24px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #1A2644 !important;
    display: block !important;
    transition: transform 220ms ease, opacity 220ms ease !important;
  }

  body.mc-menu-open .mc-mobile-menu-toggle span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
  }

  body.mc-menu-open .mc-mobile-menu-toggle span:nth-child(2) {
    opacity: 0 !important;
  }

  body.mc-menu-open .mc-mobile-menu-toggle span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
  }

  .mc-landing-page .mc-nav-menu,
  .mc-blog-page .mc-nav-menu,
  .mc-single-page .mc-nav-menu,
  .mc-gallery-page .mc-nav-menu {
    top: 64px !important;
    height: calc(100vh - 64px) !important;
  }

  .mc-landing-page .mc-hero,
  .mc-blog-page .mc-blog-main,
  .mc-single-page .mc-single-main,
  .mc-gallery-page .mc-gallery-main {
    padding-top: 64px !important;
  }
}
/* === HOME mobile header override: match Figma === */

@media (max-width: 768px) {
  body.mc-landing-page nav.mc-nav {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, 0.92) !important;
    border-bottom: 1px solid #F3F4F6 !important;
    box-shadow: none !important;
  }

  body.mc-landing-page nav.mc-nav .mc-nav-container {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    max-width: none !important;
    margin: 0 !important;

    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page nav.mc-nav .mc-logo {
    flex: 0 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 64px) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.mc-landing-page nav.mc-nav .mc-logo-img {
    height: 44px !important;
    width: auto !important;
    max-width: 197px !important;
    display: block !important;
    object-fit: contain !important;
  }

  body.mc-landing-page nav.mc-nav .mc-mobile-menu-toggle {
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    margin-left: auto !important;
    margin-right: 0 !important;
    padding: 0 !important;

    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body.mc-landing-page nav.mc-nav .mc-mobile-menu-toggle span {
    width: 24px !important;
    height: 2px !important;
    background: #1A2644 !important;
  }

  body.mc-landing-page .mc-nav-menu {
    top: 64px !important;
    height: calc(100vh - 64px) !important;
  }
}
/* === HOME mobile hero spacing restore === */

@media (max-width: 768px) {
  body.mc-landing-page .mc-hero {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-top: 96px !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-hero-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-hero-text {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-hero-overline,
  body.mc-landing-page .mc-hero-title,
  body.mc-landing-page .mc-hero-description,
  body.mc-landing-page .mc-hero-buttons {
    max-width: 100% !important;
  }

  body.mc-landing-page .mc-hero-title {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
/* === FINAL HOME MOBILE HEADER FIX === */

@media (max-width: 768px) {
  body.mc-landing-page nav.mc-nav {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  body.mc-landing-page nav.mc-nav .mc-nav-container {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    max-width: none !important;

    padding: 0 24px !important;
    margin: 0 !important;
    box-sizing: border-box !important;

    display: grid !important;
    grid-template-columns: minmax(0, 197px) 40px !important;
    align-items: center !important;
    justify-content: space-between !important;
    column-gap: 24px !important;
  }

  body.mc-landing-page nav.mc-nav .mc-logo {
    width: 197px !important;
    max-width: 197px !important;
    height: 44px !important;
    min-width: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.mc-landing-page nav.mc-nav .mc-logo-img {
    width: 197px !important;
    max-width: 197px !important;
    height: 44px !important;
    object-fit: contain !important;
    object-position: left center !important;
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.mc-landing-page nav.mc-nav .mc-mobile-menu-toggle {
    grid-column: 2 !important;
    justify-self: end !important;

    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.mc-landing-page nav.mc-nav .mc-nav-menu {
    top: 64px !important;
  }
}
/* === HOME mobile header: force visual side margins === */

@media (max-width: 768px) {
  body.mc-landing-page nav.mc-nav {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.mc-landing-page nav.mc-nav .mc-nav-container {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page nav.mc-nav .mc-logo {
    margin-left: 24px !important;
    margin-right: 16px !important;
    padding: 0 !important;

    width: auto !important;
    max-width: calc(100vw - 96px) !important;
    height: 44px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-shrink: 1 !important;
  }

  body.mc-landing-page nav.mc-nav .mc-logo-img {
    height: 44px !important;
    width: auto !important;
    max-width: 197px !important;
    object-fit: contain !important;
    object-position: left center !important;
    display: block !important;
  }

  body.mc-landing-page nav.mc-nav .mc-mobile-menu-toggle {
    margin-left: auto !important;
    margin-right: 24px !important;

    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    flex-shrink: 0 !important;
  }
}
@media (max-width: 768px) {
  body.mc-landing-page .mc-hero-image {
    width: 100% !important;
    margin: 24px auto 0 !important;
    padding: 0 !important;
  }

  body.mc-landing-page .mc-hero-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 430px !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    border-radius: 24px !important;
  }
}
/* === HOME mobile hero: image first === */

@media (max-width: 768px) {
  body.mc-landing-page .mc-hero {
    padding: 88px 24px 40px !important;
    background: #ECEEFE !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-hero-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 32px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  body.mc-landing-page .mc-hero-image {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 8px !important;
    padding: 0 !important;
    display: block !important;
  }

  body.mc-landing-page .mc-hero-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 430px !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    border-radius: 20px !important;
  }

  body.mc-landing-page .mc-hero-text {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body.mc-landing-page .mc-hero-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin-top: 28px !important;
    margin-bottom: 0 !important;
  }

  body.mc-landing-page .mc-hero-buttons .mc-btn {
    width: 100% !important;
    justify-content: center !important;
  }
}
/* === Mobile: ajustar márgenes de sección Método GG === */

@media (max-width: 768px) {
  body.mc-landing-page .mc-section-methodology {
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-section-methodology .mc-container-wide {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-section-methodology .mc-section-subtitle {
    max-width: 100% !important;
  }

  body.mc-landing-page .mc-c-cards {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.mc-landing-page .mc-c-card,
  body.mc-landing-page .mc-c-card-interactive {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* === HOME mobile: About section spacing === */

@media (max-width: 768px) {
  body.mc-landing-page .mc-section-about {
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-section-about .mc-container-wide {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-about-grid {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 40px !important;
  }

  body.mc-landing-page .mc-about-content {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-about-text,
  body.mc-landing-page .mc-about-text p,
  body.mc-landing-page .mc-about-credentials,
  body.mc-landing-page .mc-about-achievements {
    max-width: 100% !important;
  }

  body.mc-landing-page .mc-section-about .mc-section-title {
    max-width: 100% !important;
  }
}
/* === HOME mobile: About section full content + image visible === */

@media (max-width: 768px) {
  body.mc-landing-page .mc-section-about {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;

    padding: 72px 24px 72px !important;
    box-sizing: border-box !important;
    background: #F7F7F7 !important;
  }

  body.mc-landing-page .mc-section-about .mc-container-wide {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;

    padding: 0 !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-about-grid {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;

    display: flex !important;
    flex-direction: column !important;
    gap: 40px !important;
  }

  body.mc-landing-page .mc-about-image {
    order: 1 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;

    margin: 0 auto !important;
    padding: 0 !important;
  }

  body.mc-landing-page .mc-about-image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: cover !important;
    object-position: center top !important;
    border-radius: 20px !important;
  }

  body.mc-landing-page .mc-about-content {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;

    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.mc-landing-page .mc-about-text,
  body.mc-landing-page .mc-about-achievements,
  body.mc-landing-page .mc-about-credentials {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.mc-landing-page .mc-about-credentials {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  body.mc-landing-page .mc-about-achievements {
    margin-top: 32px !important;
  }
}
/* === Contact CTA mobile refinement === */

@media (max-width: 768px) {
  body.mc-landing-page .mc-contact-form .mc-btn-submit {
    width: 100% !important;
    min-height: 56px !important;
    height: auto !important;

    padding: 16px 22px !important;
    border-radius: 8px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;

    font-family: "DM Sans", sans-serif !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;

    background: linear-gradient(135deg, #8535ED 0%, #6B14DC 100%) !important;
    color: #ffffff !important;
    border: none !important;
    box-shadow: 0 14px 32px rgba(107, 20, 220, 0.26) !important;
  }

  body.mc-landing-page .mc-contact-form .mc-btn-submit:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 18px 40px rgba(107, 20, 220, 0.32) !important;
  }

  body.mc-landing-page .mc-contact-note {
    margin-top: 18px !important;
    font-size: 10px !important;
    line-height: 1.4 !important;
    letter-spacing: 0.18em !important;
    text-align: center !important;
    opacity: 0.72 !important;
  }
}
/* === Social preview section === */

.mc-section-social-preview {
  background: #ECEEFE !important;
  padding: 96px 32px 104px !important;
}

.mc-section-social-preview .mc-container-wide {
  max-width: 1440px !important;
  margin: 0 auto !important;
}

.mc-social-preview-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 32px !important;
  margin-top: 48px !important;
}

.mc-social-preview-card {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  min-height: 420px !important;

  background: #ffffff !important;
  border-radius: 16px !important;
  text-decoration: none !important;
  color: #1A2644 !important;

  box-shadow: 0 14px 38px rgba(26, 38, 68, 0.08) !important;
  transition:
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 260ms ease,
    filter 260ms ease !important;
}

.mc-social-preview-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 24px 58px rgba(26, 38, 68, 0.16) !important;
}

.mc-social-preview-image {
  width: 100% !important;
  height: 330px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border-bottom: 1px solid rgba(26, 38, 68, 0.08) !important;
}

.mc-social-preview-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: top center !important;
  display: block !important;
  transition:
    transform 520ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 520ms ease !important;
}

.mc-social-preview-card:hover .mc-social-preview-image img {
  transform: scale(1.035) !important;
  filter: saturate(1.04) contrast(1.02) !important;
}

.mc-social-preview-footer {
  min-height: 90px !important;
  padding: 24px 32px !important;

  display: grid !important;
  grid-template-columns: 32px 1fr 24px !important;
  align-items: center !important;
  gap: 18px !important;
}

.mc-social-preview-icon {
  width: 28px !important;
  height: 28px !important;
  border-radius: 6px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.mc-social-preview-icon-linkedin {
  color: #0077B5 !important;
  background: rgba(0, 119, 181, 0.08) !important;
}

.mc-social-preview-icon-youtube {
  color: #FF0000 !important;
  background: rgba(255, 0, 0, 0.08) !important;
}

.mc-social-preview-text {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.mc-social-preview-text strong {
  font-family: "DM Sans", sans-serif !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  color: #111111 !important;
}

.mc-social-preview-text span {
  font-family: "DM Sans", sans-serif !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  color: #1A2644 !important;
}

.mc-social-preview-arrow {
  justify-self: end !important;
  color: #8535ED !important;
  font-size: 38px !important;
  line-height: 1 !important;
  font-weight: 300 !important;
  transition: transform 220ms ease !important;
}

.mc-social-preview-card:hover .mc-social-preview-arrow {
  transform: translateX(4px) !important;
}

@media (max-width: 768px) {
  .mc-section-social-preview {
    padding: 72px 24px 80px !important;
  }

  .mc-social-preview-grid {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    margin-top: 36px !important;
  }

  .mc-social-preview-card {
    min-height: auto !important;
    border-radius: 16px !important;
  }

  .mc-social-preview-image {
    height: 260px !important;
  }

  .mc-social-preview-footer {
    min-height: 82px !important;
    padding: 20px 22px !important;
    grid-template-columns: 28px 1fr 20px !important;
    gap: 14px !important;
  }

  .mc-social-preview-text strong {
    font-size: 16px !important;
  }

  .mc-social-preview-text span {
    font-size: 14px !important;
  }

  .mc-social-preview-arrow {
    font-size: 32px !important;
  }
}