/* Vistio Business v1.0.8.4 — surgical fixes for paired-large-image cards. */
/* Only listed templates place two large photographic panels in their compact layouts.
   Other card templates, Vistio Link and catalogs are deliberately left untouched. */
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-frame{
  display:grid!important;position:relative!important;min-height:0!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto 230px auto auto auto auto!important;
  grid-template-areas:'brand' 'cover' 'title' 'story' 'contact' 'footer'!important;
  align-content:start!important;row-gap:0!important;
}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-cover{
  grid-area:cover!important;display:block!important;position:relative!important;
  align-self:stretch!important;justify-self:stretch!important;min-width:0!important;
  margin:0!important;padding:0!important;height:230px!important;min-height:230px!important;
  max-height:230px!important;width:100%!important;overflow:hidden!important;
  border:0!important;clip-path:none!important;border-radius:0 0 20px 20px!important;
}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-cover img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 38%!important;filter:none!important}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-photo{
  grid-area:auto!important;order:unset!important;position:absolute!important;
  z-index:7!important;top:218px!important;right:20px!important;bottom:auto!important;left:auto!important;
  flex:none!important;width:78px!important;height:78px!important;min-width:78px!important;
  max-width:78px!important;min-height:78px!important;max-height:78px!important;
  align-self:auto!important;justify-self:auto!important;margin:0!important;padding:0!important;
  transform:none!important;filter:none!important;clip-path:none!important;
  border-radius:50%!important;overflow:hidden!important;border:3px solid var(--vbgold,#ddb76e)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.65)!important;background:var(--vbg,#100f0e)!important;
}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 18%!important;filter:none!important}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-title{
  grid-area:title!important;order:unset!important;position:relative!important;
  top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  z-index:3!important;width:auto!important;height:auto!important;min-height:0!important;
  max-width:none!important;align-self:stretch!important;justify-self:stretch!important;
  margin:0!important;padding:20px 106px 16px 22px!important;
  transform:none!important;background:var(--vbg,#101010)!important;text-align:left!important;
}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-story{
  grid-area:story!important;position:relative!important;order:unset!important;
  top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
  width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;
  align-self:stretch!important;justify-self:stretch!important;margin:0!important;padding:12px 22px 17px!important;
}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-contact{
  grid-area:contact!important;position:relative!important;order:unset!important;
  top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
  height:auto!important;min-height:0!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:13px 20px 19px!important;
}
.vbp-render.vbp-card:is(
  .vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,
  .vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,
  .vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,
  .vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,
  .vbp-layout-stripe
) .vbp-card-footer{grid-area:footer!important;position:relative!important;order:unset!important;margin:0!important;padding:12px 20px!important}

/* Keep individual compositions recognizable even in compact view. */
.vbp-card:is(.vbp-layout-split-diagonal,.vbp-layout-split-inverse) .vbp-card-cover{clip-path:polygon(0 0,100% 0,100% 92%,0 100%)!important}
.vbp-card:is(.vbp-layout-split-diagonal,.vbp-layout-split-inverse) .vbp-card-photo{left:20px!important;right:auto!important}
.vbp-card:is(.vbp-layout-split-diagonal,.vbp-layout-split-inverse) .vbp-card-title{padding-left:112px!important;padding-right:22px!important}
.vbp-card:is(.vbp-layout-photo-banner,.vbp-layout-landscape,.vbp-layout-staggered) .vbp-card-cover{border-radius:0!important}
.vbp-card:is(.vbp-layout-photo-banner,.vbp-layout-landscape,.vbp-layout-staggered) .vbp-card-cover img{object-position:center 58%!important}
.vbp-card:is(.vbp-layout-monogram,.vbp-layout-luxury-seal) .vbp-card-photo{right:calc(50% - 39px)!important}
.vbp-card:is(.vbp-layout-monogram,.vbp-layout-luxury-seal) .vbp-card-title{text-align:center!important;padding:52px 20px 16px!important}
.vbp-card.vbp-layout-panel-overlay .vbp-card-photo{top:166px!important;right:20px!important}
.vbp-card:is(.vbp-layout-cover-grid,.vbp-layout-collage) .vbp-card-cover{border-radius:20px 0 20px 0!important}
.vbp-card.vbp-layout-timeline .vbp-card-story{border-left:3px solid var(--vbgold,#ddb76e)!important;margin:0 18px!important;width:auto!important}

/* Small-screen container rules in historical styles used flex/order to put photos on separate rows.
   This override comes after them, so ONLY the affected 13 compositions keep one hero and one avatar. */
@container (max-width:530px){
  .vbp-render.vbp-card:is(.vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,.vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,.vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,.vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,.vbp-layout-stripe) .vbp-frame{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto 230px auto auto auto auto!important;
  }
  .vbp-render.vbp-card:is(.vbp-layout-portrait-left,.vbp-layout-split-diagonal,.vbp-layout-photo-banner,.vbp-layout-split-inverse,.vbp-layout-collage,.vbp-layout-cover-grid,.vbp-layout-minimal-art,.vbp-layout-monogram,.vbp-layout-staggered,.vbp-layout-luxury-seal,.vbp-layout-panel-overlay,.vbp-layout-landscape,.vbp-layout-timeline,.vbp-layout-stripe) .vbp-card-photo{
    position:absolute!important;order:unset!important;top:218px!important;width:78px!important;height:78px!important;margin:0!important;
  }
}

/* Nexus / minimal-art also uses cover + circular portrait in compact preview. */
.vbp-card.vbp-layout-minimal-art .vbp-card-title{padding:18px 104px 14px 22px!important}
.vbp-card.vbp-layout-minimal-art .vbp-card-story{padding-top:10px!important}

/* VB147-LINK-MOBILE-START: corrección responsive de Vistio Link; solo contenedores pequeños. */
@container (max-width: 530px) {
  /* Las variantes divididas no deben heredar la cuadrícula de escritorio (40% / 60%). */
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero-copy {
    position: relative !important;
    grid-column: auto !important;
    grid-row: auto !important;
    order: 0 !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: clamp(22px, 6cqw, 34px) 22px 28px !important;
    background: var(--vbs) !important;
    text-align: center !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero-img {
    position: relative !important;
    inset: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    order: 1 !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    height: clamp(220px, 73cqw, 315px) !important;
    min-height: 0 !important;
    max-height: 315px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero-img img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero-copy h1 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(28px, 9cqw, 43px) !important;
    line-height: 1.12 !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
    text-wrap: balance;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero-copy h2 {
    max-width: 100%;
    font-size: clamp(17px, 5.4cqw, 23px) !important;
    line-height: 1.32 !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-hero-copy p {
    max-width: 100% !important;
    margin-inline: auto !important;
    line-height: 1.6 !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-actions {
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }
  .vbp-render.vbp-hub:is(
    .vbp-layout-architectural,
    .vbp-layout-split-editorial,
    .vbp-layout-editorial-cover,
    .vbp-layout-modern
  ) .vbp-hub-logotype {
    max-width: 100%;
    min-width: 0;
    overflow-wrap: break-word;
    word-break: normal;
  }
}
/* VB147-LINK-MOBILE-END */
