:root{
  --bg:#ffffff;
  --ink:#0a0a0a;
  --muted:#5b5b5b;
  --blue-1:#00b2ff;
  --blue-2:#0b3dff;
  --line:#ececec;
  --radius:20px;
  --shadow-blue:0 14px 32px rgba(11,61,255,.22);
  --shadow-soft:0 10px 28px rgba(0,0,0,.10);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:
    radial-gradient(600px 300px at 50% -60px, rgba(0,178,255,.10), transparent 70%),
    var(--bg);
  color:var(--ink);
  min-height:100vh;
  display:flex;
  justify-content:center;
}
.wrap{
  width:100%;
  max-width:480px;
  padding:34px 20px 28px;
  display:flex;
  flex-direction:column;
  align-items:center;
}

/* LOGO SOLTA — sem borda, sem circle, sem fundo */
.hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  animation:rise .6s ease both;
  perspective:600px;
  width:100%;
}
.logo-loose{
  width:min(74vw,300px);
  height:auto;
  display:block;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  filter:drop-shadow(0 14px 26px rgba(11,61,255,.16));
  animation:logo-rotate 5s ease-in-out infinite;
  transform-style:preserve-3d;
  will-change:transform;
}
.handle{
  margin-top:12px;
  font-weight:700;
  font-size:.98rem;
  color:var(--blue-2);
  text-decoration:none;
}
.handle:hover{text-decoration:underline}
/* BARRA DE ANÚNCIOS — azul, texto branco, ícones pretos */
.announce{
  margin-top:16px;
  width:100%;
  max-width:420px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--blue-1) 0%,var(--blue-2) 100%);
  border-radius:999px;
  padding:10px 0;
  box-shadow:var(--shadow-blue);
}
.announce-track{
  display:flex;
  width:max-content;
  animation:announce-scroll 12s linear infinite;
}
.announce-group{
  display:flex;
  align-items:center;
  gap:16px;
  padding-right:16px;
  white-space:nowrap;
  font-size:.82rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.3px;
  color:#fff;
}
.announce-group i{color:#000;font-size:.9rem}
.announce-group .dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#fff;
  flex:none;
}

/* BOTÕES */
.links{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:14px;
  margin-top:24px;
}
.btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  padding:17px 18px;
  border-radius:var(--radius);
  font-weight:800;
  font-size:1rem;
  text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
  animation:rise .6s ease both;
}
.btn i{font-size:1.25rem}
.btn:active{transform:scale(.98)}

.btn-whats{
  background:#fff;
  color:#0a0a0a;
  border:2px solid #0a0a0a;
  animation-delay:.1s;
}
.btn-whats:hover{background:#0a0a0a;color:#fff}

.btn-site{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  width:auto;
  z-index:2;
  color:#fff;
  background:linear-gradient(135deg,var(--blue-1) 0%,var(--blue-2) 100%);
  box-shadow:var(--shadow-blue);
  animation-delay:.05s;
}
.btn-site:hover{filter:brightness(1.05);transform:translateY(-1px)}

.btn-insta{
  background:#fff;
  color:#0a0a0a;
  border:2px solid #0a0a0a;
  animation-delay:.2s;
}
.btn-insta:hover{background:#0a0a0a;color:#fff}

/* BLOCO SITE — botão incorporado sobre a parte de baixo da imagem */
.site-block{
  position:relative;
  display:block;
  animation:rise .6s ease both;
  animation-delay:.05s;
}
.site-thumb{
  display:block;
  text-decoration:none;
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  box-shadow:var(--shadow-soft);
  transition:transform .15s ease, box-shadow .15s ease;
}
.site-thumb:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(11,61,255,.18)}
.site-url{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-size:.78rem;
  font-weight:700;
  color:#111;
  background:#f6f6f6;
  border-bottom:1px solid var(--line);
  padding:9px 10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.site-url i{color:var(--blue-2);font-size:.75rem}
.site-thumb img{
  display:block;
  width:100%;
  height:300px;
  object-fit:cover;
  object-position:top center;
}

.footer{
  margin-top:26px;
  text-align:center;
  color:#8a8a8a;
  font-size:.8rem;
}

@keyframes rise{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes logo-rotate{
  0%{transform:rotateY(0deg)}
  18%{transform:rotateY(360deg)}
  100%{transform:rotateY(360deg)}
}
@keyframes announce-scroll{
  to{transform:translateX(-50%)}
}

@media (min-width:520px){
  .site-thumb img{height:320px}
}
