:root{
  --unisep-primary:#DA0236; /* vermelho UNISEP */
  --unisep-dark:#17203D;    /* azul escuro UNISEP */
  --unisep-soft:#f6f8fb;
  --unisep-text:#0f172a;
}
body{ background:var(--unisep-soft); color:var(--unisep-text); }
.navbar-unisep{ background:#fff; border-bottom:1px solid #eceff4; }
.brand-img{ height:36px; width:auto; display:block; }
.hero-unisep{
  background:
    radial-gradient(1200px 500px at 10% -10%, #e9efff 0%, #f6f8fb 40%, #f6f8fb 100%),
    linear-gradient(135deg,#ffffff 0%,#f6f7fb 100%);
  border-bottom:1px solid #eceff4;
}
/* Buttons */
.btn-unisep{ --bs-btn-padding-y:.6rem; --bs-btn-padding-x:1.25rem; --bs-btn-border-radius:999px;
  background:var(--unisep-primary); border:1px solid var(--unisep-primary); color:#fff; font-weight:600; }
.btn-unisep:hover{ filter:brightness(0.95); color:#fff; }
.btn-unisep-outline{ --bs-btn-padding-y:.6rem; --bs-btn-padding-x:1.25rem; --bs-btn-border-radius:999px;
  background:#fff; border:1px solid var(--unisep-dark); color:var(--unisep-dark); font-weight:600; }
.btn-unisep-outline:hover{ background:var(--unisep-dark); color:#fff; }
.btn-unisep-ghost{ --bs-btn-padding-y:.6rem; --bs-btn-padding-x:1.1rem; --bs-btn-border-radius:999px;
  background:transparent; border:1px dashed #d0d5dd; color:var(--unisep-dark); font-weight:600; }
.btn-unisep-ghost:hover{ background:#fff; box-shadow:0 6px 24px rgba(23,32,61,.08); }
/* Badges / Cards */
.badge-unisep{ font-size:.75rem; border:1px solid #e5e7eb; background:#fff; padding:.2rem .6rem; border-radius:999px; color:#374151; }
.card-elev{ border:0; border-radius:1rem; box-shadow:0 16px 40px rgba(23,32,61,.08); }
/* Wizard */
.progress.unisep{ height:10px; border-radius:999px; }
.wizard-dot{ width:10px;height:10px;border-radius:999px;background:#e5e7eb; }
.wizard-dot.active{ background:var(--unisep-dark); }
/* Utilities */
.section-title{ font-weight:700; color:#0f172a; margin: 8px 0 4px; }
.hint{ color:#6b7280; font-size:.92rem; }
/* From user's style.css defaults for compatibility */
.required:after { content:' *'; color:#DA0236; }

/* === Centralização e tamanho da logo === */
.navbar-logo-wrapper {
  display: flex;
  justify-content: center;
  width: 100%;
}
.brand-img {
  max-height: 80px;
  height: auto;
  width: auto;
}
@media (max-width: 575.98px) {
  .brand-img {
    max-height: 70px;
  }
}

