    /* --ink/--gold/--card sourced from tokens.css; --muted/--line/--bg are apply-specific (no exact token) */
    :root { --ink:var(--ed-ink); --gold:var(--ed-gold); --muted:#6b6b6b; --line:#e8e0c8; --bg:#fbfaf5; --card:var(--ed-surface); --radius:3px; }
    * { box-sizing:border-box; }
    body { margin:0; font-family:var(--font-body); background:var(--bg); color:var(--ink); -webkit-font-smoothing:antialiased; }

    .nav { background:var(--bg); border-bottom:0.5px solid var(--line); padding:14px 28px; display:flex; align-items:center; justify-content:space-between; }
    .nav .brand { font-family:var(--font-heading); font-size:1.25rem; font-weight:600; color:var(--ink); display:flex; align-items:center; gap:9px; text-decoration:none; }
    .nav .brand .seal { display:inline-block; width:30px; height:30px; background-color:var(--gold); -webkit-mask:url(/img/brand/MySpaceNYC-Logo-forest-512px.png) center / contain no-repeat; mask:url(/img/brand/MySpaceNYC-Logo-forest-512px.png) center / contain no-repeat; -webkit-mask-mode:alpha; mask-mode:alpha; }
    .nav .brand em { color:var(--gold); font-style:italic; font-weight:500; }
    .nav .links { display:flex; gap:18px; font-size:0.78rem; }
    .nav .links a { color:var(--muted); text-decoration:none; }
    .nav .links a:hover { color:var(--ink); }
    @media(max-width:680px){ .nav { padding:12px 16px; } .nav .links { display:none; } }

    .apply-wrap { max-width: 680px; margin: 0 auto; padding: 36px 24px 64px; }
    @media(max-width:680px){ .apply-wrap { padding: 22px 14px 48px; } }

    .apply-wrap h1 { font-family:var(--font-heading); font-size:2.4rem; font-weight:600; text-align:center; margin: 0 0 8px; letter-spacing:-0.01em; }
    @media(max-width:680px){ .apply-wrap h1 { font-size:1.9rem; } }

    .apply-sub { text-align:center; color: var(--muted); font-size: 0.88rem; margin-bottom: 28px; line-height:1.5; }
    .apply-sub a { color: var(--gold); text-decoration: none; font-weight:500; }
    .apply-sub a:hover { text-decoration: underline; }

    .form-section { background: var(--card); border: 0.5px solid var(--line); border-radius: var(--radius); padding: 22px 22px 14px; margin-bottom: 14px; }
    @media(max-width:680px){ .form-section { padding: 20px 18px 10px; } }

    .form-section h3 { font-family:var(--font-heading); font-size: 1.25rem; font-weight: 600; margin:0 0 16px; padding-bottom: 8px; border-bottom: 1px solid var(--line); color: var(--ink); }

    .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 14px; }
    @media (max-width: 600px) { .form-row { grid-template-columns: 1fr; gap: 12px; } }

    .form-field { margin-bottom: 14px; }
    .form-row .form-field { margin-bottom: 0; }
    .form-field label { display:block; font-size: 0.72rem; font-weight: 500; color: var(--muted); margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.06em; }
    .form-field input, .form-field select, .form-field textarea {
      width:100%; padding:11px 13px; border:1px solid #d8d2c2; border-radius:2px;
      font-size:16px; font-family: var(--font-body); color: var(--ink); background:#fff;
      min-height:42px; transition: border-color 0.15s, box-shadow 0.15s;
    }
    .form-field textarea { min-height: 90px; resize: vertical; line-height:1.5; }
    .form-field input:focus, .form-field select:focus, .form-field textarea:focus {
      border-color: var(--gold); outline:none; box-shadow: 0 0 0 3px rgba(160,136,48,0.12);
    }

    .submit-btn {
      width:100%; display:flex; align-items:center; justify-content:center;
      padding: 14px 22px; min-height: 48px;
      background: var(--ink); color:#fff; border:none; border-radius:2px;
      font-family: var(--font-body); font-size: 0.92rem; font-weight: 500;
      letter-spacing: 0.04em; cursor:pointer; transition: background 0.15s;
      margin-top: 6px;
    }
    .submit-btn:hover:not(:disabled) { background: var(--gold); }
    .submit-btn:disabled { opacity: 0.5; cursor: not-allowed; }

    .success-msg {
      background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--gold);
      border-radius: var(--radius); padding: 28px 24px; text-align: center;
      color: var(--ink); display: none; font-size: 0.95rem; line-height: 1.6;
    }
    .success-msg b { font-family:var(--font-heading); font-size:1.1rem; }

    .legal { text-align:center; color: var(--muted); font-size: 0.7rem; margin-top:18px; line-height:1.5; }
