.apply-page { color:var(--ink); background:var(--paper); }
.apply-header { display:flex; align-items:center; justify-content:space-between; min-height:84px; padding:0 5vw; background:var(--paper); border-bottom:1px solid var(--line); }
.apply-back { font-size:.82rem; text-decoration:none; border-bottom:1px solid currentColor; }
.apply-hero { display:grid; grid-template-columns:1fr 1fr; gap:10vw; padding:clamp(5rem,10vw,9rem) 7vw; color:var(--white); background:var(--ink); }
.apply-hero h1 { margin:.4rem 0 0; font:500 clamp(2.5rem,5vw,5rem)/1.35 var(--serif); }
.apply-hero-copy { align-self:end; max-width:38rem; }
.apply-hero-copy > p { margin-top:0; font-family:var(--serif); font-size:clamp(1.1rem,1.7vw,1.4rem); line-height:2; }
.apply-hero-copy ol { list-style:none; margin:2.5rem 0 0; padding:0; border-top:1px solid rgba(255,255,255,.2); }
.apply-hero-copy li { display:grid; grid-template-columns:3rem 1fr; padding:.9rem 0; border-bottom:1px solid rgba(255,255,255,.2); }
.apply-hero-copy li span { color:var(--gold); font-family:var(--display); }
.join-guidelines { padding:clamp(5rem,9vw,8rem) 7vw; background:#eee8dc; }
.guidelines-intro { display:grid; grid-template-columns:.6fr 1fr 1.1fr; align-items:end; gap:3rem; padding-bottom:2rem; border-bottom:1px solid var(--line); }
.guidelines-intro .eyebrow, .guidelines-intro h2, .guidelines-intro > p { margin:0; }
.guidelines-intro h2 { font:500 clamp(1.8rem,3.2vw,3rem)/1.5 var(--serif); }
.guidelines-intro > p { color:#4f4a43; font-size:.95rem; line-height:1.9; }
.guidelines-list { display:grid; grid-template-columns:1fr 1fr; border-left:1px solid var(--line); }
.guidelines-list article { display:grid; grid-template-columns:2.4rem 1fr; gap:1rem; padding:2rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,.28); }
.guidelines-list article > span { color:var(--gold); font-family:var(--display); letter-spacing:.1em; }
.guidelines-list h3 { margin:0 0 .55rem; font:500 1.22rem/1.5 var(--serif); }
.guidelines-list p { margin:0; color:#4f4a43; font-size:.9rem; line-height:1.8; }
.guidelines-enforcement { display:grid; grid-template-columns:minmax(180px,.42fr) 1fr; gap:2rem; padding:1.35rem 2rem; color:#4f4a43; border:1px solid var(--line); border-top:0; background:rgba(255,255,255,.54); }
.guidelines-enforcement strong { color:var(--wine); font:600 .78rem/1.7 var(--sans); letter-spacing:.04em; }
.guidelines-enforcement p { margin:0; font-size:.82rem; line-height:1.8; }
.guidelines-closing { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:1.5rem 2rem; color:var(--white); background:var(--ink); }
.guidelines-closing p { max-width:43rem; margin:0; font-family:var(--serif); font-size:1rem; line-height:1.8; }
.guidelines-closing strong { flex:0 0 auto; color:var(--gold); font-size:.78rem; letter-spacing:.04em; }
.apply-form-section { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:8vw; padding:clamp(5rem,9vw,9rem) 7vw; }
.apply-form-intro { position:sticky; top:3rem; align-self:start; }
.apply-form-intro h2 { margin:.5rem 0 1.5rem; font:500 clamp(2rem,3.5vw,3.5rem)/1.5 var(--serif); }
.application-form { display:grid; gap:1.6rem; }
.form-honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; }
.application-form label { display:grid; gap:.55rem; font-weight:500; }
.application-form label > span:first-of-type:not(:only-child) { display:inline; }
.application-form label .optional { color:rgba(18,20,23,.5); background:rgba(18,20,23,.07); }
.application-form label > span:first-of-type { color:var(--wine); font-size:.75rem; font-weight:600; }
.application-form input:not([type="checkbox"]), .application-form select, .application-form textarea { width:100%; min-height:3.25rem; padding:.8rem 1rem; color:var(--ink); background:rgba(255,255,255,.62); border:1px solid rgba(18,20,23,.25); border-radius:0; font:inherit; }
.application-form textarea { resize:vertical; }
.application-form input:focus, .application-form select:focus, .application-form textarea:focus { outline:2px solid var(--gold); outline-offset:2px; }
.application-policy { margin-top:1rem; padding:1.75rem; color:var(--white); background:var(--ink); }
.application-policy h3 { margin:0 0 .75rem; font:500 1.25rem/1.5 var(--serif); }
.application-policy ul { margin:0; padding-left:1.2rem; }
.consent { display:grid !important; grid-template-columns:1.2rem 1fr; align-items:start; gap:.8rem !important; font-weight:400 !important; line-height:1.7; }
.consent input { width:1.1rem; height:1.1rem; margin-top:.3rem; accent-color:var(--wine); }
.consent span { color:inherit !important; font-size:.9rem !important; font-weight:400 !important; }
.apply-submit { min-height:4rem; padding:1rem 2rem; color:var(--white); background:var(--wine); border:0; font:600 1rem var(--sans); letter-spacing:.08em; cursor:pointer; }
.apply-submit:hover { background:#57232d; }
.apply-submit:disabled { cursor:wait; opacity:.68; }
.submit-note { margin:-.8rem 0 0; color:rgba(18,20,23,.65); font-size:.82rem; }
.submit-note.is-success { margin:.2rem 0 0; padding:1rem 1.15rem; color:#244c36; background:#e4efe8; border-left:3px solid #4d8063; font-weight:500; line-height:1.7; }
.submit-note.is-error { margin:.2rem 0 0; padding:1rem 1.15rem; color:#742d37; background:#f4e5e7; border-left:3px solid var(--wine); font-weight:500; line-height:1.7; }
.apply-footer { display:flex; justify-content:space-between; align-items:center; padding:2.25rem 7vw; color:var(--white); background:var(--ink); font-size:.82rem; }
.apply-footer a { text-decoration:none; border-bottom:1px solid currentColor; }
@media (max-width:800px) {
  .apply-header { min-height:72px; }
  .apply-header .brand-name { display:none; }
  .apply-hero, .apply-form-section { grid-template-columns:1fr; gap:3rem; padding-left:6vw; padding-right:6vw; }
  .guidelines-intro { grid-template-columns:1fr; gap:1rem; }
  .guidelines-list { grid-template-columns:1fr; border-left:0; }
  .guidelines-list article { border-left:1px solid var(--line); }
  .guidelines-enforcement { grid-template-columns:1fr; gap:.5rem; }
  .guidelines-closing { align-items:flex-start; flex-direction:column; }
  .apply-form-intro { position:static; }
  .field-row { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .apply-hero { padding-top:4rem; padding-bottom:4rem; }
  .application-policy { padding:1.35rem; }
  .apply-footer { align-items:flex-start; flex-direction:column; gap:.6rem; }
}
