/**
 * LAGB Open Import Bridge 0.2.18 — compat visual con Blueprint 4.2.6.x
 * No replica todo base.css; acerca ritmo de secciones, navbar y cards.
 * Scope: body.lag-blank-template / lag-open-bridge
 */

body.lag-blank-template.lag-open-bridge,
body.lagb-open-import-bridge.lag-blank-template {
  --lag-navbar-bg: #111827;
  --lag-accent-color: #0ea5e9;
  --lagb-premium-primary: #0f172a;
  --lagb-premium-bg: #ffffff;
  --lagb-premium-border: #e5e7eb;
  --lagb-rhythm-section-y: 2.25rem;
  --lagb-navbar-height: 56px;
  --lag-enterprise-radius: 10px;
  --lagb-navbar-menu-gap-desktop: 0.35rem;
}

/* ---------- Navbar horizontal (desktop) ---------- */
body.lag-blank-template .lag-navbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--lag-navbar-bg, #111827) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.06), 0 1px 8px rgba(15, 23, 42, 0.14);
}

body.lag-blank-template .lag-navbar__inner {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem 1rem;
  max-width: 1120px;
  margin: 0 auto;
  min-height: var(--lagb-navbar-height, 56px);
  padding: 9px 20px !important;
}

body.lag-blank-template .lag-navbar__brand {
  flex: 0 1 auto;
  min-width: 0;
}

body.lag-blank-template .lag-navbar__logo {
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 42vw;
}

body.lag-blank-template .lag-navbar__menu {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: var(--lagb-navbar-menu-gap-desktop, 0.35rem) !important;
  position: static !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  max-height: none !important;
}

body.lag-blank-template .lag-navbar__link {
  display: inline-flex !important;
  align-items: center !important;
  padding: 6px 10px !important;
  border-radius: var(--lag-enterprise-radius, 10px) !important;
  color: rgba(255, 255, 255, 0.88) !important;
  text-decoration: none !important;
  font-size: 0.86rem !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  line-height: 1.2 !important;
}

body.lag-blank-template .lag-navbar__link:hover,
body.lag-blank-template .lag-navbar__link:focus,
body.lag-blank-template .lag-navbar__link--active {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
}

body.lag-blank-template .lag-navbar__toggle {
  display: none !important;
}

@media (max-width: 768px) {
  body.lag-blank-template .lag-navbar__toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
  }

  body.lag-blank-template .lag-navbar__menu {
    display: none !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 8px) !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.35rem !important;
    padding: 0.75rem !important;
    background: var(--lag-navbar-bg, #111827) !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.28) !important;
  }

  body.lag-blank-template .lag-navbar--open .lag-navbar__menu {
    display: flex !important;
  }

  body.lag-blank-template .lag-navbar__link {
    width: 100%;
    justify-content: flex-start !important;
  }
}

/* ---------- Ritmo de secciones (menos hueco location → testimonios) ---------- */
body.lag-blank-template .lag-section,
body.lag-blank-template .wp-block-group.lag-section {
  width: 100% !important;
  max-width: none !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-top: var(--lagb-rhythm-section-y, 2.25rem) !important;
  padding-bottom: var(--lagb-rhythm-section-y, 2.25rem) !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  scroll-margin-top: 76px;
  box-sizing: border-box;
}

body.lag-blank-template .lag-section > .wp-block-group,
body.lag-blank-template .lag-section > .wp-block-columns {
  max-width: 1100px;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.lag-blank-template .lag-section-location,
body.lag-blank-template .lag-section-testimonials,
body.lag-blank-template .lag-section-faqs,
body.lag-blank-template .lag-section-pricing {
  border-top: 1px solid rgba(229, 231, 235, 0.85);
}

body.lag-blank-template .lag-section-testimonials {
  background: var(--lagb-premium-bg, #fff);
}

/* Reducir doble margen de grupos internos legacy del bridge */
body.lag-blank-template .lag-landing-basic .lag-section,
body.lag-blank-template.lag-landing-basic .lag-section {
  margin: 0 auto !important;
}

body.lag-blank-template .lag-products,
body.lag-blank-template .lag-services,
body.lag-blank-template .lag-testimonials,
body.lag-blank-template .lag-faqs {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ---------- Cards servicios / productos (look más limpio) ---------- */
body.lag-blank-template .lag-service-card,
body.lag-blank-template .lag-product-card {
  background: #fff;
  border: 1px solid var(--lagb-premium-border, #e5e7eb);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

body.lag-blank-template .lag-card-content {
  padding: 1rem 1.1rem 1.15rem !important;
}

body.lag-blank-template .lag-service-title,
body.lag-blank-template .lag-product-title {
  margin: 0 0 0.4rem !important;
  font-size: 1.05rem !important;
  line-height: 1.25 !important;
}

body.lag-blank-template .lag-service-blurb,
body.lag-blank-template .lag-product-blurb {
  margin: 0 !important;
  color: #4b5563;
  font-size: 0.92rem !important;
  line-height: 1.45 !important;
}

/* Product select / location texto plano */
body.lag-blank-template .lag-product-select-cta .wp-block-button__link,
body.lag-blank-template .lag-product-select .wp-block-button__link {
  border-radius: 999px !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  padding: 0.45rem 0.85rem !important;
}

body.lag-blank-template .lag-location-contact-text {
  margin: 0.15rem 0 0.35rem !important;
  color: #111827;
  font-size: 0.95rem;
}

body.lag-blank-template .lag-location-map-link {
  display: none !important; /* por si un paquete viejo aún trae el enlace */
}

/* Testimonios más contenidos */
body.lag-blank-template .lag-section-testimonials .lag-testimonials {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

body.lag-blank-template .lag-testimonial {
  margin: 0.75rem 0 !important;
  padding: 1rem 1.15rem !important;
  border-left: 3px solid var(--lag-accent-color, #0ea5e9);
  background: #f8fafc;
  border-radius: 0 12px 12px 0;
}

@media (max-width: 782px) {
  body.lag-blank-template .lag-section,
  body.lag-blank-template .wp-block-group.lag-section {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
}

/* 0.2.30 — Destino: sin hueco blanco entre navbar y Hero (themes ajenos) */
html body.lag-open-bridge .lag-blank-page,
html body.lag-open-bridge .lag-blank-main,
html body.lag-open-bridge main,
html body.lag-open-bridge .entry-content,
html body.lag-open-bridge .wp-block-group.lag-landing,
html body.lag-open-bridge .lag-landing.lag-landing-basic {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
html body.lag-open-bridge .lag-hero,
html body.lag-open-bridge .wp-block-cover.lag-hero,
html body.lag-open-bridge .lag-hero.alignfull,
html body.lag-open-bridge .lag-landing > .lag-hero,
html body.lag-open-bridge .lag-landing > .wp-block-cover {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}
html body.lag-open-bridge .lag-anchor + .lag-hero,
html body.lag-open-bridge .lag-anchor + .wp-block-cover {
  margin-top: 0 !important;
}

/* 0.2.31 — Quitar gap de is-layout-flow entre nav y Hero */
html body.lag-open-bridge #primary .lag-basic-no-pt,
html body.lag-open-bridge #primary .wp-block-group.lag-landing,
html body.lag-open-bridge #primary .lag-landing.is-layout-flow,
html body.lag-open-bridge .lag-blank-main .lag-landing {
  gap: 0 !important;
  row-gap: 0 !important;
  column-gap: 0 !important;
  --wp--style--block-gap: 0px !important;
  --wp--style--block-gap--small: 0px !important;
}
html body.lag-open-bridge #primary .lag-basic-no-pt > *,
html body.lag-open-bridge #primary .lag-landing.is-layout-flow > *,
html body.lag-open-bridge #primary .lag-basic-no-pt > .lag-navbar,
html body.lag-open-bridge #primary .lag-basic-no-pt > .lag-hero,
html body.lag-open-bridge #primary .lag-basic-no-pt > .lagb-variant-hero-compact-conversion,
html body.lag-open-bridge #primary .lag-basic-no-pt .lagb-variant-hero-compact-conversion {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
  margin-bottom: 0 !important;
}
html body.lag-open-bridge #primary .lag-basic-no-pt > .lag-navbar {
  margin-bottom: 0 !important;
}
html body.lag-open-bridge #primary .lag-navbar + .lag-hero,
html body.lag-open-bridge #primary .lag-navbar + .lag-anchor + .lag-hero,
html body.lag-open-bridge #primary .lag-navbar + .wp-block-cover,
html body.lag-open-bridge #primary nav + .lagb-variant-hero-compact-conversion {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}

/* 0.2.34 — Mapa OSM visible en destino (base.css lo oculta hasta .is-active) */
html body.lag-open-bridge .lag-section-location .lag-osm-map,
html body.lag-open-bridge .lag-osm-map[data-query]{
  display:block!important;
  width:100%!important;
  height:320px!important;
  min-height:320px!important;
}
