/* consultorio · O consultório, no Água Verde */
.es-secao { background: var(--hd-papel); padding: var(--wf-secao) var(--wf-margem); overflow: hidden; }
.es-dentro { max-width: var(--wf-largura); margin: 0 auto; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(1rem, 2vw, 1.75rem); row-gap: clamp(2rem, 4vw, 3.5rem); align-items: start; }

.es-cabeca { grid-column: 1 / 7; grid-row: 1; align-self: end; padding-bottom: 1rem; }
.es-titulo { margin-top: 1.1rem; }
.es-texto { margin-top: 1.4rem; color: var(--hd-tinta-suave); max-width: 31em; }

.es-foto { margin: 0; position: relative; }
.es-foto img { display: block; width: 100%; object-fit: cover; border-radius: 28px; box-shadow: 0 34px 60px -44px rgba(90, 55, 30, .6); }
.es-foto figcaption { display: flex; align-items: baseline; gap: .6rem; margin-top: .8rem; font-size: var(--wf-mini); line-height: 1.45; color: var(--hd-tinta-suave); }
.es-foto figcaption i { font-family: var(--hd-serifa); font-size: 1.45rem; line-height: 1; color: var(--wf-laranja-texto); }

/* ela diante da treliça: a treliça desenhada, com a luz por trás, sai de trás da foto */
.es-ela { grid-column: 8 / 13; grid-row: 1 / 3; position: relative; isolation: isolate; padding: 0 0 0 clamp(1.5rem, 4vw, 3.5rem); margin-top: 2rem; }
.es-trelica { position: absolute; z-index: -1; left: 0; top: -2rem; width: 80%; height: 90%; border-radius: 999px 999px 28px 28px; }
.es-foto-ela img { aspect-ratio: 900 / 1410; border-radius: 999px 999px 28px 28px; }
.es-foto-ela figcaption { justify-content: flex-end; }

.es-predio { grid-column: 1 / 3; grid-row: 2; }
.es-predio img { aspect-ratio: 9 / 17; border-radius: 999px; }
.es-recepcao { grid-column: 3 / 6; grid-row: 2; margin-top: clamp(2rem, 6vw, 5rem); }
.es-recepcao img { aspect-ratio: 4 / 5; }
.es-opiniao { position: absolute; right: -2.2rem; top: 58%; margin: 0; padding: .9rem 1.3rem 1rem; border-radius: 999px; background: var(--hd-papel-claro); box-shadow: 0 20px 40px -24px rgba(90, 55, 30, .55); white-space: nowrap; }
.es-opiniao p { font-family: var(--hd-serifa); font-style: italic; font-size: 1.35rem; line-height: 1.1; }
.es-opiniao footer { font-size: var(--wf-mini); color: var(--hd-tinta-suave); margin-top: .2rem; }
.es-opiniao footer span { color: var(--hd-laranja); letter-spacing: .1em; font-size: .8rem; }
.es-logo { grid-column: 6 / 8; grid-row: 2; align-self: end; margin-right: -1.5rem; z-index: 2; }
.es-logo img { aspect-ratio: 1; border-radius: 50%; outline: 6px solid var(--hd-papel); }

.es-maca { grid-column: 6 / 9; grid-row: 3; margin-top: clamp(1.5rem, 5vw, 4.5rem); }
.es-maca img { aspect-ratio: 5 / 6; }
.es-livros { grid-column: 1 / 6; grid-row: 3; }
.es-livros img { aspect-ratio: 900 / 630; }
.es-info { grid-column: 9 / 13; grid-row: 3; align-self: center; padding-left: clamp(0rem, 2vw, 2rem); }
.es-sala { font-family: var(--hd-serifa); font-size: clamp(2.4rem, 1.4rem + 2.6vw, 4rem); line-height: .98; letter-spacing: -.015em; }
.es-sala span { display: block; font-style: italic; color: var(--wf-laranja-texto); }
.es-acesso-titulo { margin-top: 1.6rem; font-family: var(--hd-sem); font-size: var(--wf-mini); font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--hd-tinta-suave); }
.es-acesso { list-style: none; padding: 0; margin: .7rem 0 1.2rem; }
.es-acesso li { display: flex; align-items: center; gap: .7rem; padding: .5rem 0; border-bottom: 1px solid var(--hd-fio); }
.es-acesso li::before { content: ""; width: .7rem; height: .7rem; border-radius: 50%; flex: none; background: radial-gradient(circle at 35% 30%, #fff, var(--hd-pessego) 45%, var(--hd-ambar)); box-shadow: 0 2px 4px rgba(120, 70, 40, .3); }

.es-luz { animation: es-acende 7s ease-in-out infinite alternate; }
@keyframes es-acende { from { opacity: .55; } to { opacity: 1; } }
.es-foto img { transition: transform 1.2s var(--wf-curva); }

@media (max-width: 860px) {
  .es-dentro { grid-template-columns: repeat(6, minmax(0, 1fr)); row-gap: 1.8rem; }
  .es-cabeca { grid-column: 1 / -1; grid-row: 1; padding-bottom: 0; }
  .es-ela { grid-column: 1 / -1; grid-row: 2; margin-top: 1.6rem; padding-left: 1.3rem; }
  .es-foto-ela img { aspect-ratio: 900 / 1180; object-position: 50% 0; }
  .es-predio { grid-column: 1 / 3; grid-row: 3; }
  .es-recepcao { grid-column: 3 / 7; grid-row: 3; margin-top: 2.6rem; }
  .es-opiniao { right: -.5rem; top: auto; bottom: 6.2rem; padding: .7rem 1.1rem .8rem; }
  .es-opiniao p { font-size: 1.2rem; }
  .es-logo { grid-column: 1 / 3; grid-row: 4; margin: 0; align-self: center; }
  .es-livros { grid-column: 3 / 7; grid-row: 4; }
  .es-maca { grid-column: 1 / 4; grid-row: 5; margin-top: 0; }
  .es-maca img { aspect-ratio: 4 / 5; }
  .es-info { display: contents; }
  .es-sala { grid-column: 4 / 7; grid-row: 5; align-self: center; font-size: clamp(2.1rem, 10vw, 3rem); }
  .es-acesso-bloco { grid-column: 1 / -1; grid-row: 6; }
  .es-acesso { display: grid; grid-template-columns: 1fr 1fr; column-gap: 1.2rem; }
  .es-foto figcaption { flex-direction: column; gap: .2rem; }
  .es-foto-ela figcaption { align-items: flex-end; }
}
