* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { height: 100%; }

:root{
  /* Overlay mais forte para contraste (acessibilidade) */
  --overlay-top: rgba(5,5,5,0.20);
  --overlay-bottom: rgba(0,0,0,0.82);

  --accent: #ffffff;
  --muted: #bfbfbf;
  --panel: #151515;
  --max-width: 1100px;
}

body{
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  color: var(--accent);
  background: #0b0b0b;
  -webkit-font-smoothing: antialiased;
  line-height: 1.45;
}

.container{
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 24px;
}

/* Header */
.site-header{
  position: absolute;
  top: 18px;
  left: 0;
  right: 0;
  z-index: 30;
  pointer-events: none;
}
.site-header .container{
  display: flex;
  justify-content: center;
}
.logo{
  pointer-events: auto;
  font-family: "Playfair Display", serif;
  letter-spacing: 2px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: 18px;
  padding: 6px 10px;
}

/* Hero */
.hero{
  min-height: 64vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;

  /* Background local (coloque o arquivo bg.webp na raiz do site) */
  background-image: url("bg.webp");
  background-size: cover;
  background-position: center;
}
.hero::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, var(--overlay-top) 0%, var(--overlay-bottom) 72%);
  z-index: 1;
}
.hero-inner{
  z-index: 2;
  text-align: center;
  padding: 160px 16px 80px;
  width: 100%;
}

.coming-soon{
  font-family: "Playfair Display", serif;
  font-size: clamp(40px, 6vw, 72px);
  font-weight: 700;
  color: #fff;
  text-shadow: 0 4px 24px rgba(0,0,0,0.65);
}

/* Follow section */
.follow{
  background: var(--panel);
  padding: 48px 0 64px;
  color: #cfcfcf;
  text-align: center;
}
.follow h2{
  font-family: "Playfair Display", serif;
  font-size: 34px;
  color: var(--muted);
  margin-bottom: 10px;
}
.divider{
  width: 48px;
  height: 2px;
  background: rgba(255,255,255,0.06);
  margin: 14px auto 28px;
  border-radius: 2px;
}

/* Social icons */
.socials{
  display: flex;
  gap: 18px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding-top: 6px;
}
.socials a{ text-decoration: none; }

.circle{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: rgba(255,255,255,0.06);
  border-radius: 50%;
  transition: transform .12s ease, background .12s ease;
  color: #fff;
  font-size: 18px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.5);
}
.socials a:hover .circle{
  transform: translateY(-4px);
  background: rgba(255,255,255,0.12);
}

/* Botão flutuante */
.chat{
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 56px;
  height: 56px;
  background: #2b2b2b;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  box-shadow: 0 6px 18px rgba(0,0,0,0.5);
  text-decoration: none;
  z-index: 100;
  transition: transform .12s ease;
}
.chat:hover{ transform: translateY(-3px); }

/* Footer */
.site-footer{
  background: #0b0b0b;
  color: #6f6f6f;
  padding: 18px 0;
  text-align: center;
  font-size: 13px;
}

@media (max-width: 720px){
  .hero-inner{ padding: 120px 12px 60px; }
  .coming-soon{ font-size: 38px; }
  .circle{ width: 44px; height: 44px; font-size: 16px; }
}