/* BCK — direção única: "Brasão de Ouro"
   Paleta puxada da logo: preto abismo + ouro do brasão + prata do escudo.
   Display Cinzel (imperial, combina com escudo/louro) + Inter no corpo.
   Hero: vídeo fullscreen de fundo. Avatar: logo grande sem moldura, com shine.
   Botões: ouro sólido no destaque, ghost escuro com filete ouro nos demais.
   Assinatura: marquee + divisória ❧ + grain dourado sutil. */

:root{
  --bg:#070705;
  --gold:#f0be2e;
  --gold-hi:#ffd970;
  --gold-deep:#9a7410;
  --silver:#c9cdd3;
  --ink:#f5f1e6;
  --muted:#a8a294;
  --card:rgba(12,11,7,.72);
  --line:rgba(240,190,46,.38);
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--bg);
  color:var(--ink);
  min-height:100vh;
  min-height:100dvh;
  overflow-x:hidden;
}

/* ---- fundo vídeo ---- */
.bg-video{position:fixed;inset:0;z-index:-3;overflow:hidden;background:var(--bg)}
.bg-video video{width:100%;height:100%;object-fit:cover;filter:saturate(1.05)}
.bg-overlay{
  position:absolute;inset:0;
  background:
    radial-gradient(120% 60% at 50% 0%, rgba(240,190,46,.14), transparent 55%),
    linear-gradient(180deg, rgba(7,7,5,.82) 0%, rgba(7,7,5,.68) 40%, rgba(7,7,5,.88) 100%);
}
.bg-vignette{position:absolute;inset:0;box-shadow:inset 0 0 140px 40px rgba(0,0,0,.75)}
body::after{ /* grain */
  content:"";position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.07;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");
}

/* ---- coluna ---- */
.wrap{max-width:560px;margin:0 auto;padding:72px 20px 40px;display:flex;flex-direction:column;gap:18px}

/* ---- logo grande, sem margens/bordas, com brilho ---- */
.hero{text-align:center}
.logo-shine{
  position:relative;display:inline-block;width:min(64vw,250px);
  filter:drop-shadow(0 0 22px rgba(240,190,46,.45)) drop-shadow(0 10px 30px rgba(0,0,0,.6));
  animation:levitate 4.5s ease-in-out infinite;
}
.logo-shine img{display:block;width:100%;height:auto;border:0;outline:0}
.logo-shine .shine{
  position:absolute;inset:-10%;overflow:hidden;pointer-events:none;
  -webkit-mask-image:url("logo.webp");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;
  mask-image:url("logo.webp");mask-size:contain;mask-repeat:no-repeat;mask-position:center;
}
.logo-shine .shine::before{
  content:"";position:absolute;top:-20%;bottom:-20%;width:38%;left:-60%;
  background:linear-gradient(105deg,transparent,rgba(255,240,200,.0) 20%,rgba(255,246,214,.85) 50%,rgba(255,240,200,0) 80%,transparent);
  transform:skewX(-18deg);animation:sweep 3.4s ease-in-out infinite;
}
@keyframes sweep{0%{left:-60%}55%,100%{left:130%}}
@keyframes levitate{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

.hero h1{
  font-family:'Cinzel',serif;font-weight:800;letter-spacing:.14em;
  font-size:clamp(1.35rem,5.4vw,1.7rem);margin-top:14px;
  background:linear-gradient(180deg,#fff6d8 0%,var(--gold-hi) 35%,var(--gold) 55%,var(--gold-deep) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.loc{margin-top:6px;color:var(--gold-hi);font-weight:600;font-size:.92rem;letter-spacing:.06em}
.loc i{margin-right:6px}
.bio{margin-top:8px;color:var(--ink);opacity:.92;font-size:.98rem}

/* ---- barra de anúncios fixa no topo ---- */
.topbar{
  position:fixed;top:0;left:0;right:0;z-index:60;
  display:block;overflow:hidden;white-space:nowrap;padding:9px 0;
  font-family:'Cinzel',serif;font-size:.76rem;letter-spacing:.22em;color:#1a1405;
  background:linear-gradient(180deg,var(--gold-hi),var(--gold) 60%,#d9a41f);
  border-bottom:1px solid #fff0c0;
  box-shadow:0 4px 18px rgba(0,0,0,.45),0 2px 12px rgba(240,190,46,.35);
}
.marquee-track{
  display:flex;width:max-content;flex-shrink:0;
  animation-name:topbar-slide;animation-duration:14s;
  animation-timing-function:linear;animation-iteration-count:infinite;
  will-change:transform;
}
.marquee-group{display:flex;flex-shrink:0}
.marquee-group span{padding-right:8px;flex:0 0 auto;white-space:nowrap}
@keyframes topbar-slide{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}

/* ---- botões ---- */
.links{display:flex;flex-direction:column;gap:13px}
.btn{
  display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);
  padding:15px 16px;border-radius:16px;min-height:66px;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
  animation:rise .5s ease backwards;
}
.links .btn:nth-child(2){animation-delay:.08s}
.links .btn:nth-child(3){animation-delay:.16s}
.links .btn:nth-child(4){animation-delay:.24s}
.links .btn:nth-child(5){animation-delay:.32s}
@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.btn > i:first-child{
  width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;
  font-size:1.25rem;border-radius:12px;
}
.btn span{flex:1;display:flex;flex-direction:column;gap:2px;text-align:left}
.btn strong{font-size:1rem;letter-spacing:.02em}
.btn small{font-size:.8rem;opacity:.75}
.btn .arrow{opacity:.55;font-size:.85rem}

.btn.gold{
  background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,#d9a41f);
  color:#1a1405;border:1px solid #fff0c0;
  box-shadow:0 8px 28px rgba(240,190,46,.35),inset 0 1px 0 rgba(255,255,255,.6);
}
.btn.gold > i:first-child{background:rgba(0,0,0,.14)}
.btn.gold small{color:#3d2f05;opacity:.8}
.btn.gold:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(240,190,46,.5)}

.btn.ghost{
  background:var(--card);border:1px solid var(--line);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 6px 22px rgba(0,0,0,.45);
}
.btn.ghost > i:first-child{
  color:var(--gold);border:1px solid var(--line);background:rgba(240,190,46,.08);
}
.btn.ghost:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 10px 28px rgba(240,190,46,.22)}

/* ---- site oficial — card destaque com miniatura ---- */
.site-card{
  display:flex;flex-direction:column;text-decoration:none;color:var(--ink);
  background:var(--card);border:1px solid var(--gold);
  border-radius:20px;overflow:hidden;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 10px 34px rgba(0,0,0,.5),0 0 0 1px rgba(240,190,46,.15),0 8px 28px rgba(240,190,46,.22);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
  animation:rise .5s ease backwards;animation-delay:.06s;
}
.site-card:hover{transform:translateY(-2px);border-color:var(--gold-hi);box-shadow:0 14px 38px rgba(240,190,46,.35)}
.site-thumb{position:relative;line-height:0;border-bottom:1px solid var(--line)}
.site-thumb img{width:100%;height:170px;object-fit:cover;object-position:top center;display:block;filter:saturate(1.05)}
.site-thumb::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(7,7,5,.55) 100%);
  pointer-events:none;
}
.site-tag{
  position:absolute;top:12px;left:12px;z-index:2;
  display:inline-flex;align-items:center;gap:6px;
  font-size:.68rem;font-weight:800;letter-spacing:.14em;
  color:#1a1405;background:linear-gradient(180deg,var(--gold-hi),var(--gold) 60%,#d9a41f);
  border:1px solid #fff0c0;border-radius:999px;padding:7px 12px;
  box-shadow:0 4px 14px rgba(0,0,0,.45);
  line-height:1;
}
.site-info{display:flex;flex-direction:column;gap:4px;padding:14px 16px 16px;text-align:left}
.site-info strong{font-size:1.05rem;letter-spacing:.02em;color:var(--gold-hi)}
.site-info small{font-size:.82rem;color:var(--silver);opacity:.9;line-height:1.45}
.site-cta{
  margin-top:8px;display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  font-size:.85rem;font-weight:700;letter-spacing:.04em;color:#1a1405;
  background:linear-gradient(180deg,var(--gold-hi),var(--gold) 55%,#d9a41f);
  border:1px solid #fff0c0;border-radius:999px;padding:9px 16px;
  box-shadow:0 6px 18px rgba(240,190,46,.35);
}
.site-cta i{font-size:.8rem}

/* ---- divisória ---- */
.divider{display:flex;align-items:center;gap:12px;color:var(--gold);opacity:.9}
.divider::before,.divider::after{
  content:"";height:1px;flex:1;
  background:linear-gradient(90deg,transparent,var(--line),transparent);
}
.divider span{font-size:1.05rem}

/* ---- loja / mapa no clima ouro-preto ---- */
.store{
  background:var(--card);border:1px solid var(--line);border-radius:20px;
  padding:20px 18px;display:flex;flex-direction:column;gap:12px;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 10px 34px rgba(0,0,0,.5);
}
.store h2{font-family:'Cinzel',serif;font-size:1rem;letter-spacing:.14em;color:var(--gold-hi)}
.store h2 i{margin-right:8px}
.addr{color:var(--silver);font-size:.92rem;line-height:1.55}
.map{border-radius:14px;overflow:hidden;border:1px solid var(--line);line-height:0}
.map iframe{
  width:100%;height:230px;border:0;
  filter:grayscale(1) sepia(.45) contrast(1.02) brightness(.92);
}
.store .btn{min-height:60px}

footer{text-align:center;color:var(--muted);font-size:.78rem;padding:8px 0 4px}

@media (prefers-reduced-motion:reduce){
  .logo-shine,.logo-shine .shine::before{animation:none}
  .btn,.site-card{animation:none}
  /* topbar mantém movimento por pedido explícito do cliente */
}
