﻿.registration-main{min-height:812px}
.registration-heading{height:168px;padding:80px 64px 16px;text-align:center}
.registration-heading h1{margin:0;font-size:24px;line-height:32px;font-weight:600}
.registration-heading p{margin:8px 0 0;font-size:18px;line-height:28px}
.registration-form{position:relative;min-height:644px;padding:32px 64px 0}
.registration-grid{display:grid;width:1312px;margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:80px;gap:24px}
.registration-field{position:relative;display:flex;min-width:0;flex-direction:column;gap:8px;color:var(--ink);font-size:14px;line-height:20px}
.registration-field>span:first-child{height:16px}
.registration-field input,.registration-field select,.registration-field textarea,.file-control{width:100%;height:56px;padding:0 16px;border:1px solid #e2e8f0;border-radius:4px;outline:0;background:#fff;color:#374151;font:400 14px/20px Inter,Arial,sans-serif;transition:border-color 140ms ease,box-shadow 140ms ease,background-color 140ms ease}
.registration-field select{display:none}
.registration-field input::placeholder,.registration-field textarea::placeholder{color:#9ca3af}
.registration-field input:hover,.registration-field textarea:hover,.file-control:hover{border-color:#acd686}
.registration-field input:focus,.registration-field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-focus)}
.registration-field input:not(:placeholder-shown){border-color:var(--green-200);font-weight:600}
.registration-field textarea{resize:none;padding-top:17px}
.registration-field.is-invalid input,.registration-field.is-invalid textarea,.registration-field.is-invalid .file-control,.registration-field.is-invalid .registration-select__button{border-color:#d92d20;box-shadow:0 0 0 3px rgba(217,45,32,.12)}
.registration-field.is-invalid>span:first-child{color:#b42318}
.registration-select{position:relative}
.registration-select__button{display:flex;width:100%;height:56px;align-items:center;justify-content:space-between;padding:0 16px;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#9ca3af;font:400 14px/20px Inter,Arial,sans-serif;text-align:left;cursor:pointer;transition:border-color 140ms ease,box-shadow 140ms ease}
.registration-select__button:hover{border-color:#acd686}
.registration-select.is-open .registration-select__button,.registration-select__button:focus-visible{border-color:var(--green);outline:0;box-shadow:0 0 0 3px var(--green-focus)}
.registration-select.has-value .registration-select__button{border-color:var(--green-200);color:#374151;font-weight:600}
.registration-select.is-disabled .registration-select__button{background:#f5f5f5;color:#9ca3af;cursor:not-allowed}
.registration-select__arrow{width:8px;height:8px;margin-top:-4px;border-right:1.5px solid #7b8794;border-bottom:1.5px solid #7b8794;transform:rotate(45deg);transition:transform 140ms ease}
.registration-select.is-open .registration-select__arrow{margin-top:4px;transform:rotate(225deg)}
.registration-select__menu{position:absolute;z-index:20;top:64px;left:0;display:none;width:100%;max-height:264px;padding:6px;overflow-y:auto;border:1px solid var(--green-200);border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(0,51,0,.16)}
.registration-select.is-open .registration-select__menu{display:block}
.registration-select__filter{position:sticky;z-index:2;top:0;width:100%;height:40px;margin-bottom:6px;padding:0 12px;border:1px solid var(--green-200);border-radius:5px;outline:0;background:#fff;color:#374151;font:400 14px/20px Inter,Arial,sans-serif}
.registration-select__filter:focus{border-color:var(--green);box-shadow:0 0 0 2px var(--green-focus)}
.registration-select__filter::placeholder{color:#9ca3af}
.registration-select__empty{display:block;padding:10px;color:#6b7280;font-size:14px;line-height:20px}
.registration-select.is-searchable .registration-select__menu{top:0;max-height:320px;padding:64px 6px 6px;overflow-y:auto}
.registration-select.is-searchable .registration-select__filter{position:absolute;z-index:3;top:0;left:0;width:100%;height:56px;margin:0;padding:0 44px 0 16px;border-color:var(--green);border-radius:4px;box-shadow:0 0 0 3px var(--green-focus);font-weight:400}
.registration-select.is-searchable .registration-select__menu::before{content:'';position:absolute;z-index:4;top:21px;right:18px;width:8px;height:8px;border-top:1.5px solid #7b8794;border-left:1.5px solid #7b8794;transform:rotate(45deg);pointer-events:none}
.registration-select__option{display:flex;width:100%;min-height:36px;align-items:center;padding:8px 10px;border:0;border-radius:5px;background:#fff;color:var(--text);font:400 14px/20px Inter,Arial,sans-serif;text-align:left;cursor:pointer}
.registration-select__option:hover,.registration-select__option.is-highlighted{background:var(--green-100)}
.registration-select__option[aria-selected="true"]{background:var(--green-200);color:#174c00;font-weight:600}
.registration-select__option[aria-selected="true"]::after{content:'\2713';margin-left:auto;color:var(--green);font-weight:700}
.registration-field--file input{position:absolute;inset:24px 0 0;width:100%;height:56px;opacity:0;cursor:pointer}
.file-control{display:flex;align-items:center;justify-content:space-between;color:#9ca3af}
.registration-field--file:focus-within .file-control{border-color:var(--green);box-shadow:0 0 0 3px var(--green-focus)}
.registration-field--file.has-file .file-control{border-color:var(--green-200);color:#374151;font-weight:600}
.file-control__icon{font-size:22px;color:#649935}
.registration-error{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.registration-error.is-visible{position:absolute;bottom:82px;left:50%;width:auto;max-width:520px;height:auto;margin:0;padding:8px 12px;overflow:visible;clip:auto;transform:translateX(-50%);border:1px solid #fecdca;border-radius:6px;background:#fff6f5;color:#b42318;text-align:center;white-space:normal}
.registration-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.registration-field__error{position:absolute;z-index:12;right:8px;top:86px;max-width:420px;padding:5px 9px;border:1px solid #fecdca;border-radius:6px;background:#fff6f5;box-shadow:0 3px 8px rgba(180,35,24,.1);color:#b42318;font-size:12px;line-height:16px;white-space:nowrap;pointer-events:none}
.registration-field__error::before{content:'';position:absolute;right:16px;top:-5px;width:8px;height:8px;border-top:1px solid #fecdca;border-left:1px solid #fecdca;background:#fff6f5;transform:rotate(45deg)}
.registration-actions{position:absolute;bottom:128px;left:50%;display:flex;width:1312px;transform:translateX(-50%);justify-content:space-between}
.registration-button{width:160px}
.registration-button--back{background:#d4d4d4;color:#525252;box-shadow:none}
.registration-button--back:hover{background:#c8c8c8}
.registration-button--back:active{background:#bdbdbd}
.registration-button--back:disabled{opacity:1}
.registration-success{height:812px;padding-top:80px;text-align:center}
.registration-success__check{display:flex;width:160px;height:160px;margin:0 auto 32px;align-items:center;justify-content:center;border-radius:50%;background:var(--green-100)}
.registration-success__check svg{width:80px;height:80px;fill:none;stroke:var(--green);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}
.registration-success h1{margin:0;font-size:24px;line-height:32px;font-weight:600}
.registration-success p{margin:8px 0 0;font-size:18px;line-height:28px}
.registration-success .registration-success__reference{color:#477a20;font-size:14px;font-weight:600}
.registration-success__home{margin:32px auto 0}
[hidden]{display:none!important}

/* Enhanced multi-step form UX */
.registration-main{min-height:864px}
.registration-heading{height:220px;padding:48px 64px 16px}
.registration-progress{position:relative;width:520px;margin:26px auto 0}
.registration-progress__track{position:absolute;top:8px;right:56px;left:56px;height:3px;border-radius:2px;background:#e2eadc;overflow:hidden}
.registration-progress__track span{display:block;width:0;height:100%;border-radius:inherit;background:var(--green);transition:width 300ms ease}
.registration-progress ol{position:relative;display:flex;margin:0;padding:0;justify-content:space-between;list-style:none}
.registration-progress li{position:relative;width:112px;padding-top:25px;color:#98a2b3;font-size:11px;font-weight:500;text-align:center;transition:color 200ms ease}
.registration-progress li::before{content:'';position:absolute;top:0;left:50%;width:15px;height:15px;transform:translateX(-50%);border:3px solid #e2eadc;border-radius:50%;background:#fff;transition:border-color 200ms ease,background-color 200ms ease}
.registration-progress li.is-active{color:#315b13;font-weight:700}
.registration-progress li.is-active::before{border-color:var(--green);box-shadow:0 0 0 4px rgba(100,153,53,.12)}
.registration-progress li.is-complete{color:#4f8227}
.registration-progress li.is-complete::before{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 3px #fff}
.registration-field__note{position:absolute;top:82px;left:0;color:#7b8794;font-size:10px;font-weight:400;line-height:14px;white-space:nowrap}
.registration-field--file input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;opacity:1}
.file-control{display:flex;align-items:center;justify-content:space-between;color:#667085;cursor:pointer}
.registration-field--file .file-control{flex:0 0 56px}
.file-control>span{display:flex;min-width:0;flex-direction:column;gap:2px}
.file-control strong{color:#475467;font-size:13px;font-weight:600}
.file-control small{color:#98a2b3;font-size:10px;line-height:14px}
.registration-field--file.has-file .file-control{border-color:var(--green-200);color:#667085;font-weight:400}
.file-control__icon{width:22px;height:22px;flex:0 0 auto;fill:none;stroke:#649935;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.registration-file-list{display:flex;flex:0 0 auto;margin:8px 0 0;padding:0;flex-direction:column;gap:6px;list-style:none}
.registration-file-list:empty{display:none}
.registration-file-list li{display:flex;min-height:28px;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px;border:0;border-bottom:1px solid #e4eadf;background:transparent}
.registration-file-list li>span{display:flex;min-width:0;align-items:baseline;gap:8px}
.registration-file-list strong{overflow:hidden;color:#344054;font-size:11px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.registration-file-list small{flex:0 0 auto;color:#98a2b3;font-size:9px}
.registration-file-list small::before{content:'·';margin-right:8px;color:#c1c7bd}
.registration-file-list button{display:flex;width:22px;height:22px;flex:0 0 auto;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:#b42318;font:400 17px/1 Inter,Arial,sans-serif;cursor:pointer}
.registration-file-list button:hover{background:#feeceb}
.registration-button--back{border:2px solid var(--orange);background:#fff;color:#4d0505;box-shadow:none}
.registration-button--back:hover{border-color:#df6d31;background:#fff8f4;color:#390000}
.registration-button--back:active{border-color:#c95c25;background:#fff0e8}
.registration-button--back:disabled{border-color:#d4d4d4;background:#d4d4d4;color:#737373;opacity:1;cursor:not-allowed}
.registration-step{min-height:420px}
.registration-step[data-step="3"]{min-height:420px}
.registration-step[data-step="3"] .registration-grid{grid-auto-rows:minmax(80px,auto)}
.registration-step[data-step="3"] .registration-field--file{align-self:start}
.registration-actions{position:static;width:1312px;margin:32px auto 0;transform:none}


