/* AI Expert Hire: form flow styles shared by hire, waitlist, waitlist-confirmed, apply and apply-received. Ported from the flow boards. */
.flowhead{padding:48px 0 40px}
.prog{display:flex;flex-direction:column;gap:14px;margin:0 auto;max-width:760px;width:100%}
.prog .steps{display:flex;justify-content:space-between;gap:12px}
.prog .st{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#7C867F;white-space:nowrap;min-width:0}
.prog .st .n{width:28px;height:28px;border-radius:50%;background:#E6E9E4;color:#4A5450;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex:none}
.prog .st.on{color:#0E1412}.prog .st.on .n{background:#22E68A;color:#0E1412}
.prog .st.done{color:#0E1412}.prog .st.done .n{background:#0E1412;color:#FFFFFF}
.prog .st .n svg{display:none}.prog .st.done .n svg{display:block}.prog .st.done .n i{display:none}
.prog .st .n i{font-style:normal}
.prog .track{height:8px;border-radius:999px;background:#E6E9E4;overflow:hidden}
.prog .fill{height:100%;border-radius:999px;background:#22E68A;transition:width .3s ease}
.flowgrid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start}
.flowgrid.w400{grid-template-columns:minmax(0,1fr) 400px}
.formcol{display:flex;flex-direction:column;gap:20px;min-width:0}
.rail{display:flex;flex-direction:column;gap:20px;min-width:0}
.qcard{background:#FFFFFF;border:1px solid #E6E9E4;border-radius:20px;padding:36px 40px;display:flex;flex-direction:column;gap:22px;min-width:0}
.qcard .qhead{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.qcard .qn{width:36px;height:36px;border-radius:11px;background:#22E68A;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex:none;margin-top:2px}
.qcard .qt{font-size:24px;line-height:1.25;letter-spacing:-.012em;font-weight:700;color:#0E1412;margin:0}
.qcard .qh{font-size:15px;line-height:1.5;color:#7C867F;margin:6px 0 0}
.qcard .qtag{margin-left:auto;flex:none}
.qcard .qtags{display:flex;gap:8px;align-items:center;flex:none;flex-wrap:wrap}
.opts{display:grid;grid-template-columns:repeat(2, minmax(0,1fr));gap:12px}
.opts.one{grid-template-columns:1fr}
.opts.three{grid-template-columns:repeat(3, minmax(0,1fr))}
.opt{position:relative;display:flex;align-items:center;gap:14px;min-height:60px;padding:14px 18px;border-radius:14px;border:1px solid #E6E9E4;background:#FFFFFF;cursor:pointer;font-size:16px;font-weight:600;color:#0E1412;line-height:1.3;transition:border-color .15s,background .15s}
.opt:hover{border-color:#C9D1CB}
.opt input{position:absolute;opacity:0;width:0;height:0;margin:0}
.opt .ind{width:22px;height:22px;border-radius:50%;border:2px solid #C9D1CB;display:inline-flex;align-items:center;justify-content:center;flex:none;color:#0E1412;background:#FFFFFF}
.opt .ind svg{opacity:0}
.opt.cb .ind{border-radius:7px}
.opt:has(input:checked){border-color:#22E68A;background:#E6FBEF;box-shadow:inset 0 0 0 1px #22E68A}
.opt:has(input:checked) .ind{background:#22E68A;border-color:#22E68A}
.opt:has(input:checked) .ind svg{opacity:1}
.opt:has(input:focus-visible){outline:3px solid #1F47F5;outline-offset:3px}
.opt .sub{display:block;font-size:13px;font-weight:500;color:#7C867F;margin-top:2px}
.opt.big{align-items:flex-start;padding:20px 22px;flex-direction:column;gap:12px;min-height:150px}
.opt.big .ind{margin-left:auto}
.opt.big .t{font-size:18px;font-weight:800;letter-spacing:-.01em;line-height:1.2}
.opt.big .d{font-size:14px;font-weight:500;color:#4A5450;line-height:1.45}
.opt.big .tr{display:flex;justify-content:space-between;align-items:flex-start;width:100%;gap:12px}
.opt.skill{min-height:0;padding:18px 20px;gap:8px}
.opt.skill .t{font-size:17px}
.opt.skill .d{font-size:14px}
.fields{display:grid;grid-template-columns:repeat(2, minmax(0,1fr));gap:18px 20px}
.fields .full{grid-column:1 / -1}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field label{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0E1412}
.field .opt{font-size:16px;font-weight:600;letter-spacing:0;text-transform:none;color:#0E1412}
.field label .hint{font-weight:500;letter-spacing:0;text-transform:none;color:#7C867F;margin-left:6px}
.field input,.field select,.field textarea{width:100%;height:56px;border:1px solid #D9DED9;border-radius:14px;padding:0 18px;font-size:17px;font-family:inherit;color:#0E1412;background:#FFFFFF;outline:0;appearance:none;-webkit-appearance:none}
.field textarea{height:auto;min-height:120px;padding:16px 18px;line-height:1.5;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#A7AFAA}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#22E68A;box-shadow:0 0 0 3px rgba(34,230,138,.25)}
.field .sel{position:relative}
.field .sel:after{content:"";position:absolute;right:20px;top:50%;width:9px;height:9px;border-right:2px solid #4A5450;border-bottom:2px solid #4A5450;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.field .sel select{padding-right:48px}
.railcard{background:#FFFFFF;border:1px solid #E6E9E4;border-radius:20px;padding:28px}
.railcard h3{margin:0 0 18px}
.nlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.nlist li{display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.5;color:#4A5450}
.nlist li b{color:#0E1412;display:block;font-size:16px}
.nlist .num{width:30px;height:30px;border-radius:10px;background:#F6F7F2;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex:none}
.plist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.plist li{display:flex;gap:12px;align-items:center;font-size:15px;color:#0E1412;font-weight:600}
.plist .bx{width:22px;height:22px;border-radius:7px;background:#22E68A;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;flex:none}
.getlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.getlist li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;color:#4A5450}
.getlist li b{color:#0E1412;display:block;font-size:16px;margin-bottom:2px}
.getlist .bx{width:22px;height:22px;border-radius:7px;background:#22E68A;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;flex:none;margin-top:2px}
.qcard > .field label{font-size:14px;letter-spacing:0;text-transform:none;font-weight:600;color:#4A5450}
.wlinfo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:100%;max-width:1040px;margin:0 auto 24px}
.wlinfo .card{padding:28px;display:flex;flex-direction:column;gap:10px}
.wlinfo .card h3{margin:0}
.wlinfo .card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.wlinfo .card li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45;color:#4A5450}
.wlinfo .card li .bx{width:20px;height:20px;border-radius:6px;background:#22E68A;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;flex:none;margin-top:2px}
.wlinfo .card p{margin:0;font-size:15px;line-height:1.5;color:#4A5450}
@media (max-width:900px){.wlinfo{grid-template-columns:1fr}}
.ctarow{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:8px 0 0}
.notebox{background:#F6F7F2;border:1px dashed #C9D1CB;border-radius:20px;padding:28px 32px;color:#4A5450}
.bigcheck{width:96px;height:96px;border-radius:50%;background:#22E68A;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 16px 40px rgba(34,230,138,.35)}
.linkcard{background:#FFFFFF;border:1px solid #E6E9E4;border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:#0E1412;transition:border-color .15s}
.linkcard:hover{border-color:#22E68A;color:#0E1412}
.linkcard .t{font-size:20px;font-weight:800;letter-spacing:-.01em;display:flex;justify-content:space-between;align-items:center;gap:12px}
.linkcard .d{font-size:15px;color:#4A5450;line-height:1.5}
/* pill selects */
.pillsel{position:relative;display:inline-flex;max-width:100%}
.pillsel input{position:absolute;opacity:0;width:0;height:0;margin:0}
.pillsel span{display:inline-flex;align-items:center;height:42px;padding:0 18px;border-radius:999px;border:1px solid #D9DED9;background:#FFFFFF;font-size:15px;font-weight:600;color:#0E1412;cursor:pointer;white-space:nowrap;text-transform:none;letter-spacing:0;transition:border-color .15s,background .15s}
.pillsel span:hover{border-color:#C9D1CB}
.pillsel:has(input:checked) span{background:#E6FBEF;border-color:#22E68A;box-shadow:inset 0 0 0 1px #22E68A}
.pillsel:has(input:focus-visible) span{outline:3px solid #1F47F5;outline-offset:3px}
.pillwall{display:flex;flex-wrap:wrap;gap:10px}
.sq4{display:flex;flex-direction:column;gap:14px;padding:28px 0;border-top:1px solid #EEF1EB}
.sq4:first-of-type{border-top:0;padding-top:0}
/* apply flow */
.stephead{display:flex;gap:18px;align-items:center;padding-bottom:26px;border-bottom:1px solid #EEF1EB;flex-wrap:wrap}
.stephead .sn{width:52px;height:52px;border-radius:15px;background:#22E68A;color:#0E1412;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;flex:none}
.stephead .of{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7C867F;margin:0 0 4px}
.stephead .stt{font-size:30px;line-height:1.15;letter-spacing:-.018em;font-weight:800;color:#0E1412;margin:0}
.qb{display:flex;flex-direction:column;gap:16px}
.qb + .qb{padding-top:26px;border-top:1px solid #EEF1EB}
.qb .qt{font-size:20px}
.qb .qh{margin-top:4px}
.subfields{background:#F6F7F2;border-radius:16px;padding:22px 24px;display:flex;flex-direction:column;gap:14px}
.subfields .tag{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#4A5450;margin:0}
.stepnext{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid #EEF1EB;flex-wrap:wrap}
.stepnext .acts{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-left:auto}
.btn.back{background:transparent;border:1px solid #D9DED9;box-shadow:none}
.btn.back:hover{background:#FFFFFF}
/* multi-step mechanics */
.fstep[hidden],[hidden]{display:none !important}
.err{display:none;font-size:14px;font-weight:600;color:#B42318;margin:0}
.invalid .err{display:block}
.invalid .opt:not(:has(input:checked)),.invalid .pillsel:not(:has(input:checked)) span{border-color:#F0B8B3}
.field.invalid input,.field.invalid textarea,.field.invalid select{border-color:#D92D20;box-shadow:0 0 0 3px rgba(217,45,32,.15)}
.limitnote{display:none;font-size:14px;font-weight:600;color:#8A6200;background:#FFF4D6;border-radius:10px;padding:10px 14px;margin:0}
.limitnote.show{display:block}
.legalline{font-size:14px;color:#7C867F;margin:12px 0 0;line-height:1.4}
.legalline a{color:#4A5450}
.field .consent,.consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;color:#4A5450;cursor:pointer;text-transform:none;letter-spacing:0;font-weight:500}
.field .consent input,.consent input{width:20px;height:20px;flex:none;margin:2px 0 0;accent-color:#22E68A;appearance:auto;-webkit-appearance:auto;border-radius:6px;padding:0}
.hp{display:none}
.thanks{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.ansrow{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-top:1px solid #EEF1EB}
.ansrow .k{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:#7C867F}
.ansrow .v{font-size:16px;font-weight:600;color:#0E1412;line-height:1.4}
.mini{background:#FFFFFF;border:1px solid #E6E9E4;border-radius:16px;box-shadow:0 20px 50px rgba(14,20,18,.10);padding:20px 22px;display:flex;flex-direction:column;gap:12px;width:100%;max-width:380px}
.mini .t{font-size:14px;font-weight:800;letter-spacing:-.01em}
.mini .s{font-size:12.5px;color:#7C867F;font-weight:600}
.where{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
.where .stat{display:flex;gap:16px;align-items:flex-start;padding:22px 0;border-top:1px solid #E6E9E4}
.where .stat:first-child{border-top:0;padding-top:0}
.where .stat .n{width:36px;height:36px;border-radius:11px;background:#F6F7F2;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex:none}
.where .stat b{display:block;font-size:18px;color:#0E1412;margin-bottom:4px}
.legalgrid{display:grid;grid-template-columns:280px 1fr;gap:64px;align-items:start}
.ltoc{position:sticky;top:24px;list-style:none;margin:0;padding:24px;background:#FFFFFF;border:1px solid #E6E9E4;border-radius:20px;display:flex;flex-direction:column;gap:10px}
.ltoc a{color:#4A5450;text-decoration:none;font-size:15px;font-weight:600}.ltoc a:hover{color:#12B86A}
.lsec{display:flex;flex-direction:column;gap:14px;padding:0 0 36px;margin:0 0 36px;border-bottom:1px solid #E6E9E4}
.lsec:last-child{border-bottom:0;margin:0;padding-bottom:0}
.lsec ul{margin:0;padding-left:22px;color:#4A5450;font-size:17px;line-height:1.6;display:flex;flex-direction:column;gap:6px}
.lcard{padding:48px 56px}
@media (max-width:1100px){
  .flowgrid,.flowgrid.w400{grid-template-columns:1fr}.rail{order:2}.opts.three{grid-template-columns:repeat(2, minmax(0,1fr))}
  .where{grid-template-columns:1fr}
  .legalgrid{grid-template-columns:1fr;gap:28px}.ltoc{position:static}
}
@media (max-width:720px){
  .opts,.opts.three,.fields{grid-template-columns:1fr}.qcard{padding:24px 20px}.qcard .qt{font-size:20px}.prog .st span.w{display:none}.flowhead{padding:32px 0 24px}
  .pillsel span{white-space:normal;height:auto;min-height:42px;padding:8px 16px;line-height:1.3}
  .qcard .qhead .qtags{flex:1 1 100%;min-width:0;margin-left:52px;order:3}
  .stephead .stt{font-size:24px}.stepnext{flex-direction:column;align-items:stretch}.stepnext .acts{margin-left:0;flex-direction:column-reverse;align-items:stretch}
  .formcol .btn,.ctarow .btn,.thanks .btn,.scopeform .btn,.wlform .btn{width:100%;white-space:normal;height:auto;min-height:52px;padding:12px 22px;text-align:center}
  .ctarow,.thanks{align-items:stretch}
  .lcard{padding:28px 20px}.notebox{padding:20px}.railcard{padding:22px}
  .where .card{padding:24px 20px !important}
}
