/* Página institucional. Paleta, tipografia, botões e foco vêm de delas-club.css. */
.exp-page { overflow-x: clip; }
.exp-page .dc-cabecalho { justify-content: center; padding-block: 24px; }
.exp-page .dc-marca img { width: 210px; }
.exp-hero { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(40px, 6vw, 80px); align-items: center; padding-block: 30px 100px; }
.exp-identificacao { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 24px; padding: 12px 20px; background: color-mix(in srgb, var(--dc-goiaba) 22%, var(--dc-creme)); border-radius: 28px 16px 24px 12px; font: 700 23px/1.15 var(--dc-fonte-titulo); transform: rotate(-2deg); }
.exp-identificacao img { width: 28px; height: 28px; flex: none; }
.exp-hero h1 { font-size: clamp(3.5rem, 6.4vw, 5.8rem); line-height: 1.03; margin: 0 0 28px; max-width: 12ch; }
.exp-hero-texto > p:not(.exp-identificacao) { max-width: 36ch; margin: 0 0 30px; font-size: 18px; }
.exp-link { display: block; width: fit-content; min-height: 44px; padding-top: 18px; font-size: 14px; }
.exp-foto { display: flex; flex-direction: column; margin: 0; min-width: 0; }
.exp-foto-quadro { position: relative; display: block; isolation: isolate; min-height: 0; }
.exp-foto-quadro::before { content: ''; position: absolute; inset: 20px -8px -8px -8px; background: color-mix(in srgb, var(--dc-goiaba) 55%, var(--dc-creme)); border-radius: 28px 110px 30px 85px; transform: rotate(-3deg); z-index: -1; pointer-events: none; }
.exp-foto img { width: 100%; height: 100%; object-fit: cover; border-radius: 90px 24px 70px 24px; }
.exp-foto figcaption { font-family: var(--dc-fonte-titulo); font-size: 23px; line-height: 1.3; text-align: center; padding: 28px 8px 0; flex: none; text-wrap: balance; }
.exp-foto-hero { padding: 10px 6px 0; }
.exp-foto-hero img { height: auto; aspect-ratio: 1 / 1; object-position: center; }
.exp-foto-hero .exp-foto-quadro::before { background: color-mix(in srgb, var(--dc-manteiga) 65%, var(--dc-creme)); inset: 24px -8px -8px -8px; border-radius: 100px 30px 90px 30px; transform: rotate(3deg); }
.exp-intro { max-width: 650px; margin: 0 auto 48px; text-align: center; }
.exp-intro h2 { font-size: clamp(2.5rem, 4vw, 3.7rem); margin: 0; }
.exp-intro p { margin: 20px auto 0; max-width: 46ch; }
.exp-simbolo { width: 62px; margin: 0 auto 24px; }
.exp-ocasioes { background: color-mix(in srgb, var(--dc-goiaba) 8%, var(--dc-creme)); padding-block: 76px 82px; }
.exp-formatos { display: grid; grid-template-columns: 1fr 1fr; gap: 46px 48px; max-width: 950px; margin-inline: auto; }
.exp-formatos article { min-width: 0; }
.exp-formatos h3 { font-size: 28px; margin: 26px 0 14px; }
.exp-formatos p { margin: 0; max-width: 38ch; }
.exp-momentos { padding-block: 90px 88px; }
.exp-mosaico { display: grid; grid-template-columns: 1.1fr .9fr 1fr; grid-template-rows: 240px 240px; gap: 30px; padding-inline: 8px; }
.exp-grupo { grid-row: 1 / 3; grid-column: 1; }
.exp-grupo .exp-foto-quadro, .exp-peca .exp-foto-quadro { flex: 1; height: 0; }
.exp-grupo img { height: 100%; border-radius: 90px 24px 70px 24px; object-position: center 62%; }
.exp-detalhe { grid-column: 2; }
.exp-detalhe .exp-foto-quadro { height: 100%; }
.exp-detalhe img { border-radius: 24px; }
.exp-detalhe .exp-foto-quadro::before { inset: 14px -7px -8px; border-radius: 24px 70px 24px 50px; }
.exp-peca { grid-column: 3; grid-row: 1 / 3; }
.exp-peca img { height: 100%; object-position: center 40%; }
.exp-conversa { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(44px, 8vw, 100px); align-items: center; padding-block: 10px 96px; }
.exp-mesa img { aspect-ratio: 4 / 5; height: auto; object-position: center 64%; }
.exp-mesa .exp-foto-quadro::before { inset: 20px -10px -8px; background: color-mix(in srgb, var(--dc-coral) 30%, var(--dc-creme)); }
.exp-conversa h2 { margin: 0 0 22px; max-width: 17ch; font-size: clamp(2.5rem, 4vw, 3.7rem); }
.exp-conversa > div > p { max-width: 43ch; }
.exp-passos { list-style: none; margin: 32px 0 0; padding: 0; }
.exp-passos li { position: relative; padding: 0 0 24px 58px; }
.exp-passo-numero { position: absolute; left: 0; top: 0; width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid var(--dc-borda); border-radius: 50%; font-family: var(--dc-fonte-titulo); }
.exp-passos h3 { font-size: 24px; margin: 0 0 8px; }
.exp-passos p { font-size: 16px; margin: 0; max-width: 38ch; }
.exp-convite { position: relative; isolation: isolate; overflow: hidden; background: var(--dc-manteiga); text-align: center; padding-block: 68px 76px; }
.exp-convite::before, .exp-convite::after { content: ''; position: absolute; width: 290px; height: 290px; border: 2px solid var(--dc-coral); border-radius: 50%; filter: blur(1.5px); opacity: .6; z-index: -1; pointer-events: none; }
.exp-convite::before { top: -150px; left: -90px; }
.exp-convite::after { bottom: -160px; right: -90px; }
.exp-convite h2 { font-size: clamp(2.6rem, 4.5vw, 4rem); margin: 0 auto 20px; max-width: 15ch; }
.exp-convite p { margin: 0 auto 28px; max-width: 43ch; font-size: 18px; }
.exp-rodape { padding-top: 56px; background: color-mix(in srgb, var(--dc-goiaba) 6%, var(--dc-creme)); }
.exp-rodape-grid { display: grid; grid-template-columns: 1.2fr .8fr 1fr; gap: 36px; padding-bottom: 40px; }
.exp-rodape h2 { font-size: 22px; margin: 0 0 12px; }
.exp-rodape p { font-size: 15px; }
.exp-rodape a:not(.dc-marca) { display: flex; width: fit-content; min-height: 44px; align-items: center; font-size: 15px; text-decoration: none; }
.exp-rodape a:hover { text-decoration: underline; }
.exp-rodape address { font-style: normal; overflow-wrap: anywhere; }
.exp-rodape-base { border-top: 1px solid var(--dc-borda); display: flex; justify-content: space-between; gap: 20px; padding-block: 18px; }
.exp-rodape-base p, .exp-rodape-base a { font-size: 13px; margin: 0; }

.exp-inspiracoes-nota { margin: -20px auto 38px; text-align: center; font-size: 14px; }
.exp-inspiracao .exp-foto-quadro { height: auto; }
.exp-inspiracao img { height: auto; aspect-ratio: 4 / 3; border-radius: 55px 22px 50px 22px; }
.exp-inspiracao .exp-foto-quadro::before { background: color-mix(in srgb, var(--dc-goiaba) 32%, var(--dc-creme)); inset: 16px -6px -8px; border-radius: 22px 65px 22px 50px; }
.exp-projeto { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 7vw, 90px); align-items: center; padding-block: 80px; }
.exp-projeto h2 { margin: 0 0 24px; font-size: clamp(2.5rem, 4vw, 3.7rem); max-width: 17ch; }
.exp-projeto p { max-width: 40ch; margin: 0 0 22px; }
.exp-projeto-foto img { height: auto; aspect-ratio: 4 / 5; object-position: center 42%; }
.exp-projeto-foto .exp-foto-quadro::before { background: color-mix(in srgb, var(--dc-goiaba) 55%, var(--dc-creme)); }
@media (max-width: 1000px) { .exp-mosaico { grid-template-rows: 210px 210px; gap: 24px; } .exp-foto figcaption { font-size: 20px; } }
@media (max-width: 760px) {
  .exp-page .dc-container { width: calc(100% - 48px); }
  .exp-page .dc-cabecalho { flex-direction: column; gap: 8px; padding-block: 20px 10px; }
  .exp-page .dc-marca img { width: 185px; }
    .exp-hero { grid-template-columns: 1fr; padding-block: 22px 56px; gap: 34px; }
  .exp-hero h1 { font-size: clamp(40px, 10vw, 58px); max-width: 13ch; }
  .exp-hero-texto > p:not(.exp-identificacao) { font-size: 16px; }
  .exp-hero .dc-botao { width: 100%; }
  .exp-identificacao { margin-bottom: 22px; padding: 10px 16px; font-size: 20px; }
  .exp-identificacao img { width: 25px; height: 25px; }
  .exp-link { width: 100%; text-align: center; font-size: 13px; }
  .exp-foto-hero img { aspect-ratio: 4 / 3; border-radius: 70px 20px 55px 20px; }
  .exp-foto figcaption { font-size: 22px; padding-top: 26px; }
  .exp-ocasioes { padding-block: 50px 56px; }
  .exp-intro { margin-bottom: 34px; }
  .exp-intro h2, .exp-conversa h2 { font-size: 35px; }
  .exp-intro p { font-size: 16px; }
  .exp-formatos { grid-template-columns: 1fr; gap: 38px; }
  .exp-formatos h3 { font-size: 26px; }
  .exp-formatos p { font-size: 16px; }
  .exp-momentos { padding-block: 56px; }
  .exp-mosaico { grid-template-columns: 1fr 1fr; grid-template-rows: auto; gap: 26px 18px; }
  .exp-grupo { grid-column: 1 / 3; grid-row: auto; }
  .exp-grupo .exp-foto-quadro, .exp-peca .exp-foto-quadro { height: auto; flex: none; }
  .exp-grupo img { height: auto; aspect-ratio: 4 / 3; }
  .exp-detalhe { grid-column: auto; }
  .exp-detalhe .exp-foto-quadro { height: auto; }
  .exp-detalhe img { aspect-ratio: 3 / 4; height: auto; }
  .exp-peca { grid-column: 1 / 3; grid-row: auto; }
  .exp-peca img { height: auto; aspect-ratio: 4 / 5; }
  .exp-conversa { grid-template-columns: 1fr; gap: 36px; padding-block: 10px 56px; }
  .exp-mesa { max-width: 360px; width: 100%; margin-inline: auto; }
  .exp-passos li { padding-left: 50px; }
  .exp-convite { padding-block: 52px 56px; }
  .exp-convite p { font-size: 16px; }
  .exp-convite .dc-botao { width: 100%; }
  .exp-projeto { grid-template-columns: 1fr; gap: 36px; padding-block: 56px; }
  .exp-projeto h2 { font-size: 35px; }
  .exp-projeto-foto { width: min(350px, 100%); margin-inline: auto; }
  .exp-rodape-grid { grid-template-columns: 1fr; gap: 30px; }
  .exp-rodape-base { align-items: center; }
}
@media (prefers-reduced-motion: no-preference) {
  .exp-foto-hero { animation: exp-chegar .7s ease-out both; }
  @keyframes exp-chegar { from { opacity: .4; transform: translateY(12px); } to { opacity: 1; transform: none; } }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .exp-foto img { transition: transform .35s ease; }
  .exp-foto:hover img { transform: translateY(-4px); }
}
@media print { .exp-foto-hero { animation: none; } .exp-page .dc-botao, .exp-link { display: none; } }

/* Cada depoimento é um cartão independente; novos cartões usam a mesma grade. */
.exp-depoimentos { padding-block: 0 88px; }
.exp-depoimentos-lista { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 32px; }
.exp-depoimento-card { flex: 0 1 320px; width: 100%; min-width: 0; }
.exp-depoimento-player { border: 0; padding: 0; }
.exp-depoimento-player summary { position: relative; display: block; cursor: pointer; list-style: none; border-radius: 28px; overflow: hidden; background: var(--dc-amora); }
.exp-depoimento-player summary::-webkit-details-marker { display: none; }
.exp-depoimento-player summary img { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; object-fit: cover; }
.exp-depoimento-assistir { position: absolute; inset: auto 16px 20px; display: flex; justify-content: center; align-items: center; gap: 10px; min-height: 48px; padding: 12px; border-radius: 999px; background: var(--dc-amora); color: var(--dc-creme); font-weight: 700; }
.exp-depoimento-player[open] summary { min-height: 48px; margin-bottom: 12px; }
.exp-depoimento-player[open] summary img { display: none; }
.exp-depoimento-player[open] .exp-depoimento-assistir { position: static; }
.exp-depoimento-player video { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; border-radius: 28px; background: var(--dc-amora); }
.exp-depoimento-link { display: flex; align-items: center; justify-content: center; min-height: 44px; margin-top: 8px; font-size: 14px; text-align: center; }
@media (max-width: 760px) { .exp-depoimentos { padding-bottom: 56px; } .exp-depoimentos .exp-intro h2 { font-size: 35px; } }

.exp-depoimento-player[open] summary { display: none; }
.exp-depoimento-erro { font-size: 14px; margin: 12px 0; }
