 :root {
   --cb-navy-900: #0F1F2E;
   --cb-navy-800: #162A3C;
   --cb-navy-700: #1F3448;
   --cb-graphite: #2B2E34;
   --cb-warm-gray-50: #F4F2EE;
   --cb-warm-gray-100: #ECE9E4;
   --cb-card-bg: #FFFFFF;
   --cb-border: #D6D2CC;
   --cb-accent: #B07A4A;
   --cb-accent-dark: #8F5E34;
   --cb-text-primary: #0F1F2E;
   --cb-text-secondary: #4A5A68;
   --cb-text-on-dark: #E9EDF2;
   --cb-text-muted-on-dark: #B8C2CC;
 }
 body {
   font-family: "Inter", sans-serif;
   font-weight: 400;
   letter-spacing: normal;
   /*  color: var(--cb-charcoal);*/
   background-color: var(--cb-warm-gray-50);
   color: var(--cb-text-primary);
   font-size: 16px;
   line-height: 24px;
 }
 a {
   color: var(--cb-accent);
   text-decoration: none;
 }
 a:hover {
   color: var(--cb-accent);
   text-decoration: none;
 }
 h1, h2, h3 {
   color: var(--cb-graphite);
 }
 h1 {
   font-size: 48px;
   line-height: 52px;
   font-weight: 600;
   margin-bottom: 16px;
 }
 h2, .h2 {
   font-size: 32px;
   line-height: 36px;
   font-weight: 600;
 }
 h3, .h3 {
   font-size: 20px;
   line-height: 24px;
   font-weight: 500;
 }
 p, li {
   font-weight: 400;
   line-height: 1.65;
 }
 .subheading {
   font-size: 20px;
   line-height: 28px;
   font-weight: 500;
 }
 .text-muted {
   color: var(--cb-text-secondary) !important;
 }
 .text-muted-dark {
   color: var(--cb-text-muted-on-dark);
 }
 .btn-link {
   --bs-btn-color: var(--cb-accent);
   --bs-btn-hover-color: var(--cb-accent);
   --bs-btn-active-color: var(--cb-accent);
   text-decoration: none;
 }
 .container {
   max-width: 1200px;
 }
 .navbar {
   background-color: #FFFFFF;
   border-bottom: 1px solid var(--cb-border);
   position: sticky;
   top: 0;
   z-index: 1000;
   padding: 16px 0;
 }
 .navbar-brand {
   font-weight: 700;
   color: var(--cb-navy-900) !important;
   text-decoration: none !important;
 }
 .nav-link {
   /*  color: var(--cb-white);*/
   color: var(--cb-text-secondary);
   font-weight: 500;
 }
 .nav-link, .nav-link:hover {
   text-decoration: none;
 }
 .navbar-toggler {
   border-color: transparent;
   background-color: var(--cb-accent);
 }
 .navbar-toggler:focus {
   box-shadow: none;
 }
 .btn-primary {
   background-color: var(--cb-accent);
   color: #fff;
   border-color: var(--cb-accent);
   border-radius: 4px;
   padding: 10px 20px;
   font-weight: 600;
 }
 .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
   background-color: var(--cb-accent-dark) !important;
   border-color: var(--cb-accent-dark) !important;
   /*  color: var(--cb-surface) !important;*/
   border-color: var(--cb-accent) !important;
 }
 .nav-link:hover, .nav-link.active {
   color: var(--cb-navy-900) !important;
   /*  color: var(--cb-accent) !important;*/
 }
 .btn-outline-primary {
   background-color: transparent;
   color: #fff;
   border: 1px solid #fff;
   border-radius: 4px;
   padding: 10px 20px;
   font-weight: 500;
 }
 .btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active {
   background-color: #fff !important;
   color: var(--cb-navy-900) !important;
   border: 1px solid var(--cb-accent);
 }
 .section {
   padding: 4.5rem 8px;
 }
 .section.surface {
   background-color: var(--cb-surface);
 }
 .section.base {
   background-color: var(--cb-stone);
 }
 .card {
   background-color: var(--cb-card-bg);
   border: 1px solid var(--cb-border);
   border-radius: 10px;
   box-shadow: 0 6px 18px rgba(15, 31, 46, 0.06);
 }
 .card h3 {
   font-size: 18px;
   font-weight: 600;
   color: var(--cb-navy-900);
   margin-bottom: 16px;
 }
 .card p {
   color: var(--cb-text-secondary);
 }
 .card i {
   color: var(--cb-navy-900);
 }
 .section-divider {
   background-color: var(--cb-navy-800);
   color: var(--cb-text-on-dark) !important;
   text-align: center;
   padding: 64px 0;
 }
 .section-divider h2 {
   color: var(--cb-text-on-dark) !important;
 }
 .surface .card {
   background-color: var(--cb-white);
 }
 .bi {
   color: var(--cb-icon);
   /* muted olive */
   opacity: 0.9;
 }
 .plan-active {
   border-width: 2px;
 }
 .footer {
   font-size: 14px;
   line-height: 20px;
   font-weight: 400;
   background-color: var(--cb-navy-900);
   color: var(--cb-text-muted-on-dark);
   /*  padding: 64px 0 32px;*/
   padding: 64px 0 0;
 }
 .footer a {
   color: var(--cb-text-muted-on-dark);
 }
 .footer a:hover {
   color: #FFFFFF;
   text-decoration: underline;
 }
 .footer-bottom {
   background-color: var(--cb-navy-800);
   padding: 18px 0;
 }
 .accordion-button {
   color: var(--cb-graphite);
   font-weight: 500;
 }
 .accordion-button:not(.collapsed) {
   background-color: transparent;
   color: var(--cb-graphite);
   font-weight: 700 !important;
 }
 .accordion-button:focus {
   border-color: transparent;
   box-shadow: none;
 }
 .text-success {
   color: #15803D !important;
 }
 .text-danger {
   color: #B91C1C !important;
 }
 .text-warning {
   color: #D97706 !important;
 }
 .text-primary, .border-primary {
   color: var(--cb-graphite) !important;
 }
 .bg-primary {
   background-color: var(--cb-graphite);
 }
 .hero {
   background: linear-gradient(180deg, var(--cb-navy-900) 0%, var(--cb-navy-800) 100%);
   padding: 96px 0;
 }
 .hero h1 {
   color: var(--cb-text-on-dark);
 }
 .hero p, .hero .subheading, .hero ul li {
   color: var(--cb-text-muted-on-dark);
 }
 .hero .subheading {
   max-width: 780px;
 }
 .list-unstyled li {
   font-size: 16px;
   margin: 0 !important;
   padding-bottom: 12px;
 }
 .list-group-item {
   border: 0;
 }
 .cta {
   padding: 48px 0 !important;
   background-color: var(--cb-navy-800);
   color: rgba(255, 255, 255, .8);
 }
 .cta h2 {
   color: var(--cb-white);
   font-size: 24px !important
 }
 /*
.cta .btn-primary:hover, .cta .btn-primary:focus, .cta .btn-primary:active {
  background-color: var(--cb-graphite) !important;
}
*/
 .cta .sub-heading {
   font-size: 18px !important;
   line-height: 24px;
 }
 ul.tick-list li {
   position: relative;
   padding-left: 24px;
   margin-bottom: 8px;
 }
 ul.tick-list li::before {
   content: "\2714";
   position: absolute;
   left: 0;
   top: 0;
 }
 ul.tick-list {
   list-style: none;
   padding-left: 0;
 }
 .fs-28 {
   font-size: 28px !important;
 }
 @media (min-width: 992px) {
   .mega-menu {
     width: 480px;
   }
 }
 .section {
   padding: 80px 0;
   background-color: var(--cb-warm-gray-50);
 }
 .section.surface {
   background-color: #FFFFFF;
 }
 .section.dark {
   background-color: var(--cb-navy-900);
   color: var(--cb-text-on-dark);
 }
 .dropdown-item.active, .dropdown-item:active {
   color: var(--bs-body-color);
   background-color: var(--cb-warm-gray-50);
 }