.apply-page { --apply-border: #dededb; --apply-quiet: #f6f6f4; }
.apply-wrap { width: min(1100px, calc(100% - 56px)); margin-inline: auto; }
.apply-header { background: #292929; color: white; }
.apply-header .apply-wrap { display: flex; align-items: center; justify-content: space-between; min-height: 68px; gap: 20px; }
.apply-header img { display: block; object-fit: contain; }
.apply-header a:last-child { font-size: 12px; }
.apply-hero {
  color: white;
  background: linear-gradient(90deg, #171717f2 0%, #171717db 34%, #17171742 100%),
    #272727 url('/assets/pickup-repair-workshop.webp') 65% 45% / cover no-repeat;
  padding: 64px 0;
}
.apply-hero h1 { font-size: clamp(29px, 4.3vw, 48px); max-width: 630px; margin-bottom: 13px; }
.apply-hero p:not(.eyebrow) { color: #f4f4f4; max-width: 500px; margin-bottom: 23px; }
.apply-hero .eyebrow { margin-bottom: 13px; }
.apply-content { padding-block: 46px 65px; }
.apply-section + .apply-section { margin-top: 52px; padding-top: 38px; border-top: 1px solid var(--apply-border); }
.apply-section .eyebrow { margin-bottom: 8px; }
.apply-section h2 { margin-bottom: 12px; }
.apply-section > p:not(.eyebrow) { max-width: 810px; }
.apply-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 23px; }
.apply-specs article { border: 1px solid var(--apply-border); border-top: 3px solid var(--red); background: var(--apply-quiet); padding: 21px; }
.apply-tag { font-size: 10px; font-weight: 600; letter-spacing: 1px; color: var(--red); margin-bottom: 7px; }
.apply-specs h3 { font-family: var(--heading); font-weight: 400; font-size: 21px; margin-bottom: 3px; }
.apply-models { font-size: 12px; margin-bottom: 16px; }
.apply-specs dl { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; border-top: 1px solid var(--apply-border); padding-top: 13px; margin: 0; }
.apply-specs dt { font-size: 11px; color: #565656; }
.apply-specs dd { margin: 0; }
.apply-specs dd strong { display: block; font-size: 21px; font-weight: 600; color: var(--ink); }
.apply-specs dd span, .apply-note { font-size: 12px; color: #565656; }
.apply-note { margin-top: 12px; }
.apply-steps { list-style: none; margin: 20px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.apply-steps li { display: flex; gap: 12px; border-top: 1px solid var(--apply-border); padding-top: 15px; }
.apply-steps li > span { color: var(--red); font-weight: 600; font-size: 12px; line-height: 24px; }
.apply-steps h3 { font-size: 15px; margin: 0 0 5px; }
.apply-steps p { font-size: 13px; margin-bottom: 0; }
.apply-form-section { display: grid; grid-template-columns: minmax(200px, .36fr) minmax(0, 1fr); align-items: start; gap: 30px; }
.apply-form-intro { padding-top: 4px; }
.apply-form, .apply-success { padding: clamp(16px, 3vw, 28px); border: 1px solid var(--apply-border); background: var(--apply-quiet); }
.apply-fields { border: 0; padding: 0; margin: 0 0 22px; min-inline-size: 0; }
.apply-fields legend { padding: 0 0 11px; font-weight: 600; font-size: 15px; }
.apply-form-grid, .apply-lines { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.apply-wide { grid-column: 1 / -1; }
.apply-form label { display: block; font-size: 12px; font-weight: 600; }
.apply-form label small { color: #626262; font-weight: 400; font-size: 11px; }
.apply-form label > :is(input:not([type='checkbox']), select, textarea) { display: block; width: 100%; min-height: 42px; margin-top: 4px; background: #fff; border: 1px solid #bfbfba; border-radius: 3px; padding: 9px 10px; font-size: 14px; font-weight: 400; color: var(--ink); }
.apply-form textarea { resize: vertical; }
.apply-lines { margin-bottom: 16px; }
.apply-line { display: flex; flex-direction: column; border: 1px solid #c9c9c4; background: #fff; }
.apply-line:has(.apply-line-choice input:checked) { border-color: var(--red); background: #fff7f7; }
.apply-form .apply-line label { display: flex; gap: 9px; align-items: flex-start; padding: 10px 11px; cursor: pointer; }
.apply-form .apply-line-service { margin-top: auto; border-top: 1px solid var(--apply-border); font-weight: 400; }
.apply-lines strong, .apply-lines small { display: block; }
.apply-form .apply-check { display: flex; align-items: flex-start; gap: 9px; font-weight: 400; margin-top: 12px; }
.apply-form input[type='checkbox'] { margin-top: 3px; flex: 0 0 auto; }
.apply-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.apply-form-note { font-size: 12px; }
.apply-submit-note { margin: 11px 0 0; }
.apply-error { padding: 10px; background: #faeeee; color: #8b171d; border-left: 3px solid var(--red); }
.apply-success { border-top: 3px solid var(--red); }
.apply-success a { color: var(--red); text-decoration: underline; }
.apply-faq .faq-list summary { font-size: 14px; }
.apply-faq .faq-list summary::after { flex-shrink: 0; }
.apply-faq .faq-list details p { max-width: 820px; font-size: 13px; }
.apply-footer { background: #292929; color: white; padding: 20px 0; }
.apply-footer .apply-wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; font-size: 11px; }
@media (max-width: 780px) {
  .apply-steps, .apply-form-section { grid-template-columns: 1fr; gap: 16px; }
  .apply-hero { padding: 46px 0; background-position: 55% center; }
}
@media (max-width: 520px) {
  .apply-wrap { width: calc(100% - 32px); }
  .apply-specs, .apply-form-grid, .apply-lines { grid-template-columns: 1fr; }
  .apply-content { padding-block: 34px 44px; }
  .apply-section + .apply-section { margin-top: 32px; padding-top: 28px; }
  .apply-form button { width: 100%; }
}
