.hero-light {
  position: absolute;
  inset: 8% 2% auto auto;
  width: 46%;
  height: 64%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(245, 170, 37, .1), transparent 68%);
  filter: blur(24px);
  pointer-events: none;
}

/* Refinamento visual aprovado: a arte original permanece fiel e sem distorção. */
.icon-sprite {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.weather-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:1.25rem;align-items:stretch}.weather-card,.weather-radar{border:1px solid rgba(214,165,68,.22);border-radius:1.25rem;background:#1a1917;padding:1.25rem}.weather-card{display:flex;align-items:center;min-height:220px}.weather-main{display:flex;align-items:center;gap:1rem}.weather-main>div{display:grid;gap:.35rem}.weather-main span{color:#aaa}.weather-temp{font:800 clamp(3rem,7vw,5.5rem)/.9 'Barlow Condensed',sans-serif;color:#d6a544}.weather-stats{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem;color:#aaa;font-size:.86rem}.weather-stats span{display:grid;gap:.15rem}.weather-stats b{color:#f4f0e8}.radar-frame{overflow:hidden;border-radius:1rem;min-height:290px;background:#111}.radar-frame iframe{display:block;border:0;width:100%;height:290px}.weather-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:.8rem}.weather-source{display:block;color:#888;margin-top:.75rem}@media (max-width:760px){.weather-layout{grid-template-columns:1fr}.weather-card{min-height:170px}.radar-frame iframe{height:260px}}
.weather-forecast-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;margin-top:1.4rem;border-top:1px solid rgba(255,255,255,.08);padding-top:.9rem}.weather-day{display:grid;gap:.3rem;text-align:center;color:#aaa;font-size:.75rem}.weather-day strong{color:#f4f0e8;font-size:1.35rem}.weather-day span{color:#76c98a}.weather-day small{color:#9db8c7}@media (max-width:520px){.weather-forecast-grid{overflow-x:auto;grid-template-columns:repeat(5,78px)}}

[hidden] {
  display: none !important;
}

.poster-frame {
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 18px;
  background: #0d0c0b;
  box-shadow: 0 28px 64px rgba(0, 0, 0, .45);
  transform: none;
}

.poster-frame::after,
.poster-shine,
.orbit {
  display: none;
}

.poster-frame img {
  height: auto;
  aspect-ratio: 843 / 1264;
  object-fit: contain;
  object-position: center;
}

.poster-frame-transparent {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}

.poster-frame-transparent img {
  width: auto;
  max-width: 100%;
  max-height: min(74svh, 780px);
  margin-inline: auto;
  aspect-ratio: auto;
  filter: drop-shadow(0 28px 36px rgba(0, 0, 0, .28));
}

.button {
  min-height: 50px;
  border-radius: 8px;
  letter-spacing: -.01em;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.button:hover {
  transform: translateY(-2px);
}

.button-primary {
  box-shadow: 0 10px 24px rgba(245, 170, 37, .2);
}

.button-whatsapp {
  background: #25d366;
  color: #071c0d;
  box-shadow: 0 10px 24px rgba(37, 211, 102, .2);
}

.button-icon,
.floating-whatsapp svg,
.card-link-whatsapp svg {
  width: 1.25rem;
  height: 1.25rem;
  flex: 0 0 auto;
  fill: currentColor;
}

.card-link-whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
}

.sponsor-card {
  min-height: 0;
  border: 1px solid rgba(17, 16, 15, .1);
  border-radius: 14px;
  box-shadow: 0 14px 35px rgba(31, 24, 16, .1);
}

.sponsor-media {
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #e9e4db;
}

.sponsor-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .35s ease;
}

.sponsor-card:hover .sponsor-media img {
  transform: scale(1.025);
}

.post-card {
  border-radius: 14px;
}

.post-media {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #211c16;
}

.post-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.post-media-placeholder {
  display: grid;
  place-content: center;
  gap: 8px;
  text-align: center;
  background:
    linear-gradient(135deg, rgba(245, 170, 37, .12), transparent 55%),
    #161411;
  color: #fff;
}

.post-placeholder-brand {
  font-family: "Barlow Condensed", sans-serif;
  font-size: clamp(2.2rem, 5vw, 4rem);
  font-weight: 900;
  color: var(--gold);
}

.post-media-placeholder small {
  text-transform: uppercase;
  letter-spacing: .18em;
  color: #bcb4aa;
}

.floating-whatsapp {
  border: 2px solid rgba(255, 255, 255, .9);
  box-shadow: 0 14px 34px rgba(7, 28, 13, .32);
}

.floating-whatsapp svg {
  width: 30px;
  height: 30px;
}

@media (max-width: 720px) {
  .poster-frame {
    border-radius: 14px;
  }

  .poster-frame-transparent img {
    width: 100%;
    max-height: none;
  }

  .sponsor-grid,
  .post-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .sponsor-copy,
  .post-body {
    padding: 14px;
  }

  .sponsor-copy small {
    font-size: .75rem;
  }
}

@media (max-width: 430px) {
  .sponsor-grid,
  .post-grid {
    grid-template-columns: 1fr;
  }
}

/* V2: leitura mais calma, arte original em destaque e navegação direta. */
:root {
  --paper: #f2efe8;
  --ink: #24211d;
  --muted: #746e66;
  --radius: 16px;
}

.intro {
  background: #11110f;
}

.intro-grid {
  opacity: .35;
}

.intro-scan {
  opacity: .28;
}

.intro-inner {
  width: min(92vw, 520px);
}

.intro-logo {
  width: auto;
  max-width: 100%;
  max-height: 72svh;
  margin: auto;
  object-fit: contain;
  filter: drop-shadow(0 22px 34px rgba(0, 0, 0, .35));
  animation: brandBreathe 3.6s ease-in-out infinite;
}

.intro-progress {
  width: min(320px, 70vw);
  margin: 18px auto 0;
  background: rgba(255, 255, 255, .08);
}

.intro-progress i {
  background: #d6a544;
}

.brand {
  position: relative;
  display: block;
  width: 108px;
  height: 64px;
  overflow: visible;
  flex: 0 0 auto;
}

.brand-logo,
.footer-logo {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 96px;
  max-width: none;
  height: auto;
  transform: translate(-50%, -50%);
  animation: brandBreathe 4.4s ease-in-out infinite;
}

@keyframes brandBreathe {
  0%, 100% { opacity: .88; transform: translate(-50%, -50%) scale(.985); }
  50% { opacity: 1; transform: translate(-50%, -50%) scale(1.015); }
}

.intro-logo {
  transform: none;
}

@keyframes introLogoBreathe {
  0%, 100% { opacity: .88; transform: scale(.985); }
  50% { opacity: 1; transform: scale(1.015); }
}

.intro-logo {
  animation-name: introLogoBreathe;
}

.hero {
  min-height: calc(100svh - 78px);
  grid-template-columns: minmax(280px, .88fr) minmax(360px, 1.12fr);
  grid-template-areas: "art search";
  gap: clamp(34px, 6vw, 90px);
  padding: clamp(46px, 6vw, 86px) clamp(20px, 7vw, 110px);
  background: #151513;
}

.hero::before {
  opacity: .32;
}

.hero-light {
  width: 38%;
  height: 52%;
  background: radial-gradient(circle, rgba(214, 165, 68, .08), transparent 70%);
}

.hero-poster {
  grid-area: art;
}

.hero-copy {
  grid-area: search;
  max-width: 620px;
}

.poster-frame-transparent img {
  max-height: min(72svh, 720px);
  animation: heroBreathe 5.8s ease-in-out infinite;
}

@keyframes heroBreathe {
  0%, 100% { opacity: .94; transform: translateY(0) scale(.992); }
  50% { opacity: 1; transform: translateY(-5px) scale(1.008); }
}

.search-title {
  margin: 0 0 8px;
  color: #fff;
  font-family: "Barlow Condensed", sans-serif;
  font-size: clamp(2.1rem, 4vw, 3.6rem);
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: -.02em;
}

.lead {
  margin: 0;
  max-width: 500px;
  color: #bcb7af;
  font-size: 1rem;
}

.search-card {
  margin-top: 22px;
  grid-template-columns: 1fr;
  gap: 12px;
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 16px;
  background: #f7f5f0;
  box-shadow: 0 22px 52px rgba(0, 0, 0, .24);
}

.search-card label {
  padding: 0;
}

.search-card input {
  min-height: 44px;
  background: transparent;
}

.button {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 44px;
  padding: 10px 16px;
  border-radius: 8px;
  font-size: .9rem;
  font-weight: 700;
  box-shadow: none;
}

.button::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: 9px;
  background: linear-gradient(115deg, transparent 22%, rgba(255,255,255,.5) 48%, transparent 72%);
  transform: translateX(-125%);
  transition: transform .65s cubic-bezier(.22, 1, .36, 1);
}

.button:hover::before,
.button:focus-visible::before {
  transform: translateX(125%);
}

.button-primary {
  background: #1d1c19;
  color: #fff;
  border: 1px solid #39362f;
  box-shadow: none;
}

.button-primary .button-icon {
  color: #d6a544;
}

.button-outline {
  border-color: rgba(255, 255, 255, .3);
  color: inherit;
}

.button-whatsapp {
  min-height: 44px;
  background: #20bd5a;
  box-shadow: none;
}

.admin-link {
  width: 42px;
  height: 42px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid rgba(214, 165, 68, .3);
  border-radius: 50%;
  color: #d6a544;
  transition: color .2s ease, border-color .2s ease, background-color .2s ease;
}

.admin-link:hover,
.admin-link:focus-visible {
  color: #fff;
  border-color: rgba(214, 165, 68, .65);
  background: rgba(214, 165, 68, .08);
}

.admin-link svg {
  width: 20px;
  height: 20px;
}

.section-heading h2,
.radar-copy h2,
.final-cta h2 {
  font-size: clamp(2.3rem, 4.6vw, 4.7rem);
  line-height: .92;
  letter-spacing: -.025em;
}

.section-heading h2 em,
.radar-copy h2 em,
.final-cta h2 em {
  text-shadow: none;
}

.service-card {
  min-height: 220px;
  padding: 22px;
  border-color: #ded8ce;
  border-radius: 14px;
}

.service-card.featured {
  background: #eee6d5;
  border-color: #d8c49a;
}

.service-icon {
  width: 58px;
  height: 58px;
  font-size: 1.65rem;
}

.service-card h3 {
  margin: 18px 0 8px;
  font-size: 1.45rem;
}

.service-card p {
  font-size: .9rem;
}

.sponsor-card {
  background: #161513;
}

.sponsor-media {
  padding: 12px;
  background: #ece8df;
}

.sponsor-media img {
  object-fit: contain;
  background: #ece8df;
}

.sponsor-card:hover .sponsor-media img {
  transform: scale(1.012);
}

.coverage-visual {
  position: relative;
  min-height: 390px;
}

.coverage-map {
  width: 100%;
  min-height: 390px;
  border: 0;
  border-radius: 18px;
  filter: saturate(.74) contrast(.92);
  box-shadow: 0 20px 44px rgba(42, 30, 15, .15);
}

.radar-compact {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: 126px;
  aspect-ratio: 1;
  box-shadow: 0 12px 28px rgba(0,0,0,.32);
}

.radar-compact strong {
  bottom: 12%;
  font-size: .58rem;
  letter-spacing: .08em;
}

.radar-dot,
.radar small {
  display: none;
}

.post-media-placeholder {
  background: #1b1a18;
}

.post-placeholder-brand {
  color: #d6a544;
}

.final-cta {
  background: #151513;
}

.final-cta p {
  color: #bbb6ae;
}

footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding-block: 42px;
  text-align: center;
}

.footer-brand {
  width: 190px;
  height: 148px;
}

.footer-logo {
  width: 180px;
}

footer p {
  max-width: 520px;
  font-size: .92rem;
  line-height: 1.55;
}

footer small {
  display: none;
}

@media (max-width: 1000px) {
  .hero {
    grid-template-columns: minmax(250px, .8fr) minmax(320px, 1.2fr);
  }

  .admin-link {
    display: grid;
    flex: 0 0 42px;
  }
}

@media (max-width: 720px) {
  .brand {
    width: 92px;
    height: 58px;
  }

  .brand-logo {
    width: 82px;
  }

  .hero {
    grid-template-columns: 1fr;
    grid-template-areas: "art" "search";
    gap: 22px;
    padding-top: 38px;
  }

  .hero-poster {
    max-width: 330px;
  }

  .poster-frame-transparent img {
    max-height: 58svh;
  }

  .search-title {
    font-size: 2.35rem;
  }

  .section-heading h2,
  .radar-copy h2,
  .final-cta h2 {
    font-size: clamp(2.4rem, 12vw, 4rem);
  }

  footer {
    padding: 34px 20px 92px;
  }

  .footer-brand {
    width: 156px;
    height: 122px;
  }

  .footer-logo {
    width: 148px;
  }

  .sponsor-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .coverage-visual,
  .coverage-map {
    min-height: 320px;
  }
}

@media (max-width: 430px) {
  .sponsor-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .intro-logo,
  .brand-logo,
  .footer-logo,
  .poster-frame-transparent img {
    animation: none;
  }
}
/* Destaque Instagram e radar local da versão final */
.highlight-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1360px;margin:0 auto;padding:28px 5vw;background:#1c1916;color:#fff;border:1px solid rgba(245,170,37,.35);border-radius:18px}.highlight-strip h2{margin:.35rem 0 0;font-size:clamp(1.4rem,2.4vw,2.2rem)}.radar-card-local{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:32px;background:radial-gradient(circle at 25% 35%,rgba(245,170,37,.25),transparent 38%),#101827;color:#fff}.radar-card-local strong{font-size:1.5rem}.radar-card-local span{font-size:1.1rem}.radar-card-local a{color:#f5aa25;font-weight:700}.radar-card-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent,rgba(255,255,255,.08),transparent);animation:introScan 4s ease-in-out infinite}@media(max-width:700px){.highlight-strip{flex-direction:column;align-items:flex-start;padding:22px}.highlight-strip .button{width:100%;justify-content:center}}

/* Entrega final: identidade em destaque, previsão legível e mobile fluido. */
.brand{display:flex;align-items:center;gap:8px;width:auto;min-width:205px;text-decoration:none}.brand-highlight-label{margin-left:100px;color:#d6a544;font-family:"Barlow Condensed",sans-serif;font-size:.92rem;font-weight:900;letter-spacing:.11em;white-space:nowrap}.highlight-strip{margin-block:28px;background:#171613}.highlight-strip h2 em{color:#d6a544;font-style:normal;font-size:1.15em}.highlight-strip p:not(.eyebrow){margin:.4rem 0 0;color:#c8c2b8}.weather-layout{grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr)}.weather-card{display:block;min-height:0;padding:1.4rem;background:#f8fafc;color:#1f2937;border-color:#dbe4ee;box-shadow:0 18px 45px rgba(29,42,56,.1)}.weather-summary{display:grid;grid-template-columns:auto auto minmax(120px,1fr) auto;align-items:center;gap:14px}.weather-current-icon{font-size:2.9rem;line-height:1}.weather-summary>div:not(.weather-stats){display:grid;gap:3px}.weather-summary>div>span{color:#64748b}.weather-temp{color:#111827}.weather-stats{margin:0;color:#64748b}.weather-stats b{color:#111827}.weather-forecast-grid{grid-template-columns:repeat(5,minmax(105px,1fr));gap:8px;margin-top:1.2rem;padding-top:1rem;border-color:#dbe4ee}.weather-day{min-height:180px;align-content:start;justify-items:center;gap:6px;padding:12px 8px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;color:#475569}.weather-day.is-rainy{background:#eef7ff;border-color:#93c5fd}.weather-icon{font-size:2rem;line-height:1.1}.weather-condition{min-height:32px;color:#475569;line-height:1.2}.weather-range{display:flex;align-items:baseline;gap:6px}.weather-day strong{color:#111827}.weather-day span{color:#0f766e}.weather-rain{margin-top:auto;color:#0369a1;font-weight:800}.weather-radar{background:#f8fafc;border-color:#dbe4ee;box-shadow:0 18px 45px rgba(29,42,56,.1)}.radar-card-local{position:relative;min-height:250px;background:radial-gradient(circle at 80% 15%,rgba(255,255,255,.42),transparent 30%),linear-gradient(145deg,#0f6ea6,#45a6d8 58%,#9bd6ee);color:#fff}.radar-card-local a{color:#fff;text-decoration:underline;text-underline-offset:4px}.radar-card-glow{opacity:.35}.weather-actions .button-outline{border-color:#cad5df;color:#1f2937}.weather-source{color:#64748b}.post-media img{transition:transform .35s ease}.post-card:hover .post-media img{transform:scale(1.025)}

@media(max-width:900px){.weather-layout{grid-template-columns:1fr}.weather-summary{grid-template-columns:auto auto 1fr}.weather-stats{grid-column:1/-1}.weather-forecast-grid{overflow-x:auto;grid-template-columns:repeat(5,118px);scroll-snap-type:x mandatory;padding-bottom:8px}.weather-day{scroll-snap-align:start}.brand{min-width:170px}.brand-highlight-label{margin-left:84px;font-size:.78rem}}
@media(max-width:520px){.brand{min-width:145px}.brand-highlight-label{margin-left:76px;font-size:.7rem}.weather-card,.weather-radar{padding:1rem}.weather-summary{grid-template-columns:auto auto 1fr;gap:9px}.weather-current-icon{font-size:2.2rem}.weather-temp{font-size:2.8rem}.weather-day{min-height:172px}.highlight-strip{margin:18px 14px}}

.instagram-cta{display:flex;align-items:center;gap:12px;min-width:260px;padding:13px 18px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:linear-gradient(125deg,#833ab4,#fd1d1d 54%,#fcb045);color:#fff;text-decoration:none;box-shadow:0 12px 30px rgba(131,58,180,.28);transition:transform .2s ease,box-shadow .2s ease}.instagram-cta:hover,.instagram-cta:focus-visible{transform:translateY(-2px);box-shadow:0 16px 34px rgba(131,58,180,.38)}.instagram-cta svg{width:34px;height:34px;flex:0 0 auto}.instagram-cta span{display:grid;line-height:1.1}.instagram-cta small{font-size:.72rem;font-weight:700;opacity:.9}.instagram-cta strong{margin-top:4px;font-size:.95rem}@media(max-width:700px){.instagram-cta{width:100%;min-width:0;justify-content:center}}
