.home-hero { position: relative; margin-top: var(--sp-2); min-height: 560px; border-radius: var(--r-xl); overflow: hidden; display: flex; align-items: end; color: #fff;
  background: #121212 url('https://images.unsplash.com/photo-1519681393784-d120267933ba?auto=format&fit=crop&w=2000&q=80') center/cover; background-image: url('https://images.unsplash.com/photo-1519681393784-d120267933ba?auto=format&fit=crop&w=2000&q=80'), linear-gradient(160deg, #4b5f88, #18233a); }
.home-hero::before { content: ""; position: absolute; inset: 0; background: var(--overlay-hero); }
.home-hero .inner { position: relative; padding: var(--sp-7) var(--sp-5); width: 100%; max-width: 760px; display: flex; flex-direction: column; gap: var(--sp-4); }
@media (min-width: 900px) { .home-hero .inner { padding: var(--sp-8); } }
.home-hero .eyebrow { color: #e7e7e2; }
.home-hero .lead { color: #ededea; margin: 0; }
.home-hero .search-field { width: 100%; }
.home-hero .search-field .input { color: var(--c-ink); background: #fff; }
.home-hero .trending { font-size: var(--fs-14); color: #e7e7e2; margin: 0; }
.home-hero .trending a { color: #fff; font-weight: var(--fw-semibold); }
.home-hero .credit { position: absolute; right: var(--sp-4); bottom: var(--sp-4); font-size: var(--fs-12); color: #e7e7e2; }
.dchallenge { display: grid; background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-xl); overflow: hidden; }
@media (min-width: 900px) { .dchallenge { grid-template-columns: 1.1fr 1fr; } }
.dchallenge .ph { min-height: 280px; background: var(--c-surface-2) center/cover; }
.dchallenge .body { padding: var(--sp-6); display: flex; flex-direction: column; gap: var(--sp-4); }
.dchallenge .tag { display: inline-block; align-self: flex-start; }
.dchallenge ol { margin: 0; padding-left: 20px; display: grid; gap: 4px; color: var(--c-ink-2); }
.interp { position: relative; aspect-ratio: 4 / 5; border: 0; padding: 0; border-radius: var(--r-lg); overflow: hidden; background: var(--c-surface-2) center/cover; cursor: zoom-in; text-align: left; }
.split2 { display: grid; gap: var(--sp-4); }
@media (min-width: 900px) { .split2 { grid-template-columns: 1fr 1fr; } }
.feature { padding: var(--sp-6); display: flex; flex-direction: column; gap: var(--sp-3); align-items: start; background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-lg); }
.feature .h2 { font-family: var(--font-display); font-weight: 400; font-size: var(--fs-40); }
.event-list { display: grid; gap: var(--sp-3); width: 100%; }
.event { display: grid; grid-template-columns: 56px 1fr; gap: var(--sp-3); align-items: center; padding: var(--sp-3); border: 1px solid var(--c-line); border-radius: var(--r-md); text-decoration: none; }
.event:hover { border-color: var(--c-ink); }
.event time { text-align: center; line-height: 1.1; font-weight: var(--fw-bold); font-size: var(--fs-20); }
.event time small { display: block; font-size: var(--fs-12); color: var(--c-muted); font-weight: var(--fw-semibold); text-transform: uppercase; }
.destaques { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: var(--sp-4); }
.destaque-card { display: grid; gap: var(--sp-2); text-align: left; border: 0; padding: 0; background: none; cursor: zoom-in; color: inherit; font: inherit; }
.destaque-card .ph { aspect-ratio: 4 / 3; border-radius: var(--r-lg); background-size: cover; background-position: center; position: relative; }
.destaque-card .ph .tag { position: absolute; top: var(--sp-3); left: var(--sp-3); }
