     :root {
        /* Friendly Trust palette */
        --fc-primary: #0e6a73; /* teal */
        --fc-primary-dark: #08535a; /* hover/deeper teal */
        --fc-accent: #f6a57a; /* peach */
        --fc-accent-hover: #ef8454; /* deeper peach */
        --fc-bg: #fff7f1; /* cream */
        --fc-surface: #ffffff; /* cards */
        --fc-text: #1d2b34; /* ink */
        --fc-muted: #556670; /* muted text */
        --fc-border: #e8dcd2; /* borders */
        --fc-callout: #eaf7f6; /* seafoam tint */


        --fc-radius: 16px;
        --fc-shadow: 0 8px 22px rgba(13, 38, 49, 0.06);
        --fc-shadow-soft: 0 6px 16px rgba(13, 38, 49, 0.05);

        /* Bootstrap bridge */
        --bs-body-font-family:
          Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial,
          "Apple Color Emoji", "Segoe UI Emoji";
        --bs-body-color: var(--fc-text);
        --bs-body-bg: var(--fc-bg);
        --bs-link-color: var(--fc-primary);
        --bs-link-hover-color: var(--fc-primary-dark);
        --bs-border-color: var(--fc-border);
        --bs-border-radius: var(--fc-radius);
      }

      /* Body + global text rhythm */
body{
  line-height: 1.55;   /* was ~1.7 */
}

     h1,
      h2,
      h3,
      h4,
      .display-5,
      .navbar-brand {
        font-family:
          "Source Sans 3",
          system-ui,
          -apple-system,
          Segoe UI,
          Roboto,
          Helvetica,
          Arial;
      }
      h1,
      h2,
      h3,
      h4,
      h5,
      h6,
      .display-5,
      .display-6 {
        line-height: 1;
      }



    /* Headings tighter */
    h1,.display-5,.display-6{ line-height: 1; }

    /* Slight breathing room for smaller headings */
    h2,h3,h4,h5,h6{ line-height: 1.08; }


      .text-muted {
        color: var(--fc-muted) !important;
      }

      /* Components */
      .fc-card {
        background: var(--fc-surface);
        border: 1px solid var(--fc-border);
        border-radius: var(--fc-radius);
        box-shadow: var(--fc-shadow-soft);
      }

      .fc-chip {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        padding: 0.4rem 0.65rem;
        border-radius: 999px;
        border: 1px solid var(--fc-border);
        background: #fff;
        font-size: 0.9rem;
        color: var(--fc-muted);
      }

      .fc-badge {
        background: rgba(14, 106, 115, 0.1);
        color: var(--fc-primary-dark);
        border: 1px solid rgba(14, 106, 115, 0.22);
        font-weight: 600;
      }

      .btn-fc-primary {
        --bs-btn-bg: var(--fc-accent);
        --bs-btn-border-color: var(--fc-accent);
        --bs-btn-color: var(--fc-text);
        --bs-btn-hover-bg: var(--fc-accent-hover);
        --bs-btn-hover-border-color: var(--fc-accent-hover);
        --bs-btn-hover-color: var(--fc-text);
        --bs-btn-active-bg: var(--fc-accent-hover);
        --bs-btn-active-border-color: var(--fc-accent-hover);
        border-radius: calc(var(--fc-radius) - 2px);
        box-shadow: 0 10px 22px rgba(239, 132, 84, 0.18);
        font-weight: 700;
      }

      .btn-fc-secondary {
        --bs-btn-bg: #fff;
        --bs-btn-border-color: var(--fc-primary);
        --bs-btn-color: var(--fc-primary);
        --bs-btn-hover-bg: var(--fc-callout);
        --bs-btn-hover-border-color: var(--fc-primary-dark);
        --bs-btn-hover-color: var(--fc-primary-dark);
        border-radius: calc(var(--fc-radius) - 2px);
        font-weight: 700;
      }

      .fc-navbar {
        background: rgba(255, 255, 255, 0.92);
        backdrop-filter: blur(10px);
        border-bottom: 1px solid var(--fc-border);
      }

      .fc-hero {
        background:
          radial-gradient(
            1200px 600px at 10% 10%,
            rgba(123, 200, 196, 0.25),
            transparent 60%
          ),
          radial-gradient(
            1200px 600px at 90% 10%,
            rgba(246, 165, 122, 0.22),
            transparent 55%
          ),
          linear-gradient(
            180deg,
            rgba(255, 247, 241, 1),
            rgba(255, 247, 241, 1)
          );
        border-bottom: 1px solid var(--fc-border);
      }

      .fc-kicker {
        color: var(--fc-primary-dark);
        font-weight: 700;
        text-transform: none;
      }

      .fc-callout {
        background: var(--fc-callout);
        border: 1px solid rgba(14, 106, 115, 0.18);
        border-left: 6px solid var(--fc-primary);
        border-radius: var(--fc-radius);
        box-shadow: none;
      }

      .fc-callout-peach {
        background: rgba(246, 165, 122, 0.18);
        border: 1px solid rgba(246, 165, 122, 0.35);
        border-left: 6px solid var(--fc-accent);
        border-radius: var(--fc-radius);
      }

      .fc-toc a {
        text-decoration: none;
      }
      .fc-toc a:hover {
        text-decoration: underline;
      }

      .form-control,
      .form-select {
        border-radius: calc(var(--fc-radius) - 2px);
        border-color: var(--fc-border);
        padding: 0.7rem 0.85rem;
      }
      .form-control:focus,
      .form-select:focus {
        border-color: rgba(14, 106, 115, 0.55);
        box-shadow: 0 0 0 0.25rem rgba(14, 106, 115, 0.15);
      }

      .fc-pill-nav .nav-link {
        border: 1px solid var(--fc-border);
        border-radius: 999px;
        padding: 0.45rem 0.75rem;
        color: var(--fc-muted);
        background: #fff;
      }
      .fc-pill-nav .nav-link.active {
        color: var(--fc-primary-dark);
        background: rgba(14, 106, 115, 0.1);
        border-color: rgba(14, 106, 115, 0.22);
        font-weight: 800;
      }

      .fc-footer {
        border-top: 1px solid var(--fc-border);
        background: rgba(255, 255, 255, 0.7);
      }

      /* Optional: "ad placeholder" style for layout testing */
      .fc-ad {
        border: 1px dashed rgba(85, 102, 112, 0.45);
        color: rgba(85, 102, 112, 0.85);
        background: rgba(255, 255, 255, 0.65);
        border-radius: var(--fc-radius);
        font-size: 0.9rem;
      }
      .fc-ad small {
        color: rgba(85, 102, 112, 0.9);
      }

      /* Better tap targets */
      .btn {
        padding: 0.75rem 1rem;
      }

      /* Subtle section separation */
      .fc-section {
        padding: 3.25rem 0;
      }

      .brand-name{
  font-weight: 700;
  letter-spacing: -0.02em;
  
  font-size: 1.08em; 
  margin-right: 0;       
}

.brand-tld{
  font-family: "Source Sans 3", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  font-weight: 700;
  color: var(--fc-muted, #556670);
  font-size: .92em;        /* slightly smaller */
  margin-left: -.5em;      /* tiny breathing room */
  padding-top: 0.1rem;
}

.brand-tld-footer {
  font-family: "Source Sans 3", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  font-weight: 700;
  color: var(--fc-muted, #556670);
  font-size: .92em;        /* slightly smaller */
  margin-left: -.1em;      /* tiny breathing room */
  padding-top: 0.1rem;
}

.bg-cta {
  background: var(--fc-primary-subtle, #f0fbfc);
  box-shadow: none;
}




      /* Accessible skip link */
      .skip-link {
        position: absolute;
        left: -999px;
        top: auto;
        width: 1px;
        height: 1px;
        overflow: hidden;
      }
      .skip-link:focus {
        left: 1rem;
        top: 1rem;
        width: auto;
        height: auto;
        z-index: 9999;
        background: #fff;
        padding: 0.75rem 1rem;
        border: 1px solid rgba(0, 0, 0, 0.15);
        border-radius: 12px;
        box-shadow: 0 8px 22px rgba(13, 38, 49, 0.1);
      }

      /* Page hero */
      .page-hero {
        background:
          radial-gradient(
            1200px 600px at 10% 10%,
            rgba(123, 200, 196, 0.2),
            transparent 60%
          ),
          radial-gradient(
            1200px 600px at 90% 10%,
            rgba(246, 165, 122, 0.16),
            transparent 55%
          ),
          linear-gradient(
            180deg,
            rgba(255, 247, 241, 1),
            rgba(255, 247, 241, 1)
          );
        border-bottom: 1px solid rgba(232, 220, 210, 0.9);
      }

      /* Card hover */
      .lift:hover {
        transform: translateY(-2px);
        transition: transform 0.18s ease;
      }

      /* Anchor offset under sticky nav */
      :target {
        scroll-margin-top: 96px;
      }


      a.nav-link.active {
        background: rgba(14, 106, 115, 0.1);
        font-weight: 900;
      }