:root{
  --energiza-blue:#126b94;
  --energiza-blue-dark:#08486a;
  --energiza-green:#369444;
  --energiza-green-dark:#236c31;
  --energiza-mint:#eaf5ec;
  --energiza-sky:#eef7fb;
  --energiza-ink:#18323f;
  --energiza-muted:#6e7f88;
  --energiza-line:#dfe9ed;
  --energiza-soft:#f6f9fa;
  --white:#fff;
}
*{box-sizing:border-box}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--energiza-ink);background:#fff}
a{color:var(--energiza-blue)}
.navbar{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(18,107,148,.12)}
.brand-logo{height:52px;width:auto;object-fit:contain}
.navbar .nav-link{color:#31505f;font-weight:600}.navbar .nav-link:hover{color:var(--energiza-green)}
.btn-energiza{background:linear-gradient(135deg,var(--energiza-green),#4eaa55);border:none;color:#fff;font-weight:700;box-shadow:0 8px 18px rgba(54,148,68,.22)}
.btn-energiza:hover{background:linear-gradient(135deg,var(--energiza-green-dark),var(--energiza-green));color:#fff;transform:translateY(-1px)}
.btn-outline-energiza{border:1px solid var(--energiza-blue);color:var(--energiza-blue);font-weight:700;background:#fff}.btn-outline-energiza:hover{background:var(--energiza-blue);color:#fff}
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#063f5d 0%,#0d6b91 56%,#31944a 100%);color:#fff;padding:5.5rem 0 5rem}
.hero:before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;right:-120px;top:-180px;border:70px solid rgba(255,255,255,.07)}
.hero:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:120px;bottom:-220px;background:rgba(85,178,88,.22)}
.hero .container{position:relative;z-index:2}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.11);font-size:.84rem;font-weight:700;letter-spacing:.01em}
.hero h1{font-size:clamp(2.55rem,5.4vw,5rem);line-height:1.01;font-weight:850;letter-spacing:-.045em}
.hero h1 .highlight{color:#b8df79}
.hero .lead{max-width:760px;color:rgba(255,255,255,.88);font-size:1.18rem}
.hero-brand-card{background:#fff;border-radius:24px;box-shadow:0 24px 54px rgba(0,32,52,.28);padding:1.6rem;color:var(--energiza-ink);border:1px solid rgba(255,255,255,.5)}
.hero-brand-card img{max-height:90px;max-width:100%;object-fit:contain}
.route-item{display:flex;gap:.9rem;align-items:flex-start;padding:.8rem;border-radius:14px;background:#f8fbfc;border:1px solid var(--energiza-line)}
.route-number,.icon-dot{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--energiza-blue),#1686ad);color:#fff;font-weight:800}
.metric-card,.feature-card,.panel-card{border:1px solid var(--energiza-line);border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(10,73,103,.07)}
.metric-card{padding:1.25rem}.metric-card strong{font-size:1.85rem;display:block;color:var(--energiza-blue-dark)}
.section-soft{background:linear-gradient(180deg,#f8fbfc,#f2f7f8)}
.section-kicker{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--energiza-green)}
.feature-card{transition:.22s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(10,73,103,.11)}
.step{position:relative;padding-left:3.4rem}.step-number{position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--energiza-blue-dark),var(--energiza-blue));color:#fff;font-weight:700}
.partners-strip{border:1px solid var(--energiza-line);background:#fff;border-radius:24px;padding:1.15rem 1.5rem;box-shadow:0 12px 28px rgba(10,73,103,.06)}
.partners-strip img{width:100%;max-height:145px;object-fit:contain}
.match-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:.65rem;align-items:center}.flow-node{text-align:center;background:#fff;border:1px solid var(--energiza-line);border-radius:16px;padding:1rem .5rem;font-weight:700;color:var(--energiza-blue-dark)}
.flow-node span{display:block;font-size:.74rem;color:var(--energiza-muted);font-weight:500;margin-top:.25rem}
.cta-band{background:linear-gradient(120deg,var(--energiza-blue-dark),var(--energiza-blue) 60%,var(--energiza-green));border-radius:26px;color:#fff;padding:2rem}
footer.site-footer{background:#063c58;color:rgba(255,255,255,.78)}
footer.site-footer img{height:58px;background:#fff;border-radius:10px;padding:6px}
.auth-wrap{min-height:calc(100vh - 72px);background:linear-gradient(135deg,var(--energiza-sky),var(--energiza-mint))}
.form-card{max-width:760px;margin:auto;border:1px solid var(--energiza-line);border-radius:22px;background:#fff;box-shadow:0 16px 40px rgba(10,73,103,.10)}
.sidebar{min-height:100vh;background:linear-gradient(180deg,#063f5d,#0b5f82 62%,#246f47);color:#fff;position:sticky;top:0}
.sidebar-brand{background:#fff;border-radius:14px;padding:.55rem .75rem;margin-bottom:1.4rem}.sidebar-brand img{width:100%;max-height:58px;object-fit:contain}
.sidebar .section-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.5);padding:.55rem 1rem .3rem}
.sidebar a{color:rgba(255,255,255,.8);text-decoration:none;display:flex;align-items:center;gap:.7rem;padding:.72rem .9rem;border-radius:12px;font-weight:600;margin-bottom:.22rem}.sidebar a:hover,.sidebar a.active{background:rgba(255,255,255,.13);color:#fff}
.badge-match{background:#dff1df;color:#236d31}.badge-blue{background:#e0eff6;color:#0b628a}
.dashboard-topbar{background:#fff;border:1px solid var(--energiza-line);border-radius:18px;padding:1rem 1.2rem;box-shadow:0 8px 22px rgba(10,73,103,.05)}
.stat-card{background:#fff;border:1px solid var(--energiza-line);border-radius:18px;padding:1.25rem;box-shadow:0 8px 24px rgba(10,73,103,.05)}.stat-card .value{font-size:2rem;font-weight:850;color:var(--energiza-blue-dark)}
.admin-hero{background:linear-gradient(120deg,#073f5d,#0e7299 60%,#349447);color:#fff;border-radius:24px;padding:1.6rem 1.8rem;position:relative;overflow:hidden}.admin-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;top:-125px;border:44px solid rgba(255,255,255,.08)}
.admin-table thead th{font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;color:#71838b;border-bottom-color:var(--energiza-line)}
@media(max-width:991px){.hero{padding:4rem 0}.brand-logo{height:44px}.sidebar{min-height:auto;position:relative}.match-flow{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg)}}
\n.interest-card{border:1px solid var(--energiza-line);border-radius:14px;padding:1rem;background:#fff;height:100%}.match-score{min-width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--energiza-sky);color:var(--energiza-blue-dark);font-weight:850;font-size:1.15rem;border:4px solid #b9ddeb}.match-score.priority{background:#eaf5ec;color:var(--energiza-green-dark);border-color:#9fd0a6}.match-reasons{list-style:none;padding:0;margin:0}.match-reasons li{padding:.35rem 0}.match-reasons i{color:var(--energiza-green);margin-right:.4rem}.progress-bar{background:linear-gradient(90deg,var(--energiza-blue),var(--energiza-green))}\n.catalog-file{display:flex;align-items:center;gap:.8rem;border:1px solid var(--energiza-line);border-radius:14px;background:#f8fbfc;padding:.8rem}.catalog-file>i{font-size:1.8rem;color:#c93131}.company-profile-hero{background:linear-gradient(125deg,#073f5d,#0e7299 60%,#349447);color:#fff;border-radius:26px;box-shadow:0 18px 42px rgba(10,73,103,.14)}.profile-tag{display:inline-flex;align-items:center;gap:.35rem;background:#eaf5ec;color:#236c31;border:1px solid #b9debf;border-radius:999px;padding:.45rem .75rem;font-size:.88rem;font-weight:650}.profile-tag-blue{background:#eef7fb;color:#0b628a;border-color:#c3e2ef}.nav-pills .nav-link{border:1px solid var(--energiza-line);color:var(--energiza-blue-dark);font-weight:650}.nav-pills .nav-link.active{background:linear-gradient(135deg,var(--energiza-blue),var(--energiza-green));border-color:transparent}
