 :root {
      --navy: #1B3A8C;
      --navy-dk: #0f2260;
      --navy-lt: #eef2fb;
      --gold: #8B7D3A;
      --gold-lt: #f8f4e8;
      --white: #ffffff;
      --chalk: #FAFAF8;
      --linen: #F4F1EC;
      --sand: #EDE9E1;
      --warm-gray: #D6D0C8;
      --mid-gray: #9A9590;
      --text: #1C1C1A;
      --text-muted: #6B6660;
      --f-display: 'Tenor Sans', Georgia, serif;
      --f-body: 'Jost', 'Inter', sans-serif;
    }

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

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: var(--f-body);
      background: var(--white);
      color: var(--text);
      -webkit-font-smoothing: antialiased;
    }

    a {
      text-decoration: none;
      color: var(--navy);
    }

    a:hover {
      text-decoration: underline;
    }

    /* NAV */
    .sp-nav {
      position: sticky;
      top: 0;
      z-index: 100;
      height: 72px;
      display: flex;
      align-items: center;
      background: rgba(250, 250, 248, .96);
      backdrop-filter: blur(20px);
      border-bottom: 1px solid var(--sand);
    }

    .sp-nav-inner {
      max-width: 1320px;
      margin: 0 auto;
      padding: 0 72px;
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .sp-logo {
      font-family: var(--f-display);
      font-size: 20px;
      color: var(--text);
    }

    .sp-logo span {
      color: var(--gold);
    }

    .sp-logo-sub {
      font-size: 9px;
      letter-spacing: 3px;
      text-transform: uppercase;
      color: var(--mid-gray);
      margin-top: 2px;
      font-family: var(--f-body);
    }


    /* HERO STRIP — same dark background as Privacy Policy */
    .page-hero {
      background: var(--text);
      padding: 72px 0 56px;
      position: relative;
      overflow: hidden;
    }

    .page-hero::before {
      content: '';
      position: absolute;
      top: -60px;
      right: -60px;
      width: 320px;
      height: 320px;
      border: 1px solid rgba(139, 125, 58, .15);
      border-radius: 50%;
    }

    .page-hero::after {
      content: '';
      position: absolute;
      bottom: -40px;
      left: 10%;
      width: 180px;
      height: 180px;
      border: 1px solid rgba(139, 125, 58, .1);
      border-radius: 50%;
    }

    .page-hero-inner {
      max-width: 1320px;
      margin: 0 auto;
      padding: 0 72px;
    }

    .page-hero-label {
      font-size: 9px;
      font-weight: 500;
      letter-spacing: 3.5px;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 16px;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .page-hero-label::after {
      content: '';
      width: 32px;
      height: 1px;
      background: var(--gold);
    }

    .page-hero h1 {
      font-family: var(--f-display);
      font-size: clamp(36px, 4vw, 58px);
      color: #fff;
      font-weight: 400;
      line-height: 1.1;
      margin-bottom: 16px;
    }

    .page-hero h1 em {
      color: #c9b96a;
      font-style: italic;
    }

    .page-hero-meta {
      font-size: 12px;
      color: rgba(255, 255, 255, .35);
      letter-spacing: 1px;
    }

    /* CONTENT */
    .doc-wrap {
      max-width: 900px;
      margin: 0 auto;
      padding: 80px 72px 100px;
    }

    /* TOC — same chalk/navy-left-border style as Privacy Policy */
    .doc-toc {
      background: var(--chalk);
      border: 1px solid var(--sand);
      border-left: 3px solid var(--navy);
      padding: 28px 32px;
      margin-bottom: 64px;
    }

    .doc-toc h3 {
      font-size: 10px;
      letter-spacing: 3px;
      text-transform: uppercase;
      color: var(--navy);
      font-family: var(--f-body);
      font-weight: 500;
      margin-bottom: 16px;
    }

    .doc-toc ol {
      padding-left: 18px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 6px 32px;
    }

    .doc-toc li {
      font-size: 13px;
      color: var(--text-muted);
    }

    .doc-toc a {
      color: var(--navy);
      font-size: 13px;
    }

    .doc-toc a:hover {
      text-decoration: underline;
    }

    .doc-section {
      margin-bottom: 56px;
      scroll-margin-top: 100px;
    }

    .doc-section-num {
      font-size: 9px;
      font-weight: 500;
      letter-spacing: 3px;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 10px;
    }

    .doc-section h2 {
      font-family: var(--f-display);
      font-size: 26px;
      color: var(--text);
      font-weight: 400;
      margin-bottom: 6px;
      line-height: 1.2;
    }

    .doc-rule {
      width: 40px;
      height: 1px;
      background: var(--gold);
      margin: 14px 0 24px;
    }

    .doc-section p {
      font-size: 14.5px;
      color: var(--text-muted);
      line-height: 1.9;
      margin-bottom: 14px;
    }

    .doc-section ul {
      padding-left: 0;
      margin-bottom: 14px;
    }

    .doc-section ul li {
      display: flex;
      gap: 12px;
      align-items: flex-start;
      font-size: 14px;
      color: var(--text-muted);
      line-height: 1.8;
      padding: 8px 0;
      border-bottom: 1px solid var(--sand);
    }

    .doc-section ul li:last-child {
      border-bottom: none;
    }

    .doc-section ul li::before {
      content: '—';
      color: var(--gold);
      flex-shrink: 0;
      margin-top: 1px;
    }

    /* Gold highlight — same as Privacy Policy */
    .doc-highlight {
      background: var(--gold-lt);
      border: 1px solid rgba(139, 125, 58, .2);
      border-left: 3px solid var(--gold);
      padding: 20px 24px;
      margin: 24px 0;
    }

    .doc-highlight p {
      margin: 0;
      font-size: 13.5px;
      color: var(--text);
      line-height: 1.8;
    }

    /* Warning — same red-accent style */
    .doc-warning {
      background: #fff8f7;
      border: 1px solid #f5c5c0;
      border-left: 3px solid #c0392b;
      padding: 18px 22px;
      margin: 20px 0;
    }

    .doc-warning p {
      margin: 0;
      font-size: 13.5px;
      color: #7a2020;
      line-height: 1.75;
    }

    /* Table */
    .doc-table {
      width: 100%;
      border-collapse: collapse;
      margin: 24px 0 14px;
      font-size: 13.5px;
    }

    .doc-table th {
      background: var(--text);
      color: rgba(255, 255, 255, .7);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: 2px;
      text-transform: uppercase;
      padding: 12px 16px;
      text-align: left;
    }

    .doc-table td {
      padding: 13px 16px;
      border-bottom: 1px solid var(--sand);
      color: var(--text-muted);
      vertical-align: top;
    }

    .doc-table tr:last-child td {
      border-bottom: none;
    }

    .doc-table tr:hover td {
      background: var(--chalk);
    }

    /* Contact box — same as Privacy Policy */
    .doc-contact-box {
      background: var(--text);
      padding: 40px;
      margin-top: 16px;
    }

    .doc-contact-box h4 {
      font-family: var(--f-display);
      font-size: 20px;
      color: #fff;
      margin-bottom: 6px;
    }

    .doc-contact-box p {
      color: rgba(255, 255, 255, .5);
      font-size: 13.5px;
      margin-bottom: 16px;
    }

    .doc-contact-box a {
      color: var(--gold);
    }

    /* FOOTER */
    .sp-footer {
      background: var(--text);
      padding: 0px 0 0;
    }

    .sp-footer-inner {
      max-width: 1320px;
      margin: 0 auto;
      padding: 0 72px 40px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 16px;
    }

    .sp-footer-brand {
      font-family: var(--f-display);
      font-size: 20px;
      color: #fff;
    }

    .sp-footer-brand span {
      color: var(--gold);
    }

    .sp-footer-links {
      display: flex;
      gap: 24px;
    }

    .sp-footer-links a {
      font-size: 11px;
      /* color: rgba(255, 255, 255, .3); */
      letter-spacing: .5px;
      transition: color .15s;
      text-decoration: none;
      color: #ffffffcf;
    }

    .sp-footer-links a:hover {
      color: #ffffffb1;
    }

    .sp-footer-bottom-bar {
      border-top: 1px solid rgba(255, 255, 255, .07);
      max-width: 1320px;
      margin: 0 auto;
      padding: 16px 72px;
      font-size: 11px;
      color: rgba(255, 255, 255, .2);
      letter-spacing: .3px;
    }

    @media(max-width:900px) {

      .sp-nav-inner,
      .page-hero-inner,
      .doc-wrap,
      .sp-footer-inner,
      .sp-footer-bottom-bar {
        padding-left: 24px;
        padding-right: 24px;
      }

      .doc-toc ol {
        grid-template-columns: 1fr;
      }
    }

    @media(max-width:600px) {
      .doc-wrap {
        padding: 48px 20px 80px;
      }

      .page-hero-inner,
      .sp-nav-inner {
        padding-left: 20px;
        padding-right: 20px;
      }

      .sp-footer-inner {
        padding: 0 20px 32px;
      }

      .sp-footer-bottom-bar {
        padding: 14px 20px;
      }

      .doc-table {
        font-size: 12px;
      }
    }