.registration-body{min-height:100vh;background:linear-gradient(145deg,#f3f7f0,#f7faf7 55%,#edf5ed);color:#23362a;font-family:Manrope,Arial,sans-serif}
.registration-page{width:min(1120px,100%);margin:auto;padding:24px clamp(16px,4vw,48px) 56px}
.registration-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:clamp(34px,7vh,76px)}
.registration-brand img{display:block;width:158px;max-height:70px;object-fit:contain}
.registration-home{color:#54705d;text-decoration:none;font-size:.9rem;font-weight:700}.registration-home i{margin-right:8px}
.registration-shell{max-width:940px;margin:auto}
.registration-intro{max-width:670px;margin:0 auto 34px;text-align:center}
.registration-kicker{color:#387344;font-size:.76rem;letter-spacing:.14em;font-weight:800}
.registration-intro h1{margin:10px 0 12px;color:#1e3d27;font-size:clamp(2rem,5vw,3rem);letter-spacing:-.045em}
.registration-intro p{margin:0;color:#65766a;line-height:1.7}
.registration-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.registration-choice{display:flex;flex-direction:column;align-items:flex-start;min-height:270px;padding:26px 24px;background:#fff;border:1px solid #e0e9e1;border-radius:20px;box-shadow:0 12px 34px #204a2b0c}
.choice-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:18px;border-radius:16px;background:#e8f3e7;color:#2e743d;font-size:1.2rem}
.registration-choice h2{margin:0 0 10px;font-size:1.15rem;color:#243d2b}.registration-choice p{flex:1;margin:0 0 20px;color:#68766b;font-size:.9rem;line-height:1.65}
.registration-choice-button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:48px;padding:0 15px;border:0;border-radius:11px;background:#28663a;color:#fff;font:700 .9rem Manrope,Arial,sans-serif;cursor:pointer;transition:background .18s,transform .18s}
.registration-choice-button:hover{background:#1c512c;transform:translateY(-1px)}
.registration-expand-note{margin:23px 0 0;text-align:center;color:#748178;font-size:.82rem}.registration-expand-note i{color:#588664;margin-right:5px}
.registration-flow{overflow:hidden;background:#fff;border:1px solid #dfe8e0;border-radius:20px;box-shadow:0 12px 34px #204a2b0c}
.registration-flow-head{padding:22px clamp(18px,4vw,34px) 16px;border-bottom:1px solid #edf1ed}
.registration-flow-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.registration-flow-heading h2{margin:0;color:#24412d;font-size:1.15rem}.registration-role-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#edf5ed;color:#356943;font-size:.78rem;font-weight:800}
.registration-progress{height:7px;margin-top:18px;overflow:hidden;border-radius:9px;background:#eaf0ea}.registration-progress span{display:block;height:100%;border-radius:9px;background:#3f884f;transition:width .2s}
.registration-progress-label{margin-top:8px;color:#758178;font-size:.78rem}
.registration-form{padding:24px clamp(18px,4vw,34px) 30px}.registration-step h3{margin:0 0 7px;color:#283d2e;font-size:1.15rem}.registration-step-intro{margin:0 0 22px;color:#738076;font-size:.86rem;line-height:1.6}
.registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px}.registration-field{min-width:0}.registration-field.is-wide{grid-column:1/-1}.registration-field label,.registration-field legend{display:block;margin-bottom:7px;color:#35483a;font-size:.83rem;font-weight:800}.registration-field .optional{color:#849086;font-weight:500}
.registration-geography{padding:16px;border:1px solid #dfe9df;border-radius:13px;background:linear-gradient(135deg,#f8fbf7,#fff)}.registration-geography-heading{display:grid;gap:4px;margin-bottom:14px;color:#35483a;font-size:.88rem}.registration-geography-heading small,.registration-geography-status{color:#738076;font-size:.76rem;line-height:1.5}.registration-geography-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 14px}.registration-field select:disabled{background:#f0f3f0;color:#929b93;cursor:not-allowed}.registration-geography-status{min-height:1.2em;margin:12px 0 0}
.registration-field input,.registration-field select,.registration-field textarea{display:block;width:100%;min-height:47px;padding:11px 13px;border:1px solid #d9e3da;border-radius:10px;background:#fbfdfb;color:#25362a;font:500 .9rem Manrope,Arial,sans-serif;outline:none}
.registration-field textarea{min-height:92px;resize:vertical}.registration-field input:focus,.registration-field select:focus,.registration-field textarea:focus{border-color:#5a9864;box-shadow:0 0 0 3px #5a986421}
.registration-field input[type=file]{padding:9px;background:#fff;font-size:.8rem}.registration-field small{display:block;margin-top:5px;color:#7c887e;font-size:.75rem;line-height:1.5}
.registration-options{display:flex;flex-wrap:wrap;gap:9px}.registration-option{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 12px;border:1px solid #dce6dd;border-radius:10px;background:#fbfdfb;color:#45564a;font-size:.84rem}.registration-option input{accent-color:#347344}
.registration-consents{display:grid;gap:11px;margin-top:22px;padding:15px;border-radius:12px;background:#f6f9f6}.registration-consents label{display:flex;align-items:flex-start;gap:9px;color:#56645a;font-size:.82rem;line-height:1.55}.registration-consents input{margin-top:3px;accent-color:#347344}.registration-consents a,.registration-step a{color:#28663a;font-weight:700}
.registration-hint{display:flex;align-items:flex-start;gap:10px;margin:18px 0;padding:13px 14px;border-radius:11px;background:#eff6ef;color:#526a58;font-size:.82rem;line-height:1.55}.registration-hint i{margin-top:2px;color:#43814e}
.registration-flow-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;padding-top:19px;border-top:1px solid #edf1ed}
.registration-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 18px;border:1px solid #d5e1d6;border-radius:10px;background:#fff;color:#365440;font:800 .87rem Manrope,Arial,sans-serif;cursor:pointer}.registration-button.primary{border-color:#28663a;background:#28663a;color:#fff}.registration-button.primary:hover{background:#1d532d}.registration-button:disabled{opacity:.6;cursor:wait}
.registration-back-type{display:inline-flex;align-items:center;gap:7px;margin:0 0 14px;border:0;background:transparent;color:#687a6c;font:700 .82rem Manrope,Arial,sans-serif;cursor:pointer}
.registration-summary{display:grid;gap:10px}.registration-summary-group{padding:14px;border:1px solid #e3ebe4;border-radius:12px}.registration-summary-group h4{margin:0 0 9px;color:#31583a;font-size:.86rem}.registration-summary-group dl{display:grid;grid-template-columns:minmax(110px,.65fr) 1.35fr;gap:6px 14px;margin:0;font-size:.82rem}.registration-summary-group dt{color:#758078}.registration-summary-group dd{margin:0;color:#2c3d31;font-weight:700;overflow-wrap:anywhere}
.registration-feedback{min-height:1.3em;margin:15px auto 0;text-align:center;color:#2d7040;font-size:.88rem;font-weight:700}.registration-feedback.is-error{color:#a33a32}.registration-feedback a{color:inherit}
.registration-footer{margin-top:26px;text-align:center;color:#738076;font-size:.87rem}.registration-footer a{margin-left:5px;color:#28663a;font-weight:800;text-decoration:none}
@media(max-width:760px){.registration-choices{grid-template-columns:1fr}.registration-choice{min-height:0}.registration-top{margin-bottom:38px}.registration-choice p{min-height:0}.registration-expand-note{line-height:1.6}}
@media(max-width:760px){.registration-geography-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.registration-page{padding-top:16px}.registration-brand img{width:132px}.registration-home{font-size:.8rem}.registration-intro{margin-bottom:24px}.registration-grid{grid-template-columns:1fr;gap:14px}.registration-field.is-wide{grid-column:auto}.registration-geography{padding:13px}.registration-geography-grid{grid-template-columns:1fr;gap:12px}.registration-flow{border-radius:15px}.registration-flow-actions .registration-button{padding:0 12px}.registration-summary-group dl{grid-template-columns:1fr;gap:2px}.registration-summary-group dd{margin-bottom:6px}}
