:root {
    --clr-primary: 211.4, 44.9%, 47.6%;
    --clr-accent: 211.4, 44.9%, 47.6%;
    --clr-white: 0, 0%, 100%;
    --clr-black: 0, 0%, 0%;
    --clr-heading: hsl(var(--clr-accent));
    --heading-font: "Merriweather", serif;
    --body-font: "Open Sans", sans-serif;
    --primary: hsl(var(--clr-primary));
    --primary-hover: hsl(var(--clr-accent));
    --secondary: #e2e8f0;
    --bg: #f4f6f9;
    --card: #ffffff;
    --border: #d1d5db;
    --text: #1f2937;
    --text-muted: #6b7280;
    --input-bg: #ffffff;
    --focus: #3b82f6
}*{margin:0;padding:0;box-sizing:border-box;font-family:"Open Sans","Plus Jakarta Sans",sans-serif}h1,h2,h3,h4{font-family:"Open Sans","Outfit",sans-serif;color:var(--primary)}.app-container{display:flex;width:100%;max-width:1200px;background:var(--card);border:1px solid var(--border);overflow:hidden;box-shadow:0 10px 40px -10px rgba(0,0,0,.1);min-height:800px;margin-inline:auto}.sidebar{width:320px;background:#f8fafc;border-right:1px solid var(--border);padding:2.5rem 2rem;display:flex;flex-direction:column}.sidebar-header{margin-bottom:3rem}.sidebar-header .logo{font-size:1rem;font-weight:800;color:var(--primary);letter-spacing:1px;margin-bottom:.5rem}.sidebar-header h2{font-size:1.2rem;font-weight:700;color:#111827}.stepper{list-style:none;flex-grow:1}.step{display:flex;align-items:center;margin-bottom:2rem;position:relative;opacity:.6;transition:all 0.3s ease}.step.active{opacity:1}.step.completed{opacity:1}.step:not(:last-child)::after{content:"";position:absolute;left:20px;top:45px;width:2px;height:calc(100% - 20px);background:var(--border);z-index:1}.step.completed:not(:last-child)::after{background:var(--primary)}.step-num{width:42px;height:42px;border-radius:50%;background:#fff;border:2px solid var(--border);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;z-index:2;transition:all 0.3s;flex-shrink:0}.step.active .step-num{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 0 4px rgba(15,61,129,.15)}.step.completed .step-num{background:var(--primary);border-color:var(--primary);color:#fff}.step-info{margin-left:1rem;width:max-content}.step-title{display:block;font-size:1.05rem;font-weight:600;margin-bottom:.2rem;color:#374151}.step.active .step-title,.step.completed .step-title{color:#111827}.step-desc{display:block;font-size:.85rem;color:var(--text-muted)}.form-wrapper{flex-grow:1;padding:3rem 4rem;position:relative;overflow-y:auto;background:#fff}.form-section{display:none;animation:fadeIn 0.4s ease forwards}.form-section.active{display:block}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-header{margin-bottom:2.5rem}.section-header h2{font-size:2.2rem;margin-bottom:.5rem;color:var(--primary)}.section-header p{color:var(--text-muted);font-size:1.1rem}.subsection-title{font-size:1.3rem;margin-bottom:1.5rem;color:var(--primary);border-bottom:2px solid #f1f5f9;padding-bottom:.5rem;font-weight:600}.section-divider{height:1px;background:var(--border);margin:2.5rem 0;margin-bottom:10px}.input-group{margin-bottom:1.5rem;display:flex;flex-direction:column}.input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 1.5rem}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.address-card{background:#f8fafc;border:1px solid var(--border);border-radius:12px;padding:1.5rem}.address-card h3{margin-bottom:1.2rem;font-size:1.1rem;color:var(--primary)}label{font-size:.95rem;font-weight:600;margin-bottom:.5rem;color:#374151}.sub-label{font-size:.8rem;color:var(--text-muted);font-weight:400;margin-left:.5rem}input[type="text"],input[type="date"],select,textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:.8rem 1rem;font-size:1rem;transition:all 0.3s;outline:none;box-shadow:0 1px 2px rgba(0,0,0,.05)}input:focus,select:focus,textarea:focus{border-color:var(--focus);box-shadow:0 0 0 3px rgba(59,130,246,.15)}textarea{resize:vertical}.radio-group{display:flex;gap:2rem;margin-top:.5rem}.radio-label{display:flex;align-items:center;cursor:pointer}.radio-label input[type="radio"]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid #9ca3af;border-radius:50%;margin-right:10px;position:relative;transition:all 0.2s;outline:none;background:#fff}.radio-label input[type="radio"]:checked{border-color:var(--primary)}.radio-label input[type="radio"]:checked::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background:var(--primary);border-radius:50%}.form-actions{display:flex;margin-top:3rem}.space-between{justify-content:space-between}.btn{padding:.8rem 1.8rem;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all 0.3s;display:inline-flex;align-items:center;gap:.5rem;border:none}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 6px rgba(15,61,129,.2);margin-left:auto}.mt-large{margin-top:2rem}.documents-upload-area{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;background:#f8fafc;padding:2rem;border-radius:12px;border:1px dashed var(--border)}.documents-upload-area .input-group{background:#fff;padding:1rem;border-radius:8px;border:1px solid var(--border)}.documents-upload-area label{margin-bottom:.8rem}input[type="file"]{width:100%;font-size:.9rem;color:var(--text-muted)}input[type="file"]::file-selector-button{background:var(--primary);color:#fff;padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;margin-right:1rem;transition:0.3s}input[type="file"]::file-selector-button:hover{background:var(--primary-hover)}span.required{color:#ef4444;margin-left:2px}.stepper::-webkit-scrollbar{width:8px;height:4px}.stepper::-webkit-scrollbar-track{background:#f8fafc}.stepper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.stepper::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:900px){.app-container{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);padding:1.5rem}.stepper{display:flex;overflow-x:auto;gap:1.5rem;justify-content:space-evenly;padding-bottom:.5rem}.step{margin-bottom:0}.step:not(:last-child)::after{display:none}.card-grid{grid-template-columns:1fr}.form-wrapper{padding:2rem 1.5rem}}