.brand-logo-horizontal {
  width: auto;
  height: 84px;
  max-width: min(360px, 42vw);
  object-fit: contain;
  object-position: left center;
  background: transparent;
  image-rendering: -webkit-optimize-contrast;
}

.public-media {
  position: relative;
  overflow: hidden;
  background: #eee7dc;
}

.public-media > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dynamic-content-card > .public-media {
  width: 100%;
  aspect-ratio: 4 / 3;
}

.dynamic-intro figure > .public-media {
  width: 100%;
  aspect-ratio: 4 / 5;
  border-radius: 45% 45% 18px 18px;
}

/* V7: o texto de abertura pertence ao mesmo bloco do título. A imagem recebe
   enquadramento proporcional, sem deformar o arquivo original. */
.dynamic-intro {
  align-items: center;
}

.dynamic-intro:not(:has(figure)) {
  grid-template-columns: minmax(0, 780px);
}

.dynamic-intro-heading {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.dynamic-intro .ficha-summary {
  max-width: 680px;
  margin: 28px 0 0;
  color: #5f5358;
  font-family: Georgia, serif;
  font-size: clamp(1.08rem, 1.8vw, 1.3rem);
  line-height: 1.75;
}

.dynamic-intro figure {
  grid-row: 1;
}

.dynamic-intro figure > .public-media > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.search-result-card > .public-media,
.search-result-card > img,
.search-result-placeholder {
  width: 100%;
  height: 100%;
  min-height: 190px;
}

.recent-content-card > .public-media,
.recent-content-card > img,
.recent-card-placeholder {
  width: 100%;
  height: 145px;
}

.public-media[class*="chakra-marker-"] > img {
  object-fit: contain !important;
}

.chakra-location-marker {
  position: absolute;
  z-index: 2;
  top: 52.7%;
  left: 50%;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #d20d16;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 9px 5px #dc161ce6, 0 0 26px 18px #d3151b8c, 0 0 60px 42px #b0091247;
}

.chakra-marker-sacro .chakra-location-marker {
  top: 44.5%;
  background: #ef7617;
  box-shadow: 0 0 9px 5px #ef7617e6, 0 0 26px 18px #e266118c, 0 0 60px 42px #d0570a47;
}

.chakra-marker-plexo-solar .chakra-location-marker {
  top: 38.5%;
  left: 45%;
  background: #e0b51d;
  box-shadow: 0 0 9px 5px #e0b51de6, 0 0 26px 18px #d7a3128c, 0 0 60px 42px #c28b0847;
}

.chakra-marker-cardiaco .chakra-location-marker {
  top: 31%;
  background: #4f8a61;
  box-shadow: 0 0 9px 5px #4f8a61e6, 0 0 26px 18px #467e578c, 0 0 60px 42px #37694647;
}

.chakra-marker-laringeo .chakra-location-marker {
  top: 21.5%;
  background: #4f91b8;
  box-shadow: 0 0 9px 5px #4f91b8e6, 0 0 26px 18px #4282a88c, 0 0 60px 42px #2f6b9047;
}

.chakra-marker-frontal .chakra-location-marker {
  top: 10.6%;
  background: #3f3f91;
  box-shadow: 0 0 9px 5px #3f3f91e6, 0 0 26px 18px #3a3a898c, 0 0 60px 42px #33337a47;
}

.chakra-marker-coronario .chakra-location-marker {
  top: 5.8%;
  background: #7650a7;
  box-shadow: 0 0 9px 5px #7650a7e6, 0 0 26px 18px #6c479d8c, 0 0 60px 42px #5b388b47;
}

/* Nas capas, o manequim aparece menor. O marcador acompanha essa escala sem
   alterar a marcação maior usada dentro das fichas individuais. */
.chakra-marker-raiz { --cover-marker: #d20d16; }
.chakra-marker-sacro { --cover-marker: #ef7617; }
.chakra-marker-plexo-solar { --cover-marker: #e0b51d; }
.chakra-marker-cardiaco { --cover-marker: #4f8a61; }
.chakra-marker-laringeo { --cover-marker: #4f91b8; }
.chakra-marker-frontal { --cover-marker: #3f3f91; }
.chakra-marker-coronario { --cover-marker: #7650a7; }

:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-location-marker {
  width: 6px !important;
  height: 6px !important;
  background: var(--cover-marker);
  box-shadow:
    0 0 3px 1px color-mix(in srgb, var(--cover-marker) 88%, transparent),
    0 0 7px 4px color-mix(in srgb, var(--cover-marker) 42%, transparent),
    0 0 14px 8px color-mix(in srgb, var(--cover-marker) 16%, transparent) !important;
}

/* Coordenadas exclusivas das capas. Mantêm o ponto centralizado no
   manequim reduzido, sem alterar as marcações das páginas internas. */
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-raiz .chakra-location-marker { top: 59% !important; left: 50% !important; }
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-sacro .chakra-location-marker { top: 51% !important; left: 50% !important; }
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-plexo-solar .chakra-location-marker { top: 45% !important; left: 50% !important; }
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-cardiaco .chakra-location-marker { top: 36% !important; left: 50% !important; }
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-laringeo .chakra-location-marker { top: 27% !important; left: 50% !important; }
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-frontal .chakra-location-marker { top: 19% !important; left: 50% !important; }
:is(.dynamic-content-card, .recent-content-card, .search-result-card) .chakra-marker-coronario .chakra-location-marker { top: 14% !important; left: 50% !important; }

.public-media > img[src$="chakras-fluxo-cover.svg"] {
  object-fit: cover !important;
}

/* As novas capas já possuem as marcações incorporadas. Como são imagens
   verticais, devem aparecer inteiras dentro do quadro horizontal do cartão. */
.public-media > img[src*="capa-chakra-"] ,
.public-media > img[src$="capa-chakras-fluxo-de-energia.png"] {
  object-fit: contain !important;
  object-position: center center !important;
}

/* Correspondências das fichas: o CSS original usa 10px, pequeno demais para
   leitura confortável. O aumento vale para velas e demais conteúdos. */
.dynamic-ficha-grid aside dt {
  font-size: 12px;
  line-height: 1.45;
}

.dynamic-ficha-grid aside dd {
  font-size: 13px;
  line-height: 1.45;
}

@media (max-width: 620px) {
  .brand-logo-horizontal {
    width: auto;
    height: 70px;
    max-width: min(230px, 64vw);
  }

  .search-result-card > .public-media,
  .search-result-card > img,
  .search-result-placeholder {
    min-height: 175px;
  }

  .dynamic-intro .ficha-summary {
    margin-top: 20px;
  }

  .dynamic-intro figure > .public-media {
    aspect-ratio: 4 / 3;
    border-radius: 28% 28% 18px 18px;
  }
}

/* Ajustes V4: leitura, logo e Fluxo de Energia. */
.brand-logo-horizontal {
  height: 84px;
  width: auto;
  max-width: min(390px, 46vw);
  image-rendering: auto;
}

.dynamic-ficha-grid aside {
  min-width: 0;
  padding: 30px;
}

.dynamic-ficha-grid aside dl > div {
  display: grid;
  grid-template-columns: minmax(115px, .7fr) minmax(0, 1.3fr);
  align-items: start;
  gap: 18px;
  padding: 13px 0;
}

.dynamic-ficha-grid aside dt {
  font-size: 14px;
  line-height: 1.5;
}

.dynamic-ficha-grid aside dd {
  text-align: left;
  overflow-wrap: anywhere;
  font-size: 15px;
  line-height: 1.55;
}

.chakra-flow-bodies {
  aspect-ratio: 1 / 1;
  background: #f3eee7;
  isolation: isolate;
}

.chakra-flow-bodies > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.chakra-flow-bodies .flow-axis b {
  background: rgba(248, 246, 241, .88);
  width: auto;
  height: auto;
}

@media (max-width: 760px) {
  .dynamic-ficha-grid aside dl > div { grid-template-columns: 1fr; gap: 5px; }
  .brand-logo-horizontal { height: 70px; max-width: min(260px, 68vw); }
}

/* V8: hierarquia editorial do topo e leitura das correspondências. */
.ficha-intro > .dynamic-intro-heading {
  align-items: flex-start;
  justify-content: center;
  gap: 0;
}

.dynamic-intro-heading > span {
  width: 100%;
}

.dynamic-intro-heading .section-kicker,
.dynamic-intro-heading h1,
.dynamic-intro-heading .ficha-summary {
  margin-left: 0;
  text-align: left;
}

.dynamic-intro-heading h1 {
  margin-top: 7px;
  margin-bottom: 0;
}

.dynamic-intro .ficha-summary {
  max-width: 590px;
  margin-top: 18px;
  font-size: clamp(1.02rem, 1.45vw, 1.18rem);
  line-height: 1.7;
}

.dynamic-ficha-grid aside dl > div {
  grid-template-columns: minmax(120px, .8fr) minmax(0, 1.35fr);
  gap: 22px;
  padding: 16px 0;
  border-bottom-color: rgba(86, 55, 58, .13);
}

.dynamic-ficha-grid aside dt {
  color: #7b263d;
  font-family: Lato, Arial, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.dynamic-ficha-grid aside dd {
  color: #342a2e;
  font-family: Georgia, serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.55;
}

@media (max-width: 760px) {
  .ficha-intro > .dynamic-intro-heading { align-items: flex-start; }
  .dynamic-intro .ficha-summary { margin-top: 15px; }
}
