.apply-page { background: var(--paper); }
.apply-nav { position: absolute; background: #f4f5f0ed; }
.section-wrap { width: min(100%, 1440px); margin-inline: auto; padding-inline: clamp(24px, 4.5vw, 72px); }
.eyebrow { font: 900 10px/1.3 Arial, sans-serif; letter-spacing: .18em; }
.eyebrow.green { color: var(--lime); }
.apply-hero { padding: 150px 0 95px; background: var(--ink); color: white; }
.apply-hero-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(310px, .55fr); gap: clamp(50px, 9vw, 130px); align-items: end; }
.apply-hero h1 { max-width: 900px; margin: 31px 0 30px; font-size: clamp(46px, 6.2vw, 86px); line-height: 1.08; letter-spacing: -.045em; }
.apply-hero h1 em { color: var(--lime); font-style: normal; }
.apply-lead { max-width: 750px; color: #b8bcb6; font-size: clamp(16px, 1.6vw, 20px); }
.consult-card { padding: 28px; border: 1px solid #ffffff38; box-shadow: 15px 15px 0 var(--lime); }
.consult-card > p { color: #8d928b; font: 900 9px Arial,sans-serif; letter-spacing: .18em; }
.consult-card strong { display: block; margin: 30px 0; font-size: clamp(42px, 4vw, 60px); line-height: .95; letter-spacing: -.06em; }
.consult-card ul { margin: 0; padding: 0; list-style: none; }
.consult-card li { padding: 10px 0; border-top: 1px solid #ffffff2c; color: #d4d7d1; font-size: 13px; }
.consult-card > span { display: block; margin-top: 23px; color: #8f948d; font-size: 11px; }
.consult-flow { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(45px, 8vw, 110px); padding-block: clamp(95px, 11vw, 145px); }
.flow-heading h2, .form-copy h2, .apply-bottom h2 { margin-top: 18px; font-size: clamp(40px, 5.5vw, 74px); line-height: 1.04; letter-spacing: -.055em; }
.flow-heading h2 { font-size: clamp(40px, 4.2vw, 60px); }
.consult-flow ol { display: grid; grid-template-columns: repeat(3,1fr); margin: 0; padding: 0; border-top: 1px solid var(--ink); list-style: none; }
.consult-flow li { min-height: 270px; padding: 23px; border-right: 1px solid var(--line); }
.consult-flow li:last-child { border: 0; }
.consult-flow li b { color: #858983; font: 900 10px Arial,sans-serif; }
.consult-flow h3 { margin-top: 75px; font-size: 25px; }
.consult-flow li p { margin-top: 8px; color: var(--muted); font-size: 13px; }
.form-zone { padding-block: clamp(90px, 10vw, 135px); background: var(--ink); color: white; }
.form-layout { display: grid; grid-template-columns: .76fr 1.24fr; gap: clamp(50px, 8vw, 110px); align-items: start; }
.form-copy { position: sticky; top: 115px; }
.form-copy > p:not(.eyebrow) { max-width: 540px; margin-top: 26px; color: #aeb3ac; }
.privacy-box { margin-top: 38px; padding: 19px; border-left: 4px solid var(--lime); background: #ffffff0b; }
.privacy-box b { font-size: 13px; }
.privacy-box p { margin-top: 7px; color: #c1c5bf; font-size: 12px; }
.privacy-box a { display: inline-flex; min-height: 44px; align-items: center; color: white; font-size: 12px; font-weight: 800; text-underline-offset: 4px; }
.consult-form { padding: clamp(24px, 4vw, 48px); background: var(--white); color: var(--ink); }
.field { min-width: 0; margin: 0 0 24px; padding: 0; border: 0; }
.field-row { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.field label, .field legend { display: block; margin-bottom: 8px; font-size: 13px; font-weight: 900; }
.field label > span, .field legend > span { color: #537f1e; font-size: 10px; }
.field small { color: #5f645c; font-size: 10px; font-weight: 500; }
.field > input, .field > select, .field > textarea { width: 100%; min-width: 0; border: 1px solid var(--line); border-radius: 0; padding: 14px; background: #f9faf7; color: var(--ink); font: inherit; }
.field textarea { resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { outline: 3px solid #85ed164f; border-color: #5c9d18; }
.task-choices { display: flex; flex-wrap: wrap; gap: 7px; }
.task-choices label { margin: 0; cursor: pointer; }
.task-choices input { position: absolute; opacity: 0; pointer-events: none; }
.task-choices span { display: block; padding: 9px 13px; border: 1px solid var(--line); color: #4d514c; font-size: 12px; }
.task-choices input:checked + span { border-color: var(--ink); background: var(--ink); color: white; }
.task-choices input:focus-visible + span { outline: 3px solid var(--lime); outline-offset: 2px; }
.privacy-consent { display: grid; min-height: 28px; grid-template-columns: auto 1fr; gap: 10px; align-items: start; margin: 0 0 18px; color: #525750; font-size: 12px; line-height: 1.6; }
.privacy-consent input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--ink); }
.privacy-consent a { color: var(--ink); font-weight: 800; text-underline-offset: 3px; }
.submit-button { display: flex; justify-content: space-between; width: 100%; border: 0; padding: 18px 20px; background: var(--ink); color: white; font: inherit; font-size: 14px; font-weight: 900; cursor: pointer; }
.submit-button > span[aria-hidden="true"] { color: var(--lime); }
.submit-button-label { color: white; }
.submit-button:disabled { cursor: wait; opacity: .78; }
.form-note { margin-top: 13px; color: #676c66; font-size: 12px; }
.form-noscript { margin-bottom: 18px; padding: 12px; border-left: 4px solid #b46b22; background: #fff1df; color: #6d3b0d; font-size: 12px; }
.form-message { margin-top: 18px; padding: 0; color: #355713; font-size: 13px; white-space: pre-line; }
.form-message:not(:empty) { padding: 15px; background: #eff9e5; border-left: 4px solid var(--lime); }
.apply-bottom { padding-block: clamp(100px, 12vw, 165px); text-align: center; }
.apply-bottom p:not(.eyebrow) { margin: 25px auto 30px; color: var(--muted); }
@media(max-width:900px){.apply-hero-grid,.consult-flow,.form-layout{grid-template-columns:1fr}.consult-card{max-width:520px}.form-copy{position:static}.consult-flow ol{margin-top:10px}}
@media(max-width:640px){.apply-hero{padding-top:120px}.apply-hero h1{font-size:clamp(40px,11.8vw,60px);line-height:1.1;letter-spacing:-.035em}.apply-lead{line-height:1.95}.consult-flow ol,.field-row{grid-template-columns:1fr}.consult-flow li{min-height:190px;border-right:0;border-bottom:1px solid var(--line)}.consult-flow h3{margin-top:38px}.consult-form{padding:24px 18px}.task-choices span{padding:8px 10px}.apply-bottom{text-align:left}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
