/* =====================================================================
   Montra de Produtos — carrossel da hero
   FONTE ÚNICA CONSOLIDADA — sem camadas de ajuste sobrepostas
   Desktop: texto 45% | imagem 55%  ·  Mobile: imagem em cima, texto em baixo
   ===================================================================== */
.showcase{
  --card-a:#1c3560; --card-b:#182e54; --card-c:#152a4d; --card-d:#101f38;
  --royal:#42618f; --royal-soft:#7f9bc4; --hair:rgba(150,175,225,.16);
  position:relative;
}

.showcase-label{
  display:block;margin:0 0 16px 2px;font-size:12px;font-weight:700;
  letter-spacing:2px;color:#6B7A9C;text-transform:uppercase;
}

.showcase .stack{position:relative;width:100%;height:632px;}

/* ---- cards ---- */
.showcase .pcard{
  position:absolute;top:0;height:100%;overflow:hidden;cursor:pointer;
  border:1px solid var(--hair);
  transition:transform .8s cubic-bezier(.4,0,.2,1), opacity .6s ease, filter .6s ease;
  will-change:transform;
}
.showcase .pcard[data-pos="0"]{transform:translateX(128px);width:calc(100% - 128px);z-index:40;box-shadow:-20px 20px 50px rgba(15,25,55,.16);}
.showcase .pcard[data-pos="1"]{transform:translateX(84px); width:calc(100% - 84px); z-index:30;filter:brightness(.8);}
.showcase .pcard[data-pos="2"]{transform:translateX(42px); width:calc(100% - 42px); z-index:20;filter:brightness(.6);}
.showcase .pcard[data-pos="3"]{transform:translateX(0);    width:100%;               z-index:10;filter:brightness(.42);}
.showcase .pcard[data-pos="hidden"]{transform:translateX(0);width:100%;z-index:1;opacity:0;}

.showcase .pcard[data-pos="1"],
.showcase .pcard[data-pos="2"],
.showcase .pcard[data-pos="3"],
.showcase .pcard[data-pos="hidden"]{background:var(--card-c);}

/* ---- spine (título vertical dos cards de trás) ---- */
.showcase .pcard-spine{
  position:absolute;top:0;left:0;width:52px;height:100%;
  display:flex;align-items:center;justify-content:center;
  border-right:1px solid var(--hair);background:var(--card-c);z-index:2;
}
.showcase .pcard-spine .vtitle{
  writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;
  font-size:13px;font-weight:700;letter-spacing:.5px;color:#EAF0FC;
}
.showcase .pcard[data-pos="0"] .pcard-spine{opacity:0;pointer-events:none;}

/* ---- conteúdo: 45% texto | 55% imagem ---- */
.showcase .pcard-inner{
  position:absolute;inset:0;display:grid;grid-template-columns:45% 55%;
  opacity:0;transition:opacity .5s ease .2s;pointer-events:none;
}
.showcase .pcard[data-pos="0"] .pcard-inner{opacity:1;pointer-events:auto;}

/* texto (45%) — centrado vertical, padding equilibrado nos 4 lados */
.showcase .pcard-text{
  background:linear-gradient(135deg,var(--card-a),var(--card-b));
  padding:40px 38px;
  display:flex;flex-direction:column;justify-content:center;
  overflow:hidden;z-index:1;
}
.showcase .pcard-cat{
  font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--royal-soft);margin:0 0 14px;
}
.showcase .pcard-text h3{
  font-size:24px;color:#fff;font-weight:800;letter-spacing:-.5px;
  line-height:1.14;margin:0 0 14px;
}
.showcase .pcard-desc{
  font-size:13px;line-height:1.6;color:#C3CEE6;margin:0 0 20px;
}
.showcase .pfeat{
  list-style:none;display:flex;flex-direction:column;gap:11px;
  margin:0 0 26px;padding:0;
}
.showcase .pfeat li{
  display:flex;align-items:flex-start;gap:10px;
  font-size:12.5px;color:#D6DEF0;font-weight:500;line-height:1.4;
}
.showcase .pfeat li::before{
  content:"";flex:none;width:6px;height:6px;background:var(--royal);margin-top:5px;
}
.showcase .pcard-cta{
  align-self:flex-start;background:var(--royal);color:#fff;border:none;
  padding:12px 24px;font-weight:700;font-size:13px;cursor:pointer;
  text-decoration:none;transition:background .2s,transform .2s;
}
.showcase .pcard-cta:hover{background:#375176;transform:translateX(3px);}

/* imagem (55%) — limpa, sem sombra */
.showcase .pcard-visual{position:relative;overflow:hidden;background:var(--card-d);}
.showcase .pcard-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}

/* ---- dots ---- */
.showcase .pdots{position:absolute;bottom:-34px;left:128px;display:flex;gap:10px;}
.showcase .pdots button{width:9px;height:9px;border:none;background:#CAD3E6;cursor:pointer;padding:0;transition:width .3s,background .3s;}
.showcase .pdots button.on{width:28px;background:var(--royal);}

/* ---- hero (desktop): painel contido, espaçamento afinado nos 4 lados ---- */
.hero:has(.showcase) .hero-diagonal{display:none !important;}
.hero-inner:has(.showcase){
  grid-template-columns:0.8fr 1.2fr;
  min-height:620px;align-items:start;
}
/* topo curto · direita mínima (o card estica) · base equilibrada · esquerda respira */
.hero-visual:has(.showcase){
  padding:0 1.4rem 1.4rem 1.75rem;
  overflow:hidden;
}

/* ticker branco nítido */
.ticker-item{color:#fff !important;font-weight:700;opacity:.95;-webkit-font-smoothing:antialiased;}
.ticker-dot{background:var(--royal-soft) !important;}

/* =====================================================================
   MOBILE — card único, imagem em cima + texto em baixo
   ===================================================================== */
@media (max-width:1000px){
  .hero-inner:has(.showcase){grid-template-columns:1fr;min-height:0;}
  .hero-visual:has(.showcase){background:transparent !important;padding:1rem 0 0;overflow:visible;}
  .hero-visual:has(.showcase)::after{display:none !important;}

  .showcase .stack{height:auto;}
  .showcase .pcard{position:relative;height:auto;width:100% !important;transform:none !important;filter:none !important;box-shadow:0 10px 30px rgba(15,25,55,.12);border-radius:14px;}
  .showcase .pcard:not([data-pos="0"]){display:none !important;}
  .showcase .pcard-spine{display:none !important;}

  .showcase .pcard-inner{position:relative;grid-template-columns:1fr;grid-template-rows:auto auto;opacity:1 !important;}
  .showcase .pcard-visual{order:-1;min-height:200px;}
  .showcase .pcard-text{padding:30px 26px;}
  .showcase .pcard-text h3{font-size:21px;}
  .showcase .pcard-desc{font-size:13px;}
  .showcase .pfeat li{font-size:12.5px;}

  .showcase .pdots{position:relative;bottom:auto;left:0;justify-content:center;margin-top:20px;}
  /* label com folga no topo para nao colar aos botoes do hero */
  .showcase-label{margin:28px 0 16px 2px;}

  /* subir o conteudo do hero para junto do cabecalho (espaco minimo no topo) */
  .hero:has(.showcase){padding-top:1.25rem !important;}
  /* a causa do vao: min-height alto + align-items:center centram o conteudo */
  .hero-inner:has(.showcase){min-height:0 !important;align-items:start !important;padding-top:0 !important;}
  .hero-copy{padding-top:0 !important;margin-top:0 !important;}

  /* ocultar o botao "Falar connosco" do HERO no mobile (nao o do menu) */
  .hero-copy .hero-btns .button-outline{display:none !important;}
}

/* Desktop: puxar o bloco de cards para junto do cabecalho */
@media (min-width:1001px){
  .hero-visual:has(.showcase){margin-top:-72px;}
}

@media (prefers-reduced-motion:reduce){
  .showcase .pcard{transition:opacity .3s ease;}
}
