:root {
        --nla-navy: #051426;
        --nla-navy-soft: #0c223e;
        --nla-gold: #d4a548;
        --nla-bg: #f5f7fb;
        --nla-border: #dde2ee;
        --nla-text: #1f2933;
        --nla-muted: #64748b;
        --nla-pill: #e5edff;
        --nla-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
      }

      * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }

      body {
        font-family:
          system-ui,
          -apple-system,
          BlinkMacSystemFont,
          "Segoe UI",
          sans-serif;
        background: var(--nla-bg);
        color: var(--nla-text);
        line-height: 1.6;
      }

      a {
        color: inherit;
        text-decoration: none;
      }

      .hidden {
        display: none !important;
      }

      .btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0.58rem 1.15rem;
        border-radius: 999px;
        font-size: 0.84rem;
        font-weight: 600;
        border: 1px solid transparent;
        cursor: pointer;
        transition:
          background 0.2s ease,
          color 0.2s ease,
          border-color 0.2s ease,
          box-shadow 0.2s ease,
          transform 0.08s ease;
        white-space: nowrap;
      }

      .btn-primary {
        background: linear-gradient(135deg, var(--nla-gold), #f6d68a);
        color: #111827;
        box-shadow: 0 5px 14px rgba(0, 0, 0, 0.18);
      }

      .btn-primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 7px 18px rgba(0, 0, 0, 0.24);
      }

      .pill {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        padding: 0.24rem 0.62rem;
        border-radius: 999px;
        font-size: 0.72rem;
        background: var(--nla-pill);
        color: var(--nla-navy-soft);
      }

      .pill span.icon {
        width: 14px;
        height: 14px;
        border-radius: 999px;
        border: 1px solid #cbd5ff;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 0.7rem;
      }

      main.page--forms {
        padding-bottom: 3rem;
      }

      .fd-hero-wrapper {
        background: #ffffff;
        border-bottom: 1px solid var(--nla-border);
      }

      .fd-hero {
        max-width: 1180px;
        margin: 0 auto;
        padding: 2.2rem 1.5rem 1.95rem;
        display: grid;
        grid-template-columns: minmax(0, 2.3fr) minmax(0, 2fr);
        gap: 2rem;
        align-items: flex-start;
      }

      .fd-kicker {
        font-size: 0.8rem;
        text-transform: uppercase;
        letter-spacing: 0.16em;
        color: var(--nla-muted);
        margin-bottom: 0.4rem;
      }

      .fd-title {
        font-size: 1.95rem;
        line-height: 1.25;
        margin-bottom: 0.45rem;
        color: var(--nla-navy-soft);
      }

      .fd-title span {
        color: var(--nla-gold);
      }

      .fd-subtitle {
        font-size: 0.92rem;
        color: var(--nla-muted);
        margin-bottom: 0.8rem;
        max-width: 40rem;
      }

      .fd-meta {
        font-size: 0.83rem;
        color: var(--nla-muted);
        margin-bottom: 0.8rem;
      }

      .fd-hero-right {
        border-radius: 14px;
        border: 1px solid var(--nla-border);
        background: #f9fafb;
        padding: 1.1rem 1.2rem;
        font-size: 0.83rem;
        box-shadow: var(--nla-shadow);
      }

      .fd-hero-right h3 {
        font-size: 0.92rem;
        margin-bottom: 0.35rem;
        color: var(--nla-navy-soft);
      }

      .fd-hero-right ul {
        list-style: disc;
        padding-left: 1.1rem;
        color: var(--nla-muted);
        font-size: 0.82rem;
      }

      .fd-tabs-wrapper {
        max-width: 1180px;
        margin: 1.5rem auto 0;
        padding: 0 1.5rem;
      }

      .fd-tabs {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
        margin-bottom: 0.9rem;
      }

      .fd-tab {
        padding: 0.38rem 0.82rem;
        border-radius: 999px;
        font-size: 0.8rem;
        border: 1px solid var(--nla-border);
        background: #ffffff;
        color: #000 !important;
        cursor: pointer;
        transition: all 0.18s ease;
      }

      .fd-tab.active {
        border-color: forestgreen;
        background: forestgreen;
        font-weight: 600;
        color: #fff !important;
      }

      .fd-tab.active span {
        color: #fff !important;
      }

      button.fd-tab:hover {
        background: forestgreen;
        color: #fff !important;
      }

      button.fd-tab:hover span {
        color: #fff !important;
      }

      .fd-tab span.code {
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.12em;
        color: var(--nla-muted);
        margin-left: 0.3rem;
      }

      .fd-tab-note {
        font-size: 0.79rem;
        color: var(--nla-muted);
      }

      .fd-section {
        max-width: 1180px;
        margin: 0.9rem auto 0;
        padding: 0 1.5rem;
        animation: fadeIn 0.35s ease;
      }

      @keyframes fadeIn {
        from {
          opacity: 0;
          transform: translateY(5px);
        }
        to {
          opacity: 1;
          transform: translateY(0);
        }
      }

      .fd-section-block {
        margin-bottom: 1.45rem;
      }

      .fd-section-heading {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 0.75rem;
        margin-bottom: 0.6rem;
      }

      .fd-section-heading h2 {
        font-size: 1.02rem;
        color: var(--nla-navy-soft);
      }

      .fd-section-heading span.caption {
        font-size: 0.8rem;
        color: var(--nla-muted);
      }

      .fd-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.9rem;
      }

      .fd-item {
        border-radius: 14px;
        border: 1px solid var(--nla-border);
        background: #ffffff;
        padding: 0.85rem 0.95rem 0.9rem;
        font-size: 0.83rem;
        display: flex;
        flex-direction: column;
        gap: 0.34rem;
        box-shadow: var(--nla-shadow);
      }

      .fd-item-header {
        display: flex;
        justify-content: space-between;
        gap: 0.4rem;
        align-items: baseline;
      }

      .fd-code {
        font-size: 0.75rem;
        text-transform: uppercase;
        letter-spacing: 0.12em;
        color: var(--nla-muted);
      }

      .fd-name {
        font-weight: 650;
        color: var(--nla-navy-soft);
        font-size: 0.88rem;
      }

      .fd-desc {
        font-size: 0.81rem;
        color: var(--nla-muted);
      }

      .fd-meta-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 0.55rem;
        margin-top: 0.24rem;
        flex-wrap: wrap;
      }

      .fd-tags {
        display: inline-flex;
        flex-wrap: wrap;
        gap: 0.25rem;
        font-size: 0.72rem;
      }

      .tag {
        padding: 0.12rem 0.44rem;
        border-radius: 999px;
        border: 1px solid var(--nla-border);
        background: #f9fafb;
      }

      .fd-open {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        font-size: 0.8rem;
        font-weight: 600;
        padding: 0.28rem 0.68rem;
        border-radius: 999px;
        border: 1px solid var(--nla-border);
        background: #ffffff;
      }

      .fd-open span.icon {
        font-size: 0.82rem;
      }

      @media (max-width: 900px) {
        .fd-hero {
          grid-template-columns: minmax(0, 1fr);
          padding-inline: 1.25rem;
        }

        .fd-tabs-wrapper,
        .fd-section {
          padding-inline: 1.25rem;
        }

        .fd-list {
          grid-template-columns: minmax(0, 1fr);
        }
      }

/* Refined production additions — original UI preserved */
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:1rem;top:1rem;z-index:9999;background:#fff;color:var(--nla-navy);padding:.65rem 1rem;border-radius:8px;box-shadow:var(--nla-shadow)}
.fd-tab:focus-visible,.fd-open:focus-visible,.fd-search:focus-visible,a:focus-visible{outline:3px solid rgba(212,165,72,.45);outline-offset:3px}
.fd-tools{max-width:1180px;margin:1rem auto 0;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr);gap:1rem;align-items:stretch}
.fd-search-wrap,.fd-control-card,.fd-process,.fd-library-footer{border:1px solid var(--nla-border);background:#fff;border-radius:14px;box-shadow:var(--nla-shadow)}
.fd-search-wrap{padding:1rem}.fd-search-label{display:block;color:var(--nla-navy-soft);font-size:.84rem;font-weight:650;margin-bottom:.35rem}.fd-search{width:100%;min-height:44px;border:1px solid var(--nla-border);border-radius:10px;padding:.68rem .8rem;font:inherit;color:var(--nla-text);background:#fff}.fd-search-help{margin-top:.4rem;font-size:.76rem;color:var(--nla-muted)}
.fd-control-card{padding:1rem;display:grid;gap:.22rem;font-size:.78rem;color:var(--nla-muted)}.fd-control-card strong{color:var(--nla-navy-soft);font-size:.88rem}
.fd-process{max-width:1180px;margin:1rem auto 0;padding:1rem 1.5rem 1.2rem}.fd-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.fd-process-grid article{border:1px solid var(--nla-border);border-radius:12px;padding:.85rem;background:#f9fafb}.fd-process-grid article>span{display:inline-flex;color:var(--nla-gold);font-size:.72rem;font-weight:700;margin-bottom:.25rem}.fd-process-grid strong{display:block;color:var(--nla-navy-soft);font-size:.83rem;margin-bottom:.2rem}.fd-process-grid p{color:var(--nla-muted);font-size:.76rem;line-height:1.5}
.fd-doc-meta{display:flex;flex-wrap:wrap;gap:.28rem;margin-top:.1rem}.fd-doc-meta span{padding:.14rem .42rem;border-radius:999px;background:#f8fafc;border:1px solid var(--nla-border);color:var(--nla-muted);font-size:.68rem}.fd-open:hover{border-color:var(--nla-gold);color:var(--nla-navy-soft)}
.fd-library-footer{max-width:1180px;margin:1.5rem auto 0;padding:1rem 1.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;color:var(--nla-muted);font-size:.76rem}.fd-library-footer strong,.fd-library-footer span{display:block}.fd-library-footer strong{color:var(--nla-navy-soft);margin-bottom:.2rem}.fd-library-footer a{color:var(--nla-navy-soft);text-decoration:underline;text-underline-offset:2px}
@media(max-width:900px){.fd-tools,.fd-library-footer{grid-template-columns:1fr;padding-inline:1.25rem}.fd-process{margin-inline:1.25rem}.fd-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.fd-process-grid{grid-template-columns:1fr}}
