body { background-color: #f8f9fa; padding-top:56px; }

div.gap { height: 2rem; }
div.gap-lg { height: 3rem; }
div.gap-xl { height: 4rem; }

/* Glass navbar over gradient */
.navbar-glass { background: rgba(0,0,0,.35); backdrop-filter: blur(6px); border-bottom: 1px solid rgba(255,255,255,.08); }

/* Hero landing inspired gradient with glass stats */
.hero-landing { position: relative; padding: 5rem 0; background:
  radial-gradient(800px 400px at 80% -10%, rgba(34,211,238,.25), transparent 60%),
  radial-gradient(600px 300px at 0% 0%, rgba(59,130,246,.25), transparent 60%);
}
.hero-landing::before { content:""; position:absolute; inset:0; background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.15)); pointer-events:none; }
.hero-landing .badge { background: linear-gradient(45deg, var(--acc), var(--acc2)); }
.hero-landing .glass-card { backdrop-filter: blur(6px); background: rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); border-radius:.75rem; padding:1rem; }
.stat { min-height:84px; display:flex; flex-direction:column; align-items:center; justify-content:center; }

:root{ --brand-primary:#0d6efd; --brand-primary-dark:#0b5ed7; --brand-accent:#0a58ca; }

/* Mixed template styles for responsiveness and cards */
.bg-primary-gradient { background: linear-gradient(135deg, #0066cc, #004080); }
.section-padding { padding: 5rem 0; }
.hero-section { padding: 5rem 0; color: #fff; }
.card { transition: transform .3s ease, box-shadow .3s ease; }
.card:hover { transform: translateY(-2px); box-shadow: 0 10px 20px rgba(0,0,0,.08); }
.badge-corner { position: absolute; top: 10px; right: 10px; }
.tool-icon { font-size: 2.5rem; margin-bottom: 1rem; color: #0066cc; }
.navbar-brand { font-weight: 600; }
.navbar-brand img{ height:32px; width:32px; border-radius:50%; object-fit:cover; display:block; border:2px solid rgba(255,255,255,.6); background:#fff; }

/* Carousel banner slides */
.banner-slide{ min-height: 360px; }
.banner-1{ background: linear-gradient(120deg,var(--brand-primary),#1e90ff); }
.banner-2{ background: linear-gradient(120deg,var(--brand-primary-dark),var(--brand-accent)); }
.banner-3{ background: linear-gradient(120deg,#084298,var(--brand-primary)); }

/* Full-bleed helper for content escaping container width */
.full-bleed{ width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }

/* Faster carousel slide transition */
.carousel .carousel-item{ transition: transform .4s ease-in-out; }

/* Particles.js background */
.particles-bg{ position:fixed; inset:0; width:100%; height:100%; z-index:0; background-color:#4d5267; }
main, footer{ position:relative; z-index:1; }
nav.navbar.fixed-top{ z-index: 1040; }
.particles-overlay{ position:absolute; inset:0; z-index:2; pointer-events:none; }

.feature-card .card-title { font-weight: 600; }
