/* assets/css/pages/forms.css — floating-label forms, multi-step */
.form-hero{padding-top:9rem;padding-bottom:1rem}
.form-hero__title{font-size:var(--fs-800);line-height:.98}
.form-hero__sub{margin-top:.8rem;color:var(--color-ivory-soft);font-size:var(--fs-500);max-width:46ch}
.form-wrap{max-width:46rem;margin-top:2rem}
.field{position:relative;margin-bottom:1.6rem}
.field__input,.field__textarea,.field__select{width:100%;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-sm);padding:1.4rem 1rem .6rem;color:var(--color-ivory);transition:border-color var(--dur-fast)}
.field__textarea{min-height:120px;resize:vertical}
.field__input:focus,.field__textarea:focus,.field__select:focus{outline:none;border-color:var(--color-rust)}
.field__label{position:absolute;left:1rem;top:1rem;color:var(--color-ivory-soft);pointer-events:none;transition:transform var(--dur-fast),font-size var(--dur-fast),color var(--dur-fast);transform-origin:left}
.field__input:focus+.field__label,.field__input:not(:placeholder-shown)+.field__label,
.field__textarea:focus+.field__label,.field__textarea:not(:placeholder-shown)+.field__label{transform:translateY(-9px) scale(.8);color:var(--color-rust-glow)}
.field__select+.field__label{transform:translateY(-9px) scale(.8);color:var(--color-rust-glow)}
.field__error{display:block;margin-top:.3rem;font-size:var(--fs-200);color:#e8836b;min-height:1em}
.field--invalid .field__input,.field--invalid .field__textarea,.field--invalid .field__select{border-color:#c0392b}
.field--hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.field__file{display:block;padding:1rem;border:1px dashed var(--color-line);border-radius:var(--radius-sm);color:var(--color-ivory-soft);cursor:pointer}
.field__file:hover{border-color:var(--color-rust)}
.consent{display:flex;gap:.7rem;align-items:flex-start;margin-bottom:1.4rem;font-size:var(--fs-300);color:var(--color-ivory-soft)}
.consent input{margin-top:.25rem;accent-color:var(--color-rust)}
.consent a{color:var(--color-rust-glow);border-bottom:1px solid var(--color-rust)}
.form-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.form-note{font-size:var(--fs-300);min-height:1.2em}
.form-note.is-ok{color:var(--color-rust-glow)}
.form-note.is-err{color:#e8836b}
/* multi-step */
.steps{display:flex;gap:.5rem;margin-bottom:2rem}
.steps__dot{flex:1;height:4px;border-radius:2px;background:var(--color-line)}
.steps__dot.is-active{background:var(--color-rust)}
.step{display:none}
.step.is-current{display:block;animation:fadeUp .4s var(--ease-out-expo)}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;margin-bottom:1.6rem}
.choice{padding:1rem;border:1px solid var(--color-line);border-radius:var(--radius-sm);cursor:pointer;text-align:center;transition:border-color var(--dur-fast),background-color var(--dur-fast)}
.choice input{position:absolute;opacity:0}
.choice:hover{border-color:var(--color-rust)}
.choice.is-selected{border-color:var(--color-rust);background:rgba(192,74,32,.12);color:var(--color-ivory)}
@media (max-width:560px){.choice-grid{grid-template-columns:1fr}}

/* contact two-column */
.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.contact__details{margin-top:2rem;display:grid;gap:1rem}
.contact__details li{display:grid;grid-template-columns:80px 1fr;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-line);color:var(--color-ivory)}
.contact__details span{color:var(--color-rust-glow);font-size:var(--fs-200);letter-spacing:.12em;text-transform:uppercase}

/* book step title */
.book__steptitle{font-family:var(--font-display);font-size:var(--fs-600);color:var(--color-ivory);margin-bottom:1.4rem}

/* career roles */
.role-list{display:grid;gap:0}
.role{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:1.8rem 0;border-top:1px solid var(--color-line)}
.role:last-child{border-bottom:1px solid var(--color-line)}
.role--closed{opacity:.5}
.role__title{font-size:var(--fs-600)}
.role__summary{color:var(--color-ivory-soft);margin-top:.3rem;max-width:60ch}
.role__meta{display:flex;align-items:center;gap:1rem;white-space:nowrap}
.role__loc,.role__type{font-size:var(--fs-200);color:var(--color-ivory-soft);padding:.3rem .8rem;border:1px solid var(--color-line);border-radius:var(--radius-pill)}
.role__apply{color:var(--color-rust-glow);font-weight:600}
.role__closed{color:var(--color-ivory-soft);font-size:var(--fs-300)}
.career-apply{background:var(--color-bg-deep);border-top:1px solid var(--color-line)}
@media (max-width:768px){.contact__grid{grid-template-columns:1fr}.role{grid-template-columns:1fr;gap:.8rem}.role__meta{flex-wrap:wrap}}
