@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("../public/fonts/sourcesans-400.woff2") format("woff2");}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url("../public/fonts/sourcesans-600.woff2") format("woff2");}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url("../public/fonts/sourcesans-700.woff2") format("woff2");}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:800;font-display:swap;src:url("../public/fonts/sourcesans-800.woff2") format("woff2");}

:root{
  --vermelho:#C8272E; --vermelho-escuro:#9B2026; --menu:#D02727;
  --navy:#1B2B4B; --navy-900:#142036;
  --areia:#F7F2E9; --creme:#FFFFFF; --borda:#E8DFCE;
  --texto:#221F18; --texto-medio:#6B6354; --verde:#25D366;
  --sans:"Source Sans 3",system-ui,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
img,svg{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
body{
  font-family:var(--sans);
  background:
    radial-gradient(120% 90% at 50% -10%, #FBF7F0, var(--areia)) fixed,
    var(--areia);
  color:var(--texto);min-height:100vh;
  -webkit-font-smoothing:antialiased;position:relative;overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:url("../public/pattern.avif") center top / 460px repeat;
  opacity:.08;
}
.wrap{position:relative;z-index:1;width:100%;max-width:480px;margin:0 auto;padding:34px 20px 44px;}

/* ===== Cabeçalho (avatar redondo) ===== */
.avatar{
  width:128px;height:128px;border-radius:50%;overflow:hidden;
  margin:0 auto;
  border:4px solid #fff;
  box-shadow:0 18px 40px rgba(27,43,75,.30);
  animation:pop .7s var(--ease) both;
}
.avatar img{width:100%;height:100%;object-fit:cover;}
@keyframes pop{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}

.id{text-align:center;margin-top:20px;}
.handle{font-weight:700;font-size:16px;color:var(--vermelho);}
.tagline{font-size:14.5px;color:var(--texto-medio);line-height:1.55;margin:10px auto 0;max-width:340px;}
.badges{display:flex;gap:18px;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:18px;}
.badges .selo-mec{height:66px;width:auto;}
.badges .selo-17{height:50px;width:auto;}

/* ===== Links ===== */
.links{width:100%;display:flex;flex-direction:column;gap:13px;margin-top:30px;}
.link{
  position:relative;display:flex;align-items:center;gap:14px;
  background:var(--creme);border:1px solid var(--borda);border-radius:16px;
  padding:15px 16px;overflow:hidden;
  box-shadow:0 4px 14px rgba(58,46,28,.05);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s ease;
  opacity:0;transform:translateY(14px);animation:rise .6s var(--ease) forwards;
}
@keyframes rise{to{opacity:1;transform:none}}
.link::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--vermelho);transform:scaleY(0);transform-origin:bottom;transition:transform .3s var(--ease);}
.link:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(58,46,28,.13);border-color:transparent;}
.link:hover::before{transform:scaleY(1);}
.link .ic{width:44px;height:44px;flex-shrink:0;border-radius:12px;display:grid;place-items:center;background:rgba(200,39,46,.10);color:var(--vermelho);transition:background .25s,color .25s;}
.link:hover .ic{background:var(--vermelho);color:#fff;}
.link .ic svg{width:22px;height:22px;}
.link .tx{flex:1;min-width:0;}
.link .tx b{display:block;font-weight:700;font-size:15.5px;color:var(--navy);}
.link .tx span{display:block;font-size:12.5px;color:var(--texto-medio);}
.link .arrow{color:var(--texto-medio);transition:transform .25s var(--ease),color .25s ease;flex-shrink:0;}
.link:hover .arrow{transform:translateX(4px);color:var(--vermelho);}

.link.primary{background:var(--menu);border-color:transparent;box-shadow:0 14px 30px rgba(208,39,39,.30);}
.link.primary::before{background:#fff;}
.link.primary .ic,.link.primary:hover .ic{background:rgba(255,255,255,.18);color:#fff;}
.link.primary .tx b{color:#fff;}.link.primary .tx span{color:rgba(255,255,255,.82);}
.link.primary .arrow{color:#fff;}
.link.whats .ic{background:rgba(37,211,102,.14);color:#16a34a;}
.link.whats:hover .ic{background:var(--verde);color:#fff;}
.link.whats::before{background:var(--verde);}

.link:nth-child(1){animation-delay:.05s}.link:nth-child(2){animation-delay:.1s}
.link:nth-child(3){animation-delay:.15s}.link:nth-child(4){animation-delay:.2s}
.link:nth-child(5){animation-delay:.25s}.link:nth-child(6){animation-delay:.3s}
.link:nth-child(7){animation-delay:.35s}.link:nth-child(8){animation-delay:.4s}

/* ===== Redes ===== */
.socials{display:flex;gap:12px;justify-content:center;margin-top:30px;}
.socials a{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;transition:transform .25s var(--ease),background .25s ease;}
.socials a:hover{transform:translateY(-3px);background:var(--vermelho);}
.socials svg{width:20px;height:20px;}

.foot{margin-top:30px;text-align:center;}
.foot .cnpj{font-size:12px;color:var(--texto-medio);}
.foot .credit{font-size:12px;color:var(--texto-medio);margin-top:8px;}
.foot .credit a{color:var(--vermelho);font-weight:600;}

@media (prefers-reduced-motion: reduce){.avatar,.link{animation:none;opacity:1;transform:none;}}
