/* ==========================================================
CRE PRODUCT v2.1
Framework: Content Redesign Engine
Uso: páginas de producto, marca, solución y landing comercial
========================================================== */

.cre-product-hero{
  background:
    linear-gradient(90deg,rgba(3,24,39,.96),rgba(6,38,61,.88),rgba(20,10,55,.76)),
    var(--cre-hero-bg) center right/cover fixed no-repeat;
  padding:86px 6%;
  color:#fff;
}

.cre-product-hero-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:56px;
  align-items:center;
}

.cre-hero-copy{
  position:relative;
  padding-left:34px;
}

.cre-hero-copy:before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  width:13px;
  height:194px;
  border-radius:999px;
  background:var(--cre-gradient-vias);
  box-shadow:0 0 30px rgba(237,128,32,.35);
}

.cre-badge{
  display:inline-flex;
  gap:8px;
  align-items:center;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.28);
  color:#fff!important;
  padding:10px 16px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.cre-badge .cre-material{
  font-size:18px;
  color:#fff;
}

.cre-hero-title{
  font-size:52px;
  line-height:1.04;
  margin:24px 0 18px;
  color:#fff;
  font-weight:800;
  letter-spacing:-1.5px;
}

.cre-hero-text{
  font-size:18px;
  line-height:1.75;
  color:#fff;
  max-width:640px;
  font-weight:500;
}

/* Media limpia para logos o imágenes sin caja de video */
.cre-hero-media-clean{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:280px;
}

.cre-hero-media-clean img{
  display:block;
  max-width:100%;
  width:auto;
  max-height:190px;
  object-fit:contain;
  filter:drop-shadow(0 22px 38px rgba(0,0,0,.28));
}

.cre-logo-box{
  background:#fff;
  border-radius:28px;
  padding:28px;
  box-shadow:0 24px 60px rgba(0,0,0,.10);
  border:1px solid rgba(6,38,61,.08);
}

.cre-logo-box img{
  display:block;
  width:100%;
  height:auto;
}

.cre-cards{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  margin-top:34px;
}

.cre-card{
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(0,0,0,.08);
  border-top:5px solid var(--cre-orange);
}

.cre-card-img{
  height:150px;
  overflow:hidden;
  background:#e9eef4;
}

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

.cre-card-body{
  padding:24px;
}

.cre-card-title{
  font-size:20px;
  margin:0 0 12px;
  color:#06192b;
  font-weight:700;
  line-height:1.2;
}

.cre-card-title .cre-material{
  color:var(--cre-orange);
  margin-right:8px;
}

.cre-card-text{
  font-size:14px;
  line-height:1.6;
  margin:0;
  color:var(--cre-muted);
}

.cre-faq details{
  background:#fff;
  border-radius:16px;
  margin-bottom:14px;
  padding:18px 22px;
  box-shadow:0 10px 28px rgba(0,0,0,.06);
}

.cre-faq summary{
  font-weight:700;
  cursor:pointer;
  color:#06192b;
  line-height:1.45;
}

.cre-faq summary .cre-material{
  color:var(--cre-orange);
  margin-right:8px;
}

.cre-faq p{
  margin-bottom:0;
}

.cre-cta{
  background:
    linear-gradient(90deg,rgba(3,24,39,.9),rgba(6,38,61,.82),rgba(102,7,196,.68)),
    var(--cre-cta-bg) center center/cover fixed no-repeat;
  color:#fff;
  text-align:center;
  padding:82px 6%;
}

.cre-cta .cre-title{
  color:#fff;
}

.cre-cta .cre-text{
  color:#fff;
  max-width:760px;
  margin:0 auto 28px;
}

/* ==========================================================
CRE CARDS VARIANTS v2.1+
Variantes de distribución para cards según densidad de contenido.
========================================================== */

/* Variante 3 columnas: ideal para 6 cards, capacidades textuales o bloques sin imagen */
.cre-cards-3{
  grid-template-columns:repeat(3,1fr);
  max-width:920px;
}

/* Cards textuales sin imagen */
.cre-card-text-only{
  padding:30px 28px;
}

.cre-card-text-only .cre-card-body{
  padding:0;
}

/* Responsive para variante 3 columnas */
@media(max-width:980px){
  .cre-content .cre-cards-3{
    grid-template-columns:repeat(2,1fr);
    max-width:100%;
  }
}

@media(max-width:680px){
  .cre-content .cre-cards-3{
    grid-template-columns:1fr;
  }
}