:root{--brand:#ffcc66;--brand-2:#ffd88e;--bg:#0b0f19;--panel:#0f1421;--text:#e8eef5;--muted:#9fb0c0;--ok:#16c784;--nav-h:78px;--link:#cfe3ff}
*{font-family:'Open Sans',sans-serif}
h1,h2,h3,h4,h5,h6,.brand-text,.hero-heading,.hero-sub,.section-title,.navbar-brand{font-family:'Montserrat',sans-serif}
html,body{background:var(--bg);color:var(--text);scroll-behavior:smooth}
body{scroll-padding-top:calc(var(--nav-h) + 14px)}
.page-wrap{position:relative;overflow-x:hidden}
.page-wrap::before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:
  radial-gradient(1200px 600px at 120% -10%,rgba(255,204,102,.18),transparent 60%),
  radial-gradient(900px 500px at -20% 10%,rgba(22,199,132,.12),transparent 60%),
  linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.00))}

/* Navbar */
.navbar{min-height:var(--nav-h);background:#ffffff!important;border-bottom:none!important;box-shadow:0 2px 20px rgba(0,0,0,.08);transition:box-shadow .3s ease}
.brand-wrap{flex-shrink:0;display:flex;align-items:center;gap:.7rem;color:#1a1a2e;text-decoration:none}
.brand-logo{height:48px;width:auto;object-fit:contain}
.brand-text{font-weight:700;font-size:1.1rem;color:#1a1a2e;letter-spacing:.3px}
.navbar-nav{gap:0}
.nav-link{position:relative;color:#444;padding:.5rem .7rem;font-weight:500;font-size:.88rem;letter-spacing:.01em;text-transform:capitalize;border-radius:8px;transition:color .2s ease,background .2s ease}
.nav-link::after{content:"";position:absolute;left:50%;right:50%;bottom:2px;height:2px;border-radius:2px;background:#0d6efd;transition:left .25s ease,right .25s ease}
.nav-link:hover{color:#0d6efd!important;background:rgba(13,110,253,.06)!important}
.nav-link:hover::after{left:12px;right:12px}
.nav-link.active{color:#0d6efd!important;background:rgba(13,110,253,.08)!important;font-weight:600}
.nav-link.active::after{left:12px;right:12px}

/* Login nav item — same spacing as all others, with a subtle separator */
.nav-divider-before{border-left:1px solid rgba(0,0,0,.12);margin-left:.3rem;padding-left:.3rem}
.nav-login-link{font-weight:600!important}
@media(max-width:991.98px){.nav-divider-before{border-left:none;margin-left:0;padding-left:0}}

/* Buttons */
.btn-brand{--bs-btn-color:#111;--bs-btn-bg:var(--brand);--bs-btn-border-color:var(--brand);--bs-btn-hover-bg:var(--brand-2);--bs-btn-hover-border-color:var(--brand-2);font-weight:900;border-radius:1rem;padding:.75rem 1.3rem}
.btn-ghost{color:var(--text);border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);border-radius:1rem;padding:.75rem 1.2rem;font-weight:700}
.btn-ghost:hover{border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.12)}

/* Section */
.section-kicker{text-transform:uppercase;font-size:.85rem;letter-spacing:.30em;color:var(--muted);text-align:center}
.section-title{text-align:center;font-weight:900;letter-spacing:.6px;margin-bottom:1.15rem;font-size:clamp(1.8rem,3.2vw,2.6rem);background:linear-gradient(90deg,var(--brand),#fff);-webkit-background-clip:text;background-clip:text;color:transparent}

/* Card */
.card{border:1px solid rgba(255,255,255,.07)!important;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025))!important;backdrop-filter:blur(6px);border-radius:1.1rem;transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-6px);box-shadow:0 14px 32px rgba(0,0,0,.38);border-color:rgba(255,255,255,.18)!important}

/* Footer */
.site-footer{border-top:1px solid rgba(255,255,255,.12);background:#000}
.footer-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:#fff}
.footer-logo{height:40px;width:auto;object-fit:contain}
.site-footer a{color:#dbe7ff;text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.foot-small{color:#b9c6d6}
.foot-list{list-style:none;padding:0;margin:0}
.foot-list li{margin:.4rem 0}
.social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);margin-right:.35rem}

/* Responsive */
@media(min-width:992px){.navbar-nav .nav-item:hover{transform:translateY(-1px)}}
