:root{
  --brand-1:#8768a3;
  --brand-2:#C15e91;
  --accent:#d1c21c;
  --ink:#1f2430;
  --muted:#6b7280;
  --soft:#f6f5fb;
  --soft-2:#fbf7fa;
  --card-border: rgba(31,36,48,.08);
}

html{scroll-behavior:smooth;}
body{
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
  color:var(--ink);
}

.navbar{backdrop-filter:saturate(180%) blur(10px);}
.nav-link{font-weight:600;color:rgba(31,36,48,.72)!important;}
.nav-link:hover{color:var(--brand-2)!important;}

.btn-brand{
  background: linear-gradient(135deg, var(--brand-2), var(--brand-1));
  border:0; color:#fff;
}
.btn-brand:hover{filter:brightness(.97);color:#fff;}
.btn-outline-brand{
  border-color:rgba(135,104,163,.55);
  color:var(--brand-1);
}
.btn-outline-brand:hover{background:var(--brand-1);border-color:var(--brand-1);color:#fff;}

.badge-soft{
  background: rgba(135,104,163,.10);
  color: var(--brand-1);
  border: 1px solid rgba(135,104,163,.22);
}

.section{padding:80px 0;}
.section-soft{
  background: radial-gradient(900px 420px at 10% 0%, rgba(135,104,163,.16), transparent 55%),
              radial-gradient(900px 420px at 90% 10%, rgba(193,94,145,.16), transparent 55%),
              linear-gradient(180deg, #fff, var(--soft));
}

.hero{
  padding-top:96px;
  background: radial-gradient(1100px 520px at 20% 15%, rgba(193,94,145,.18), transparent 55%),
              radial-gradient(1000px 480px at 85% 10%, rgba(209,194,28,.20), transparent 50%),
              linear-gradient(180deg, #fff, var(--soft-2));
}

.card{
  border:1px solid var(--card-border);
  box-shadow: 0 12px 28px rgba(31,36,48,.06);
}
.rounded-4{border-radius:1rem!important;}
.rounded-5{border-radius:1.25rem!important;}

.icon{
  width:46px;height:46px;border-radius:14px;
  display:inline-flex;align-items:center;justify-content:center;
  background: rgba(193,94,145,.12);
  border: 1px solid rgba(193,94,145,.22);
  color: var(--brand-2);
}

.kpi{background:#fff;border: 1px dashed rgba(135,104,163,.38);}
.divider{height:1px;background:rgba(31,36,48,.10);}

/* Forms */
.form-control:focus,.form-select:focus{
  border-color: rgba(193,94,145,.55);
  box-shadow: 0 0 0 .25rem rgba(193,94,145,.16);
}

/* Sticky actions */
.sticky-cta{
  position:fixed; right:18px; bottom:18px; z-index:1030;
  display:flex; flex-direction:column; gap:10px;
}
.sticky-cta a{
  width:50px;height:50px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 14px 28px rgba(31,36,48,.18);
  text-decoration:none;
}
.sticky-cta .wa{background:#25D366;color:#fff;}
.sticky-cta .mail{background:#fff;color:var(--brand-2);border:1px solid rgba(193,94,145,.25);}
.sticky-cta .top{background:#fff;color:var(--brand-1);border:1px solid rgba(135,104,163,.25);}

/* Accessibility */
.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden;}
.skip-link:focus{
  left:16px;top:16px;width:auto;height:auto;padding:10px 14px;
  background:#fff;border:1px solid rgba(31,36,48,.15);border-radius:12px;
  z-index:2000;
}
