.application-page main { padding-top:128px; background:#f1f8fc; }
.application-intro { padding:40px 20px 30px; max-width:850px; margin:auto; text-align:center; }
.application-intro h1 { font-family:Fredoka,Nunito,sans-serif; font-size:clamp(2rem,5vw,3.4rem); line-height:1.1; margin:12px 0 18px; color:#23428b; }
.application-intro .eyebrow { display:inline-block; background:#fff0c8; border-radius:46% 54% 56% 44% / 44% 52% 48% 56%; color:#16305b; padding:12px 24px; font-weight:900; }
.application-intro p { max-width:650px; margin:0 auto 12px; }
.application-section { padding:0 16px 70px; }
.application-page .form-card { width:100%; max-width:850px; box-sizing:border-box; }
#application-form .field { min-width:0; }
#application-form input,#application-form textarea { width:100%; min-width:0; max-width:100%; box-sizing:border-box; font-size:16px; color:#16305b; }
#application-form input[type=date] { appearance:none; -webkit-appearance:none; min-height:52px; display:block; }
#application-form input[type=date]::-webkit-date-and-time-value { text-align:left; min-width:0; }
#application-form textarea { min-height:115px; resize:vertical; }
#application-form .cv-upload { background:#edf6ff; padding:18px; border:2px dashed #89badd; border-radius:24px 20px 26px 18px; }
#application-form input[type=file] { border:0; padding:8px 0; border-radius:0; background:transparent; font-size:.9rem; }
#application-form input[type=file]::file-selector-button { border:0; border-radius:12px; background:#d5e8f8; color:#16305b; padding:12px; margin-right:10px; font:800 .9rem Nunito,sans-serif; cursor:pointer; }
#application-form small { color:#3d5370; line-height:1.5; }
#application-form .privacy-ack { font-size:.9rem; margin:0; }
#application-form .privacy-ack a { text-decoration:underline; }
#application-form .privacy-ack p { margin:0 0 6px; }
#application-form .privacy-ack label { display:flex; align-items:flex-start; gap:12px; cursor:pointer; }
#application-form input[type=checkbox] { appearance:auto; -webkit-appearance:checkbox; width:22px; height:22px; min-width:22px; min-height:22px; max-width:22px; flex:0 0 22px; padding:0; margin:2px 0 0; accent-color:#25b94e; }
#application-form .action { width:100%; background:#25b94e; color:white; border:0; cursor:pointer; font:900 1.08rem Nunito,sans-serif; min-height:54px; }
#application-form .action:disabled { cursor:wait; opacity:.7; }
#application-form .application-status { margin:0; padding:0; font-weight:800; }
#application-form .application-status:not(:empty) { padding:15px; background:#e5f5e9; border-radius:16px; }
#application-form .application-status[data-error=true] { background:#fff0ed; color:#8d2f24; }
.application-honey { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:800px) {
  .application-page main { padding-top:108px; }
  .application-intro { padding:28px 22px; }
  .application-section { padding:0 14px 46px; }
  .application-page .form-card { padding:24px 20px; border-radius:34px 28px 38px 30px; }
  #application-form .form-grid { grid-template-columns:minmax(0,1fr); }
  #application-form .cv-upload { padding:14px; }
}
