﻿:root {
        --ink: #101819;
        --muted: #4a5c5b;
        --line: #d8e6e3;
        --paper: #f6faf8;
        --white: #ffffff;
        --teal: #0f7f7a;
        --teal-light: #8ee0d8;
        --gold: #d7a84d;
        --coral: #d85c49;
      }

      * {
        box-sizing: border-box;
      }

      html {
        scroll-behavior: smooth;
      }

      body {
        margin: 0;
        background: var(--paper);
        color: var(--ink);
        font-family: Arial, Helvetica, sans-serif;
      }

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

      img {
        max-width: 100%;
      }

      button,
      input,
      select {
        font: inherit;
      }

      :focus-visible {
        outline: 3px solid var(--gold);
        outline-offset: 3px;
      }

      .hero {
        position: relative;
        min-height: 78svh;
        overflow: hidden;
        background: #0d1516;
        color: #fff;
      }

      .hero img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        opacity: 0.6;
      }

      .hero::after {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(7, 17, 18, 0.72);
      }

      .wrap {
        width: min(100% - 40px, 1180px);
        margin: 0 auto;
      }

      .nav {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
        padding: 20px 0;
      }

      .brand {
        display: flex;
        align-items: center;
        gap: 12px;
        flex: 0 1 auto;
        min-width: 0;
      }

      .logo-mark {
        display: block;
        width: 50px;
        height: 50px;
        flex: 0 0 50px;
      }

      .brand-copy {
        display: block;
        min-width: 0;
        line-height: 1;
      }

      .brand-name {
        display: block;
        color: #fff;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 21px;
        font-weight: 700;
        letter-spacing: 0;
        white-space: nowrap;
      }

      .brand-subtitle {
        display: block;
        margin-top: 6px;
        color: var(--gold);
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 2px;
        text-transform: uppercase;
        white-space: nowrap;
      }

      .sr-only {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
      }

      .links {
        display: flex;
        gap: 24px;
        color: rgba(255, 255, 255, 0.82);
        font-size: 14px;
      }

      .links a:hover {
        color: #fff;
      }

      .hero-grid {
        position: relative;
        z-index: 2;
        display: grid;
        grid-template-columns: 1.15fr 0.85fr;
        align-items: center;
        gap: 40px;
        min-height: calc(78svh - 82px);
        padding: 18px 0 64px;
      }

      .pill {
        display: inline-flex;
        border: 1px solid rgba(255, 255, 255, 0.25);
        background: rgba(255, 255, 255, 0.1);
        padding: 9px 12px;
        color: rgba(255, 255, 255, 0.86);
        font-size: 14px;
      }

      h1,
      h2,
      h3,
      p {
        margin: 0;
      }

      h1 {
        max-width: 780px;
        margin-top: 18px;
        font-size: 64px;
        line-height: 1.02;
      }

      .hero-copy {
        max-width: 690px;
        margin-top: 24px;
        color: rgba(255, 255, 255, 0.84);
        font-size: 18px;
        line-height: 1.72;
      }

      .actions {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-top: 32px;
      }

      .button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 46px;
        border-radius: 8px;
        padding: 12px 20px;
        font-size: 14px;
        font-weight: 700;
      }

      .button.primary {
        background: var(--gold);
        color: var(--ink);
      }

      .button.secondary {
        border: 1px solid rgba(255, 255, 255, 0.28);
        background: rgba(255, 255, 255, 0.1);
        color: #fff;
      }

      .snapshot {
        border: 1px solid rgba(255, 255, 255, 0.22);
        background: rgba(7, 17, 18, 0.66);
        padding: 22px;
        box-shadow: 0 24px 70px rgba(0, 0, 0, 0.35);
      }

      .snapshot-title {
        color: var(--teal-light);
        font-size: 14px;
        font-weight: 700;
      }

      .snapshot dl {
        display: grid;
        gap: 16px;
        margin: 20px 0 0;
      }

      .snapshot div {
        padding-bottom: 16px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);
      }

      .snapshot div:last-child {
        border-bottom: 0;
        padding-bottom: 0;
      }

      .snapshot dt {
        font-weight: 700;
      }

      .snapshot dd {
        margin: 6px 0 0;
        color: rgba(255, 255, 255, 0.82);
        font-size: 14px;
        line-height: 1.6;
      }

      .notice {
        background: var(--teal);
        color: #fff;
        padding: 16px 0;
      }

      .notice .wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
      }

      .notice p {
        max-width: 920px;
        color: rgba(255, 255, 255, 0.9);
        font-size: 14px;
        line-height: 1.55;
      }

      section.band {
        padding: 76px 0;
      }

      .white {
        background: #fff;
      }

      .dark {
        background: var(--ink);
        color: #fff;
      }

      .eyebrow {
        color: var(--teal);
        font-size: 14px;
        font-weight: 700;
      }

      .dark .eyebrow {
        color: var(--teal-light);
      }

      h2 {
        margin-top: 12px;
        font-size: 46px;
        line-height: 1.08;
      }

      .lead {
        max-width: 760px;
        margin-top: 18px;
        color: var(--muted);
        font-size: 18px;
        line-height: 1.72;
      }

      .dark .lead,
      .dark p {
        color: rgba(255, 255, 255, 0.82);
      }

      .programs,
      .standards,
      .industry-grid {
        display: grid;
        gap: 20px;
        margin-top: 40px;
      }

      .programs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .standards {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .section-head {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 28px;
      }

      .section-head .lead {
        max-width: 520px;
      }

      .industry-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }

      .industry-card {
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 8px;
        background: var(--paper);
        box-shadow: 0 10px 28px rgba(16, 24, 25, 0.05);
      }

      .industry-card img {
        display: block;
        width: 100%;
        aspect-ratio: 4 / 3;
        object-fit: cover;
      }

      .industry-card div {
        padding: 20px;
      }

      .industry-card h3 {
        font-size: 18px;
      }

      .industry-card p {
        margin-top: 12px;
        color: var(--muted);
        font-size: 14px;
        line-height: 1.68;
      }

      .card {
        border: 1px solid var(--line);
        border-radius: 8px;
        background: #fff;
        padding: 24px;
        box-shadow: 0 10px 28px rgba(16, 24, 25, 0.05);
      }

      .card h3 {
        font-size: 20px;
      }

      .card p {
        margin-top: 14px;
        color: var(--muted);
        line-height: 1.68;
      }

      .card .note {
        margin-top: 18px;
        border-top: 1px solid #e3eeeb;
        padding-top: 14px;
        color: var(--teal);
        font-size: 14px;
        font-weight: 700;
      }

      .split {
        display: grid;
        grid-template-columns: 0.82fr 1.18fr;
        gap: 44px;
      }

      .steps {
        display: grid;
        gap: 16px;
        margin: 0;
        padding: 0;
        list-style: none;
      }

      .steps li {
        display: flex;
        gap: 18px;
        align-items: center;
        border: 1px solid var(--line);
        border-radius: 8px;
        background: var(--paper);
        padding: 18px;
        color: #354746;
        line-height: 1.65;
      }

      .steps span {
        display: inline-flex;
        width: 40px;
        height: 40px;
        flex: 0 0 40px;
        align-items: center;
        justify-content: center;
        border-radius: 8px;
        background: var(--ink);
        color: #fff;
        font-size: 14px;
        font-weight: 700;
      }

      .bullets {
        margin: 18px 0 0;
        padding: 0;
        list-style: none;
      }

      .bullets li {
        display: flex;
        gap: 12px;
        margin-top: 12px;
        color: #354746;
        line-height: 1.55;
      }

      .dot {
        width: 8px;
        height: 8px;
        margin-top: 8px;
        flex: 0 0 8px;
        border-radius: 50%;
        background: var(--teal);
      }

      .risk-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 44px;
      }

      .risk-copy {
        display: grid;
        gap: 16px;
        line-height: 1.72;
      }

      form {
        border: 1px solid var(--line);
        border-radius: 8px;
        background: var(--paper);
        padding: 24px;
        box-shadow: 0 10px 28px rgba(16, 24, 25, 0.05);
      }

      .fields {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
      }

      label {
        display: grid;
        gap: 8px;
        font-size: 14px;
        font-weight: 700;
      }

      input,
      select {
        min-height: 46px;
        border: 1px solid #bfd2cf;
        border-radius: 8px;
        background: #fff;
        color: var(--ink);
        padding: 12px 14px;
        font-weight: 400;
      }

      input:focus,
      select:focus {
        border-color: var(--teal);
        outline: none;
      }

      .check {
        display: flex;
        gap: 12px;
        margin-top: 20px;
        color: #354746;
        font-size: 14px;
        font-weight: 400;
        line-height: 1.6;
      }

      .check input {
        min-height: 16px;
        width: 16px;
        margin-top: 3px;
        padding: 0;
      }

      .submit {
        border: 0;
        margin-top: 22px;
        background: var(--ink);
        color: #fff;
        cursor: pointer;
      }

      footer {
        border-top: 1px solid var(--line);
        padding: 42px 0;
        color: var(--muted);
        font-size: 14px;
        line-height: 1.65;
      }

      .footer-grid {
        display: grid;
        grid-template-columns: 1fr 1.4fr;
        gap: 32px;
      }

      footer strong {
        color: var(--ink);
      }

      footer p + p {
        margin-top: 12px;
      }

      @media (max-width: 900px) {
        .links {
          display: none;
        }

        .hero-grid,
        .split,
        .risk-grid,
        .footer-grid {
          grid-template-columns: 1fr;
        }

        .programs,
        .standards,
        .industry-grid {
          grid-template-columns: 1fr;
        }

        .section-head {
          align-items: flex-start;
          flex-direction: column;
        }

        h1 {
          font-size: 46px;
        }

        h2 {
          font-size: 36px;
        }

        .notice .wrap {
          align-items: flex-start;
          flex-direction: column;
          gap: 6px;
        }
      }

      @media (max-width: 560px) {
        .wrap {
          width: min(100% - 28px, 1180px);
        }

        .hero-grid {
          padding-bottom: 42px;
        }

        h1 {
          font-size: 38px;
        }

        h2 {
          font-size: 31px;
        }

        .logo-mark {
          width: 42px;
          height: 42px;
          flex-basis: 42px;
        }

        .brand-name {
          font-size: 17px;
        }

        .brand-subtitle {
          font-size: 9px;
          letter-spacing: 1.4px;
        }

        .fields {
          grid-template-columns: 1fr;
        }

        .actions .button,
        .submit {
          width: 100%;
        }
      }
