:root {
    --red: #dc2626;
    --red-dark: #b91c1c;
    --red-soft: rgba(220, 38, 38, .08);
    --red-mid: rgba(220, 38, 38, .18);
    --wh: #25D366;
    --ink: #0f172a;
    --text: #111827;
    --muted: #64748b;
    --line: rgba(15, 23, 42, .10);
    --soft: #f8fafc;
    --card: #ffffff;
    --radius: 22px;
    --radius-xl: 38px;
    --shadow: 0 18px 35px -18px rgba(2, 6, 23, .32);
    --shadow-red: 0 18px 30px -16px rgba(220, 38, 38, .45);
    --nmc-wrap-max: 1360px;
    --nmc-wide-max: 1440px;
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
    font-family: 'Figtree', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background: #f9fafb;
    color: var(--text);
    line-height: 1.5;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
button, input { font: inherit; }
.wrap { max-width: var(--nmc-wrap-max, 1360px); margin: 0 auto; padding: 0 20px; }
.skip-link { position: absolute; left: -999px; top: 12px; background: var(--ink); color: white; padding: 10px 14px; border-radius: 12px; z-index: 500; }
.skip-link:focus { left: 12px; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid rgba(220, 38, 38, .45); outline-offset: 3px; }

.top-banner { background: var(--red); color: white; text-align: center; padding: 12px 20px; font-weight: 800; font-size: .95rem; box-shadow: 0 2px 10px rgba(220, 38, 38, .25); }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 28px 20px 34px; flex-wrap: wrap; }
.logo-text { font-weight: 900; font-size: 2rem; letter-spacing: -.04em; color: var(--red); line-height: 1; }
.main-nav { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }
.main-nav a { padding: 9px 12px; border-radius: 999px; color: #334155; font-weight: 800; font-size: .92rem; }
.main-nav a:hover, .main-nav a.active, .main-nav a[aria-current="page"] { background: var(--red-soft); color: var(--red-dark); }
.contact-buttons { display: flex; gap: 12px; flex-wrap: wrap; }
.btn-contact { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 22px; border-radius: 999px; font-weight: 800; font-size: .95rem; transition: .2s; border: 1.5px solid transparent; }
.btn-contact.phone { background: #fff; color: #1f2937; border-color: #e5e7eb; }
.btn-contact.phone:hover { background: #f3f4f6; }
.btn-contact.whatsapp { background: var(--wh); color: white; box-shadow: 0 10px 18px rgba(37, 211, 102, .25); }
.btn-contact.whatsapp:hover { transform: translateY(-2px); filter: brightness(.96); }

.hero-banner, .slogan-banner, .center-detail-hero { border-radius: var(--radius-xl); padding: 48px 40px; color: white; display: grid; grid-template-columns: 1.5fr .8fr; align-items: center; gap: 30px; box-shadow: 0 25px 35px -15px rgba(0,0,0,.3); }
.hero-banner, .center-detail-hero { background: linear-gradient(135deg, #1e293b, #0f172a); }
.hero-text h1, .center-detail-copy h1 { font-size: clamp(2rem, 5vw, 3.35rem); font-weight: 900; line-height: 1.05; letter-spacing: -.045em; margin-bottom: 16px; }
.hero-text p, .center-detail-copy p { font-size: 1.1rem; color: #cbd5e1; max-width: 680px; margin-bottom: 20px; }
.hero-small { font-size: .85rem !important; color: #94a3b8 !important; margin-top: 8px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.hero-btn, .note-btn, .investors-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; background: var(--red); color: white; padding: 15px 28px; border-radius: 999px; font-weight: 900; font-size: 1rem; transition: .2s; box-shadow: var(--shadow-red); border: 0; cursor: pointer; }
.hero-btn:hover, .note-btn:hover { background: var(--red-dark); transform: translateY(-2px); }
.hero-btn.secondary { background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.22); box-shadow: none; }
.hero-btn.secondary:hover { background: rgba(255,255,255,.16); }
.hero-image, .investors-image { background: rgba(255,255,255,.06); border-radius: 30px; padding: 30px; text-align: center; border: 1px solid rgba(255,255,255,.12); }
.emoji-big { font-size: 5rem; line-height: 1; }
.hero-image p, .investors-image p { color: #94a3b8; margin-top: 12px; font-weight: 700; }

.section { margin: 62px auto 42px; }
.page-main { min-height: 52vh; }
.page-hero.compact { background: white; border: 1px solid #e5e7eb; border-radius: var(--radius-xl); padding: 42px 34px; box-shadow: var(--shadow); }
.page-hero h1 { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.05; letter-spacing: -.04em; font-weight: 900; margin-bottom: 14px; }
.page-hero p { color: var(--muted); max-width: 760px; font-size: 1.1rem; margin-bottom: 22px; }
.section-head.centered { text-align: center; max-width: 780px; margin: 0 auto 26px; }
.eyebrow { display: inline-flex; align-items: center; gap: 6px; padding: 5px 13px; border-radius: 999px; border: 1px solid var(--red-mid); background: var(--red-soft); color: var(--red-dark); font-weight: 900; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 12px; }
.sh { font-size: clamp(1.65rem, 4vw, 2.5rem); font-weight: 900; letter-spacing: -.045em; margin-bottom: 8px; line-height: 1.08; color: var(--ink); }
.sp { color: var(--muted); font-size: 1rem; max-width: 680px; margin-bottom: 26px; }
.centered .sp { margin-left: auto; margin-right: auto; }

.note-card { background: #fffbeb; border-left: 8px solid #f59e0b; border-radius: 24px; padding: 26px 30px; display: flex; align-items: center; justify-content: space-between; gap: 18px; box-shadow: var(--shadow); }
.note-highlight { margin-top: 26px; }
.note-content h2 { font-size: clamp(1.4rem, 3vw, 2rem); color: #92400e; font-weight: 900; letter-spacing: -.03em; margin-bottom: 6px; }
.note-content p { color: #92400e; max-width: 720px; }
.note-btn { background: #f59e0b; color: #1e293b; box-shadow: 0 12px 28px rgba(245,158,11,.25); white-space: nowrap; }
.note-btn:hover { background: #d97706; color: white; }

.city-filter { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 22px 0 12px; }
.city-btn { padding: 10px 20px; border-radius: 999px; border: 1.5px solid #e5e7eb; background: white; font-weight: 900; font-size: .9rem; color: #4b5563; cursor: pointer; transition: .15s; }
.city-btn:hover { border-color: var(--red); color: var(--red); }
.city-btn.active { background: var(--red); border-color: var(--red); color: white; box-shadow: 0 8px 16px rgba(220,38,38,.2); }
.filter-summary { text-align: center; color: #6b7280; font-size: .9rem; margin: 10px 0 22px; font-weight: 800; }
.centros-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 22px; }
.compact-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
.centro-card { background: white; border-radius: 28px; padding: 22px; box-shadow: 0 20px 30px -18px rgba(0,0,0,.18); border: 1px solid #f0f0f0; transition: .2s; display: flex; flex-direction: column; min-height: 100%; }
.centro-card:hover { transform: translateY(-3px); box-shadow: 0 25px 40px -18px rgba(220,38,38,.25); border-color: #fecaca; }
.centro-card.hidden { display: none; }
.centro-header { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.centro-icon { width: 54px; height: 54px; background: #fee2e2; border-radius: 18px; display: flex; align-items: center; justify-content: center; font-size: 26px; }
.centro-nombre { flex: 1; min-width: 0; }
.centro-topline { display: flex; align-items: start; justify-content: space-between; gap: 8px; }
.centro-nombre h3 { font-size: 1.25rem; font-weight: 900; letter-spacing: -.02em; }
.centro-nombre p { color: #6b7280; font-weight: 700; font-size: .9rem; }
.status-badge { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; font-size: .72rem; font-weight: 900; white-space: nowrap; }
.status-badge.open { background: #dcfce7; color: #166534; }
.status-badge.upcoming { background: #fef9c3; color: #854d0e; }
.tamanos { margin: 12px 0; background: #f3f4f6; border-radius: 999px; padding: 10px 14px; text-align: center; font-weight: 800; color: #1f2937; border: 1px solid #e5e7eb; }
.tamanos span { color: var(--red); }
.price-pill { text-align: center; background: #fff7ed; color: #9a3412; border: 1px solid #fed7aa; border-radius: 999px; padding: 9px 12px; font-weight: 800; margin-bottom: 12px; }
.price-pill small { display: block; font-size: .68rem; color: #a16207; font-weight: 700; }
.servicios { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 14px; }
.servicio-badge { background: #f3f4f6; border-radius: 999px; padding: 5px 11px; font-size: .75rem; font-weight: 900; color: #374151; border: 1px solid #e5e7eb; }
.servicio-badge.parking { background: #dbeafe; color: #1e40af; border-color: #bfdbfe; }
.servicio-badge.wh { background: #d1fae5; color: #065f46; border-color: #a7f3d0; }
.servicio-badge.proxima { background: #fef9c3; color: #854d0e; border-color: #fde047; }
.servicio-badge.seguro { background: #fee2e2; color: #b91c1c; border-color: #fecaca; }
.servicio-badge.escaleras { background: #fed7aa; color: #7b341e; border-color: #fdba74; }
.servicio-badge.ascensor { background: #dcfce7; color: #166534; border-color: #86efac; }
.centro-desc { color: #64748b; font-size: .92rem; margin-bottom: 16px; }
.centro-footer { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line); }
.btn-card { padding: 11px 8px; border-radius: 999px; font-weight: 900; font-size: .82rem; text-align: center; background: #f1f5f9; border: 1px solid #d1d5db; color: #374151; transition: .15s; }
.btn-card:hover { transform: translateY(-1px); }
.btn-card.reserva { background: var(--red); border-color: var(--red); color: white; }
.btn-card.whatsapp { background: var(--wh); border-color: var(--wh); color: white; }

.cases-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); }
.cases-grid.four { grid-template-columns: repeat(4, 1fr); }
.case-card, .service-card, .process-card, .testimonial-card { background: white; border: 1.5px solid var(--line); border-radius: var(--radius); padding: 22px; transition: .2s; }
.case-card:hover, .service-card:hover, .process-card:hover { border-color: rgba(220,38,38,.25); box-shadow: var(--shadow); transform: translateY(-2px); }
.case-ico { font-size: 1.9rem; margin-bottom: 9px; display: block; }
.case-title { font-size: 1rem; font-weight: 900; margin-bottom: 5px; }
.case-desc { font-size: .88rem; color: var(--muted); line-height: 1.6; }
.center-cta { display: flex; justify-content: center; margin-top: 24px; }

.slogan-banner { background: linear-gradient(135deg, var(--red), var(--red-dark)); margin-top: 60px; }
.slogan-text h2 { font-size: clamp(2rem, 4vw, 2.7rem); font-weight: 900; line-height: 1.08; letter-spacing: -.04em; margin-bottom: 12px; }
.slogan-text p { color: rgba(255,255,255,.88); font-size: 1.15rem; }
.slogan-highlight { background: rgba(255,255,255,.12); border-radius: 28px; padding: 22px 28px; border: 1px solid rgba(255,255,255,.22); text-align: center; min-width: 250px; }
.slogan-highlight span { display: block; color: #fde047; font-size: 1.7rem; font-weight: 900; margin-bottom: 8px; }
.slogan-highlight small { display: block; color: rgba(255,255,255,.75); margin-top: 6px; }

.process-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.process-card { text-align: center; }
.process-number { width: 48px; height: 48px; border-radius: 50%; background: var(--red); color: white; display: grid; place-items: center; margin: 0 auto 16px; font-size: 1.4rem; font-weight: 900; }
.process-card h3 { margin-bottom: 6px; font-size: 1.05rem; }
.process-card p { color: var(--muted); font-size: .9rem; }
.services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; }
.service-card { text-align: center; padding: 24px 16px; }
.service-icon { font-size: 2.3rem; margin-bottom: 10px; }
.service-card p { font-weight: 800; color: #1f2937; }

.faq-grid { display: flex; flex-direction: column; gap: 8px; max-width: 820px; margin: 0 auto; }
.faq-item { border: 1.5px solid var(--line); border-radius: 16px; background: white; overflow: hidden; }
.faq-question { width: 100%; border: 0; background: white; padding: 16px 20px; font-weight: 900; cursor: pointer; display: flex; justify-content: space-between; align-items: center; text-align: left; color: var(--ink); }
.faq-question:hover { color: var(--red); }
.faq-answer { max-height: 0; padding: 0 20px; overflow: hidden; transition: .25s ease; background: #f8fafc; color: #475569; }
.faq-item.open .faq-answer { max-height: 220px; padding: 16px 20px; border-top: 1px solid var(--line); }
.final-cta { background: linear-gradient(135deg, #1e293b, #0f172a); color: white; border-radius: var(--radius-xl); padding: 44px 32px; text-align: center; margin-top: 60px; }
.final-cta h2 { font-size: clamp(1.8rem, 4vw, 2.6rem); letter-spacing: -.04em; margin-bottom: 10px; }
.final-cta p { color: #cbd5e1; margin-bottom: 22px; }

.center-detail-hero { margin-top: 0; }
.detail-tags { display: flex; gap: 10px; flex-wrap: wrap; margin: 18px 0 24px; }
.detail-tags span:not(.status-badge) { background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.18); color: #e2e8f0; padding: 7px 11px; border-radius: 999px; font-weight: 800; }
.detail-card { background: white; color: var(--ink); border-radius: 28px; padding: 26px; box-shadow: var(--shadow); }
.detail-card h2 { margin-bottom: 14px; font-size: 1.25rem; }
.detail-card dl { display: grid; grid-template-columns: 1fr; gap: 8px; }
.detail-card dt { font-weight: 900; color: var(--red-dark); font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; }
.detail-card dd { margin-bottom: 8px; color: #334155; }
.guarantees-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; }
.guarantee-item { background: white; border-radius: 999px; padding: 12px 22px; border: 1px solid #e2e8f0; display: flex; align-items: center; gap: 8px; font-weight: 800; }
.guarantee-item span { color: var(--red); font-weight: 900; }

.investors-section { background: #1e293b; border-radius: var(--radius-xl); padding: 48px 40px; color: white; display: grid; grid-template-columns: 1.3fr .7fr; align-items: center; gap: 30px; box-shadow: 0 30px 40px -20px rgba(0,0,0,.3); }
.investors-section.standalone { margin: 0 auto; }
.investors-content h1, .investors-content h2 { font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 900; letter-spacing: -.04em; margin-bottom: 14px; }
.investors-content p { color: #cbd5e1; font-size: 1.08rem; margin-bottom: 24px; }
.investors-stats { display: flex; flex-wrap: wrap; gap: 24px; margin-bottom: 26px; }
.stat-number { color: #fbbf24; font-size: 2rem; font-weight: 900; line-height: 1; }
.stat-label { color: #94a3b8; font-size: .82rem; text-transform: uppercase; letter-spacing: .05em; }
.investors-btn { background: #fbbf24; color: #1e293b; }
.investors-btn:hover { background: #f59e0b; transform: translateY(-2px); }

.footer { background: #0f172a; color: #94a3b8; padding: 48px 0 32px; margin-top: 70px; }
.footer a { color: #94a3b8; transition: .15s; }
.footer a:hover { color: white; }
.footer-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.footer-grid { display: grid; grid-template-columns: 1.2fr repeat(3, 1fr); gap: 32px; margin-bottom: 36px; }
.footer h4 { color: white; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 10px; }
.footer-logo { color: white; }
.footer-text { margin-top: 10px; font-size: .9rem; line-height: 1.6; }
.footer-bottom { border-top: 1px solid #1e293b; padding-top: 22px; text-align: center; font-size: .78rem; }
.sticky-wa { position: fixed; bottom: 22px; right: 22px; z-index: 199; }
.sticky-wa a { width: 54px; height: 54px; border-radius: 50%; background: linear-gradient(135deg,#2ecc71,var(--wh)); color: white; display: grid; place-items: center; box-shadow: 0 8px 24px rgba(37,211,102,.38); transition: .2s; }
.sticky-wa a:hover { transform: scale(1.07); }
.mobile-cta-bar { display: none; }
.legal-page { min-height: 50vh; }

@media (max-width: 960px) {
    .hero-banner, .slogan-banner, .center-detail-hero, .investors-section { grid-template-columns: 1fr; }
    .cases-grid, .cases-grid.four { grid-template-columns: repeat(2, 1fr); }
    .process-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
    .wrap { padding: 0 16px; }
    .site-header { padding: 22px 16px 26px; }
    .logo-text { font-size: 1.8rem; }
    .main-nav { order: 3; width: 100%; justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }
    .contact-buttons { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
    .btn-contact { padding: 11px 12px; }
    .hero-banner, .slogan-banner, .center-detail-hero, .investors-section, .page-hero.compact, .final-cta { border-radius: 26px; padding: 32px 22px; }
    .hero-actions { display: grid; grid-template-columns: 1fr; }
    .hero-btn, .note-btn { width: 100%; }
    .note-card { align-items: flex-start; flex-direction: column; border-radius: 22px; padding: 22px; }
    .centro-card { border-radius: 24px; padding: 19px; }
    .centro-footer { grid-template-columns: 1fr; }
    .cases-grid, .cases-grid.four, .process-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr; }
    .sticky-wa { display: none; }
    .mobile-cta-bar { position: fixed; bottom: 0; left: 0; right: 0; z-index: 300; display: grid; grid-template-columns: 1fr 1fr; background: white; border-top: 1px solid #e5e7eb; box-shadow: 0 -8px 20px rgba(0,0,0,.08); }
    .mobile-cta-bar a { padding: 14px; text-align: center; font-weight: 900; }
    .mobile-cta-bar a:last-child { background: var(--wh); color: white; }
    body { padding-bottom: 58px; }
}
@media (prefers-reduced-motion: reduce) {
    * { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Mejoras página individual de centro */
.breadcrumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #64748b;
    font-size: .9rem;
    font-weight: 800;
    margin-top: -12px;
    margin-bottom: 18px;
}
.breadcrumbs a:hover { color: var(--red); }
.breadcrumbs strong { color: var(--ink); }
.improved-detail-hero { align-items: stretch; }
.upgraded-detail-card {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 30px;
    padding: 26px;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.detail-status-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}
.detail-status-line strong { color: #fff; font-size: 1.25rem; line-height: 1.1; }
.detail-list {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 10px 14px;
    margin: 0;
}
.detail-list dt {
    color: #94a3b8;
    font-weight: 900;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.detail-list dd { color: #fff; font-weight: 800; margin: 0; }
.detail-list a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.detail-card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 22px;
}
.detail-card-actions .btn-card { display: inline-flex; justify-content: center; align-items: center; }
.hero-btn.secondary.dark {
    background: white;
    color: var(--red-dark);
    border: 1px solid #fecaca;
    box-shadow: none;
}
.hero-btn.secondary.dark:hover { background: #fff1f2; }
.detail-feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 245px), 1fr));
    gap: 16px;
}
.detail-feature-card {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 20px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    box-shadow: 0 18px 30px -24px rgba(15,23,42,.35);
}
.detail-feature-card:hover {
    border-color: rgba(220,38,38,.28);
    box-shadow: 0 22px 34px -24px rgba(220,38,38,.35);
    transform: translateY(-2px);
}
.detail-feature-icon {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: #fee2e2;
    flex: 0 0 auto;
    font-size: 1.5rem;
}
.detail-feature-label {
    color: #64748b;
    font-weight: 900;
    font-size: .75rem;
    letter-spacing: .07em;
    text-transform: uppercase;
    margin-bottom: 4px;
}
.detail-feature-card h3 {
    font-size: 1.25rem;
    color: var(--ink);
    margin-bottom: 4px;
    letter-spacing: -.02em;
}
.detail-feature-card p:last-child { color: #64748b; font-size: .9rem; line-height: 1.55; }
.detail-two-col-section {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 22px;
}
.detail-panel {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 30px;
    padding: 30px;
    box-shadow: var(--shadow);
}
.detail-panel h2 {
    color: var(--ink);
    font-size: clamp(1.45rem, 3vw, 2rem);
    font-weight: 900;
    letter-spacing: -.035em;
    margin-bottom: 10px;
}
.detail-panel p { color: #64748b; margin-bottom: 18px; }
.availability-steps {
    display: grid;
    gap: 10px;
    margin: 20px 0 22px;
}
.availability-steps div {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 12px 14px;
}
.availability-steps strong {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--red);
    color: white;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
}
.availability-steps span { font-weight: 800; color: #334155; }
.map-preview {
    min-height: 210px;
    border-radius: 26px;
    background: radial-gradient(circle at top left, #fee2e2, #f8fafc 45%, #e2e8f0 100%);
    border: 1px solid #e2e8f0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 8px;
    padding: 24px;
    transition: .2s;
}
.map-preview:hover {
    transform: translateY(-2px);
    border-color: rgba(220,38,38,.35);
    box-shadow: 0 18px 30px -24px rgba(220,38,38,.45);
}
.map-preview span { font-size: 3rem; }
.map-preview strong { color: var(--ink); font-size: 1.1rem; }
.map-preview small { color: #64748b; font-weight: 800; }
.size-guide-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
    gap: 16px;
}
.size-guide-card {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 18px 30px -24px rgba(15,23,42,.35);
}
.size-guide-card span { font-size: 2rem; display: block; margin-bottom: 10px; }
.size-guide-card h3 { color: var(--red-dark); font-size: 1.35rem; font-weight: 900; margin-bottom: 6px; }
.size-guide-card p { color: #64748b; font-size: .92rem; line-height: 1.6; }
.dual-cta { gap: 12px; flex-wrap: wrap; }
.detail-final-cta { margin-bottom: 54px; }

@media (max-width: 900px) {
    .detail-two-col-section { grid-template-columns: 1fr; }
    .improved-detail-hero { grid-template-columns: 1fr; }
    .upgraded-detail-card { align-self: auto; }
}
@media (max-width: 640px) {
    .breadcrumbs { margin-top: -6px; font-size: .82rem; overflow-x: auto; white-space: nowrap; padding-bottom: 4px; }
    .detail-list { grid-template-columns: 1fr; gap: 3px 0; }
    .detail-list dt { margin-top: 8px; }
    .detail-card-actions { grid-template-columns: 1fr; }
    .detail-panel { padding: 22px; border-radius: 24px; }
    .detail-feature-card { padding: 18px; }
    .hero-actions .hero-btn { width: 100%; }
}


/* =========================================================
   FIX VISUAL CENTRO V3 - evita que la ficha de centro caiga
   en modo lista si el navegador conserva CSS antiguo en cache.
   ========================================================= */
main .wrap.section {
    width: 100%;
}
main .section-head.centered {
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
}
main .detail-feature-grid {
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
}
main .detail-feature-card {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 26px !important;
    padding: 22px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 15px !important;
    min-height: 150px !important;
    box-shadow: 0 20px 34px -24px rgba(15,23,42,.42) !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
main .detail-feature-card:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(220,38,38,.34) !important;
    box-shadow: 0 24px 42px -26px rgba(220,38,38,.45) !important;
}
main .detail-feature-icon {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    border-radius: 18px !important;
    display: grid !important;
    place-items: center !important;
    background: linear-gradient(135deg, #fee2e2, #fff7ed) !important;
    color: #b91c1c !important;
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
}
main .detail-feature-label {
    color: #64748b !important;
    font-weight: 900 !important;
    font-size: .72rem !important;
    line-height: 1.1 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    margin: 0 0 6px !important;
}
main .detail-feature-card h3 {
    color: #0f172a !important;
    font-size: clamp(1.15rem, 2vw, 1.35rem) !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    letter-spacing: -.025em !important;
    margin: 0 0 7px !important;
}
main .detail-feature-card p:last-child {
    color: #64748b !important;
    font-size: .93rem !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}
main .detail-two-col-section {
    display: grid !important;
    grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr) !important;
    gap: 24px !important;
    align-items: stretch !important;
}
main .detail-panel {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 30px !important;
    padding: 30px !important;
    box-shadow: 0 20px 34px -24px rgba(15,23,42,.42) !important;
}
main .availability-steps {
    display: grid !important;
    gap: 11px !important;
    margin: 20px 0 24px !important;
}
main .availability-steps div {
    display: flex !important;
    align-items: center !important;
    gap: 13px !important;
    background: #f8fafc !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 18px !important;
    padding: 13px 15px !important;
}
main .availability-steps strong {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 50% !important;
    background: #dc2626 !important;
    color: #fff !important;
    display: grid !important;
    place-items: center !important;
    font-weight: 900 !important;
}
main .size-guide-grid {
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
    gap: 18px !important;
}
main .size-guide-card {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 24px !important;
    padding: 22px !important;
    box-shadow: 0 18px 30px -24px rgba(15,23,42,.35) !important;
}
main .size-guide-card span {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif !important;
    font-size: 2rem !important;
    line-height: 1 !important;
    display: block !important;
    margin-bottom: 12px !important;
}
main .center-detail-hero.improved-detail-hero {
    margin-bottom: 46px !important;
}
@media (max-width: 900px) {
    main .detail-feature-grid,
    main .detail-two-col-section,
    main .size-guide-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   BLOG V1
   ========================================================= */
.blog-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    gap: 26px;
    align-items: stretch;
    background: linear-gradient(135deg, #1e293b, #0f172a);
    color: white;
    border-radius: var(--radius-xl);
    padding: 48px 40px;
    box-shadow: 0 25px 35px -15px rgba(0,0,0,.3);
}
.blog-hero h1 {
    font-size: clamp(2.1rem, 5vw, 3.5rem);
    line-height: 1.02;
    letter-spacing: -.05em;
    font-weight: 900;
    margin-bottom: 16px;
}
.blog-hero p {
    color: #cbd5e1;
    font-size: 1.12rem;
    max-width: 720px;
    margin-bottom: 22px;
}
.blog-hero-card {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 30px;
    padding: 26px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.blog-hero-card strong {
    color: white;
    font-size: 1.25rem;
    font-weight: 900;
    margin-bottom: 14px;
}
.blog-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.blog-tags span,
.blog-category {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: var(--red-soft);
    color: var(--red-dark);
    border: 1px solid var(--red-mid);
    font-weight: 900;
    font-size: .74rem;
    text-transform: uppercase;
    letter-spacing: .07em;
    padding: 6px 10px;
}
.blog-hero-card .blog-tags span {
    background: rgba(255,255,255,.10);
    color: #f8fafc;
    border-color: rgba(255,255,255,.16);
}
.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
    gap: 20px;
}
.blog-grid.featured {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
}
.blog-card.upgraded {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 24px;
    box-shadow: 0 18px 30px -24px rgba(15,23,42,.35);
    display: flex;
    flex-direction: column;
    min-height: 100%;
    transition: .2s;
}
.blog-card.upgraded:hover {
    transform: translateY(-3px);
    border-color: rgba(220,38,38,.35);
    box-shadow: 0 24px 42px -26px rgba(220,38,38,.42);
}
.blog-card-top,
.blog-card-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}
.blog-card-top time,
.blog-card-bottom span {
    color: #64748b;
    font-size: .85rem;
    font-weight: 800;
}
.blog-card.upgraded h3 {
    margin: 16px 0 10px;
    font-size: 1.35rem;
    line-height: 1.16;
    letter-spacing: -.03em;
    color: var(--ink);
}
.blog-card.upgraded h3 a:hover { color: var(--red); }
.blog-card.upgraded p {
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 22px;
}
.blog-card-bottom {
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid #eef2f7;
}
.blog-card-bottom a {
    color: var(--red-dark);
    font-weight: 900;
}
.blog-publish-box {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-left: 8px solid #f59e0b;
    border-radius: 28px;
    padding: 28px;
    box-shadow: var(--shadow);
    margin-top: 46px;
}
.blog-publish-box h2 {
    color: #7c2d12;
    font-weight: 900;
    letter-spacing: -.03em;
    font-size: clamp(1.4rem, 3vw, 2rem);
    margin-bottom: 8px;
}
.blog-publish-box p { color: #9a3412; line-height: 1.65; }
.blog-publish-box code {
    background: rgba(255,255,255,.7);
    border: 1px solid #fed7aa;
    border-radius: 8px;
    padding: 2px 6px;
    font-weight: 800;
}
.blog-breadcrumbs { margin-top: 0; }
.blog-post-layout { max-width: 1180px; }
.blog-post-header {
    max-width: 860px;
    margin: 0 auto 28px;
    text-align: center;
}
.blog-post-header h1 {
    margin: 14px 0 14px;
    font-size: clamp(2.1rem, 5vw, 4rem);
    line-height: 1.02;
    letter-spacing: -.055em;
    color: var(--ink);
    font-weight: 900;
}
.blog-post-header p {
    color: #64748b;
    font-size: 1.15rem;
    line-height: 1.65;
    margin-bottom: 14px;
}
.blog-post-meta {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    color: #64748b;
    font-weight: 800;
    font-size: .92rem;
}
.blog-post-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 28px;
    align-items: start;
}
.blog-post-content {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 30px;
    padding: clamp(24px, 4vw, 44px);
    box-shadow: var(--shadow);
}
.blog-post-content p,
.blog-post-content li {
    color: #334155;
    font-size: 1.05rem;
    line-height: 1.85;
}
.blog-post-content p + p { margin-top: 16px; }
.blog-post-content h2 {
    color: var(--ink);
    font-size: clamp(1.35rem, 3vw, 2rem);
    line-height: 1.14;
    letter-spacing: -.035em;
    font-weight: 900;
    margin: 30px 0 12px;
}
.blog-post-content h3 {
    color: var(--ink);
    font-size: 1.25rem;
    font-weight: 900;
    margin: 24px 0 10px;
}
.blog-post-content ul,
.blog-post-content ol { padding-left: 22px; margin: 14px 0; }
.blog-post-content strong { color: var(--ink); }
.blog-sidebar {
    display: grid;
    gap: 16px;
    position: sticky;
    top: 18px;
}
.blog-side-card {
    background: linear-gradient(135deg, #1e293b, #0f172a);
    color: white;
    border-radius: 28px;
    padding: 24px;
    box-shadow: var(--shadow);
}
.blog-side-card.light {
    background: white;
    color: var(--ink);
    border: 1px solid #e5e7eb;
}
.blog-side-card h2 {
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: -.03em;
    margin-bottom: 8px;
}
.blog-side-card p {
    color: #cbd5e1;
    line-height: 1.6;
    margin-bottom: 18px;
}
.blog-side-card.light p { color: #64748b; }
.blog-side-card ul { list-style: none; display: grid; gap: 10px; }
.blog-side-card li a {
    display: block;
    padding: 10px 12px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    font-weight: 900;
    color: #334155;
}
.blog-side-card li a:hover { color: var(--red); border-color: #fecaca; }

@media (max-width: 960px) {
    .blog-hero,
    .blog-post-shell,
    .blog-publish-box {
        grid-template-columns: 1fr;
    }
    .blog-sidebar { position: static; }
}
@media (max-width: 640px) {
    .blog-hero { border-radius: 26px; padding: 32px 22px; }
    .blog-post-header { text-align: left; }
    .blog-post-meta { justify-content: flex-start; }
    .blog-post-content { border-radius: 24px; }
    .blog-card-top,
    .blog-card-bottom { align-items: flex-start; flex-direction: column; }
}

/* Growth v1: blog categories, city SEO pages, calculator, leads and admin */
.blog-tags a {
    display: inline-flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    font-weight: 800;
    font-size: .85rem;
    color: #334155;
}
.blog-tags a.active,
.blog-tags a:hover {
    background: #fee2e2;
    color: #b91c1c;
    border-color: #fecaca;
}
.compact-category-hero {
    align-items: center;
}
.city-hero,
.calculator-hero {
    text-align: center;
    max-width: 980px;
}
.subsection-title {
    font-size: 1.25rem;
    font-weight: 900;
    margin: 26px 0 14px;
    letter-spacing: -.02em;
}
.seo-copy-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.calculator-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
    gap: 24px;
    align-items: start;
}
.calculator-card,
.calculator-result,
.lead-form,
.admin-card,
.admin-login-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 26px;
    box-shadow: 0 18px 38px rgba(15,23,42,.08);
}
.calculator-card h2,
.calculator-result h2,
.lead-form h2 {
    font-size: 1.55rem;
    margin-bottom: 8px;
    letter-spacing: -.03em;
}
.calc-options {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}
.calc-options label,
.lead-form label {
    display: grid;
    gap: 7px;
    font-weight: 800;
    color: #0f172a;
}
.calc-options label {
    grid-template-columns: auto 1fr;
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 12px 14px;
    cursor: pointer;
}
.calc-options input {
    width: 18px;
    height: 18px;
    accent-color: #dc2626;
}
.calc-extra {
    margin-top: 20px;
}
.calc-extra input,
.lead-form input,
.lead-form select,
.lead-form textarea,
.admin-login-card input {
    width: 100%;
    border: 1.5px solid #d1d5db;
    border-radius: 14px;
    padding: 13px 14px;
    font: inherit;
    background: #fff;
}
.calc-extra input:focus,
.lead-form input:focus,
.lead-form select:focus,
.lead-form textarea:focus,
.admin-login-card input:focus {
    outline: 3px solid rgba(220,38,38,.18);
    border-color: #dc2626;
}
.calculator-result {
    position: sticky;
    top: 20px;
    background: linear-gradient(135deg, #1e293b, #0f172a);
    color: white;
}
.calculator-result p,
.calculator-result small {
    color: #cbd5e1;
}
.hero-btn.disabled {
    opacity: .55;
    pointer-events: none;
}
.lead-form-section {
    max-width: 920px;
}
.lead-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.lead-form label:nth-child(6),
.lead-form .checkbox-line,
.lead-form button,
.compact-lead-form label:nth-child(5) {
    grid-column: 1 / -1;
}
.checkbox-line {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: flex-start;
    gap: 10px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    font-size: .9rem;
}
.checkbox-line input {
    width: auto !important;
    margin-top: 4px;
}
.hp-field {
    position: absolute !important;
    left: -9999px !important;
    opacity: 0 !important;
}
.admin-login-screen {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
    background: radial-gradient(circle at top left, #fee2e2 0, #f8fafc 42%, #e2e8f0 100%);
}
.admin-login-card {
    width: min(100%, 430px);
    display: grid;
    gap: 16px;
}
.admin-login-card h1 {
    font-size: 2rem;
    font-weight: 900;
    letter-spacing: -.04em;
}
.admin-error,
.admin-warning {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    padding: 12px 14px;
    border-radius: 16px;
    font-weight: 700;
}
.admin-dashboard {
    max-width: 1180px;
    margin: 0 auto;
    padding: 34px 20px 70px;
}
.admin-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
}
.admin-topbar h1 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 900;
    letter-spacing: -.05em;
}
.admin-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin: 22px 0;
}
.admin-kpi-grid article {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 20px;
    box-shadow: 0 10px 26px rgba(15,23,42,.07);
}
.admin-kpi-grid span {
    display: block;
    color: #64748b;
    font-weight: 800;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.admin-kpi-grid strong {
    display: block;
    font-size: 2.25rem;
    color: #dc2626;
    font-weight: 900;
    line-height: 1;
    margin: 10px 0 6px;
}
.admin-kpi-grid small {
    color: #64748b;
}
.admin-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin: 18px 0;
}
.admin-card h2 {
    font-size: 1.3rem;
    margin-bottom: 14px;
}
.admin-card table {
    width: 100%;
    border-collapse: collapse;
}
.admin-card th,
.admin-card td {
    padding: 10px 8px;
    border-bottom: 1px solid #eef2f7;
    text-align: left;
    vertical-align: top;
}
.admin-card th {
    color: #64748b;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.admin-bars {
    display: grid;
    gap: 10px;
}
.admin-bars div {
    display: grid;
    grid-template-columns: 90px 1fr 40px;
    align-items: center;
    gap: 10px;
}
.admin-bars span {
    font-size: .8rem;
    color: #64748b;
}
.admin-bars strong {
    display: block;
    height: 12px;
    border-radius: 999px;
    background: linear-gradient(90deg, #dc2626, #fb7185);
}
.admin-bars em {
    font-style: normal;
    font-weight: 800;
    text-align: right;
}
.wide-table {
    font-size: .9rem;
}
@media (max-width: 900px) {
    .calculator-layout,
    .seo-copy-grid,
    .admin-grid-2,
    .lead-form {
        grid-template-columns: 1fr;
    }
    .calculator-result {
        position: static;
    }
    .admin-kpi-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 560px) {
    .admin-kpi-grid {
        grid-template-columns: 1fr;
    }
    .admin-topbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .admin-card {
        overflow-x: auto;
    }
}

/* Admin editor v1 */
.admin-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}
.admin-actions .hero-btn {
    padding: 10px 18px;
    font-size: .9rem;
}
.admin-success {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #86efac;
    border-radius: 18px;
    padding: 14px 18px;
    font-weight: 800;
    margin-bottom: 18px;
}
.admin-warning,
.admin-error {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
    border-radius: 18px;
    padding: 14px 18px;
    font-weight: 800;
    margin-bottom: 18px;
}
.admin-editor {
    max-width: 1180px;
}
.admin-edit-table small,
.admin-form small {
    color: #64748b;
    font-size: .78rem;
}
.admin-mini-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 999px;
    background: #fee2e2;
    color: #b91c1c;
    font-weight: 900;
    font-size: .82rem;
    border: 1px solid #fecaca;
}
.admin-mini-btn:hover {
    background: #dc2626;
    color: #fff;
}
.admin-pill {
    display: inline-flex;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 900;
}
.admin-pill.ok {
    background: #dcfce7;
    color: #166534;
}
.admin-pill.muted {
    background: #f1f5f9;
    color: #475569;
}
.admin-form {
    display: grid;
    gap: 18px;
}
.admin-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.admin-form-grid.compact {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}
.admin-form label {
    display: grid;
    gap: 6px;
    font-weight: 800;
    color: #0f172a;
}
.admin-form input,
.admin-form select,
.admin-form textarea {
    width: 100%;
    border: 1.5px solid #e2e8f0;
    border-radius: 14px;
    padding: 12px 14px;
    font: inherit;
    color: #0f172a;
    background: #fff;
    outline: none;
}
.admin-form input:focus,
.admin-form select:focus,
.admin-form textarea:focus {
    border-color: #dc2626;
    box-shadow: 0 0 0 4px rgba(220,38,38,.10);
}
.admin-form input[readonly] {
    background: #f8fafc;
    color: #64748b;
}
.admin-check-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    padding: 14px;
    border: 1.5px solid #e2e8f0;
    border-radius: 16px;
}
.admin-check-row label {
    display: inline-flex;
    align-items: center;
    grid-template-columns: auto 1fr;
    gap: 8px;
}
.admin-check-row input {
    width: auto;
}
.code-editor {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
    line-height: 1.6;
}
.admin-submit-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    padding-top: 8px;
}
.admin-help-card {
    background: #f8fafc;
}
.status-badge {
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 900;
}
.status-badge.open {
    background: #dcfce7;
    color: #166534;
}
.status-badge.upcoming {
    background: #fef9c3;
    color: #854d0e;
}
@media (max-width: 960px) {
    .admin-form-grid,
    .admin-form-grid.compact {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 560px) {
    .admin-actions {
        width: 100%;
        justify-content: stretch;
    }
    .admin-actions .hero-btn {
        flex: 1;
        justify-content: center;
    }
    .admin-submit-row .hero-btn {
        width: 100%;
        justify-content: center;
    }
}

/* Admin Pro v2: navegación, CRM, SEO, seguridad y mejoras visuales */
body:has(.admin-dashboard), body:has(.admin-login-screen) {
    background: radial-gradient(circle at top left, #fff1f2 0, #f8fafc 38%, #eef2f7 100%);
}
.admin-dashboard { max-width: 1240px; }
.admin-topbar {
    padding: 6px 0 4px;
    position: relative;
}
.admin-topbar p { max-width: 760px; color: #475569; }
.admin-actions .hero-btn.secondary,
.admin-submit-row .hero-btn.secondary {
    background: #fff !important;
    color: #b91c1c !important;
    border: 1px solid #fecaca !important;
    box-shadow: 0 10px 20px rgba(15,23,42,.05) !important;
}
.admin-actions .hero-btn.secondary:hover,
.admin-submit-row .hero-btn.secondary:hover {
    background: #fee2e2 !important;
    color: #991b1b !important;
}
.admin-actions .hero-btn.secondary.dark {
    color: #0f172a !important;
    border-color: #cbd5e1 !important;
}
.admin-nav {
    position: sticky;
    top: 0;
    z-index: 50;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 0 0 26px;
    padding: 10px;
    background: rgba(255,255,255,.88);
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    backdrop-filter: blur(10px);
    box-shadow: 0 18px 38px rgba(15,23,42,.06);
}
.admin-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 14px;
    border-radius: 999px;
    font-weight: 900;
    color: #475569;
    font-size: .9rem;
}
.admin-nav a:hover { background: #f1f5f9; color: #0f172a; }
.admin-nav a.active { background: #dc2626; color: #fff; }
.admin-nav a.logout { margin-left: auto; border: 1px solid #fecaca; color: #b91c1c; background: #fff; }
.admin-nav a.logout:hover { background: #fee2e2; }
.admin-kpi-grid article {
    position: relative;
    overflow: hidden;
}
.admin-kpi-grid article::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: linear-gradient(90deg, #dc2626, #fb7185);
    opacity: .8;
}
.admin-filter-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin: 14px 0 18px;
}
.admin-filter-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.admin-filter-pills a,
.admin-tool-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #e2e8f0;
    color: #334155;
    font-weight: 900;
    font-size: .86rem;
}
.admin-filter-pills a.active,
.admin-filter-pills a:hover,
.admin-tool-link:hover { background: #fee2e2; border-color: #fecaca; color: #991b1b; }
.admin-metric-note { color: #64748b; font-size: .9rem; }
.admin-funnel {
    display: grid;
    gap: 12px;
}
.admin-funnel-row {
    display: grid;
    grid-template-columns: 160px 1fr 80px;
    gap: 12px;
    align-items: center;
}
.admin-funnel-row span { font-weight: 900; color: #334155; }
.admin-funnel-row strong {
    display: block;
    height: 14px;
    border-radius: 999px;
    background: linear-gradient(90deg, #dc2626, #fb7185);
    min-width: 8px;
}
.admin-funnel-row em { font-style: normal; font-weight: 900; text-align: right; }
.admin-crm-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 0 16px;
}
.admin-search-form {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.admin-search-form input,
.admin-search-form select {
    border: 1.5px solid #dbe3ef;
    border-radius: 999px;
    padding: 10px 14px;
    font: inherit;
    min-width: 170px;
    background: #fff;
}
.admin-search-form button {
    border: 0;
    border-radius: 999px;
    background: #dc2626;
    color: #fff;
    font-weight: 900;
    padding: 10px 16px;
    cursor: pointer;
}
.lead-status {
    display: inline-flex;
    align-items: center;
    padding: 5px 10px;
    border-radius: 999px;
    font-weight: 900;
    font-size: .76rem;
}
.lead-status.nuevo { background: #fee2e2; color: #991b1b; }
.lead-status.contactado { background: #dbeafe; color: #1e40af; }
.lead-status.visita { background: #fef9c3; color: #854d0e; }
.lead-status.ganado { background: #dcfce7; color: #166534; }
.lead-status.perdido { background: #f1f5f9; color: #475569; }
.admin-form .full { grid-column: 1 / -1; }
.admin-note-box {
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 18px;
    padding: 14px 16px;
    color: #475569;
}
.admin-check-list {
    display: grid;
    gap: 10px;
}
.admin-check-item {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    padding: 13px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #fff;
}
.admin-check-item div strong { display: block; color: #0f172a; }
.admin-check-item div small { color: #64748b; }
.admin-check-ok { color: #166534; background: #dcfce7; border: 1px solid #86efac; border-radius: 999px; padding: 5px 10px; font-weight: 900; }
.admin-check-warn { color: #991b1b; background: #fee2e2; border: 1px solid #fecaca; border-radius: 999px; padding: 5px 10px; font-weight: 900; }
.admin-seo-score {
    display: inline-flex;
    min-width: 42px;
    justify-content: center;
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 900;
}
.admin-seo-score.good { background: #dcfce7; color: #166534; }
.admin-seo-score.mid { background: #fef9c3; color: #854d0e; }
.admin-seo-score.bad { background: #fee2e2; color: #991b1b; }
.backup-list { display: grid; gap: 10px; }
.backup-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 13px 14px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid #e2e8f0;
}
.backup-item strong { color: #0f172a; }
.backup-item small { color: #64748b; display: block; }
@media (max-width: 760px) {
    .admin-nav { border-radius: 22px; position: static; }
    .admin-nav a.logout { margin-left: 0; }
    .admin-funnel-row { grid-template-columns: 1fr; gap: 6px; }
    .admin-funnel-row em { text-align: left; }
    .admin-check-item, .backup-item { align-items: flex-start; flex-direction: column; }
}


/* Admin app URL checker */
.compact-form { display: grid; gap: 16px; max-width: 780px; }
.app-check-selected { display: grid; gap: 6px; background: #f8fafc; border: 1px solid #e5e7eb; border-radius: 16px; padding: 14px; }
.app-check-selected code { white-space: normal; overflow-wrap: anywhere; color: #334155; }
.warning-card { border-color: rgba(245, 158, 11, .45) !important; background: #fffbeb !important; }
.warning-card ul { margin: 10px 0 0 20px; color: #92400e; }
.app-check-kpis article strong { font-size: clamp(1.25rem, 2.6vw, 1.9rem); }
.text-sample-box { background: #0f172a; color: #e5e7eb; border-radius: 16px; padding: 16px; font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: .86rem; line-height: 1.7; overflow-wrap: anywhere; }

/* Chatbot comercial NoMásCaos */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}
.nmc-chatbot {
    position: fixed;
    left: 20px;
    bottom: 22px;
    z-index: 420;
    font-family: inherit;
}
.nmc-chatbot-toggle {
    border: 0;
    border-radius: 999px;
    padding: 12px 18px;
    background: #111827;
    color: #fff;
    box-shadow: 0 18px 40px rgba(15,23,42,.25);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 900;
    cursor: pointer;
}
.nmc-chatbot-toggle:hover { transform: translateY(-2px); }
.nmc-chatbot-panel {
    position: absolute;
    left: 0;
    bottom: 62px;
    width: min(380px, calc(100vw - 32px));
    max-height: min(680px, calc(100vh - 110px));
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    box-shadow: 0 28px 70px rgba(15,23,42,.22);
    overflow: hidden;
    display: none;
}
.nmc-chatbot[data-open="true"] .nmc-chatbot-panel { display: flex; flex-direction: column; }
.nmc-chatbot-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 18px;
    background: linear-gradient(135deg, #dc2626, #991b1b);
    color: #fff;
}
.nmc-chatbot-header strong { display: block; font-size: 1rem; }
.nmc-chatbot-header span { display: block; font-size: .78rem; opacity: .9; margin-top: 2px; }
.nmc-chatbot-close {
    border: 1px solid rgba(255,255,255,.35);
    background: rgba(255,255,255,.12);
    color: #fff;
    border-radius: 999px;
    width: 34px;
    height: 34px;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
}
.nmc-chatbot-messages {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    overflow-y: auto;
    min-height: 220px;
    max-height: 360px;
    background: #f8fafc;
}
.nmc-chatbot-msg { display: flex; }
.nmc-chatbot-msg.user { justify-content: flex-end; }
.nmc-chatbot-bubble {
    max-width: 86%;
    border-radius: 18px;
    padding: 11px 13px;
    font-size: .93rem;
    line-height: 1.45;
    white-space: pre-line;
}
.nmc-chatbot-msg.bot .nmc-chatbot-bubble {
    background: #fff;
    border: 1px solid #e5e7eb;
    color: #111827;
}
.nmc-chatbot-msg.user .nmc-chatbot-bubble {
    background: #dc2626;
    color: #fff;
    border-bottom-right-radius: 6px;
}
.nmc-chatbot-typing .nmc-chatbot-bubble { color: #64748b; font-style: italic; }
.nmc-chatbot-quick {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px 14px;
    border-top: 1px solid #e5e7eb;
    background: #fff;
}
.nmc-chatbot-chip {
    display: inline-flex;
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #111827;
    border-radius: 999px;
    padding: 8px 10px;
    font-weight: 800;
    font-size: .78rem;
    cursor: pointer;
}
.nmc-chatbot-chip.primary { background: #dc2626; border-color: #dc2626; color: #fff; }
.nmc-chatbot-chip.whatsapp { background: #25D366; border-color: #25D366; color: #fff; }
.nmc-chatbot-form {
    display: flex;
    gap: 8px;
    padding: 12px;
    border-top: 1px solid #e5e7eb;
    background: #fff;
}
.nmc-chatbot-form input {
    flex: 1;
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    padding: 12px 14px;
    font: inherit;
    outline: none;
}
.nmc-chatbot-form input:focus { border-color: #dc2626; box-shadow: 0 0 0 3px rgba(220,38,38,.12); }
.nmc-chatbot-form button {
    border: 0;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    padding: 0 14px;
    font-weight: 900;
    cursor: pointer;
}
.nmc-chatbot-note {
    margin: 0;
    padding: 0 14px 14px;
    font-size: .72rem;
    color: #64748b;
    background: #fff;
}
.admin-chat-message {
    display: grid;
    gap: 8px;
    padding: 14px 0;
    border-bottom: 1px solid #e5e7eb;
}
.admin-chat-message:last-child { border-bottom: 0; }
.admin-chat-message strong { color: #0f172a; }
.admin-chat-message small { color: #64748b; }
.admin-chat-message code { white-space: normal; overflow-wrap: anywhere; background: #f8fafc; padding: 8px; border-radius: 12px; }
@media (max-width: 640px) {
    .nmc-chatbot { left: 12px; bottom: 70px; }
    .nmc-chatbot-panel { width: calc(100vw - 24px); bottom: 58px; border-radius: 24px; }
    .nmc-chatbot-messages { max-height: 330px; }
    .nmc-chatbot-toggle strong { display: none; }
}

/* Chatbot humano v2 */
.nmc-chatbot-toggle {
    background: linear-gradient(135deg, #111827, #0f172a);
}
.nmc-chatbot-toggle span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
}
.nmc-chatbot-bubble {
    overflow-wrap: anywhere;
}
.nmc-chatbot-msg.bot .nmc-chatbot-bubble {
    box-shadow: 0 8px 18px rgba(15,23,42,.04);
}
.nmc-chatbot-dots {
    color: #dc2626;
    letter-spacing: 2px;
    animation: nmcChatPulse 1.1s infinite ease-in-out;
}
@keyframes nmcChatPulse {
    0%, 100% { opacity: .35; }
    50% { opacity: 1; }
}
.nmc-chatbot-chip:hover {
    transform: translateY(-1px);
    border-color: rgba(220,38,38,.35);
    box-shadow: 0 8px 16px rgba(15,23,42,.08);
}
.nmc-chatbot-note {
    border-top: 1px solid #f1f5f9;
    padding-top: 10px;
}

/* Web pulido v6 */
.commercial-page-hero { background: linear-gradient(135deg,#fff 0%,#fff5f5 55%,#f8fafc 100%); border: 1px solid #fee2e2; }
.centered-note { text-align:center; color: var(--muted); margin-top: 18px; }
.price-table-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:18px; }
.price-center-card { background:#fff; border:1px solid #e5e7eb; border-radius:24px; padding:22px; box-shadow:0 14px 30px rgba(15,23,42,.06); display:flex; flex-direction:column; gap:16px; }
.price-center-card h3 { margin:10px 0 4px; font-size:1.25rem; }
.price-center-card p { color:#64748b; font-size:.92rem; }
.price-center-card dl { display:grid; grid-template-columns: 1fr 1fr; gap:8px 12px; padding:14px; border-radius:18px; background:#f8fafc; }
.price-center-card dt { color:#64748b; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.price-center-card dd { font-weight:800; }
.trust-explain-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:18px; }
.trust-explain-grid article { background:#fff; border:1px solid #e5e7eb; border-radius:24px; padding:24px; box-shadow:0 12px 28px rgba(15,23,42,.06); }
.trust-explain-grid article span { font-size:2rem; display:block; margin-bottom:10px; }
.trust-explain-grid article h3 { font-size:1.1rem; margin-bottom:8px; }
.trust-explain-grid article p { color:#64748b; line-height:1.65; }
.trust-explain-grid.large { grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); }
.expanded-faq { max-width: 920px; }
.center-gallery-grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:14px; }
.center-gallery-item { display:block; overflow:hidden; border-radius:22px; border:1px solid #e5e7eb; background:#f8fafc; aspect-ratio:4/3; box-shadow:0 12px 24px rgba(15,23,42,.07); }
.center-gallery-item img { width:100%; height:100%; object-fit:cover; display:block; transition:.2s; }
.center-gallery-item:hover img { transform:scale(1.04); }
.empty-gallery-card { border:1.5px dashed #fecaca; background:#fff7f7; border-radius:24px; padding:32px; text-align:center; color:#7f1d1d; max-width:700px; margin:0 auto; }
.empty-gallery-card span { font-size:2.5rem; display:block; margin-bottom:8px; }
.real-reviews-grid .testimonial-card { min-height: 220px; }
.admin-quicklinks { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 26px; }
.admin-quicklinks a { background:#fff; color:#0f172a; border:1px solid #e5e7eb; border-radius:999px; padding:10px 14px; font-weight:800; box-shadow:0 8px 20px rgba(15,23,42,.06); }
.admin-inline-form { display:flex; gap:12px; align-items:end; flex-wrap:wrap; margin-bottom:18px; }
.admin-inline-form label { display:flex; flex-direction:column; gap:6px; font-weight:800; color:#334155; }
.admin-inline-form select, .admin-form select { border:1px solid #cbd5e1; border-radius:14px; padding:12px; font:inherit; background:#fff; }
.media-upload-form { margin-top:12px; }
.admin-media-grid { grid-template-columns: repeat(auto-fit,minmax(140px,1fr)); }
.legal-small { font-size:.82rem; color:#64748b; }
@media (max-width: 760px) { .main-nav { overflow:auto; padding-bottom:6px; justify-content:flex-start; } .price-center-card dl { grid-template-columns:1fr; } }


/* Admin media manager v7 */
.media-manager-card .media-manager-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}
.media-upload-form {
    display: grid;
    grid-template-columns: minmax(220px, 1.2fr) minmax(180px, .7fr) minmax(260px, 1fr) auto;
    gap: 14px;
    align-items: end;
}
.media-upload-form input[type="file"] {
    padding: 12px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 16px;
}
.admin-gallery-list {
    display: grid;
    gap: 16px;
}
.admin-gallery-item {
    display: grid;
    grid-template-columns: 190px 1fr auto;
    gap: 18px;
    align-items: start;
    padding: 14px;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(15,23,42,.05);
}
.admin-gallery-item.is-muted {
    opacity: .65;
    background: #f8fafc;
}
.admin-gallery-thumb {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #f1f5f9;
    aspect-ratio: 4 / 3;
}
.admin-gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.media-pill {
    position: absolute;
    left: 10px;
    top: 10px;
    display: inline-flex;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 900;
    color: white;
    background: #0f172a;
    box-shadow: 0 6px 16px rgba(0,0,0,.18);
}
.media-pill.cover {
    background: #dc2626;
}
.media-pill.muted {
    top: auto;
    bottom: 10px;
    background: #64748b;
}
.admin-gallery-fields {
    display: grid;
    gap: 10px;
}
.admin-gallery-fields strong {
    font-size: .85rem;
    color: #334155;
    word-break: break-all;
}
.admin-gallery-row {
    display: grid;
    grid-template-columns: minmax(160px, 1fr) 100px;
    gap: 12px;
}
.admin-gallery-checks {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    padding-top: 4px;
}
.admin-gallery-checks label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 800;
    color: #334155;
}
.admin-gallery-actions {
    display: flex;
    justify-content: flex-end;
}
.admin-sticky-actions {
    position: sticky;
    bottom: 12px;
    z-index: 5;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    padding: 14px;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(8px);
    box-shadow: 0 18px 40px rgba(15,23,42,.12);
}
.admin-sticky-actions span {
    color: #64748b;
    font-weight: 700;
    font-size: .9rem;
}
.admin-danger-zone {
    margin-top: 28px;
    padding: 18px;
    border: 1px dashed #fecaca;
    border-radius: 22px;
    background: #fff7f7;
}
.admin-danger-zone h3 {
    color: #991b1b;
    margin: 0 0 6px;
}
.admin-trash-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.btn-card.danger {
    border-color: #fecaca;
    color: #991b1b;
    background: #fff;
    cursor: pointer;
}
.btn-card.danger:hover {
    background: #fee2e2;
}

@media (max-width: 900px) {
    .media-upload-form {
        grid-template-columns: 1fr;
    }
    .admin-gallery-item {
        grid-template-columns: 1fr;
    }
    .admin-gallery-thumb {
        max-width: 360px;
        width: 100%;
    }
    .admin-gallery-actions {
        justify-content: flex-start;
    }
}
@media (max-width: 560px) {
    .admin-gallery-row {
        grid-template-columns: 1fr;
    }
    .admin-sticky-actions {
        bottom: 68px;
    }
}

/* V8: fotos externas de Google en galerías */
.admin-gallery-thumb .media-pill:nth-of-type(2) { top: 42px; }
.admin-gallery-thumb .media-pill:nth-of-type(3) { top: 74px; }
.media-url-small {
    display: block;
    max-width: 100%;
    color: #64748b;
    font-size: .78rem;
    word-break: break-all;
    line-height: 1.35;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 7px 9px;
}
.media-upload-form input[type="url"] {
    min-width: 280px;
}

/* V9: mapas mejorados */
.improved-map-panel {
    overflow: hidden;
}
.map-embed-card,
.admin-map-preview {
    position: relative;
    width: 100%;
    min-height: 280px;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    background: #f8fafc;
    box-shadow: 0 14px 34px rgba(15,23,42,.08);
    margin: 16px 0;
}
.map-embed-card iframe,
.admin-map-preview iframe {
    width: 100%;
    height: 100%;
    min-height: 280px;
    border: 0;
    display: block;
}
.map-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
}
.map-actions .btn-card {
    cursor: pointer;
    border: 1px solid #d1d5db;
}
.copy-address {
    font-family: inherit;
    font-size: .85rem;
}
.map-warning {
    margin-top: 12px;
    color: #92400e;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 16px;
    padding: 10px 12px;
    font-weight: 700;
    font-size: .9rem;
}
.inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.inline-form {
    display: inline;
}
.table-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}
.admin-help-list {
    margin-top: 14px;
    display: grid;
    gap: 8px;
    color: #475569;
}
.admin-help-list p {
    margin: 0;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 10px 12px;
}
@media (max-width: 700px) {
    .map-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
    .map-embed-card,
    .admin-map-preview {
        min-height: 230px;
        border-radius: 18px;
    }
    .map-embed-card iframe,
    .admin-map-preview iframe {
        min-height: 230px;
    }
}

/* v10 marketing / CRM extras */
.promo-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    gap: 20px;
    margin-top: 22px;
}
.promo-card {
    background: #fff;
    border: 1px solid #fee2e2;
    border-radius: 28px;
    padding: 24px;
    box-shadow: 0 18px 35px rgba(15,23,42,.08);
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.promo-card h2 { margin: 0; font-size: 1.35rem; letter-spacing: -.02em; }
.promo-card strong { color: #dc2626; font-size: 1.1rem; }
.promo-card small { color: #64748b; line-height: 1.5; }
.promo-code {
    display: inline-flex;
    width: fit-content;
    background: #fef2f2;
    color: #b91c1c;
    border: 1px dashed #ef4444;
    border-radius: 999px;
    padding: 6px 12px;
    font-weight: 900;
    letter-spacing: .08em;
    font-size: .78rem;
}
.admin-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
@media (max-width: 760px) { .admin-grid-3 { grid-template-columns: 1fr; } }
.copy-input {
    width: min(100%, 420px);
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 8px 10px;
    font-size: .82rem;
    background: #f8fafc;
}
.row-warning td { background: #fffbeb; }
.admin-card code { white-space: normal; word-break: break-word; }

/* v11 inventory, quality and QR */
.inline-form { display:inline-flex; margin:0 4px 4px 0; }
.row-warning { background:#fffbeb; }
.inventory-warning-detail td { background:#fff7ed; color:#9a3412; font-size:.9rem; }
.inventory-table small, .muted-small { color:#64748b; font-size:.82rem; }
.warning-text { color:#b45309; font-weight:700; }
.inventory-public-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:22px; margin:34px 0 50px; }
.inventory-public-card { background:#fff; border:1px solid #e5e7eb; border-radius:28px; padding:22px; box-shadow:0 18px 40px rgba(15,23,42,.07); }
.inventory-public-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:18px; }
.inventory-public-head h2 { margin:.35rem 0 .15rem; font-size:1.35rem; }
.inventory-public-head p { color:#64748b; margin:0; }
.inventory-public-head > strong { min-width:74px; height:74px; border-radius:22px; display:flex; align-items:center; justify-content:center; background:#fee2e2; color:#dc2626; font-size:2rem; font-weight:900; }
.inventory-public-kpis { display:grid; grid-template-columns:1fr; gap:10px; margin:14px 0; }
.inventory-public-kpis span { background:#f8fafc; border:1px solid #e2e8f0; border-radius:16px; padding:10px 12px; color:#0f172a; }
.inventory-public-kpis b { display:block; color:#64748b; font-size:.75rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:2px; }
.size-pills { display:flex; flex-wrap:wrap; gap:8px; margin:14px 0 6px; }
.size-pills a { background:#dc2626; color:#fff; border-radius:999px; padding:8px 12px; font-size:.86rem; font-weight:800; box-shadow:0 8px 18px rgba(220,38,38,.16); }
.status-badge { display:inline-flex; padding:5px 10px; border-radius:999px; font-size:.75rem; font-weight:900; }
.status-badge.open { background:#dcfce7; color:#166534; }
.status-badge.upcoming { background:#fef9c3; color:#854d0e; }
.admin-quality-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr)); gap:18px; }
.quality-card.good { border-color:#bbf7d0; }
.quality-card.medium { border-color:#fde68a; }
.quality-card.bad { border-color:#fecaca; }
.quality-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; }
.quality-head h2 { margin:0 0 4px; }
.quality-head p { margin:0; color:#64748b; }
.quality-head strong { font-size:2rem; color:#dc2626; }
.quality-bar { height:9px; background:#f1f5f9; border-radius:999px; margin:14px 0 16px; overflow:hidden; }
.quality-bar span { display:block; height:100%; background:linear-gradient(90deg,#ef4444,#22c55e); border-radius:999px; }
.quality-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.quality-list li { display:flex; gap:10px; align-items:flex-start; padding:9px 10px; border-radius:14px; background:#f8fafc; border:1px solid #e2e8f0; }
.quality-list li.ok { background:#f0fdf4; border-color:#dcfce7; }
.quality-list li.ko { background:#fff7ed; border-color:#fed7aa; }
.quality-list strong { display:block; font-size:.92rem; }
.quality-list small { display:block; color:#64748b; margin-top:2px; }
.admin-actions-inline { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.qr-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:18px; }
.qr-grid.small { grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); }
.qr-card { background:#fff; border:1px solid #e5e7eb; border-radius:24px; padding:18px; text-align:center; box-shadow:0 12px 28px rgba(15,23,42,.06); }
.qr-card h3 { margin:0 0 4px; }
.qr-card p { color:#64748b; margin:0 0 12px; font-size:.9rem; }
.qr-card img { width:100%; max-width:220px; height:auto; border-radius:18px; border:1px solid #e5e7eb; background:#fff; padding:8px; }
.qr-links { display:flex; justify-content:center; gap:10px; flex-wrap:wrap; margin:10px 0; }
.qr-links a, .qr-card > a { color:#dc2626; font-weight:800; }
.qr-mini-row { display:flex; justify-content:center; gap:12px; margin-top:10px; }
.qr-mini-row img { max-width:120px; }
.qr-mini-row small { display:block; color:#64748b; }
.poster-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; }
.mini-poster { background:#fff; color:#0f172a; border:3px solid #dc2626; border-radius:28px; padding:24px; text-align:center; break-inside:avoid; }
.mini-poster h3 { font-size:1.6rem; margin:10px 0; }
.mini-poster p { color:#334155; font-weight:700; }
.mini-poster img { width:210px; height:210px; }
.mini-poster strong { display:block; margin:10px 0; font-size:1.05rem; }
@media print {
  .admin-nav,.admin-topbar,.admin-card:not(.printable-poster-section) { display:none !important; }
  body { background:#fff !important; }
  .mini-poster { page-break-inside:avoid; box-shadow:none; }
}

/* v12 cron inventario */
.admin-code-block {
    display: block;
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-word;
    background: #0f172a;
    color: #e5e7eb;
    border-radius: 18px;
    padding: 16px;
    font-size: .88rem;
    line-height: 1.55;
    border: 1px solid rgba(255,255,255,.08);
}
.admin-success {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #86efac;
    border-radius: 18px;
    padding: 14px 18px;
    margin: 16px 0;
    font-weight: 800;
}

/* v13 portales y directorios */
.portals-section { position: relative; }
.portal-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
    gap: 14px;
    margin: 24px 0 10px;
}
.portal-pill {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    padding: 12px 14px;
    box-shadow: 0 12px 30px rgba(15,23,42,.06);
    transition: .18s ease;
    min-height: 66px;
}
.portal-pill:hover {
    transform: translateY(-2px);
    border-color: rgba(220,38,38,.45);
    box-shadow: 0 16px 36px rgba(220,38,38,.14);
}
.portal-pill b,
.portal-card h2 { display: block; color: #0f172a; }
.portal-pill small,
.portal-card p { color: #64748b; }
.portal-logo {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex: 0 0 auto;
}
.portal-logo.big { width: 54px; height: 54px; border-radius: 18px; }
.portal-logo img { width: 34px; height: 34px; object-fit: contain; border-radius: 8px; }
.portal-logo.big img { width: 44px; height: 44px; }
.portal-logo strong { display: none; color: #dc2626; font-weight: 900; font-size: .8rem; letter-spacing: -.03em; }
.portal-logo.no-img strong,
.portal-logo:not(:has(img)) strong { display: inline; }
.portal-grid-full {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    gap: 18px;
}
.portal-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 20px;
    box-shadow: 0 16px 36px rgba(15,23,42,.07);
}
.portal-card-head { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.portal-card h2 { margin: 0 0 3px; font-size: 1.18rem; }
.portal-card p { margin: 0 0 14px; line-height: 1.55; }
.portal-admin-form label { display: block; font-weight: 800; color: #334155; margin: 10px 0; }
.portal-admin-form input[type="text"],
.portal-admin-form input[type="url"],
.portal-admin-form input[type="number"] {
    width: 100%;
    margin-top: 6px;
    border: 1px solid #cbd5e1;
    border-radius: 14px;
    padding: 11px 12px;
    font: inherit;
    font-weight: 600;
    background: #fff;
}
.portal-admin-list { display: grid; gap: 16px; }
.portal-admin-row { border: 1px solid #e2e8f0; border-radius: 22px; padding: 16px; background: #f8fafc; }
.portal-admin-row legend { font-weight: 900; color: #dc2626; padding: 0 8px; }
.admin-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.admin-check-row { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 10px; }
.admin-check-row label { margin: 0; display: inline-flex; align-items: center; gap: 8px; }
.admin-help-box { background:#eff6ff; border:1px solid #bfdbfe; color:#1e3a8a; border-radius:18px; padding:14px 16px; margin-bottom:18px; }
@media (max-width: 820px) { .admin-grid-4 { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .admin-grid-4 { grid-template-columns: 1fr; } .portal-pill { border-radius: 22px; } }


/* v14 redes sociales en footer */
.footer-socials {
    margin-top: 18px;
}
.footer-socials > strong {
    display: block;
    color: #fff;
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.footer-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}
.footer-social-links a {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: #111827;
    border: 1px solid #263247;
    color: #e5e7eb;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: .18s ease;
}
.footer-social-links a:hover {
    color: #fff;
    border-color: rgba(220,38,38,.7);
    background: #dc2626;
    transform: translateY(-2px);
}
.footer-social-links svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}
.footer-social-links span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}
.social-admin-form label { display: block; font-weight: 800; color: #334155; margin: 10px 0; }
.social-admin-form input[type="text"],
.social-admin-form input[type="url"],
.social-admin-form input[type="number"],
.social-admin-form select {
    width: 100%;
    margin-top: 6px;
    border: 1px solid #cbd5e1;
    border-radius: 14px;
    padding: 11px 12px;
    font: inherit;
    font-weight: 600;
    background: #fff;
}
.social-admin-list { display: grid; gap: 16px; }
.social-admin-row { border: 1px solid #e2e8f0; border-radius: 22px; padding: 16px; background: #f8fafc; }
.social-admin-row legend { font-weight: 900; color: #dc2626; padding: 0 8px; }
.social-preview { display:inline-flex; align-items:center; gap:8px; color:#0f172a; font-weight:900; }
.social-preview svg { width:22px; height:22px; fill:#dc2626; }

/* Version estable v1: alertas, sistema y mantenimiento */
.backup-item.alert-high { border-left: 6px solid #dc2626; }
.backup-item.alert-medium { border-left: 6px solid #f59e0b; }
.backup-item.alert-low { border-left: 6px solid #64748b; }
.admin-code {
    display: block;
    background: #0f172a;
    color: #e5e7eb;
    border-radius: 16px;
    padding: 16px;
    overflow-x: auto;
    font-size: .85rem;
    line-height: 1.6;
}
.admin-editor label input[type="number"] {
    margin-top: 8px;
}

/* Home slider estable v1.1 */
.home-slider {
    position: relative;
    margin-top: 0;
    padding-left: 20px;
    padding-right: 20px;
}
.home-slider-track {
    position: relative;
    min-height: 440px;
}
.home-slide {
    position: absolute;
    inset: 0;
    width: calc(100% - 40px);
    margin: 0 20px;
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px) scale(.985);
    transition: opacity .35s ease, transform .35s ease;
    overflow: hidden;
}
.home-slide::before {
    content: "";
    position: absolute;
    inset: -35%;
    background:
        radial-gradient(circle at 12% 18%, rgba(255,255,255,.16), transparent 25%),
        radial-gradient(circle at 82% 26%, rgba(220,38,38,.22), transparent 22%),
        radial-gradient(circle at 80% 92%, rgba(37,211,102,.10), transparent 22%);
    pointer-events: none;
}
.home-slide > * { position: relative; z-index: 1; }
.home-slide.active {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}
.home-slide.theme-dark { background: linear-gradient(135deg, #172033 0%, #0f172a 58%, #111827 100%); }
.home-slide.theme-red { background: linear-gradient(135deg, #991b1b 0%, #dc2626 52%, #7f1d1d 100%); }
.home-slide.theme-slate { background: linear-gradient(135deg, #0f172a 0%, #334155 58%, #111827 100%); }
.home-slide.theme-light {
    background: linear-gradient(135deg, #ffffff 0%, #fff5f5 50%, #f8fafc 100%);
    color: #0f172a;
    border: 1px solid #fee2e2;
}
.home-slide.theme-light .hero-text p,
.home-slide.theme-light .hero-small,
.home-slide.theme-light .hero-image p { color: #475569 !important; }
.home-slide.theme-light .hero-btn.secondary { color: #0f172a; border-color: #e2e8f0; background: #fff; }
.home-slide .hero-text h1 { max-width: 760px; }
.home-slide .hero-image {
    min-height: 205px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.slide-media-img {
    width: 100%;
    max-height: 230px;
    object-fit: cover;
    border-radius: 22px;
    box-shadow: 0 16px 36px rgba(0,0,0,.22);
}
.slider-controls {
    position: absolute;
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 999px;
    background: rgba(15,23,42,.52);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(10px);
}
.slider-arrow,
.slider-dot {
    border: 0;
    cursor: pointer;
    color: white;
}
.slider-arrow {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: rgba(255,255,255,.15);
    font-size: 22px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.slider-arrow:hover { background: rgba(255,255,255,.26); }
.slider-dots { display: inline-flex; gap: 7px; align-items: center; }
.slider-dot {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: rgba(255,255,255,.45);
    padding: 0;
    transition: .2s;
}
.slider-dot.active {
    width: 26px;
    background: #fff;
}
.slider-admin-row,
.portal-admin-row {
    border: 1px solid #e2e8f0;
    border-radius: 24px;
    padding: 20px;
    margin-bottom: 18px;
    background: #fff;
}
.slider-admin-row legend,
.portal-admin-row legend {
    padding: 0 10px;
    font-weight: 900;
    color: #0f172a;
}
.slider-admin-form textarea,
.slider-admin-form input,
.slider-admin-form select {
    width: 100%;
}
.slider-admin-form textarea {
    resize: vertical;
    min-height: 92px;
}

@media (max-width: 960px) {
    .home-slider-track { min-height: 620px; }
    .home-slide { width: calc(100% - 40px); }
}
@media (max-width: 640px) {
    .home-slider { padding-left: 0; padding-right: 0; }
    .home-slider-track { min-height: 640px; }
    .home-slide {
        margin: 0 20px;
        width: calc(100% - 40px);
        padding-bottom: 78px;
    }
    .slider-controls { bottom: 16px; }
}

/* v16: cabecera pública, contacto mejor colocado y panel admin ordenado */
.top-banner-smart { padding: 0; background: linear-gradient(90deg, #dc2626, #b91c1c); }
.top-banner-inner { display:flex; align-items:center; justify-content:center; gap:14px; min-height:42px; font-size:.92rem; }
.top-banner-inner a { color:#fff; border:1px solid rgba(255,255,255,.35); border-radius:999px; padding:5px 11px; font-size:.78rem; font-weight:900; white-space:nowrap; background:rgba(255,255,255,.12); }
.top-banner-inner a:hover { background:#fff; color:#b91c1c; }
.site-header { padding: 18px 20px 22px; gap: 12px; }
.site-header-main { width:100%; display:grid; grid-template-columns: minmax(190px,.75fr) minmax(260px,1fr) minmax(360px,.95fr); gap:18px; align-items:center; background:rgba(255,255,255,.86); border:1px solid #e5e7eb; border-radius:28px; padding:14px 16px; box-shadow:0 16px 38px rgba(15,23,42,.08); backdrop-filter: blur(8px); }
.brand-block { display:grid; gap:5px; min-width:0; }
.brand-block .logo-text { font-size:2rem; }
.brand-tagline { color:#64748b; font-weight:800; font-size:.86rem; }
.header-trust { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; }
.header-trust span { display:inline-flex; align-items:center; background:#f8fafc; border:1px solid #e2e8f0; color:#334155; border-radius:999px; padding:7px 11px; font-size:.8rem; font-weight:900; }
.header-contact-card { display:flex; align-items:center; justify-content:flex-end; gap:12px; min-width:0; }
.header-contact-copy { display:grid; gap:2px; text-align:right; min-width:150px; }
.header-contact-copy strong { color:#0f172a; font-weight:900; }
.header-contact-copy span { color:#64748b; font-size:.78rem; font-weight:700; line-height:1.25; }
.site-header .contact-buttons { flex-wrap:nowrap; gap:8px; }
.site-header .btn-contact { padding:12px 18px; white-space:nowrap; }
.site-header .btn-contact.phone { background:#f8fafc; }
.site-header .btn-contact.whatsapp { min-width:135px; }
.site-header .main-nav { width:100%; background:#fff; border:1px solid #e5e7eb; border-radius:999px; padding:8px; box-shadow:0 10px 28px rgba(15,23,42,.05); }
.site-header .main-nav a { font-size:.86rem; padding:8px 11px; }
.home-contact-panel { margin-top:-18px; margin-bottom:38px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:22px; background:#fff; border:1px solid #e5e7eb; border-radius:30px; padding:24px 28px; box-shadow:0 18px 38px rgba(15,23,42,.08); }
.home-contact-panel h2 { font-size:clamp(1.4rem,3vw,2rem); letter-spacing:-.04em; margin-bottom:6px; color:#0f172a; }
.home-contact-panel p { color:#64748b; max-width:680px; }
.home-contact-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:10px; min-width:300px; }
.hero-btn.secondary.dark { color:#0f172a; background:#f8fafc; border:1px solid #e2e8f0; }
.home-contact-link { color:#b91c1c; font-weight:900; font-size:.9rem; padding:8px 2px; }

.admin-nav.admin-nav-organized { display:grid; grid-template-columns: 170px repeat(4, minmax(0,1fr)) auto; gap:12px; align-items:stretch; position:static; border-radius:28px; padding:14px; margin-bottom:28px; background:rgba(255,255,255,.96); border:1px solid #e5e7eb; box-shadow:0 18px 38px rgba(15,23,42,.08); }
.admin-nav-brand { display:grid; align-content:center; border-radius:20px; background:linear-gradient(135deg,#0f172a,#1e293b); color:#fff; padding:14px; }
.admin-nav-brand strong { font-size:1.05rem; letter-spacing:-.03em; }
.admin-nav-brand span { color:#cbd5e1; font-size:.78rem; font-weight:800; }
.admin-nav-section { display:grid; gap:8px; min-width:0; }
.admin-nav-label { color:#64748b; font-size:.68rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; padding-left:4px; }
.admin-nav-links { display:flex; flex-wrap:wrap; gap:6px; align-content:flex-start; }
.admin-nav.admin-nav-organized a { margin:0; padding:8px 10px; font-size:.78rem; border-radius:999px; background:#f8fafc; border:1px solid #e5e7eb; color:#334155; }
.admin-nav.admin-nav-organized a:hover { background:#fee2e2; border-color:#fecaca; color:#991b1b; }
.admin-nav.admin-nav-organized a.active { background:#dc2626; border-color:#dc2626; color:#fff; }
.admin-nav.admin-nav-organized a.logout { align-self:center; justify-self:end; background:#fff; color:#b91c1c; border-color:#fecaca; font-weight:900; }
.admin-home-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:16px; margin:22px 0 26px; }
.admin-home-card { background:#fff; border:1px solid #e5e7eb; border-radius:26px; padding:20px; box-shadow:0 16px 36px rgba(15,23,42,.07); }
.admin-home-card.priority { border-color:#fecaca; background:linear-gradient(180deg,#fff,#fff7f7); }
.admin-home-card.preview { background:linear-gradient(135deg,#f8fafc,#ffffff); }
.admin-home-card > span { display:inline-flex; color:#b91c1c; background:#fee2e2; border:1px solid #fecaca; border-radius:999px; padding:4px 9px; font-size:.7rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; margin-bottom:10px; }
.admin-home-card h2 { font-size:1.18rem; letter-spacing:-.03em; margin-bottom:12px; color:#0f172a; }
.admin-home-links { display:flex; flex-wrap:wrap; gap:8px; }
.admin-home-links a { display:inline-flex; align-items:center; gap:6px; padding:9px 11px; border:1px solid #e5e7eb; background:#f8fafc; border-radius:999px; font-weight:900; font-size:.82rem; color:#334155; }
.admin-home-links a:hover { background:#dc2626; color:#fff; border-color:#dc2626; }

@media (max-width: 1100px) {
    .site-header-main { grid-template-columns:1fr; }
    .header-contact-card { justify-content:space-between; }
    .header-contact-copy { text-align:left; }
    .admin-nav.admin-nav-organized { grid-template-columns:1fr 1fr; }
    .admin-nav-brand { grid-column:1 / -1; }
    .admin-nav.admin-nav-organized a.logout { justify-self:start; }
    .admin-home-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
    .top-banner-inner { justify-content:flex-start; overflow-x:auto; }
    .site-header { padding:14px 14px 18px; }
    .site-header-main { border-radius:22px; padding:14px; }
    .brand-block .logo-text { font-size:1.8rem; }
    .header-trust { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:2px; }
    .header-contact-card { display:grid; gap:10px; }
    .site-header .contact-buttons { display:grid; grid-template-columns:1fr 1fr; width:100%; }
    .site-header .btn-contact { min-width:0; padding:11px 10px; }
    .site-header .main-nav { border-radius:20px; overflow-x:auto; flex-wrap:nowrap; justify-content:flex-start; }
    .home-contact-panel { margin-top:0; grid-template-columns:1fr; padding:20px; border-radius:24px; }
    .home-contact-actions { min-width:0; justify-content:flex-start; }
    .home-contact-actions .hero-btn { width:100%; }
    .admin-nav.admin-nav-organized, .admin-home-grid { grid-template-columns:1fr; }
    .admin-nav-links { overflow-x:auto; flex-wrap:nowrap; padding-bottom:2px; }
}

/* v17: cabecera limpia, ventajas fuera del header y panel admin más respirable */
.site-header-main {
    grid-template-columns: minmax(210px, 1fr) minmax(420px, auto) !important;
    gap: 18px !important;
}
.header-trust { display: none !important; }
.header-contact-card {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 10px 12px;
}
.header-contact-copy { min-width: 190px; }
.site-header .contact-buttons { flex-shrink: 0; }

.home-benefits-strip {
    margin-top: -26px;
    margin-bottom: 24px;
    position: relative;
    z-index: 8;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.home-benefit-item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255,255,255,.96);
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    padding: 14px 16px;
    box-shadow: 0 14px 32px rgba(15,23,42,.08);
    min-width: 0;
}
.home-benefit-item span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-weight: 900;
    flex: 0 0 auto;
}
.home-benefit-item strong {
    color: #0f172a;
    font-weight: 900;
    font-size: .95rem;
    white-space: normal;
    line-height: 1.15;
}
.home-contact-panel { margin-top: 0 !important; }

.admin-nav.admin-nav-organized {
    grid-template-columns: 190px repeat(2, minmax(0, 1fr)) !important;
    align-items: start;
}
.admin-nav-brand {
    min-height: 100%;
}
.admin-nav.admin-nav-organized a.logout {
    grid-column: 1 / -1;
    justify-self: end;
    padding-left: 18px;
    padding-right: 18px;
}
.admin-nav-section {
    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 18px;
    padding: 10px;
}
.admin-nav-links a {
    white-space: nowrap;
}
.admin-topbar.compact-admin-topbar {
    align-items: center;
    background: linear-gradient(135deg, #fff, #f8fafc);
    border: 1px solid #e5e7eb;
    border-radius: 30px;
    padding: 22px;
    box-shadow: 0 16px 36px rgba(15,23,42,.06);
}
.admin-section-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 28px 0 14px;
}
.admin-section-title h2 {
    font-size: 1.3rem;
    letter-spacing: -.03em;
    color: #0f172a;
}
.admin-section-title p {
    color: #64748b;
    font-size: .92rem;
}
.checklist-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 22px 0;
}
.checklist-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 18px;
    box-shadow: 0 14px 30px rgba(15,23,42,.06);
}
.checklist-card.ok { border-color: #bbf7d0; }
.checklist-card.warn { border-color: #fed7aa; }
.checklist-card.bad { border-color: #fecaca; }
.checklist-card h3 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1rem;
    margin-bottom: 8px;
}
.checklist-card p { color: #64748b; font-size: .92rem; }
.checklist-card a { margin-top: 12px; display: inline-flex; font-weight: 900; color: #b91c1c; }

@media (max-width: 1100px) {
    .site-header-main { grid-template-columns: 1fr !important; }
    .header-contact-card { justify-content: space-between; }
    .admin-nav.admin-nav-organized { grid-template-columns: 1fr 1fr !important; }
    .admin-nav-brand { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    .home-benefits-strip { grid-template-columns: 1fr; margin-top: 14px; }
    .home-benefit-item { padding: 12px 14px; }
    .header-contact-card { display: grid; gap: 10px; }
    .header-contact-copy { min-width: 0; }
    .checklist-grid { grid-template-columns: 1fr; }
    .admin-nav.admin-nav-organized { grid-template-columns: 1fr !important; }
    .admin-nav.admin-nav-organized a.logout { justify-self: start; }
}

/* Admin v18: panel ordenado y centro de mando */
body:has(.admin-dashboard-v18) {
    background: radial-gradient(circle at top left, #fff1f2 0, #f8fafc 42%, #eef2f7 100%);
}
.admin-dashboard-v18 {
    max-width: 1480px !important;
    display: grid;
    grid-template-columns: 286px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    padding: 24px 20px 80px !important;
}
.admin-dashboard-v18 > :not(.admin-nav) {
    grid-column: 2;
}
.admin-dashboard-v18 > .admin-nav-organized {
    grid-column: 1;
    grid-row: 1 / span 100;
}
.admin-nav-organized {
    position: sticky !important;
    top: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
    width: 100%;
    max-height: calc(100vh - 36px);
    overflow: auto;
    padding: 16px !important;
    border-radius: 28px !important;
    background: rgba(255,255,255,.94) !important;
    border: 1px solid rgba(203,213,225,.9) !important;
    box-shadow: 0 26px 60px rgba(15,23,42,.10) !important;
    backdrop-filter: blur(16px);
}
.admin-nav-organized .admin-nav-brand {
    padding: 22px 18px;
    border-radius: 24px;
    background: linear-gradient(135deg, #111827, #172033);
    color: #fff;
    box-shadow: 0 18px 32px rgba(15,23,42,.16);
}
.admin-nav-organized .admin-nav-brand strong {
    display: block;
    font-size: 1.12rem;
    letter-spacing: -.03em;
}
.admin-nav-organized .admin-nav-brand span {
    display: block;
    margin-top: 3px;
    color: #cbd5e1;
    font-size: .82rem;
    font-weight: 700;
}
.admin-nav-organized .admin-nav-section {
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 12px;
    background: #f8fafc;
}
.admin-nav-organized .admin-nav-label {
    display: block;
    color: #64748b;
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin: 0 4px 9px;
}
.admin-nav-organized .admin-nav-links {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
}
.admin-nav-organized a {
    display: flex !important;
    justify-content: flex-start !important;
    width: 100%;
    padding: 10px 12px !important;
    border-radius: 15px !important;
    color: #334155 !important;
    background: transparent !important;
    font-size: .88rem !important;
    line-height: 1.2;
    border: 1px solid transparent;
}
.admin-nav-organized a:hover {
    background: #fff !important;
    border-color: #e2e8f0;
    color: #0f172a !important;
    transform: translateX(2px);
}
.admin-nav-organized a.active {
    color: #fff !important;
    background: linear-gradient(135deg, #dc2626, #ef4444) !important;
    border-color: transparent;
    box-shadow: 0 12px 24px rgba(220,38,38,.22);
}
.admin-nav-organized a.logout {
    margin-left: 0 !important;
    margin-top: 4px;
    justify-content: center !important;
    color: #b91c1c !important;
    background: #fff !important;
    border: 1px solid #fecaca !important;
}
.admin-nav-organized a.logout:hover {
    background: #fee2e2 !important;
    transform: none;
}
.admin-hero-panel {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    padding: 30px;
    border-radius: 32px;
    background: linear-gradient(135deg, #111827 0%, #172033 55%, #273244 100%);
    color: #fff;
    box-shadow: 0 28px 60px rgba(15,23,42,.18);
    overflow: hidden;
    position: relative;
}
.admin-hero-panel::after {
    content: "";
    position: absolute;
    inset: auto -80px -100px auto;
    width: 240px;
    height: 240px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(220,38,38,.36), rgba(220,38,38,0) 70%);
}
.admin-hero-panel > * { position: relative; z-index: 1; }
.admin-hero-panel .eyebrow {
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.18);
    color: #fecaca;
}
.admin-hero-panel h1 {
    margin: 10px 0 8px;
    font-size: clamp(2rem, 4vw, 3.6rem);
    line-height: .95;
    letter-spacing: -.065em;
    font-weight: 950;
}
.admin-hero-panel p {
    margin: 0;
    max-width: 720px;
    color: #cbd5e1;
    font-size: 1rem;
}
.admin-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    min-width: 260px;
}
.admin-hero-actions .hero-btn.secondary {
    background: rgba(255,255,255,.08) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.22) !important;
}
.admin-today-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.admin-today-card {
    display: grid;
    gap: 8px;
    padding: 18px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 14px 30px rgba(15,23,42,.07);
    position: relative;
    overflow: hidden;
}
.admin-today-card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 4px;
    background: #94a3b8;
}
.admin-today-card.ok::after { background: #22c55e; }
.admin-today-card.warning::after { background: #f59e0b; }
.admin-today-card.danger::after { background: #dc2626; }
.admin-today-card span {
    color: #64748b;
    font-weight: 950;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.admin-today-card strong {
    display: block;
    color: #0f172a;
    font-size: 2.15rem;
    line-height: 1;
    font-weight: 950;
}
.admin-today-card p {
    margin: 0;
    color: #64748b;
    font-size: .88rem;
}
.admin-today-card a {
    color: #dc2626;
    font-weight: 900;
    font-size: .88rem;
}
.admin-filter-row-v18 {
    background: rgba(255,255,255,.72);
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 12px 14px;
    box-shadow: 0 10px 24px rgba(15,23,42,.04);
}
.admin-kpi-grid-v18 {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.admin-kpi-grid-v18 article {
    border-radius: 24px !important;
    padding: 18px !important;
}
.admin-kpi-grid-v18 strong {
    font-size: 2rem !important;
}
.admin-command-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.admin-command-card {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 16px;
    padding: 22px;
    border-radius: 28px;
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 16px 34px rgba(15,23,42,.07);
}
.admin-command-card.priority {
    border-color: rgba(220,38,38,.25);
    background: linear-gradient(135deg, #fff, #fff5f5);
}
.admin-command-icon {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    background: #f1f5f9;
    font-size: 1.7rem;
}
.admin-command-card span {
    color: #64748b;
    font-size: .74rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.admin-command-card h2 {
    margin: 5px 0 5px;
    font-size: 1.24rem;
}
.admin-command-card p {
    margin: 0 0 14px;
    color: #64748b;
    font-size: .92rem;
}
.admin-command-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.admin-command-links a {
    display: inline-flex;
    padding: 8px 11px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: #334155;
    font-weight: 900;
    font-size: .82rem;
}
.admin-command-links a:hover {
    background: #fee2e2;
    border-color: #fecaca;
    color: #991b1b;
}
.admin-card-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}
.admin-card-head h2 { margin: 0; }
.admin-priority-list {
    display: grid;
    gap: 10px;
}
.admin-priority-item {
    display: grid;
    gap: 3px;
    padding: 12px 14px;
    border-radius: 18px;
    border: 1px solid #e5e7eb;
    background: #f8fafc;
}
.admin-priority-item:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(15,23,42,.06);
}
.admin-priority-item.high,
.admin-priority-item.danger { background: #fff1f2; border-color: #fecaca; }
.admin-priority-item.medium { background: #fffbeb; border-color: #fde68a; }
.admin-priority-item.low { background: #f8fafc; border-color: #e2e8f0; }
.admin-priority-item strong { color: #0f172a; }
.admin-priority-item small { color: #64748b; line-height: 1.45; }
.admin-opportunity-list { display: grid; gap: 18px; }
.admin-opportunity-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 22px;
    box-shadow: 0 16px 36px rgba(15,23,42,.07);
}
.admin-opportunity-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}
.admin-opportunity-head h2 {
    display: inline-block;
    margin: 0 0 4px 10px;
    vertical-align: middle;
}
.admin-opportunity-head p { margin: 4px 0 0; color: #64748b; }
.admin-opportunity-metrics {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}
.admin-opportunity-metrics span {
    display: inline-flex;
    padding: 7px 10px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: #334155;
    font-weight: 900;
    font-size: .82rem;
}
@media (max-width: 1180px) {
    .admin-dashboard-v18 {
        grid-template-columns: 1fr;
    }
    .admin-dashboard-v18 > :not(.admin-nav),
    .admin-dashboard-v18 > .admin-nav-organized {
        grid-column: 1;
        grid-row: auto;
    }
    .admin-nav-organized {
        position: static !important;
        max-height: none;
    }
    .admin-nav-organized .admin-nav-links {
        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    }
}
@media (max-width: 920px) {
    .admin-today-grid,
    .admin-kpi-grid-v18,
    .admin-command-grid,
    .admin-grid-v18 {
        grid-template-columns: 1fr 1fr !important;
    }
    .admin-hero-panel,
    .admin-opportunity-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .admin-hero-actions {
        justify-content: flex-start;
        min-width: 0;
    }
}
@media (max-width: 620px) {
    .admin-dashboard-v18 {
        padding: 14px 12px 70px !important;
    }
    .admin-today-grid,
    .admin-kpi-grid-v18,
    .admin-command-grid,
    .admin-grid-v18 {
        grid-template-columns: 1fr !important;
    }
    .admin-command-card {
        grid-template-columns: 1fr;
    }
    .admin-hero-panel {
        padding: 24px 18px;
        border-radius: 26px;
    }
    .admin-nav-organized {
        border-radius: 24px !important;
    }
}


/* Admin v19: menú lateral permanente en todo el panel */
body:has(.admin-nav-organized),
body:has(.admin-login-screen) {
    background: radial-gradient(circle at top left, #fff1f2 0, #f8fafc 38%, #eef2f7 100%);
}
main.admin-dashboard:has(.admin-nav-organized) {
    max-width: 1500px !important;
    width: 100%;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 300px minmax(0, 1fr) !important;
    gap: 24px !important;
    align-items: start !important;
    padding: 24px 20px 86px !important;
}
main.admin-dashboard:has(.admin-nav-organized) > .admin-nav-organized {
    grid-column: 1 !important;
    grid-row: 1 / span 200 !important;
}
main.admin-dashboard:has(.admin-nav-organized) > :not(.admin-nav-organized) {
    grid-column: 2 !important;
    min-width: 0;
}
.admin-nav-organized {
    position: sticky !important;
    top: 16px !important;
    align-self: start;
    height: calc(100vh - 32px);
    max-height: calc(100vh - 32px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin;
    padding: 16px !important;
    border-radius: 30px !important;
    background: rgba(255,255,255,.95) !important;
    border: 1px solid rgba(203,213,225,.95) !important;
    box-shadow: 0 28px 70px rgba(15,23,42,.12) !important;
    backdrop-filter: blur(18px);
}
.admin-nav-organized::-webkit-scrollbar { width: 8px; }
.admin-nav-organized::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 999px; }
.admin-nav-organized .admin-nav-brand {
    position: relative;
    overflow: hidden;
    padding: 22px 18px !important;
    border-radius: 24px !important;
    background: linear-gradient(135deg, #0f172a 0%, #172033 70%, #253148 100%) !important;
}
.admin-nav-organized .admin-nav-brand::after {
    content: "";
    position: absolute;
    right: -28px;
    bottom: -34px;
    width: 96px;
    height: 96px;
    border-radius: 50%;
    background: rgba(220,38,38,.32);
}
.admin-nav-organized .admin-nav-section {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 22px !important;
    padding: 12px !important;
}
.admin-nav-organized .admin-nav-label {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px !important;
    font-size: .7rem !important;
    letter-spacing: .12em !important;
    color: #64748b !important;
}
.admin-nav-organized .admin-nav-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
}
.admin-nav-organized a {
    min-height: 40px;
    padding: 10px 12px !important;
    border-radius: 15px !important;
    justify-content: flex-start !important;
    text-align: left !important;
    font-size: .89rem !important;
    font-weight: 900 !important;
    color: #334155 !important;
    border: 1px solid transparent !important;
    background: transparent !important;
    white-space: normal;
}
.admin-nav-organized a:hover {
    background: #fff !important;
    border-color: #e2e8f0 !important;
    color: #0f172a !important;
    transform: translateX(2px);
}
.admin-nav-organized a.active {
    background: linear-gradient(135deg, #dc2626, #ef4444) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 24px rgba(220,38,38,.24) !important;
}
.admin-nav-organized a.logout {
    margin: 2px 0 0 !important;
    justify-content: center !important;
    color: #b91c1c !important;
    background: #fff !important;
    border: 1px solid #fecaca !important;
}
.admin-nav-organized a.logout:hover {
    background: #fee2e2 !important;
    transform: none !important;
}
.admin-topbar {
    background: rgba(255,255,255,.82);
    border: 1px solid #e2e8f0;
    border-radius: 28px;
    padding: 24px !important;
    box-shadow: 0 18px 44px rgba(15,23,42,.08);
}
.admin-topbar h1 {
    font-size: clamp(2rem, 3.2vw, 3.2rem) !important;
}
.admin-actions a[href$="logout.php"] {
    display: none !important;
}
.admin-card,
.admin-help-card,
.admin-warning,
.admin-success,
.admin-error,
.admin-grid-2 > article,
.admin-command-card,
.admin-today-card,
.admin-kpi-grid article,
.admin-kpi-grid-v18 article {
    box-shadow: 0 18px 44px rgba(15,23,42,.07);
}
.admin-card {
    border-radius: 28px !important;
}
/* Compatibilidad: si algún navegador no soporta :has, el panel sigue usable en vertical. */
@supports not selector(:has(*)) {
    main.admin-dashboard {
        max-width: 1240px !important;
        display: block !important;
    }
    .admin-nav-organized {
        position: static !important;
        height: auto !important;
        max-height: none !important;
        margin-bottom: 24px !important;
    }
}
@media (max-width: 1180px) {
    main.admin-dashboard:has(.admin-nav-organized) {
        grid-template-columns: 1fr !important;
        max-width: 1180px !important;
    }
    main.admin-dashboard:has(.admin-nav-organized) > .admin-nav-organized,
    main.admin-dashboard:has(.admin-nav-organized) > :not(.admin-nav-organized) {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
    .admin-nav-organized {
        position: static !important;
        height: auto !important;
        max-height: none !important;
        border-radius: 26px !important;
    }
    .admin-nav-organized .admin-nav-links {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
    }
}
@media (max-width: 700px) {
    main.admin-dashboard:has(.admin-nav-organized) {
        padding: 14px 12px 76px !important;
        gap: 16px !important;
    }
    .admin-nav-organized {
        padding: 12px !important;
    }
    .admin-nav-organized .admin-nav-brand {
        padding: 18px 16px !important;
    }
    .admin-nav-organized .admin-nav-section {
        padding: 10px !important;
    }
    .admin-nav-organized .admin-nav-links {
        grid-template-columns: 1fr !important;
    }
    .admin-topbar {
        padding: 20px 16px !important;
        border-radius: 24px;
    }
}

/* V20: home blocks y admin lateral compacto */
.home-newsletter-v20 {
    background: linear-gradient(135deg,#0f172a,#172033);
    color: #fff;
    border-radius: 34px;
    padding: clamp(28px,4vw,48px);
    text-align: center;
    box-shadow: 0 24px 58px rgba(15,23,42,.18);
}
.home-newsletter-v20 h2 { font-size: clamp(1.8rem,4vw,2.7rem); margin: 0 0 10px; letter-spacing: -.04em; }
.home-newsletter-v20 p { color: #cbd5e1; max-width: 620px; margin: 0 auto 20px; line-height: 1.65; }
.newsletter-form-v20 { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:0; max-width:620px; margin:0 auto; border-radius:999px; overflow:hidden; background:#fff; border:1px solid rgba(255,255,255,.18); }
.newsletter-form-v20 input[type=email] { border:0; padding:17px 22px; font: inherit; outline:0; min-width:0; }
.newsletter-form-v20 button { border:0; background:#dc2626; color:#fff; font-weight:900; padding:0 28px; cursor:pointer; }
.newsletter-form-v20 button:hover { background:#b91c1c; }
.newsletter-consent { grid-column:1 / -1; color:#cbd5e1; background:#101b2d; padding:10px 18px; text-align:left; font-size:.82rem; display:flex; gap:8px; align-items:flex-start; }
.newsletter-consent a { color:#fff; text-decoration:underline !important; }
.home-newsletter-v20 small { display:block; color:#94a3b8; margin-top:12px; }
.trust-strip-v20 { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin:38px auto 16px; }
.trust-pill-v20 { display:inline-flex; align-items:center; gap:10px; background:#fff; border:1px solid #e2e8f0; border-radius:999px; padding:12px 22px; box-shadow:0 12px 28px rgba(15,23,42,.06); color:#0f172a; }
.trust-pill-v20 span { font-size:1.35rem; line-height:1; }
.trust-pill-v20 strong { font-size:.95rem; }
.home-stats-v20 { background: radial-gradient(circle at top left,#fff1f2,#f8fafc 48%,#eef2f7); border-radius: 34px; padding: clamp(34px,5vw,54px) clamp(18px,4vw,34px); }
.home-stats-grid-v20 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.home-stats-grid-v20 article { background:#fff; border:1px solid #e2e8f0; border-radius:24px; padding:24px 18px; box-shadow:0 18px 40px rgba(15,23,42,.08); position:relative; overflow:hidden; }
.home-stats-grid-v20 article::after { content:""; position:absolute; left:0; right:0; bottom:0; height:4px; background:linear-gradient(90deg,#dc2626,#fb7185); }
.home-stats-grid-v20 span { display:inline-flex; background:#fee2e2; color:#dc2626; padding:5px 10px; border-radius:999px; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; font-weight:900; margin-bottom:12px; }
.home-stats-grid-v20 strong { display:block; color:#dc2626; font-size:clamp(2rem,4vw,3.2rem); line-height:1; letter-spacing:-.05em; margin-bottom:8px; }
.home-stats-grid-v20 p { color:#64748b; margin:0; line-height:1.5; }
.comparison-card-v20 { max-width:920px; margin:0 auto; background:#fff; border:1px solid #e2e8f0; border-radius:28px; padding:20px; box-shadow:0 18px 40px rgba(15,23,42,.06); }
.comparison-row-v20 { display:grid; grid-template-columns:1.2fr .9fr .9fr; gap:12px; align-items:center; padding:15px 10px; border-bottom:1px solid #eef2f7; }
.comparison-row-v20:last-child { border-bottom:0; }
.comparison-row-v20.head { color:#64748b; text-transform:uppercase; letter-spacing:.08em; font-size:.75rem; font-weight:900; }
.comparison-row-v20 .yes { color:#059669; }
.comparison-row-v20 .no { color:#b91c1c; }

/* Admin lateral v20: mas compacto y con todas las opciones visibles */
main.admin-dashboard:has(.admin-nav-organized) {
    grid-template-columns: 330px minmax(0, 1fr) !important;
    gap: 22px !important;
    max-width: 1560px !important;
}
.admin-nav-organized {
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    height: calc(100dvh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    top: 12px !important;
    padding: 12px !important;
    border-radius: 28px !important;
    overscroll-behavior: contain;
}
.admin-nav-organized .admin-nav-brand { padding:16px 14px !important; border-radius:20px !important; min-height:72px; }
.admin-nav-organized .admin-nav-section { padding:9px !important; border-radius:18px !important; }
.admin-nav-organized .admin-nav-label { margin-bottom:6px !important; font-size:.64rem !important; }
.admin-nav-organized .admin-nav-links { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:5px !important; }
.admin-nav-organized a { min-height:31px !important; padding:7px 8px !important; border-radius:12px !important; font-size:.76rem !important; line-height:1.12 !important; white-space:normal !important; }
.admin-nav-organized a.logout { margin-top:0 !important; min-height:36px !important; }
.admin-sticky-actions { position:sticky; bottom:12px; z-index:10; display:flex; justify-content:flex-end; padding:14px; background:rgba(255,255,255,.82); border:1px solid #e2e8f0; border-radius:22px; backdrop-filter:blur(12px); box-shadow:0 16px 38px rgba(15,23,42,.10); }
.admin-form-wide textarea { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size:.88rem; }

@media (max-width: 1180px) {
    main.admin-dashboard:has(.admin-nav-organized) { grid-template-columns:1fr !important; }
    .admin-nav-organized { position:static !important; height:auto !important; max-height:none !important; }
    .admin-nav-organized .admin-nav-links { grid-template-columns:repeat(auto-fit,minmax(140px,1fr)) !important; }
}
@media (max-width: 760px) {
    .newsletter-form-v20 { grid-template-columns:1fr; border-radius:24px; }
    .newsletter-form-v20 button { padding:15px; }
    .home-stats-grid-v20 { grid-template-columns:1fr; }
    .comparison-row-v20 { grid-template-columns:1fr; gap:6px; }
    .comparison-row-v20.head { display:none; }
    .trust-strip-v20 { justify-content:flex-start; overflow-x:auto; flex-wrap:nowrap; padding-bottom:8px; }
    .trust-pill-v20 { flex:0 0 auto; }
    .admin-nav-organized .admin-nav-links { grid-template-columns:1fr !important; }
}
@media (max-width: 980px) {
    .home-stats-grid-v20 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* === NoMasCaos v21: admin full sidebar + search === */
body.admin-body {
    background: linear-gradient(135deg, #fff7f7 0%, #f8fafc 42%, #eef2f7 100%);
}
body.admin-body .skip-link:focus { z-index: 10000; }
main.admin-dashboard {
    width: min(1520px, calc(100% - 28px));
    max-width: 1520px;
    margin: 18px auto;
    padding: 0;
    display: grid !important;
    grid-template-columns: 315px minmax(0, 1fr) !important;
    gap: 22px !important;
    align-items: start !important;
}
main.admin-dashboard > .admin-nav-organized {
    grid-column: 1 !important;
    grid-row: 1 / span 999 !important;
}
main.admin-dashboard > :not(.admin-nav-organized) {
    grid-column: 2 !important;
    min-width: 0;
}
.admin-nav-organized.admin-sidebar-v21 {
    position: sticky !important;
    top: 16px !important;
    height: calc(100vh - 32px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 14px !important;
    border-radius: 30px !important;
    background: rgba(255,255,255,.96) !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 24px 50px rgba(15,23,42,.10) !important;
    backdrop-filter: blur(10px);
}
.admin-sidebar-v21 .admin-nav-brand {
    border-radius: 22px;
    padding: 18px 16px;
    min-height: auto;
    background: radial-gradient(circle at 10% 0%, #334155, #101827 72%);
    color: #fff;
}
.admin-sidebar-v21 .admin-nav-brand strong {
    display: block;
    font-size: 1.26rem;
    letter-spacing: -.04em;
}
.admin-sidebar-v21 .admin-nav-brand span,
.admin-sidebar-v21 .admin-nav-brand small {
    display: block;
    color: #cbd5e1;
    font-weight: 800;
    font-size: .76rem;
    margin-top: 4px;
}
.admin-nav-quick {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}
.admin-nav-quick a {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 999px;
    padding: 9px 10px;
    background: #fee2e2;
    border: 1px solid #fecaca;
    color: #991b1b;
    font-weight: 900;
    font-size: .76rem;
}
.admin-sidebar-v21 .admin-nav-section {
    display: block !important;
    padding: 10px;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
}
.admin-sidebar-v21 .admin-nav-section.current {
    background: #fff7f7;
    border-color: #fecaca;
}
.admin-sidebar-v21 .admin-nav-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 8px;
    padding: 0 2px;
    color: #64748b;
    font-size: .66rem;
    font-weight: 950;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.admin-sidebar-v21 .admin-nav-links {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 7px !important;
    overflow: visible !important;
    padding: 0 !important;
}
.admin-sidebar-v21 .admin-nav-links a,
.admin-sidebar-v21 a.logout {
    min-height: 36px;
    display: flex !important;
    align-items: center;
    gap: 5px;
    padding: 8px 9px !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: #334155 !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 6px 14px rgba(15,23,42,.03);
    font-size: .72rem !important;
    font-weight: 900 !important;
    line-height: 1.12;
    white-space: normal !important;
}
.admin-sidebar-v21 .admin-nav-links a:hover {
    transform: translateY(-1px);
    border-color: #fecaca !important;
    color: #991b1b !important;
    background: #fff7f7 !important;
}
.admin-sidebar-v21 .admin-nav-links a.active {
    background: linear-gradient(135deg,#ef2222,#dc2626) !important;
    color: #fff !important;
    border-color: #dc2626 !important;
    box-shadow: 0 12px 22px rgba(220,38,38,.20);
}
.admin-sidebar-v21 a.logout {
    width: 100%;
    justify-content: center;
    margin: 0 !important;
    color: #b91c1c !important;
    border-color: #fecaca !important;
}
.admin-sidebar-v21::-webkit-scrollbar { width: 8px; }
.admin-sidebar-v21::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 999px; }
.admin-topbar,
.admin-hero-panel,
.admin-card,
.admin-today-card,
.admin-result-card {
    box-shadow: 0 18px 44px rgba(15,23,42,.07);
}
.admin-search-form,
.public-search-form {
    display: flex;
    gap: 10px;
    align-items: stretch;
}
.admin-search-form input,
.public-search-form input,
.header-search input {
    width: 100%;
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    padding: 14px 18px;
    font: inherit;
    font-weight: 700;
    outline: none;
}
.admin-search-form input:focus,
.public-search-form input:focus,
.header-search input:focus {
    border-color: #ef4444;
    box-shadow: 0 0 0 4px rgba(239,68,68,.12);
}
.admin-results-list {
    display: grid;
    gap: 10px;
}
.admin-result-card {
    display: grid;
    grid-template-columns: 90px minmax(0,1fr) auto auto;
    gap: 12px;
    align-items: center;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 22px;
    padding: 14px;
}
.admin-result-card h3 { margin: 0 0 4px; }
.admin-result-card p { margin: 0; color: #64748b; font-size: .9rem; }
.result-type,
.status-badge.soft,
.score-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #fee2e2;
    color: #991b1b;
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.score-pill {
    min-width: 42px;
    height: 42px;
    background: #dc2626;
    color: #fff;
    font-size: 1rem;
}
.hot-leads-table small { color:#64748b; }
.header-search {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) auto;
    gap: 8px;
    margin-top: 12px;
    max-width: 620px;
    margin-left: auto;
}
.header-search input { padding: 10px 14px; font-size: .9rem; background:#fff; }
.header-search button {
    border: 0;
    border-radius: 999px;
    padding: 10px 18px;
    background:#0f172a;
    color:#fff;
    font-weight:900;
    cursor:pointer;
}
.search-hero {
    background: linear-gradient(135deg,#0f172a,#1e293b);
    color: #fff;
    border-radius: 34px;
    padding: 44px;
    margin-top: 28px;
    box-shadow: 0 24px 44px rgba(15,23,42,.16);
}
.search-hero p { color:#cbd5e1; max-width:640px; }
.search-results-grid {
    display: grid;
    gap: 16px;
    margin-top: 34px;
}
.search-result-public {
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:24px;
    padding:22px;
    box-shadow:0 14px 34px rgba(15,23,42,.06);
}
.search-result-public h3 { margin: 6px 0 8px; font-size:1.25rem; }
.search-result-public p { color:#64748b; }
@media (max-width: 1120px) {
    main.admin-dashboard { grid-template-columns: 1fr !important; width: min(100% - 20px, 1040px); }
    main.admin-dashboard > .admin-nav-organized,
    main.admin-dashboard > :not(.admin-nav-organized) { grid-column: 1 !important; grid-row:auto !important; }
    .admin-nav-organized.admin-sidebar-v21 { position: static !important; height:auto !important; max-height:none !important; }
    .admin-sidebar-v21 .admin-nav-links { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 720px) {
    .admin-sidebar-v21 .admin-nav-links { grid-template-columns: 1fr 1fr; }
    .admin-result-card { grid-template-columns: 1fr; }
    .admin-search-form,
    .public-search-form,
    .header-search { grid-template-columns:1fr; display:grid; }
    .search-hero { padding: 28px 20px; border-radius: 24px; }
}
@media (max-width: 480px) {
    .admin-sidebar-v21 .admin-nav-links { grid-template-columns: 1fr; }
}

/* v22 email/contact polish */
.contact-form-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
    gap: 24px;
    align-items: start;
}
.contact-side-card {
    background: #0f172a;
    color: #fff;
    border-radius: 28px;
    padding: 28px;
    box-shadow: 0 24px 50px rgba(15,23,42,.18);
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.contact-side-card p { color: rgba(255,255,255,.78); }
.contact-side-card ul { padding-left: 18px; color: rgba(255,255,255,.84); line-height: 1.8; }
.admin-form-card, .admin-card {
    background: #fff;
    border: 1px solid rgba(15,23,42,.09);
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 14px 36px rgba(15,23,42,.06);
    margin-bottom: 22px;
}
.admin-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.admin-form-grid label, .admin-form-grid fieldset { display: flex; flex-direction: column; gap: 6px; }
.admin-form-grid textarea, .admin-form-grid input, .admin-form-grid select {
    border: 1px solid rgba(15,23,42,.14);
    border-radius: 14px;
    padding: 12px 14px;
    font: inherit;
    background: #fff;
}
.admin-fieldset {
    border: 1px solid rgba(15,23,42,.12);
    border-radius: 18px;
    padding: 14px;
    grid-column: 1 / -1;
}
.admin-fieldset legend { padding: 0 8px; font-weight: 900; }
.checkbox-line { flex-direction: row !important; align-items: center; gap: 9px !important; }
.admin-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.code-block {
    display: block;
    white-space: normal;
    word-break: break-word;
    background: #f8fafc;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 14px;
    padding: 12px;
    font-size: .85rem;
}
.table-scroll { overflow-x: auto; }
.status-badge.sent { color: #047857; background: #d1fae5; }
.status-badge.failed { color: #b91c1c; background: #fee2e2; }
.status-badge.skipped { color: #92400e; background: #fef3c7; }
@media (max-width: 820px) {
    .contact-form-layout, .admin-form-grid, .admin-grid-2 { grid-template-columns: 1fr; }
}

/* V24: Admin sidebar real, compacto y operativo */
body.admin-body {
    background: radial-gradient(circle at top left, #fff1f2 0, #f8fafc 34%, #eef2f7 100%) !important;
}
main.admin-dashboard:has(.admin-sidebar-v24) {
    max-width: 1540px !important;
    width: 100% !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 322px minmax(0, 1fr) !important;
    gap: 24px !important;
    align-items: start !important;
    padding: 22px 20px 86px !important;
}
main.admin-dashboard:has(.admin-sidebar-v24) > .admin-sidebar-v24 {
    grid-column: 1 !important;
    grid-row: 1 / span 500 !important;
}
main.admin-dashboard:has(.admin-sidebar-v24) > :not(.admin-sidebar-v24) {
    grid-column: 2 !important;
    min-width: 0 !important;
}
.admin-sidebar-v24 {
    position: sticky !important;
    top: 14px !important;
    height: calc(100vh - 28px) !important;
    max-height: calc(100vh - 28px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 12px !important;
    border-radius: 28px !important;
    background: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(203,213,225,.9) !important;
    box-shadow: 0 26px 72px rgba(15,23,42,.14) !important;
    backdrop-filter: blur(18px);
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    scrollbar-width: thin;
}
.admin-sidebar-v24::-webkit-scrollbar { width: 8px; }
.admin-sidebar-v24::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 999px; }
.admin-sidebar-head {
    display: grid;
    gap: 10px;
    padding: 4px 4px 2px;
}
.admin-sidebar-logo {
    display: grid !important;
    grid-template-columns: 48px minmax(0,1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    min-height: 68px !important;
    padding: 12px !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, #0f172a 0%, #172033 72%, #26344e 100%) !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: 0 16px 34px rgba(15,23,42,.22) !important;
}
.admin-sidebar-logo:hover { transform: none !important; }
.admin-sidebar-logo .mark {
    width: 48px;
    height: 48px;
    border-radius: 18px;
    background: #dc2626;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .82rem;
    font-weight: 950;
    letter-spacing: -.03em;
}
.admin-sidebar-logo strong {
    display: block;
    font-size: 1.06rem;
    line-height: 1.05;
    letter-spacing: -.04em;
}
.admin-sidebar-logo small,
.admin-sidebar-date {
    display: block;
    color: #cbd5e1;
    font-size: .75rem;
    font-weight: 800;
}
.admin-sidebar-date {
    color: #64748b;
    padding: 0 10px;
}
.admin-sidebar-search {
    display: grid;
    grid-template-columns: minmax(0,1fr) 42px;
    gap: 6px;
    padding: 0 4px;
}
.admin-sidebar-search input {
    width: 100%;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 15px;
    padding: 11px 12px;
    font: inherit;
    font-weight: 800;
    outline: 0;
}
.admin-sidebar-search input:focus {
    border-color: #fecaca;
    box-shadow: 0 0 0 3px rgba(220,38,38,.08);
    background: #fff;
}
.admin-sidebar-search button {
    border: 1px solid #e2e8f0;
    background: #fff;
    border-radius: 15px;
    cursor: pointer;
    font-weight: 900;
}
.admin-sidebar-fast {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    padding: 0 4px;
}
.admin-sidebar-fast a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 9px 10px !important;
    border-radius: 15px !important;
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    color: #334155 !important;
    font-size: .82rem !important;
    font-weight: 950 !important;
    text-align: center !important;
}
.admin-sidebar-fast a:hover { background: #fee2e2 !important; border-color: #fecaca !important; color: #991b1b !important; transform: none !important; }
.admin-sidebar-v24 .admin-nav-section {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 20px !important;
    padding: 10px !important;
    display: grid !important;
    gap: 8px !important;
}
.admin-sidebar-v24 .admin-nav-section.current {
    background: #fff !important;
    border-color: #fecaca !important;
    box-shadow: inset 4px 0 0 #dc2626, 0 12px 26px rgba(220,38,38,.06) !important;
}
.admin-sidebar-v24 .admin-nav-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 4px !important;
    margin: 0 !important;
    color: #64748b !important;
    font-size: .68rem !important;
    font-weight: 950 !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
}
.admin-sidebar-v24 .admin-nav-label::after {
    content: "";
    height: 1px;
    flex: 1;
    background: #e2e8f0;
}
.admin-sidebar-v24 .admin-nav-links {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 4px !important;
}
.admin-sidebar-v24 .admin-side-link,
.admin-sidebar-v24 a.admin-side-link {
    position: relative;
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr) auto !important;
    gap: 9px !important;
    align-items: center !important;
    min-height: 48px !important;
    padding: 7px 9px !important;
    margin: 0 !important;
    border-radius: 15px !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    color: #334155 !important;
    text-align: left !important;
    font-weight: 900 !important;
    white-space: normal !important;
}
.admin-sidebar-v24 .admin-side-link:hover {
    background: #fff !important;
    border-color: #e2e8f0 !important;
    color: #0f172a !important;
    transform: translateX(2px) !important;
}
.admin-sidebar-v24 .admin-side-link.active {
    background: linear-gradient(135deg,#dc2626,#ef4444) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 12px 24px rgba(220,38,38,.24) !important;
}
.admin-sidebar-v24 .nav-icon {
    width: 34px;
    height: 34px;
    border-radius: 13px;
    background: #fff;
    border: 1px solid #e2e8f0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}
.admin-sidebar-v24 .admin-side-link.active .nav-icon {
    background: rgba(255,255,255,.18);
    border-color: rgba(255,255,255,.28);
}
.admin-sidebar-v24 .nav-copy {
    min-width: 0;
    display: block;
}
.admin-sidebar-v24 .nav-copy strong {
    display: block;
    color: inherit;
    font-size: .88rem;
    line-height: 1.1;
}
.admin-sidebar-v24 .nav-copy small {
    display: block;
    color: #64748b;
    font-size: .68rem;
    line-height: 1.15;
    font-weight: 800;
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.admin-sidebar-v24 .admin-side-link.active .nav-copy small { color: rgba(255,255,255,.78); }
.admin-sidebar-v24 .nav-badge {
    min-width: 24px;
    height: 24px;
    padding: 0 7px;
    border-radius: 999px;
    background: #dc2626;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .72rem;
    font-weight: 950;
    box-shadow: 0 8px 18px rgba(220,38,38,.22);
}
.admin-sidebar-v24 .admin-side-link.active .nav-badge {
    background: #fff;
    color: #dc2626;
}
.admin-sidebar-bottom {
    position: sticky;
    bottom: -12px;
    margin-top: auto;
    padding: 10px 4px 4px;
    background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.98) 22%);
}
.admin-sidebar-v24 .logout {
    background: #fff !important;
    border-color: #fecaca !important;
    color: #b91c1c !important;
    justify-content: stretch !important;
}
.admin-sidebar-v24 .logout:hover { background: #fee2e2 !important; color: #991b1b !important; transform: none !important; }
.admin-sidebar-v24 .logout .nav-icon { color: #b91c1c; background: #fee2e2; border-color: #fecaca; }
.admin-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.admin-topbar .eyebrow { margin-bottom: 8px; }
.admin-topbar h1 { margin-bottom: 8px !important; }
@supports not selector(:has(*)) {
    main.admin-dashboard { max-width: 1240px !important; display: block !important; padding: 20px !important; }
    .admin-sidebar-v24 { position: static !important; height: auto !important; max-height: none !important; margin-bottom: 22px !important; }
}
@media (max-width: 1180px) {
    main.admin-dashboard:has(.admin-sidebar-v24) {
        grid-template-columns: 1fr !important;
        padding: 16px 12px 76px !important;
    }
    main.admin-dashboard:has(.admin-sidebar-v24) > .admin-sidebar-v24,
    main.admin-dashboard:has(.admin-sidebar-v24) > :not(.admin-sidebar-v24) {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
    .admin-sidebar-v24 {
        position: static !important;
        height: auto !important;
        max-height: none !important;
    }
    .admin-sidebar-v24 .admin-nav-links {
        grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
    }
    .admin-sidebar-bottom {
        position: static;
        background: transparent;
        padding-top: 0;
    }
}
@media (max-width: 720px) {
    .admin-sidebar-v24 .admin-nav-links,
    .admin-sidebar-fast {
        grid-template-columns: 1fr !important;
    }
    .admin-sidebar-v24 .nav-copy small {
        white-space: normal;
    }
    .admin-topbar {
        display: block;
    }
}

/* Compatibilidad plugin FacturaScripts root */
.nmc-public .site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.96); border-bottom: 1px solid #e5e7eb; backdrop-filter: blur(10px); }
.nmc-public .header-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 0; }
.nmc-public .brand { display: inline-flex; align-items: center; gap: .55rem; font-weight: 800; text-decoration: none; color: #111827; }
.nmc-public .brand-mark { display: inline-flex; width: 2.35rem; height: 2.35rem; border-radius: .85rem; align-items: center; justify-content: center; background: #111827; color: #fff; font-size: .8rem; }
.nmc-public .main-nav { display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; }
.nmc-public .main-nav a { text-decoration: none; color: #374151; font-weight: 600; font-size: .95rem; }
.nmc-public .nav-cta { display: inline-flex; align-items: center; justify-content: center; padding: .65rem .9rem; border-radius: 999px; background: #16a34a; color: #fff; text-decoration: none; font-weight: 700; }
.nmc-public .site-footer { margin-top: 3rem; padding: 2rem 0; background: #111827; color: #e5e7eb; }
.nmc-public .site-footer a { color: #fff; }
.nmc-public .footer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.nmc-public .grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.nmc-public .card, .nmc-public .center-card { background: #fff; border: 1px solid #e5e7eb; border-radius: 1rem; padding: 1.25rem; box-shadow: 0 8px 24px rgba(15,23,42,.06); }
.nmc-public .centers-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1rem; }
.nmc-public .check-list { padding-left: 1.2rem; }
@media (max-width: 800px) { .nmc-public .header-inner, .nmc-public .main-nav { align-items: flex-start; } .nmc-public .header-inner { flex-direction: column; } .nmc-public .footer-grid, .nmc-public .grid-2 { grid-template-columns: 1fr; } }

/* Header/logo v1.1: logo textual estilo web original y enlace seguro a home pública. */
.header-inner { display: flex; align-items: center; justify-content: space-between; gap: 22px; width: 100%; }
.brand-block { display: inline-flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 170px; text-decoration: none; }
.brand-block:hover .logo-text { color: var(--red-dark); }
.logo-text { font-weight: 900; font-size: 2rem; letter-spacing: -.04em; color: var(--red); line-height: 1; }
.brand-tagline { margin-top: 4px; font-size: .82rem; font-weight: 800; color: var(--muted); line-height: 1.1; white-space: nowrap; }
.nav-cta { display: inline-flex; align-items: center; justify-content: center; padding: 11px 18px; border-radius: 999px; background: var(--wh); color: white; font-weight: 900; box-shadow: 0 10px 18px rgba(37, 211, 102, .22); }
@media (max-width: 860px) {
    .header-inner { justify-content: center; text-align: center; }
    .brand-block { align-items: center; width: 100%; }
    .brand-tagline { white-space: normal; }
}

/* v1.2: logo publico sin slogan */
.brand-logo-only { min-width: auto; }
.brand-logo-only .logo-text { display: inline-flex; align-items: center; line-height: 1; }
.brand-logo-only .brand-tagline { display: none !important; }


/* v1.5 menú público agrupado */
.main-nav.grouped{position:relative;gap:10px}.nav-group{position:relative}.nav-group>button{border:0;background:transparent;padding:9px 12px;border-radius:999px;color:#334155;font-weight:900;font-size:.92rem;cursor:pointer}.nav-group>button:after{content:'▾';font-size:.65rem;margin-left:6px}.nav-group:hover>button,.nav-group:focus-within>button{background:var(--red-soft);color:var(--red-dark)}.nav-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:8px;z-index:50;display:none}.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu{display:block}.nav-menu a{display:block;border-radius:12px;padding:10px 12px;white-space:nowrap}.nav-highlight{background:var(--red)!important;color:#fff!important}.nav-highlight:hover{background:var(--red-dark)!important}.footer a{text-decoration:none}@media(max-width:860px){.main-nav.grouped{align-items:stretch}.nav-group{width:100%}.nav-group>button{width:100%;text-align:left;background:#fff}.nav-menu{position:static;display:block;box-shadow:none;border:0;background:transparent;padding:0 0 4px 12px}.nav-menu a{padding:7px 10px}.nav-highlight{display:inline-flex;justify-content:center}}


/* v1.6: menú público rediseñado + móvil usable */
.mobile-nav-toggle { display: none; }
.site-header { position: sticky; top: 0; z-index: 180; background: rgba(255,255,255,.96); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(15,23,42,.08); }
.site-header-main { gap: 18px; padding-top: 16px; padding-bottom: 10px; }
.header-contact-card { margin-left: auto; }
.main-nav.nmc-menu-v16 { display: flex; align-items: center; justify-content: center; gap: 8px; background: #fff; border: 1px solid #e5e7eb; border-radius: 999px; padding: 8px; box-shadow: 0 12px 30px rgba(15,23,42,.06); margin-top: 8px; }
.main-nav.nmc-menu-v16 > a, .main-nav.nmc-menu-v16 summary { min-height: 40px; display: inline-flex; align-items: center; gap: 6px; padding: 9px 13px; border-radius: 999px; color: #334155; font-weight: 900; font-size: .9rem; cursor: pointer; list-style: none; white-space: nowrap; }
.main-nav.nmc-menu-v16 summary::-webkit-details-marker { display: none; }
.main-nav.nmc-menu-v16 summary::after { content: "▾"; font-size: .72rem; color: #94a3b8; }
.main-nav.nmc-menu-v16 > a:hover, .main-nav.nmc-menu-v16 .nav-group:hover > summary, .main-nav.nmc-menu-v16 .nav-group[open] > summary { background: #fee2e2; color: #991b1b; }
.main-nav.nmc-menu-v16 .nav-highlight { background: #dc2626; color: #fff; box-shadow: 0 10px 22px rgba(220,38,38,.24); }
.main-nav.nmc-menu-v16 .nav-highlight:hover { background: #b91c1c; color: #fff; }
.main-nav.nmc-menu-v16 .nav-group { position: relative; }
.main-nav.nmc-menu-v16 .nav-menu { position: absolute; top: calc(100% + 10px); left: 0; min-width: 250px; display: none; padding: 10px; border-radius: 22px; background: #fff; border: 1px solid #e5e7eb; box-shadow: 0 24px 55px rgba(15,23,42,.16); }
.main-nav.nmc-menu-v16 .nav-group:hover .nav-menu, .main-nav.nmc-menu-v16 .nav-group[open] .nav-menu { display: grid; gap: 4px; }
.main-nav.nmc-menu-v16 .nav-menu a { display: flex; align-items: center; min-height: 40px; padding: 10px 12px; border-radius: 14px; color: #334155; font-weight: 850; }
.main-nav.nmc-menu-v16 .nav-menu a:hover { background: #f8fafc; color: #dc2626; }
@media (max-width: 860px) {
    .top-banner-smart { font-size: .78rem; }
    .top-banner-inner { justify-content: center; text-align: center; gap: 8px; }
    .site-header { padding: 0; }
    .site-header-main { display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 12px 16px; }
    .brand-block.brand-logo-only { min-width: 0; }
    .logo-text { font-size: 1.65rem; letter-spacing: -.05em; }
    .header-contact-card { grid-column: 1 / -1; width: 100%; margin-left: 0; display: grid; grid-template-columns: 1fr; gap: 10px; padding: 12px; border-radius: 18px; background: #f8fafc; }
    .header-contact-copy span { display: none; }
    .contact-buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .btn-contact { min-height: 44px; justify-content: center; padding: 10px 12px; }
    .mobile-nav-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid #e5e7eb; background: #fff; color: #0f172a; border-radius: 999px; min-height: 44px; padding: 0 14px; font-weight: 900; box-shadow: 0 10px 22px rgba(15,23,42,.08); }
    .mobile-nav-toggle i, .mobile-nav-toggle i::before, .mobile-nav-toggle i::after { display:block; width:18px; height:2px; background:#0f172a; border-radius:999px; content:""; }
    .mobile-nav-toggle i { position: relative; }
    .mobile-nav-toggle i::before { position:absolute; top:-6px; left:0; }
    .mobile-nav-toggle i::after { position:absolute; top:6px; left:0; }
    .main-nav.nmc-menu-v16 { display: none; position: fixed; z-index: 500; left: 12px; right: 12px; top: 82px; max-height: calc(100vh - 155px); overflow: auto; margin: 0; padding: 12px; border-radius: 24px; box-shadow: 0 30px 80px rgba(15,23,42,.24); align-items: stretch; justify-content: flex-start; flex-direction: column; gap: 7px; }
    body.nmc-menu-open .main-nav.nmc-menu-v16 { display: flex; }
    body.nmc-menu-open .mobile-nav-toggle { background: #dc2626; color: #fff; border-color: #dc2626; }
    body.nmc-menu-open .mobile-nav-toggle i, body.nmc-menu-open .mobile-nav-toggle i::before, body.nmc-menu-open .mobile-nav-toggle i::after { background: #fff; }
    .main-nav.nmc-menu-v16 > a, .main-nav.nmc-menu-v16 summary { width: 100%; justify-content: space-between; min-height: 48px; padding: 12px 14px; border-radius: 16px; background: #f8fafc; }
    .main-nav.nmc-menu-v16 .nav-group { width: 100%; }
    .main-nav.nmc-menu-v16 .nav-menu { position: static; display: grid; min-width: 0; box-shadow: none; border: 0; background: transparent; padding: 5px 0 6px 10px; }
    .main-nav.nmc-menu-v16 .nav-menu a { min-height: 44px; background: #fff; border: 1px solid #e5e7eb; margin-bottom: 5px; }
    .hero-banner { margin-top: 18px; }
    .hero-text h1 { font-size: clamp(2.1rem, 11vw, 3.15rem); }
    .hero-text p { font-size: 1rem; }
    .hero-actions, .contact-buttons, .center-cta { width: 100%; }
    .hero-btn, .btn-card, .note-btn { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
    .centro-card, .card, .case-card, .service-card, .process-card, .testimonial-card { box-shadow: 0 10px 28px rgba(15,23,42,.07); }
    .mobile-cta-bar { grid-template-columns: repeat(3, 1fr) !important; }
    .mobile-cta-bar a { min-height: 56px; display: grid; place-items: center; font-size: .88rem; }
    .mobile-cta-bar a:first-child { background: #0f172a; color: #fff; }
    body { padding-bottom: 64px; }
}


/* v1.7 revisión general: navegación más clara, móvil más usable y piezas de conversión */
.top-banner-v17 { background: linear-gradient(90deg, #991b1b, #dc2626); color: #fff; }
.top-banner-v17 .top-banner-inner { display: flex; justify-content: center; align-items: center; gap: 14px; min-height: 38px; font-weight: 850; }
.top-banner-v17 a { color: #fff; text-decoration: underline; text-underline-offset: 3px; font-weight: 950; }
.site-header .brand-logo-only .logo-text { font-size: clamp(1.65rem, 4vw, 2.2rem); }
.header-contact-card { display: flex; align-items: center; gap: 14px; border: 1px solid #e5e7eb; border-radius: 22px; padding: 10px 12px; background: #fff; box-shadow: 0 12px 28px rgba(15,23,42,.06); }
.header-contact-copy strong { display: block; font-size: .95rem; color: #0f172a; }
.header-contact-copy span { color: #64748b; font-size: .82rem; }
.main-nav.nmc-menu-v17 { display:flex; align-items:center; justify-content:center; gap:8px; background:#fff; border:1px solid #e5e7eb; border-radius:999px; padding:8px; box-shadow:0 12px 30px rgba(15,23,42,.06); margin-top:8px; }
.main-nav.nmc-menu-v17 > a, .main-nav.nmc-menu-v17 summary { min-height:42px; display:inline-flex; align-items:center; gap:6px; padding:9px 14px; border-radius:999px; color:#334155; font-weight:950; font-size:.92rem; cursor:pointer; list-style:none; white-space:nowrap; }
.main-nav.nmc-menu-v17 summary::-webkit-details-marker { display:none; }
.main-nav.nmc-menu-v17 summary::after { content:"▾"; font-size:.72rem; color:#94a3b8; }
.main-nav.nmc-menu-v17 > a:hover, .main-nav.nmc-menu-v17 .nav-group:hover > summary, .main-nav.nmc-menu-v17 .nav-group[open] > summary { background:#fee2e2; color:#991b1b; }
.main-nav.nmc-menu-v17 .nav-highlight { background:#dc2626; color:#fff; box-shadow:0 10px 22px rgba(220,38,38,.24); }
.main-nav.nmc-menu-v17 .nav-highlight:hover { background:#b91c1c; color:#fff; }
.main-nav.nmc-menu-v17 .nav-group { position:relative; }
.main-nav.nmc-menu-v17 .nav-menu { position:absolute; top:calc(100% + 12px); left:0; min-width:245px; display:none; padding:10px; border-radius:24px; background:#fff; border:1px solid #e5e7eb; box-shadow:0 28px 70px rgba(15,23,42,.18); z-index:600; }
.main-nav.nmc-menu-v17 .nav-menu-wide { min-width: 380px; grid-template-columns: 1fr 1fr; }
.main-nav.nmc-menu-v17 .nav-group:hover .nav-menu, .main-nav.nmc-menu-v17 .nav-group[open] .nav-menu { display:grid; gap:5px; }
.main-nav.nmc-menu-v17 .nav-menu a { display:flex; flex-direction:column; gap:2px; min-height:44px; padding:10px 12px; border-radius:16px; color:#334155; font-weight:900; }
.main-nav.nmc-menu-v17 .nav-menu a:hover { background:#f8fafc; color:#dc2626; }
.main-nav.nmc-menu-v17 .nav-menu small { color:#64748b; font-size:.76rem; font-weight:700; line-height:1.25; }
.mobile-menu-backdrop { display:none; }
body.nmc-menu-open { overflow:hidden; }
.hero-banner.wrap, .center-detail-hero.wrap { width: min(100% - 28px, 1200px); }
.hero-banner .hero-actions .hero-btn { min-width: 178px; }
.card, .centro-card, .center-card { overflow-wrap: anywhere; }
.mobile-cta-v17 { grid-template-columns: repeat(4, 1fr) !important; }
.mobile-cta-v17 a { min-height: 58px; }
.mobile-cta-v17 a:nth-child(4) { background: var(--wh); color:#fff; }
.mobile-cta-v17 a:nth-child(3) { background:#0f172a; color:#fff; }
@media (max-width: 980px) {
    .site-header-main { grid-template-columns: 1fr auto !important; }
    .header-contact-card { grid-column: 1 / -1; width:100%; justify-content:space-between; }
    .main-nav.nmc-menu-v17 { display:none; position:fixed; z-index:700; left:12px; right:12px; top:86px; max-height:calc(100dvh - 160px); overflow:auto; margin:0; padding:12px; border-radius:24px; box-shadow:0 30px 80px rgba(15,23,42,.28); align-items:stretch; justify-content:flex-start; flex-direction:column; gap:7px; }
    body.nmc-menu-open .main-nav.nmc-menu-v17 { display:flex; }
    body.nmc-menu-open .mobile-menu-backdrop { display:block; position:fixed; inset:0; background:rgba(15,23,42,.42); z-index:650; }
    .main-nav.nmc-menu-v17 > a, .main-nav.nmc-menu-v17 summary { width:100%; justify-content:space-between; min-height:50px; padding:13px 14px; border-radius:16px; background:#f8fafc; }
    .main-nav.nmc-menu-v17 .nav-group { width:100%; }
    .main-nav.nmc-menu-v17 .nav-menu, .main-nav.nmc-menu-v17 .nav-menu-wide { position:static; display:grid; min-width:0; grid-template-columns:1fr; box-shadow:none; border:0; background:transparent; padding:6px 0 8px 10px; }
    .main-nav.nmc-menu-v17 .nav-menu a { min-height:48px; background:#fff; border:1px solid #e5e7eb; margin-bottom:5px; }
}
@media (max-width: 640px) {
    body { padding-bottom: 64px; }
    .top-banner-v17 .top-banner-inner { flex-direction:column; gap:2px; padding:7px 12px; font-size:.78rem; line-height:1.25; }
    .site-header-main { padding: 10px 14px !important; }
    .header-contact-card { display:none; }
    .mobile-nav-toggle { min-width: 96px; }
    .hero-banner, .center-detail-hero { padding: 30px 20px !important; border-radius: 28px !important; grid-template-columns: 1fr !important; }
    .hero-actions { display:grid; grid-template-columns:1fr; }
    .hero-btn, .note-btn, .btn-card { width:100%; }
    .centro-footer { grid-template-columns: 1fr !important; }
    .footer-grid { gap: 28px; }
    .mobile-cta-v17 a { font-size: .78rem; padding: 10px 4px; }
}


/* v1.8: cabecera pública simple y comercial */
.top-banner-v18 {
    background: #b91c1c;
    color: #fff;
    font-size: .82rem;
    font-weight: 850;
}
.top-banner-inner-v18 {
    min-height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    white-space: nowrap;
}
.nmc-header-v18 {
    position: sticky;
    top: 0;
    z-index: 180;
    display: block !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, .98);
    border-bottom: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 10px 26px rgba(15, 23, 42, .055);
    backdrop-filter: blur(14px);
}
.header-shell-v18 {
    min-height: 74px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    padding-top: 0;
    padding-bottom: 0;
}
.brand-v18 {
    display: inline-flex;
    align-items: center;
    min-width: 160px;
}
.brand-v18 .logo-text,
.nmc-header-v18 .logo-text {
    font-size: clamp(1.65rem, 2.2vw, 2rem) !important;
    font-weight: 950;
    letter-spacing: -.055em;
    color: #dc2626;
}
.nmc-menu-v18 {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 100%;
    min-width: 0;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.nmc-menu-v18 > a,
.nmc-menu-v18 summary {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 12px;
    border-radius: 12px;
    color: #1f2937;
    font-weight: 900;
    font-size: .9rem;
    cursor: pointer;
    list-style: none;
    white-space: nowrap;
    transition: background .15s ease, color .15s ease;
}
.nmc-menu-v18 summary::-webkit-details-marker { display: none; }
.nmc-menu-v18 summary::after {
    content: "";
    width: 6px;
    height: 6px;
    border-right: 2px solid #94a3b8;
    border-bottom: 2px solid #94a3b8;
    transform: rotate(45deg) translateY(-2px);
    margin-left: 2px;
}
.nmc-menu-v18 > a:hover,
.nmc-menu-v18 > a[aria-current="page"],
.nmc-menu-v18 .nav-group:hover > summary,
.nmc-menu-v18 .nav-group[open] > summary {
    background: #fee2e2;
    color: #991b1b;
}
.nmc-menu-v18 .nav-group { position: relative; }
.nmc-menu-v18 .nav-menu {
    position: absolute;
    top: calc(100% + 12px);
    left: 0;
    min-width: 245px;
    display: none;
    padding: 10px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 28px 70px rgba(15,23,42,.17);
    z-index: 700;
}
.nmc-menu-v18 .nav-menu-wide {
    min-width: 410px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.nmc-menu-v18 .nav-group:hover .nav-menu,
.nmc-menu-v18 .nav-group[open] .nav-menu {
    display: grid;
    gap: 5px;
}
.nmc-menu-v18 .nav-menu a {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 14px;
    color: #334155;
    font-weight: 900;
}
.nmc-menu-v18 .nav-menu a:hover {
    background: #f8fafc;
    color: #dc2626;
}
.nmc-menu-v18 .nav-menu small {
    color: #64748b;
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.25;
}
.header-actions-v18 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    white-space: nowrap;
}
.header-actions-v18 a {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 10px 14px;
    font-weight: 950;
    font-size: .88rem;
    line-height: 1;
    transition: transform .15s ease, background .15s ease, color .15s ease;
}
.header-actions-v18 a:hover { transform: translateY(-1px); }
.header-phone-v18 {
    color: #0f172a;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
}
.header-wa-v18 {
    color: #fff;
    background: #25D366;
    border: 1px solid #25D366;
    box-shadow: 0 10px 20px rgba(37, 211, 102, .22);
}
.header-cta-v18 {
    color: #fff;
    background: #dc2626;
    border: 1px solid #dc2626;
    box-shadow: 0 12px 22px rgba(220, 38, 38, .2);
}
.header-cta-v18:hover { background: #b91c1c; }
.nmc-header-v18 .mobile-nav-toggle-v18 { display: none; }

@media (max-width: 1120px) {
    .header-shell-v18 { gap: 14px; }
    .nmc-menu-v18 > a,
    .nmc-menu-v18 summary { padding-left: 9px; padding-right: 9px; font-size: .86rem; }
    .header-phone-v18 { display: none !important; }
}
@media (max-width: 940px) {
    .top-banner-inner-v18 { justify-content: flex-start; overflow-x: auto; padding: 0 16px; gap: 14px; }
    .header-shell-v18 {
        min-height: 64px;
        grid-template-columns: 1fr auto auto;
        gap: 10px;
    }
    .nmc-header-v18 .mobile-nav-toggle-v18 {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 8px;
        border: 1px solid #e5e7eb;
        background: #fff;
        color: #0f172a;
        border-radius: 999px;
        min-height: 42px;
        padding: 0 14px;
        font-weight: 950;
        box-shadow: 0 10px 22px rgba(15,23,42,.08);
    }
    .nmc-header-v18 .mobile-nav-toggle-v18 i,
    .nmc-header-v18 .mobile-nav-toggle-v18 i::before,
    .nmc-header-v18 .mobile-nav-toggle-v18 i::after {
        display: block;
        width: 18px;
        height: 2px;
        background: #0f172a;
        border-radius: 999px;
        content: "";
    }
    .nmc-header-v18 .mobile-nav-toggle-v18 i { position: relative; }
    .nmc-header-v18 .mobile-nav-toggle-v18 i::before { position: absolute; top: -6px; left: 0; }
    .nmc-header-v18 .mobile-nav-toggle-v18 i::after { position: absolute; top: 6px; left: 0; }
    body.nmc-menu-open .nmc-header-v18 .mobile-nav-toggle-v18 {
        background: #dc2626;
        color: #fff;
        border-color: #dc2626;
    }
    body.nmc-menu-open .nmc-header-v18 .mobile-nav-toggle-v18 i,
    body.nmc-menu-open .nmc-header-v18 .mobile-nav-toggle-v18 i::before,
    body.nmc-menu-open .nmc-header-v18 .mobile-nav-toggle-v18 i::after { background: #fff; }
    .nmc-menu-v18 {
        display: none !important;
        position: fixed;
        left: 12px;
        right: 12px;
        top: 96px;
        max-height: calc(100dvh - 168px);
        overflow: auto;
        z-index: 720;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 8px;
        background: #fff !important;
        border: 1px solid #e5e7eb !important;
        border-radius: 24px !important;
        box-shadow: 0 30px 80px rgba(15,23,42,.30) !important;
        padding: 12px !important;
    }
    body.nmc-menu-open .nmc-menu-v18 { display: flex !important; }
    body.nmc-menu-open .mobile-menu-backdrop {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(15, 23, 42, .42);
        z-index: 650;
    }
    .nmc-menu-v18 > a,
    .nmc-menu-v18 summary {
        width: 100%;
        min-height: 50px;
        justify-content: space-between;
        padding: 13px 14px;
        border-radius: 16px;
        background: #f8fafc;
        font-size: .94rem;
    }
    .nmc-menu-v18 .nav-group { width: 100%; }
    .nmc-menu-v18 .nav-menu,
    .nmc-menu-v18 .nav-menu-wide {
        position: static;
        display: grid;
        min-width: 0;
        grid-template-columns: 1fr;
        box-shadow: none;
        border: 0;
        background: transparent;
        padding: 6px 0 8px 10px;
    }
    .nmc-menu-v18 .nav-menu a {
        min-height: 48px;
        background: #fff;
        border: 1px solid #e5e7eb;
        margin-bottom: 5px;
    }
    .header-actions-v18 { gap: 6px; }
    .header-actions-v18 .header-wa-v18 { display: none; }
    .header-actions-v18 .header-cta-v18 { padding-left: 13px; padding-right: 13px; }
}
@media (max-width: 560px) {
    .top-banner-v18 { display: none; }
    .header-shell-v18 { min-height: 62px; padding-left: 14px; padding-right: 14px; }
    .brand-v18 { min-width: 0; }
    .brand-v18 .logo-text,
    .nmc-header-v18 .logo-text { font-size: 1.55rem !important; }
    .header-actions-v18 { display: none; }
    .header-shell-v18 { grid-template-columns: 1fr auto; }
    .nmc-menu-v18 { top: 74px; max-height: calc(100dvh - 138px); }
}

/* v1.13 SEO + Conversión */
.center-hero-conversion {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) 390px;
    gap: 28px;
    align-items: stretch;
    margin-bottom: 34px;
}
.center-hero-copy {
    background: linear-gradient(135deg, #111827, #1e293b 52%, #7f1d1d);
    color: #fff;
    border-radius: 34px;
    padding: clamp(28px, 5vw, 54px);
    box-shadow: 0 24px 50px -24px rgba(15,23,42,.55);
}
.center-hero-copy h1 {
    font-size: clamp(2.1rem, 5vw, 4rem);
    line-height: .98;
    letter-spacing: -.06em;
    font-weight: 950;
    margin: 0 0 16px;
}
.center-hero-copy p { color: #e5e7eb; font-size: 1.09rem; max-width: 760px; margin-bottom: 22px; }
.center-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }
.trust-strip { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 24px; }
.trust-strip span { background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18); border-radius: 999px; padding: 8px 12px; font-weight: 900; font-size: .86rem; }
.conversion-card {
    background: #fff;
    border: 1px solid #fee2e2;
    border-radius: 30px;
    padding: 26px;
    box-shadow: 0 24px 42px -26px rgba(220,38,38,.42);
    position: sticky;
    top: 18px;
    align-self: start;
}
.conversion-price { background: #fff7ed; border: 1px solid #fed7aa; border-radius: 24px; padding: 18px; text-align: center; margin-bottom: 18px; color: #9a3412; }
.conversion-price small, .conversion-price span { display: block; font-weight: 800; font-size: .8rem; }
.conversion-price strong { display: block; font-size: clamp(2rem, 5vw, 3.1rem); line-height: 1; color: #dc2626; margin: 5px 0; }
.conversion-card dl { display: grid; gap: 10px; margin: 0 0 18px; }
.conversion-card dl div { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px solid #f1f5f9; padding-bottom: 9px; }
.conversion-card dt { color: #64748b; font-weight: 900; }
.conversion-card dd { color: #0f172a; font-weight: 950; text-align: right; }
.conversion-primary { display: flex; justify-content: center; align-items: center; width: 100%; background: var(--red); color: #fff; border-radius: 999px; padding: 14px 16px; font-weight: 950; box-shadow: var(--shadow-red); }
.detail-panel { background: #fff; border: 1px solid #e5e7eb; border-radius: 28px; padding: 28px; box-shadow: var(--shadow); }
.detail-panel h2 { font-size: 1.6rem; line-height: 1.1; letter-spacing: -.03em; margin-bottom: 10px; color: var(--ink); }
.panel-actions { margin-top: 18px; }
.hero-btn.secondary.dark { background: #111827; color: #fff; border-color: #111827; }
.feature-grid, .conversion-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.feature-card { background: #fff; border: 1px solid #e5e7eb; border-radius: 26px; padding: 24px; box-shadow: var(--shadow); }
.feature-card span { font-size: 2rem; display: inline-block; margin-bottom: 10px; }
.feature-card h3 { font-size: 1.18rem; font-weight: 950; color: var(--ink); margin-bottom: 8px; }
.feature-card p { color: #64748b; }
.center-cta-band { display: flex; align-items: center; justify-content: space-between; gap: 22px; background: linear-gradient(135deg, #fee2e2, #fff); border: 1px solid #fecaca; border-radius: 34px; padding: 30px; box-shadow: var(--shadow); }
.center-cta-band h2 { font-size: clamp(1.5rem,3vw,2.35rem); font-weight: 950; letter-spacing: -.04em; margin-bottom: 8px; color: var(--ink); }
.center-cta-band p { color: #64748b; max-width: 720px; }
.center-cta-actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-end; }
.seo-copy-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,280px),1fr)); gap: 18px; }
@media (max-width: 980px) {
    .center-hero-conversion { grid-template-columns: 1fr; }
    .conversion-card { position: static; }
    .feature-grid, .conversion-feature-grid { grid-template-columns: 1fr; }
    .center-cta-band { align-items: stretch; flex-direction: column; }
    .center-cta-actions { justify-content: stretch; }
}
@media (max-width: 640px) {
    .center-hero-copy, .conversion-card, .detail-panel, .center-cta-band { border-radius: 24px; padding: 22px; }
    .center-hero-actions, .center-cta-actions { display: grid; grid-template-columns: 1fr; }
    .center-hero-actions .hero-btn, .center-cta-actions .hero-btn { width: 100%; }
    .conversion-card dl div { display: block; }
    .conversion-card dd { text-align: left; margin-top: 2px; }
}


/* v1.14 · captación y usabilidad */
.lead-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
    gap: 26px;
    align-items: stretch;
    margin-top: 28px;
}
.lead-hero-copy {
    background: radial-gradient(circle at 0 0, rgba(220,38,38,.24), transparent 34%), linear-gradient(135deg, #111827, #0f172a);
    color: #fff;
    border-radius: var(--radius-xl);
    padding: clamp(30px, 5vw, 58px);
    box-shadow: var(--shadow);
}
.lead-hero-copy h1 { font-size: clamp(2.1rem, 5vw, 4rem); line-height: 1; letter-spacing: -.055em; margin-bottom: 18px; font-weight: 950; }
.lead-hero-copy p { color: #cbd5e1; font-size: 1.1rem; max-width: 720px; }
.lead-trust-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.lead-trust-row span { background: rgba(255,255,255,.10); border: 1px solid rgba(255,255,255,.16); border-radius: 999px; padding: 8px 12px; font-weight: 900; font-size: .88rem; }
.lead-form-card, .quick-lead-panel {
    background: #fff;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 30px;
    padding: 24px;
    box-shadow: 0 28px 50px -30px rgba(15,23,42,.55);
}
.lead-form-card { display: grid; gap: 13px; }
.lead-form-card label { display: grid; gap: 6px; color: #334155; font-weight: 900; font-size: .88rem; }
.lead-form-card input, .lead-form-card select, .lead-form-card textarea,
.quick-lead-form input, .quick-lead-form textarea {
    width: 100%; border: 1px solid #dbe3ef; background: #f8fafc; border-radius: 16px; padding: 13px 14px; color: #0f172a;
}
.lead-form-card textarea, .quick-lead-form textarea { resize: vertical; min-height: 104px; }
.lead-form-card .full { grid-column: 1 / -1; }
.form-submit { width: 100%; }
.form-legal { color: #64748b; font-size: .82rem; line-height: 1.4; }
.quick-choice-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.quick-choice { background: white; border: 1px solid rgba(15,23,42,.08); border-radius: 24px; padding: 22px; box-shadow: var(--shadow); }
.quick-choice strong { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border-radius: 14px; background: var(--red); color: white; margin-bottom: 12px; }
.quick-choice h2 { font-size: 1.2rem; letter-spacing: -.025em; margin-bottom: 6px; }
.quick-choice p { color: #64748b; }
.quick-lead-panel { display: grid; grid-template-columns: .9fr 1.1fr; gap: 22px; align-items: center; background: linear-gradient(135deg, #fff, #fff7f7); }
.quick-lead-panel h2 { font-size: clamp(1.55rem, 3vw, 2.35rem); line-height: 1.05; letter-spacing: -.045em; margin-bottom: 10px; }
.quick-lead-panel p { color: #64748b; }
.quick-lead-form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.quick-lead-form textarea, .quick-lead-form button { grid-column: 1 / -1; }
.availability-page .page-hero.compact { margin-top: 28px; }
.header-actions-v18 .header-cta-v18 { box-shadow: 0 14px 22px -14px rgba(220,38,38,.55); }
@media (max-width: 880px) {
    .lead-hero-grid, .quick-lead-panel { grid-template-columns: 1fr; }
    .quick-choice-grid { grid-template-columns: 1fr; }
    .quick-lead-form { grid-template-columns: 1fr; }
    .lead-form-card, .quick-lead-panel { border-radius: 24px; padding: 18px; }
    .lead-hero-copy { border-radius: 28px; }
}

/* v1.15 - reservas siempre mediante portal del centro */
.portal-notice {
    margin: 12px 0 14px;
    padding: 10px 12px;
    border-radius: 14px;
    background: #ecfdf5;
    border: 1px solid #bbf7d0;
    color: #166534;
    font-size: .88rem;
    line-height: 1.35;
    font-weight: 800;
}
.portal-notice.warning {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #9a3412;
}
.btn-card.reserva[href^="http"] { font-weight: 950; }
.center-cta-actions { align-items: center; }

/* v1.16 identidad social + confianza pública */
.nmc-public-trust-strip {
    background: #fff;
    border-bottom: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 6px 18px rgba(15, 23, 42, .035);
}
.nmc-public-trust-inner {
    min-height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    color: #334155;
    font-size: .88rem;
    font-weight: 800;
}
.nmc-public-trust-inner span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}
.nmc-public-trust-inner span::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: #22c55e;
    box-shadow: 0 0 0 4px rgba(34,197,94,.12);
}
.footer-socials {
    margin-top: 20px;
}
.footer-socials > strong {
    display: block;
    color: #fff;
    font-size: .75rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.footer-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}
.footer-social-links a.footer-social-link {
    position: relative;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.14);
    color: #f8fafc;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
    overflow: hidden;
    text-decoration: none;
}
.footer-social-links a.footer-social-link:hover,
.footer-social-links a.footer-social-link:focus-visible {
    color: #fff;
    background: #dc2626;
    border-color: #dc2626;
    transform: translateY(-2px);
    outline: none;
}
.footer-social-links a.footer-social-instagram:hover { background: linear-gradient(135deg, #f97316, #dc2626 45%, #7c3aed); border-color: transparent; }
.footer-social-links a.footer-social-facebook:hover { background: #1877f2; border-color: #1877f2; }
.footer-social-links a.footer-social-linkedin:hover { background: #0a66c2; border-color: #0a66c2; }
.footer-social-links a.footer-social-tiktok:hover { background: #111827; border-color: #38bdf8; }
.footer-social-links a.footer-social-youtube:hover { background: #ff0033; border-color: #ff0033; }
.footer-social-links a.footer-social-link svg {
    width: 22px;
    height: 22px;
    display: block;
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 1.8;
}
.footer-social-links a.footer-social-instagram svg,
.footer-social-links a.footer-social-youtube svg {
    fill: none;
}
.footer-social-links a.footer-social-youtube svg path {
    fill: currentColor;
    stroke: none;
}
.footer-social-links a.footer-social-link span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
}
@media (max-width: 720px) {
    .nmc-public-trust-strip { display: none; }
    .footer-social-links a.footer-social-link { width: 46px; height: 46px; }
}

/* v1.17 public conversion polish */
.nmc-public .nmc-public-trust-strip{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid rgba(15,23,42,.08);box-shadow:0 10px 24px -24px rgba(15,23,42,.45)}
.nmc-public .nmc-public-trust-inner{display:flex;gap:10px;justify-content:center;align-items:center;flex-wrap:wrap;padding:8px 16px;font-weight:850;color:#334155;font-size:.88rem}.nmc-public .nmc-public-trust-inner span{display:inline-flex;align-items:center;gap:6px}.nmc-public .nmc-public-trust-inner span:before{content:"✓";color:#16a34a;font-weight:950}.nmc-public .header-cta-v18{box-shadow:0 12px 24px -18px rgba(220,38,38,.7)}
.nmc-public .center-hero-conversion{align-items:stretch}.nmc-public .conversion-card{border:1px solid rgba(220,38,38,.18);box-shadow:0 28px 55px -38px rgba(220,38,38,.6)}.nmc-public .conversion-primary{transition:transform .16s ease,box-shadow .16s ease}.nmc-public .conversion-primary:hover{transform:translateY(-1px);box-shadow:0 18px 30px -20px rgba(220,38,38,.8)}
.nmc-public .quick-lead-panel{background:linear-gradient(135deg,#fff,#fff7f7);border:1px solid #fecaca}.nmc-public .quick-lead-form input,.nmc-public .quick-lead-form textarea,.nmc-public .lead-form-card input,.nmc-public .lead-form-card select,.nmc-public .lead-form-card textarea{font-size:16px}.nmc-public .footer-social-link svg{stroke:currentColor;fill:none;stroke-width:1.9;width:22px;height:22px}.nmc-public .footer-social-link.footer-social-facebook svg,.nmc-public .footer-social-link.footer-social-linkedin svg,.nmc-public .footer-social-link.footer-social-tiktok svg,.nmc-public .footer-social-link.footer-social-x svg,.nmc-public .footer-social-link.footer-social-twitter svg{fill:currentColor;stroke:none}.nmc-public .footer-social-link{min-width:44px;min-height:44px;justify-content:center}.nmc-public .footer-social-link span{font-weight:900}.nmc-public .footer-social-instagram:hover{color:#c13584}.nmc-public .footer-social-facebook:hover{color:#1877f2}.nmc-public .footer-social-tiktok:hover{color:#111827}.nmc-public .footer-social-linkedin:hover{color:#0a66c2}
.nmc-public .mobile-cta-v17{box-shadow:0 -12px 26px -22px rgba(15,23,42,.7)}
@media (max-width: 760px){.nmc-public .top-banner-inner-v18 span:nth-child(n+2){display:none}.nmc-public .nmc-public-trust-inner{justify-content:flex-start;overflow:auto;flex-wrap:nowrap}.nmc-public .nmc-public-trust-inner span{white-space:nowrap}.nmc-public .header-shell-v18{min-height:58px}.nmc-public .brand-v18 .logo-text{font-size:1.28rem}.nmc-public .center-hero-actions,.nmc-public .hero-actions,.nmc-public .center-cta-actions{display:grid;grid-template-columns:1fr;gap:10px}.nmc-public .hero-btn,.nmc-public .conversion-primary,.nmc-public .form-submit{width:100%;justify-content:center;text-align:center;min-height:48px}.nmc-public .quick-lead-form{grid-template-columns:1fr}.nmc-public .quick-lead-panel{padding:18px;border-radius:20px}.nmc-public .footer-social-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.nmc-public .footer-social-link{justify-content:flex-start}}


/* v1.21 - panel, portales visibles y reserva por portal */
.center-portal-mini { margin: 10px 0 0; border-radius: 14px; padding: 8px 10px; font-size: .86rem; font-weight: 800; }
.center-portal-mini.ok { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }
.center-portal-mini.warn { background: #fff7ed; color: #9a3412; border: 1px solid #fed7aa; }
.portal-reservation-section { padding-top: 18px; }
.portal-reservation-card { border: 1px solid #e5e7eb; border-radius: 28px; background: #fff; box-shadow: 0 20px 60px rgba(15, 23, 42, .08); padding: clamp(22px, 4vw, 34px); display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(260px, .7fr); gap: 24px; align-items: center; }
.visible-portal-card { border-color: rgba(34, 197, 94, .32); background: linear-gradient(135deg, #ffffff 0%, #f0fdf4 100%); }
.portal-missing-card { border-color: rgba(245, 158, 11, .36); background: linear-gradient(135deg, #ffffff 0%, #fffbeb 100%); }
.portal-reservation-card h2 { margin: 8px 0 10px; font-size: clamp(1.45rem, 3vw, 2.1rem); color: #0f172a; letter-spacing: -.04em; }
.portal-reservation-card p { color: #475569; line-height: 1.65; margin: 0 0 14px; }
.portal-check-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.portal-check-list li { color: #0f172a; font-weight: 700; }
.portal-check-list li::before { content: "✓"; display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 999px; background: #dcfce7; color: #15803d; margin-right: 8px; font-weight: 900; }
.portal-reservation-actions { display: grid; gap: 12px; }
.portal-main-cta { justify-content: center; text-align: center; }
.portals-public-page .portal-center-list { display: grid; gap: 12px; }
.portal-center-row { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(180px, .7fr) auto; gap: 14px; align-items: center; border: 1px solid #e5e7eb; border-radius: 18px; padding: 14px; background: #fff; }
.portal-center-row strong { display: block; color: #0f172a; font-size: 1.02rem; }
.portal-center-row small { display: block; color: #64748b; margin-top: 3px; }
.portal-status { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 10px; font-size: .78rem; font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
.portal-status.ok { background: #dcfce7; color: #166534; }
.portal-status.warn { background: #fef3c7; color: #92400e; }
.public-portal-card .hero-btn { width: fit-content; }
@media (max-width: 780px) {
  .portal-reservation-card { grid-template-columns: 1fr; border-radius: 22px; }
  .portal-center-row { grid-template-columns: 1fr; }
  .portal-reservation-actions .hero-btn { width: 100%; justify-content: center; }
}

/* v1.22 - pagina como funciona y acciones de producto */
.how-it-works-page .how-hero {
    background: radial-gradient(circle at 14% 0%, rgba(220,38,38,.12), transparent 32%), linear-gradient(135deg, #fff, #f8fafc);
    border: 1px solid #e5e7eb;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}
.process-grid-v122 {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.process-card-v122 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
}
.process-card-v122 strong {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    display: inline-grid;
    place-items: center;
    background: #dc2626;
    color: #fff;
    font-weight: 950;
    box-shadow: 0 14px 28px -18px rgba(220, 38, 38, .9);
}
.process-card-v122 h2 {
    margin: 14px 0 8px;
    color: #0f172a;
    letter-spacing: -.035em;
    font-size: 1.22rem;
}
.process-card-v122 p {
    margin: 0;
    color: #475569;
    line-height: 1.6;
}
.portal-explain-v122 {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
    gap: 24px;
    align-items: center;
    background: #111827;
    color: #fff;
    border-radius: 30px;
    padding: clamp(24px, 5vw, 44px);
    box-shadow: 0 30px 80px rgba(15, 23, 42, .18);
}
.portal-explain-v122 h2 { color: #fff; margin: 8px 0 10px; font-size: clamp(1.5rem, 3vw, 2.25rem); letter-spacing: -.04em; }
.portal-explain-v122 p { color: #cbd5e1; margin: 0; line-height: 1.7; }
.portal-explain-v122 .portal-check-list li { color: #f8fafc; }
@media (max-width: 980px) {
    .process-grid-v122 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .portal-explain-v122 { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
    .process-grid-v122 { grid-template-columns: 1fr; }
    .process-card-v122 { border-radius: 20px; padding: 18px; }
}

/* v1.23 SEO Factory */
.seo-factory-page .seo-factory-hero {
    position: relative;
    overflow: hidden;
}
.seo-factory-page .seo-factory-hero::after {
    content: "";
    position: absolute;
    right: -80px;
    top: -80px;
    width: 220px;
    height: 220px;
    border-radius: 999px;
    background: rgba(220, 38, 38, .08);
    pointer-events: none;
}
.seo-factory-page .detail-panel {
    min-height: 220px;
}


/* v1.24 - Blog publico y CMS legacy */
.cms-page-v124 { padding: clamp(28px, 5vw, 72px) 0; }
.cms-content-v124 {
    max-width: 980px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: clamp(22px, 5vw, 48px);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .07);
    color: #111827;
}
.cms-content-v124 h1 { font-size: clamp(2rem, 5vw, 3.4rem); line-height: 1.05; letter-spacing: -.055em; margin: 0 0 18px; }
.cms-content-v124 h2 { font-size: clamp(1.35rem, 3vw, 2rem); letter-spacing: -.035em; margin: 28px 0 10px; }
.cms-content-v124 h3 { font-size: 1.18rem; margin: 20px 0 8px; }
.cms-content-v124 p, .cms-content-v124 li { color: #334155; line-height: 1.75; font-size: 1.02rem; }
.cms-content-v124 a { color: #dc2626; font-weight: 800; }
.blog-hero-v124 {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(260px, .55fr);
    gap: clamp(18px, 4vw, 36px);
    align-items: stretch;
    margin-top: 32px;
    padding: clamp(28px, 6vw, 54px);
    border-radius: 34px;
    background: radial-gradient(circle at 12% 0%, rgba(220,38,38,.14), transparent 35%), linear-gradient(135deg, #111827, #172033 68%, #2b1119);
    color: #fff;
    box-shadow: 0 34px 90px rgba(15, 23, 42, .18);
}
.blog-hero-v124.compact { grid-template-columns: 1fr; }
.blog-hero-copy-v124 h1 { color: #fff; font-size: clamp(2.2rem, 6vw, 4.2rem); line-height: .98; letter-spacing: -.07em; margin: 12px 0 18px; }
.blog-hero-copy-v124 p { color: #dbeafe; max-width: 820px; font-size: 1.06rem; line-height: 1.7; }
.blog-hero-panel-v124 {
    display: grid;
    align-content: center;
    gap: 10px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 24px;
    padding: 20px;
}
.blog-hero-panel-v124 strong { color: #fff; text-transform: uppercase; letter-spacing: .08em; font-size: .8rem; }
.blog-hero-panel-v124 a { color: #fff; text-decoration: none; background: rgba(255,255,255,.1); border-radius: 14px; padding: 10px 12px; font-weight: 850; }
.blog-grid-v124 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.blog-card-v124 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 20px 55px rgba(15, 23, 42, .065);
    display: flex;
    flex-direction: column;
    min-height: 280px;
}
.blog-card-top-v124, .blog-card-bottom-v124 { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.blog-card-top-v124 span { background: #fee2e2; color: #991b1b; border-radius: 999px; padding: 5px 10px; font-size: .78rem; font-weight: 950; }
.blog-card-top-v124 time, .blog-card-bottom-v124 span { color: #64748b; font-size: .86rem; }
.blog-card-v124 h2 { font-size: 1.35rem; line-height: 1.14; letter-spacing: -.04em; margin: 18px 0 10px; }
.blog-card-v124 h2 a { color: #0f172a; text-decoration: none; }
.blog-card-v124 p { color: #475569; line-height: 1.65; margin: 0 0 20px; }
.blog-card-bottom-v124 { margin-top: auto; padding-top: 16px; border-top: 1px solid #f1f5f9; }
.blog-card-bottom-v124 a { color: #dc2626; font-weight: 900; text-decoration: none; }
.blog-post-shell-v124 { padding-top: 28px; }
.blog-post-header-v124 {
    max-width: 940px;
    margin: 0 auto 26px;
    text-align: center;
    padding: clamp(26px, 6vw, 58px);
    border-radius: 34px;
    background: linear-gradient(135deg, #fff, #f8fafc);
    border: 1px solid #e5e7eb;
    box-shadow: 0 26px 75px rgba(15,23,42,.075);
}
.blog-post-header-v124 h1 { font-size: clamp(2rem, 5vw, 4rem); line-height: 1; letter-spacing: -.07em; margin: 12px 0 16px; }
.blog-post-header-v124 p { color: #475569; font-size: 1.08rem; line-height: 1.7; max-width: 780px; margin: 0 auto; }
.blog-meta-v124 { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 18px; color: #64748b; font-weight: 700; }
.blog-post-grid-v124 { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 28px; align-items: start; }
.blog-content-v124 {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: clamp(24px, 5vw, 48px);
    box-shadow: 0 24px 70px rgba(15,23,42,.065);
}
.blog-content-v124 h2 { font-size: clamp(1.45rem, 3vw, 2.15rem); letter-spacing: -.04em; margin: 34px 0 12px; }
.blog-content-v124 h2:first-child { margin-top: 0; }
.blog-content-v124 p, .blog-content-v124 li { color: #334155; line-height: 1.78; font-size: 1.04rem; }
.blog-sidebar-v124 { position: sticky; top: 110px; display: grid; gap: 16px; }
.blog-side-card-v124 { background: #fff; border: 1px solid #e5e7eb; border-radius: 24px; padding: 20px; box-shadow: 0 20px 55px rgba(15,23,42,.06); }
.blog-side-card-v124.strong { background: #111827; color: #fff; }
.blog-side-card-v124.strong h2 { color: #fff; }
.blog-side-card-v124.strong p { color: #cbd5e1; }
.blog-side-card-v124 h2 { font-size: 1.18rem; margin: 0 0 10px; }
.blog-side-card-v124 a:not(.hero-btn) { display: block; color: #0f172a; text-decoration: none; font-weight: 850; padding: 9px 0; border-bottom: 1px solid #f1f5f9; }
.priority-landing-v124 .detail-panel { min-height: 240px; }
@media (max-width: 980px) {
    .blog-hero-v124, .blog-post-grid-v124 { grid-template-columns: 1fr; }
    .blog-grid-v124 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .blog-sidebar-v124 { position: static; }
}
@media (max-width: 640px) {
    .blog-grid-v124 { grid-template-columns: 1fr; }
    .blog-hero-v124 { border-radius: 24px; padding: 24px; }
    .blog-post-header-v124, .blog-content-v124, .cms-content-v124 { border-radius: 22px; }
}

/* v1.25: más ancho útil en desktop + menú público editable */
@media (min-width: 1280px) {
    .wrap,
    .footer-container {
        max-width: var(--nmc-wrap-max, 1360px);
    }
    .blog-post-shell-v124,
    .blog-hero-v124,
    .lead-hero-grid,
    .center-detail-hero,
    .improved-detail-hero,
    .page-hero.compact,
    .final-cta,
    .portals-public-page .wrap {
        max-width: var(--nmc-wrap-max, 1360px);
    }
    .centros-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 350px), 1fr));
    }
    .blog-grid-v124 {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr));
    }
}
@media (min-width: 1520px) {
    .wrap,
    .footer-container {
        max-width: var(--nmc-wide-max, 1440px);
    }
}
.nmc-menu-editable .nav-menu a strong {
    display: block;
    font-weight: 950;
}
.nmc-menu-editable .nav-menu a small {
    display: block;
}
.nmc-menu-editable .nav-menu a.nav-highlight,
.nmc-menu-editable > a.nav-highlight {
    background: #dc2626 !important;
    color: #fff !important;
}
.nmc-menu-editable .nav-menu a.nav-highlight small {
    color: rgba(255,255,255,.85) !important;
}


/* v1.26: ajustes visuales editables desde FacturaScripts */
.nmc-public .top-banner-inner-v18 span:empty,
.nmc-public .nmc-public-trust-inner span:empty { display: none; }
.nmc-public .footer-text { max-width: 34rem; }


/* v1.27 - Reputación y confianza */
.reviews-page .reviews-hero { background: linear-gradient(135deg, #fff, #fff7f7); }
.reputation-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.reputation-metrics article { background: #fff; border: 1px solid var(--line); border-radius: 24px; padding: 20px; box-shadow: var(--shadow); }
.reputation-metrics strong { display: block; font-size: 1.15rem; font-weight: 950; color: var(--ink); letter-spacing: -.02em; margin-bottom: 5px; }
.reputation-metrics span { display: block; color: var(--muted); font-weight: 700; font-size: .92rem; }
.review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.review-card { background: white; border: 1px solid #f0f0f0; border-radius: 28px; padding: 24px; box-shadow: 0 20px 30px -20px rgba(2, 6, 23, .22); min-height: 100%; }
.review-card h2 { font-size: 1.2rem; font-weight: 950; letter-spacing: -.025em; margin: 8px 0 10px; color: var(--ink); }
.review-card p { color: #475569; margin-bottom: 12px; }
.review-card small { color: var(--muted); font-weight: 850; }
.review-stars { color: #f59e0b; letter-spacing: .08em; font-size: 1.1rem; font-weight: 900; }
.review-empty { border-style: dashed; background: #fffafa; }
.reputation-cta { margin-top: 40px; }
@media (max-width: 900px) {
    .reputation-metrics, .review-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
    .reputation-metrics, .review-grid { grid-template-columns: 1fr; }
}

/* v1.28 - Motor de crecimiento: recomendador de tamaño */
.size-recommender-page-v128 .size-hero-v128 { background: linear-gradient(135deg, #fff7f7, #ffffff 55%, #f8fafc); }
.recommender-grid-v128 { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); gap: 24px; align-items: start; }
.size-recommender-form-v128,
.size-result-card-v128 { background: #fff; border: 1px solid var(--line, #e5e7eb); border-radius: 28px; padding: clamp(20px, 4vw, 34px); box-shadow: 0 24px 70px rgba(15,23,42,.08); }
.size-recommender-form-v128 { display: grid; gap: 18px; }
.form-block-v128 { display: grid; gap: 12px; border: 1px solid #f1f5f9; border-radius: 22px; padding: 18px; background: #fcfcfd; }
.form-block-v128 h2 { margin: 0 0 6px; font-size: 1.25rem; letter-spacing: -.025em; }
.form-block-v128 label { display: flex; align-items: center; gap: 10px; font-weight: 850; color: #0f172a; }
.form-block-v128 input[type="checkbox"] { width: 18px; height: 18px; accent-color: #dc2626; }
.two-cols-v128 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.two-cols-v128 label { display: grid; align-items: start; gap: 7px; }
.size-recommender-form-v128 input:not([type="checkbox"]),
.size-recommender-form-v128 select,
.size-recommender-form-v128 textarea { width: 100%; border: 1px solid #dbe1ea; border-radius: 16px; padding: 12px 14px; font: inherit; background: #fff; }
.size-result-card-v128 { position: sticky; top: 110px; }
.size-result-card-v128 h2 { font-size: clamp(1.55rem, 3vw, 2.3rem); line-height: 1.05; letter-spacing: -.05em; margin: 10px 0; }
.size-result-card-v128 p, .size-result-card-v128 li { color: #475569; line-height: 1.6; }
.size-meter-v128 { width: 100%; height: 12px; border-radius: 999px; background: #fee2e2; overflow: hidden; margin: 18px 0; }
.size-meter-v128 span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ef4444, #b91c1c); transition: width .2s ease; }
.size-result-card-v128 .disabled { pointer-events: none; opacity: .45; }
.opportunity-strip-v128 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.opportunity-strip-v128 article { background: #111827; color: #fff; border-radius: 24px; padding: 22px; box-shadow: 0 24px 70px rgba(15,23,42,.16); }
.opportunity-strip-v128 strong { display: block; font-size: 1.08rem; margin-bottom: 5px; }
.opportunity-strip-v128 span { color: #cbd5e1; }
@media (max-width: 980px) { .recommender-grid-v128 { grid-template-columns: 1fr; } .size-result-card-v128 { position: static; } }
@media (max-width: 640px) { .two-cols-v128, .opportunity-strip-v128 { grid-template-columns: 1fr; } .form-block-v128 { padding: 14px; } }

/* v1.28.1: menu publico movil colapsable y estable, inspirado en el fix de Faciltel. */
@media (max-width: 940px) {
    .nmc-public .nmc-menu-v18 .nav-group:not([open]) .nav-menu,
    .nmc-public .nmc-menu-v18 .nav-group:not([open]) .nav-menu-wide {
        display: none !important;
    }
    .nmc-public .nmc-menu-v18 .nav-group[open] .nav-menu,
    .nmc-public .nmc-menu-v18 .nav-group[open] .nav-menu-wide {
        display: grid !important;
    }
    .nmc-public .nmc-menu-v18 summary {
        user-select: none;
    }
    .nmc-public .nmc-menu-v18[data-open="true"] {
        overscroll-behavior: contain;
    }
    .nmc-public .mobile-menu-backdrop {
        cursor: pointer;
    }
}


/* v1.29.0 - Home premium NoMasCaos: menos duplicidad, más confianza y mejor jerarquía visual */
:root {
    --nmc-premium-ink: #0b1220;
    --nmc-premium-cream: #fff7ed;
    --nmc-premium-gold: #f59e0b;
    --nmc-premium-line: rgba(15, 23, 42, .10);
}
.premium-home-v129 {
    position: relative;
    overflow: hidden;
}
.premium-home-v129::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 12% 8%, rgba(220,38,38,.10), transparent 32rem),
        radial-gradient(circle at 88% 16%, rgba(245,158,11,.12), transparent 28rem),
        linear-gradient(180deg, #fff, #f8fafc 35%, #fff);
    z-index: -1;
}
.premium-hero-v129 {
    margin-top: 28px;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr);
    gap: clamp(22px, 4vw, 42px);
    align-items: stretch;
    padding-top: clamp(26px, 4vw, 46px);
    padding-bottom: clamp(26px, 4vw, 46px);
}
.premium-hero-copy,
.premium-hero-panel,
.premium-faq-cta-v129 {
    border: 1px solid rgba(255,255,255,.16);
    background: linear-gradient(135deg, rgba(15,23,42,.98), rgba(30,41,59,.96));
    color: white;
    border-radius: clamp(28px, 4vw, 44px);
    box-shadow: 0 34px 90px rgba(15,23,42,.22);
}
.premium-hero-copy {
    padding: clamp(30px, 6vw, 72px);
    position: relative;
    overflow: hidden;
}
.premium-hero-copy::after {
    content: "";
    position: absolute;
    right: -8rem;
    top: -8rem;
    width: 22rem;
    height: 22rem;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(220,38,38,.38), transparent 70%);
}
.premium-kicker {
    display: inline-flex;
    margin-bottom: 18px;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(255,255,255,.08);
    color: #fed7aa;
    font-weight: 950;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .12em;
}
.premium-hero-v129 h1 {
    position: relative;
    z-index: 1;
    max-width: 880px;
    margin: 0 0 20px;
    font-size: clamp(2.65rem, 6vw, 5.65rem);
    line-height: .94;
    letter-spacing: -.075em;
    font-weight: 950;
}
.premium-lead {
    position: relative;
    z-index: 1;
    max-width: 760px;
    color: #cbd5e1;
    font-size: clamp(1.05rem, 1.8vw, 1.25rem);
    line-height: 1.65;
    margin-bottom: 28px;
}
.premium-hero-actions,
.premium-final-actions {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}
.premium-primary {
    background: linear-gradient(135deg, #ef4444, #b91c1c) !important;
    color: #fff !important;
    box-shadow: 0 18px 42px rgba(220,38,38,.36) !important;
}
.premium-secondary {
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.22) !important;
}
.premium-link {
    color: #fed7aa;
    font-weight: 950;
    padding: 12px 4px;
}
.premium-proof-row {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 34px;
}
.premium-proof-row span {
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    color: #e2e8f0;
    font-weight: 900;
    font-size: .9rem;
}
.premium-hero-panel {
    padding: clamp(22px, 4vw, 34px);
    display: grid;
    gap: 16px;
    align-content: center;
    background:
        linear-gradient(135deg, rgba(255,255,255,.95), rgba(255,247,237,.92));
    color: var(--nmc-premium-ink);
    border-color: rgba(15,23,42,.08);
}
.premium-panel-card.main {
    padding: 28px;
    border-radius: 30px;
    background: var(--nmc-premium-ink);
    color: white;
    box-shadow: 0 20px 60px rgba(15,23,42,.20);
}
.premium-panel-card.main span,
.premium-panel-card.main small {
    display: block;
    color: #cbd5e1;
    font-weight: 850;
}
.premium-panel-card.main strong {
    display: block;
    margin: 8px 0;
    color: #fbbf24;
    font-size: clamp(2.4rem, 4vw, 3.8rem);
    line-height: .95;
    letter-spacing: -.06em;
}
.premium-panel-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
.premium-panel-grid div {
    padding: 18px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid var(--nmc-premium-line);
}
.premium-panel-grid strong {
    display: block;
    font-size: 1.9rem;
    letter-spacing: -.05em;
    color: #b91c1c;
    line-height: 1;
}
.premium-panel-grid span {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-weight: 800;
    font-size: .86rem;
}
.premium-panel-cta {
    display: flex;
    justify-content: center;
    padding: 15px 18px;
    border-radius: 999px;
    background: #25D366;
    color: #fff;
    font-weight: 950;
    box-shadow: 0 18px 38px rgba(37,211,102,.25);
}
.premium-section {
    margin-top: clamp(52px, 7vw, 92px);
}
.premium-section-head {
    max-width: 820px;
    margin: 0 auto 28px;
    text-align: center;
}
.premium-section-head.left { margin-left: 0; text-align: left; }
.premium-section-head h2,
.premium-faq-cta-v129 h2 {
    margin: 0 0 12px;
    color: var(--nmc-premium-ink);
    font-size: clamp(2rem, 4.5vw, 3.35rem);
    line-height: 1.02;
    letter-spacing: -.06em;
    font-weight: 950;
}
.premium-section-head p,
.premium-faq-cta-v129 p {
    color: #64748b;
    font-size: 1.05rem;
    line-height: 1.7;
}
.premium-center-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.premium-center-card,
.premium-mini-grid article {
    background: rgba(255,255,255,.92);
    border: 1px solid var(--nmc-premium-line);
    border-radius: 30px;
    padding: 24px;
    box-shadow: 0 24px 70px rgba(15,23,42,.07);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.premium-center-card:hover,
.premium-mini-grid article:hover {
    transform: translateY(-4px);
    border-color: rgba(220,38,38,.22);
    box-shadow: 0 32px 80px rgba(15,23,42,.11);
}
.premium-center-card h3,
.premium-mini-grid h3 {
    margin: 12px 0 8px;
    font-size: 1.28rem;
    font-weight: 950;
    letter-spacing: -.035em;
    color: var(--nmc-premium-ink);
}
.premium-center-card p,
.premium-mini-grid p { color: #64748b; line-height: 1.62; }
.premium-center-card a {
    display: inline-flex;
    margin-top: 18px;
    color: #b91c1c;
    font-weight: 950;
}
.premium-badge {
    display: inline-flex;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.premium-badge.open { background: #dcfce7; color: #166534; }
.premium-badge.mixed { background: #dbeafe; color: #1e40af; }
.premium-badge.upcoming { background: #fef3c7; color: #92400e; }
.premium-split-v129 {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(22px, 4vw, 42px);
    align-items: center;
    padding: clamp(28px, 5vw, 50px);
    border-radius: 42px;
    background: linear-gradient(135deg, #fff, #fff7ed);
    border: 1px solid var(--nmc-premium-line);
    box-shadow: 0 24px 70px rgba(15,23,42,.07);
}
.premium-mini-grid {
    display: grid;
    gap: 16px;
}
.premium-mini-grid strong {
    color: #dc2626;
    font-size: .88rem;
    letter-spacing: .16em;
}
.premium-cases-grid .case-card,
.premium-process-grid .process-card {
    box-shadow: 0 20px 60px rgba(15,23,42,.06);
    border-radius: 28px;
}
.premium-process-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.premium-faq-cta-v129 {
    margin-top: clamp(56px, 8vw, 96px);
    padding: clamp(30px, 5vw, 54px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
}
.premium-faq-cta-v129 h2 { color: white; }
.premium-faq-cta-v129 p { color: #cbd5e1; max-width: 720px; }
.premium-faq-cta-v129 .eyebrow {
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.16);
    color: #fed7aa;
}
@media (max-width: 980px) {
    .premium-hero-v129,
    .premium-split-v129,
    .premium-faq-cta-v129 { grid-template-columns: 1fr; }
    .premium-center-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .premium-final-actions { justify-content: flex-start; }
}
@media (max-width: 680px) {
    .premium-hero-v129 { margin-top: 8px; padding-left: 14px; padding-right: 14px; }
    .premium-hero-copy,
    .premium-hero-panel,
    .premium-split-v129,
    .premium-faq-cta-v129 { border-radius: 28px; }
    .premium-hero-v129 h1 { font-size: clamp(2.35rem, 12vw, 3.25rem); }
    .premium-center-grid,
    .premium-panel-grid,
    .premium-process-grid { grid-template-columns: 1fr; }
    .premium-hero-actions .hero-btn,
    .premium-final-actions .hero-btn,
    .premium-panel-cta { width: 100%; }
    .premium-link { width: 100%; text-align: center; }
}


/* v1.29.7 - Fix menu movil produccion: neutraliza CSS legacy, evita doble scroll y estados fantasma. */
@media (max-width: 940px) {
    html:has(body.nmc-menu-open) { overflow: hidden; }
    body.nmc-menu-open { overflow: hidden !important; touch-action: none; }
    .nmc-public .nmc-header-v18 { z-index: 900 !important; }
    .nmc-public .nmc-header-v18 .header-shell-v18 {
        position: relative;
        z-index: 930;
    }
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18,
    .nmc-public .nmc-header-v18 .main-nav.nmc-menu-v18 {
        display: none !important;
        position: fixed !important;
        left: 12px !important;
        right: 12px !important;
        top: calc(env(safe-area-inset-top, 0px) + 84px) !important;
        width: auto !important;
        max-width: none !important;
        max-height: min(72dvh, calc(100dvh - 142px)) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        overscroll-behavior: contain !important;
        -webkit-overflow-scrolling: touch;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        margin: 0 !important;
        padding: 12px !important;
        border-radius: 24px !important;
        background: #fff !important;
        border: 1px solid rgba(15,23,42,.10) !important;
        box-shadow: 0 30px 80px rgba(15,23,42,.32) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateY(-8px) !important;
        transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
    }
    .nmc-public body.nmc-menu-open .nmc-header-v18 #nmc-main-menu.nmc-menu-v18,
    body.nmc-menu-open .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18,
    body.nmc-menu-open .nmc-header-v18 #nmc-main-menu.nmc-menu-v18,
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18[data-open="true"] {
        display: flex !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }
    .nmc-public .nmc-header-v18 .mobile-menu-backdrop,
    .mobile-menu-backdrop {
        display: none !important;
        position: fixed !important;
        inset: 0 !important;
        background: rgba(15,23,42,.48) !important;
        z-index: 890 !important;
    }
    body.nmc-menu-open .mobile-menu-backdrop {
        display: block !important;
    }
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 > a,
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 summary {
        width: 100% !important;
        min-height: 52px !important;
        justify-content: space-between !important;
        white-space: normal !important;
        line-height: 1.15 !important;
        border-radius: 16px !important;
        background: #f8fafc !important;
    }
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 .nav-group { width: 100% !important; }
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 .nav-group:not([open]) .nav-menu,
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 .nav-group:not([open]) .nav-menu-wide {
        display: none !important;
    }
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 .nav-group[open] .nav-menu,
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 .nav-group[open] .nav-menu-wide {
        display: grid !important;
        position: static !important;
        min-width: 0 !important;
        width: 100% !important;
        grid-template-columns: 1fr !important;
        box-shadow: none !important;
        border: 0 !important;
        background: transparent !important;
        padding: 6px 0 8px 8px !important;
        gap: 6px !important;
    }
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18 .nav-menu a {
        min-height: 46px !important;
        background: #fff !important;
        border: 1px solid #e5e7eb !important;
        margin: 0 !important;
    }
    .nmc-public .nmc-header-v18 .mobile-nav-toggle-v18 {
        position: relative !important;
        z-index: 940 !important;
        touch-action: manipulation;
    }
}
@media (max-width: 560px) {
    .nmc-public .nmc-header-v18 #nmc-main-menu.nmc-menu-v18,
    .nmc-public .nmc-header-v18 .main-nav.nmc-menu-v18 {
        top: calc(env(safe-area-inset-top, 0px) + 72px) !important;
        left: 10px !important;
        right: 10px !important;
        max-height: min(74dvh, calc(100dvh - 126px)) !important;
        border-radius: 22px !important;
    }
}

/* v1.29.8 - formularios producción y portal de reserva práctico */
.nmc-hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.lead-form-card input[type="email"],.quick-lead-form input[type="email"],.size-recommender-form-v128 input[type="email"]{width:100%}
.form-errors{margin:18px 0;padding:16px 18px 16px 34px;background:#fff1f2;border:1px solid rgba(220,38,38,.25);border-radius:18px;color:#7f1d1d}.form-errors li{margin:6px 0}.form-result.success{border-color:rgba(22,163,74,.25)}.form-result.error{border-color:rgba(220,38,38,.25)}.lead-result-note{margin-top:14px;padding:12px 14px;border-radius:14px;background:#f8fafc;color:#334155}.lead-result-note.ok{background:#ecfdf5;color:#166534}.form-submit.is-loading,.hero-btn.is-loading{opacity:.7;pointer-events:none}.portal-bridge-page{padding-bottom:48px}.portal-bridge-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:28px;align-items:stretch;padding-top:36px;padding-bottom:36px}.portal-bridge-copy,.portal-bridge-card{background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 22px 70px rgba(15,23,42,.08);border-radius:28px;padding:34px}.portal-bridge-copy h1{font-size:clamp(2rem,4vw,4rem);line-height:1.02;margin:10px 0 16px}.portal-bridge-copy p{font-size:1.08rem;color:#475569;max-width:760px}.portal-bridge-card{background:linear-gradient(180deg,#111827,#0f172a);color:#fff}.portal-bridge-card strong{font-size:1.05rem}.portal-bridge-card ul{margin:18px 0;padding-left:22px}.portal-bridge-card li{margin:10px 0;color:#e5e7eb}.portal-bridge-card p{color:#cbd5e1}.portal-open-now{box-shadow:0 16px 38px rgba(220,38,38,.28)}
@media (max-width: 860px){.portal-bridge-hero{grid-template-columns:1fr;padding-top:18px}.portal-bridge-copy,.portal-bridge-card{padding:24px;border-radius:22px}.portal-bridge-copy .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.lead-form-card label,.size-recommender-form-v128 label{min-width:0}}


/* v1.30.9 - Home comercial NoMasCaos */
.sales-home-v1309 { background: linear-gradient(180deg, #fff 0%, #f8fafc 48%, #fff 100%); }
.sales-hero-v1309 { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.72fr); gap: 28px; align-items: stretch; margin-top: 18px; }
.sales-hero-copy-v1309 { background: radial-gradient(circle at 18% 0%, rgba(239,68,68,.28), transparent 34%), linear-gradient(135deg,#111827 0%, #0f172a 62%, #1e293b 100%); color: #fff; border-radius: 34px; padding: clamp(30px,5vw,72px); box-shadow: 0 28px 70px rgba(15,23,42,.26); }
.sales-hero-copy-v1309 h1 { max-width: 900px; font-size: clamp(42px,6.4vw,82px); line-height: .92; letter-spacing: -.055em; margin: 12px 0 18px; }
.sales-hero-copy-v1309 p { max-width: 760px; color: #dbeafe; font-size: clamp(18px,2.2vw,24px); line-height: 1.55; }
.sales-hero-copy-v1309 .eyebrow { color: #fecaca; border-color: rgba(248,113,113,.32); background: rgba(239,68,68,.16); }
.sales-actions-v1309 { display:flex; flex-wrap:wrap; gap: 12px; margin: 28px 0 18px; }
.sales-proof-v1309 { display:flex; flex-wrap:wrap; gap: 10px; margin-top: 20px; }
.sales-proof-v1309 span { border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.08); border-radius: 999px; padding: 9px 13px; color:#e2e8f0; font-weight:700; }
.sales-hero-card-v1309 { border-radius: 34px; background:#fff; border:1px solid rgba(15,23,42,.08); box-shadow: 0 22px 55px rgba(15,23,42,.12); padding: 28px; color:#0f172a; }
.sales-hero-card-v1309 .price { font-size: 56px; line-height:.95; letter-spacing:-.05em; font-weight: 950; color:#dc2626; }
.sales-hero-card-v1309 .price small { display:block; color:#64748b; font-size: 14px; letter-spacing:0; margin-top:8px; }
.sales-checklist-v1309 { list-style:none; padding:0; margin: 22px 0; display:grid; gap: 12px; }
.sales-checklist-v1309 li { display:flex; gap:10px; align-items:flex-start; padding: 12px; border-radius: 16px; background:#f8fafc; border:1px solid rgba(15,23,42,.06); }
.sales-checklist-v1309 li::before { content:'✓'; display:grid; place-items:center; flex:0 0 24px; height:24px; border-radius:999px; background:#22c55e; color:#fff; font-weight:900; }
.sales-section-v1309 { padding-top: 58px; padding-bottom: 18px; }
.sales-section-head-v1309 { max-width: 790px; margin: 0 auto 26px; text-align:center; }
.sales-section-head-v1309 h2 { font-size: clamp(30px,4vw,52px); line-height:1.02; letter-spacing:-.045em; color:#0f172a; margin: 8px 0 12px; }
.sales-section-head-v1309 p { color:#64748b; font-size:18px; line-height:1.6; }
.sales-grid-v1309 { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:18px; }
.sales-card-v1309 { background:#fff; border:1px solid rgba(15,23,42,.08); border-radius: 26px; padding: 24px; box-shadow:0 18px 44px rgba(15,23,42,.08); }
.sales-card-v1309 strong { display:inline-flex; width:36px; height:36px; align-items:center; justify-content:center; border-radius:12px; background:#fee2e2; color:#b91c1c; margin-bottom:14px; }
.sales-card-v1309 h3 { color:#0f172a; font-size: 22px; margin-bottom:8px; }
.sales-card-v1309 p { color:#64748b; line-height:1.6; }
.sales-centers-v1309 { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap:14px; }
.sales-center-v1309 { background:#fff; border:1px solid rgba(15,23,42,.08); border-radius:22px; padding:18px; box-shadow:0 16px 36px rgba(15,23,42,.07); }
.sales-center-v1309 h3 { margin:0 0 6px; color:#0f172a; }
.sales-center-v1309 p { color:#64748b; margin-bottom:14px; }
.sales-center-v1309 a { color:#dc2626; font-weight:900; text-decoration:none; }
.sales-final-v1309 { background:linear-gradient(135deg,#dc2626,#991b1b); color:white; border-radius:34px; padding: clamp(28px,5vw,58px); display:flex; justify-content:space-between; gap:22px; align-items:center; margin-top:48px; box-shadow:0 22px 60px rgba(220,38,38,.22); }
.sales-final-v1309 h2 { font-size: clamp(30px,4vw,54px); line-height:1; letter-spacing:-.045em; margin:0 0 12px; }
.sales-final-v1309 p { color:#fee2e2; font-size:18px; max-width:760px; }
.sales-final-v1309 .hero-btn.secondary { background:rgba(255,255,255,.12); color:white; border-color:rgba(255,255,255,.28); }
@media (max-width: 980px) { .sales-hero-v1309, .sales-grid-v1309, .sales-final-v1309 { grid-template-columns:1fr; } .sales-final-v1309 { display:block; } .sales-centers-v1309 { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 640px) { .sales-hero-copy-v1309, .sales-hero-card-v1309, .sales-final-v1309 { border-radius:24px; } .sales-centers-v1309 { grid-template-columns:1fr; } .sales-actions-v1309 .hero-btn { width:100%; justify-content:center; } }


/* v1.31.1 - Home comercial inspirada en estructura TrasterosPub, sin textos internos */
.nmc-sales-home-v1311 { background: linear-gradient(180deg,#fff 0%,#f7f8fb 45%,#fff 100%); color:#101828; }
.nmc-sales-home-v1311 .wrap { max-width: 1240px; margin-left:auto; margin-right:auto; }
.nmc-hero-v1311 { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr); gap:28px; align-items:stretch; padding:34px 0 26px; }
.nmc-hero-copy-v1311, .nmc-promo-card-v1311, .nmc-cta-final-v1311 { border-radius:34px; box-shadow:0 26px 70px rgba(15,23,42,.13); }
.nmc-hero-copy-v1311 { background:radial-gradient(circle at top left,rgba(239,35,42,.20),transparent 34%),linear-gradient(135deg,#121c31 0%,#0b1324 100%); color:#fff; padding:46px; min-height:420px; display:flex; flex-direction:column; justify-content:center; }
.nmc-hero-copy-v1311 .eyebrow, .nmc-section-head-v1311 .eyebrow, .nmc-cta-final-v1311 .eyebrow { display:inline-flex; align-items:center; width:max-content; max-width:100%; padding:7px 13px; border-radius:999px; background:rgba(239,35,42,.10); color:#ef232a; border:1px solid rgba(239,35,42,.22); font-weight:900; text-transform:uppercase; letter-spacing:.08em; font-size:.76rem; }
.nmc-hero-copy-v1311 h1 { margin:18px 0 16px; font-size:clamp(2.55rem,5.1vw,5.05rem); line-height:.93; letter-spacing:-.055em; color:#fff; max-width:860px; }
.nmc-hero-copy-v1311 p { color:rgba(255,255,255,.88); font-size:1.15rem; line-height:1.62; max-width:790px; margin:0 0 22px; }
.nmc-actions-v1311 { display:flex; flex-wrap:wrap; gap:13px; margin-top:4px; }
.nmc-actions-v1311 .hero-btn { border-radius:999px; padding:15px 22px; font-weight:900; }
.nmc-hero-proof-v1311 { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.nmc-hero-proof-v1311 span { display:inline-flex; align-items:center; gap:7px; padding:9px 12px; border-radius:999px; background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.15); color:#fff; font-weight:800; font-size:.93rem; }
.nmc-promo-card-v1311 { background:#fff; padding:26px; border:1px solid #e6e9ef; position:relative; overflow:hidden; }
.nmc-promo-card-v1311:before { content:''; position:absolute; inset:0 0 auto; height:6px; background:linear-gradient(90deg,#ef232a,#ffb020); }
.nmc-promo-top-v1311 { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px; }
.nmc-promo-top-v1311 strong { color:#0f172a; font-size:1.05rem; }
.nmc-promo-top-v1311 span { background:#ecfdf3; color:#067647; border-radius:999px; padding:7px 10px; font-size:.8rem; font-weight:900; }
.nmc-price-v1311 { display:flex; align-items:flex-end; gap:10px; margin:18px 0; color:#0f172a; }
.nmc-price-v1311 strong { font-size:4.2rem; line-height:.88; letter-spacing:-.06em; }
.nmc-price-v1311 small { color:#667085; font-weight:800; margin-bottom:8px; }
.nmc-promo-list-v1311 { list-style:none; padding:0; margin:18px 0 22px; display:grid; gap:10px; }
.nmc-promo-list-v1311 li { display:flex; justify-content:space-between; gap:14px; padding:11px 13px; border-radius:16px; background:#f8fafc; border:1px solid #edf0f5; color:#344054; }
.nmc-promo-list-v1311 b { color:#101828; }
.nmc-section-v1311 { padding:40px 0; }
.nmc-section-head-v1311 { text-align:center; max-width:760px; margin:0 auto 24px; }
.nmc-section-head-v1311 h2 { margin:12px 0 10px; font-size:clamp(2rem,3.2vw,3.2rem); letter-spacing:-.04em; color:#111827; }
.nmc-section-head-v1311 p { color:#667085; font-size:1.04rem; line-height:1.55; }
.nmc-size-grid-v1311, .nmc-reasons-grid-v1311, .nmc-centers-grid-v1311, .nmc-faq-grid-v1311 { display:grid; gap:18px; }
.nmc-size-grid-v1311 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.nmc-centers-grid-v1311 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.nmc-reasons-grid-v1311 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.nmc-size-card-v1311, .nmc-center-card-v1311, .nmc-reason-card-v1311, .nmc-faq-card-v1311 { background:#fff; border:1px solid #e6e9ef; border-radius:26px; padding:24px; box-shadow:0 16px 45px rgba(15,23,42,.06); }
.nmc-size-card-v1311 strong { display:inline-flex; width:48px; height:48px; align-items:center; justify-content:center; border-radius:17px; background:#fff1f2; color:#ef232a; font-size:1.3rem; margin-bottom:16px; }
.nmc-size-card-v1311 h3, .nmc-center-card-v1311 h3, .nmc-reason-card-v1311 h3 { margin:0 0 9px; color:#101828; font-size:1.25rem; }
.nmc-size-card-v1311 p, .nmc-center-card-v1311 p, .nmc-reason-card-v1311 p, .nmc-faq-card-v1311 p { color:#667085; line-height:1.55; margin:0; }
.nmc-size-card-v1311 a, .nmc-center-card-v1311 a { display:inline-flex; margin-top:15px; color:#ef232a; font-weight:900; text-decoration:none; }
.nmc-center-card-v1311 { min-height:190px; display:flex; flex-direction:column; }
.nmc-center-card-v1311 a { margin-top:auto; }
.nmc-location-band-v1311 { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:20px; align-items:center; background:#101828; color:#fff; border-radius:32px; padding:34px; box-shadow:0 26px 70px rgba(15,23,42,.14); }
.nmc-location-band-v1311 h2 { margin:8px 0 10px; color:#fff; font-size:clamp(1.8rem,3vw,3rem); letter-spacing:-.04em; }
.nmc-location-band-v1311 p { color:rgba(255,255,255,.78); line-height:1.6; }
.nmc-location-points-v1311 { display:grid; gap:10px; }
.nmc-location-points-v1311 span { padding:12px 14px; border-radius:18px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); font-weight:800; }
.nmc-faq-grid-v1311 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.nmc-faq-card-v1311 h3 { margin:0 0 10px; }
.nmc-cta-final-v1311 { background:linear-gradient(135deg,#ef232a,#c51d24); color:#fff; padding:34px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:22px; margin:34px auto 56px; }
.nmc-cta-final-v1311 h2 { color:#fff; margin:12px 0 10px; font-size:clamp(2rem,3vw,3rem); letter-spacing:-.04em; }
.nmc-cta-final-v1311 p { color:rgba(255,255,255,.86); margin:0; max-width:760px; }
.nmc-cta-final-v1311 .eyebrow { background:rgba(255,255,255,.13); color:#fff; border-color:rgba(255,255,255,.22); }
.nmc-cta-final-v1311 .hero-btn.secondary { background:#fff; color:#c51d24; border-color:#fff; }
.public-empty-gallery .hero-btn { margin-top:16px; }
.center-hero-subcopy { margin-top:8px !important; color:rgba(255,255,255,.82) !important; }
@media (max-width: 1080px) { .nmc-hero-v1311, .nmc-location-band-v1311, .nmc-cta-final-v1311 { grid-template-columns:1fr; } .nmc-centers-grid-v1311 { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 760px) { .nmc-hero-v1311 { padding:18px 0; } .nmc-hero-copy-v1311 { padding:30px 24px; border-radius:26px; min-height:auto; } .nmc-promo-card-v1311, .nmc-location-band-v1311, .nmc-cta-final-v1311 { border-radius:24px; padding:22px; } .nmc-size-grid-v1311, .nmc-reasons-grid-v1311, .nmc-centers-grid-v1311, .nmc-faq-grid-v1311 { grid-template-columns:1fr; } .nmc-price-v1311 strong { font-size:3.4rem; } .nmc-actions-v1311 .hero-btn { width:100%; justify-content:center; } }


/* v1.31.5 - blog con foto opcional y home mas comercial */
.blog-card-v1315 { overflow:hidden; padding:0 !important; border-radius:24px; background:#fff; border:1px solid rgba(15,23,42,.10); box-shadow:0 18px 45px rgba(15,23,42,.08); }
.blog-card-content-v1315 { padding:24px; }
.blog-card-media-v1315 { margin:0; height:185px; overflow:hidden; background:#eef2f7; }
.blog-card-media-v1315 img { width:100%; height:100%; object-fit:cover; display:block; }
.blog-post-media-v1315 { margin:28px 0 0; border-radius:28px; overflow:hidden; background:#eef2f7; box-shadow:0 20px 60px rgba(15,23,42,.16); }
.blog-post-media-v1315 img { width:100%; max-height:420px; object-fit:cover; display:block; }
.nmc-home-v1315 { background:#fff; color:#172033; }
.nmc-home-v1315 .wrap { max-width:1240px; margin-left:auto; margin-right:auto; }
.nmc-home-hero-v1315 { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); gap:34px; align-items:center; padding:54px 22px 42px; }
.nmc-home-hero-copy-v1315 h1 { font-size:clamp(42px,6vw,76px); line-height:.96; letter-spacing:-.055em; margin:14px 0 18px; color:#111827; }
.nmc-home-hero-copy-v1315 p { font-size:clamp(18px,2.2vw,23px); line-height:1.45; color:#475569; max-width:720px; }
.nmc-home-kpis-v1315 { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0; }
.nmc-home-kpis-v1315 span { padding:10px 14px; border-radius:999px; background:#f8fafc; border:1px solid #e2e8f0; color:#263244; font-weight:900; }
.nmc-home-card-v1315 { background:linear-gradient(145deg,#111827,#1e293b); color:#fff; border-radius:34px; padding:30px; box-shadow:0 30px 80px rgba(15,23,42,.22); }
.nmc-home-card-v1315 strong { font-size:52px; line-height:1; display:block; }
.nmc-home-card-v1315 small { color:#cbd5e1; font-weight:800; }
.nmc-home-list-v1315 { list-style:none; padding:0; margin:22px 0; display:grid; gap:10px; }
.nmc-home-list-v1315 li { display:flex; justify-content:space-between; gap:12px; padding:13px 0; border-bottom:1px solid rgba(255,255,255,.14); }
.nmc-home-section-v1315 { padding:44px 22px; }
.nmc-home-section-head-v1315 { max-width:820px; margin:0 auto 26px; text-align:center; }
.nmc-home-section-head-v1315 h2 { font-size:clamp(32px,4vw,52px); line-height:1.03; letter-spacing:-.04em; margin:10px 0; color:#111827; }
.nmc-home-section-head-v1315 p { color:#64748b; font-size:18px; }
.nmc-home-grid-v1315 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.nmc-home-tile-v1315 { background:#fff; border:1px solid #e5e7eb; border-radius:26px; padding:26px; box-shadow:0 16px 45px rgba(15,23,42,.06); }
.nmc-home-tile-v1315 h3 { margin:10px 0 8px; color:#111827; font-size:24px; letter-spacing:-.02em; }
.nmc-home-tile-v1315 p { color:#64748b; line-height:1.55; }
.nmc-home-strip-v1315 { display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:stretch; background:#f8fafc; border:1px solid #e2e8f0; border-radius:34px; padding:24px; }
.nmc-home-city-v1315 { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px; border-radius:20px; background:#fff; border:1px solid #e5e7eb; font-weight:900; }
.nmc-home-cta-v1315 { margin:44px 22px 60px; background:linear-gradient(135deg,#e52329,#b91c1c); color:#fff; border-radius:34px; padding:34px; display:flex; justify-content:space-between; gap:22px; align-items:center; box-shadow:0 24px 70px rgba(229,35,41,.22); }
.nmc-home-cta-v1315 h2 { margin:0 0 8px; font-size:clamp(30px,4vw,46px); letter-spacing:-.04em; }
.nmc-home-cta-v1315 p { margin:0; color:#fee2e2; font-size:18px; }
@media (max-width:900px){.nmc-home-hero-v1315,.nmc-home-grid-v1315,.nmc-home-strip-v1315{grid-template-columns:1fr}.nmc-home-cta-v1315{display:block}.nmc-home-hero-v1315{padding-top:30px}.blog-card-media-v1315{height:160px}}



/* v1.31.6 - home publica con fotos comerciales y look mas visual */
.nmc-home-v1316 { background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%); color:#172033; }
.nmc-home-v1316 .wrap { max-width:1260px; margin-left:auto; margin-right:auto; }
.nmc-home-hero-v1316 { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr); gap:34px; align-items:center; padding:58px 22px 38px; }
.nmc-home-hero-copy-v1316 h1 { font-size:clamp(40px,6vw,76px); line-height:.95; letter-spacing:-.055em; margin:14px 0 18px; color:#111827; }
.nmc-home-hero-copy-v1316 p { font-size:clamp(18px,2.2vw,23px); line-height:1.5; color:#475569; max-width:720px; }
.nmc-home-kpis-v1316 { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0; }
.nmc-home-kpis-v1316 span { padding:10px 14px; border-radius:999px; background:#fff; border:1px solid #e2e8f0; color:#263244; font-weight:900; box-shadow:0 8px 24px rgba(15,23,42,.05); }
.nmc-home-hero-visual-v1316 { position:relative; overflow:hidden; border-radius:34px; min-height:460px; background:#e5e7eb; box-shadow:0 32px 90px rgba(15,23,42,.16); }
.nmc-home-hero-visual-v1316 img { width:100%; height:100%; min-height:460px; object-fit:cover; display:block; }
.nmc-home-hero-badge-v1316 { position:absolute; left:22px; bottom:22px; display:flex; flex-direction:column; gap:8px; background:rgba(255,255,255,.92); color:#111827; padding:18px 20px; border-radius:24px; backdrop-filter:blur(10px); box-shadow:0 18px 50px rgba(15,23,42,.18); max-width:320px; }
.nmc-home-hero-badge-v1316 strong { font-size:22px; line-height:1.05; letter-spacing:-.03em; }
.nmc-home-hero-badge-v1316 span { color:#475569; font-size:14px; }
.nmc-home-section-v1316 { padding:18px 22px 38px; }
.nmc-home-section-head-v1316 { max-width:820px; margin:0 auto 26px; text-align:center; }
.nmc-home-section-head-v1316 h2 { font-size:clamp(32px,4vw,52px); line-height:1.03; letter-spacing:-.04em; margin:10px 0; color:#111827; }
.nmc-home-section-head-v1316 p { color:#64748b; font-size:18px; }
.nmc-home-photo-grid-v1316 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.nmc-home-photo-card-v1316 { overflow:hidden; border-radius:28px; background:#fff; border:1px solid #e5e7eb; box-shadow:0 16px 44px rgba(15,23,42,.07); }
.nmc-home-photo-card-v1316 img { width:100%; height:220px; object-fit:cover; display:block; }
.nmc-home-photo-card-body-v1316 { padding:24px; }
.nmc-home-photo-card-body-v1316 h3 { margin:0 0 10px; font-size:24px; color:#111827; letter-spacing:-.02em; }
.nmc-home-photo-card-body-v1316 p { color:#64748b; line-height:1.55; margin:0 0 14px; }
.nmc-home-photo-card-body-v1316 a { font-weight:900; color:#cf2027; }
.nmc-home-steps-v1316 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.nmc-home-step-v1316 { background:#fff; border:1px solid #e5e7eb; border-radius:26px; padding:26px; box-shadow:0 16px 45px rgba(15,23,42,.06); }
.nmc-home-step-v1316 .step-no { display:inline-flex; width:44px; height:44px; align-items:center; justify-content:center; border-radius:999px; background:#111827; color:#fff; font-weight:900; margin-bottom:14px; }
.nmc-home-step-v1316 h3 { margin:0 0 10px; color:#111827; font-size:24px; letter-spacing:-.02em; }
.nmc-home-step-v1316 p { color:#64748b; line-height:1.55; margin:0; }
.nmc-home-split-v1316 { display:grid; grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr); gap:28px; align-items:center; }
.nmc-home-split-media-v1316 { overflow:hidden; border-radius:30px; box-shadow:0 22px 65px rgba(15,23,42,.12); background:#e5e7eb; }
.nmc-home-split-media-v1316 img { width:100%; height:100%; min-height:360px; object-fit:cover; display:block; }
.nmc-home-split-copy-v1316 { background:#fff; border:1px solid #e5e7eb; border-radius:30px; padding:32px; box-shadow:0 16px 44px rgba(15,23,42,.06); }
.nmc-home-split-copy-v1316 h2 { margin:8px 0 14px; font-size:clamp(30px,3.5vw,46px); line-height:1.04; letter-spacing:-.04em; color:#111827; }
.nmc-home-split-copy-v1316 p { color:#64748b; font-size:18px; line-height:1.6; }
.nmc-home-checks-v1316 { list-style:none; padding:0; margin:18px 0 24px; display:grid; gap:12px; }
.nmc-home-checks-v1316 li { display:flex; gap:10px; align-items:flex-start; color:#334155; }
.nmc-home-checks-v1316 li strong { color:#111827; }
.nmc-home-strip-v1316 { display:grid; grid-template-columns:1fr 1fr; gap:18px; align-items:stretch; background:#fff; border:1px solid #e2e8f0; border-radius:34px; padding:24px; box-shadow:0 16px 44px rgba(15,23,42,.06); }
.nmc-home-city-v1316 { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px; border-radius:20px; background:#f8fafc; border:1px solid #e5e7eb; font-weight:900; color:#111827; }
.nmc-home-city-v1316 b { color:#cf2027; }
.nmc-home-cta-v1316 { margin:24px 22px 62px; background:linear-gradient(135deg,#e52329,#b91c1c); color:#fff; border-radius:34px; padding:34px; display:flex; justify-content:space-between; gap:22px; align-items:center; box-shadow:0 24px 70px rgba(229,35,41,.22); }
.nmc-home-cta-v1316 h2 { margin:0 0 8px; font-size:clamp(30px,4vw,46px); letter-spacing:-.04em; }
.nmc-home-cta-v1316 p { margin:0; color:#fee2e2; font-size:18px; }
@media (max-width:980px){
  .nmc-home-hero-v1316,.nmc-home-photo-grid-v1316,.nmc-home-steps-v1316,.nmc-home-split-v1316,.nmc-home-strip-v1316{grid-template-columns:1fr}
  .nmc-home-cta-v1316{display:block}
  .nmc-home-hero-v1316{padding-top:30px}
  .nmc-home-photo-card-v1316 img{height:200px}
  .nmc-home-hero-visual-v1316,.nmc-home-hero-visual-v1316 img{min-height:320px}
  .nmc-home-split-media-v1316 img{min-height:260px}
}



/* v1.31.7 - home impresionante */
.nmc-home-v1317 { background:linear-gradient(180deg,#ffffff 0%,#f8fafc 52%,#ffffff 100%); color:#162031; }
.nmc-home-v1317 .wrap { max-width:1280px; margin-left:auto; margin-right:auto; }
.nmc-home-hero-v1317 { display:grid; grid-template-columns:minmax(0,1fr) minmax(430px,.95fr); gap:36px; align-items:center; padding:62px 22px 34px; }
.nmc-home-hero-copy-v1317 h1 { font-size:clamp(42px,6vw,82px); line-height:.94; letter-spacing:-.06em; margin:12px 0 18px; color:#0f172a; }
.nmc-home-hero-copy-v1317 p { font-size:clamp(18px,2.2vw,23px); line-height:1.58; color:#475569; max-width:720px; }
.nmc-home-pill-row-v1317 { display:flex; flex-wrap:wrap; gap:10px; margin:22px 0 0; }
.nmc-home-pill-row-v1317 span { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:999px; background:#fff; border:1px solid #e2e8f0; color:#1f2937; box-shadow:0 12px 32px rgba(15,23,42,.06); font-weight:900; }
.nmc-home-visual-stack-v1317 { display:grid; gap:16px; }
.nmc-home-visual-main-v1317 { position:relative; overflow:hidden; border-radius:34px; min-height:485px; background:#e5e7eb; box-shadow:0 34px 90px rgba(15,23,42,.18); }
.nmc-home-visual-main-v1317 img { width:100%; height:100%; min-height:485px; object-fit:cover; display:block; }
.nmc-home-visual-note-v1317 { position:absolute; left:22px; right:22px; bottom:22px; background:rgba(255,255,255,.94); border-radius:24px; padding:18px 20px; box-shadow:0 20px 60px rgba(15,23,42,.14); backdrop-filter:blur(14px); }
.nmc-home-visual-note-v1317 strong { display:block; color:#111827; font-size:22px; margin-bottom:6px; letter-spacing:-.03em; }
.nmc-home-visual-note-v1317 span { color:#475569; }
.nmc-home-micro-grid-v1317 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.nmc-home-micro-card-v1317 { background:#fff; border:1px solid #e5e7eb; border-radius:24px; overflow:hidden; box-shadow:0 14px 40px rgba(15,23,42,.08); }
.nmc-home-micro-card-v1317 img { width:100%; height:170px; object-fit:cover; display:block; }
.nmc-home-micro-card-v1317 div { padding:16px 18px 18px; }
.nmc-home-micro-card-v1317 strong { display:block; color:#111827; font-size:19px; letter-spacing:-.02em; }
.nmc-home-micro-card-v1317 p { margin:8px 0 0; color:#64748b; line-height:1.5; font-size:15px; }
.nmc-home-block-v1317 { padding:18px 22px 38px; }
.nmc-home-head-v1317 { max-width:860px; margin:0 auto 28px; text-align:center; }
.nmc-home-head-v1317 h2 { font-size:clamp(32px,4vw,54px); line-height:1.03; letter-spacing:-.04em; margin:10px 0; color:#0f172a; }
.nmc-home-head-v1317 p { color:#64748b; font-size:18px; }
.nmc-home-problems-v1317 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.nmc-home-problem-v1317 { background:#fff; border:1px solid #e5e7eb; border-radius:28px; padding:28px; box-shadow:0 16px 44px rgba(15,23,42,.06); }
.nmc-home-problem-v1317 h3 { margin:14px 0 10px; color:#111827; font-size:24px; letter-spacing:-.03em; }
.nmc-home-problem-v1317 p { color:#64748b; line-height:1.6; margin:0; }
.nmc-home-problem-v1317 .icon { font-size:30px; }
.nmc-home-split-v1317 { display:grid; grid-template-columns:minmax(340px,.94fr) minmax(0,1.06fr); gap:28px; align-items:center; }
.nmc-home-split-v1317.reverse { grid-template-columns:minmax(0,1.06fr) minmax(340px,.94fr); }
.nmc-home-split-media-v1317 { overflow:hidden; border-radius:30px; background:#e5e7eb; box-shadow:0 24px 70px rgba(15,23,42,.12); }
.nmc-home-split-media-v1317 img { width:100%; height:100%; min-height:390px; object-fit:cover; display:block; }
.nmc-home-split-copy-v1317 { background:#fff; border:1px solid #e5e7eb; border-radius:30px; padding:34px; box-shadow:0 16px 44px rgba(15,23,42,.06); }
.nmc-home-split-copy-v1317 h2 { margin:8px 0 14px; font-size:clamp(30px,3.6vw,48px); line-height:1.04; letter-spacing:-.04em; color:#0f172a; }
.nmc-home-split-copy-v1317 p { color:#64748b; font-size:18px; line-height:1.6; }
.nmc-home-checks-v1317 { list-style:none; padding:0; margin:18px 0 24px; display:grid; gap:12px; }
.nmc-home-checks-v1317 li { display:flex; gap:10px; align-items:flex-start; color:#334155; }
.nmc-home-checks-v1317 li strong { color:#111827; }
.nmc-home-steps-v1317 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.nmc-home-step-v1317 { background:#fff; border:1px solid #e5e7eb; border-radius:26px; padding:28px; box-shadow:0 16px 42px rgba(15,23,42,.06); }
.nmc-home-step-v1317 .step-no { display:inline-flex; width:46px; height:46px; align-items:center; justify-content:center; border-radius:999px; background:#111827; color:#fff; font-weight:900; margin-bottom:14px; }
.nmc-home-step-v1317 h3 { margin:0 0 10px; color:#111827; font-size:24px; }
.nmc-home-step-v1317 p { color:#64748b; line-height:1.58; margin:0; }
.nmc-home-city-grid-v1317 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.nmc-home-city-card-v1317 { display:block; background:#fff; border:1px solid #e5e7eb; border-radius:26px; padding:24px; color:#0f172a; text-decoration:none; box-shadow:0 16px 40px rgba(15,23,42,.06); }
.nmc-home-city-card-v1317 strong { display:block; font-size:24px; margin-bottom:8px; letter-spacing:-.03em; }
.nmc-home-city-card-v1317 p { color:#64748b; margin:0 0 12px; line-height:1.5; }
.nmc-home-city-card-v1317 b { color:#cf2027; }
.nmc-home-faq-v1317 { display:grid; gap:14px; max-width:980px; margin:0 auto; }
.nmc-home-faq-v1317 details { background:#fff; border:1px solid #e5e7eb; border-radius:22px; padding:18px 20px; box-shadow:0 12px 36px rgba(15,23,42,.05); }
.nmc-home-faq-v1317 summary { cursor:pointer; list-style:none; font-weight:900; color:#111827; }
.nmc-home-faq-v1317 summary::-webkit-details-marker { display:none; }
.nmc-home-faq-v1317 p { margin:12px 0 0; color:#64748b; line-height:1.65; }
.nmc-home-cta-v1317 { margin:22px 22px 68px; background:linear-gradient(135deg,#101827,#22304a 60%,#0f172a); color:#fff; border-radius:36px; padding:36px; display:flex; justify-content:space-between; gap:24px; align-items:center; box-shadow:0 32px 90px rgba(15,23,42,.18); }
.nmc-home-cta-v1317 h2 { margin:0 0 10px; font-size:clamp(30px,4vw,50px); letter-spacing:-.04em; }
.nmc-home-cta-v1317 p { margin:0; color:#cbd5e1; font-size:18px; max-width:760px; }
@media (max-width:1040px){
  .nmc-home-hero-v1317,.nmc-home-problems-v1317,.nmc-home-split-v1317,.nmc-home-split-v1317.reverse,.nmc-home-steps-v1317,.nmc-home-city-grid-v1317{grid-template-columns:1fr}
  .nmc-home-cta-v1317{display:block}
}
@media (max-width:760px){
  .nmc-home-hero-v1317{padding-top:30px}
  .nmc-home-micro-grid-v1317{grid-template-columns:1fr}
  .nmc-home-visual-main-v1317,.nmc-home-visual-main-v1317 img{min-height:320px}
  .nmc-home-split-media-v1317 img{min-height:260px}
}

/* v1.34.0 - centros más comerciales y orientados a conversión */
.centers-page-commercial-v1340,
.center-detail-page { --nmc-v1340-red:#dc2626; --nmc-v1340-dark:#101828; --nmc-v1340-muted:#667085; --nmc-v1340-line:#e5e7eb; --nmc-v1340-soft:#f8fafc; --nmc-v1340-shadow:0 18px 45px rgba(15,23,42,.07); }
.centers-hero-v1340 { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr); gap:24px; align-items:stretch; padding:42px 0 24px; }
.centers-hero-copy-v1340 { background:linear-gradient(135deg,#fff 0%,#fff5f5 100%); border:1px solid var(--nmc-v1340-line); border-radius:30px; padding:clamp(28px,5vw,48px); box-shadow:var(--nmc-v1340-shadow); }
.centers-hero-copy-v1340 h1 { font-size:clamp(2.35rem,6vw,5rem); line-height:.96; letter-spacing:-.06em; margin:12px 0 16px; color:var(--nmc-v1340-dark); }
.centers-hero-copy-v1340 p { color:#475467; font-size:clamp(1.05rem,2vw,1.24rem); line-height:1.58; max-width:820px; }
.centers-hero-panel-v1340 { display:grid; grid-template-columns:1fr 1fr; gap:14px; background:#111827; border-radius:30px; padding:20px; color:#fff; box-shadow:var(--nmc-v1340-shadow); }
.centers-hero-panel-v1340 article { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.10); border-radius:22px; padding:22px; }
.centers-hero-panel-v1340 strong { display:block; font-size:clamp(2rem,4vw,3.2rem); line-height:1; letter-spacing:-.05em; }
.centers-hero-panel-v1340 span { display:block; color:#d0d5dd; font-weight:800; margin-top:8px; }
.centers-commercial-strip-v1340 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; padding:8px 0 28px; }
.centers-commercial-strip-v1340 article,
.centers-usecases-grid-v1340 article,
.centers-by-city-v1340,
.nmc-center-decision-v1340 article,
.nmc-center-decision-v1340 aside { background:#fff; border:1px solid var(--nmc-v1340-line); border-radius:24px; padding:22px; box-shadow:0 12px 32px rgba(15,23,42,.045); }
.centers-commercial-strip-v1340 strong { display:block; color:var(--nmc-v1340-dark); font-size:1.08rem; margin-bottom:6px; }
.centers-commercial-strip-v1340 span { color:var(--nmc-v1340-muted); line-height:1.52; }
.centers-grid-commercial-v1340 .centro-card { border-radius:24px; box-shadow:0 14px 36px rgba(15,23,42,.055); }
.centers-grid-commercial-v1340 .btn-card.whatsapp { background:var(--nmc-v1340-red); color:#fff; border-color:var(--nmc-v1340-red); }
.centers-by-city-v1340 { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:22px; align-items:center; }
.centers-by-city-v1340 h2 { font-size:clamp(2rem,4vw,3.3rem); line-height:1.03; letter-spacing:-.045em; color:var(--nmc-v1340-dark); margin:10px 0; }
.centers-by-city-v1340 p { color:var(--nmc-v1340-muted); line-height:1.65; }
.centers-by-city-v1340 nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.centers-by-city-v1340 nav a { display:flex; justify-content:space-between; gap:14px; align-items:center; text-decoration:none; background:var(--nmc-v1340-soft); border:1px solid var(--nmc-v1340-line); border-radius:18px; padding:16px 18px; }
.centers-by-city-v1340 nav strong { color:var(--nmc-v1340-dark); }
.centers-by-city-v1340 nav span { color:var(--nmc-v1340-red); font-weight:900; font-size:.92rem; }
.centers-usecases-grid-v1340 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.centers-usecases-grid-v1340 h3 { color:var(--nmc-v1340-dark); font-size:1.45rem; letter-spacing:-.03em; margin:0 0 8px; }
.centers-usecases-grid-v1340 p { color:var(--nmc-v1340-muted); line-height:1.62; margin:0; }
.nmc-center-decision-v1340 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) minmax(300px,1.15fr); gap:16px; align-items:stretch; }
.nmc-center-decision-v1340 article,
.nmc-center-decision-v1340 aside { border-radius:26px; }
.nmc-center-decision-v1340 article span { display:inline-flex; width:42px; height:42px; align-items:center; justify-content:center; border-radius:999px; background:#fee2e2; color:#b91c1c; font-weight:950; margin-bottom:16px; }
.nmc-center-decision-v1340 h2 { color:var(--nmc-v1340-dark); font-size:1.34rem; line-height:1.12; letter-spacing:-.025em; margin:0 0 8px; }
.nmc-center-decision-v1340 p { color:var(--nmc-v1340-muted); line-height:1.58; margin:0; }
.nmc-center-decision-v1340 aside { background:linear-gradient(135deg,#111827,#2b1118); color:#fff; display:flex; flex-direction:column; justify-content:space-between; gap:16px; }
.nmc-center-decision-v1340 aside strong { display:block; color:#fff; font-size:1.6rem; line-height:1.05; letter-spacing:-.035em; }
.nmc-center-decision-v1340 aside p { color:#d0d5dd; }
.nmc-center-decision-actions { display:flex; flex-wrap:wrap; gap:10px; }
.nmc-center-decision-actions .hero-btn.secondary.dark { background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.20); }
@media(max-width:1100px){ .nmc-center-decision-v1340 { grid-template-columns:1fr 1fr; } .centers-commercial-strip-v1340 { grid-template-columns:1fr 1fr; } }
@media(max-width:900px){ .centers-hero-v1340, .centers-by-city-v1340 { grid-template-columns:1fr; } .centers-usecases-grid-v1340 { grid-template-columns:1fr; } }
@media(max-width:680px){ .centers-hero-panel-v1340, .centers-commercial-strip-v1340, .centers-by-city-v1340 nav, .nmc-center-decision-v1340 { grid-template-columns:1fr; } .centers-hero-copy-v1340, .centers-hero-panel-v1340, .centers-by-city-v1340, .nmc-center-decision-v1340 article, .nmc-center-decision-v1340 aside { border-radius:22px; } .centers-hero-copy-v1340, .centers-by-city-v1340, .nmc-center-decision-v1340 article, .nmc-center-decision-v1340 aside { padding:22px; } .nmc-center-decision-actions { display:grid; grid-template-columns:1fr; } }

/* v1.34.2 - estilo publico tipo TrasterosPub: reserva, promocion, tamaños, disponibles */
.nmc-pubstyle-page,
.center-detail-page { --nmc-pub-red:#dc2626; --nmc-pub-red-dark:#b91c1c; --nmc-pub-ink:#111827; --nmc-pub-muted:#667085; --nmc-pub-line:#e5e7eb; --nmc-pub-soft:#f8fafc; --nmc-pub-shadow:0 18px 46px rgba(15,23,42,.08); --nmc-pub-radius:28px; }
.nmc-pubstyle-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); gap:24px; align-items:stretch; padding:36px 0 18px; }
.nmc-pubstyle-hero-copy,
.nmc-pubstyle-promo-card,
.nmc-pub-unit-card,
.nmc-center-pubstyle-main,
.nmc-center-pubstyle-promo,
.nmc-center-pubstyle-inventory article { background:#fff; border:1px solid var(--nmc-pub-line); border-radius:var(--nmc-pub-radius); box-shadow:var(--nmc-pub-shadow); }
.nmc-pubstyle-hero-copy { padding:clamp(28px,5vw,54px); background:linear-gradient(135deg,#fff 0%,#fff7f7 58%,#fef2f2 100%); }
.nmc-pub-promo-label { display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:999px; background:#fee2e2; color:var(--nmc-pub-red-dark); font-weight:950; letter-spacing:.01em; }
.nmc-pub-status { margin:16px 0 8px; color:#166534; font-weight:900; }
.nmc-pubstyle-hero-copy h1 { max-width:980px; margin:8px 0 16px; color:var(--nmc-pub-ink); font-size:clamp(2.6rem,6vw,5.4rem); line-height:.94; letter-spacing:-.065em; }
.nmc-pubstyle-hero-copy p:not(.nmc-pub-status) { color:#475467; font-size:clamp(1.05rem,2vw,1.22rem); line-height:1.58; max-width:840px; }
.nmc-pubstyle-promo-card { padding:28px; background:linear-gradient(160deg,#111827 0%,#1f2937 68%,#2b1118 100%); color:#fff; display:flex; flex-direction:column; gap:14px; }
.nmc-pubstyle-promo-card span { align-self:flex-start; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.12); color:#fecaca; font-weight:900; }
.nmc-pubstyle-promo-card strong { font-size:clamp(2.5rem,6vw,4.6rem); line-height:.92; letter-spacing:-.065em; }
.nmc-pubstyle-promo-card h2 { margin:0; color:#fff; font-size:clamp(1.65rem,3vw,2.4rem); letter-spacing:-.035em; }
.nmc-pubstyle-promo-card p { color:#e5e7eb; line-height:1.55; margin:0; }
.nmc-pubstyle-promo-card ul { list-style:none; padding:0; margin:2px 0 8px; display:grid; gap:10px; }
.nmc-pubstyle-promo-card li { position:relative; padding-left:24px; color:#f3f4f6; }
.nmc-pubstyle-promo-card li:before { content:"✓"; position:absolute; left:0; top:0; color:#86efac; font-weight:950; }
.nmc-pub-kpi-strip,
.nmc-pub-benefit-strip,
.nmc-center-pubstyle-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; padding:12px 0 24px; }
.nmc-pub-kpi-strip article,
.nmc-pub-benefit-strip article,
.nmc-center-pubstyle-strip article { background:#fff; border:1px solid var(--nmc-pub-line); border-radius:22px; padding:20px; box-shadow:0 12px 32px rgba(15,23,42,.045); }
.nmc-pub-kpi-strip strong { display:block; font-size:clamp(2rem,4vw,3.2rem); line-height:1; color:var(--nmc-pub-red); letter-spacing:-.05em; }
.nmc-pub-kpi-strip span,
.nmc-pub-benefit-strip span,
.nmc-center-pubstyle-strip span { color:var(--nmc-pub-muted); font-weight:750; }
.nmc-pub-benefit-strip strong { display:inline-flex; width:38px; height:38px; align-items:center; justify-content:center; border-radius:999px; background:#111827; color:#fff; margin-bottom:9px; }
.nmc-center-pubstyle-strip strong { display:block; color:var(--nmc-pub-ink); font-size:1.08rem; margin-bottom:6px; }
.nmc-pub-section-title { max-width:900px; margin:0 auto 24px; text-align:center; }
.nmc-pub-section-title.left { margin-left:0; text-align:left; }
.nmc-pub-section-title h2,
.nmc-pub-available-head h2,
.nmc-center-pubstyle-main h2,
.nmc-center-pubstyle-inventory h2,
.nmc-center-pubstyle-sizes h2 { color:var(--nmc-pub-ink); margin:9px 0 12px; font-size:clamp(2rem,4vw,3.4rem); line-height:1.02; letter-spacing:-.05em; }
.nmc-pub-section-title p,
.nmc-pub-available-head p,
.nmc-center-pubstyle-main p,
.nmc-center-pubstyle-inventory p { color:var(--nmc-pub-muted); line-height:1.65; }
.nmc-pub-size-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.nmc-pub-size-grid article { background:#fff; border:1px solid var(--nmc-pub-line); border-radius:24px; padding:24px; box-shadow:0 14px 36px rgba(15,23,42,.055); }
.nmc-pub-size-grid strong { display:block; font-size:1.65rem; color:var(--nmc-pub-ink); letter-spacing:-.035em; margin-bottom:8px; }
.nmc-pub-size-grid p { color:var(--nmc-pub-muted); line-height:1.58; }
.nmc-pub-size-grid a { color:var(--nmc-pub-red); font-weight:950; text-decoration:none; }
.nmc-pub-available { padding-top:18px; }
.nmc-pub-available-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.8fr); gap:20px; align-items:end; margin-bottom:22px; }
.nmc-pub-filter-pills { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }
.nmc-pub-filter-pills span { display:inline-flex; padding:10px 14px; border-radius:999px; background:#fff; border:1px solid var(--nmc-pub-line); color:#334155; font-weight:850; box-shadow:0 10px 24px rgba(15,23,42,.04); }
.nmc-pub-unit-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(245px,1fr)); gap:16px; }
.nmc-pub-unit-card { padding:20px; display:flex; flex-direction:column; gap:12px; min-height:260px; }
.nmc-pub-unit-card.open { border-color:rgba(22,163,74,.25); }
.nmc-pub-unit-card.soon { border-color:rgba(217,119,6,.25); }
.nmc-pub-unit-head { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.nmc-pub-unit-head h3 { color:var(--nmc-pub-ink); margin:0; font-size:1.35rem; letter-spacing:-.035em; }
.nmc-pub-unit-head span { white-space:nowrap; padding:7px 10px; border-radius:999px; background:#dcfce7; color:#166534; font-weight:950; font-size:.82rem; }
.nmc-pub-unit-card.soon .nmc-pub-unit-head span { background:#fef3c7; color:#92400e; }
.nmc-pub-unit-place { color:#64748b; font-weight:800; margin:0; text-transform:uppercase; letter-spacing:.04em; font-size:.78rem; }
.nmc-pub-unit-meta { display:flex; flex-wrap:wrap; gap:8px; }
.nmc-pub-unit-meta span { padding:8px 10px; border-radius:999px; background:#f8fafc; border:1px solid var(--nmc-pub-line); color:#475569; font-weight:850; font-size:.86rem; }
.nmc-pub-unit-price { margin-top:auto; display:flex; align-items:baseline; gap:7px; }
.nmc-pub-unit-price small { color:#64748b; font-weight:800; }
.nmc-pub-unit-price strong { color:var(--nmc-pub-red); font-size:1.8rem; letter-spacing:-.045em; }
.nmc-pub-unit-price em { color:#64748b; font-style:normal; font-weight:800; }
.nmc-pub-unit-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.nmc-pub-unit-actions a { display:inline-flex; justify-content:center; align-items:center; min-height:42px; border-radius:14px; border:1px solid var(--nmc-pub-line); color:var(--nmc-pub-ink); text-decoration:none; font-weight:950; }
.nmc-pub-unit-actions a.reserve { background:var(--nmc-pub-red); border-color:var(--nmc-pub-red); color:#fff; }
.centers-list-section-v1342 .centro-card { border-radius:24px; }
.nmc-pub-why-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.nmc-pub-why-grid article { background:#fff; border:1px solid var(--nmc-pub-line); border-radius:24px; padding:24px; box-shadow:0 14px 36px rgba(15,23,42,.055); }
.nmc-pub-why-grid h3 { color:var(--nmc-pub-ink); font-size:1.45rem; letter-spacing:-.035em; margin:0 0 8px; }
.nmc-pub-why-grid p { color:var(--nmc-pub-muted); line-height:1.62; margin:0; }
.nmc-center-pubstyle-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); gap:20px; align-items:stretch; }
.nmc-center-pubstyle-main { padding:clamp(26px,4vw,42px); background:linear-gradient(135deg,#fff,#fff7f7); }
.nmc-center-pubstyle-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.nmc-center-pubstyle-promo { padding:28px; background:linear-gradient(160deg,#111827,#2b1118); color:#fff; }
.nmc-center-pubstyle-promo span { display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.12); color:#fecaca; font-weight:950; }
.nmc-center-pubstyle-promo strong { display:block; margin:16px 0 8px; font-size:clamp(2.4rem,5vw,4rem); color:#fff; letter-spacing:-.06em; line-height:.95; }
.nmc-center-pubstyle-promo h3 { color:#fff; margin:0 0 12px; font-size:1.6rem; }
.nmc-center-pubstyle-promo ul { list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.nmc-center-pubstyle-promo li { color:#f3f4f6; position:relative; padding-left:22px; }
.nmc-center-pubstyle-promo li:before { content:"✓"; color:#86efac; position:absolute; left:0; font-weight:950; }
.nmc-center-pubstyle-sizes { padding-top:20px; }
.nmc-center-pubstyle-inventory { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:20px; align-items:stretch; }
.nmc-center-pubstyle-inventory article { padding:28px; }
.nmc-center-address { background:#f8fafc; border:1px solid var(--nmc-pub-line); border-radius:18px; padding:16px; }
.nmc-inventory-preview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:18px 0; }
.nmc-inventory-preview div { background:#f8fafc; border:1px solid var(--nmc-pub-line); border-radius:16px; padding:14px; }
.nmc-inventory-preview small { display:block; color:#64748b; font-weight:850; margin-bottom:5px; }
.nmc-inventory-preview strong { color:var(--nmc-pub-ink); font-size:1.08rem; }
.center-detail-page .portal-reservation-section { padding-top:10px; }
@media(max-width:1050px){
  .nmc-pubstyle-hero,.nmc-pub-available-head,.nmc-center-pubstyle-layout,.nmc-center-pubstyle-inventory{grid-template-columns:1fr}
  .nmc-pub-kpi-strip,.nmc-pub-benefit-strip,.nmc-center-pubstyle-strip{grid-template-columns:1fr 1fr}
  .nmc-pub-filter-pills{justify-content:flex-start}
}
@media(max-width:760px){
  .nmc-pubstyle-hero-copy,.nmc-pubstyle-promo-card,.nmc-center-pubstyle-main,.nmc-center-pubstyle-promo,.nmc-center-pubstyle-inventory article{border-radius:22px;padding:22px}
  .nmc-pub-kpi-strip,.nmc-pub-benefit-strip,.nmc-center-pubstyle-strip,.nmc-pub-size-grid,.nmc-pub-why-grid,.nmc-inventory-preview{grid-template-columns:1fr}
  .nmc-pub-unit-actions{grid-template-columns:1fr}
  .nmc-center-pubstyle-actions{display:grid;grid-template-columns:1fr}
}


/* v1.34.3 - Estilo público tipo TrasterosPub: landing de reserva por centro */
.trasterospub-page{--tp-red:#e30613;--tp-red-dark:#b9000b;--tp-ink:#121826;--tp-muted:#5f6b7a;--tp-line:#e8edf3;--tp-soft:#f7f9fc;--tp-radius:24px;--tp-shadow:0 18px 55px rgba(18,24,38,.08);background:#fff;color:var(--tp-ink)}
.trasterospub-page .tp-breadcrumbs{margin-top:18px;margin-bottom:0;color:#6b7280;font-size:.94rem}.trasterospub-page .tp-breadcrumbs a{color:#334155;text-decoration:none;font-weight:800}.trasterospub-page .tp-breadcrumbs strong{color:var(--tp-ink)}
.tp-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:stretch;padding:30px 0 20px}.tp-hero-copy,.tp-promo-card{border:1px solid var(--tp-line);border-radius:var(--tp-radius);box-shadow:var(--tp-shadow)}.tp-hero-copy{padding:clamp(28px,5vw,58px);background:linear-gradient(135deg,#fff 0%,#fff7f7 58%,#fee2e2 100%)}.tp-promo-label{display:inline-flex;align-items:center;border-radius:999px;padding:9px 13px;background:#fff;border:1px solid rgba(227,6,19,.18);color:var(--tp-red-dark);font-weight:950}.tp-status{margin:14px 0 0!important;color:#166534!important;font-weight:900}.tp-hero h1{max-width:980px;margin:8px 0 12px;color:var(--tp-ink);font-size:clamp(2.7rem,7vw,5.7rem);line-height:.92;letter-spacing:-.07em}.tp-lead{font-size:clamp(1.22rem,2.5vw,1.55rem)!important;color:#1f2937!important;font-weight:850;margin:0 0 18px!important}.tp-description{max-width:880px;color:#475569!important;font-size:1.08rem!important;line-height:1.62;margin:18px 0 0!important}.tp-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.tp-actions.compact{margin-top:16px}.tp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:14px;text-decoration:none;font-weight:950;border:1px solid var(--tp-line);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.tp-btn:hover{transform:translateY(-1px);box-shadow:0 14px 32px rgba(18,24,38,.12)}.tp-btn.primary{background:var(--tp-red);border-color:var(--tp-red);color:#fff}.tp-btn.primary:hover{background:var(--tp-red-dark)}.tp-btn.secondary{background:#101827;border-color:#101827;color:#fff}.tp-btn.ghost{background:#fff;color:var(--tp-ink)}
.tp-promo-card{padding:30px;background:linear-gradient(155deg,#111827 0%,#1f2937 62%,#3b0b12 100%);color:#fff;display:flex;flex-direction:column;gap:14px}.tp-promo-card span{align-self:flex-start;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);color:#fecaca;font-weight:950}.tp-promo-card strong{font-size:clamp(2.8rem,6vw,4.8rem);line-height:.92;letter-spacing:-.065em;color:#fff}.tp-promo-card h2{font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.02;letter-spacing:-.045em;margin:0;color:#fff}.tp-promo-card p{margin:0;color:#e5e7eb;line-height:1.55}.tp-promo-card ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.tp-promo-card li{position:relative;padding-left:24px;color:#f3f4f6}.tp-promo-card li:before{content:"✓";position:absolute;left:0;top:0;color:#86efac;font-weight:950}.tp-promo-card .tp-btn{margin-top:auto}
.tp-condition-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:10px 0 24px}.tp-condition-strip article{border:1px solid var(--tp-line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(18,24,38,.055);padding:16px;min-height:64px;display:flex;align-items:center}.tp-condition-strip strong{font-size:.98rem;color:var(--tp-ink);letter-spacing:-.015em}.tp-section-title{text-align:center;max-width:850px;margin:0 auto 24px}.tp-section-title h2,.tp-center-intro h2,.tp-location h2,.tp-available h2,.tp-why-now h2{font-size:clamp(2rem,4.8vw,3.6rem);line-height:1.02;letter-spacing:-.055em;color:var(--tp-ink);margin:8px 0 12px}.tp-section-title p,.tp-center-intro p,.tp-location p,.tp-available p,.tp-why-now p{color:var(--tp-muted);line-height:1.62}.tp-center-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:22px;align-items:stretch}.tp-center-intro>div,.tp-center-intro>aside,.tp-location article{background:#fff;border:1px solid var(--tp-line);border-radius:var(--tp-radius);box-shadow:var(--tp-shadow);padding:28px}.tp-center-intro aside{display:flex;flex-direction:column;gap:10px}.tp-center-intro aside strong{font-size:2.2rem;color:var(--tp-red);letter-spacing:-.045em}.tp-center-intro aside span{color:#64748b;font-weight:800}.tp-center-intro aside .tp-btn{margin-top:auto}
.tp-size-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tp-size-grid article{background:#fff;border:1px solid var(--tp-line);border-radius:22px;box-shadow:0 14px 38px rgba(18,24,38,.06);padding:24px;display:flex;flex-direction:column;gap:12px}.tp-size-grid strong{font-size:1.45rem;color:var(--tp-red)}.tp-size-grid p{color:var(--tp-muted);line-height:1.55;margin:0}.tp-size-grid a{margin-top:auto;color:var(--tp-red-dark);font-weight:950;text-decoration:none}.tp-location{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px}.tp-stock-summary{background:linear-gradient(135deg,#fff,#fff7f7)!important}.tp-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.tp-mini-stats div{background:#fff;border:1px solid var(--tp-line);border-radius:16px;padding:16px}.tp-mini-stats small{display:block;color:#64748b;font-weight:800}.tp-mini-stats strong{display:block;color:var(--tp-ink);font-size:1.35rem;margin-top:4px}.tp-available-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:end;margin-bottom:18px}.tp-filter-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.tp-filter-pills span{border:1px solid var(--tp-line);background:#fff;border-radius:999px;padding:8px 12px;color:#475569;font-size:.86rem;font-weight:900}.tp-unit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.tp-unit-card{background:#fff;border:1px solid var(--tp-line);border-radius:22px;box-shadow:0 16px 42px rgba(18,24,38,.065);padding:20px;display:flex;flex-direction:column;gap:12px;min-height:310px}.tp-unit-card.open{border-color:rgba(22,163,74,.25)}.tp-unit-card.soon{border-color:rgba(217,119,6,.28)}.tp-unit-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.tp-unit-top h3{margin:0;color:var(--tp-ink);font-size:1.35rem;letter-spacing:-.035em}.tp-unit-top p{margin:4px 0 0!important;color:#64748b!important;font-size:.82rem!important;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.tp-unit-top span{white-space:nowrap;background:#dcfce7;color:#166534;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:950}.tp-unit-card.soon .tp-unit-top span{background:#fef3c7;color:#92400e}.tp-unit-address{margin:0!important;color:#475569!important;font-weight:750}.tp-unit-tags{display:flex;flex-wrap:wrap;gap:8px}.tp-unit-tags span{border:1px solid var(--tp-line);background:var(--tp-soft);border-radius:999px;padding:8px 10px;font-size:.84rem;font-weight:850;color:#475569}.tp-unit-copy{color:#64748b!important;line-height:1.55;margin:0!important}.tp-unit-price{margin-top:auto;display:flex;align-items:baseline;gap:7px}.tp-unit-price small{color:#64748b;font-weight:850}.tp-unit-price strong{color:var(--tp-red);font-size:1.85rem;letter-spacing:-.045em}.tp-unit-price em{font-style:normal;color:#64748b;font-weight:800}.tp-unit-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.tp-unit-actions a{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border-radius:13px;border:1px solid var(--tp-line);text-decoration:none;color:var(--tp-ink);font-weight:950;font-size:.9rem;text-align:center}.tp-unit-actions a.reserve{background:var(--tp-red);border-color:var(--tp-red);color:#fff}.tp-unit-actions a.whatsapp{background:#111827;border-color:#111827;color:#fff}.tp-unit-map{font-size:.9rem;color:#64748b;text-decoration:none;font-weight:850}.tp-city-section{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;align-items:start}.tp-city-section nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.tp-city-section nav a{background:#fff;border:1px solid var(--tp-line);border-radius:18px;padding:18px;text-decoration:none;box-shadow:0 10px 30px rgba(18,24,38,.055);display:grid;gap:4px}.tp-city-section nav strong{color:var(--tp-ink)}.tp-city-section nav span{color:var(--tp-red);font-weight:900}.tp-why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tp-why-grid article{background:#fff;border:1px solid var(--tp-line);border-radius:22px;box-shadow:0 14px 38px rgba(18,24,38,.06);padding:24px}.tp-why-grid h3{color:var(--tp-ink);font-size:1.3rem;margin:0 0 8px}.tp-why-grid p{margin:0;color:var(--tp-muted);line-height:1.58}@media (max-width:980px){.tp-hero,.tp-center-intro,.tp-location,.tp-available-head,.tp-city-section{grid-template-columns:1fr}.tp-size-grid,.tp-why-grid{grid-template-columns:1fr}.tp-filter-pills{justify-content:flex-start}.tp-unit-actions{grid-template-columns:1fr}.tp-hero-copy,.tp-promo-card,.tp-center-intro>div,.tp-center-intro>aside,.tp-location article{border-radius:20px;padding:22px}.tp-hero h1{font-size:clamp(2.3rem,14vw,4.2rem)}}

/* v1.34.4 - fotos visibles en paginas publicas de centros */
.tp-center-photo { margin: 10px 0 14px; overflow: hidden; border-radius: 22px; border: 1px solid rgba(15,23,42,.10); background: #f8fafc; box-shadow: 0 16px 36px rgba(15,23,42,.12); }
.tp-center-photo img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.tp-center-photo figcaption { padding: 10px 14px; font-size: .9rem; color: #475569; background: #fff; }
.tp-center-photo-placeholder { margin: 10px 0 14px; padding: 22px; border-radius: 22px; border: 1px dashed rgba(15,23,42,.20); background: rgba(248,250,252,.85); color: #475569; }
.tp-center-photo-placeholder span { display: block; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #16a34a; margin-bottom: 6px; }
.tp-center-photo-placeholder strong { display: block; color: #0f172a; }
.trasterospub-center-page .center-gallery-section { margin-top: 26px; }
.trasterospub-center-page .center-gallery-section .section-head { margin-bottom: 18px; }
@media (max-width: 760px) { .tp-center-photo img { aspect-ratio: 16 / 11; } }

/* v1.34.5 - bloques públicos editables desde NmcContent */
.tp-editable-content{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:22px;box-shadow:0 14px 36px rgba(15,23,42,.06);color:#334155;line-height:1.65}.tp-editable-content p{margin:0 0 12px}.tp-editable-content p:last-child{margin-bottom:0}.tp-editable-content h2,.tp-editable-content h3{color:#0f172a;margin:0 0 10px;line-height:1.15}.tp-center-editable-section{display:grid;grid-template-columns:minmax(260px,.42fr) minmax(0,.58fr);gap:22px;align-items:start}.tp-section-title.left{text-align:left;margin:0}.tp-section-title.left p{color:#64748b}.tp-editable-condition-strip article{display:flex;flex-direction:column;gap:4px}.tp-editable-condition-strip article span{font-size:.86rem;color:#64748b;font-weight:600;line-height:1.35}.tp-editable-faq .tp-faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.tp-faq-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:22px;box-shadow:0 14px 36px rgba(15,23,42,.06)}.tp-faq-card h3{margin:0 0 10px;color:#0f172a;font-size:1.08rem}.tp-faq-card p{margin:0;color:#475569;line-height:1.6}.tp-editable-steps .tp-why-grid article{position:relative}@media(max-width:900px){.tp-center-editable-section{grid-template-columns:1fr}.tp-section-title.left{text-align:center}}

/* v1.34.6 - mas bloques editables comerciales */
.tp-editable-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;margin-bottom:8px;padding:18px 20px;border:1px solid rgba(220,38,38,.18);border-radius:24px;background:linear-gradient(135deg,#fff7f7,#ffffff);box-shadow:0 18px 44px rgba(15,23,42,.07)}
.tp-editable-banner div:first-child{display:grid;gap:4px}.tp-editable-banner span{display:inline-flex;align-self:flex-start;padding:7px 11px;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:.78rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.tp-editable-banner h2{margin:0;color:#0f172a;font-size:clamp(1.4rem,2.6vw,2.25rem);line-height:1.06;letter-spacing:-.04em}.tp-editable-banner p{margin:0;color:#475569;line-height:1.55}.tp-editable-card-section{padding-top:32px;padding-bottom:20px}.tp-editable-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tp-editable-card-grid article{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:22px;box-shadow:0 14px 36px rgba(15,23,42,.06)}.tp-editable-card-grid .tp-card-icon{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:16px;background:#fff1f2;color:#b91c1c;font-weight:950;margin-bottom:12px}.tp-editable-card-grid h3{margin:0 0 8px;color:#0f172a;font-size:1.22rem;letter-spacing:-.025em}.tp-editable-card-grid p{margin:0;color:#64748b;line-height:1.58}.tp-editable-final-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:28px;margin-bottom:30px;padding:30px;border-radius:28px;background:linear-gradient(135deg,#111827,#2b1118);color:#fff;box-shadow:0 24px 70px rgba(15,23,42,.16)}.tp-editable-final-cta h2{margin:8px 0 8px;color:#fff;font-size:clamp(2rem,4vw,3.3rem);line-height:1.03;letter-spacing:-.05em}.tp-editable-final-cta p{margin:0;color:#e5e7eb;line-height:1.6}.tp-editable-final-cta .eyebrow{color:#fecaca}.tp-editable-final-cta .tp-btn.ghost,.tp-editable-final-cta .tp-btn.secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#fff}.tp-final-cta-center{margin-bottom:8px}.tp-editable-center-faq .tp-faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.tp-center-usecases-editable{background:linear-gradient(180deg,rgba(248,250,252,.65),rgba(255,255,255,0));border-radius:32px}.tp-center-trust-editable .tp-editable-card-grid article{border-color:rgba(22,163,74,.15)}@media(max-width:980px){.tp-editable-banner,.tp-editable-final-cta{display:block}.tp-editable-banner .tp-actions,.tp-editable-final-cta .tp-actions{margin-top:16px}.tp-editable-card-grid{grid-template-columns:1fr}.tp-editable-banner,.tp-editable-final-cta{border-radius:22px;padding:22px}}

/* v1.34.7 - mas edicion comercial publica */
.tp-size-grid-editable article i{display:inline-flex;width:46px;height:46px;align-items:center;justify-content:center;border-radius:16px;background:#fff1f2;color:#b91c1c;font-style:normal;font-size:1.45rem;margin-bottom:2px}.tp-size-grid-editable article span{display:inline-flex;align-self:flex-start;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.82rem;font-weight:900;padding:7px 10px}.tp-size-help-banner{margin-top:0;margin-bottom:18px}.tp-comparison-block .tp-editable-card-grid article:last-child{border-color:rgba(22,163,74,.22);background:linear-gradient(135deg,#fff,#f0fdf4)}.tp-filter-pills-editable span{cursor:default}.nmc-floating-cta{position:fixed;left:50%;bottom:18px;z-index:60;transform:translateX(-50%);width:min(920px,calc(100% - 28px));display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:22px;background:rgba(15,23,42,.96);color:#fff;box-shadow:0 24px 80px rgba(15,23,42,.28);backdrop-filter:blur(12px)}.nmc-floating-cta strong{display:block;color:#fff;font-size:1rem;letter-spacing:-.02em}.nmc-floating-cta span{display:block;color:#cbd5e1;font-size:.9rem;margin-top:2px}.nmc-floating-cta nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.nmc-floating-cta a{display:inline-flex;min-height:40px;align-items:center;justify-content:center;border-radius:13px;border:1px solid rgba(255,255,255,.18);padding:0 13px;color:#fff;text-decoration:none;font-weight:950;white-space:nowrap}.nmc-floating-cta a.primary{background:#e30613;border-color:#e30613}.footer{padding-bottom:96px}@media(max-width:720px){.nmc-floating-cta{left:12px;right:12px;bottom:12px;width:auto;transform:none;display:grid;gap:10px;border-radius:18px}.nmc-floating-cta nav{display:grid;grid-template-columns:1fr 1fr}.nmc-floating-cta a{min-height:42px}.footer{padding-bottom:142px}}@media print{.nmc-floating-cta{display:none!important}.footer{padding-bottom:0}}

/* v1.34.9 - constructor de secciones públicas editables */
.tp-dynamic-section{position:relative}.tp-dynamic-banner,.tp-dynamic-cta{background:linear-gradient(135deg,#fff,#fff7ed);border:1px solid rgba(220,38,38,.14);border-radius:26px;box-shadow:0 20px 55px rgba(15,23,42,.08);margin-top:20px;margin-bottom:20px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.tp-dynamic-banner>div:first-child,.tp-dynamic-cta>div:first-child{max-width:780px}.tp-dynamic-banner span,.tp-dynamic-cta .eyebrow{display:inline-flex;background:#fee2e2;color:#991b1b;border-radius:999px;padding:6px 10px;font-weight:900;font-size:.78rem}.tp-dynamic-banner h2,.tp-dynamic-cta h2{margin:10px 0 8px;color:#0f172a;font-size:clamp(1.6rem,3vw,2.5rem);letter-spacing:-.035em;line-height:1.05}.tp-dynamic-banner p,.tp-dynamic-cta p{color:#475569;line-height:1.6}.tp-dynamic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.tp-dynamic-grid article{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:22px;box-shadow:0 18px 45px rgba(15,23,42,.06)}.tp-dynamic-grid h3{margin:12px 0 8px;color:#0f172a;font-size:1.22rem}.tp-dynamic-grid p{margin:0;color:#64748b;line-height:1.58}.tp-dynamic-icon,.tp-dynamic-number{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#fee2e2;color:#991b1b;font-weight:900}.tp-dynamic-number{background:#0f172a;color:white}.tp-dynamic-text{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:26px;box-shadow:0 18px 45px rgba(15,23,42,.06);padding:26px}.tp-dynamic-copy{color:#334155;line-height:1.7}.tp-dynamic-faq .tp-faq-card{background:#fff}@media(max-width:760px){.tp-dynamic-banner,.tp-dynamic-cta{display:block;border-radius:22px}.tp-dynamic-banner .tp-actions,.tp-dynamic-cta .tp-actions{margin-top:16px}.tp-dynamic-grid{grid-template-columns:1fr}}


/* v1.35.0 - legales editables y banner de cookies */
.legal-page-v1350 .legal-hero{background:linear-gradient(135deg,#111827,#2b1118);color:#fff;border-radius:28px;padding:clamp(26px,4vw,44px);box-shadow:0 24px 70px rgba(15,23,42,.18)}
.legal-page-v1350 .legal-hero h1{color:#fff;margin:10px 0;font-size:clamp(2.1rem,5vw,4rem);letter-spacing:-.055em;line-height:1.02}.legal-page-v1350 .legal-hero p{color:#e5e7eb;max-width:860px}.legal-page-v1350 .legal-hero .eyebrow{color:#fecaca}.legal-page-v1350 .legal-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:26px;box-shadow:0 20px 55px rgba(15,23,42,.08);padding:clamp(22px,4vw,42px);margin-top:22px}.legal-page-v1350 .legal-card h2{color:#0f172a;font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.08;letter-spacing:-.03em;margin:28px 0 10px}.legal-page-v1350 .legal-card h2:first-child{margin-top:0}.legal-page-v1350 .legal-card p,.legal-page-v1350 .legal-card li{color:#334155;line-height:1.72}.legal-page-v1350 .legal-card a{color:#dc2626;font-weight:800}.legal-page-v1350 .legal-card code{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:2px 6px;color:#0f172a}.legal-data-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;list-style:none;margin:18px 0 24px;padding:0}.legal-data-list li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:14px}.legal-data-list strong{display:block;color:#0f172a;margin-bottom:4px}.nmc-cookie-consent{position:fixed;left:50%;bottom:104px;z-index:80;transform:translateX(-50%);width:min(980px,calc(100% - 28px));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;background:rgba(15,23,42,.98);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:24px;box-shadow:0 28px 90px rgba(15,23,42,.38);padding:18px;backdrop-filter:blur(14px)}.nmc-cookie-consent.is-hidden{display:none!important}.nmc-cookie-copy strong{display:block;color:#fff;font-size:1.05rem;margin-bottom:5px}.nmc-cookie-copy p{margin:0;color:#cbd5e1;line-height:1.5;font-size:.94rem}.nmc-cookie-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.nmc-cookie-btn,.nmc-cookie-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:13px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-weight:900;padding:0 13px;cursor:pointer;font-family:inherit}.nmc-cookie-btn.primary{background:#e30613;border-color:#e30613}.nmc-cookie-link{color:#fecaca}@media(max-width:760px){.nmc-cookie-consent{left:12px;right:12px;bottom:148px;width:auto;transform:none;grid-template-columns:1fr;border-radius:20px}.nmc-cookie-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}.nmc-cookie-btn,.nmc-cookie-link{width:100%}.legal-data-list{grid-template-columns:1fr}}@media print{.nmc-cookie-consent{display:none!important}}

/* v1.35.4 - conversión guiada y reserva rápida por centro */
.tp-need-wizard{padding-top:18px;padding-bottom:22px}.tp-need-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.tp-need-grid article{position:relative;display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:24px;box-shadow:0 18px 48px rgba(15,23,42,.07);overflow:hidden}.tp-need-grid article:after{content:"";position:absolute;right:-42px;top:-42px;width:110px;height:110px;border-radius:999px;background:rgba(227,6,19,.07)}.tp-need-grid span{width:48px;height:48px;display:grid;place-items:center;border-radius:18px;background:#fff1f2;color:#b91c1c;font-weight:950;font-size:1.35rem}.tp-need-grid h3{margin:4px 0 0;color:#0f172a;font-size:1.28rem;line-height:1.1;letter-spacing:-.025em}.tp-need-grid p{margin:0;color:#64748b;line-height:1.58}.tp-need-grid a{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:14px;background:#0f172a;color:#fff;text-decoration:none;font-weight:950;padding:0 14px}.tp-need-grid a:hover{background:#dc2626}.tp-center-assistant{padding-top:22px}.tp-center-assistant .tp-section-title{max-width:900px}.tp-center-assistant-grid article{border-color:rgba(220,38,38,.12)}.tp-center-reserve-strip{position:sticky;bottom:14px;z-index:30;margin-top:8px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid rgba(15,23,42,.10);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 20px 70px rgba(15,23,42,.18);backdrop-filter:blur(14px)}.tp-center-reserve-strip div{display:grid;gap:2px}.tp-center-reserve-strip span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#b91c1c;font-weight:950}.tp-center-reserve-strip strong{color:#0f172a;font-size:1.15rem;letter-spacing:-.02em}.tp-center-reserve-strip small{color:#64748b;font-weight:800}.tp-center-reserve-strip nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tp-center-reserve-strip a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;border-radius:14px;border:1px solid rgba(15,23,42,.12);text-decoration:none;color:#0f172a;font-weight:950;background:#fff}.tp-center-reserve-strip a.primary{background:#dc2626;border-color:#dc2626;color:#fff}@media(max-width:760px){.tp-need-grid{grid-template-columns:1fr}.tp-center-reserve-strip{bottom:74px;display:grid;grid-template-columns:1fr;border-radius:20px}.tp-center-reserve-strip nav{display:grid;grid-template-columns:1fr 1fr}.tp-center-reserve-strip a{width:100%}}

/* v1.35.5 - pulido jefe marketing: navegacion comoda y textos de produccion */
.nmc-comfort-nav{position:sticky;top:78px;z-index:24;margin-top:14px;margin-bottom:18px;display:flex;align-items:center;gap:8px;overflow-x:auto;padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 14px 45px rgba(15,23,42,.08);backdrop-filter:blur(14px);scrollbar-width:none}.nmc-comfort-nav::-webkit-scrollbar{display:none}.nmc-comfort-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border-radius:14px;border:1px solid rgba(15,23,42,.08);background:#fff;color:#0f172a;text-decoration:none;font-size:.92rem;font-weight:950;white-space:nowrap}.nmc-comfort-nav a:hover,.nmc-comfort-nav a:focus-visible{background:#fee2e2;border-color:rgba(220,38,38,.20);color:#991b1b;outline:0}.nmc-comfort-nav a:first-child{background:#dc2626;border-color:#dc2626;color:#fff}.trasterospub-page .tp-section-title p,.trasterospub-page .section-head p{max-width:780px}.tp-need-grid article,.tp-unit-card,.tp-editable-card-grid article,.tp-faq-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.tp-need-grid article:hover,.tp-unit-card:hover,.tp-editable-card-grid article:hover,.tp-faq-card:hover{transform:translateY(-2px);box-shadow:0 22px 58px rgba(15,23,42,.10);border-color:rgba(220,38,38,.16)}.tp-actions a,.hero-actions a,.header-actions-v18 a,.nmc-floating-cta a,.mobile-cta-bar a{transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.tp-actions a:hover,.hero-actions a:hover,.header-actions-v18 a:hover,.nmc-floating-cta a:hover,.mobile-cta-bar a:hover{transform:translateY(-1px)}.tp-editable-banner .tp-actions,.tp-editable-final-cta .tp-actions,.tp-center-reserve-strip nav{align-items:center}.page-centros .tp-hero,.trasterospub-center-page .tp-hero{scroll-margin-top:110px}#centros-disponibles,#tamanos-disponibles,#trasteros-disponibles,#preguntas-frecuentes{scroll-margin-top:118px}@media(max-width:980px){.nmc-comfort-nav{top:72px;margin-left:12px;margin-right:12px;border-radius:18px}.nmc-comfort-nav a{min-height:40px}}@media(max-width:760px){.nmc-comfort-nav{top:62px;padding:8px;margin-top:8px;margin-bottom:12px}.nmc-comfort-nav a{font-size:.86rem;padding:0 11px}.trasterospub-page .tp-hero{gap:14px}.tp-need-grid article,.tp-unit-card,.tp-editable-card-grid article,.tp-faq-card{border-radius:20px}}

/* v1.35.6 - UX pública más intuitiva y sin duplicar señales */
html{scroll-behavior:smooth}.tp-unit-card-next-step,.tp-unit-card-help{min-height:auto}.tp-unit-card-help{background:linear-gradient(135deg,#fff,#f8fafc)}.tp-unit-actions.single{grid-template-columns:1fr}.tp-unit-actions.single a{grid-column:1/-1}.tp-available .tp-unit-grid:has(.tp-unit-card-next-step){grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.tp-location{scroll-margin-top:118px}.nmc-comfort-nav{max-width:min(1120px,calc(100% - 32px));justify-content:flex-start}.nmc-comfort-nav a{min-width:max-content}.tp-section-title p,.tp-available-head p,.tp-location p{max-width:760px}.tp-center-reserve-strip{max-width:1120px}.tp-center-reserve-strip small{line-height:1.35}@media(max-width:760px){.tp-unit-actions.single{grid-template-columns:1fr}.nmc-comfort-nav{position:sticky;top:62px;margin-left:12px;margin-right:12px}.tp-center-reserve-strip nav{grid-template-columns:1fr}.tp-center-reserve-strip a{min-height:46px}}

/* v1.35.7 - CTAs de reserva directos al portal de cada centro */

/* v1.35.8 - flujo de solicitud claro inspirado en landing de servicios: comodo, sin duplicar formularios */
.nmc-guided-request{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);gap:22px;align-items:stretch;padding-top:20px;padding-bottom:22px}
.nmc-guided-copy,.nmc-guided-form{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:28px;box-shadow:0 22px 58px rgba(15,23,42,.08)}
.nmc-guided-copy{padding:30px;background:linear-gradient(145deg,#fff,#fff7f7)}
.nmc-guided-copy h2{margin:10px 0 12px;color:#0f172a;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.03;letter-spacing:-.045em}
.nmc-guided-copy p{margin:0;color:#475569;line-height:1.65;font-size:1.04rem}
.nmc-guided-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.nmc-guided-badges span{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;background:#fee2e2;color:#991b1b;font-size:.82rem;font-weight:950;padding:0 11px}
.nmc-guided-form{padding:22px;display:grid;gap:14px}
.nmc-guided-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.nmc-guided-fields input,.nmc-guided-fields select,.nmc-guided-fields textarea{width:100%;border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc;color:#0f172a;font:inherit;min-height:48px;padding:0 13px;outline:0;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.nmc-guided-fields textarea{grid-column:1/-1;min-height:88px;padding-top:12px;resize:vertical}
.nmc-guided-fields input:focus,.nmc-guided-fields select:focus,.nmc-guided-fields textarea:focus{border-color:rgba(220,38,38,.45);box-shadow:0 0 0 4px rgba(220,38,38,.08);background:#fff}
.nmc-guided-readonly{display:grid;gap:2px;border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc;padding:8px 13px;min-height:48px}
.nmc-guided-readonly span{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:900}.nmc-guided-readonly strong{color:#0f172a;line-height:1.1}
.nmc-guided-consent{display:flex;align-items:flex-start;gap:9px;color:#475569;font-size:.92rem;line-height:1.45}.nmc-guided-consent input{margin-top:3px;accent-color:#dc2626}
.nmc-guided-form .tp-btn{width:100%;border:0;cursor:pointer;min-height:50px;font-size:1rem}.nmc-guided-note{margin:0;color:#64748b;font-size:.9rem;line-height:1.55;background:#f8fafc;border:1px solid #e2e8f0;border-radius:15px;padding:12px}
.tp-why-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.tp-why-grid article{min-height:100%}.header-cta-v18,.mobile-cta-v17 a:first-child{background:#dc2626;color:#fff!important}
@media(max-width:920px){.nmc-guided-request{grid-template-columns:1fr}.nmc-guided-copy,.nmc-guided-form{border-radius:22px}.nmc-guided-fields{grid-template-columns:1fr}.nmc-guided-fields textarea{grid-column:auto}}
@media(max-width:640px){.nmc-guided-request{padding-top:8px;padding-bottom:12px}.nmc-guided-copy,.nmc-guided-form{padding:20px}.nmc-guided-copy h2{font-size:2rem}.nmc-guided-badges span{font-size:.78rem}}

/* v1.35.9 - experiencia publica simple y comoda */
.nmc-simple-public .tp-hero{padding-top:24px;padding-bottom:16px}.nmc-simple-public .tp-hero-copy{background:linear-gradient(135deg,#fff,#fff8f8);box-shadow:0 14px 38px rgba(15,23,42,.06)}.nmc-simple-public .tp-hero h1{font-size:clamp(2.35rem,5.8vw,4.75rem);line-height:.96}.nmc-simple-public .tp-lead{max-width:820px}.nmc-simple-public .tp-description{max-width:760px;color:#5b6676!important}.nmc-simple-public .tp-promo-card{box-shadow:0 14px 38px rgba(15,23,42,.08)}.nmc-simple-public .tp-promo-card strong{font-size:clamp(2.4rem,5vw,4rem)}.nmc-simple-public .section{padding-top:34px;padding-bottom:34px}.nmc-simple-public .tp-section-title{margin-bottom:18px}.nmc-simple-public .tp-section-title h2,.nmc-simple-public .tp-center-intro h2,.nmc-simple-public .tp-location h2,.nmc-simple-public .tp-available h2{font-size:clamp(1.75rem,3.8vw,2.9rem)}.nmc-simple-public .nmc-comfort-nav{position:relative;top:auto;box-shadow:none;background:#fff;margin-top:8px;margin-bottom:10px}.nmc-simple-public .tp-condition-strip{padding-top:6px;padding-bottom:12px}.nmc-simple-public .tp-condition-strip article{box-shadow:none;background:#fff}.nmc-simple-public .nmc-guided-request{margin-top:16px;margin-bottom:8px}.nmc-simple-public .nmc-guided-copy,.nmc-simple-public .nmc-guided-form{box-shadow:0 14px 38px rgba(15,23,42,.06)}.nmc-simple-public .tp-size-grid article,.nmc-simple-public .tp-unit-card,.nmc-simple-public .tp-center-intro>div,.nmc-simple-public .tp-center-intro>aside,.nmc-simple-public .tp-location article{box-shadow:0 12px 34px rgba(15,23,42,.055)}.nmc-simple-next-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:18px;align-items:stretch}.nmc-simple-next-copy,.nmc-simple-next-actions{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:26px;box-shadow:0 16px 44px rgba(15,23,42,.065);padding:26px}.nmc-simple-next-copy h2{margin:8px 0 10px;color:#0f172a;font-size:clamp(1.9rem,3.7vw,3rem);line-height:1.03;letter-spacing:-.045em}.nmc-simple-next-copy p{margin:0;color:#475569;line-height:1.65;max-width:820px}.nmc-simple-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.nmc-simple-facts span{display:grid;gap:4px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;padding:12px;color:#0f172a;font-weight:850}.nmc-simple-facts strong{display:block;color:#64748b;text-transform:uppercase;letter-spacing:.07em;font-size:.72rem}.nmc-simple-next-actions{display:flex;flex-direction:column;justify-content:center;gap:10px}.nmc-simple-next-actions .tp-btn{width:100%}.nmc-simple-center .tp-center-reserve-strip{display:none}@media(max-width:900px){.nmc-simple-next-step,.nmc-simple-facts{grid-template-columns:1fr}.nmc-simple-public .tp-hero{grid-template-columns:1fr}.nmc-simple-public .tp-promo-card{order:2}.nmc-simple-public .tp-actions{display:grid;grid-template-columns:1fr}.nmc-simple-public .tp-btn{width:100%}}@media(max-width:760px){.nmc-simple-public .section{padding-top:24px;padding-bottom:24px}.nmc-simple-public .tp-hero h1{font-size:clamp(2.05rem,12vw,3.35rem)}.nmc-simple-public .nmc-comfort-nav{margin-left:12px;margin-right:12px}.nmc-simple-next-copy,.nmc-simple-next-actions{border-radius:22px;padding:20px}.nmc-simple-facts span{padding:11px}.nmc-simple-public .tp-promo-card ul{gap:8px}}

/* v1.36.0 - modo publico directo: menos pasos, mas decision */
.nmc-direct-public .tp-hero{padding-top:28px;padding-bottom:18px}
.nmc-direct-public .tp-hero-copy h1{max-width:780px}
.nmc-direct-public .tp-description{max-width:720px}
.nmc-direct-public .tp-actions{gap:10px}
.nmc-direct-public .tp-available{padding-top:26px}
.nmc-direct-public .tp-available-head{align-items:end;gap:18px}
.nmc-direct-public .tp-available-head h2{margin-bottom:6px}
.nmc-direct-public .tp-available-head p{max-width:720px}
.nmc-direct-public .tp-unit-grid{margin-top:18px}
.nmc-direct-public .tp-unit-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.nmc-direct-public .tp-unit-card:hover{transform:translateY(-2px);box-shadow:0 18px 44px rgba(15,23,42,.10);border-color:rgba(220,38,38,.18)}
.nmc-direct-public .tp-unit-actions{gap:8px}
.nmc-direct-public .tp-unit-actions a{white-space:nowrap}
.nmc-direct-public .center-gallery-section{padding-top:26px}
.nmc-direct-public .center-gallery-section .section-head{margin-bottom:18px}
.nmc-direct-public .nmc-simple-next-step{margin-top:24px;margin-bottom:34px}
.nmc-direct-public .tp-location{padding-top:24px}
.nmc-direct-public .tp-condition-strip{margin-top:14px;margin-bottom:6px}
.nmc-direct-public .tp-condition-strip article{padding:14px 16px}
@media (max-width:760px){.nmc-direct-public .tp-hero{padding-top:16px}.nmc-direct-public .tp-actions .tp-btn{width:100%;justify-content:center}.nmc-direct-public .tp-available-head{display:block}.nmc-direct-public .tp-available-head .tp-btn{margin-top:12px;width:100%;justify-content:center}.nmc-direct-public .tp-unit-actions{display:grid}.nmc-direct-public .tp-unit-actions a{width:100%;text-align:center}.nmc-direct-public .tp-promo-card ul{display:none}}

/* v1.36.3 - fix coordenadas y chinchetas visibles en mapa de centros */
.nmc-direct-public .nmc-centers-head-simple{align-items:center;margin-bottom:20px}.nmc-direct-public .nmc-centers-head-simple h2{font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.02;letter-spacing:-.055em}.nmc-centers-finder{display:block}.nmc-centers-finder.has-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,430px);gap:22px;align-items:start}.nmc-centers-list-simple{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}.nmc-center-card-simple{min-height:0;padding:22px;border-radius:24px;box-shadow:0 14px 36px rgba(15,23,42,.06);gap:12px}.nmc-center-card-simple .tp-unit-top h3{font-size:1.42rem}.nmc-center-card-simple .tp-unit-top p{font-size:.78rem!important;line-height:1.25}.nmc-center-card-simple .tp-unit-address{font-size:.98rem;line-height:1.35}.nmc-center-card-simple .tp-unit-copy{font-size:.96rem;line-height:1.55;min-height:72px}.nmc-center-card-simple .tp-unit-tags{display:none}.nmc-center-card-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.nmc-center-card-simple .tp-unit-price{margin:0}.nmc-center-card-simple .tp-unit-price strong{font-size:1.95rem}.nmc-card-size{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.84rem;font-weight:900;padding:0 10px;white-space:nowrap}.nmc-card-actions-two{grid-template-columns:1.15fr .85fr}.nmc-card-actions-two a{min-height:46px}.nmc-card-actions-two a:first-child{order:1}.nmc-card-actions-two a:last-child{order:2}.nmc-card-actions-two a.whatsapp{background:#111827;border-color:#111827;color:#fff}.nmc-center-card-simple .tp-unit-map{margin-top:0;color:#64748b;font-size:.88rem}.nmc-centers-map-card{position:sticky;top:96px;border:1px solid rgba(15,23,42,.08);border-radius:28px;background:#fff;box-shadow:0 18px 48px rgba(15,23,42,.08);padding:18px;overflow:hidden}.nmc-map-head h3{margin:6px 0 6px;color:#0f172a;font-size:1.6rem;letter-spacing:-.04em}.nmc-map-head p{margin:0 0 14px!important;color:#64748b!important;line-height:1.45}.nmc-map-board{position:relative;min-height:330px;border-radius:24px;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(254,202,202,.9),transparent 25%),radial-gradient(circle at 82% 28%,rgba(219,234,254,.95),transparent 28%),linear-gradient(135deg,#eef6ff,#f8fafc 44%,#fff7f7);border:1px solid #e2e8f0}.nmc-map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(15,23,42,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.06) 1px,transparent 1px);background-size:52px 52px;opacity:.45}.nmc-map-pin{position:absolute;transform:translate(-50%,-100%);z-index:2;display:grid;place-items:center;text-decoration:none;color:#0f172a}.nmc-map-pin span{width:34px;height:34px;border-radius:999px;background:#dc2626;color:#fff;display:grid;place-items:center;font-weight:950;box-shadow:0 12px 24px rgba(220,38,38,.25);border:3px solid #fff}.nmc-map-pin span:after{content:"";position:absolute;left:50%;top:30px;transform:translateX(-50%) rotate(45deg);width:11px;height:11px;background:#dc2626;border-right:3px solid #fff;border-bottom:3px solid #fff}.nmc-map-pin strong{position:absolute;top:39px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:950;box-shadow:0 10px 22px rgba(15,23,42,.10);opacity:0;pointer-events:none;transition:opacity .15s ease, transform .15s ease}.nmc-map-pin:hover strong,.nmc-map-pin.is-active strong,.nmc-map-pin:focus-visible strong{opacity:1;transform:translateX(-50%) translateY(2px)}.nmc-map-pin.is-active span,.nmc-map-pin:hover span,.nmc-map-pin:focus-visible span{background:#111827;box-shadow:0 14px 28px rgba(15,23,42,.22)}.nmc-map-pin.is-active span:after,.nmc-map-pin:hover span:after,.nmc-map-pin:focus-visible span:after{background:#111827}.nmc-map-list{display:grid;gap:8px;margin-top:12px}.nmc-map-list article{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:10px 11px}.nmc-map-list strong{display:block;color:#0f172a;font-size:.95rem}.nmc-map-list span{display:block;color:#64748b;font-size:.82rem;margin-top:2px}.nmc-map-list a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:11px;background:#dc2626;color:#fff;text-decoration:none;font-size:.82rem;font-weight:950;padding:0 10px;white-space:nowrap}.nmc-map-note{margin:12px 0 0!important;color:#64748b!important;font-size:.82rem!important;line-height:1.45}.nmc-center-card-simple.is-active{border-color:rgba(220,38,38,.38)!important;box-shadow:0 20px 54px rgba(220,38,38,.12)!important}.nmc-map-list article.is-active{background:#fff;border-color:rgba(220,38,38,.26)}@media(max-width:1080px){.nmc-centers-finder.has-map{grid-template-columns:1fr}.nmc-centers-map-card{position:relative;top:auto;order:-1}.nmc-map-board{min-height:300px}}@media(max-width:760px){.nmc-direct-public .nmc-centers-head-simple{display:block}.nmc-direct-public .nmc-centers-head-simple .tp-btn{width:100%;margin-top:12px}.nmc-center-card-simple{border-radius:21px;padding:18px}.nmc-center-card-simple .tp-unit-copy{min-height:0}.nmc-center-card-foot{align-items:flex-start;flex-direction:column}.nmc-card-actions-two{grid-template-columns:1fr}.nmc-map-board{min-height:260px}.nmc-map-list article{display:grid}.nmc-map-list a{width:100%}.nmc-map-pin strong{display:none}}

/* v1.36.3 - chinchetas siempre visibles */
.nmc-map-pin{min-width:34px;min-height:46px}.nmc-map-pin span{position:relative}.nmc-map-board{isolation:isolate}.nmc-centers-map-card.is-empty .nmc-map-board{display:none}


/* v1.36.3 - mapa real tipo Google Maps, gratuito con Leaflet + OpenStreetMap */
.nmc-real-map-card{padding:18px;background:#fff}
.nmc-real-map{position:relative;min-height:390px;border-radius:24px;overflow:hidden;border:1px solid #e2e8f0;background:#e5edf6;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
.nmc-real-map .leaflet-container,.nmc-real-map.leaflet-container{font-family:inherit}
.nmc-real-map .leaflet-control-zoom a{color:#0f172a;text-decoration:none;font-weight:900}
.nmc-real-map .leaflet-popup-content-wrapper{border-radius:18px;box-shadow:0 18px 42px rgba(15,23,42,.18)}
.nmc-real-map .leaflet-popup-content{margin:14px;min-width:210px}
.nmc-leaflet-pin{background:transparent;border:0}
.nmc-leaflet-pin span{position:relative;display:block;width:34px;height:34px;border-radius:999px 999px 999px 0;background:#dc2626;transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 14px 26px rgba(220,38,38,.32)}
.nmc-leaflet-pin span:after{content:"";position:absolute;inset:8px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 4px #dc2626}
.nmc-map-popup{display:grid;gap:7px;color:#0f172a;font-size:.94rem}
.nmc-map-popup strong{font-size:1.04rem;line-height:1.2}
.nmc-map-popup span{color:#64748b;line-height:1.35}
.nmc-map-popup em{font-style:normal;color:#dc2626;font-weight:950}
.nmc-map-popup div{display:flex;gap:7px;flex-wrap:wrap;margin-top:4px}
.nmc-map-popup a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border-radius:11px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;text-decoration:none;font-size:.82rem;font-weight:950;padding:0 10px}
.nmc-map-popup a.primary{background:#dc2626;border-color:#dc2626;color:#fff}
.nmc-real-map-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:#64748b;font-weight:800;background:#f8fafc}
.nmc-map-list small{display:block;color:#dc2626;font-weight:950;margin-top:3px}
@media(max-width:760px){.nmc-real-map{min-height:320px;border-radius:20px}.nmc-real-map .leaflet-popup-content{min-width:190px}.nmc-real-map-card{padding:14px}}


/* v1.36.4 - comparador sencillo inspirado en buscadores de trasteros, sin copiar diseño */
.nmc-center-filters{margin:14px 0 22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,360px);gap:16px;align-items:end;border:1px solid rgba(15,23,42,.08);border-radius:28px;background:linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 14px 38px rgba(15,23,42,.055);padding:18px}.nmc-filter-copy h3{margin:5px 0 5px;color:#0f172a;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.08;letter-spacing:-.045em}.nmc-filter-copy p{margin:0!important;color:#64748b!important;max-width:720px;line-height:1.5}.nmc-filter-search{display:grid;gap:6px}.nmc-filter-search span{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:#64748b;font-weight:950}.nmc-filter-search input{width:100%;min-height:48px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;color:#0f172a;font-weight:850;padding:0 14px;outline:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}.nmc-filter-search input:focus{border-color:rgba(220,38,38,.45);box-shadow:0 0 0 4px rgba(220,38,38,.08)}.nmc-filter-chips{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.nmc-filter-chip{appearance:none;border:1px solid #e2e8f0;background:#fff;color:#334155;border-radius:999px;min-height:38px;padding:0 13px;font-weight:950;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.nmc-filter-chip:hover{transform:translateY(-1px);border-color:rgba(220,38,38,.24)}.nmc-filter-chip.is-active{background:#111827;border-color:#111827;color:#fff}.nmc-filter-result{grid-column:1/-1;margin:0!important;color:#64748b!important;font-size:.9rem!important;font-weight:850}.nmc-centers-empty{margin-top:16px;border:1px dashed rgba(220,38,38,.32);border-radius:24px;background:#fff7f7;padding:20px;color:#0f172a}.nmc-centers-empty strong{display:block;font-size:1.2rem;margin-bottom:4px}.nmc-centers-empty p{margin:0 0 12px!important;color:#64748b!important}.nmc-center-card-simple[hidden],.nmc-map-list article[hidden]{display:none!important}.nmc-card-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:-2px}.nmc-card-badge{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:0 9px;font-size:.74rem;font-weight:950}.nmc-card-badge.portal{background:#dcfce7;color:#166534}.nmc-card-badge.help{background:#eff6ff;color:#1d4ed8}.nmc-map-popup em{display:block;color:#dc2626;font-style:normal;font-weight:950;margin-top:4px}.nmc-map-popup div{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.nmc-map-popup a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border:1px solid #e2e8f0;border-radius:10px;padding:0 9px;text-decoration:none;color:#0f172a;font-weight:950}.nmc-map-popup a.primary{background:#dc2626;border-color:#dc2626;color:#fff}@media(max-width:900px){.nmc-center-filters{grid-template-columns:1fr}.nmc-filter-chips,.nmc-filter-result{grid-column:auto}.nmc-filter-search input{min-height:46px}}@media(max-width:640px){.nmc-center-filters{border-radius:22px;padding:15px}.nmc-filter-chip{min-height:36px;font-size:.86rem;padding:0 11px}.nmc-filter-copy h3{font-size:1.35rem}}

/* v1.36.5 - página de plano full de centros */
.nmc-centers-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.nmc-full-map-page{background:#f8fafc;color:#0f172a;min-height:70vh}
.nmc-full-map-shell{display:grid;grid-template-columns:minmax(340px,430px) minmax(0,1fr);min-height:calc(100vh - 92px);background:#f8fafc;border-top:1px solid rgba(15,23,42,.06)}
.nmc-full-map-panel{position:sticky;top:0;align-self:start;max-height:calc(100vh - 0px);overflow:auto;padding:22px;background:rgba(248,250,252,.98);border-right:1px solid rgba(15,23,42,.08);box-shadow:18px 0 46px rgba(15,23,42,.05);z-index:4}
.nmc-full-map-intro{display:grid;gap:10px;margin-bottom:16px}.nmc-full-map-intro h1{margin:0;font-size:clamp(1.8rem,3.3vw,2.7rem);letter-spacing:-.05em;line-height:1.02;color:#0f172a}.nmc-full-map-intro p{margin:0;color:#64748b;line-height:1.55}.nmc-full-map-intro>strong{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:8px 12px;background:#fee2e2;color:#991b1b;font-size:.86rem}.nmc-full-map-back{width:max-content;color:#0f172a;text-decoration:none;font-weight:900}.nmc-full-map-back:hover{text-decoration:underline}
.nmc-full-map-page .nmc-center-filters{margin:0 0 16px;padding:14px;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06)}.nmc-full-map-page .nmc-filter-copy{display:none}.nmc-full-map-page .nmc-filter-search span{font-size:.78rem}.nmc-full-map-page .nmc-filter-search input{min-height:44px}.nmc-full-map-page .nmc-filter-chips{gap:7px}.nmc-full-map-page .nmc-filter-chip{padding:8px 10px;font-size:.82rem}.nmc-full-map-page .nmc-filter-result{margin-bottom:0;font-size:.82rem;color:#64748b}
.nmc-full-map-list{display:grid;gap:10px;padding-bottom:24px}.nmc-full-map-center-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:15px;box-shadow:0 10px 28px rgba(15,23,42,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.nmc-full-map-center-card:hover,.nmc-full-map-center-card.is-active{transform:translateY(-2px);border-color:rgba(220,38,38,.36);box-shadow:0 16px 36px rgba(220,38,38,.12)}.nmc-full-map-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.nmc-full-map-card-top strong{display:block;color:#0f172a;font-size:1.05rem}.nmc-full-map-card-top span:not(.nmc-full-map-badge){display:block;color:#64748b;font-size:.9rem;margin-top:2px}.nmc-full-map-badge{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:900}.nmc-full-map-badge.portal{background:#dcfce7;color:#166534}.nmc-full-map-badge.help{background:#eff6ff;color:#1d4ed8}.nmc-full-map-center-card p{margin:10px 0;color:#475569;font-size:.92rem;line-height:1.45}.nmc-full-map-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 12px;color:#64748b;font-size:.84rem}.nmc-full-map-card-meta b{color:#991b1b}.nmc-full-map-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.nmc-full-map-card-actions a{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:42px;border-radius:13px;text-decoration:none;font-weight:900;border:1px solid rgba(15,23,42,.1);color:#0f172a;background:#fff}.nmc-full-map-card-actions a.primary{background:#dc2626;color:#fff;border-color:#dc2626}.nmc-full-map-card-actions a:hover{filter:brightness(.98);transform:translateY(-1px)}
.nmc-full-map-canvas-wrap{position:sticky;top:0;height:calc(100vh - 0px);min-height:720px;background:#e2e8f0;z-index:1}.nmc-full-map-canvas{height:100%;min-height:720px;width:100%;border-radius:0;border:0;box-shadow:none}.nmc-full-map-toolbar{position:absolute;top:18px;right:18px;z-index:500;display:flex;gap:8px;flex-wrap:wrap}.nmc-full-map-toolbar a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:999px;background:#fff;color:#0f172a;text-decoration:none;font-weight:900;box-shadow:0 10px 30px rgba(15,23,42,.16);border:1px solid rgba(15,23,42,.08)}.nmc-full-map-empty{margin-top:12px}.page-mapa-centros .footer,.page-mapa-centros .sticky-wa{display:none}
@media(max-width:1100px){.nmc-full-map-shell{grid-template-columns:380px minmax(0,1fr)}.nmc-full-map-panel{padding:16px}.nmc-full-map-card-actions{grid-template-columns:1fr}}
@media(max-width:860px){.nmc-full-map-shell{display:flex;flex-direction:column}.nmc-full-map-canvas-wrap{order:1;position:relative;height:58vh;min-height:420px}.nmc-full-map-canvas{height:58vh;min-height:420px}.nmc-full-map-panel{order:2;position:relative;max-height:none;border-right:0;border-top:1px solid rgba(15,23,42,.08);box-shadow:0 -18px 46px rgba(15,23,42,.05)}.nmc-full-map-toolbar{top:12px;right:12px}.nmc-full-map-page .nmc-center-filters{position:relative}.nmc-full-map-list{grid-template-columns:1fr}.page-mapa-centros .mobile-cta-bar{display:flex}}
@media(max-width:560px){.nmc-centers-head-actions{width:100%;justify-content:stretch}.nmc-centers-head-actions .tp-btn{flex:1 1 100%}.nmc-full-map-panel{padding:13px}.nmc-full-map-intro h1{font-size:1.85rem}.nmc-full-map-canvas-wrap,.nmc-full-map-canvas{height:54vh;min-height:360px}.nmc-full-map-toolbar{left:10px;right:10px;justify-content:space-between}.nmc-full-map-toolbar a{flex:1}.nmc-full-map-page .nmc-filter-chips{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.nmc-full-map-page .nmc-filter-chip{white-space:nowrap}.nmc-full-map-center-card{border-radius:17px}}


/* v1.36.6 - ficha de centro más cómoda + mapa full estable */
.nmc-center-comfort-summary{margin-top:18px;margin-bottom:24px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);border-radius:28px;padding:24px;box-shadow:0 18px 50px rgba(15,23,42,.07)}
.nmc-center-comfort-head{display:grid;gap:7px;margin-bottom:18px}.nmc-center-comfort-head h2{margin:0;color:#0f172a;font-size:clamp(1.55rem,3vw,2.35rem);letter-spacing:-.04em;line-height:1.06}.nmc-center-comfort-head p{margin:0;color:#64748b;line-height:1.55;max-width:850px}
.nmc-center-comfort-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.nmc-center-comfort-grid article{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:16px;min-height:120px}.nmc-center-comfort-grid small{display:block;color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.nmc-center-comfort-grid strong{display:block;margin:8px 0 4px;color:#0f172a;font-size:1.18rem;line-height:1.16}.nmc-center-comfort-grid span{display:block;color:#64748b;font-size:.92rem;line-height:1.4}.nmc-center-comfort-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.nmc-center-comfort-actions .tp-btn{min-height:44px}.nmc-center-comfort-note{margin:12px 0 0;color:#64748b;font-size:.92rem}
.nmc-full-map-page .nmc-real-map.is-empty{display:grid;place-items:center}.nmc-real-map-empty{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:20px;padding:18px;box-shadow:0 12px 35px rgba(15,23,42,.12);color:#0f172a;font-weight:800;text-align:center;max-width:360px}.nmc-full-map-page .leaflet-container{font-family:inherit}.nmc-map-popup{min-width:190px}.nmc-map-popup strong{display:block;color:#0f172a;font-size:1rem}.nmc-map-popup span,.nmc-map-popup em{display:block;margin-top:4px;color:#64748b}.nmc-map-popup div{display:flex;gap:7px;margin-top:10px}.nmc-map-popup a{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:8px 10px;text-decoration:none;font-weight:900;border:1px solid rgba(15,23,42,.12);color:#0f172a;background:#fff}.nmc-map-popup a.primary{background:#dc2626;color:#fff;border-color:#dc2626}.nmc-leaflet-pin span{display:block;width:30px;height:30px;border-radius:999px 999px 999px 4px;background:#dc2626;transform:rotate(-45deg);box-shadow:0 10px 24px rgba(220,38,38,.32);border:3px solid #fff}.nmc-leaflet-pin span:after{content:"";position:absolute;inset:8px;border-radius:999px;background:#fff}
@media(max-width:980px){.nmc-center-comfort-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nmc-center-comfort-summary{border-radius:22px;padding:18px}.nmc-center-comfort-actions .tp-btn{flex:1 1 180px}}
@media(max-width:560px){.nmc-center-comfort-grid{grid-template-columns:1fr}.nmc-center-comfort-actions{display:grid}.nmc-center-comfort-actions .tp-btn{width:100%}.nmc-center-comfort-head h2{font-size:1.55rem}}


/* v1.36.9 - busqueda por cercania y plano en paginas de ciudad */
.nmc-center-card-simple.is-nearest,
.nmc-full-map-center-card.is-nearest,
.nmc-map-list article.is-nearest {
  border-color: rgba(220,38,38,.52)!important;
  box-shadow: 0 18px 44px rgba(220,38,38,.16)!important;
  position: relative;
}
.nmc-center-card-simple.is-nearest::before,
.nmc-full-map-center-card.is-nearest::before,
.nmc-map-list article.is-nearest::before {
  content: "Más cercano a tu búsqueda";
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: calc(100% - 20px);
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: #111827;
  color: #fff;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .02em;
  margin: 0 0 10px 0;
}
.nmc-city-map-section .nmc-centers-map-card {max-width: 100%;}
.nmc-city-map-section .nmc-real-map {min-height: 420px;}
.nmc-city-map-section .nmc-map-list {max-height: 340px;overflow: auto;}
.nmc-city-map-section .nmc-map-head p {max-width: 680px;}
@media(max-width:760px){.nmc-city-map-section .nmc-real-map{min-height:360px}.nmc-city-map-section .nmc-map-list{max-height:none}}

/* v1.37.0 - marcadores de precio estilo portal de reserva */
.nmc-real-map .nmc-leaflet-price-pin{background:transparent;border:0;filter:drop-shadow(0 14px 18px rgba(15,23,42,.18))}
.nmc-real-map .nmc-leaflet-price-pin .nmc-map-price-pill{position:absolute;left:50%;top:0;transform:translateX(-50%);display:inline-flex;align-items:center;justify-content:center;min-width:74px;min-height:34px;padding:0 12px;border-radius:999px;background:#fff;color:#0f172a;border:2px solid #fff;box-shadow:0 10px 26px rgba(15,23,42,.18);font-size:.82rem;font-weight:950;line-height:1;white-space:nowrap;letter-spacing:-.015em}
.nmc-real-map .nmc-leaflet-price-pin .nmc-map-price-pill:after{content:"";position:absolute;left:50%;bottom:-6px;transform:translateX(-50%) rotate(45deg);width:12px;height:12px;background:#fff;border-right:2px solid #fff;border-bottom:2px solid #fff;box-shadow:8px 8px 16px rgba(15,23,42,.10)}
.nmc-real-map .nmc-leaflet-price-pin i{position:absolute;left:50%;top:35px;transform:translateX(-50%);width:8px;height:8px;border-radius:999px;background:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.15)}
.nmc-real-map .nmc-leaflet-price-pin:hover .nmc-map-price-pill,
.nmc-real-map .nmc-leaflet-price-pin.is-active .nmc-map-price-pill{background:#dc2626;color:#fff;transform:translateX(-50%) translateY(-3px);box-shadow:0 18px 34px rgba(220,38,38,.26)}
.nmc-real-map .nmc-leaflet-price-pin:hover .nmc-map-price-pill:after,
.nmc-real-map .nmc-leaflet-price-pin.is-active .nmc-map-price-pill:after{background:#dc2626}
.nmc-real-map .nmc-leaflet-price-pin.is-consult .nmc-map-price-pill{min-width:92px;background:#111827;color:#fff}
.nmc-real-map .nmc-leaflet-price-pin.is-consult .nmc-map-price-pill:after{background:#111827}
.nmc-real-map .nmc-leaflet-price-pin.is-consult:hover .nmc-map-price-pill,
.nmc-real-map .nmc-leaflet-price-pin.is-consult.is-active .nmc-map-price-pill{background:#dc2626;color:#fff}
@media(max-width:760px){.nmc-real-map .nmc-leaflet-price-pin .nmc-map-price-pill{font-size:.78rem;min-height:32px;padding:0 10px}.nmc-real-map .nmc-leaflet-price-pin{filter:drop-shadow(0 10px 14px rgba(15,23,42,.16))}}



/* v1.37.1 - ideas de comparador: centros cercanos en ficha individual */
.nmc-nearby-centers{margin-top:8px;margin-bottom:28px}
.nmc-nearby-head{display:grid;gap:8px;margin-bottom:16px;max-width:900px}
.nmc-nearby-head h2{margin:0;color:#0f172a;font-size:clamp(1.55rem,3vw,2.4rem);line-height:1.05;letter-spacing:-.045em}
.nmc-nearby-head p{margin:0!important;color:#64748b!important;line-height:1.55;max-width:740px}
.nmc-nearby-head a{width:max-content;display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:999px;background:#111827;color:#fff;text-decoration:none;font-weight:950;padding:0 14px;margin-top:4px}
.nmc-nearby-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.nmc-nearby-center-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:16px;box-shadow:0 12px 34px rgba(15,23,42,.055);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.nmc-nearby-center-card:hover{transform:translateY(-2px);border-color:rgba(220,38,38,.30);box-shadow:0 18px 42px rgba(220,38,38,.12)}
.nmc-nearby-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.nmc-nearby-card-top strong{display:block;color:#0f172a;font-size:1.05rem;line-height:1.15}
.nmc-nearby-card-top span{display:block;color:#64748b;font-size:.9rem;margin-top:3px}
.nmc-nearby-card-top em{font-style:normal;display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;background:#fee2e2;color:#991b1b;min-height:28px;padding:0 9px;font-size:.72rem;font-weight:950}
.nmc-nearby-center-card p{margin:12px 0;color:#475569;font-size:.92rem;line-height:1.45;min-height:38px}
.nmc-nearby-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 13px;color:#64748b;font-size:.84rem}
.nmc-nearby-card-meta b{color:#991b1b;white-space:nowrap}
.nmc-nearby-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nmc-nearby-card-actions a{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:42px;border-radius:13px;text-decoration:none;font-weight:950;border:1px solid rgba(15,23,42,.1);color:#0f172a;background:#fff}
.nmc-nearby-card-actions a.primary{background:#dc2626;color:#fff;border-color:#dc2626}
.nmc-nearby-card-actions a:hover{filter:brightness(.98);transform:translateY(-1px)}
@media(max-width:980px){.nmc-nearby-grid{grid-template-columns:1fr 1fr}.nmc-nearby-card-actions{grid-template-columns:1fr}}
@media(max-width:620px){.nmc-nearby-grid{grid-template-columns:1fr}.nmc-nearby-head a{width:100%}.nmc-nearby-center-card{border-radius:18px}}

/* v1.37.2 - fichas individuales más claras con mapa real */
.nmc-center-location-section{align-items:stretch}
.nmc-center-location-copy{display:flex;flex-direction:column;justify-content:center}
.nmc-center-location-map-card{display:flex;flex-direction:column;gap:14px;overflow:hidden}
.nmc-center-map-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.nmc-center-map-card-head h2{margin:6px 0 4px;color:#0f172a;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.05;letter-spacing:-.04em}
.nmc-center-map-card-head p{margin:0!important;color:#64748b!important;line-height:1.45;font-size:.95rem}
.nmc-center-map-card-head strong{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:999px;background:#fff;color:#991b1b;border:1px solid #fecaca;padding:0 12px;white-space:nowrap;font-weight:950;box-shadow:0 10px 24px rgba(220,38,38,.10)}
.nmc-center-inline-map{min-height:360px;border-radius:22px;border:1px solid rgba(15,23,42,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);background:#e5e7eb;overflow:hidden}
.nmc-center-map-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nmc-center-map-card-actions .tp-btn{width:100%;justify-content:center}
.nmc-center-location-fallback{min-height:100%}
.nmc-direct-center-page .nmc-center-comfort-summary{margin-top:10px;margin-bottom:18px}
.nmc-direct-center-page .nmc-center-comfort-head p{max-width:760px}
@media(max-width:980px){.nmc-center-map-card-actions{grid-template-columns:1fr}.nmc-center-inline-map{min-height:320px}.nmc-center-map-card-head{display:grid}.nmc-center-map-card-head strong{justify-self:start}}
@media(max-width:760px){.nmc-center-inline-map{min-height:300px;border-radius:18px}.nmc-center-location-map-card{gap:12px}.nmc-center-map-card-head strong{min-height:34px;font-size:.9rem}.nmc-center-location-section .tp-actions.compact{display:grid;grid-template-columns:1fr}.nmc-center-location-section .tp-actions.compact .tp-btn{width:100%;justify-content:center}}


/* v1.37.3 - pulido movil: CTA inferior compacto y redes sociales agrupadas */
@media (max-width: 760px) {
    html, body { overflow-x: hidden; }
    body.nmc-public,
    body.public-body,
    .nmc-public {
        padding-bottom: calc(58px + env(safe-area-inset-bottom, 0px)) !important;
    }

    /* Evita duplicar llamadas a accion: en movil dejamos solo la barra inferior compacta. */
    .sticky-wa {
        display: none !important;
    }

    .mobile-cta-bar,
    .mobile-cta-bar.mobile-cta-v17 {
        position: fixed !important;
        left: 10px !important;
        right: 10px !important;
        bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
        z-index: 900 !important;
        display: flex !important;
        grid-template-columns: none !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        max-width: 520px !important;
        margin: 0 auto !important;
        padding: 6px !important;
        border: 1px solid rgba(15, 23, 42, .10) !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, .96) !important;
        box-shadow: 0 14px 38px rgba(15, 23, 42, .18) !important;
        backdrop-filter: blur(14px) !important;
    }
    .mobile-cta-bar a,
    .mobile-cta-bar.mobile-cta-v17 a {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        min-height: 42px !important;
        height: 42px !important;
        padding: 0 10px !important;
        border-radius: 999px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        white-space: nowrap !important;
        font-size: .88rem !important;
        line-height: 1 !important;
        font-weight: 950 !important;
        text-decoration: none !important;
        box-shadow: none !important;
        transform: none !important;
    }
    .mobile-cta-bar a:first-child,
    .mobile-cta-bar.mobile-cta-v17 a:first-child {
        background: #dc2626 !important;
        color: #fff !important;
    }
    .mobile-cta-bar a:last-child,
    .mobile-cta-bar.mobile-cta-v17 a:last-child {
        background: #25D366 !important;
        color: #fff !important;
    }
    .mobile-cta-bar a:nth-child(n+3),
    .mobile-cta-bar.mobile-cta-v17 a:nth-child(n+3) {
        display: none !important;
    }

    /* Footer: redes sociales compactas, juntas y faciles de pulsar. */
    .footer-socials {
        margin-top: 16px !important;
    }
    .footer-socials > strong {
        margin-bottom: 8px !important;
    }
    .footer-social-links {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
    }
    .footer-social-links a,
    .footer-social-links a.footer-social-link {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        padding: 0 !important;
        border-radius: 999px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .footer-social-links a span,
    .footer-social-links a.footer-social-link span {
        display: none !important;
    }
    .footer-social-links svg,
    .footer-social-links a.footer-social-link svg {
        width: 20px !important;
        height: 20px !important;
        flex: 0 0 auto !important;
    }

    /* Menos friccion visual en movil: las acciones principales se apilan solo dentro del contenido, no abajo. */
    .center-hero-actions,
    .center-cta-actions,
    .tp-actions {
        gap: 8px !important;
    }
    .hero-btn,
    .btn-card,
    .note-btn,
    .conversion-primary {
        min-height: 46px !important;
    }
}

@media (max-width: 420px) {
    .mobile-cta-bar a,
    .mobile-cta-bar.mobile-cta-v17 a {
        font-size: .82rem !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
    .mobile-cta-bar a:first-child::before { content: ""; }
}


/* v1.37.4: páginas de crecimiento, centros colaboradores y ficha de centro más intuitiva */
.nmc-growth-page { background: #f8fafc; }
.nmc-growth-hero { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 24px; align-items: stretch; padding: 34px 0 18px; }
.nmc-growth-hero > div, .nmc-growth-panel { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 28px; box-shadow: 0 18px 46px rgba(15,23,42,.08); }
.nmc-growth-hero > div { padding: clamp(24px, 4vw, 46px); }
.nmc-growth-hero h1 { margin: 8px 0 12px; font-size: clamp(2rem, 5vw, 4.5rem); line-height: .96; letter-spacing: -.045em; }
.nmc-growth-hero p { max-width: 760px; color: #475569; font-size: 1.08rem; line-height: 1.65; }
.nmc-growth-panel { display: flex; flex-direction: column; justify-content: flex-end; padding: 28px; background: linear-gradient(145deg,#111827,#991b1b); color: #fff; }
.nmc-growth-panel strong { font-size: 1.5rem; }
.nmc-growth-panel span { color: rgba(255,255,255,.82); margin-top: 8px; line-height: 1.55; }
.nmc-growth-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.nmc-growth-grid article { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 22px; padding: 22px; box-shadow: 0 10px 30px rgba(15,23,42,.06); }
.nmc-growth-grid h2 { margin: 0 0 8px; font-size: 1.15rem; }
.nmc-growth-grid p { margin: 0; color: #64748b; line-height: 1.55; }
.nmc-growth-timeline { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.nmc-growth-timeline article { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: 16px; display: flex; gap: 12px; align-items: center; }
.nmc-growth-timeline strong { width: 34px; height: 34px; border-radius: 999px; display: grid; place-items: center; background: #ef4444; color: #fff; }
.nmc-growth-timeline span { font-weight: 800; color: #111827; }
.nmc-growth-lead .quick-lead-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
.nmc-growth-lead textarea, .nmc-growth-lead button, .nmc-growth-lead .nmc-hp-field { grid-column: 1 / -1; }
.nmc-center-decision-strip { margin-top: -8px; margin-bottom: 18px; background: rgba(255,255,255,.96); border: 1px solid rgba(15,23,42,.08); border-radius: 24px; padding: 14px; display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr) auto; gap: 12px; align-items: center; box-shadow: 0 16px 42px rgba(15,23,42,.1); }
.nmc-center-decision-main span { display: inline-flex; background: #fee2e2; color: #991b1b; font-weight: 900; border-radius: 999px; padding: 4px 10px; font-size: .78rem; }
.nmc-center-decision-main strong { display: block; margin-top: 4px; color: #0f172a; font-size: 1.1rem; }
.nmc-center-decision-main small { color: #64748b; }
.nmc-center-decision-facts { display: flex; gap: 10px; flex-wrap: wrap; }
.nmc-center-decision-facts span { min-width: 120px; background: #f8fafc; border: 1px solid rgba(15,23,42,.06); border-radius: 16px; padding: 10px 12px; color: #111827; }
.nmc-center-decision-facts b { display: block; font-size: .74rem; text-transform: uppercase; letter-spacing: .06em; color: #64748b; margin-bottom: 2px; }
.nmc-center-decision-actions { display: flex; gap: 8px; justify-content: flex-end; }
@media (max-width: 900px){
  .nmc-growth-hero, .nmc-growth-grid, .nmc-growth-timeline, .nmc-center-decision-strip { grid-template-columns: 1fr; }
  .nmc-growth-hero { padding-top: 18px; }
  .nmc-growth-lead .quick-lead-form { grid-template-columns: 1fr; }
  .nmc-center-decision-actions { justify-content: stretch; }
  .nmc-center-decision-actions .tp-btn { flex: 1; }
}
@media (max-width: 560px){
  .nmc-center-decision-strip { border-radius: 18px; padding: 12px; }
  .nmc-center-decision-facts span { flex: 1 1 46%; min-width: 0; }
  .nmc-center-decision-actions { flex-direction: column; }
}
.nmc-growth-hero > div { padding: clamp(24px, 4vw, 46px); }
.nmc-growth-hero h1 { margin: 8px 0 12px; font-size: clamp(2rem, 5vw, 4.5rem); line-height: .96; letter-spacing: -.045em; }
.nmc-growth-hero p { max-width: 760px; color: #475569; font-size: 1.08rem; line-height: 1.65; }
.nmc-growth-panel { display: flex; flex-direction: column; justify-content: flex-end; padding: 28px; background: linear-gradient(145deg,#111827,#991b1b); color: #fff; }
.nmc-growth-panel strong { font-size: 1.5rem; }
.nmc-growth-panel span { color: rgba(255,255,255,.82); margin-top: 8px; line-height: 1.55; }
.nmc-growth-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.nmc-growth-grid article { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 22px; padding: 22px; box-shadow: 0 10px 30px rgba(15,23,42,.06); }
.nmc-growth-grid h2 { margin: 0 0 8px; font-size: 1.15rem; }
.nmc-growth-grid p { margin: 0; color: #64748b; line-height: 1.55; }
.nmc-growth-timeline { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.nmc-growth-timeline article { background: #fff; border: 1px solid rgba(15,23,42,.08); border-radius: 18px; padding: 16px; display: flex; gap: 12px; align-items: center; }
.nmc-growth-timeline strong { width: 34px; height: 34px; border-radius: 999px; display: grid; place-items: center; background: #ef4444; color: #fff; }
.nmc-growth-timeline span { font-weight: 800; color: #111827; }
.nmc-growth-lead .quick-lead-form { grid-template-columns: repeat(2,minmax(0,1fr)); }
.nmc-growth-lead textarea, .nmc-growth-lead button, .nmc-growth-lead .nmc-hp-field { grid-column: 1 / -1; }
.nmc-center-decision-strip { margin-top: -8px; margin-bottom: 18px; background: rgba(255,255,255,.96); border: 1px solid rgba(15,23,42,.08); border-radius: 24px; padding: 14px; display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr) auto; gap: 12px; align-items: center; box-shadow: 0 16px 42px rgba(15,23,42,.1); }
.nmc-center-decision-main span { display: inline-flex; background: #fee2e2; color: #991b1b; font-weight: 900; border-radius: 999px; padding: 4px 10px; font-size: .78rem; }
.nmc-center-decision-main strong { display: block; margin-top: 4px; color: #0f172a; font-size: 1.1rem; }
.nmc-center-decision-main small { color: #64748b; }
.nmc-center-decision-facts { display: flex; gap: 10px; flex-wrap: wrap; }
.nmc-center-decision-facts span { min-width: 120px; background: #f8fafc; border: 1px solid rgba(15,23,42,.06); border-radius: 16px; padding: 10px 12px; color: #111827; }
.nmc-center-decision-facts b { display: block; font-size: .74rem; text-transform: uppercase; letter-spacing: .06em; color: #64748b; margin-bottom: 2px; }
.nmc-center-decision-actions { display: flex; gap: 8px; justify-content: flex-end; }
@media (max-width: 900px){
  .nmc-growth-hero, .nmc-growth-grid, .nmc-growth-timeline, .nmc-center-decision-strip { grid-template-columns: 1fr; }
  .nmc-growth-hero { padding-top: 18px; }
  .nmc-growth-lead .quick-lead-form { grid-template-columns: 1fr; }
  .nmc-center-decision-actions { justify-content: stretch; }
  .nmc-center-decision-actions .tp-btn { flex: 1; }
}
@media (max-width: 560px){
  .nmc-center-decision-strip { border-radius: 18px; padding: 12px; }
  .nmc-center-decision-facts span { flex: 1 1 46%; min-width: 0; }
  .nmc-center-decision-actions { flex-direction: column; }
}

/* v1.37.5 - pulido móvil del plano full y buscador */
.nmc-full-map-page{overflow-x:hidden;background:#f8fafc}
.nmc-full-map-page .nmc-filter-search input{font-size:16px}
.nmc-full-map-page .nmc-full-map-card-meta b{white-space:nowrap;color:#dc2626;font-size:.98rem}
.page-mapa-centros .nmc-floating-cta{display:none!important}
@media(max-width:980px){
  .nmc-full-map-shell{display:flex!important;flex-direction:column!important;min-height:auto!important;width:100%!important;overflow:hidden!important;background:#f8fafc!important}
  .nmc-full-map-panel{order:1!important;position:relative!important;top:auto!important;width:100%!important;max-height:none!important;overflow:visible!important;border-right:0!important;border-top:0!important;box-shadow:none!important;padding:16px!important;box-sizing:border-box!important;background:#f8fafc!important}
  .nmc-full-map-canvas-wrap{order:2!important;position:relative!important;top:auto!important;height:44vh!important;min-height:320px!important;max-height:460px!important;margin:0 16px 18px!important;width:auto!important;border-radius:26px!important;overflow:hidden!important;background:#e2e8f0!important;box-shadow:0 16px 42px rgba(15,23,42,.14)!important;z-index:1!important}
  .nmc-full-map-canvas{height:100%!important;min-height:0!important;border-radius:26px!important;box-shadow:none!important}
  .nmc-full-map-list{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding-bottom:18px!important}
  .nmc-full-map-intro{gap:8px!important;margin-bottom:12px!important}
  .nmc-full-map-intro h1{font-size:clamp(2.05rem,8vw,3rem)!important;line-height:1!important;letter-spacing:-.055em!important;max-width:760px!important}
  .nmc-full-map-intro p{font-size:1rem!important;line-height:1.45!important;max-width:680px!important}
  .nmc-full-map-intro>strong{padding:7px 11px!important;font-size:.82rem!important}
  .nmc-full-map-page .nmc-center-filters{border-radius:24px!important;padding:14px!important;margin:0 0 12px!important;background:#fff!important;box-shadow:0 10px 28px rgba(15,23,42,.07)!important}
  .nmc-full-map-page .nmc-filter-chips{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:7px!important;padding:0 0 6px!important;margin:0!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important}
  .nmc-full-map-page .nmc-filter-chips::-webkit-scrollbar{display:none!important}
  .nmc-full-map-page .nmc-filter-chip{flex:0 0 auto!important;white-space:nowrap!important}
  .page-mapa-centros .mobile-cta-bar,.page-mapa-centros .mobile-cta-bar.mobile-cta-v17,.page-mapa-centros .sticky-wa,.page-mapa-centros .nmc-floating-cta{display:none!important}
  body.page-mapa-centros,body.nmc-public.page-mapa-centros,.page-mapa-centros{padding-bottom:0!important}
}
@media(max-width:640px){
  .nmc-full-map-panel{padding:14px 12px!important}
  .nmc-full-map-back{font-size:.9rem!important}
  .nmc-full-map-intro .eyebrow{font-size:.72rem!important}
  .nmc-full-map-intro h1{font-size:2.12rem!important;line-height:.98!important;margin-top:2px!important}
  .nmc-full-map-intro p{font-size:.94rem!important;line-height:1.45!important}
  .nmc-full-map-page .nmc-center-filters{border-radius:22px!important;padding:12px!important}
  .nmc-full-map-page .nmc-filter-search{gap:7px!important}
  .nmc-full-map-page .nmc-filter-search span{font-size:.72rem!important;letter-spacing:.08em!important}
  .nmc-full-map-page .nmc-filter-search input{min-height:52px!important;border-radius:18px!important;font-size:16px!important;padding:0 14px!important}
  .nmc-full-map-page .nmc-filter-chip{min-height:38px!important;padding:0 12px!important;font-size:.84rem!important}
  .nmc-full-map-page .nmc-filter-result{font-size:.84rem!important;margin-top:0!important;line-height:1.35!important}
  .nmc-full-map-canvas-wrap{height:38vh!important;min-height:300px!important;margin:0 12px 14px!important;border-radius:22px!important}
  .nmc-full-map-canvas{border-radius:22px!important}
  .nmc-full-map-toolbar{top:10px!important;left:10px!important;right:10px!important;display:flex!important;gap:7px!important}
  .nmc-full-map-toolbar a{flex:1!important;min-height:36px!important;font-size:.84rem!important;padding:0 10px!important}
  .nmc-full-map-center-card{border-radius:20px!important;padding:13px!important;box-shadow:0 8px 22px rgba(15,23,42,.06)!important}
  .nmc-full-map-card-top{gap:8px!important}
  .nmc-full-map-card-top strong{font-size:1.05rem!important;line-height:1.15!important}
  .nmc-full-map-badge{font-size:.68rem!important;padding:6px 8px!important}
  .nmc-full-map-center-card p{font-size:.9rem!important;line-height:1.4!important;margin:8px 0!important}
  .nmc-full-map-card-meta{align-items:flex-start!important;flex-direction:column!important;gap:3px!important;margin:8px 0 10px!important}
  .nmc-full-map-card-meta b{font-size:1rem!important}
  .nmc-full-map-card-actions{grid-template-columns:1fr 1fr!important;gap:7px!important}
  .nmc-full-map-card-actions a{min-height:42px!important;font-size:.9rem!important;border-radius:13px!important}
  .nmc-real-map .leaflet-control-attribution{font-size:10px!important}
}
@media(max-width:380px){
  .nmc-full-map-card-actions{grid-template-columns:1fr!important}
  .nmc-full-map-intro h1{font-size:1.92rem!important}
}


/* v1.37.7 - plano: buscador compacto, burbuja legible y centros en gestión diferenciados */
.nmc-full-map-page .nmc-center-filters{
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(240px,.82fr)!important;
  gap:10px 12px!important;
  align-items:end!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 36px rgba(15,23,42,.08)!important;
}
.nmc-full-map-page .nmc-filter-copy{min-width:0!important;margin:0!important}
.nmc-full-map-page .nmc-filter-copy .eyebrow{font-size:.68rem!important;margin-bottom:4px!important;color:#dc2626!important}
.nmc-full-map-page .nmc-filter-copy h3{font-size:1.08rem!important;line-height:1.08!important;margin:0 0 4px!important;letter-spacing:-.035em!important;color:#0f172a!important}
.nmc-full-map-page .nmc-filter-copy p{font-size:.84rem!important;line-height:1.32!important;margin:0!important;color:#64748b!important;max-width:34rem!important}
.nmc-full-map-page .nmc-filter-search{display:grid!important;gap:6px!important;margin:0!important;min-width:0!important}
.nmc-full-map-page .nmc-filter-search span{font-size:.68rem!important;line-height:1!important;color:#64748b!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:950!important}
.nmc-full-map-page .nmc-filter-search input{width:100%!important;box-sizing:border-box!important;min-height:46px!important;border-radius:16px!important;border:1px solid rgba(15,23,42,.12)!important;background:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)!important;color:#0f172a!important;font-weight:850!important}
.nmc-full-map-page .nmc-filter-chips{grid-column:1/-1!important;display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:wrap!important;margin:0!important;padding:0!important}
.nmc-full-map-page .nmc-filter-result{grid-column:1/-1!important;margin:0!important;color:#475569!important;font-weight:850!important}
.nmc-full-map-page .nmc-filter-chip.managed{background:#ecfeff!important;border-color:#99f6e4!important;color:#0f766e!important}
.nmc-full-map-page .nmc-full-map-center-card[data-center-status="managed"]{border-color:rgba(15,118,110,.28)!important;box-shadow:0 16px 38px rgba(15,118,110,.10)!important}
.nmc-full-map-badge.managed{background:#0f766e!important;color:#fff!important;border-color:#0f766e!important}
.nmc-full-map-badge.soon{background:#fffbeb!important;color:#92400e!important;border-color:#fcd34d!important}
.nmc-real-map .nmc-leaflet-price-pin.is-managed .nmc-map-price-pill{background:#0f766e!important;color:#fff!important;box-shadow:0 16px 34px rgba(15,118,110,.28)!important}
.nmc-real-map .nmc-leaflet-price-pin.is-managed .nmc-map-price-pill:after{background:#0f766e!important}
.nmc-real-map .nmc-leaflet-price-pin.is-soon .nmc-map-price-pill{background:#f59e0b!important;color:#111827!important;box-shadow:0 16px 34px rgba(245,158,11,.24)!important}
.nmc-real-map .nmc-leaflet-price-pin.is-soon .nmc-map-price-pill:after{background:#f59e0b!important}
.nmc-real-map .nmc-leaflet-price-pin.is-managed:hover .nmc-map-price-pill,.nmc-real-map .nmc-leaflet-price-pin.is-managed.is-active .nmc-map-price-pill{background:#115e59!important;color:#fff!important}
.nmc-real-map .nmc-leaflet-price-pin.is-soon:hover .nmc-map-price-pill,.nmc-real-map .nmc-leaflet-price-pin.is-soon.is-active .nmc-map-price-pill{background:#d97706!important;color:#fff!important}
.google-business-review-block{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);gap:18px;align-items:start;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);border-radius:30px;padding:24px;box-shadow:0 20px 46px rgba(15,23,42,.07)}
.google-business-review-copy h2{font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.02;letter-spacing:-.055em;margin:4px 0 8px;color:#0f172a}.google-business-review-copy p{color:#475569;font-weight:750;max-width:58rem}.google-business-review-actions{display:grid;gap:9px}.google-business-review-actions .hero-btn{width:100%;justify-content:center}.google-business-review-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.google-business-review-steps article{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:16px}.google-business-review-steps strong{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:999px;background:#dc2626;color:#fff;margin-bottom:10px}.google-business-review-steps span{display:block;font-weight:950;color:#0f172a;margin-bottom:5px}.google-business-review-steps p{margin:0;color:#64748b;font-size:.92rem;line-height:1.42}
@media(max-width:980px){.nmc-full-map-page .nmc-center-filters{grid-template-columns:1fr!important;align-items:stretch!important}.google-business-review-block{grid-template-columns:1fr}.google-business-review-steps{grid-template-columns:1fr}}
@media(max-width:640px){.nmc-full-map-page .nmc-center-filters{border-radius:20px!important;padding:12px!important}.nmc-full-map-page .nmc-filter-copy p{display:none!important}.nmc-full-map-page .nmc-filter-copy h3{font-size:1rem!important}.nmc-full-map-page .nmc-filter-search input{min-height:48px!important}.nmc-full-map-page .nmc-filter-chips{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:3px!important}.google-business-review-block{border-radius:22px;padding:16px}.google-business-review-steps article{border-radius:18px}}


/* v1.37.8 - Home mas potente, mapa vivo y cards/botones saneados */
.nmc-home-v1378{background:linear-gradient(180deg,#fff 0%,#f8fafc 42%,#fff 100%)}
.nmc-home-hero-v1378{position:relative;padding:54px 0 34px;overflow:hidden;background:radial-gradient(circle at 8% 18%,rgba(220,38,38,.10),transparent 28%),radial-gradient(circle at 92% 12%,rgba(15,23,42,.09),transparent 30%),linear-gradient(180deg,#fff,#f8fafc)}
.nmc-home-hero-v1378:before{content:"";position:absolute;inset:auto -8% -34% -8%;height:46%;background:linear-gradient(90deg,rgba(220,38,38,.10),rgba(15,23,42,.08));filter:blur(54px);opacity:.8}
.nmc-home-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.52fr);gap:28px;align-items:center}
.nmc-home-hero-copy h1{font-size:clamp(3rem,7vw,6.8rem);line-height:.92;letter-spacing:-.075em;margin:10px 0 18px;color:#0f172a;max-width:980px}
.nmc-home-hero-copy .lead{font-size:clamp(1.05rem,1.6vw,1.28rem);line-height:1.6;color:#475569;max-width:760px;font-weight:650;margin:0 0 22px}
.nmc-home-main-actions{margin:22px 0 20px;gap:10px;flex-wrap:wrap}
.nmc-home-trust-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:760px}
.nmc-home-trust-row span{display:grid;gap:2px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:13px 14px;box-shadow:0 12px 30px rgba(15,23,42,.055)}
.nmc-home-trust-row strong{color:#0f172a;font-size:.95rem}.nmc-home-trust-row small{color:#64748b;font-weight:750;line-height:1.25}
.nmc-home-finder-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:32px;box-shadow:0 30px 70px rgba(15,23,42,.12);padding:26px;position:relative;overflow:hidden}
.nmc-home-finder-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,#dc2626,#111827)}
.nmc-home-finder-card h2{font-size:clamp(1.55rem,2.5vw,2.2rem);line-height:1.02;letter-spacing:-.05em;color:#0f172a;margin:6px 0 8px}
.nmc-home-finder-card p{color:#64748b;line-height:1.5;margin:0 0 16px;font-weight:700}.nmc-home-phone{display:inline-flex;margin-top:10px;color:#b91c1c;font-weight:950;text-decoration:none}
.nmc-home-benefits-v1378{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:10px;margin-bottom:38px}
.nmc-home-benefits-v1378 article{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:18px;box-shadow:0 16px 36px rgba(15,23,42,.06)}
.nmc-home-benefits-v1378 strong{display:block;color:#0f172a;font-size:1.02rem;margin-bottom:6px}.nmc-home-benefits-v1378 span{display:block;color:#64748b;line-height:1.45;font-weight:700}
.nmc-home-centers-v1378,.nmc-home-map-cta-v1378,.nmc-home-reviews-v1378{margin-top:28px;margin-bottom:34px}
.nmc-home-center-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:20px}
.nmc-home-center-shortcuts a{display:grid;gap:6px;min-height:168px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:28px;padding:22px;text-decoration:none;box-shadow:0 20px 48px rgba(15,23,42,.07);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.nmc-home-center-shortcuts a:hover{transform:translateY(-3px);border-color:rgba(220,38,38,.25);box-shadow:0 26px 62px rgba(220,38,38,.10)}
.nmc-home-center-shortcuts span{color:#b91c1c;font-weight:950;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em}.nmc-home-center-shortcuts strong{color:#0f172a;font-size:1.22rem;line-height:1.14;letter-spacing:-.035em}.nmc-home-center-shortcuts em{margin-top:auto;font-style:normal;color:#475569;font-weight:950}
.nmc-home-map-cta-v1378,.nmc-home-reviews-v1378{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;background:linear-gradient(135deg,#111827,#0f172a);color:#fff;border-radius:34px;padding:30px;box-shadow:0 26px 70px rgba(15,23,42,.18)}
.nmc-home-map-cta-v1378 h2,.nmc-home-reviews-v1378 h2{font-size:clamp(1.75rem,3.4vw,3.2rem);line-height:1.02;letter-spacing:-.06em;margin:6px 0 8px;color:#fff}.nmc-home-map-cta-v1378 p,.nmc-home-reviews-v1378 p{color:#cbd5e1;max-width:760px;font-weight:700;line-height:1.55;margin:0}.nmc-home-map-cta-v1378 .eyebrow,.nmc-home-reviews-v1378 .eyebrow{background:rgba(255,255,255,.10);color:#fecaca;border-color:rgba(255,255,255,.16)}
.nmc-home-reviews-v1378{background:linear-gradient(135deg,#fff7f7,#fff);color:#0f172a;border:1px solid rgba(220,38,38,.12)}.nmc-home-reviews-v1378 h2{color:#0f172a}.nmc-home-reviews-v1378 p{color:#475569}.nmc-home-reviews-v1378 .eyebrow{background:#fee2e2;color:#b91c1c;border-color:#fecaca}
.nmc-card-actions-two{grid-template-columns:minmax(0,1.12fr) minmax(112px,.88fr)!important;align-items:center}.nmc-card-actions-two a{min-width:0;white-space:normal;line-height:1.15;padding:0 12px}.nmc-card-actions-two a:last-child{background:#fff!important;color:#0f172a!important;border-color:#e2e8f0!important}.nmc-card-actions-two a:last-child:hover{border-color:#0f172a!important;background:#f8fafc!important}
.nmc-centers-list-simple:has(> .nmc-center-card-simple:only-child){grid-template-columns:minmax(280px,760px);justify-content:center}.nmc-centers-list-simple:has(> .nmc-center-card-simple:only-child) .nmc-center-card-simple{min-height:0}.nmc-price-consult{display:block!important}.nmc-price-consult strong{display:block!important;font-size:clamp(1.35rem,2.6vw,1.8rem)!important;color:#0f172a!important;letter-spacing:-.04em!important;line-height:1.1}.nmc-center-card-simple.managed{border-color:rgba(15,118,110,.30)!important;box-shadow:0 18px 46px rgba(15,118,110,.08)!important}.nmc-center-card-simple.managed .tp-unit-top span{background:#ccfbf1!important;color:#115e59!important}.nmc-card-badge.managed{background:#ccfbf1;color:#115e59}.nmc-center-card-simple.soon .nmc-card-actions-two a:first-child{background:#111827;border-color:#111827;color:#fff}
.nmc-full-map-toolbar{gap:8px;flex-wrap:wrap}.nmc-full-map-toolbar button,.nmc-map-actions button{appearance:none;border:1px solid rgba(15,23,42,.12);background:#fff;color:#0f172a;border-radius:999px;min-height:38px;padding:0 13px;font-weight:950;cursor:pointer;box-shadow:0 10px 24px rgba(15,23,42,.08)}.nmc-full-map-toolbar button:hover,.nmc-map-actions button:hover{transform:translateY(-1px)}.nmc-full-map-toolbar button[data-nmc-geolocate],.nmc-map-actions button[data-nmc-geolocate]{background:#dc2626;border-color:#dc2626;color:#fff}.nmc-full-map-toolbar button[data-nmc-search-area]:not([hidden]),.nmc-map-actions button[data-nmc-search-area]:not([hidden]){display:inline-flex}.nmc-full-map-toolbar button[data-nmc-search-area].is-active,.nmc-map-actions button[data-nmc-search-area].is-active{background:#111827;color:#fff;border-color:#111827}.nmc-map-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 10px}.nmc-user-location-dot{background:#2563eb;border:3px solid #fff;border-radius:999px;box-shadow:0 0 0 7px rgba(37,99,235,.18),0 12px 22px rgba(37,99,235,.24)}.nmc-center-card-simple.is-user-nearest,.nmc-full-map-center-card.is-user-nearest{border-color:rgba(37,99,235,.45)!important;box-shadow:0 20px 52px rgba(37,99,235,.14)!important}.nmc-center-card-simple.is-user-nearest:before,.nmc-full-map-center-card.is-user-nearest:before{content:"Más cercano a tu ubicación";display:inline-flex;width:max-content;max-width:calc(100% - 20px);min-height:28px;align-items:center;padding:0 10px;border-radius:999px;background:#2563eb;color:#fff;font-size:.72rem;font-weight:950;letter-spacing:.02em;margin:0 0 10px}
@media(max-width:980px){.nmc-home-hero-grid,.nmc-home-map-cta-v1378,.nmc-home-reviews-v1378{grid-template-columns:1fr}.nmc-home-benefits-v1378,.nmc-home-center-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.nmc-home-map-cta-v1378 .hero-actions,.nmc-home-reviews-v1378 .hero-actions{justify-content:flex-start}}
@media(max-width:640px){.nmc-home-hero-v1378{padding:28px 0 22px}.nmc-home-hero-grid{gap:18px}.nmc-home-hero-copy h1{font-size:clamp(2.55rem,14vw,4.2rem)}.nmc-home-trust-row,.nmc-home-benefits-v1378,.nmc-home-center-shortcuts{grid-template-columns:1fr}.nmc-home-finder-card,.nmc-home-map-cta-v1378,.nmc-home-reviews-v1378{border-radius:24px;padding:20px}.nmc-card-actions-two{grid-template-columns:1fr!important}.nmc-full-map-toolbar{left:10px;right:10px}.nmc-full-map-toolbar button,.nmc-full-map-toolbar a{min-height:38px;font-size:.82rem}}

/* v1.37.9 - Home elegante / premium */
.nmc-elegant-home{--nmc-cream:#fbf7f1;--nmc-cream-2:#fffaf4;--nmc-ink:#111827;--nmc-muted:#667085;--nmc-red:#dc2626;--nmc-red-dark:#991b1b;--nmc-line:rgba(17,24,39,.10);background:linear-gradient(180deg,#fffaf4 0%,#fff 42%,#fbf7f1 100%);color:var(--nmc-ink);overflow:hidden}.nmc-home-premium-hero{position:relative;padding:72px 0 42px;background:radial-gradient(circle at 12% 12%,rgba(220,38,38,.10),transparent 28%),radial-gradient(circle at 86% 18%,rgba(15,23,42,.08),transparent 30%),linear-gradient(180deg,#fffaf4 0%,#fff 100%)}.nmc-home-premium-hero:before{content:"";position:absolute;left:-12%;right:-12%;bottom:-22%;height:42%;background:linear-gradient(90deg,rgba(220,38,38,.09),rgba(15,23,42,.07),rgba(245,158,11,.08));filter:blur(60px);opacity:.9}.nmc-home-premium-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(330px,.48fr);gap:36px;align-items:center}.nmc-home-pill,.nmc-home-section-head span,.nmc-home-map-copy span,.nmc-home-confidence>div>span,.nmc-home-final-soft span{display:inline-flex;align-items:center;width:max-content;border:1px solid rgba(220,38,38,.18);background:rgba(255,255,255,.72);color:var(--nmc-red-dark);border-radius:999px;padding:7px 12px;font-size:.72rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 10px 28px rgba(17,24,39,.05)}.nmc-home-premium-copy h1{max-width:860px;margin:18px 0 18px;color:var(--nmc-ink);font-size:clamp(3.2rem,8vw,7.1rem);line-height:.88;letter-spacing:-.085em}.nmc-home-premium-lead{max-width:720px;margin:0!important;color:#4b5563!important;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.62!important;font-weight:650}.nmc-home-premium-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.nmc-home-premium-actions.compact{margin-top:0;justify-content:flex-end}.nmc-home-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:999px;text-decoration:none!important;font-weight:950;font-size:.94rem;border:1px solid var(--nmc-line);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.nmc-home-btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(17,24,39,.10)}.nmc-home-btn.primary{background:#111827;border-color:#111827;color:#fff!important}.nmc-home-btn.primary:hover{background:#dc2626;border-color:#dc2626}.nmc-home-btn.soft{background:#fff;color:#111827!important}.nmc-home-btn.line{background:transparent;color:#111827!important;border-color:rgba(17,24,39,.16)}.nmc-home-premium-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:28px;max-width:820px}.nmc-home-premium-proof span{display:grid;gap:3px;background:rgba(255,255,255,.74);border:1px solid rgba(17,24,39,.08);border-radius:20px;padding:14px 15px;backdrop-filter:blur(12px)}.nmc-home-premium-proof strong{font-size:.95rem;color:#111827}.nmc-home-premium-proof small{color:#6b7280;font-weight:750;line-height:1.32}.nmc-home-concierge{background:rgba(255,255,255,.82);border:1px solid rgba(17,24,39,.08);border-radius:34px;padding:24px;box-shadow:0 30px 80px rgba(17,24,39,.10);backdrop-filter:blur(18px)}.nmc-home-concierge-head span{display:inline-flex;background:#fff1f1;color:#991b1b;border-radius:999px;padding:6px 10px;font-size:.73rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.nmc-home-concierge-head strong{display:block;margin:14px 0 6px;font-size:1.55rem;line-height:1.05;letter-spacing:-.045em}.nmc-home-concierge-head p{margin:0 0 16px!important;color:#667085!important;line-height:1.5!important}.nmc-home-concierge-form{display:grid;gap:10px}.nmc-home-concierge-form label{display:grid;gap:5px}.nmc-home-concierge-form label span{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em;color:#667085;font-weight:950}.nmc-home-concierge-form input,.nmc-home-concierge-form textarea{width:100%;border:1px solid rgba(17,24,39,.10);border-radius:16px;background:#fff;color:#111827;padding:12px 13px;outline:0;font-weight:750}.nmc-home-concierge-form textarea{resize:vertical}.nmc-home-concierge-form input:focus,.nmc-home-concierge-form textarea:focus{border-color:rgba(220,38,38,.38);box-shadow:0 0 0 4px rgba(220,38,38,.08)}.nmc-home-concierge-form button{border:0;border-radius:16px;min-height:48px;background:#111827;color:#fff;font-weight:950;cursor:pointer}.nmc-home-concierge-phone{display:block;margin-top:13px;color:#991b1b!important;font-weight:950;text-decoration:none!important}.nmc-home-soft-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:10px;margin-bottom:56px}.nmc-home-soft-strip article{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:26px;padding:22px;box-shadow:0 18px 44px rgba(17,24,39,.06)}.nmc-home-soft-strip span{display:block;color:#dc2626;font-weight:950;margin-bottom:10px}.nmc-home-soft-strip strong{display:block;color:#111827;font-size:1.22rem;letter-spacing:-.035em}.nmc-home-soft-strip p{margin:7px 0 0!important;color:#667085!important;line-height:1.48!important}.nmc-home-uses,.nmc-home-featured-centers,.nmc-home-confidence,.nmc-home-final-soft{margin-top:62px;margin-bottom:62px}.nmc-home-section-head{display:grid;gap:10px;max-width:760px;margin-bottom:22px}.nmc-home-section-head.centered{text-align:center;margin-left:auto;margin-right:auto;justify-items:center}.nmc-home-section-head h2,.nmc-home-map-copy h2,.nmc-home-confidence h2,.nmc-home-final-soft h2{margin:0;color:#111827;font-size:clamp(2.15rem,5vw,4.4rem);line-height:.96;letter-spacing:-.07em}.nmc-home-section-head p,.nmc-home-map-copy p,.nmc-home-confidence p,.nmc-home-final-soft p{margin:0!important;color:#667085!important;font-size:1.02rem;line-height:1.6!important}.nmc-home-use-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.nmc-home-use-grid a{display:grid;gap:9px;min-height:210px;background:linear-gradient(180deg,#fff,#fffaf4);border:1px solid rgba(17,24,39,.08);border-radius:30px;padding:24px;text-decoration:none!important;box-shadow:0 18px 42px rgba(17,24,39,.06);transition:transform .16s ease,box-shadow .16s ease}.nmc-home-use-grid a:hover{transform:translateY(-4px);box-shadow:0 26px 56px rgba(17,24,39,.10)}.nmc-home-use-grid span{font-size:1.65rem}.nmc-home-use-grid strong{color:#111827;font-size:1.28rem;letter-spacing:-.035em}.nmc-home-use-grid small{color:#667085;font-weight:750;line-height:1.45}.nmc-home-center-cards{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr;gap:14px}.nmc-home-center-cards a{display:flex;flex-direction:column;min-height:260px;padding:24px;border-radius:32px;border:1px solid rgba(17,24,39,.08);background:#fff;text-decoration:none!important;box-shadow:0 18px 46px rgba(17,24,39,.06);transition:transform .16s ease,box-shadow .16s ease}.nmc-home-center-cards a:hover{transform:translateY(-4px);box-shadow:0 26px 60px rgba(17,24,39,.11)}.nmc-home-center-cards a.featured{background:linear-gradient(145deg,#111827,#2b1010 62%,#dc2626);color:#fff}.nmc-home-center-cards em{width:max-content;max-width:100%;font-style:normal;background:#fff1f1;color:#991b1b;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.nmc-home-center-cards a.featured em{background:rgba(255,255,255,.14);color:#fff}.nmc-home-center-cards strong{display:block;margin-top:auto;color:#111827;font-size:1.45rem;line-height:1.02;letter-spacing:-.045em}.nmc-home-center-cards a.featured strong{color:#fff;font-size:1.85rem}.nmc-home-center-cards small{display:block;margin-top:8px;color:#667085;font-weight:750;line-height:1.4}.nmc-home-center-cards a.featured small{color:rgba(255,255,255,.78)}.nmc-home-center-cards a span:last-child{display:inline-flex;margin-top:18px;color:#991b1b;font-weight:950}.nmc-home-center-cards a.featured span:last-child{color:#fff}.nmc-home-map-elegant{display:grid;grid-template-columns:minmax(0,.75fr) minmax(320px,.7fr) auto;gap:20px;align-items:center;background:linear-gradient(135deg,#111827,#1f2937 58%,#3b1111);border-radius:40px;padding:30px;box-shadow:0 30px 80px rgba(17,24,39,.16);color:#fff}.nmc-home-map-copy span{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.16);color:#fff}.nmc-home-map-copy h2{color:#fff}.nmc-home-map-copy p{color:rgba(255,255,255,.74)!important}.nmc-home-map-board{position:relative;min-height:230px;border-radius:30px;background:radial-gradient(circle at 20% 25%,rgba(255,255,255,.18),transparent 23%),radial-gradient(circle at 78% 30%,rgba(220,38,38,.22),transparent 26%),linear-gradient(135deg,#f8fafc,#e5e7eb);overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 0 0 1px rgba(255,255,255,.32)}.nmc-home-map-board:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(17,24,39,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,39,.06) 1px,transparent 1px);background-size:42px 42px}.nmc-home-map-board .pin{position:absolute;display:inline-flex;align-items:center;justify-content:center;min-height:32px;border-radius:999px;padding:0 10px;background:#fff;color:#111827;font-style:normal;font-size:.78rem;font-weight:950;box-shadow:0 16px 34px rgba(17,24,39,.16)}.nmc-home-map-board .pin:after{content:"";position:absolute;left:50%;bottom:-5px;width:11px;height:11px;background:inherit;transform:translateX(-50%) rotate(45deg)}.nmc-home-map-board .pin-red{left:18%;top:28%;background:#dc2626;color:#fff}.nmc-home-map-board .pin-dark{left:58%;top:60%;background:#111827;color:#fff}.nmc-home-map-board .pin-teal{left:62%;top:22%;background:#0f766e;color:#fff}.nmc-home-map-board .pin-gold{left:28%;top:66%;background:#f59e0b;color:#111827}.nmc-home-map-actions{display:grid;gap:10px}.nmc-home-map-actions .nmc-home-btn.soft{background:rgba(255,255,255,.10);color:#fff!important;border-color:rgba(255,255,255,.18)}.nmc-home-confidence{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.43fr);gap:22px;align-items:center}.nmc-home-confidence-card{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:32px;padding:24px;box-shadow:0 18px 46px rgba(17,24,39,.06)}.nmc-home-confidence-card strong{display:block;color:#111827;font-size:1.35rem;letter-spacing:-.04em}.nmc-home-confidence-card ul{margin:14px 0 18px;padding-left:18px;color:#667085;font-weight:750;line-height:1.55}.nmc-home-confidence-card a{color:#991b1b!important;font-weight:950;text-decoration:none!important}.nmc-home-final-soft{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:38px;padding:30px;box-shadow:0 20px 56px rgba(17,24,39,.08)}@media(max-width:1120px){.nmc-home-premium-grid,.nmc-home-map-elegant,.nmc-home-confidence,.nmc-home-final-soft{grid-template-columns:1fr}.nmc-home-premium-actions.compact,.nmc-home-map-actions{justify-content:flex-start}.nmc-home-center-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.nmc-home-use-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.nmc-home-premium-hero{padding:42px 0 26px}.nmc-home-premium-copy h1{font-size:clamp(3rem,18vw,4.7rem);letter-spacing:-.08em}.nmc-home-premium-proof,.nmc-home-soft-strip,.nmc-home-use-grid,.nmc-home-center-cards{grid-template-columns:1fr}.nmc-home-concierge,.nmc-home-soft-strip article,.nmc-home-use-grid a,.nmc-home-center-cards a,.nmc-home-map-elegant,.nmc-home-confidence-card,.nmc-home-final-soft{border-radius:24px}.nmc-home-map-elegant,.nmc-home-final-soft{padding:20px}.nmc-home-premium-actions,.nmc-home-premium-actions.compact{display:grid;grid-template-columns:1fr}.nmc-home-btn{width:100%}.nmc-home-center-cards a{min-height:220px}.nmc-home-map-board{min-height:210px}.nmc-home-uses,.nmc-home-featured-centers,.nmc-home-confidence,.nmc-home-final-soft{margin-top:42px;margin-bottom:42px}}



/* v1.37.11 - pulido visual de tarjetas de centros */
.nmc-center-card-simple{position:relative;border-radius:28px!important;padding:24px!important;gap:14px!important;min-height:0!important;background:linear-gradient(180deg,#fff 0%,#fdfefe 100%)}
.nmc-center-card-simple .tp-unit-top{align-items:flex-start;gap:14px}
.nmc-center-card-simple .tp-unit-top h3{font-size:clamp(1.5rem,2.2vw,1.75rem);line-height:1.02;letter-spacing:-.045em}
.nmc-center-card-simple .tp-unit-top p{margin-top:6px!important;font-size:.8rem!important;letter-spacing:.08em;color:#64748b!important}
.nmc-center-card-simple .tp-unit-top span{padding:8px 12px;font-size:.8rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.nmc-center-card-simple .nmc-card-badges{margin-top:0}
.nmc-center-card-simple .nmc-card-badge{min-height:30px;padding:0 10px;font-size:.76rem}
.nmc-center-card-simple .tp-unit-address{font-size:1.03rem!important;line-height:1.4!important;color:#334155!important;font-weight:850!important}
.nmc-center-card-simple .tp-unit-copy{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.6em;line-height:1.58!important;color:#64748b!important}
.nmc-center-card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:auto;padding-top:14px;border-top:1px solid rgba(15,23,42,.08)}
.nmc-center-card-foot .tp-unit-price{margin-top:0}
.nmc-center-card-foot .tp-unit-price strong{color:#0f172a;font-size:clamp(2rem,3vw,2.3rem)}
.nmc-center-card-foot .tp-unit-price small,.nmc-center-card-foot .tp-unit-price em{color:#64748b}
.nmc-card-size{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid #dbe2ea;background:#f8fafc;color:#334155;font-size:.92rem;font-weight:950;white-space:nowrap}
.nmc-card-actions-two{grid-template-columns:minmax(0,1.2fr) minmax(120px,.8fr)!important;gap:10px!important;margin-top:2px}
.nmc-card-actions-two a{min-height:48px!important;border-radius:15px!important;font-size:.94rem!important;padding:0 14px!important}
.nmc-card-actions-two a:first-child{box-shadow:0 12px 28px rgba(15,23,42,.12)}
.nmc-card-actions-two a:last-child{font-weight:950!important}
.nmc-center-card-simple .tp-unit-map{display:inline-flex;align-items:center;gap:7px;margin-top:2px;color:#64748b;text-decoration:none;font-weight:900}
.nmc-center-card-simple .tp-unit-map:before{content:'↗';display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:#f1f5f9;color:#0f172a;font-size:.78rem;line-height:1}
.nmc-center-card-simple:hover .tp-unit-map:before{background:#fee2e2;color:#991b1b}
.nmc-center-card-simple.managed{background:linear-gradient(180deg,#ffffff 0%,#f4fffd 100%)}
.nmc-center-card-simple.managed .nmc-card-size{border-color:#99f6e4;background:#ecfeff;color:#115e59}
.nmc-center-card-simple.soon .nmc-card-size{border-color:#fde68a;background:#fffbeb;color:#92400e}
@media(max-width:760px){.nmc-center-card-simple{padding:20px!important;border-radius:24px!important}.nmc-center-card-simple .tp-unit-copy{-webkit-line-clamp:4;min-height:0}.nmc-center-card-foot{align-items:flex-start;flex-direction:column}.nmc-card-size{min-height:36px;font-size:.88rem}.nmc-card-actions-two{grid-template-columns:1fr!important}}



/* v1.37.12 - cards premium de centros y web publica */
.nmc-centers-list-simple{gap:22px!important;align-items:stretch}.nmc-center-card-simple{position:relative;overflow:hidden;border-radius:34px!important;padding:0!important;border:1px solid rgba(15,23,42,.08)!important;background:#fff!important;box-shadow:0 22px 60px rgba(15,23,42,.075)!important;gap:0!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.nmc-center-card-simple:hover{transform:translateY(-4px);box-shadow:0 30px 78px rgba(15,23,42,.13)!important;border-color:rgba(220,38,38,.18)!important}.nmc-center-card-visual{min-height:112px;margin:0;display:flex!important;align-items:flex-end;justify-content:space-between;gap:16px;padding:20px 22px;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.38),transparent 28%),linear-gradient(135deg,#111827 0%,#1f2937 60%,#3b1111 100%);color:#fff}.nmc-center-card-visual .nmc-card-mark{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:20px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.22);font-size:1.9rem;font-weight:950;letter-spacing:-.05em}.nmc-center-card-visual div{display:grid;justify-items:end;gap:3px;text-align:right}.nmc-center-card-visual strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.11em;font-weight:950;color:#fff}.nmc-center-card-visual small{color:rgba(255,255,255,.78);font-size:.9rem;font-weight:800}.nmc-center-card-simple.open .nmc-center-card-visual{background:radial-gradient(circle at 20% 16%,rgba(255,255,255,.36),transparent 30%),linear-gradient(135deg,#111827 0%,#1f2937 58%,#14532d 100%)}.nmc-center-card-simple.managed .nmc-center-card-visual{background:radial-gradient(circle at 20% 16%,rgba(255,255,255,.36),transparent 30%),linear-gradient(135deg,#0f172a 0%,#134e4a 62%,#0d9488 100%)}.nmc-center-card-simple.soon .nmc-center-card-visual{background:radial-gradient(circle at 20% 16%,rgba(255,255,255,.38),transparent 30%),linear-gradient(135deg,#111827 0%,#78350f 62%,#f59e0b 100%)}.nmc-center-card-simple>.tp-unit-top,.nmc-center-card-simple>.nmc-card-badges,.nmc-center-card-simple>.tp-unit-address,.nmc-center-card-simple>.tp-unit-copy,.nmc-center-card-simple>.nmc-center-card-foot,.nmc-center-card-simple>.tp-unit-actions,.nmc-center-card-simple>.tp-unit-map{margin-left:22px!important;margin-right:22px!important}.nmc-center-card-simple>.tp-unit-top{padding-top:20px}.nmc-center-card-simple .tp-unit-top h3{font-size:clamp(1.45rem,2.4vw,1.9rem)!important;line-height:1!important;letter-spacing:-.055em!important}.nmc-center-card-simple .tp-unit-top p{margin-top:7px!important;letter-spacing:.09em!important}.nmc-center-card-simple .tp-unit-top>span{min-height:34px;padding:0 12px!important;font-size:.78rem!important}.nmc-center-card-simple>.nmc-card-badges{padding-top:12px}.nmc-center-card-simple .nmc-card-badge{min-height:31px;padding:0 11px!important}.nmc-center-card-simple>.tp-unit-address{margin-top:14px!important;color:#334155!important;font-size:1.03rem!important;line-height:1.4!important;font-weight:850!important}.nmc-center-card-simple>.tp-unit-copy{margin-top:10px!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.75em;color:#64748b!important;line-height:1.58!important}.nmc-center-card-foot{margin-top:18px!important;padding-top:16px!important;border-top:1px solid rgba(15,23,42,.08)!important}.nmc-center-card-foot .tp-unit-price strong{font-size:clamp(2rem,3vw,2.45rem)!important;color:#111827!important}.nmc-price-consult strong{font-size:clamp(1.32rem,2.2vw,1.75rem)!important}.nmc-card-size{min-height:40px!important;padding:0 15px!important;background:#f8fafc!important;border-color:#dbe2ea!important;color:#334155!important}.nmc-card-actions-two{margin-top:18px!important;grid-template-columns:minmax(0,1.26fr) minmax(120px,.74fr)!important;gap:10px!important}.nmc-card-actions-two a{min-height:50px!important;border-radius:17px!important;font-size:.95rem!important;text-decoration:none!important}.nmc-card-actions-two a:first-child{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important;box-shadow:0 18px 34px rgba(220,38,38,.24)!important}.nmc-card-actions-two a:first-child:hover{background:#b91c1c!important;border-color:#b91c1c!important}.nmc-card-actions-two a.whatsapp:first-child{background:#111827!important;border-color:#111827!important;box-shadow:0 18px 34px rgba(15,23,42,.18)!important}.nmc-center-card-simple.soon .nmc-card-actions-two a:first-child{background:#111827!important;border-color:#111827!important;box-shadow:0 18px 34px rgba(15,23,42,.18)!important}.nmc-card-actions-two a:last-child{background:#fff!important;border:1px solid #e2e8f0!important;color:#0f172a!important}.nmc-center-card-simple>.tp-unit-map{margin-top:14px!important;margin-bottom:22px!important;display:inline-flex!important;width:max-content;max-width:calc(100% - 44px);align-items:center;gap:8px;color:#64748b!important;font-size:.9rem!important;font-weight:950!important}.nmc-center-card-simple>.tp-unit-map:hover{color:#991b1b!important}.nmc-centers-list-simple:has(> .nmc-center-card-simple:only-child){grid-template-columns:minmax(300px,720px)!important;justify-content:center}.nmc-center-card-simple.is-active,.nmc-center-card-simple.is-user-nearest{transform:translateY(-2px)}@media(max-width:760px){.nmc-center-card-simple{border-radius:28px!important}.nmc-center-card-visual{min-height:96px;padding:18px}.nmc-center-card-visual .nmc-card-mark{width:52px;height:52px;border-radius:18px}.nmc-center-card-simple>.tp-unit-top,.nmc-center-card-simple>.nmc-card-badges,.nmc-center-card-simple>.tp-unit-address,.nmc-center-card-simple>.tp-unit-copy,.nmc-center-card-simple>.nmc-center-card-foot,.nmc-center-card-simple>.tp-unit-actions,.nmc-center-card-simple>.tp-unit-map{margin-left:18px!important;margin-right:18px!important}.nmc-center-card-simple>.tp-unit-copy{-webkit-line-clamp:4;min-height:0}.nmc-card-actions-two{grid-template-columns:1fr!important}.nmc-center-card-simple>.tp-unit-map{margin-bottom:18px!important;max-width:calc(100% - 36px)}}



/* v1.37.13 - fichas de centro premium y conversion local */
.nmc-center-premium-conversion{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);gap:18px;align-items:stretch;margin-top:28px;margin-bottom:26px}.nmc-center-premium-main,.nmc-center-next-step-card{border:1px solid rgba(15,23,42,.08);border-radius:32px;background:linear-gradient(180deg,#fff,#fffaf4);box-shadow:0 20px 55px rgba(15,23,42,.07);padding:28px}.nmc-center-premium-main h2,.nmc-center-use-head h2,.nmc-center-local-reputation h2{margin:8px 0 10px;color:#0f172a;font-size:clamp(2rem,4vw,3.6rem);line-height:.98;letter-spacing:-.065em}.nmc-center-premium-main p,.nmc-center-use-head p,.nmc-center-local-reputation p,.nmc-center-next-step-card p{margin:0;color:#64748b!important;line-height:1.58!important;font-weight:650}.nmc-center-premium-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}.nmc-center-premium-facts article{border:1px solid rgba(15,23,42,.08);border-radius:22px;background:#fff;padding:16px;min-height:118px}.nmc-center-premium-facts small,.nmc-center-size-guide small{display:block;color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:950}.nmc-center-premium-facts strong{display:block;margin-top:6px;color:#0f172a;font-size:1.18rem;line-height:1.05;letter-spacing:-.035em}.nmc-center-premium-facts span{display:block;margin-top:6px;color:#64748b;font-size:.88rem;font-weight:750;line-height:1.35}.nmc-center-next-step-card{background:linear-gradient(145deg,#111827,#241515 58%,#dc2626);color:#fff;display:flex;flex-direction:column}.nmc-center-next-step-card>span{display:inline-flex;width:max-content;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);padding:7px 10px;color:#fff;font-size:.75rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.nmc-center-next-step-card h3{margin:16px 0 10px;color:#fff;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1;letter-spacing:-.055em}.nmc-center-next-step-card p{color:rgba(255,255,255,.78)!important}.nmc-center-next-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:auto;padding-top:20px}.nmc-center-next-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:15px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.10);color:#fff!important;text-decoration:none!important;font-weight:950;text-align:center}.nmc-center-next-actions a.primary{background:#fff;color:#111827!important;border-color:#fff}.nmc-center-premium-conversion.managed .nmc-center-next-step-card{background:linear-gradient(145deg,#0f766e,#134e4a 62%,#111827)}.nmc-center-premium-conversion.soon .nmc-center-next-step-card{background:linear-gradient(145deg,#92400e,#78350f 62%,#111827)}.nmc-center-use-size{margin-top:28px;margin-bottom:34px}.nmc-center-use-head{max-width:850px;margin-bottom:18px}.nmc-center-use-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.nmc-center-use-grid article,.nmc-center-size-guide article{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:#fff;box-shadow:0 16px 42px rgba(15,23,42,.055);padding:22px}.nmc-center-use-grid span{display:inline-flex;font-size:1.65rem;margin-bottom:10px}.nmc-center-use-grid strong,.nmc-center-size-guide strong{display:block;color:#0f172a;font-size:1.22rem;line-height:1.08;letter-spacing:-.035em}.nmc-center-use-grid p,.nmc-center-size-guide p{margin:8px 0 0!important;color:#64748b!important;line-height:1.5!important;font-weight:650}.nmc-center-size-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px}.nmc-center-size-guide article{background:linear-gradient(180deg,#fff,#f8fafc)}.nmc-center-size-guide article.help{background:linear-gradient(145deg,#fff7f7,#fff)}.nmc-center-size-guide article.help a{display:inline-flex;margin-top:12px;color:#991b1b!important;font-weight:950;text-decoration:none!important}.nmc-center-local-reputation{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);gap:18px;align-items:center;margin-top:32px;margin-bottom:32px;padding:28px;border-radius:34px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(135deg,#fff,#fffaf4);box-shadow:0 18px 50px rgba(15,23,42,.065)}.nmc-center-local-reputation aside{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:#fff;padding:22px;box-shadow:0 14px 36px rgba(15,23,42,.05)}.nmc-center-local-reputation aside strong{display:block;color:#0f172a;font-size:1.35rem;letter-spacing:-.04em}.nmc-center-reputation-actions{display:grid;grid-template-columns:1fr;gap:9px;margin-top:16px}.nmc-center-reputation-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:14px;border:1px solid rgba(15,23,42,.10);background:#fff;color:#0f172a!important;text-decoration:none!important;font-weight:950;text-align:center}.nmc-center-reputation-actions a.primary{background:#111827;border-color:#111827;color:#fff!important}@media(max-width:1080px){.nmc-center-premium-conversion,.nmc-center-local-reputation{grid-template-columns:1fr}.nmc-center-premium-facts,.nmc-center-use-grid,.nmc-center-size-guide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.nmc-center-premium-main,.nmc-center-next-step-card,.nmc-center-local-reputation{border-radius:24px;padding:20px}.nmc-center-premium-facts,.nmc-center-use-grid,.nmc-center-size-guide{grid-template-columns:1fr}.nmc-center-premium-facts article{min-height:0}.nmc-center-local-reputation{padding:20px}}



/* v1.37.17 availability script widget */
.nmc-real-availability .nmc-availability-script{grid-column:1/-1;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.20);background:#fff;color:#0f172a;padding:14px;box-shadow:inset 0 0 0 1px rgba(15,23,42,.05)}
.nmc-real-availability .nmc-availability-script #trasteros-pro-widget{display:block;min-height:240px}
.nmc-real-availability .nmc-availability-script script{display:none!important}


/* v1.37.19 - landings locales con disponibilidad real */
.nmc-city-availability{margin-top:18px;margin-bottom:34px;padding:30px;border-radius:34px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(135deg,#fff,#fff7f7 58%,#f8fafc);box-shadow:0 22px 62px rgba(15,23,42,.08)}
.nmc-city-availability-head{display:grid;gap:8px;max-width:880px;margin:0 auto 20px;text-align:center}.nmc-city-availability-head h2{margin:0;color:#0f172a;font-size:clamp(1.9rem,4vw,3rem);line-height:1.02;letter-spacing:-.055em}.nmc-city-availability-head p{margin:0;color:#64748b;line-height:1.6}.nmc-city-availability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.nmc-city-availability-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:20px;box-shadow:0 14px 38px rgba(15,23,42,.07);display:flex;flex-direction:column;gap:10px}.nmc-city-availability-card>span{width:max-content;display:inline-flex;align-items:center;min-height:30px;border-radius:999px;background:#fee2e2;color:#991b1b;padding:0 10px;font-size:.74rem;font-weight:950;text-transform:uppercase;letter-spacing:.04em}.nmc-city-availability-card h3{margin:0;color:#0f172a;font-size:1.35rem;letter-spacing:-.04em;line-height:1.05}.nmc-city-availability-card p{margin:0;color:#64748b;font-weight:850}.nmc-city-availability-card dl{display:grid;gap:8px;margin:4px 0 8px}.nmc-city-availability-card dl div{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.nmc-city-availability-card dt{color:#64748b;font-weight:900}.nmc-city-availability-card dd{margin:0;color:#0f172a;font-weight:950;text-align:right}.nmc-city-availability-actions{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:9px}.nmc-city-availability-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:14px;border:1px solid #e2e8f0;color:#0f172a;text-decoration:none;font-weight:950;text-align:center;padding:0 12px}.nmc-city-availability-actions a.primary{background:#dc2626;border-color:#dc2626;color:#fff;box-shadow:0 14px 28px rgba(220,38,38,.20)}@media(max-width:720px){.nmc-city-availability{padding:20px;border-radius:24px}.nmc-city-availability-actions{grid-template-columns:1fr}.nmc-city-availability-card dl div{display:block}.nmc-city-availability-card dd{text-align:left;margin-top:2px}}



/* v1.37.20 - blog social sharing, Instagram profile cards and editorial polish */
.nmc-blog-share{margin-top:22px;border:1px solid rgba(15,23,42,.08);border-radius:24px;background:linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 16px 42px rgba(15,23,42,.06);padding:18px;display:grid;gap:12px}.nmc-blog-share strong{color:#0f172a;font-size:1rem}.nmc-blog-share>div{display:flex;flex-wrap:wrap;gap:8px}.nmc-blog-share a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;text-decoration:none;font-weight:950;font-size:.88rem;padding:0 12px}.nmc-blog-share a:first-child{background:#22c55e;border-color:#22c55e;color:#fff}.nmc-blog-share a:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,23,42,.08)}.nmc-blog-share small{display:block;color:#64748b;line-height:1.45}.nmc-blog-share code{font-family:inherit;background:#f1f5f9;border-radius:999px;padding:3px 8px;color:#334155;word-break:break-all}.nmc-instagram-section{margin:12px auto 24px;display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:18px;align-items:stretch}.nmc-instagram-section>div:first-child,.nmc-instagram-card{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:linear-gradient(135deg,#fff,#fff7fb);box-shadow:0 18px 44px rgba(15,23,42,.06);padding:24px}.nmc-instagram-section h2{margin:8px 0;color:#0f172a;font-size:clamp(1.55rem,3vw,2.4rem);letter-spacing:-.045em}.nmc-instagram-section p,.nmc-instagram-card p{color:#64748b!important;line-height:1.55!important;margin:0!important}.nmc-instagram-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.nmc-instagram-grid a,.nmc-instagram-card a{display:grid;gap:4px;border:1px solid rgba(193,53,132,.14);background:#fff;border-radius:20px;padding:16px;text-decoration:none;box-shadow:0 12px 30px rgba(15,23,42,.05)}.nmc-instagram-grid a:hover,.nmc-instagram-card a:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(193,53,132,.12);border-color:rgba(193,53,132,.30)}.nmc-instagram-grid a span,.nmc-instagram-card a span{width:max-content;border-radius:999px;background:#fdf2f8;color:#9d174d;padding:5px 9px;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950}.nmc-instagram-grid a strong,.nmc-instagram-card a strong{color:#0f172a;font-size:1.1rem}.nmc-instagram-grid a small,.nmc-instagram-card a small{color:#64748b;line-height:1.4}.nmc-instagram-card>div{display:grid;gap:10px;margin-top:14px}@media(max-width:860px){.nmc-instagram-section{grid-template-columns:1fr}.nmc-blog-share>div{display:grid;grid-template-columns:1fr 1fr}.nmc-blog-share a{width:100%}}@media(max-width:520px){.nmc-blog-share>div{grid-template-columns:1fr}.nmc-blog-share,.nmc-instagram-section>div:first-child,.nmc-instagram-card{border-radius:20px;padding:18px}}



/* v1.37.21 - botonera premium para compartir articulos */
.nmc-blog-share{margin:24px auto 0!important;max-width:860px!important;border:1px solid rgba(15,23,42,.08)!important;border-radius:26px!important;background:linear-gradient(135deg,#fff,#f8fafc)!important;box-shadow:0 18px 46px rgba(15,23,42,.075)!important;padding:20px!important;display:grid!important;gap:14px!important;text-align:left!important}
.nmc-blog-share-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;flex-wrap:wrap!important}.nmc-blog-share-title{display:grid!important;gap:2px!important}.nmc-blog-share-title strong{margin:0!important;color:#0f172a!important;font-size:1.05rem!important;line-height:1.15!important}.nmc-blog-share-title span{color:#64748b!important;font-size:.88rem!important;font-weight:750!important}.nmc-blog-share-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important}.nmc-blog-share-actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;border-radius:999px!important;border:1px solid #e2e8f0!important;background:#fff!important;color:#0f172a!important;text-decoration:none!important;font-weight:950!important;font-size:.9rem!important;line-height:1!important;padding:0 14px!important;box-shadow:0 8px 20px rgba(15,23,42,.045)!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important}.nmc-blog-share-actions a:hover,.nmc-blog-share-actions a:focus-visible{transform:translateY(-1px)!important;box-shadow:0 14px 28px rgba(15,23,42,.10)!important;outline:0!important}.nmc-share-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:24px!important;border-radius:999px!important;background:#f1f5f9!important;color:#0f172a!important;font-size:.82rem!important;font-weight:950!important;line-height:1!important}.nmc-share-whatsapp{background:#22c55e!important;border-color:#22c55e!important;color:#fff!important}.nmc-share-whatsapp .nmc-share-icon{background:rgba(255,255,255,.20)!important;color:#fff!important}.nmc-share-facebook .nmc-share-icon{background:#eff6ff!important;color:#2563eb!important}.nmc-share-linkedin .nmc-share-icon{background:#eff6ff!important;color:#0a66c2!important}.nmc-share-x .nmc-share-icon{background:#111827!important;color:#fff!important}.nmc-share-email .nmc-share-icon{background:#fee2e2!important;color:#991b1b!important}.nmc-blog-share-link{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;color:#64748b!important;font-size:.86rem!important;line-height:1.45!important}.nmc-blog-share-link code{font-family:inherit!important;background:#f1f5f9!important;border:1px solid #e2e8f0!important;border-radius:999px!important;padding:5px 10px!important;color:#334155!important;word-break:break-all!important;white-space:normal!important}@media(max-width:680px){.nmc-blog-share{border-radius:22px!important;padding:18px!important}.nmc-blog-share-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}.nmc-blog-share-actions a{width:100%!important}}@media(max-width:460px){.nmc-blog-share-actions{grid-template-columns:1fr!important}.nmc-blog-share-link code{border-radius:14px!important}}



/* v1.37.22 - Blog share solo iconos + Instagram @somosnomascaos */
.nmc-blog-share-actions a{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important;border-radius:999px!important}
.nmc-blog-share-actions a>span:not(.nmc-share-icon){display:none!important}
.nmc-share-icon{width:22px!important;height:22px!important;background:transparent!important}
.nmc-share-icon svg{display:block!important;width:22px!important;height:22px!important;fill:currentColor!important;stroke:none!important}
.nmc-share-whatsapp{background:#22c55e!important;border-color:#22c55e!important;color:#fff!important}.nmc-share-facebook{color:#2563eb!important}.nmc-share-linkedin{color:#0a66c2!important}.nmc-share-x{background:#111827!important;border-color:#111827!important;color:#fff!important}.nmc-share-email{color:#991b1b!important;background:#fff7f7!important;border-color:#fecaca!important}
.nmc-instagram-section>div:first-child,.nmc-instagram-card{background:linear-gradient(135deg,#fff,#fff7fb)!important;border:1px solid rgba(193,53,132,.14)!important}.nmc-instagram-grid a,.nmc-instagram-card a{display:flex!important;align-items:center!important;gap:12px!important}.nmc-instagram-grid i,.nmc-instagram-card i{display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:17px!important;color:#fff!important;background:linear-gradient(135deg,#f97316,#dc2626 45%,#7c3aed)!important;flex:0 0 auto!important}.nmc-instagram-grid i{width:48px!important;height:48px!important}.nmc-instagram-card i{width:42px!important;height:42px!important}.nmc-instagram-grid i svg,.nmc-instagram-card i svg{stroke:currentColor!important;fill:none!important;stroke-width:1.8!important}



/* v1.37.23 - compartir blog Instagram/TikTok y videos visibles */
.nmc-share-instagram{background:linear-gradient(135deg,#f97316,#dc2626 48%,#7c3aed)!important;border-color:transparent!important;color:#fff!important}
.nmc-share-tiktok{background:#050505!important;border-color:#050505!important;color:#fff!important}
.nmc-center-video-business{scroll-margin-top:120px!important}
.nmc-center-video-business .nmc-center-video-panel{position:relative!important}
.nmc-center-video-business .nmc-center-video-panel:before{content:'Vídeos visibles en esta ficha';display:inline-flex!important;margin-bottom:10px;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#fff1f1;color:#991b1b;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.nmc-center-video-card iframe{min-height:190px}
@media(max-width:680px){.nmc-center-video-card iframe{min-height:170px}}


/* v1.37.28 - revision visual acumulada y safety net */
.nmc-public .nmc-real-availability,.nmc-public .nmc-center-premium-conversion,.nmc-public .nmc-center-local-reputation,.nmc-public .nmc-center-video-business{box-sizing:border-box}
.nmc-public .nmc-real-availability a,.nmc-public .nmc-center-premium-conversion a,.nmc-public .nmc-center-local-reputation a,.nmc-public .nmc-center-video-business a{word-break:normal;overflow-wrap:anywhere}
.nmc-blog-share-icons,.nmc-share-icons,.blog-share-icons{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;margin-top:14px!important}
.nmc-blog-share-icons a,.nmc-share-icons a,.blog-share-icons a{display:inline-flex!important;width:44px!important;height:44px!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;border:1px solid rgba(15,23,42,.10)!important;background:#fff!important;color:#0f172a!important;text-decoration:none!important;box-shadow:0 10px 24px rgba(15,23,42,.08)!important}
.nmc-blog-share-icons a svg,.nmc-share-icons a svg,.blog-share-icons a svg{width:21px!important;height:21px!important;display:block!important;fill:currentColor!important}
.nmc-blog-share-icons a:hover,.nmc-share-icons a:hover,.blog-share-icons a:hover{transform:translateY(-1px)!important;background:#fee2e2!important;color:#991b1b!important}
.nmc-instagram-card,.nmc-instagram-block,.blog-instagram-card{display:grid!important;gap:12px!important;border:1px solid rgba(225,29,72,.14)!important;border-radius:26px!important;background:linear-gradient(135deg,#fff,#fff7fb)!important;padding:22px!important;box-shadow:0 16px 42px rgba(15,23,42,.07)!important;color:#0f172a!important}
.nmc-instagram-card a,.nmc-instagram-block a,.blog-instagram-card a{display:inline-flex!important;width:max-content!important;max-width:100%!important;min-height:42px!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;background:#111827!important;color:#fff!important;padding:0 16px!important;text-decoration:none!important;font-weight:950!important}
.nmc-center-video-business iframe,.nmc-youtube-grid iframe,.nmc-center-videos iframe{width:100%!important;aspect-ratio:16/9!important;border:0!important;border-radius:18px!important;background:#0f172a!important}
.nmc-availability-script script{display:none!important}
.nmc-upload-page input[type="url"],.nmc-upload-page input[type="text"],.nmc-upload-page input[type="number"],.nmc-upload-page textarea,.nmc-upload-page select{max-width:100%!important}
.nmc-security-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border-radius:999px;padding:0 10px;font-size:.78rem;font-weight:950;background:#e0f2fe;color:#075985}
.nmc-security-badge.ok{background:#dcfce7;color:#166534}.nmc-security-badge.warning{background:#fef3c7;color:#92400e}.nmc-security-badge.danger{background:#fee2e2;color:#991b1b}
@media(max-width:760px){.nmc-blog-share-icons a,.nmc-share-icons a,.blog-share-icons a{width:42px!important;height:42px!important}.nmc-instagram-card,.nmc-instagram-block,.blog-instagram-card{border-radius:22px!important;padding:18px!important}}



/* v1.37.37 - mapa-centros: botonera de busqueda uniforme y legible */
.nmc-full-map-toolbar,
.nmc-map-actions{
  align-items:center!important;
}
.nmc-full-map-toolbar button,
.nmc-full-map-toolbar a,
.nmc-map-actions button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:40px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  line-height:1!important;
  text-align:center!important;
  box-sizing:border-box!important;
}
.nmc-full-map-toolbar button[hidden],
.nmc-map-actions button[hidden]{
  display:none!important;
}
.nmc-full-map-toolbar button[data-nmc-search-area]:not([hidden]),
.nmc-map-actions button[data-nmc-search-area]:not([hidden]){
  background:#fff!important;
  color:#0f172a!important;
  border:1px solid rgba(15,23,42,.14)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.09)!important;
}
.nmc-full-map-toolbar button[data-nmc-search-area].is-active,
.nmc-map-actions button[data-nmc-search-area].is-active{
  background:#111827!important;
  color:#fff!important;
  border-color:#111827!important;
}
@media(max-width:640px){
  .nmc-full-map-toolbar{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  .nmc-full-map-toolbar button,
  .nmc-full-map-toolbar a{
    width:100%!important;
    min-height:38px!important;
    padding:0 9px!important;
    font-size:.8rem!important;
  }
  .nmc-map-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }
  .nmc-map-actions button{
    width:100%!important;
    min-height:38px!important;
    padding:0 9px!important;
    font-size:.82rem!important;
  }
}

/* v1.37.39 - mapa-centros sobrio tipo listado + mapa, inspirado en patrones de buscadores sin copiar marca externa */
.nmc-full-map-page[data-map-view]{background:#f5f6f8!important;color:#111827!important;}
.nmc-full-map-page .nmc-full-map-shell{grid-template-columns:minmax(390px,520px) minmax(0,1fr)!important;background:#f5f6f8!important;}
.nmc-full-map-page .nmc-full-map-panel{background:#f5f6f8!important;padding:18px!important;}
.nmc-full-map-intro{margin-bottom:12px!important;gap:7px!important;}
.nmc-full-map-intro h1{font-size:clamp(1.8rem,3vw,2.55rem)!important;line-height:1.04!important;letter-spacing:-.045em!important;}
.nmc-full-map-intro p{font-size:.96rem!important;color:#5b6472!important;line-height:1.45!important;}
.nmc-full-map-intro>strong,.nmc-full-map-intro .eyebrow{display:inline-flex!important;width:max-content!important;border-radius:999px!important;background:#fff!important;border:1px solid rgba(17,24,39,.10)!important;color:#991b1b!important;padding:6px 10px!important;font-size:.78rem!important;font-weight:950!important;box-shadow:none!important;}
.nmc-map-reference-strip{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:10px 0 12px!important;}
.nmc-map-helpbar{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-width:0!important;}
.nmc-map-helpbar strong,.nmc-map-helpbar a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;border-radius:999px!important;padding:0 11px!important;border:1px solid rgba(17,24,39,.10)!important;background:#fff!important;color:#111827!important;text-decoration:none!important;font-size:.82rem!important;font-weight:900!important;white-space:nowrap!important;}
.nmc-map-helpbar strong{background:#111827!important;color:#fff!important;border-color:#111827!important;}
.nmc-map-helpbar a:hover{border-color:rgba(220,38,38,.35)!important;color:#991b1b!important;}
.nmc-map-view-tabs{display:inline-flex!important;align-items:center!important;gap:4px!important;border:1px solid rgba(17,24,39,.10)!important;background:#fff!important;border-radius:999px!important;padding:4px!important;box-shadow:0 8px 22px rgba(17,24,39,.06)!important;}
.nmc-map-view-tabs button{appearance:none!important;border:0!important;background:transparent!important;color:#475569!important;border-radius:999px!important;min-height:30px!important;padding:0 12px!important;font-weight:950!important;cursor:pointer!important;}
.nmc-map-view-tabs button.is-active{background:#dc2626!important;color:#fff!important;}
.nmc-full-map-page .nmc-center-filters.nmc-map-searchbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:12px!important;margin:0 0 12px!important;background:#fff!important;border-radius:18px!important;border:1px solid rgba(17,24,39,.09)!important;box-shadow:0 10px 24px rgba(17,24,39,.055)!important;}
.nmc-full-map-page .nmc-filter-search{display:grid!important;gap:5px!important;}
.nmc-full-map-page .nmc-filter-search span{font-size:.72rem!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#64748b!important;font-weight:950!important;}
.nmc-full-map-page .nmc-filter-search input{min-height:44px!important;border-radius:12px!important;border:1px solid rgba(17,24,39,.12)!important;background:#fff!important;padding:0 12px!important;font-size:16px!important;font-weight:800!important;}
.nmc-full-map-page .nmc-filter-chips{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin:0!important;padding:0!important;}
.nmc-full-map-page .nmc-filter-chip,.nmc-map-radius-row button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;border-radius:999px!important;border:1px solid rgba(17,24,39,.12)!important;background:#fff!important;color:#334155!important;padding:0 10px!important;font-size:.78rem!important;font-weight:950!important;white-space:nowrap!important;cursor:pointer!important;}
.nmc-full-map-page .nmc-filter-chip.is-active,.nmc-map-radius-row button.is-active{background:#111827!important;color:#fff!important;border-color:#111827!important;}
.nmc-map-radius-row{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;}
.nmc-map-radius-row span{color:#64748b!important;font-size:.78rem!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.08em!important;margin-right:2px!important;}
.nmc-full-map-page .nmc-filter-result{margin:0!important;color:#475569!important;font-size:.88rem!important;font-weight:900!important;}
.nmc-full-map-list{gap:10px!important;padding-bottom:20px!important;}
.nmc-aquilo-center-card{display:grid!important;grid-template-columns:128px minmax(0,1fr)!important;gap:0!important;padding:0!important;overflow:hidden!important;border-radius:18px!important;background:#fff!important;border:1px solid rgba(17,24,39,.08)!important;box-shadow:0 8px 22px rgba(17,24,39,.055)!important;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease!important;}
.nmc-aquilo-center-card[hidden]{display:none!important;}
.nmc-aquilo-center-card:hover,.nmc-aquilo-center-card.is-active,.nmc-aquilo-center-card.is-nearest{transform:translateY(-1px)!important;border-color:rgba(220,38,38,.34)!important;box-shadow:0 14px 30px rgba(220,38,38,.11)!important;}
.nmc-full-map-card-photo{margin:0!important;min-height:150px!important;background:linear-gradient(135deg,#e5e7eb,#f8fafc)!important;position:relative!important;overflow:hidden!important;}
.nmc-full-map-card-photo img{display:block!important;width:100%!important;height:100%!important;min-height:150px!important;object-fit:cover!important;}
.nmc-full-map-card-photo.placeholder{display:grid!important;place-items:center!important;background:linear-gradient(135deg,#111827,#991b1b)!important;color:#fff!important;}
.nmc-full-map-card-photo.placeholder span{font-weight:950!important;letter-spacing:-.03em!important;}
.nmc-full-map-card-body{display:grid!important;gap:6px!important;padding:13px 14px!important;min-width:0!important;}
.nmc-full-map-card-kpis{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;color:#64748b!important;font-size:.82rem!important;font-weight:900!important;}
.nmc-full-map-card-kpis span{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.nmc-full-map-card-kpis strong{color:#dc2626!important;font-size:.96rem!important;white-space:nowrap!important;}
.nmc-full-map-promo{display:inline-flex!important;width:max-content!important;max-width:100%!important;border-radius:999px!important;background:#fff7ed!important;color:#c2410c!important;border:1px solid #fed7aa!important;min-height:24px!important;align-items:center!important;padding:0 8px!important;font-size:.72rem!important;font-weight:950!important;}
.nmc-aquilo-center-card h2{margin:0!important;color:#111827!important;font-size:1.03rem!important;line-height:1.16!important;letter-spacing:-.025em!important;}
.nmc-aquilo-center-card p{margin:0!important;color:#475569!important;font-size:.88rem!important;line-height:1.35!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.nmc-full-map-distance{display:block!important;color:#64748b!important;font-size:.82rem!important;font-weight:850!important;}
.nmc-aquilo-center-card .nmc-full-map-card-actions{display:grid!important;grid-template-columns:.8fr 1fr!important;gap:7px!important;margin-top:4px!important;}
.nmc-aquilo-center-card .nmc-full-map-card-actions a{min-height:36px!important;border-radius:10px!important;font-size:.83rem!important;font-weight:950!important;}
.nmc-aquilo-center-card .nmc-full-map-card-actions a.primary{background:#111827!important;border-color:#111827!important;color:#fff!important;}
.nmc-aquilo-center-card .nmc-full-map-card-actions a.primary:hover{background:#dc2626!important;border-color:#dc2626!important;}
.nmc-aquilo-center-card.is-nearest::before{content:"Más cercano"!important;position:absolute!important;z-index:2!important;left:8px!important;top:8px!important;margin:0!important;background:#dc2626!important;color:#fff!important;box-shadow:0 8px 18px rgba(220,38,38,.18)!important;}
.nmc-full-map-toolbar button,.nmc-full-map-toolbar a{min-height:36px!important;border-radius:999px!important;font-size:.84rem!important;}
@media(max-width:980px){
  .nmc-full-map-page .nmc-full-map-shell{display:flex!important;flex-direction:column!important;min-height:auto!important;}
  .nmc-full-map-page .nmc-full-map-panel{order:1!important;position:relative!important;max-height:none!important;overflow:visible!important;border-right:0!important;box-shadow:none!important;padding:14px!important;}
  .nmc-full-map-page .nmc-full-map-canvas-wrap{order:2!important;position:relative!important;top:auto!important;height:58vh!important;min-height:360px!important;max-height:none!important;margin:0 14px 16px!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 14px 34px rgba(17,24,39,.14)!important;}
  .nmc-full-map-page .nmc-full-map-canvas{height:100%!important;min-height:0!important;border-radius:22px!important;}
  .nmc-full-map-page[data-map-view="list"] .nmc-full-map-canvas-wrap{display:none!important;}
  .nmc-full-map-page[data-map-view="map"] .nmc-full-map-list,.nmc-full-map-page[data-map-view="map"] .nmc-centers-empty{display:none!important;}
  .nmc-full-map-page[data-map-view="map"] .nmc-full-map-canvas-wrap{display:block!important;}
  .nmc-map-reference-strip{position:sticky!important;top:0!important;z-index:30!important;background:rgba(245,246,248,.96)!important;padding:6px 0!important;backdrop-filter:blur(10px)!important;}
}
@media(max-width:640px){
  .nmc-map-reference-strip{display:grid!important;grid-template-columns:1fr!important;}
  .nmc-map-helpbar{overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:2px!important;scrollbar-width:none!important;}
  .nmc-map-helpbar::-webkit-scrollbar{display:none!important;}
  .nmc-map-view-tabs{width:100%!important;}
  .nmc-map-view-tabs button{flex:1!important;}
  .nmc-full-map-page .nmc-filter-chips,.nmc-map-radius-row{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:2px!important;scrollbar-width:none!important;}
  .nmc-full-map-page .nmc-filter-chips::-webkit-scrollbar,.nmc-map-radius-row::-webkit-scrollbar{display:none!important;}
  .nmc-aquilo-center-card{grid-template-columns:112px minmax(0,1fr)!important;border-radius:16px!important;}
  .nmc-full-map-card-photo,.nmc-full-map-card-photo img{min-height:144px!important;}
  .nmc-full-map-card-body{padding:11px!important;gap:5px!important;}
  .nmc-full-map-card-kpis{align-items:flex-start!important;flex-direction:column!important;gap:2px!important;}
  .nmc-aquilo-center-card h2{font-size:.98rem!important;}
  .nmc-aquilo-center-card p,.nmc-full-map-distance{font-size:.8rem!important;}
  .nmc-aquilo-center-card .nmc-full-map-card-actions{grid-template-columns:1fr 1fr!important;}
  .nmc-aquilo-center-card .nmc-full-map-card-actions a{min-height:34px!important;font-size:.8rem!important;}
}
@media(max-width:390px){
  .nmc-aquilo-center-card{grid-template-columns:1fr!important;}
  .nmc-full-map-card-photo,.nmc-full-map-card-photo img{min-height:130px!important;}
}

/* v1.37.41 - presentacion premium del comparador de centros */
.nmc-full-map-page .nmc-full-map-panel{background:linear-gradient(180deg,#f8fafc 0%,#f5f6f8 58%,#eef2f7 100%)!important;}
.nmc-full-map-page .nmc-full-map-intro{position:relative!important;padding:2px 0 4px!important;}
.nmc-full-map-page .nmc-full-map-intro h1{max-width:11ch!important;font-size:clamp(2.35rem,4.6vw,4.7rem)!important;line-height:.9!important;letter-spacing:-.075em!important;}
.nmc-full-map-page .nmc-full-map-intro p{max-width:44rem!important;color:#536171!important;font-weight:650!important;}
.nmc-map-intro-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin-top:4px!important;}
.nmc-map-intro-actions strong,.nmc-map-intro-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;border-radius:999px!important;padding:0 12px!important;font-size:.82rem!important;font-weight:950!important;white-space:nowrap!important;}
.nmc-map-intro-actions strong{background:#111827!important;color:#fff!important;box-shadow:0 12px 28px rgba(17,24,39,.16)!important;}
.nmc-map-intro-actions button{appearance:none!important;border:1px solid rgba(220,38,38,.24)!important;background:#fff!important;color:#991b1b!important;cursor:pointer!important;box-shadow:0 8px 22px rgba(17,24,39,.06)!important;}
.nmc-map-intro-actions button:hover{background:#fff7f7!important;border-color:rgba(220,38,38,.42)!important;transform:translateY(-1px)!important;}
.nmc-map-proof-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:12px 0 4px!important;}
.nmc-map-proof-strip article{background:rgba(255,255,255,.88)!important;border:1px solid rgba(17,24,39,.08)!important;border-radius:18px!important;padding:12px!important;box-shadow:0 10px 26px rgba(17,24,39,.055)!important;}
.nmc-map-proof-strip strong{display:block!important;color:#111827!important;font-size:1rem!important;line-height:1.05!important;letter-spacing:-.035em!important;}
.nmc-map-proof-strip span{display:block!important;margin-top:4px!important;color:#64748b!important;font-size:.74rem!important;font-weight:850!important;line-height:1.25!important;}
.nmc-map-sort-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:9px!important;align-items:end!important;}
.nmc-map-sort-row label{display:grid!important;gap:5px!important;}
.nmc-map-sort-row label span{font-size:.72rem!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#64748b!important;font-weight:950!important;}
.nmc-map-sort-row select{width:100%!important;min-height:42px!important;border-radius:12px!important;border:1px solid rgba(17,24,39,.12)!important;background:#fff!important;color:#111827!important;padding:0 12px!important;font-size:.92rem!important;font-weight:900!important;outline:0!important;}
.nmc-map-sort-row select:focus{border-color:rgba(220,38,38,.38)!important;box-shadow:0 0 0 4px rgba(220,38,38,.08)!important;}
.nmc-map-sort-row small{color:#64748b!important;font-size:.76rem!important;font-weight:850!important;line-height:1.25!important;max-width:16rem!important;}
.nmc-aquilo-center-card{overflow:hidden!important;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%)!important;}
.nmc-aquilo-center-card.is-nearest,.nmc-aquilo-center-card.is-user-nearest{border-color:rgba(220,38,38,.35)!important;box-shadow:0 18px 44px rgba(220,38,38,.13)!important;}
.nmc-aquilo-center-card h2{font-size:clamp(1.08rem,2vw,1.28rem)!important;line-height:1.05!important;letter-spacing:-.045em!important;}
.nmc-full-map-proof-mini{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:wrap!important;margin:2px 0!important;}
.nmc-full-map-proof-mini span{display:inline-flex!important;align-items:center!important;min-height:23px!important;border-radius:999px!important;padding:0 7px!important;background:#f8fafc!important;border:1px solid rgba(17,24,39,.08)!important;color:#475569!important;font-size:.69rem!important;font-weight:950!important;white-space:nowrap!important;}
.nmc-full-map-card-actions a.primary{box-shadow:0 10px 22px rgba(17,24,39,.14)!important;}
.nmc-full-map-canvas-wrap{box-shadow:inset 0 0 0 1px rgba(17,24,39,.08)!important;}
@media(max-width:860px){
  .nmc-full-map-page .nmc-full-map-intro h1{max-width:12ch!important;font-size:clamp(2.3rem,12vw,3.75rem)!important;}
  .nmc-map-proof-strip{grid-template-columns:1fr!important;gap:7px!important;}
  .nmc-map-proof-strip article{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:10px 12px!important;}
  .nmc-map-proof-strip span{text-align:right!important;margin-top:0!important;}
  .nmc-map-sort-row{grid-template-columns:1fr!important;align-items:start!important;}
  .nmc-map-sort-row small{max-width:none!important;}
}
@media(max-width:520px){
  .nmc-map-intro-actions{display:grid!important;grid-template-columns:1fr!important;}
  .nmc-map-intro-actions strong,.nmc-map-intro-actions button{width:100%!important;}
  .nmc-full-map-proof-mini span{font-size:.66rem!important;padding:0 6px!important;}
}

/* v1.37.45 - bloques públicos TrasterosPubBuilder */
.tp-builder-hero{padding:clamp(24px,4vw,46px);border-radius:28px;background:linear-gradient(135deg,#111827,#7f1d1d);color:#fff;margin:24px auto;box-shadow:0 24px 60px -36px rgba(15,23,42,.9)}.tp-builder-hero .eyebrow,.tp-builder-copy .eyebrow,.tp-builder-availability .eyebrow{font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:#fecaca}.tp-builder-hero h2{font-size:clamp(2rem,5vw,4rem);line-height:1.02;margin:8px 0}.tp-builder-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.tp-builder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px auto}.tp-builder-grid article{border:1px solid #e5e7eb;border-radius:22px;padding:18px;background:#fff;box-shadow:0 18px 40px -30px rgba(15,23,42,.55)}.tp-builder-grid strong{display:block;color:#111827;font-weight:950;font-size:1.02rem}.tp-builder-grid span{display:block;color:#64748b;margin-top:5px}.tp-builder-copy,.tp-builder-availability,.tp-builder-cta{border:1px solid #e5e7eb;border-radius:28px;padding:clamp(18px,3vw,30px);margin:24px auto;background:#fff}.tp-builder-copy h2,.tp-builder-availability h2,.tp-builder-cta h2{margin-top:0;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.08}.tp-builder-availability{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#fff7ed;border-color:#fed7aa}.tp-builder-cta{text-align:center;background:linear-gradient(135deg,#fff7f7,#fff);border-color:#fecaca}@media(max-width:760px){.tp-builder-grid{grid-template-columns:1fr}.tp-builder-availability{display:block}.tp-builder-actions .hero-btn{width:100%;text-align:center}}

/* v1.37.47 - Calculadoras visuales cliente/inversores/coste centro */
.nmc-calc-page{background:#f8fafc;color:#0f172a}.nmc-calc-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:stretch;padding:38px 0 22px}.nmc-calc-hero-copy,.nmc-calc-hero-panel,.nmc-calc-card,.nmc-calc-result-panel,.nmc-calc-tool-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:30px;box-shadow:0 24px 70px rgba(15,23,42,.08)}.nmc-calc-hero-copy{padding:40px}.nmc-calc-hero-copy h1{font-size:clamp(2.6rem,6vw,5.4rem);line-height:.92;letter-spacing:-.07em;margin:12px 0;color:#0f172a}.nmc-calc-hero-copy p{font-size:1.15rem;line-height:1.6;color:#475569;max-width:760px}.nmc-calc-hero-panel{padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;background:radial-gradient(circle at 20% 0,#fecaca,transparent 36%),linear-gradient(145deg,#101827,#24304a);color:#fff;overflow:hidden}.nmc-calc-hero-panel strong{display:block;font-size:clamp(2rem,5vw,4rem);line-height:.95;letter-spacing:-.06em}.nmc-calc-hero-panel span{color:#dbeafe;font-weight:800}.nmc-calc-mini-link{display:inline-flex;width:max-content;align-items:center;justify-content:center;min-height:42px;border-radius:14px;background:#fff;color:#0f172a;text-decoration:none;font-weight:950;padding:0 14px}.nmc-calc-stack-preview{display:grid;grid-template-columns:repeat(3,44px);gap:8px;transform:rotate(-4deg);width:max-content}.nmc-calc-stack-preview i{width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}.nmc-calc-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.nmc-calc-tool-card{display:block;padding:26px;text-decoration:none;color:#0f172a;transition:transform .18s ease,box-shadow .18s ease}.nmc-calc-tool-card:hover{transform:translateY(-3px);box-shadow:0 28px 80px rgba(15,23,42,.12)}.nmc-calc-tool-card span{display:inline-flex;width:44px;height:44px;border-radius:16px;background:#fee2e2;color:#991b1b;align-items:center;justify-content:center;font-weight:950}.nmc-calc-tool-card h2{font-size:1.45rem;letter-spacing:-.035em;margin:16px 0 8px}.nmc-calc-tool-card p{color:#64748b;line-height:1.58;margin:0}.nmc-calc-shell{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:22px;align-items:start}.nmc-calc-workspace{display:grid;gap:18px}.nmc-calc-card,.nmc-calc-result-panel{padding:24px}.nmc-calc-card-head h2,.nmc-calc-finance-form h2{font-size:clamp(1.5rem,3vw,2.4rem);letter-spacing:-.045em;margin:10px 0;color:#0f172a}.nmc-calc-card-head p,.nmc-calc-finance-form p,.nmc-calc-result-panel small{color:#64748b;line-height:1.55}.nmc-calc-preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.nmc-calc-preset-grid button{min-height:48px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;color:#0f172a;font-weight:950;cursor:pointer;padding:0 12px}.nmc-calc-preset-grid button:hover,.nmc-calc-preset-grid button.is-active{border-color:#fecaca;background:#fff1f2;color:#991b1b}.nmc-calc-item-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.nmc-calc-item{border:1px solid #e2e8f0;border-radius:22px;background:#fff;padding:14px;display:grid;gap:8px;box-shadow:0 10px 30px rgba(15,23,42,.04)}.nmc-calc-item.is-active{border-color:#fecaca;background:#fff7f7}.nmc-calc-icon{width:44px;height:44px;border-radius:16px;background:#f1f5f9;display:grid;place-items:center;font-weight:950;color:#b91c1c}.nmc-calc-item strong{font-size:1.05rem;color:#0f172a}.nmc-calc-item small{color:#64748b}.nmc-calc-qty{display:grid;grid-template-columns:38px 1fr 38px;gap:8px;align-items:center;margin-top:4px}.nmc-calc-qty button{height:38px;border:0;border-radius:13px;background:#0f172a;color:#fff;font-weight:950;cursor:pointer}.nmc-calc-qty output{height:38px;border-radius:13px;background:#f8fafc;display:grid;place-items:center;font-weight:950;color:#0f172a}.nmc-calc-result-panel{position:sticky;top:18px}.nmc-calc-result-panel h2{margin:10px 0 14px;display:grid;gap:6px}.nmc-calc-result-panel h2 strong{font-size:clamp(2.2rem,5vw,4.8rem);line-height:.9;letter-spacing:-.075em;color:#dc2626}.nmc-calc-result-panel h2 span{font-size:1rem;color:#334155}.nmc-calc-meter{height:14px;border-radius:999px;background:#fee2e2;overflow:hidden;margin:14px 0}.nmc-calc-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ef4444,#991b1b);transition:width .25s ease}.nmc-calc-visual-room{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;padding:14px;border-radius:22px;background:linear-gradient(145deg,#f8fafc,#fff);border:1px solid #e2e8f0;min-height:112px}.nmc-calc-cube{aspect-ratio:1;border-radius:10px;background:#e2e8f0;border:1px solid #cbd5e1}.nmc-calc-cube.is-on{background:linear-gradient(145deg,#fecaca,#ef4444);border-color:#f87171;box-shadow:0 8px 18px rgba(220,38,38,.18)}.nmc-calc-result-list{display:grid;gap:8px;margin:16px 0}.nmc-calc-result-list div{display:flex;justify-content:space-between;gap:12px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:10px 12px}.nmc-calc-result-list dt{color:#64748b;font-weight:850}.nmc-calc-result-list dd{margin:0;color:#0f172a;font-weight:950}.nmc-calc-lead{display:grid;gap:10px;margin-top:14px}.nmc-calc-lead.mini{grid-template-columns:1fr 1fr}.nmc-calc-lead label{display:grid;gap:5px;color:#64748b;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;font-weight:950}.nmc-calc-lead input,.nmc-calc-lead select{width:100%;min-height:44px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;color:#0f172a;padding:0 12px;font:inherit;font-weight:800}.nmc-calc-lead button{grid-column:1/-1}.nmc-range-field{display:grid;gap:8px;margin:18px 0}.nmc-range-field label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#334155;font-weight:950}.nmc-range-field output{color:#dc2626}.nmc-range-field input[type=range]{width:100%;accent-color:#dc2626}.nmc-finance-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nmc-finance-kpis article,.nmc-scenario-grid article{border:1px solid #e2e8f0;background:#f8fafc;border-radius:18px;padding:16px}.nmc-finance-kpis span,.nmc-scenario-grid span{display:block;color:#64748b;font-weight:850;font-size:.85rem}.nmc-finance-kpis strong,.nmc-scenario-grid strong{display:block;color:#0f172a;font-size:1.35rem;letter-spacing:-.04em;margin-top:6px}.nmc-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.nmc-cost-breakdown{display:grid;gap:10px;margin:16px 0}.nmc-cost-breakdown div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:center;color:#64748b;font-weight:900}.nmc-cost-breakdown i{display:block;height:12px;border-radius:999px;background:linear-gradient(90deg,#fecaca,#dc2626);min-width:3px}.nmc-calc-result-panel .hero-btn{width:100%;margin-top:10px}.nmc-calc-result-panel .hero-btn.secondary.dark{background:#fff;color:#0f172a;border:1px solid #e2e8f0}@media (max-width:1080px){.nmc-calc-hero,.nmc-calc-shell,.nmc-calc-tool-grid{grid-template-columns:1fr}.nmc-calc-result-panel{position:static}.nmc-calc-hero-copy{padding:30px}}@media (max-width:680px){.nmc-calc-hero-copy,.nmc-calc-hero-panel,.nmc-calc-card,.nmc-calc-result-panel,.nmc-calc-tool-card{border-radius:22px}.nmc-calc-lead.mini,.nmc-finance-kpis,.nmc-scenario-grid{grid-template-columns:1fr}.nmc-calc-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nmc-calc-item{padding:12px}.nmc-calc-hero-copy h1{font-size:2.5rem}.nmc-calc-result-panel h2 strong{font-size:3rem}}


/* v1.37.48 - Inspiracion comercial TuTrastero: oferta, llamada rapida y solucionador */
.nmc-tt-ribbon{position:relative;z-index:60;background:linear-gradient(90deg,#111827,#7f1d1d);color:#fff;font-weight:900}.nmc-tt-ribbon .wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:42px}.nmc-tt-ribbon strong{font-size:.9rem}.nmc-tt-ribbon nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.nmc-tt-ribbon a,.nmc-tt-ribbon button{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff!important;text-decoration:none;border-radius:999px;min-height:30px;padding:0 11px;font:inherit;font-size:.78rem;font-weight:950;cursor:pointer}.nmc-tt-ribbon a:first-child{background:#fff;color:#111827!important}.nmc-callback-fab{position:fixed;right:18px;bottom:94px;z-index:75}.nmc-callback-fab button{border:0;border-radius:999px;background:#111827;color:#fff;box-shadow:0 18px 44px rgba(15,23,42,.25);padding:12px 16px;display:grid;gap:2px;text-align:left;cursor:pointer;font:inherit}.nmc-callback-fab span{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#fecaca}.nmc-callback-fab strong{font-size:1rem;font-weight:950}.nmc-callback-modal[hidden]{display:none}.nmc-callback-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px}.nmc-callback-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(5px)}.nmc-callback-dialog{position:relative;width:min(480px,100%);background:#fff;border-radius:30px;padding:28px;border:1px solid rgba(15,23,42,.10);box-shadow:0 30px 90px rgba(15,23,42,.32)}.nmc-callback-close{position:absolute;right:14px;top:14px;width:38px;height:38px;border:0;border-radius:999px;background:#f1f5f9;color:#0f172a;font-size:1.5rem;cursor:pointer}.nmc-callback-dialog h2{font-size:clamp(2rem,5vw,3.1rem);line-height:.95;letter-spacing:-.055em;color:#0f172a;margin:10px 0}.nmc-callback-dialog p,.nmc-callback-dialog small{color:#64748b;line-height:1.55}.nmc-callback-form{display:grid;gap:10px;margin:16px 0}.nmc-callback-form label{display:grid;gap:5px;color:#475569;font-size:.82rem;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.nmc-callback-form input{min-height:46px;border:1px solid #e2e8f0;border-radius:15px;padding:0 13px;font:inherit;font-weight:800;color:#0f172a}.nmc-callback-form input:focus{outline:0;border-color:#fecaca;box-shadow:0 0 0 4px rgba(220,38,38,.08)}.nmc-callback-alt{display:flex;gap:10px;flex-wrap:wrap}.nmc-callback-alt a{flex:1;text-align:center;border-radius:14px;border:1px solid #e2e8f0;background:#f8fafc;color:#0f172a;text-decoration:none;font-weight:950;min-height:42px;display:grid;place-items:center}.nmc-tt-inspired-page{background:#f8fafc;color:#0f172a}.nmc-tt-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:22px;padding:34px 0 18px;align-items:stretch}.nmc-tt-hero-copy,.nmc-tt-offer-card,.nmc-tt-quickbar a,.nmc-tt-steps article,.nmc-tt-solution-grid a,.nmc-tt-trust,.nmc-tt-city-block,.nmc-tt-final-cta{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:30px;box-shadow:0 22px 65px rgba(15,23,42,.08)}.nmc-tt-hero-copy{padding:42px}.nmc-tt-hero-copy h1{font-size:clamp(2.7rem,7vw,6.2rem);line-height:.9;letter-spacing:-.075em;margin:12px 0;color:#0f172a}.nmc-tt-hero-copy p{font-size:1.2rem;line-height:1.6;color:#475569;max-width:760px}.nmc-tt-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.nmc-tt-actions.compact{margin-top:0}.nmc-tt-offer-card{padding:28px;background:radial-gradient(circle at 15% 0,#fecaca,transparent 38%),linear-gradient(145deg,#101827,#22304b);color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:18px}.nmc-tt-offer-card span{width:max-content;border-radius:999px;background:rgba(255,255,255,.14);padding:7px 11px;text-transform:uppercase;font-size:.75rem;font-weight:950;letter-spacing:.08em}.nmc-tt-offer-card strong{font-size:clamp(2rem,4vw,3.4rem);line-height:.95;letter-spacing:-.06em}.nmc-tt-offer-card p{color:#dbeafe;line-height:1.55}.nmc-tt-offer-card a{width:max-content;border-radius:999px;background:#fff;color:#111827;text-decoration:none;font-weight:950;min-height:44px;padding:0 16px;display:inline-flex;align-items:center}.nmc-tt-quickbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.nmc-tt-quickbar a{padding:18px;text-decoration:none;display:grid;gap:4px}.nmc-tt-quickbar strong{color:#0f172a;font-size:1.02rem}.nmc-tt-quickbar span{color:#64748b}.nmc-tt-step-grid,.nmc-tt-solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nmc-tt-steps article,.nmc-tt-solution-grid a{padding:24px}.nmc-tt-steps b{display:grid;place-items:center;width:44px;height:44px;border-radius:16px;background:#fee2e2;color:#991b1b}.nmc-tt-steps h3,.nmc-tt-solution-grid strong{display:block;color:#0f172a;font-size:1.35rem;margin:14px 0 8px;letter-spacing:-.03em}.nmc-tt-steps p,.nmc-tt-solution-grid p{color:#64748b;line-height:1.6;margin:0}.nmc-tt-solution-grid a{text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease}.nmc-tt-solution-grid a:hover{transform:translateY(-3px);box-shadow:0 28px 80px rgba(15,23,42,.13)}.nmc-tt-solution-grid span{font-size:2rem}.nmc-tt-trust{padding:28px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px}.nmc-tt-trust-copy h2,.nmc-tt-city-block h2,.nmc-tt-final-cta h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.03;letter-spacing:-.05em;color:#0f172a;margin:10px 0}.nmc-tt-trust-copy p,.nmc-tt-city-block p,.nmc-tt-final-cta p{color:#64748b;line-height:1.6}.nmc-tt-trust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.nmc-tt-trust-grid article{border:1px solid #e2e8f0;background:#f8fafc;border-radius:20px;padding:18px}.nmc-tt-trust-grid strong{display:block;color:#0f172a}.nmc-tt-trust-grid span{display:block;color:#64748b;margin-top:6px}.nmc-tt-city-block,.nmc-tt-final-cta{padding:28px;display:flex;justify-content:space-between;gap:22px;align-items:center}.nmc-tt-city-chips{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.nmc-tt-city-chips a{border:1px solid #e2e8f0;background:#f8fafc;color:#0f172a;border-radius:999px;min-height:42px;padding:0 14px;display:inline-flex;align-items:center;text-decoration:none;font-weight:950}.nmc-tt-city-chips a:last-child{background:#111827;color:#fff}@media(max-width:980px){.nmc-tt-hero,.nmc-tt-quickbar,.nmc-tt-step-grid,.nmc-tt-solution-grid,.nmc-tt-trust{grid-template-columns:1fr}.nmc-tt-city-block,.nmc-tt-final-cta{display:block}.nmc-tt-city-chips{justify-content:flex-start}.nmc-callback-fab{bottom:78px;right:12px}.nmc-tt-ribbon .wrap{align-items:flex-start;flex-direction:column;padding-top:8px;padding-bottom:8px}}@media(max-width:640px){.nmc-tt-hero-copy,.nmc-tt-offer-card,.nmc-tt-trust,.nmc-tt-city-block,.nmc-tt-final-cta,.nmc-callback-dialog{border-radius:22px}.nmc-tt-hero-copy{padding:28px}.nmc-tt-actions .hero-btn{width:100%;text-align:center}.nmc-callback-fab button{padding:10px 12px}.nmc-callback-fab strong{font-size:.9rem}}

/* v1.37.49 - Inspiracion mercado: buscador, servicios, guia y flujo 4 pasos */
.nmc-market-page{background:linear-gradient(180deg,#fff 0,#f7f8fb 100%)}
.nmc-market-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:28px;align-items:stretch;padding:42px 0 24px}.nmc-market-hero.compact{grid-template-columns:minmax(0,1fr);padding-bottom:8px}.nmc-market-hero-copy,.nmc-market-hero-card{border:1px solid rgba(15,23,42,.09);background:rgba(255,255,255,.94);border-radius:30px;box-shadow:0 24px 70px rgba(15,23,42,.08);padding:30px}.nmc-market-hero-copy h1{font-size:clamp(2.1rem,4vw,4.6rem);line-height:.96;margin:8px 0 14px;color:#111827;letter-spacing:-.06em}.nmc-market-hero-copy p{font-size:1.06rem;color:#526071;max-width:760px}.nmc-market-search{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:end;margin-top:22px}.nmc-market-search label{display:grid;gap:7px;font-weight:800;color:#1f2937}.nmc-market-search label span{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.nmc-market-search input{height:52px;border:1px solid #d6dbe6;border-radius:16px;padding:0 16px;font-weight:800;background:#fff}.nmc-market-chiprow{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.nmc-market-chiprow a,.nmc-size-guide-grid article span{border-radius:999px;background:#eef2ff;color:#24335f;padding:8px 12px;font-weight:900;text-decoration:none;font-size:.88rem}.nmc-market-hero-card{display:flex;flex-direction:column;justify-content:space-between;background:#111827;color:#fff}.nmc-market-hero-card span{color:#fbbf24;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.nmc-market-hero-card ol{margin:18px 0;padding-left:22px;display:grid;gap:10px}.nmc-market-hero-card a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#22c55e;color:#052e16;text-decoration:none;padding:12px 16px;font-weight:950}.nmc-market-step-grid,.nmc-market-proof-grid,.nmc-market-service-grid,.nmc-size-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.nmc-market-step-grid article,.nmc-market-proof-grid article,.nmc-market-service-grid article,.nmc-size-guide-grid article{border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:24px;padding:22px;box-shadow:0 18px 45px rgba(15,23,42,.06)}.nmc-market-step-grid b,.nmc-size-guide-grid b{display:inline-flex;width:42px;height:42px;border-radius:14px;align-items:center;justify-content:center;background:#fbbf24;color:#111827;font-weight:950;margin-bottom:16px}.nmc-market-step-grid h3,.nmc-market-service-grid h2,.nmc-size-guide-grid h2{margin:0 0 8px;color:#111827}.nmc-market-step-grid p,.nmc-market-proof-grid span,.nmc-market-service-grid p,.nmc-size-guide-grid p{color:#5b6575;line-height:1.55}.nmc-market-proof{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:center}.nmc-market-proof h2,.nmc-market-business-strip h2,.nmc-market-final-cta h2,.nmc-market-advice h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1;margin:8px 0 12px;letter-spacing:-.04em}.nmc-market-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nmc-market-proof-grid strong{display:block;color:#111827;margin-bottom:6px}.nmc-market-bands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.nmc-market-bands a{display:grid;gap:8px;border-radius:24px;padding:22px;text-decoration:none;background:#111827;color:#fff}.nmc-market-bands a:nth-child(2){background:#fbbf24;color:#111827}.nmc-market-bands span{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:950;opacity:.78}.nmc-market-bands strong{font-size:1.16rem}.nmc-market-bands em{font-style:normal;font-weight:950;text-decoration:underline}.nmc-market-final-cta,.nmc-market-business-strip,.nmc-market-advice{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:24px;align-items:center;border-radius:30px;background:#fff;border:1px solid rgba(15,23,42,.08);padding:28px;box-shadow:0 20px 55px rgba(15,23,42,.07)}.nmc-market-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nmc-market-service-grid article span{font-size:2rem}.nmc-market-service-grid a{font-weight:950;color:#111827}.nmc-market-business-strip ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.nmc-market-business-strip li{border-radius:16px;background:#f8fafc;padding:12px 14px;font-weight:850;color:#334155}.nmc-size-guide-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.nmc-size-guide-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.nmc-market-mini-lead{display:grid;grid-template-columns:1fr;gap:10px}.nmc-market-mini-lead label{display:grid;gap:6px;font-weight:800;color:#334155}.nmc-market-mini-lead input{height:46px;border:1px solid #d7dce6;border-radius:14px;padding:0 12px}.nmc-calc-afterflow{padding-top:8px}
@media (max-width:980px){.nmc-market-hero,.nmc-market-proof,.nmc-market-final-cta,.nmc-market-business-strip,.nmc-market-advice{grid-template-columns:1fr}.nmc-market-search{grid-template-columns:1fr}.nmc-market-step-grid,.nmc-market-proof-grid,.nmc-market-service-grid,.nmc-size-guide-grid,.nmc-size-guide-grid.compact,.nmc-market-bands{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.nmc-market-hero-copy,.nmc-market-hero-card,.nmc-market-final-cta,.nmc-market-business-strip,.nmc-market-advice{border-radius:22px;padding:20px}.nmc-market-step-grid,.nmc-market-proof-grid,.nmc-market-service-grid,.nmc-size-guide-grid,.nmc-size-guide-grid.compact,.nmc-market-bands{grid-template-columns:1fr}.nmc-market-hero{padding-top:20px}}

/* v1.37.50 - Ideas de mercado: decision rapida, flujo online y servicios B2B */
.nmc-market-v13750 .nmc-market-command {
    position: relative;
    overflow: hidden;
}
.nmc-market-v13750 .nmc-market-command:after {
    content: "";
    position: absolute;
    right: -120px;
    top: -120px;
    width: 320px;
    height: 320px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .12);
    pointer-events: none;
}
.nmc-market-journey-grid,
.nmc-market-use-cases,
.nmc-market-flow-timeline,
.nmc-market-b2b-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}
.nmc-market-journey-grid a,
.nmc-market-use-cases article,
.nmc-market-flow-timeline article,
.nmc-market-b2b-grid article,
.nmc-market-checklist,
.nmc-market-mini-lead-card {
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 24px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .08);
    padding: 22px;
    color: inherit;
    text-decoration: none;
}
.nmc-market-journey-grid a {
    display: grid;
    gap: 8px;
    transition: transform .18s ease, box-shadow .18s ease;
}
.nmc-market-journey-grid a:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 60px rgba(15, 23, 42, .12);
}
.nmc-market-journey-grid b,
.nmc-market-flow-timeline b {
    width: 42px;
    height: 42px;
    display: inline-grid;
    place-items: center;
    border-radius: 14px;
    background: #111827;
    color: #fff;
    font-weight: 900;
}
.nmc-market-journey-grid strong,
.nmc-market-use-cases h2,
.nmc-market-flow-timeline h2,
.nmc-market-b2b-grid h2 {
    font-size: 1.1rem;
    margin: 0;
    color: #0f172a;
}
.nmc-market-journey-grid span,
.nmc-market-b2b-grid span {
    color: #64748b;
    font-size: .94rem;
}
.nmc-market-use-cases article span {
    font-size: 2rem;
}
.nmc-market-use-cases article a {
    display: inline-flex;
    margin-top: 8px;
    font-weight: 800;
    color: #111827;
}
.nmc-market-flow-timeline article {
    position: relative;
}
.nmc-market-flow-timeline article:before {
    content: "";
    position: absolute;
    left: 42px;
    top: 64px;
    bottom: 20px;
    border-left: 2px dashed rgba(15, 23, 42, .12);
}
.nmc-market-flow-timeline article p,
.nmc-market-b2b-grid article p,
.nmc-market-use-cases article p {
    color: #475569;
    margin-bottom: 0;
}
.nmc-market-checklist,
.nmc-market-mini-lead-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .8fr);
    gap: 20px;
    align-items: start;
}
.nmc-market-checklist ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
}
.nmc-market-checklist li {
    padding: 12px 14px;
    border-radius: 16px;
    background: #f8fafc;
    font-weight: 700;
}
.nmc-market-checklist li:before {
    content: "✓";
    margin-right: 8px;
}
@media (max-width: 760px) {
    .nmc-market-checklist,
    .nmc-market-mini-lead-card {
        grid-template-columns: 1fr;
    }
}

/* v1.37.51 - Revenue Engine: monetizacion portal multimarca */
.nmc-revenue-page{background:#f8fafc;color:#0f172a}.nmc-revenue-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:24px;align-items:stretch;padding:38px 0 18px}.nmc-revenue-hero.compact{grid-template-columns:1fr}.nmc-revenue-copy,.nmc-revenue-panel,.nmc-revenue-product-grid article,.nmc-revenue-layer-grid article,.nmc-revenue-form,.nmc-revenue-side-card,.nmc-revenue-pricing article,.nmc-revenue-note,.nmc-revenue-inputs,.nmc-revenue-results{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:30px;box-shadow:0 24px 60px rgba(15,23,42,.075)}.nmc-revenue-copy{padding:38px}.nmc-revenue-copy h1{font-size:clamp(2.5rem,5.8vw,5.4rem);line-height:.92;letter-spacing:-.075em;margin:12px 0 18px;color:#0f172a}.nmc-revenue-copy p{max-width:820px;color:#64748b;font-size:1.12rem;line-height:1.62}.nmc-revenue-panel{padding:26px;background:linear-gradient(150deg,#0f172a,#172554);color:#fff}.nmc-revenue-panel span,.nmc-revenue-panel p{color:#cbd5e1}.nmc-revenue-panel strong{display:block;font-size:clamp(2rem,4vw,3.6rem);line-height:.95;letter-spacing:-.06em;margin:12px 0}.nmc-revenue-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.nmc-revenue-mini-grid b{display:grid;place-items:center;min-height:70px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10)}.nmc-revenue-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.nmc-revenue-product-grid article{padding:26px}.nmc-revenue-product-grid span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:16px;background:#fee2e2;color:#991b1b;font-weight:950}.nmc-revenue-product-grid h2,.nmc-revenue-form h2,.nmc-revenue-note h2,.nmc-revenue-inputs h2{margin:14px 0 8px;color:#0f172a;font-size:1.7rem;letter-spacing:-.04em}.nmc-revenue-product-grid p,.nmc-revenue-layer-grid span,.nmc-revenue-form p,.nmc-revenue-side-card li,.nmc-revenue-pricing p,.nmc-revenue-pricing li,.nmc-revenue-note p{color:#64748b;line-height:1.6}.nmc-revenue-product-grid a,.nmc-revenue-side-card a,.nmc-revenue-pricing a{font-weight:950;color:#dc2626;text-decoration:none}.nmc-revenue-layer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.nmc-revenue-layer-grid article{padding:20px}.nmc-revenue-layer-grid b{display:inline-flex;padding:7px 10px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.nmc-revenue-layer-grid strong{display:block;margin:12px 0 6px;font-size:1.25rem;color:#0f172a}.nmc-revenue-form-section{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;align-items:start}.nmc-revenue-form,.nmc-revenue-side-card{padding:28px}.nmc-revenue-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.nmc-revenue-form label,.nmc-revenue-inputs label,.nmc-revenue-calc-lead label{display:grid;gap:7px;font-weight:850;color:#334155}.nmc-revenue-form label.full{grid-column:1/-1}.nmc-revenue-form span{font-size:.76rem;text-transform:uppercase;letter-spacing:.07em;color:#64748b}.nmc-revenue-form input,.nmc-revenue-form select,.nmc-revenue-form textarea,.nmc-revenue-inputs input,.nmc-revenue-calc-lead input{width:100%;min-height:48px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:0 14px;font:inherit;color:#0f172a}.nmc-revenue-form textarea{min-height:126px;padding:14px;resize:vertical}.nmc-revenue-side-card ul{padding-left:18px}.nmc-revenue-pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.nmc-revenue-pricing article{padding:28px;position:relative}.nmc-revenue-pricing article.featured{border-color:rgba(220,38,38,.38);box-shadow:0 28px 80px rgba(220,38,38,.16);transform:translateY(-8px)}.nmc-revenue-pricing h2{margin:8px 0;color:#0f172a;font-size:1.8rem}.nmc-revenue-pricing strong{display:block;color:#dc2626;font-size:2.2rem;letter-spacing:-.05em;margin:8px 0}.nmc-plan-kicker{display:inline-flex!important;width:max-content;border-radius:999px;background:#fff1f2;color:#991b1b!important;border:1px solid #fecdd3;padding:7px 10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.nmc-revenue-note{padding:28px}.nmc-revenue-calculator{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:18px;align-items:start}.nmc-revenue-inputs,.nmc-revenue-results{padding:28px}.nmc-revenue-inputs{display:grid;gap:12px}.nmc-revenue-results{background:linear-gradient(150deg,#0f172a,#1e293b);color:#fff}.nmc-revenue-results>span{color:#cbd5e1}.nmc-revenue-results>strong{display:block;font-size:clamp(2.4rem,6vw,4.8rem);letter-spacing:-.07em;line-height:.95;margin:10px 0}.nmc-revenue-results>p{color:#cbd5e1}.nmc-revenue-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.nmc-revenue-result-grid article{border-radius:18px;background:rgba(255,255,255,.08);padding:15px}.nmc-revenue-result-grid b{display:block;font-size:1.4rem}.nmc-revenue-result-grid small{color:#cbd5e1}.nmc-revenue-calc-lead{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.nmc-revenue-calc-lead .hero-btn{grid-column:1/-1}.nmc-revenue-calc-lead label{color:#e2e8f0}.nmc-revenue-calc-lead input{background:#fff;color:#0f172a}@media(max-width:980px){.nmc-revenue-hero,.nmc-revenue-product-grid,.nmc-revenue-layer-grid,.nmc-revenue-form-section,.nmc-revenue-pricing,.nmc-revenue-calculator{grid-template-columns:1fr}.nmc-revenue-pricing article.featured{transform:none}.nmc-revenue-copy,.nmc-revenue-panel,.nmc-revenue-form,.nmc-revenue-side-card,.nmc-revenue-inputs,.nmc-revenue-results{border-radius:24px;padding:22px}.nmc-revenue-form-grid,.nmc-revenue-calc-lead{grid-template-columns:1fr}.nmc-revenue-results>strong{font-size:3rem}}@media(max-width:620px){.nmc-revenue-result-grid{grid-template-columns:1fr}.nmc-revenue-copy h1{font-size:2.55rem}}

/* v1.37.52 - Revenue Pipeline: captacion de centros externos y demo comercial */
.nmc-revenue-v13752 .nmc-revenue-hero-tight{align-items:stretch;gap:22px}.nmc-revenue-panel-checklist ul{margin:16px 0 0;padding-left:18px;color:rgba(255,255,255,.82);line-height:1.75;font-weight:800}.nmc-revenue-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.nmc-revenue-steps article,.nmc-revenue-quality-grid article,.nmc-revenue-kit-grid article{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:linear-gradient(180deg,#fff,#fffaf7);box-shadow:0 18px 46px rgba(15,23,42,.06);padding:22px}.nmc-revenue-steps b{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#111827;color:#fff;font-weight:950}.nmc-revenue-steps strong,.nmc-revenue-quality-grid strong{display:block;margin-top:14px;color:#0f172a;font-size:1.15rem;line-height:1.05;letter-spacing:-.035em}.nmc-revenue-steps span,.nmc-revenue-quality-grid span{display:block;margin-top:8px;color:#64748b;font-weight:750;line-height:1.45}.nmc-revenue-form-highlight{background:linear-gradient(135deg,#fff7ed,#fff);border:1px solid rgba(220,38,38,.14);border-radius:34px;padding:22px;box-shadow:0 24px 70px rgba(15,23,42,.07)}.nmc-revenue-smallprint{margin:14px 0 0;color:#64748b;font-size:.9rem;font-weight:750}.nmc-revenue-demo-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.36fr);gap:18px;align-items:stretch}.nmc-demo-main,.nmc-demo-side{border:1px solid rgba(15,23,42,.08);border-radius:32px;background:#fff;box-shadow:0 20px 58px rgba(15,23,42,.07);padding:28px}.nmc-demo-main{background:linear-gradient(135deg,#fff,#fff7ed)}.nmc-demo-badge{display:inline-flex;border-radius:999px;background:#dcfce7;color:#166534;padding:8px 12px;font-weight:950;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.nmc-demo-main h2{margin:16px 0 8px;color:#0f172a;font-size:clamp(2rem,4vw,3.4rem);line-height:.98;letter-spacing:-.065em}.nmc-demo-main p,.nmc-demo-side li,.nmc-revenue-kit-grid p{color:#64748b;font-weight:750;line-height:1.55}.nmc-demo-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.nmc-demo-facts b{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;padding:14px;color:#0f172a;text-align:center}.nmc-demo-actions{display:flex;gap:10px;flex-wrap:wrap}.nmc-demo-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:999px;background:#dc2626;color:#fff!important;text-decoration:none!important;font-weight:950;padding:0 18px}.nmc-demo-actions a+ a{background:#111827}.nmc-demo-side h3{margin:0 0 14px;color:#0f172a;font-size:1.4rem;letter-spacing:-.04em}.nmc-revenue-quality-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.nmc-revenue-kit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.nmc-revenue-kit-grid span{display:inline-flex;color:#991b1b;background:#fee2e2;border-radius:999px;padding:7px 11px;font-weight:950;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.nmc-revenue-kit-grid h2{margin:14px 0 8px;color:#0f172a;font-size:1.55rem;letter-spacing:-.045em;line-height:1.05}@media(max-width:980px){.nmc-revenue-steps,.nmc-demo-facts,.nmc-revenue-quality-grid,.nmc-revenue-kit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nmc-revenue-demo-card{grid-template-columns:1fr}}@media(max-width:640px){.nmc-revenue-steps,.nmc-demo-facts,.nmc-revenue-quality-grid,.nmc-revenue-kit-grid{grid-template-columns:1fr}.nmc-revenue-form-highlight,.nmc-demo-main,.nmc-demo-side{border-radius:22px;padding:20px}.nmc-demo-actions{display:grid;grid-template-columns:1fr}.nmc-demo-actions a{width:100%}}


/* v1.37.54 - mapa más claro y usable */
.nmc-map-quick-zones{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.nmc-map-quick-zones button{appearance:none;border:1px solid rgba(15,23,42,.10);background:#fff;color:#0f172a;border-radius:999px;min-height:36px;padding:0 12px;font-weight:950;box-shadow:0 10px 24px rgba(15,23,42,.06);cursor:pointer}
.nmc-map-quick-zones button:hover,.nmc-map-quick-zones button:focus-visible{border-color:rgba(220,38,38,.35);color:#b91c1c;outline:0;transform:translateY(-1px)}
.nmc-full-map-card-actions{grid-template-columns:1fr 1fr 1fr}
.nmc-full-map-center-card{position:relative}.nmc-full-map-center-card.is-nearest,.nmc-full-map-center-card.is-user-nearest{border-color:rgba(220,38,38,.42)!important;box-shadow:0 22px 54px rgba(220,38,38,.14)!important}
.nmc-full-map-center-card.is-nearest:before,.nmc-full-map-center-card.is-user-nearest:before{content:"Mejor opción";position:absolute;top:10px;left:10px;z-index:3;background:#dc2626;color:#fff;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:950;box-shadow:0 12px 26px rgba(220,38,38,.22)}
.nmc-user-location-dot{width:20px!important;height:20px!important;border-radius:999px;background:#2563eb;border:4px solid #fff;box-shadow:0 0 0 8px rgba(37,99,235,.18),0 10px 24px rgba(15,23,42,.24)}
.nmc-real-map-empty{line-height:1.45}
@media(max-width:700px){.nmc-full-map-card-actions{grid-template-columns:1fr}.nmc-map-quick-zones button{flex:1 1 auto}.nmc-full-map-center-card.is-nearest:before,.nmc-full-map-center-card.is-user-nearest:before{position:static;display:inline-flex;margin:10px 10px 0}}


/* v1.37.55 - Barra superior inteligente: más discreta, configurable y desmontable */
.nmc-smart-ribbon{position:relative;z-index:70;background:rgba(255,255,255,.94);color:#0f172a;border-bottom:1px solid rgba(15,23,42,.08);box-shadow:0 10px 30px rgba(15,23,42,.05);backdrop-filter:saturate(1.2) blur(14px)}
.nmc-smart-ribbon[hidden]{display:none!important}.nmc-smart-ribbon__inner{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding-top:6px;padding-bottom:6px}.nmc-smart-ribbon__copy{display:flex;align-items:center;gap:10px;min-width:0}.nmc-smart-ribbon__copy span{flex:0 0 auto;border:1px solid rgba(220,38,38,.16);background:#fff1f2;color:#991b1b;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.nmc-smart-ribbon__copy strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:850;color:#334155}.nmc-smart-ribbon__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nmc-smart-ribbon__actions a,.nmc-smart-ribbon__actions button{font:inherit;border:0;text-decoration:none;border-radius:999px;min-height:30px;padding:0 12px;font-size:.8rem;font-weight:950;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.nmc-smart-ribbon__primary{background:#dc2626;color:#fff!important;box-shadow:0 8px 20px rgba(220,38,38,.16)}.nmc-smart-ribbon__secondary{background:#0f172a;color:#fff}.nmc-smart-ribbon__ghost{background:#f8fafc;color:#0f172a!important;border:1px solid rgba(15,23,42,.08)!important}.nmc-smart-ribbon-close{width:30px;height:30px;border-radius:999px;border:1px solid rgba(15,23,42,.08);background:#fff;color:#64748b;font-size:1.1rem;line-height:1;cursor:pointer;display:grid;place-items:center}.nmc-smart-ribbon-close:hover{color:#0f172a;background:#f8fafc}.nmc-smart-ribbon--trust .nmc-smart-ribbon__copy span{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.nmc-smart-ribbon--trust .nmc-smart-ribbon__primary{background:#166534;box-shadow:0 8px 20px rgba(22,101,52,.14)}.nmc-smart-ribbon--offer{background:linear-gradient(90deg,#fff7ed,#fff,#fef2f2)}.nmc-smart-ribbon--offer .nmc-smart-ribbon__copy span{background:#fed7aa;border-color:#fdba74;color:#9a3412}.nmc-smart-ribbon--minimal{box-shadow:none;background:#fff}.nmc-smart-ribbon--minimal .nmc-smart-ribbon__copy span{display:none}.nmc-smart-ribbon--minimal .nmc-smart-ribbon__secondary,.nmc-smart-ribbon--minimal .nmc-smart-ribbon__ghost{display:none}.nmc-tt-ribbon{background:#fff!important;color:#0f172a!important;border-bottom:1px solid rgba(15,23,42,.08)!important;box-shadow:0 10px 30px rgba(15,23,42,.05)!important}.nmc-tt-ribbon a,.nmc-tt-ribbon button{color:#0f172a!important;background:#f8fafc!important;border-color:rgba(15,23,42,.08)!important}.nmc-tt-ribbon a:first-child{background:#dc2626!important;color:#fff!important}
@media(max-width:760px){.nmc-smart-ribbon__inner{grid-template-columns:1fr auto;gap:8px;align-items:start}.nmc-smart-ribbon__copy{display:grid;gap:3px}.nmc-smart-ribbon__copy strong{white-space:normal;line-height:1.25}.nmc-smart-ribbon__actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.nmc-smart-ribbon__actions a,.nmc-smart-ribbon__actions button{min-height:34px;padding:0 8px;font-size:.76rem}.nmc-smart-ribbon-close{grid-column:2;grid-row:1;justify-self:end}}
@media(max-width:460px){.nmc-smart-ribbon__actions{grid-template-columns:1fr 1fr}.nmc-smart-ribbon__ghost{display:none}.nmc-smart-ribbon__copy span{width:max-content}}

/* v1.37.61 - Web premium movil: no app, no barra inferior invasiva. */
@media (max-width: 760px) {
  html { scroll-padding-top: 86px; }
  body.nmc-mobile-premium,
  body.public-body.nmc-mobile-premium,
  body.nmc-public.nmc-mobile-premium {
    background: #f8fafc !important;
    color: #0f172a !important;
    overflow-x: hidden !important;
    padding-bottom: 0 !important;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }
  body.nmc-mobile-premium-no-bottom .mobile-cta-bar,
  body.nmc-mobile-premium-no-bottom .mobile-cta-bar.mobile-cta-v17 {
    display: none !important;
  }
  body.nmc-mobile-premium .wrap,
  body.nmc-mobile-premium .footer-container {
    width: min(100% - 28px, 1180px) !important;
    max-width: none !important;
  }

  /* Cabecera premium: compacta, limpia y estable. */
  body.nmc-mobile-premium .site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 740 !important;
    background: rgba(255, 255, 255, .94) !important;
    border-bottom: 1px solid rgba(15, 23, 42, .07) !important;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .06) !important;
    backdrop-filter: blur(16px) saturate(1.05) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.05) !important;
  }
  body.nmc-mobile-premium.nmc-scrolled .site-header {
    box-shadow: 0 14px 38px rgba(15, 23, 42, .10) !important;
  }
  body.nmc-mobile-premium .header-shell-v18,
  body.nmc-mobile-premium .site-header-main {
    min-height: 62px !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    gap: 10px !important;
  }
  body.nmc-mobile-premium .brand-block,
  body.nmc-mobile-premium .brand-v18 {
    min-width: 0 !important;
    text-decoration: none !important;
  }
  body.nmc-mobile-premium .logo-text {
    font-size: 1.26rem !important;
    letter-spacing: -.045em !important;
    line-height: 1 !important;
  }
  body.nmc-mobile-premium .brand-tagline,
  body.nmc-mobile-premium .header-contact-copy,
  body.nmc-mobile-premium .header-actions-v18,
  body.nmc-mobile-premium .header-contact-card,
  body.nmc-mobile-premium .header-search {
    display: none !important;
  }
  body.nmc-mobile-premium .mobile-nav-toggle,
  body.nmc-mobile-premium .mobile-nav-toggle-v18 {
    min-height: 42px !important;
    min-width: 82px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #0f172a !important;
    border: 1px solid rgba(15, 23, 42, .10) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .08) !important;
  }

  /* El banner se convierte en micro aviso, no en oferta agresiva. */
  body.nmc-mobile-premium .nmc-smart-ribbon {
    background: #0f172a !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  body.nmc-mobile-premium .nmc-smart-ribbon__inner {
    min-height: 38px !important;
    padding: 6px 0 !important;
    gap: 8px !important;
  }
  body.nmc-mobile-premium .nmc-smart-ribbon__copy {
    min-width: 0 !important;
    font-size: .82rem !important;
    line-height: 1.1 !important;
  }
  body.nmc-mobile-premium .nmc-smart-ribbon__copy span { display: none !important; }
  body.nmc-mobile-premium .nmc-smart-ribbon__copy strong {
    font-size: .82rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    color: #fff !important;
  }
  body.nmc-mobile-premium .nmc-smart-ribbon__actions {
    flex: 0 0 auto !important;
    gap: 6px !important;
  }
  body.nmc-mobile-premium .nmc-smart-ribbon__secondary,
  body.nmc-mobile-premium .nmc-smart-ribbon__ghost { display: none !important; }
  body.nmc-mobile-premium .nmc-smart-ribbon__primary {
    min-height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: .78rem !important;
    background: #fff !important;
    color: #991b1b !important;
    box-shadow: none !important;
  }
  body.nmc-mobile-premium .nmc-smart-ribbon-close {
    width: 30px !important;
    height: 30px !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.22) !important;
  }

  /* Heroes y paginas: mas editorial, menos bloque pesado. */
  body.nmc-mobile-premium .section,
  body.nmc-mobile-premium .page-main,
  body.nmc-mobile-premium .nmc-home-hero-v1378,
  body.nmc-mobile-premium .nmc-r-hero,
  body.nmc-mobile-premium .tp-hero,
  body.nmc-mobile-premium .nmc-revenue-hero,
  body.nmc-mobile-premium .nmc-calc-shell {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  body.nmc-mobile-premium h1,
  body.nmc-mobile-premium .nmc-home-hero-copy h1,
  body.nmc-mobile-premium .nmc-r-hero h1,
  body.nmc-mobile-premium .tp-hero h1,
  body.nmc-mobile-premium .page-hero h1,
  body.nmc-mobile-premium .nmc-revenue-copy h1 {
    font-size: clamp(2.05rem, 10vw, 3.15rem) !important;
    line-height: .98 !important;
    letter-spacing: -.055em !important;
    margin-bottom: 12px !important;
  }
  body.nmc-mobile-premium .lead,
  body.nmc-mobile-premium .page-hero p,
  body.nmc-mobile-premium .tp-hero p,
  body.nmc-mobile-premium .nmc-revenue-copy p,
  body.nmc-mobile-premium .nmc-home-hero-copy .lead {
    font-size: 1rem !important;
    line-height: 1.55 !important;
    color: #475569 !important;
  }
  body.nmc-mobile-premium .hero-actions,
  body.nmc-mobile-premium .tp-actions,
  body.nmc-mobile-premium .nmc-home-main-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    width: 100% !important;
  }
  body.nmc-mobile-premium .hero-btn,
  body.nmc-mobile-premium .tp-btn,
  body.nmc-mobile-premium .btn-card,
  body.nmc-mobile-premium .conversion-primary,
  body.nmc-mobile-premium button[type="submit"] {
    width: 100% !important;
    min-height: 50px !important;
    border-radius: 16px !important;
    font-size: .98rem !important;
    justify-content: center !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .09) !important;
  }

  /* Tarjetas premium: tactiles, aireadas y sin ruido. */
  body.nmc-mobile-premium article,
  body.nmc-mobile-premium .card,
  body.nmc-mobile-premium .tp-unit-card,
  body.nmc-mobile-premium .tp-need-grid article,
  body.nmc-mobile-premium .tp-editable-card-grid article,
  body.nmc-mobile-premium .calculator-card,
  body.nmc-mobile-premium .calculator-result,
  body.nmc-mobile-premium .nmc-calc-panel,
  body.nmc-mobile-premium .nmc-calc-result,
  body.nmc-mobile-premium .nmc-revenue-copy,
  body.nmc-mobile-premium .nmc-revenue-panel,
  body.nmc-mobile-premium .nmc-revenue-form,
  body.nmc-mobile-premium .nmc-revenue-inputs,
  body.nmc-mobile-premium .nmc-revenue-results {
    border-radius: 22px !important;
    border-color: rgba(15, 23, 42, .08) !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .07) !important;
  }
  body.nmc-mobile-premium .tp-need-grid,
  body.nmc-mobile-premium .tp-unit-grid,
  body.nmc-mobile-premium .tp-editable-card-grid,
  body.nmc-mobile-premium .nmc-home-trust-row,
  body.nmc-mobile-premium .nmc-revenue-product-grid,
  body.nmc-mobile-premium .nmc-revenue-layer-grid,
  body.nmc-mobile-premium .nmc-revenue-pricing,
  body.nmc-mobile-premium .nmc-revenue-calculator,
  body.nmc-mobile-premium .calculator-layout {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  /* Formularios y calculadoras: tactiles y legibles. */
  body.nmc-mobile-premium input,
  body.nmc-mobile-premium select,
  body.nmc-mobile-premium textarea {
    font-size: 16px !important;
    min-height: 50px !important;
    border-radius: 16px !important;
  }
  body.nmc-mobile-premium .nmc-calc-grid,
  body.nmc-mobile-premium .nmc-calc-results,
  body.nmc-mobile-premium .nmc-calc-lead,
  body.nmc-mobile-premium .nmc-revenue-form-grid,
  body.nmc-mobile-premium .nmc-revenue-calc-lead {
    grid-template-columns: 1fr !important;
  }

  /* Mapa centros: lista clara primero, mapa bonito despues, sin barra app. */
  body.nmc-mobile-premium.page-mapa-centros,
  body.nmc-mobile-premium.page-trasteros-cerca-de-mi,
  body.nmc-mobile-premium.page-buscar-trastero {
    padding-bottom: 0 !important;
  }
  body.nmc-mobile-premium .nmc-full-map-shell {
    background: #f8fafc !important;
  }
  body.nmc-mobile-premium .nmc-full-map-panel {
    padding: 14px !important;
    background: #f8fafc !important;
  }
  body.nmc-mobile-premium .nmc-full-map-intro {
    padding: 18px !important;
    border-radius: 24px !important;
    background: linear-gradient(145deg, #fff, #fff7f7) !important;
    border: 1px solid rgba(15, 23, 42, .08) !important;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .08) !important;
  }
  body.nmc-mobile-premium .nmc-full-map-intro h1 {
    font-size: 2.05rem !important;
    line-height: .98 !important;
  }
  body.nmc-mobile-premium .nmc-map-quick-zones,
  body.nmc-mobile-premium .nmc-filter-chips,
  body.nmc-mobile-premium .nmc-map-radius-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 4px !important;
  }
  body.nmc-mobile-premium .nmc-map-quick-zones::-webkit-scrollbar,
  body.nmc-mobile-premium .nmc-filter-chips::-webkit-scrollbar,
  body.nmc-mobile-premium .nmc-map-radius-row::-webkit-scrollbar { display: none !important; }
  body.nmc-mobile-premium .nmc-map-quick-zones button,
  body.nmc-mobile-premium .nmc-filter-chip,
  body.nmc-mobile-premium .nmc-map-radius-row button {
    flex: 0 0 auto !important;
    min-height: 39px !important;
    border-radius: 999px !important;
  }
  body.nmc-mobile-premium .nmc-full-map-page .nmc-center-filters,
  body.nmc-mobile-premium .nmc-map-reference-strip,
  body.nmc-mobile-premium .nmc-map-proof-strip {
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .07) !important;
  }
  body.nmc-mobile-premium .nmc-full-map-center-card {
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 12px !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .065) !important;
  }
  body.nmc-mobile-premium .nmc-full-map-card-photo {
    width: 92px !important;
    height: 118px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    margin: 0 !important;
  }
  body.nmc-mobile-premium .nmc-full-map-card-body h2 {
    font-size: 1.05rem !important;
    line-height: 1.15 !important;
    margin: 6px 0 !important;
  }
  body.nmc-mobile-premium .nmc-full-map-card-kpis,
  body.nmc-mobile-premium .nmc-full-map-proof-mini {
    gap: 5px !important;
    flex-wrap: wrap !important;
  }
  body.nmc-mobile-premium .nmc-full-map-card-actions {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }
  body.nmc-mobile-premium .nmc-full-map-card-actions a {
    min-height: 42px !important;
    border-radius: 14px !important;
  }
  body.nmc-mobile-premium .nmc-full-map-canvas-wrap {
    height: 36vh !important;
    min-height: 285px !important;
    margin: 0 14px 18px !important;
    border-radius: 24px !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12) !important;
  }

  /* WhatsApp discreto: flotante pequeño, no barra de app. */
  body.nmc-mobile-premium .sticky-wa {
    display: block !important;
    position: fixed !important;
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    left: auto !important;
    z-index: 860 !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  body.nmc-mobile-premium .sticky-wa a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 50px !important;
    min-height: 50px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    background: #25D366 !important;
    color: #fff !important;
    font-size: .9rem !important;
    font-weight: 950 !important;
    text-decoration: none !important;
    box-shadow: 0 16px 34px rgba(37, 211, 102, .28) !important;
  }
  body.nmc-mobile-premium .nmc-callback-fab {
    display: none !important;
  }

  body.nmc-mobile-premium .footer {
    padding-bottom: 30px !important;
  }
}

@media (max-width: 420px) {
  body.nmc-mobile-premium .wrap,
  body.nmc-mobile-premium .footer-container { width: min(100% - 22px, 1180px) !important; }
  body.nmc-mobile-premium .nmc-full-map-center-card { grid-template-columns: 82px minmax(0, 1fr) !important; }
  body.nmc-mobile-premium .nmc-full-map-card-photo { width: 82px !important; height: 108px !important; }
  body.nmc-mobile-premium .nmc-full-map-intro h1 { font-size: 1.88rem !important; }
}


/* v1.37.64 - Galerias premium con lightbox ampliable */
.tp-center-photo-premium{position:relative;border-radius:28px;overflow:hidden;background:#0f172a;box-shadow:0 22px 58px rgba(15,23,42,.16)}
.tp-center-photo-premium .tp-center-photo-open{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;text-align:left;color:inherit;font:inherit;overflow:hidden}
.tp-center-photo-premium img{display:block;width:100%;aspect-ratio:16/11;object-fit:cover;transition:transform .28s ease,filter .28s ease}
.tp-center-photo-premium .tp-center-photo-open:hover img{transform:scale(1.025);filter:saturate(1.04)}
.nmc-gallery-chip{position:absolute;left:16px;top:16px;display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 14px;border-radius:999px;background:rgba(15,23,42,.72);color:#fff;font-weight:950;font-size:.88rem;box-shadow:0 12px 28px rgba(15,23,42,.22);backdrop-filter:blur(12px);z-index:2}
.nmc-gallery-expand{position:absolute;right:16px;top:16px;display:grid;place-items:center;width:44px;height:44px;border-radius:999px;background:rgba(255,255,255,.92);color:#0f172a;font-weight:950;font-size:1.35rem;line-height:1;box-shadow:0 12px 28px rgba(15,23,42,.20);z-index:2}
.nmc-gallery-soft-label{position:absolute;left:16px;bottom:16px;display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.88);color:#0f172a;font-size:.78rem;font-weight:900;box-shadow:0 12px 28px rgba(15,23,42,.16);z-index:2}
.center-gallery-premium-section{position:relative}
.nmc-premium-gallery{display:grid;gap:16px;margin-top:18px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);border-radius:34px;padding:18px;box-shadow:0 26px 72px rgba(15,23,42,.10)}
.nmc-premium-gallery-main{position:relative;display:block;width:100%;min-height:240px;border:0;border-radius:28px;overflow:hidden;padding:0;background:#0f172a;cursor:zoom-in;text-align:left;box-shadow:0 18px 50px rgba(15,23,42,.16)}
.nmc-premium-gallery-main img{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;transition:transform .32s ease,filter .32s ease}
.nmc-premium-gallery-main:hover img{transform:scale(1.022);filter:saturate(1.05)}
.nmc-premium-gallery-main:after{content:"";position:absolute;inset:auto 0 0 0;height:36%;background:linear-gradient(180deg,transparent,rgba(15,23,42,.38));pointer-events:none}
.nmc-premium-gallery-thumbs{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 2px 8px;-webkit-overflow-scrolling:touch}
.nmc-premium-gallery-thumb,.nmc-premium-gallery-more{flex:0 0 118px;height:82px;border:1px solid rgba(15,23,42,.10);border-radius:18px;padding:0;background:#fff;overflow:hidden;cursor:pointer;scroll-snap-align:start;box-shadow:0 10px 22px rgba(15,23,42,.07);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.nmc-premium-gallery-thumb:hover,.nmc-premium-gallery-more:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(15,23,42,.11)}
.nmc-premium-gallery-thumb.active{border-color:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.15),0 14px 28px rgba(15,23,42,.10)}
.nmc-premium-gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.nmc-premium-gallery-more{display:grid;place-items:center;background:linear-gradient(135deg,#0f5132,#166534);color:#fff;border-color:rgba(255,255,255,.20)}
.nmc-premium-gallery-more span{display:block;font-size:1.15rem;font-weight:950;line-height:1}
.nmc-premium-gallery-more small{display:block;margin-top:2px;font-size:.72rem;font-weight:850;opacity:.86;text-transform:uppercase;letter-spacing:.04em}
.nmc-premium-gallery-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.nmc-premium-gallery-proof span{display:grid;gap:3px;padding:14px 15px;border-radius:20px;background:#fff;border:1px solid rgba(15,23,42,.07)}
.nmc-premium-gallery-proof strong{color:#0f172a;font-size:.92rem;letter-spacing:-.02em}
.nmc-premium-gallery-proof small{color:#64748b;font-size:.78rem;font-weight:750;line-height:1.25}
.nmc-gallery-lightbox{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:22px;background:rgba(2,6,23,.82);backdrop-filter:blur(14px)}
.nmc-gallery-lightbox[hidden]{display:none!important}
.nmc-gallery-lightbox-card{position:relative;width:min(1120px,100%);max-height:calc(100vh - 44px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#0b1220;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:28px;box-shadow:0 32px 100px rgba(0,0,0,.38);overflow:hidden}
.nmc-gallery-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.10)}
.nmc-gallery-lightbox-title{display:grid;gap:2px;min-width:0}
.nmc-gallery-lightbox-title strong{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nmc-gallery-lightbox-title span{font-size:.8rem;color:rgba(255,255,255,.68);font-weight:800}
.nmc-gallery-lightbox-close{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:999px;background:rgba(255,255,255,.11);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer}
.nmc-gallery-lightbox-stage{position:relative;display:grid;place-items:center;min-height:260px;background:#050816}
.nmc-gallery-lightbox-stage img{display:block;max-width:100%;max-height:calc(100vh - 250px);width:auto;height:auto;object-fit:contain}
.nmc-gallery-lightbox-caption{position:absolute;left:18px;right:18px;bottom:18px;display:flex;justify-content:center;pointer-events:none}
.nmc-gallery-lightbox-caption span{max-width:760px;padding:9px 13px;border-radius:999px;background:rgba(15,23,42,.74);color:#fff;font-size:.86rem;font-weight:800;text-align:center;backdrop-filter:blur(10px)}
.nmc-gallery-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#0f172a;font-size:1.55rem;font-weight:950;cursor:pointer;box-shadow:0 14px 34px rgba(0,0,0,.26)}
.nmc-gallery-lightbox-prev{left:18px}.nmc-gallery-lightbox-next{right:18px}
.nmc-gallery-lightbox-strip{display:flex;gap:9px;overflow-x:auto;padding:12px 14px;background:rgba(255,255,255,.05);border-top:1px solid rgba(255,255,255,.10);-webkit-overflow-scrolling:touch}
.nmc-gallery-lightbox-strip button{flex:0 0 88px;height:62px;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:0;overflow:hidden;background:#111827;cursor:pointer;opacity:.72}
.nmc-gallery-lightbox-strip button.active{opacity:1;border-color:#34d399;box-shadow:0 0 0 3px rgba(52,211,153,.18)}
.nmc-gallery-lightbox-strip img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:760px){.nmc-premium-gallery{border-radius:26px;padding:12px;gap:12px}.nmc-premium-gallery-main{border-radius:22px;min-height:190px}.nmc-premium-gallery-main img{aspect-ratio:16/11}.nmc-premium-gallery-thumb,.nmc-premium-gallery-more{flex-basis:96px;height:70px;border-radius:15px}.nmc-premium-gallery-proof{grid-template-columns:1fr}.nmc-gallery-chip{left:12px;top:12px;min-height:34px;padding:0 11px;font-size:.78rem}.nmc-gallery-expand{right:12px;top:12px;width:38px;height:38px}.nmc-gallery-soft-label{left:12px;bottom:12px}.nmc-gallery-lightbox{padding:0;background:rgba(2,6,23,.92)}.nmc-gallery-lightbox-card{width:100%;height:100%;max-height:none;border-radius:0;border:0}.nmc-gallery-lightbox-head{padding:12px}.nmc-gallery-lightbox-stage img{max-height:calc(100vh - 190px);width:100%;object-fit:contain}.nmc-gallery-lightbox-nav{width:44px;height:44px}.nmc-gallery-lightbox-prev{left:12px}.nmc-gallery-lightbox-next{right:12px}.nmc-gallery-lightbox-caption{bottom:12px}.nmc-gallery-lightbox-strip button{flex-basis:76px;height:56px}.tp-center-photo-premium img{aspect-ratio:16/11}.tp-center-photo-premium{border-radius:22px}}
html.nmc-gallery-open,html.nmc-gallery-open body{overflow:hidden}

/* v1.37.64 - Galeria premium: mosaico, vista ampliada y textos 100% cliente final */
.center-gallery-premium-section .section-head .eyebrow{color:#0f766e;letter-spacing:.08em}
.nmc-premium-gallery-v13764{position:relative;padding:20px;border-radius:38px;background:linear-gradient(145deg,#ffffff 0%,#f7fbf9 52%,#eef7f3 100%);border:1px solid rgba(15,118,110,.12);box-shadow:0 30px 90px rgba(15,23,42,.11)}
.nmc-premium-gallery-frame{display:grid;grid-template-columns:minmax(0,1fr) minmax(176px,240px);gap:12px;align-items:stretch}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-main{min-height:380px;border-radius:30px;isolation:isolate;background:#071b16;box-shadow:0 24px 70px rgba(2,6,23,.18)}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-main img{aspect-ratio:16/10;min-height:380px;object-fit:cover}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-main:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,6,23,.05),transparent 42%,rgba(2,6,23,.52));z-index:1;pointer-events:none}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-main:after{height:46%;z-index:1;background:linear-gradient(180deg,transparent,rgba(2,6,23,.48))}
.nmc-premium-gallery-v13764 .nmc-gallery-chip,.nmc-premium-gallery-v13764 .nmc-gallery-expand,.nmc-premium-gallery-v13764 .nmc-gallery-soft-label,.nmc-premium-gallery-v13764 .nmc-gallery-cta{z-index:3}
.nmc-gallery-cta{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#fff;color:#0f5132;font-size:.84rem;font-weight:950;box-shadow:0 16px 34px rgba(2,6,23,.22)}
.nmc-gallery-cta:after{content:"›";font-size:1.2rem;line-height:1}
.nmc-premium-gallery-sidewall{display:grid;grid-template-rows:1fr 1fr;gap:12px;min-height:100%}
.nmc-premium-gallery-side{position:relative;display:block;min-height:0;border:0;border-radius:26px;overflow:hidden;padding:0;background:#0f172a;cursor:zoom-in;box-shadow:0 18px 44px rgba(15,23,42,.12)}
.nmc-premium-gallery-side img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .28s ease,filter .28s ease}
.nmc-premium-gallery-side:hover img{transform:scale(1.035);filter:saturate(1.06)}
.nmc-premium-gallery-side:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(2,6,23,.62));pointer-events:none}
.nmc-premium-gallery-side span{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;color:#fff;font-weight:950;font-size:.82rem;text-align:left;text-shadow:0 1px 14px rgba(0,0,0,.45)}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-thumbs{padding:4px 2px 10px;gap:11px;scrollbar-width:thin;scrollbar-color:rgba(15,118,110,.35) transparent}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-thumb,.nmc-premium-gallery-v13764 .nmc-premium-gallery-more{flex-basis:126px;height:86px;border-radius:20px;border-color:rgba(15,118,110,.14);box-shadow:0 12px 26px rgba(15,23,42,.08)}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-thumb.active{border-color:#0f766e;box-shadow:0 0 0 3px rgba(15,118,110,.17),0 15px 34px rgba(15,23,42,.12)}
.nmc-premium-gallery-v13764 .nmc-premium-gallery-proof span{border-radius:22px;background:rgba(255,255,255,.78);border-color:rgba(15,118,110,.10);box-shadow:0 12px 26px rgba(15,23,42,.05)}
.nmc-gallery-lightbox{background:radial-gradient(circle at top,rgba(15,118,110,.26),rgba(2,6,23,.93) 46%,rgba(2,6,23,.96));backdrop-filter:blur(18px)}
.nmc-gallery-lightbox-card{border-radius:34px;background:linear-gradient(180deg,#09111f,#020617);border:1px solid rgba(255,255,255,.14);box-shadow:0 36px 120px rgba(0,0,0,.55)}
.nmc-gallery-lightbox-head{padding:16px 18px;background:rgba(255,255,255,.035)}
.nmc-gallery-lightbox-title strong{font-size:1.05rem}.nmc-gallery-lightbox-title span{color:rgba(255,255,255,.74)}
.nmc-gallery-lightbox-close{background:#fff;color:#0f172a;box-shadow:0 12px 30px rgba(0,0,0,.28)}
.nmc-gallery-lightbox-stage{background:linear-gradient(180deg,#050816,#020617)}
.nmc-gallery-lightbox-stage img{border-radius:18px;box-shadow:0 22px 80px rgba(0,0,0,.34)}
.nmc-gallery-lightbox-nav{background:#fff;color:#0f172a;box-shadow:0 18px 42px rgba(0,0,0,.32)}
@media(max-width:900px){.nmc-premium-gallery-frame{grid-template-columns:1fr}.nmc-premium-gallery-sidewall{display:none}.nmc-premium-gallery-v13764 .nmc-premium-gallery-main{min-height:230px}.nmc-premium-gallery-v13764 .nmc-premium-gallery-main img{min-height:230px;aspect-ratio:16/11}.nmc-gallery-cta{right:12px;bottom:12px;padding:9px 12px;font-size:.78rem}.nmc-premium-gallery-v13764{padding:13px;border-radius:28px}.nmc-premium-gallery-v13764 .nmc-premium-gallery-thumb,.nmc-premium-gallery-v13764 .nmc-premium-gallery-more{flex-basis:98px;height:72px;border-radius:16px}.nmc-gallery-lightbox-card{border-radius:0}.nmc-gallery-lightbox-stage img{border-radius:0;box-shadow:none}.nmc-gallery-lightbox-strip{padding-bottom:calc(12px + env(safe-area-inset-bottom))}}

/* v1.37.67 - Fichas premium + conversion: essentials, CTA movil discreto y pulido visual */
.nmc-center-premium-essentials{
  position:relative;
  margin-top:clamp(26px,5vw,54px);
  margin-bottom:clamp(28px,5vw,56px);
}
.nmc-center-premium-essentials::before{
  content:"";
  position:absolute;
  inset:-20px 0 auto auto;
  width:min(320px,42vw);
  height:min(320px,42vw);
  border-radius:999px;
  background:radial-gradient(circle,rgba(220,38,38,.10),rgba(220,38,38,0) 64%);
  pointer-events:none;
  z-index:0;
}
.nmc-premium-essentials-head,
.nmc-premium-essentials-grid,
.nmc-premium-flow-card{position:relative;z-index:1}
.nmc-premium-essentials-head{
  max-width:860px;
  margin-bottom:18px;
}
.nmc-premium-essentials-head h2{
  margin:10px 0 8px;
  color:#0f172a;
  font-size:clamp(2rem,4.4vw,3.7rem);
  line-height:.98;
  letter-spacing:-.06em;
}
.nmc-premium-essentials-head p{
  margin:0;
  color:#64748b;
  font-size:1.05rem;
  line-height:1.6;
  font-weight:650;
}
.nmc-premium-essentials-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.nmc-premium-essentials-grid article{
  min-height:190px;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(15,23,42,.08);
  border-radius:30px;
  padding:20px;
  background:linear-gradient(180deg,#fff,#fff7f7);
  box-shadow:0 20px 55px rgba(15,23,42,.07);
  overflow:hidden;
}
.nmc-premium-essentials-grid article>span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#111827;
  color:#fff;
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.06em;
  box-shadow:0 16px 30px rgba(15,23,42,.16);
}
.nmc-premium-essentials-grid small{
  margin-top:auto;
  display:block;
  color:#991b1b;
  text-transform:uppercase;
  letter-spacing:.10em;
  font-size:.72rem;
  font-weight:950;
}
.nmc-premium-essentials-grid strong{
  display:block;
  margin-top:7px;
  color:#0f172a;
  font-size:1.32rem;
  line-height:1.05;
  letter-spacing:-.04em;
}
.nmc-premium-essentials-grid p{
  margin:9px 0 0;
  color:#64748b;
  line-height:1.45;
  font-size:.94rem;
  font-weight:650;
}
.nmc-premium-flow-card{
  margin-top:16px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
  padding:24px;
  border-radius:34px;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(135deg,#111827,#1f2937 54%,#dc2626);
  color:#fff;
  box-shadow:0 28px 76px rgba(15,23,42,.18);
}
.nmc-premium-flow-card .eyebrow{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.22)!important;
}
.nmc-premium-flow-card h3{
  margin:10px 0 8px;
  color:#fff;
  font-size:clamp(1.55rem,3vw,2.35rem);
  line-height:1;
  letter-spacing:-.055em;
}
.nmc-premium-flow-card p{
  margin:0;
  max-width:720px;
  color:rgba(255,255,255,.76);
  line-height:1.55;
  font-weight:650;
}
.nmc-premium-flow-card nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}
.nmc-premium-flow-card .tp-btn{
  min-height:46px;
  border-radius:16px;
  padding:0 18px;
}
.nmc-premium-flow-card .tp-btn.primary{background:#fff!important;color:#111827!important;border-color:#fff!important}
.nmc-premium-flow-card .tp-btn.secondary{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.25)!important}
.nmc-premium-flow-card .tp-btn.ghost{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.25)!important}
.nmc-center-mobile-premium-cta{display:none}
.trasterospub-center-page .nmc-premium-gallery,
.nmc-portal-center-page .nmc-premium-gallery{
  box-shadow:0 28px 80px rgba(15,23,42,.10);
}
.trasterospub-center-page .nmc-premium-gallery-main::after,
.nmc-portal-center-page .nmc-premium-gallery-main::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,0) 40%,rgba(0,0,0,.18));
  pointer-events:none;
  opacity:.78;
}
.trasterospub-center-page .nmc-gallery-soft-label,
.nmc-portal-center-page .nmc-gallery-soft-label,
.trasterospub-center-page .nmc-gallery-cta,
.nmc-portal-center-page .nmc-gallery-cta,
.trasterospub-center-page .nmc-gallery-chip,
.nmc-portal-center-page .nmc-gallery-chip,
.trasterospub-center-page .nmc-gallery-expand,
.nmc-portal-center-page .nmc-gallery-expand{z-index:2}
.trasterospub-center-page .tp-center-reserve-strip{
  border-radius:28px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(16px);
  box-shadow:0 20px 60px rgba(15,23,42,.10);
}
@media(max-width:980px){
  .nmc-premium-essentials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nmc-premium-flow-card{grid-template-columns:1fr}
  .nmc-premium-flow-card nav{justify-content:flex-start}
}
@media(max-width:760px){
  .trasterospub-center-page,
  .nmc-portal-center-page{padding-bottom:84px}
  .nmc-center-premium-essentials{margin-top:24px;margin-bottom:34px}
  .nmc-premium-essentials-head h2{font-size:2.05rem;letter-spacing:-.055em}
  .nmc-premium-essentials-head p{font-size:.98rem}
  .nmc-premium-essentials-grid{grid-template-columns:1fr;gap:10px}
  .nmc-premium-essentials-grid article{min-height:auto;border-radius:22px;padding:16px}
  .nmc-premium-essentials-grid article>span{width:34px;height:34px;border-radius:13px}
  .nmc-premium-essentials-grid small{margin-top:14px}
  .nmc-premium-flow-card{border-radius:24px;padding:18px;gap:16px}
  .nmc-premium-flow-card nav{display:grid;grid-template-columns:1fr;gap:9px;width:100%}
  .nmc-premium-flow-card .tp-btn{width:100%;justify-content:center}
  .tp-center-reserve-strip{display:none!important}
  .nmc-center-mobile-premium-cta{
    position:fixed;
    left:12px;
    right:12px;
    bottom:calc(10px + env(safe-area-inset-bottom));
    z-index:520;
    display:grid;
    grid-template-columns:minmax(0,.9fr) 1fr auto;
    gap:8px;
    align-items:center;
    padding:8px;
    border:1px solid rgba(15,23,42,.10);
    border-radius:20px;
    background:rgba(255,255,255,.95);
    box-shadow:0 18px 46px rgba(15,23,42,.22);
    backdrop-filter:blur(18px);
  }
  .nmc-center-mobile-premium-cta div{min-width:0;padding-left:6px}
  .nmc-center-mobile-premium-cta small{display:block;color:#64748b;font-size:.70rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nmc-center-mobile-premium-cta strong{display:block;color:#0f172a;font-size:.96rem;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nmc-center-mobile-premium-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:15px;padding:0 12px;border:1px solid rgba(15,23,42,.10);background:#fff;color:#0f172a;text-decoration:none;font-weight:950;font-size:.88rem;white-space:nowrap}
  .nmc-center-mobile-premium-cta a.primary{background:#dc2626;border-color:#dc2626;color:#fff;box-shadow:0 14px 24px rgba(220,38,38,.22)}
  .trasterospub-center-page .nmc-premium-gallery-frame,
  .nmc-portal-center-page .nmc-premium-gallery-frame{gap:8px}
  .trasterospub-center-page .nmc-premium-gallery-main,
  .nmc-portal-center-page .nmc-premium-gallery-main{min-height:300px;border-radius:24px}
}
@media(max-width:420px){
  .nmc-center-mobile-premium-cta{grid-template-columns:minmax(0,.85fr) 1fr 44px}
  .nmc-center-mobile-premium-cta a:not(.primary){font-size:0;padding:0;width:44px}
  .nmc-center-mobile-premium-cta a:not(.primary)::before{content:"WA";font-size:.86rem;font-weight:950}
}


/* v1.37.83 - mapa comercial avanzado: zonas de servicio, no resultado y captación discreta */
.nmc-map-service-zones{display:grid!important;gap:10px!important;background:#fff!important;border:1px solid rgba(17,24,39,.09)!important;border-radius:18px!important;padding:12px!important;box-shadow:0 10px 24px rgba(17,24,39,.055)!important;margin-top:8px!important}.nmc-map-service-zones h2{margin:2px 0 0!important;font-size:1.05rem!important;letter-spacing:-.035em!important;color:#111827!important}.nmc-map-service-zones nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.nmc-map-service-zones a{display:grid!important;gap:2px!important;text-decoration:none!important;border:1px solid rgba(17,24,39,.09)!important;border-radius:14px!important;background:#f8fafc!important;color:#111827!important;padding:9px 10px!important}.nmc-map-service-zones a strong{font-size:.9rem!important;line-height:1.15!important}.nmc-map-service-zones a span{font-size:.74rem!important;color:#64748b!important;font-weight:850!important}.nmc-map-service-zones a:hover{border-color:rgba(220,38,38,.28)!important;background:#fff!important}.nmc-map-quick-zones{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:3px 0!important}.nmc-map-quick-zones button{appearance:none!important;border:1px solid rgba(17,24,39,.12)!important;background:#fff!important;color:#334155!important;border-radius:999px!important;min-height:32px!important;padding:0 10px!important;font-size:.78rem!important;font-weight:950!important;cursor:pointer!important}.nmc-map-quick-zones button:hover{border-color:rgba(220,38,38,.28)!important;color:#991b1b!important}.nmc-map-noresult{border-style:solid!important;background:#fff!important;border-color:rgba(220,38,38,.18)!important}.nmc-map-noresult-grid{display:grid!important;grid-template-columns:minmax(0,1fr) 220px!important;gap:14px!important;align-items:stretch!important}.nmc-map-noresult-grid aside{background:#f8fafc!important;border:1px solid rgba(17,24,39,.08)!important;border-radius:18px!important;padding:14px!important}.nmc-map-noresult-grid aside a{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-top:8px!important;min-height:38px!important;border-radius:999px!important;background:#111827!important;color:#fff!important;text-decoration:none!important;font-weight:950!important;padding:0 12px!important}.nmc-map-noresult-form{display:grid!important;gap:10px!important;margin-top:12px!important}.nmc-map-noresult-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.nmc-map-noresult-fields label{display:grid!important;gap:5px!important}.nmc-map-noresult-fields label.full{grid-column:1/-1!important}.nmc-map-noresult-fields span{font-size:.72rem!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#64748b!important;font-weight:950!important}.nmc-map-noresult-fields input,.nmc-map-noresult-fields textarea{width:100%!important;border:1px solid rgba(17,24,39,.12)!important;border-radius:12px!important;background:#fff!important;color:#111827!important;font-weight:800!important;padding:10px 11px!important;outline:0!important}.nmc-map-noresult-form button{appearance:none!important;border:0!important;border-radius:999px!important;background:#dc2626!important;color:#fff!important;font-weight:950!important;min-height:42px!important;padding:0 16px!important;width:max-content!important;cursor:pointer!important}.nmc-map-noresult-help{margin:10px 0 0!important}.nmc-map-noresult-help a{font-weight:950!important;color:#111827!important}.nmc-filter-chip[data-filter-status="soon"].is-active{background:#92400e!important;border-color:#92400e!important}@media(max-width:860px){.nmc-map-service-zones nav{grid-template-columns:1fr!important}.nmc-map-noresult-grid{grid-template-columns:1fr!important}.nmc-map-noresult-fields{grid-template-columns:1fr!important}.nmc-map-noresult-form button{width:100%!important}.nmc-map-quick-zones{overflow:auto!important;flex-wrap:nowrap!important;padding-bottom:3px!important}.nmc-map-quick-zones button{white-space:nowrap!important}}
