/* Amanda Cavalcanti — estilos específicos do site (usa tokens.css + components.css) */

/* Hero */
.hero { padding-top: clamp(2.5rem, 6vw, 5rem); }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: stretch; }
.hero__copy { display: flex; flex-direction: column; justify-content: center; gap: var(--ac-space-5); padding-block: var(--ac-space-6); }
.hero__copy h1 { margin-top: var(--ac-space-2); }
.hero__actions { display: flex; align-items: center; gap: var(--ac-space-6); flex-wrap: wrap; margin-top: var(--ac-space-2); }
.hero__keywords { margin-top: var(--ac-space-6); }
.hero__portrait { margin: 0; color: var(--ac-ameixa); min-height: 420px; aspect-ratio: 4 / 5.6; }
.hero__portrait .ac-ph { position: absolute; inset: 0; }
.hero__portrait img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hero__portrait-label { display: grid; justify-items: center; gap: var(--ac-space-3); }
.hero__caption { position: absolute; right: var(--ac-space-7); bottom: var(--ac-space-7); text-align: left; color: var(--ac-ameixa); }
.hero__caption .ac-micro-list { color: inherit; }
@media (max-width: 860px) {
  .hero__grid { grid-template-columns: 1fr; }
  .hero__portrait { min-height: 360px; aspect-ratio: 4 / 4.6; }
}

/* Sobre (faixa) */
.about__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); }
.about__main { display: grid; gap: var(--ac-space-5); justify-items: start; }
.about__main .ac-rule-short { color: var(--ac-fg-on-band); }
.about__aside { border-left: var(--ac-hairline) solid var(--ac-line-on-band); padding-left: clamp(1.5rem, 4vw, 3rem); display: grid; gap: var(--ac-space-6); align-content: center; }
.about__quote { font-family: var(--ac-font-display); font-size: 1.25rem; line-height: 1.4; margin: 0; max-width: 20ch; }
.about__aside .ac-rule-short { color: var(--ac-fg-on-band); opacity: .7; }
@media (max-width: 860px) {
  .about__grid { grid-template-columns: 1fr; }
  .about__aside { border-left: 0; border-top: var(--ac-hairline) solid var(--ac-line-on-band); padding-left: 0; padding-top: var(--ac-space-6); }
}

/* Universo */
.ac-section-head--accent .ac-eyebrow { position: relative; padding-left: calc(var(--ac-rule-short) + var(--ac-space-3)); }
.ac-section-head--accent .ac-eyebrow::before { content: ""; position: absolute; left: 0; top: 50%; width: var(--ac-rule-short); height: 2px; background: var(--ac-accent); }
.universe__title { margin-bottom: var(--ac-space-7); }
.universe__grid { gap: var(--ac-space-6); }
@media (max-width: 860px) {
  .ac-card--flat { border-left: 0; padding-left: 0; }
}

/* CTA */
.cta__grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: var(--ac-space-7); align-items: end; }
.cta__grid .ac-rule-short { color: var(--ac-fg-on-cta); margin-bottom: var(--ac-space-5); }
.cta__grid h2 { margin-bottom: var(--ac-space-5); }
.cta__action { display: flex; justify-content: flex-end; }
@media (max-width: 860px) {
  .cta__grid { grid-template-columns: 1fr; }
  .cta__action { justify-content: flex-start; }
}

/* ===== v2: conteúdo real ===== */

/* Menu mobile */
.nav-burger { display: none; width: 38px; height: 38px; border: 1px solid var(--ac-line); border-radius: var(--ac-radius-pill); flex-direction: column; align-items: center; justify-content: center; gap: 5px; }
.nav-burger span { display: block; width: 16px; height: 1.5px; background: var(--ac-fg); transition: transform var(--ac-dur-base) var(--ac-ease); }
.nav-burger.is-open span:first-child { transform: translateY(3.25px) rotate(45deg); }
.nav-burger.is-open span:last-child { transform: translateY(-3.25px) rotate(-45deg); }
.nav-drawer { display: none; }
@media (max-width: 720px) {
  .nav-burger { display: flex; }
  .ac-nav__actions .ac-btn { display: none; }
  .nav-drawer { display: grid; gap: 0; max-height: 0; overflow: hidden; transition: max-height var(--ac-dur-slow) var(--ac-ease); border-top: 0 solid var(--ac-line); }
  .nav-drawer.is-open { max-height: 420px; border-top-width: 1px; }
  .nav-drawer a { padding: var(--ac-space-4) var(--ac-gutter); font-family: var(--ac-font-display); font-size: 1.5rem; color: var(--ac-fg); border-bottom: 1px solid var(--ac-line); }
}

/* Hero com foto real */
.hero__portrait img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; }
.hero__portrait::before, .hero__portrait::after, .hero__portrait .ac-frame-corner::before, .hero__portrait .ac-frame-corner::after { color: var(--ac-marfim); mix-blend-mode: normal; }
.hero__caption { color: var(--ac-marfim); text-shadow: 0 1px 12px rgba(0,0,0,.35); }
.hero__caption .ac-micro-list { color: inherit; }

/* Credenciais */
.creds { padding-block: 0 var(--ac-space-4); }
.creds__list { list-style: none; margin: 0; padding: var(--ac-space-4) 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--ac-space-3) var(--ac-space-6); font-size: var(--ac-fs-eyebrow); letter-spacing: var(--ac-ls-caps); text-transform: uppercase; color: var(--ac-fg-muted); }

/* Destaques */
.highlights { margin-top: var(--ac-space-8); }
.highlights__list { list-style: none; margin: var(--ac-space-5) 0 0; padding: 0; border-top: var(--ac-hairline) solid var(--ac-line); }
.highlights__list li { display: grid; grid-template-columns: 90px minmax(0,1fr) auto; gap: var(--ac-space-5); align-items: center; padding: var(--ac-space-4) 0; border-bottom: var(--ac-hairline) solid var(--ac-line); }
.highlights__year { font-size: var(--ac-fs-eyebrow); letter-spacing: var(--ac-ls-caps); color: var(--ac-fg-muted); }
.highlights__list h3 { margin-bottom: 2px; }
.highlights__list .ac-small { margin: 0; }
@media (max-width: 640px) { .highlights__list li { grid-template-columns: 1fr; gap: var(--ac-space-2); } }

/* Sobre: bio e meta */
.about__body { max-width: 56ch; display: grid; gap: var(--ac-space-3); font-size: var(--ac-fs-body); line-height: var(--ac-lh-relaxed); opacity: .9; }
.about__meta { margin: 0; display: grid; gap: var(--ac-space-4); }
.about__meta div { display: grid; gap: 4px; }
.about__meta dt { font-size: var(--ac-fs-eyebrow); letter-spacing: var(--ac-ls-eyebrow); text-transform: uppercase; opacity: .7; }
.about__meta dd { margin: 0; font-size: var(--ac-fs-small); line-height: 1.5; }

/* Trajetória */
.traj { display: grid; grid-template-columns: 1.15fr 1fr; gap: clamp(2rem, 6vw, 5rem); }
.traj__title { font-family: var(--ac-font-display); font-size: var(--ac-fs-display-md); line-height: 1.1; margin: 0 0 var(--ac-space-4); padding-bottom: var(--ac-space-3); border-bottom: var(--ac-hairline) solid var(--ac-line-strong); }
.traj__title--gap { margin-top: var(--ac-space-8); }
.traj__list { list-style: none; margin: 0; padding: 0; }
.traj__list li { display: grid; grid-template-columns: 70px 1fr; gap: var(--ac-space-4); padding: var(--ac-space-3) 0; border-bottom: var(--ac-hairline) solid var(--ac-line); font-size: var(--ac-fs-small); }
.traj__list li > span { font-size: var(--ac-fs-eyebrow); letter-spacing: var(--ac-ls-caps); color: var(--ac-fg-muted); padding-top: 3px; }
.traj__list strong { font-weight: var(--ac-fw-medium); color: var(--ac-fg); display: block; }
.traj__list em { font-style: normal; color: var(--ac-fg-muted); }
.traj__list a { color: var(--ac-accent); font-weight: var(--ac-fw-medium); margin-left: .5em; white-space: nowrap; }
.traj__list a:hover { text-decoration: underline; }
@media (max-width: 860px) { .traj { grid-template-columns: 1fr; } .traj__title--gap { margin-top: var(--ac-space-7); } }

/* Galeria */
.gallery-section { background: var(--ac-bg-muted); }
.gallery { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 200px; grid-auto-flow: dense; gap: var(--ac-space-3); }
.gallery__item { margin: 0; position: relative; overflow: hidden; cursor: zoom-in; background: var(--ac-bg-image-placeholder); }
.gallery__item--tall { grid-row: span 2; }
.gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--ac-dur-slow) var(--ac-ease), filter var(--ac-dur-slow) var(--ac-ease); }
.gallery__item:hover img { transform: scale(1.04); }
.gallery__item figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: var(--ac-space-5) var(--ac-space-4) var(--ac-space-3); font-size: var(--ac-fs-micro); letter-spacing: var(--ac-ls-caps); text-transform: uppercase; color: var(--ac-marfim); background: linear-gradient(to top, rgba(36,24,32,.75), transparent); opacity: 0; transition: opacity var(--ac-dur-base) var(--ac-ease); }
.gallery__item:hover figcaption { opacity: 1; }
@media (max-width: 860px) { .gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 160px; } }

.lightbox { position: fixed; inset: 0; z-index: var(--ac-z-overlay); background: rgba(36,24,32,.94); display: grid; place-items: center; padding: var(--ac-space-6); opacity: 0; pointer-events: none; transition: opacity var(--ac-dur-base) var(--ac-ease); }
.lightbox.is-open { opacity: 1; pointer-events: auto; }
.lightbox figure { margin: 0; max-width: min(1100px, 100%); max-height: 100%; display: grid; gap: var(--ac-space-3); justify-items: center; }
.lightbox img { max-height: 80vh; max-width: 100%; object-fit: contain; }
.lightbox figcaption { font-size: var(--ac-fs-eyebrow); letter-spacing: var(--ac-ls-caps); text-transform: uppercase; color: var(--ac-marfim); }
.lightbox__close { position: absolute; top: var(--ac-space-5); right: var(--ac-space-5); width: 44px; height: 44px; border: 1px solid rgba(247,243,237,.4); border-radius: var(--ac-radius-pill); color: var(--ac-marfim); font-size: 26px; line-height: 1; display: grid; place-items: center; }

/* CTA telefone */
.cta__action { flex-direction: column; align-items: flex-end; gap: var(--ac-space-4); }
.cta__phone { color: var(--ac-fg-on-cta); }
@media (max-width: 860px) { .cta__action { align-items: flex-start; } }

/* Rodapé links */
.ac-footer__links { display: flex; gap: var(--ac-space-6); }

/* ===== v3: multipágina ===== */
.ac-nav__links a[aria-current="page"]::after { width: 100%; }
.page-head { padding: clamp(2.5rem, 6vw, 5rem) 0 var(--ac-space-7); }
.page-head .ac-section-title-row { margin-top: var(--ac-space-4); margin-bottom: 0; }
.page-head .ac-lead { margin-top: var(--ac-space-5); }

.about-page__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.about-page__photo { margin: 0; aspect-ratio: 4 / 5; color: var(--ac-marfim); }
.about-page__photo img { width: 100%; height: 100%; object-fit: cover; }
.about-page__text { display: grid; gap: var(--ac-space-4); max-width: 58ch; line-height: var(--ac-lh-relaxed); }
.about-page__text .ac-lead { max-width: none; margin-bottom: var(--ac-space-2); }
.about-page__text .hero__actions { margin-top: var(--ac-space-4); }
@media (max-width: 860px) { .about-page__grid { grid-template-columns: 1fr; } .about-page__photo { max-width: 420px; } }

.about-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--ac-space-6); }
.about-facts .ac-eyebrow { margin-bottom: var(--ac-space-3); }
.about-facts__v { font-family: var(--ac-font-display); font-size: 1.25rem; line-height: 1.35; margin: 0; }

.traj__list--wide li { grid-template-columns: 90px 1fr; padding-block: var(--ac-space-4); }
.traj__list--wide strong { font-size: var(--ac-fs-body); }
.traj__list--on-band li { border-color: var(--ac-line-on-band); }
.traj__list--on-band strong { color: var(--ac-fg-on-band); }
.traj__list--on-band em, .traj__list--on-band li > span { color: var(--ac-fg-on-band); opacity: .7; }
.traj__list--on-band a { color: var(--ac-fg-on-band); text-decoration: underline; text-underline-offset: .2em; }

.ac-card__body .ac-eyebrow { margin-bottom: 2px; }
.ac-card__body .ac-link { margin-top: var(--ac-space-2); justify-self: start; }

/* ===== v4: universo + títulos sem traço ===== */
.pillar__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 6vw, 5rem); align-items: center; }
.pillar--flip .pillar__media { order: 2; }
.pillar__media { margin: 0; aspect-ratio: 4 / 5; color: var(--ac-marfim); }
.pillar__media img { width: 100%; height: 100%; object-fit: cover; }
.pillar__text { display: grid; gap: var(--ac-space-4); }
.pillar__text .ac-lead { max-width: 48ch; }
.pillar__topics { margin-top: var(--ac-space-2); }
.pillar + .pillar { padding-top: 0; }
@media (max-width: 860px) { .pillar__grid { grid-template-columns: 1fr; } .pillar--flip .pillar__media { order: 0; } .pillar__media { max-width: 420px; } }
.howto__t { font-family: var(--ac-font-display); font-size: 1.35rem; line-height: 1.3; margin: var(--ac-space-3) 0 var(--ac-space-2); }
.howto .ac-small { color: inherit; opacity: .7; }
.ac-card--flat .ac-card__body .ac-link { margin-top: var(--ac-space-2); }

/* ===== v5: legibilidade sobre foto clara ===== */
.hero__shade { position: absolute; inset: 0; pointer-events: none; z-index: 1;
  background: linear-gradient(to top, rgba(36,24,32,.72) 0%, rgba(36,24,32,.28) 34%, rgba(36,24,32,0) 58%),
              linear-gradient(to bottom, rgba(36,24,32,.30) 0%, rgba(36,24,32,0) 22%); }
.hero__caption { z-index: 2; }
