/* Página do case Oikos · Andrade Lab */
.page-hero {
  max-width: var(--max); margin: 0 auto; padding: 132px var(--pad) 0;
  display: flex; flex-direction: column; align-items: center; text-align: center;
}
.back-link {
  display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-bottom: 18px;
  font-family: var(--f-mono); font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted);
  transition: color .4s var(--ease);
}
.back-link span { transition: transform .5s var(--ease); }
.back-link:hover { color: var(--ink); }
.back-link:hover span { transform: translateX(-4px); }
.page-hero .hero-title { font-size: clamp(42px, 7vw, 110px); }
.page-hero .hero-actions { align-items: center; gap: 12px 16px; }
.hero-owner { text-align: left; font-family: var(--f-mono); font-size: 11px; line-height: 1.5; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }

.shot { width: 100%; margin: clamp(48px, 6vw, 80px) auto 0; max-width: 1100px; }
.shot-img { display: block; overflow: hidden; border-radius: 18px; border: 1px solid var(--line); background: var(--bg-2, #ede8e1); }
.shot-img img { width: 100%; display: block; transition: transform 1.2s var(--ease); }
.shot-img:hover img { transform: scale(1.01); }
.shot figcaption { margin-top: 14px; font-family: var(--f-mono); font-size: 12px; color: var(--muted); text-align: center; }
.shot figcaption span { color: var(--ink); }

.duo { max-width: var(--max); margin: 0 auto; padding: 0 var(--pad); display: grid; grid-template-columns: 1.55fr .75fr; gap: clamp(18px, 3vw, 36px); align-items: start; }
.duo .shot { margin-top: 0; }
.duo .shot--mob { max-width: 340px; justify-self: center; }
.duo .shot--mob .shot-img { border-radius: 26px; }

.facts { max-width: var(--max); margin: 0 auto; padding: 0 var(--pad); display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.fact { padding: 22px; }
.fact h3 { margin: 10px 0 6px; font-size: 17px; letter-spacing: -.02em; }
.fact p { margin: 0; color: var(--muted); font-size: 14.5px; line-height: 1.55; }
.fact .num { font-family: var(--f-mono); font-size: 11px; letter-spacing: .08em; color: var(--muted); }

.note { max-width: 760px; margin: clamp(40px, 5vw, 64px) auto 0; padding: 0 var(--pad); text-align: center; color: var(--muted); font-size: 13.5px; line-height: 1.6; }

.section .section-head { max-width: var(--max); margin: 0 auto clamp(28px, 4vw, 44px); padding: 0 var(--pad); }

@media (max-width: 900px) {
  .facts { grid-template-columns: 1fr 1fr; }
  .duo { grid-template-columns: 1fr; }
  .duo .shot--mob { max-width: 300px; }
}
@media (max-width: 640px) {
  .page-hero { padding-top: 116px; }
  .facts { grid-template-columns: 1fr; }
}
