/* Business-first interactive enquiry */
.contactHero h1{max-width:1120px}
.businessEnquiry{padding:120px 6vw 150px;display:grid;grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);gap:8vw;align-items:start;background:var(--paper)}
.enquiryIntro{position:sticky;top:120px}
.enquiryIntro h2{font-size:clamp(42px,4.5vw,70px);line-height:.96;letter-spacing:-.06em;margin:30px 0}
.enquiryIntro>p{max-width:510px;font-size:17px;line-height:1.65;color:#555}
.enquiryPrinciples{display:grid;margin-top:50px;border-top:1px solid var(--line)}
.enquiryPrinciples span{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.03em}
.enquiryPrinciples b{font-size:9px;letter-spacing:.14em;color:#777}
.enquiryContact{margin-top:80px;display:grid;gap:14px}
.enquiryContact small{font-size:9px;font-weight:800;letter-spacing:.15em}
.enquiryContact a{font-size:clamp(21px,2vw,30px);letter-spacing:-.04em;border-bottom:1px solid;width:max-content}
.businessForm{background:#fff;border:1px solid #ded9cf;padding:clamp(28px,4vw,62px);box-shadow:0 28px 75px rgba(39,34,29,.08);min-height:690px}
.formProgress{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-bottom:55px}
.formProgress>div{height:2px;background:#e1ddd4;overflow:hidden}
.formProgress>div span{display:block;width:33.333%;height:100%;background:var(--acid);transform-origin:left;transition:width .45s cubic-bezier(.2,.8,.2,1)}
.formProgress p{margin:0;font-size:9px;font-weight:800;letter-spacing:.16em}
.formStep{animation:formStepIn .5s cubic-bezier(.2,.8,.2,1)}
.formStep[hidden]{display:none}
.formStepHead{display:grid;grid-template-columns:35px 1fr;gap:15px;margin-bottom:40px}
.formStepHead>span{font-size:9px;font-weight:800;letter-spacing:.15em;padding-top:10px}
.formStepHead h2{font-size:clamp(35px,4vw,58px);line-height:1;letter-spacing:-.055em;margin:0;outline:none}
.formStepHead p{font-size:14px;line-height:1.55;color:#666;max-width:560px;margin:15px 0 0}
.challengeChips{display:flex;flex-wrap:wrap;gap:9px}
.challengeChips button{border:1px solid #cfc9be;background:#f8f6f1;border-radius:999px;padding:14px 18px;color:#3c4659;cursor:pointer;transition:.22s}
.challengeChips button:hover{border-color:var(--ink);transform:translateY(-2px)}
.challengeChips button.active{background:var(--ink);border-color:var(--ink);color:#fff}
.industryField{margin-top:0}
.otherIndustryField[hidden]{display:none}
.areasPrompt{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:42px 0 14px;padding-top:28px;border-top:1px solid var(--line)}
.areasPrompt>span{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.areasPrompt small{font-size:10px;color:#777}
.formActions{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:55px;padding-top:24px;border-top:1px solid var(--line)}
.formActions>span{font-size:10px;letter-spacing:.08em;color:#777}
.formActions button{border:0;background:transparent;font-size:10px;font-weight:800;letter-spacing:.12em;cursor:pointer}
.formActions .nextStep,.formActions .submitEnquiry{background:var(--acid);color:#111;padding:18px 22px;min-width:190px;display:flex;justify-content:space-between;gap:35px}
.fieldError{display:none;color:#a32c1b;font-size:12px;margin:18px 0 0}
.formStep.hasError .fieldError{display:block}
.situationChoices{padding:0;border:0;margin:0 0 38px}
.situationChoices legend{font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:14px}
.situationChoices label{display:block;position:relative}
.situationChoices input{position:absolute;opacity:0;pointer-events:none}
.situationChoices span{display:flex;align-items:center;gap:15px;padding:16px 4px;border-top:1px solid var(--line);font-size:14px;cursor:pointer}
.situationChoices span:before{content:"";width:17px;height:17px;border:1px solid #aaa;border-radius:50%;flex:0 0 auto;box-shadow:inset 0 0 0 4px #fff}
.situationChoices label:last-child span{border-bottom:1px solid var(--line)}
.situationChoices input:checked+span{font-weight:700}
.situationChoices input:checked+span:before{background:var(--acid);border-color:var(--acid)}
.businessField{display:block;margin-top:26px}
.businessField>span{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:8px}
.businessField input,.businessField textarea,.businessField select{width:100%;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;padding:13px 0;font-size:17px;line-height:1.45;outline:none}
.businessField textarea{height:105px;resize:vertical}
.businessField select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#222 50%),linear-gradient(135deg,#222 50%,transparent 50%);background-position:calc(100% - 13px) 52%,calc(100% - 8px) 52%;background-size:5px 5px;background-repeat:no-repeat}
.businessField input:focus,.businessField textarea:focus,.businessField select:focus{border-color:var(--acid);box-shadow:0 1px 0 var(--acid)}
.businessField input.invalid,.businessField textarea.invalid,.businessField select.invalid{border-color:#a32c1b}
.fieldHint{display:block;margin-top:7px;color:#777;font-size:10px;line-height:1.4;letter-spacing:.02em}
.fieldHint b{color:inherit}
.businessField:has(.invalid) .fieldHint{color:#a32c1b}
.phoneControl{display:grid;grid-template-columns:minmax(135px,.78fr) minmax(150px,1.22fr);gap:18px}
.phoneControl select,.phoneControl input{min-width:0}
.identityGrid{display:grid;grid-template-columns:1fr 1fr;gap:5px 30px}
.consentField{display:flex;gap:11px;margin-top:35px;font-size:11px;line-height:1.5;color:#666}
.consentField input{accent-color:var(--acid);margin:1px 0 0}
.formActions.final .submitEnquiry{min-width:260px}
@keyframes formStepIn{from{opacity:0;transform:translateX(18px)}}
@media(max-width:900px){
  .businessEnquiry{grid-template-columns:1fr;padding:85px 5vw 110px}
  .enquiryIntro{position:static}
  .enquiryContact{margin-top:45px}
  .businessForm{min-height:0;padding:30px 22px}
}
@media(max-width:600px){
  .identityGrid{grid-template-columns:1fr}
  .phoneControl{grid-template-columns:130px 1fr;gap:12px}
  .formStepHead{grid-template-columns:1fr}
  .formStepHead>span{padding:0}
  .formActions{align-items:stretch;flex-direction:column-reverse}
  .formActions>span{text-align:center}
  .formActions button,.formActions .nextStep,.formActions .submitEnquiry{width:100%}
  .formActions.final{flex-direction:column-reverse}
  .challengeChips button{font-size:13px;padding:12px 14px}
  .areasPrompt{display:grid;gap:6px}
}
@media(prefers-reduced-motion:reduce){.formStep,.challengeChips button{animation:none;transition:none}}
.consentField a{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
