
/* V10.23 — Flex rendering architecture + polished object layouts.
   Flex object templates are fragments rendered inside the single outer base. */

.cs-flex-object-view{
  display:block;
  width:100%;
}

.cs-flex-object-view .cs-object-hero{
  padding:58px 0 34px;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,196,0,.08),transparent 28%),
    linear-gradient(180deg,#07101d 0%,#050b14 100%);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.cs-flex-object-view .cs-back-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#aebdce!important;
  text-decoration:none;
  font-size:.86rem;
  margin-bottom:24px;
}
.cs-flex-object-view .cs-back-link:hover{color:var(--cs-yellow)!important}

.cs-flex-object-view .cs-object-title{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:start;
  gap:18px;
  max-width:1080px;
}
.cs-flex-object-view .cs-object-title .cs-section-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:var(--cs-yellow);
  border:1px solid rgba(255,196,0,.28);
  background:rgba(255,196,0,.07);
}
.cs-flex-object-view .cs-object-title h1{
  font-size:clamp(2.35rem,5vw,4.8rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:.12em 0 .22em;
  max-width:1050px;
}
.cs-flex-object-view .cs-object-title p{
  color:#a7b6c8;
  font-size:1.05rem;
  line-height:1.62;
  max-width:900px;
  margin:0;
}

.cs-flex-object-view .cs-object-section{padding-top:34px}
.cs-flex-object-view .cs-object-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr);
  gap:24px;
  align-items:start;
}
.cs-flex-object-view .cs-object-gallery{
  min-width:0;
  border:1px solid #20334a;
  border-radius:22px;
  background:#040a13;
  overflow:hidden;
}
.cs-flex-object-view .cs-object-main-image{
  min-height:320px;
  display:grid;
  place-items:center;
  background:#02060d;
}
.cs-flex-object-view .cs-object-main-image img{
  width:100%;
  max-height:760px;
  object-fit:contain;
  display:block;
  background:#02060d;
}
.cs-flex-object-view .cs-object-thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(115px,1fr));
  gap:8px;
  padding:10px;
  border-top:1px solid #20334a;
}
.cs-flex-object-view .cs-object-thumbs img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:10px;
  display:block;
}

.cs-flex-object-view .cs-data-card{
  border:1px solid #20334a;
  border-radius:20px;
  background:linear-gradient(180deg,#0a1728,#07111f);
  box-shadow:0 18px 42px rgba(0,0,0,.2);
}
.cs-flex-object-view .cs-object-data{
  padding:20px;
  position:sticky;
  top:96px;
}
.cs-flex-object-view .cs-object-data h2{
  font-size:1.25rem;
  margin:0 0 16px;
}
.cs-flex-object-view .cs-object-data dl{
  display:grid;
  grid-template-columns:minmax(110px,.46fr) 1fr;
  gap:10px 14px;
  margin:0;
}
.cs-flex-object-view .cs-object-data dt{
  color:#8093aa;
  font-size:.73rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.cs-flex-object-view .cs-object-data dd{
  color:#eef3f9;
  margin:0;
  overflow-wrap:anywhere;
}

.cs-flex-object-view .cs-object-reading{
  max-width:1080px;
  margin-top:24px;
}
.cs-flex-object-view .cs-object-description{
  padding:24px 26px;
  font-size:1rem;
  line-height:1.75;
}
.cs-flex-object-view .cs-object-description h2{
  font-size:1.55rem;
  margin:0 0 14px;
}
.cs-flex-object-view .cs-object-description p{
  color:#c5d0dc;
  margin:0;
}
.cs-flex-object-view .cs-richtext{
  color:#c5d0dc;
}
.cs-flex-object-view .cs-richtext p,
.cs-flex-object-view .cs-richtext li{
  line-height:1.8;
}
.cs-flex-object-view .cs-richtext h2,
.cs-flex-object-view .cs-richtext h3{
  color:#fff;
  margin-top:1.35em;
}

.cs-flex-object-view .cs-catalog-placeholder{
  min-height:320px;
  display:grid;
  place-items:center;
  font-size:3rem;
  color:#40546a;
}

/* Quadrinhos gain a slightly more editorial reading surface. */
.cs-flex-object-view .cs-object-description + .cs-object-description{
  margin-top:18px;
}

/* Prevent any duplicated footer/header styling artifact from nested full documents. */
.cs-flex-object-view header.site-header,
.cs-flex-object-view footer,
.cs-flex-object-view .site-footer{display:none!important}

@media(max-width:940px){
  .cs-flex-object-view .cs-object-layout{grid-template-columns:1fr}
  .cs-flex-object-view .cs-object-data{position:static}
}
@media(max-width:640px){
  .cs-flex-object-view .cs-object-hero{padding:40px 0 24px}
  .cs-flex-object-view .cs-object-title{grid-template-columns:1fr}
  .cs-flex-object-view .cs-object-title h1{font-size:2.45rem}
  .cs-flex-object-view .cs-object-main-image{min-height:220px}
  .cs-flex-object-view .cs-object-data dl{grid-template-columns:1fr}
}
