
:root{--brand:#1C2331;--brand-700:#141925;--ink:#111827;--ink-muted:#4b5563;--radius:16px;--shadow:0 10px 30px rgba(28,35,49,.18);}
html{scroll-behavior:smooth}body{color:var(--ink);padding-top:96px;padding-bottom:96px;background:#fff;}
a{text-decoration:none}a:hover{text-decoration:underline}
.nav-floating{position:fixed;left:16px;right:16px;top:12px;z-index:1030;background:rgba(28,35,49,.98);border-radius:16px;box-shadow:var(--shadow);backdrop-filter:saturate(140%) blur(6px)}
.nav-floating .navbar-brand,.nav-floating .nav-link{color:#e5e7eb!important}
.nav-floating .btn-cta{background:#fff;color:var(--brand);border-radius:12px;font-weight:800}
.footer-floating{position:fixed;left:16px;right:16px;bottom:12px;z-index:1030;background:rgba(28,35,49,.98);color:#cbd5e1;border-radius:16px;box-shadow:var(--shadow)}
.footer-floating a{color:#e5e7eb}
.container-narrow{max-width:1100px}.hero-logo{max-width:320px;height:auto}.elf-wrap{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:12px}
.brandline{display:flex;align-items:center;gap:.6rem}.brandline .site-title{font-weight:800;letter-spacing:.2px}
.btn-brand{background:var(--brand);border-color:var(--brand)}.btn-brand:hover{background:#141925;border-color:#141925}


/* ===== UI Tweaks v6 ===== */

/* Use "navbar-dark" theme variables for proper contrast on our dark floating bar */
.nav-floating.navbar.navbar-dark{
  --bs-navbar-color: #e5e7eb;
  --bs-navbar-hover-color: #ffffff;
  --bs-navbar-active-color: #ffffff;
  --bs-navbar-brand-color: #ffffff;
  --bs-navbar-brand-hover-color: #ffffff;
  --bs-navbar-toggler-border-color: rgba(255,255,255,.45);
  /* White burger icon */
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255,255,255, 0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Make nav links icon + text on one line with spacing */
.nav-floating .nav-link{
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  white-space: nowrap;
  padding-right: .75rem;
  padding-left: .75rem;
}
.nav-floating .nav-link i{ line-height: 1; }

/* Ensure CTA looks like a Bootstrap button and stands out on dark bg */
.nav-floating .btn-cta{
  background-color:#ffffff;
  color:#1C2331;
  border:1px solid rgba(255,255,255,.0);
  padding:.4rem .8rem;
  font-weight:700;
}
.nav-floating .btn-cta:hover{
  background:#f2f4f8;
  color:#0b1220;
}

/* Hero primary button clarity */
.btn-brand{ 
  --bs-btn-color:#fff;
  --bs-btn-bg:#1C2331;
  --bs-btn-border-color:#1C2331;
  --bs-btn-hover-color:#fff;
  --bs-btn-hover-bg:#141925;
  --bs-btn-hover-border-color:#141925;
  --bs-btn-active-bg:#0e1622;
  --bs-btn-active-border-color:#0e1622;
}

/* Improve general text clarity against light backgrounds */
body{ color:#0f172a; }
.text-secondary{ color:#475569 !important; }

/* Buttons inside light cards should not blend in */
.card .btn{ box-shadow: 0 1px 2px rgba(0,0,0,.05); }

/* Toggler button hit area */
.navbar-toggler{ padding:.35rem .6rem; border-color: var(--bs-navbar-toggler-border-color, rgba(255,255,255,.4)) !important;}
.navbar-toggler:focus{ box-shadow: 0 0 0 .2rem rgba(255,255,255,.25); }




.navbar-brand img{ height:40px; width:auto; display:inline-block; vertical-align:middle; }
.navbar-brand .site-title{ line-height:1; display:inline-block; vertical-align:middle; }

/* === v1.2 navbar brand alignment === */
.brandline{
  display:inline-flex;
  align-items:center;
}
.brandline img{
  height:40px;
  width:auto;
  display:block;
}

/* === v1.3 nav icon+text unit === */
.navbar-nav .nav-link{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  white-space:nowrap;  /* keep icon + text together */
}
.navbar-nav .nav-link i{ order:0; flex:0 0 auto; line-height:1; }
.navbar-nav .nav-link .nav-text{ order:1; display:inline-block; }
.navbar-nav .nav-item{ white-space:nowrap; } /* keep each link on one line */

/* === v1.4 navbar spacing/alignment === */
.navbar-nav .nav-link{
  display:inline-flex;
  align-items:center;
  gap:.35rem;              /* tighter gap */
  white-space:nowrap;
}
.navbar-nav .nav-link i{ line-height:1; }
.navbar-nav .nav-link .nav-text{ line-height:1.2; }


/* Footer: mobile stacking fix */
@media (max-width:576px){
  .footer-floating .container{
    display:flex;flex-direction:column;align-items:center;text-align:center;gap:.25rem;
  }
  .footer-floating .container > :first-child{width:100%}
  .footer-floating .container .social{
    width:100%;display:flex;justify-content:center;gap:.75rem;margin-top:.25rem;
  }
  .footer-floating .container .social a{margin-left:0}
}
