/* Tem Profissa — Design System Premium
   Camada visual não destrutiva: melhora aparência sem mexer nos fluxos críticos. */
:root{
  --tp-blue:#003ec7;
  --tp-blue-2:#2350e6;
  --tp-purple:#6366f1;
  --tp-gold:#ffd700;
  --tp-bg:#070b16;
  --tp-surface:rgba(255,255,255,.075);
  --tp-border:rgba(255,255,255,.11);
  --tp-text:#f8fafc;
  --tp-muted:rgba(248,250,252,.68);
  --tp-soft:rgba(248,250,252,.45);
  --tp-radius:22px;
  --tp-shadow:0 22px 70px rgba(2,6,23,.34);
}
*{letter-spacing:-.01em}
body{
  background:
    radial-gradient(circle at 20% 8%,rgba(99,102,241,.25),transparent 32%),
    radial-gradient(circle at 78% 4%,rgba(0,62,199,.28),transparent 36%),
    linear-gradient(180deg,#081123 0%,#070b16 48%,#05070d 100%) !important;
  color:var(--tp-text) !important;
}
body::before{opacity:.42!important;filter:brightness(.24) saturate(1.05)!important}
header,.topbar{padding-top:26px!important;padding-bottom:18px!important}
header h1,.topbar span{letter-spacing:-.03em}
a{transition:.2s ease}
.glass,.card,.cta-box,.step,.plano{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045))!important;
  border:1px solid var(--tp-border)!important;
  box-shadow:var(--tp-shadow)!important;
  backdrop-filter:blur(24px)!important;
  -webkit-backdrop-filter:blur(24px)!important;
}
.glass:hover,.plano:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.18)!important}
.btn-pro,.btn-primary,.btn-pagar{
  background:linear-gradient(135deg,var(--tp-blue),var(--tp-purple))!important;
  border:none!important;
  box-shadow:0 12px 34px rgba(0,62,199,.36)!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.btn-pro:hover,.btn-primary:hover,.btn-pagar:hover{transform:translateY(-2px);box-shadow:0 18px 48px rgba(0,62,199,.45)!important}
.btn-outline{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  color:#fff!important;
}
input,select,textarea{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(96,165,250,.9)!important;
  box-shadow:0 0 0 4px rgba(96,165,250,.12)!important;
}
.gradient-text,h1 span{
  background:linear-gradient(135deg,#93c5fd,#c4b5fd,#f8d870)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}
.section{max-width:1180px!important}
.hero{max-width:960px!important}
.hero h1,h2{letter-spacing:-.055em!important}
.sub,p[style*="rgba(255,255,255,0.4)"],p[style*="rgba(255,255,255,0.5)"]{color:var(--tp-muted)!important}
.plano.destaque{border-color:rgba(255,215,0,.42)!important;background:linear-gradient(180deg,rgba(255,215,0,.13),rgba(255,255,255,.05))!important}
.plano .tag,.tag{border:1px solid rgba(255,255,255,.12)!important}
#grid .glass,.animate-in{box-shadow:0 10px 38px rgba(2,6,23,.22)!important}
#profsGrid .glass{border-radius:18px!important}
footer{box-shadow:0 -10px 34px rgba(0,0,0,.25)!important}
.tp-trust-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:22px 0 30px}
.tp-trust-item{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);font-size:13px;font-weight:700;color:#eef2ff;text-align:center}
.tp-empty-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding:11px 16px;border-radius:12px;background:linear-gradient(135deg,var(--tp-blue),var(--tp-purple));color:#fff;text-decoration:none;font-weight:800;font-size:13px}
@media(max-width:760px){
  header{padding:18px 16px!important}.section{padding-left:16px!important;padding-right:16px!important}h2{font-size:38px!important}.glass{border-radius:18px!important}.planos{gap:10px!important}
}
