/* DevMods — extras da página do produto: vídeo 16:9 e ficha técnica.
 * Mesmo CSS na loja SPA e no tema nativo; só tokens do DevMods. */

/* Cada bloco é uma seção, na ordem escolhida no plugin, logo abaixo do
 * "Sobre". A última fecha com a linha antes do "Você também pode gostar". */
.hub6-x {
  padding: 40px 0 0;
}
.hub6-x--texto {
  padding-top: 64px;
}
.info + .hub6-x--video {
  padding-top: 28px;
}
.hub6-x.is-ultima {
  padding-bottom: 64px;
  border-bottom: 1px solid var(--hub6-border);
}
.hub6-x .lab {
  display: block;
  font: 600 10px/1.4 var(--mono);
  letter-spacing: .14em;
  color: var(--hub6-text-muted);
}
.hub6-x-eye {
  margin: 0 0 18px;
}
.section-heading .hub6-x-eye {
  margin: 0;
}

/* Vídeo: na largura do conteúdo (.wrap), sem borda. */
.hub6-pv-box {
  position: relative;
  aspect-ratio: 16 / 9;
  border-radius: 18px;
  overflow: hidden;
  background: var(--hub6-surface-2);
  cursor: pointer;
}
.hub6-pv-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: 0;
}

/* Botão de som (só quando o vídeo tem áudio ligado no plugin). */
.hub6-pv-som {
  position: absolute;
  right: 16px;
  bottom: 16px;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: var(--hub6-text);
  background: color-mix(in srgb, var(--hub6-bg) 62%, transparent);
  backdrop-filter: blur(8px);
  cursor: pointer;
  transition: background .2s, transform .2s;
}
.hub6-pv-som:hover {
  transform: scale(1.06);
}
.hub6-pv-som.is-on {
  color: var(--hub6-ink);
  background: var(--hub6-brand-strong);
}
.hub6-pv-som svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.hub6-pv-som svg path:first-child {
  fill: currentColor;
}
.hub6-pv-som .hub6-pv-onda,
.hub6-pv-som.is-on .hub6-pv-x {
  display: none;
}
.hub6-pv-som.is-on .hub6-pv-onda {
  display: inline;
}
@media (max-width: 600px) {
  .hub6-pv-som {
    right: 10px;
    bottom: 10px;
    width: 36px;
    height: 36px;
  }
}

/* Som do veículo: título, o card do player da home (mesmas cores e mesma
 * responsividade de lá) e o motor que vibra tocando — à direita no desktop,
 * acima do player no celular. */
.hub6-tec-som {
  display: grid;
  grid-template-columns: minmax(0, 573px) 200px;
  grid-template-areas: "tit tit" "player motor";
  column-gap: 32px;
  align-items: center;
  justify-content: start;
}
.hub6-tec-som.sem-motor {
  grid-template-columns: minmax(0, 573px);
  grid-template-areas: "tit" "player";
}
.hub6-tec-som-tit {
  grid-area: tit;
  margin: 0 0 18px;
  font: 600 clamp(22px, 1.8vw, 26px)/1.15 var(--display);
  letter-spacing: -.035em;
  color: var(--hub6-text);
}
.hub6-tec-som .studio-copy {
  grid-area: player;
  min-width: 0;
}
.hub6-tec-som .studio-copy .scene-player {
  --play-bg: var(--hub6-brand-strong);
  --play-ink: var(--hub6-ink);
  --wave-played: var(--hub6-brand-strong);
  --wave-idle: var(--hub6-text-muted);
  --ring-idle: var(--hub6-border);
  --player-text: var(--hub6-text);
  --player-muted: var(--hub6-text-secondary);
  margin-top: 0;
}
.hub6-tec-engine {
  grid-area: motor;
}
.hub6-tec-engine img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 10px 15px color-mix(in srgb, var(--hub6-bg) 40%, transparent));
}
@media (max-width: 700px) {
  .hub6-tec-som {
    display: block;
  }
  .hub6-tec-som-tit {
    margin-bottom: 14px;
  }
  .hub6-tec-engine {
    width: 170px;
    margin: 0 0 4px 8px;
  }
}
.hub6-tec-texto {
  max-width: 760px;
  font-size: 16px;
  line-height: 1.75;
  color: var(--hub6-text-secondary);
}
.hub6-tec-texto p + p {
  margin-top: 1em;
}
.hub6-tec-texto :is(strong, b, a) {
  color: var(--hub6-text);
}
.hub6-tec-texto a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Cards no estilo das notas da home: dados técnicos e informações. Sem a
 * imagem do motor, cada card tem a largura de um card de notas (1 de 3). */
.hub6-tec-ficha,
.hub6-info-card {
  min-width: 0;
  padding: 30px 34px;
  border: 1px solid var(--hub6-border);
  border-radius: 18px;
  background: var(--hub6-surface);
  color: var(--hub6-text);
}
.hub6-tec-ficha:not(.has-motor) {
  width: calc((100% - 40px) / 3);
}
.hub6-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

/* Com a imagem do motor: ela inteira (sem corte nem fundo) ao lado dos dados. */
.hub6-tec-ficha.has-motor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: 32px;
  align-items: center;
}
.hub6-tec-motor {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}
.hub6-tec-motor img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 380px;
  object-fit: contain;
}

.hub6-info-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 23px;
}
.hub6-info-top .eyebrow {
  font-size: 9px;
  letter-spacing: .07em;
}
.hub6-info-tag {
  padding: 5px 9px;
  border: 1px solid color-mix(in srgb, var(--hub6-text-muted) 37.6%, transparent);
  border-radius: 20px;
  font: 10px/1.4 var(--body);
  white-space: nowrap;
}
.hub6-info-card h3 {
  margin: 0;
  font-size: 24px;
  letter-spacing: -.025em;
}
.hub6-info-txt {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.65;
  color: var(--hub6-text-secondary);
}
.hub6-info-txt p + p {
  margin-top: .8em;
}
.hub6-info-card .hub6-dl {
  margin-top: 14px;
}

/* Linhas rótulo / valor */
.hub6-dl {
  display: grid;
  margin: 12px 0 0;
}
.hub6-dl div {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 13px 0;
  border-bottom: 1px solid var(--hub6-border);
  font-size: 14px;
}
.hub6-dl div:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.hub6-dl dt {
  font: 11px/1.6 var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--hub6-text-secondary);
}
.hub6-dl dd {
  margin: 0;
  font-weight: 650;
  color: var(--hub6-text);
  text-align: right;
}

@media (max-width: 1099px) {
  .hub6-tec-ficha:not(.has-motor) {
    width: calc((100% - 20px) / 2);
  }
  .hub6-info {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 860px) {
  .hub6-tec-ficha.has-motor {
    grid-template-columns: minmax(0, 1fr);
  }
  .hub6-tec-motor img {
    max-height: 280px;
  }
}
@media (max-width: 700px) {
  .hub6-tec-ficha:not(.has-motor) {
    width: auto;
  }
  .hub6-info {
    grid-template-columns: minmax(0, 1fr);
    gap: 15px;
  }
  .hub6-tec-ficha,
  .hub6-info-card {
    padding: 23px 19px;
    border-radius: 14px;
  }
  .hub6-info-card h3 {
    font-size: 21px;
  }
}
@media (max-width: 600px) {
  .hub6-x {
    padding-top: 32px;
  }
  .hub6-x--texto {
    padding-top: 48px;
  }
  .info + .hub6-x--video {
    padding-top: 20px;
  }
  .hub6-x.is-ultima {
    padding-bottom: 48px;
  }
  .hub6-pv-box {
    border-radius: 14px;
  }
  .hub6-tec-texto {
    font-size: 15px;
  }
}
