  :root{
    --bg:#060503;
    --bg-2:#0D0907;
    --bg-3:#141009;
    --text:#EDE4CF;
    --text-2:rgba(237,228,207,.66);
    --text-3:rgba(237,228,207,.40);
    --red:#C41515;
    --red-bright:#E02020;
    --gold:#B8903A;
    --line:rgba(237,228,207,.12);
    --display:"Fraunces",Georgia,serif;
    --body:"Inter",system-ui,sans-serif;
    --mono:"JetBrains Mono",monospace;
    --ease:cubic-bezier(.2,.7,.2,1);
  }

  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;min-height:100vh;color:var(--text);font-family:var(--body);font-size:16px;line-height:1.55;
    background:
      radial-gradient(circle at 88% 8%,rgba(196,21,21,.20),transparent 34vw),
      radial-gradient(circle at 10% 82%,rgba(184,144,58,.09),transparent 28vw),
      var(--bg);
  }
  a{color:inherit;text-decoration:none}
  button,input,select,textarea{font:inherit}

  .nav{border-bottom:1px solid var(--line);background:rgba(6,5,3,.88);backdrop-filter:blur(12px)}
  .nav-inner{width:min(1180px,calc(100% - 40px));min-height:76px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
  .wordmark img{height:32px;width:auto;display:block}
  .back{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-2);transition:color .2s ease}
  .back:hover{color:var(--text)}

  .page{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:72px 0 88px;display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:start}
  .intro{position:sticky;top:40px;padding-top:22px}
  .eyebrow{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--red-bright);margin-bottom:20px}
  h1,h2{font-family:var(--display);font-weight:500;line-height:1.02;letter-spacing:-.035em;margin:0}
  h1{font-size:clamp(48px,6vw,84px)}
  h1 em,h2 em{color:var(--red-bright);font-weight:400}
  .lede{font-size:17px;color:var(--text-2);max-width:42ch;margin:28px 0 0}
  .program-facts{margin:38px 0 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:14px}
  .fact{display:flex;justify-content:space-between;gap:20px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
  .fact span{color:var(--text-3)}
  .fact strong{font-weight:500;color:var(--text);text-align:right}
  .note{margin:24px 0 0;color:var(--text-3);font-size:13px;max-width:48ch}

  .form-card{position:relative;background:var(--bg-2);border:1px solid var(--line);padding:42px}
  .form-card::before{content:"";position:absolute;left:-1px;top:-1px;width:88px;height:2px;background:var(--red)}
  .form-card h2{font-size:clamp(34px,4vw,50px);margin-bottom:12px}
  .form-intro{color:var(--text-2);margin:0 0 34px;max-width:55ch}
  .grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 22px}
  .field{display:flex;flex-direction:column;gap:9px}
  .field.full{grid-column:1/-1}
  .field label{font-family:var(--mono);font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-2)}
  .field input,.field select,.field textarea{
    width:100%;border:1px solid var(--line);border-radius:0;background:var(--bg-3);color:var(--text);padding:14px 15px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;
  }
  .field textarea{resize:vertical;min-height:120px;line-height:1.55}
  .field input::placeholder,.field textarea::placeholder{color:var(--text-3)}
  .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--red-bright);box-shadow:0 0 0 2px rgba(224,32,32,.12)}
  .field select option{background:var(--bg-3);color:var(--text)}
  .consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);color:var(--text-2);font-size:13px;cursor:pointer}
  .consent input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--red);flex:0 0 auto}
  .hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
  .error{grid-column:1/-1;display:none;margin:0;color:#ff7777;font-family:var(--mono);font-size:10px;letter-spacing:.04em}
  .submit{grid-column:1/-1;border:1px solid var(--red);background:var(--red);color:var(--text);padding:18px 24px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:all .25s var(--ease)}
  .submit:hover{background:var(--red-bright);border-color:var(--red-bright);transform:translateY(-1px)}
  .submit:disabled{opacity:.58;cursor:progress;transform:none}
  .fine{grid-column:1/-1;margin:0;text-align:center;color:var(--text-3);font-size:12px}

  .success{display:none;text-align:center;padding:52px 12px}
  .success.show{display:block}
  .success .check{width:52px;height:52px;margin:0 auto 24px;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font-size:24px}
  .success h2{margin-bottom:18px}
  .success p{color:var(--text-2);max-width:46ch;margin:0 auto 28px}
  .success a{display:inline-flex;padding:14px 18px;border:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;transition:all .2s ease}
  .success a:hover{border-color:var(--text);background:var(--text);color:var(--bg)}

  @media (max-width:850px){
    .page{grid-template-columns:1fr;gap:38px;padding:44px 0 64px}
    .intro{position:static;padding-top:0}
  }
  @media (max-width:580px){
    .nav-inner,.page{width:min(100% - 28px,1180px)}
    .nav-inner{min-height:66px}
    .back{font-size:9px;letter-spacing:.1em}
    .form-card{padding:28px 20px}
    .grid{grid-template-columns:1fr;gap:20px}
    .field.full,.consent,.error,.submit,.fine{grid-column:auto}
    .fact{flex-direction:column;gap:4px}
    .fact strong{text-align:left}
  }
