.application-page { padding: var(--space-xl) 0 var(--space-2xl); }
.application-shell { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--space-lg); align-items: start; }
.application-intro { position: sticky; top: 7rem; }
.application-intro h1 { margin-top: .45rem; max-width: 12ch; }
.application-intro .text-lead { margin-top: .8rem; max-width: 34rem; }
.application-map { margin-top: var(--space-lg); display: grid; gap: .7rem; }
.application-map__item { display:flex; gap:.75rem; align-items:flex-start; padding:.8rem .9rem; border:1px solid var(--color-border); background:var(--color-surface); border-radius:var(--radius-md); }
.application-map__num { width:1.7rem; height:1.7rem; flex:none; display:grid; place-items:center; border-radius:50%; background:var(--color-primary-light); color:var(--color-primary); font:600 .72rem var(--font-mono); }
.application-map__item strong { display:block; font-size:.82rem; }
.application-map__item span { display:block; margin-top:.15rem; color:var(--color-text-soft); font-size:.73rem; }
.application-card { padding: clamp(1.25rem, 3vw, 2rem); }
.application-card__head { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; margin-bottom:var(--space-md); }
.application-card__head h2 { font-size:1.25rem; }
.application-card__head p { margin-top:.3rem; color:var(--color-text-soft); font-size:.8rem; }
.application-section { padding-top:var(--space-md); margin-top:var(--space-md); border-top:1px solid var(--color-border); }
.application-section:first-of-type { border-top:0; padding-top:0; margin-top:0; }
.application-section h3 { font-size:.95rem; margin-bottom:.75rem; }
.application-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
.application-field { display:flex; flex-direction:column; gap:.35rem; }
.application-field--full { grid-column:1 / -1; }
.application-field label { font-size:.75rem; font-weight:600; color:var(--color-text-soft); }
.application-field .input, .application-field select, .application-field textarea {
  width:100%; border:1px solid var(--color-border-strong); border-radius:var(--radius-sm);
  background:var(--color-surface-alt); padding:.7rem .8rem; outline:0;
}
.application-field textarea { min-height:7rem; resize:vertical; }
.application-field .input:focus, .application-field select:focus, .application-field textarea:focus {
  border-color:var(--color-secondary); box-shadow:0 0 0 3px var(--color-primary-light);
}
.application-choice-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.6rem; }
.application-choice { position:relative; }
.application-choice input { position:absolute; opacity:0; pointer-events:none; }
.application-choice label { display:block; height:100%; padding:.8rem; border:1px solid var(--color-border); border-radius:var(--radius-sm); background:var(--color-surface); cursor:pointer; }
.application-choice label strong { display:block; font-size:.8rem; }
.application-choice label span { display:block; margin-top:.2rem; color:var(--color-text-faint); font-size:.68rem; line-height:1.4; }
.application-choice input:checked + label { border-color:var(--color-secondary); background:var(--color-primary-light); box-shadow:inset 0 0 0 1px var(--color-secondary); }
.application-note { display:flex; gap:.65rem; padding:.8rem .9rem; margin-top:var(--space-sm); border-radius:var(--radius-sm); background:var(--color-surface-sunken); color:var(--color-text-soft); font-size:.74rem; }
.application-note svg { width:1rem; height:1rem; color:var(--color-secondary); flex:none; margin-top:.05rem; }
.application-actions { display:flex; justify-content:flex-end; gap:.6rem; padding-top:var(--space-md); margin-top:var(--space-md); border-top:1px solid var(--color-border); }
.application-legal { margin-top:.8rem; color:var(--color-text-faint); font-size:.68rem; line-height:1.5; }
.application-legal a { color:var(--color-primary); font-weight:600; }
@media (max-width: 900px) {
  .application-shell { grid-template-columns:1fr; }
  .application-intro { position:static; }
  .application-intro h1 { max-width:18ch; }
}
@media (max-width: 640px) {
  .application-grid, .application-choice-grid { grid-template-columns:1fr; }
  .application-field--full { grid-column:auto; }
  .application-actions { flex-direction:column-reverse; }
  .application-actions .btn { width:100%; }
}

.tenant-application-note { color:var(--color-text-soft); }
