@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700;800&display=swap');
:root{
  --g:#063D29;--g2:#0A5C3C;--g3:#12834F;--gl:#D6F0E3;--gxl:#EEF9F4;
  --am:#E9A00E;--aml:#FBF0D0;
  --tx:#0F1A14;--sb:#4A6356;--mu:#8CA89A;--bd:#D8EAE2;--bg:#F4FAF7;--wh:#fff;
  --er:#C0392B;--erl:#FDEDEB;
  --r:12px;--r-lg:18px;--rp:100px;
  --ease:cubic-bezier(.4,0,.2,1);--spring:cubic-bezier(.34,1.56,.64,1);
  --sh:0 4px 24px rgba(6,61,41,.08);
  --fn:'DM Sans',-apple-system,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
@keyframes dlcob-slide-left{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
@keyframes dlcob-slide-right{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}
@keyframes dlcob-pop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes dlcob-spin{to{transform:rotate(360deg)}}
.dlcob-wrap{font-family:var(--fn);color:var(--tx);max-width:700px;margin:0 auto}
.dlcob-hero{background:linear-gradient(135deg,var(--g),var(--g2));border-radius:var(--r-lg) var(--r-lg) 0 0;padding:clamp(24px,4vw,48px) clamp(20px,4vw,48px);text-align:center;color:#fff}
.dlcob-hero-badge{display:inline-block;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);padding:5px 14px;border-radius:var(--rp);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:14px}
.dlcob-hero h1{font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.02em;margin-bottom:8px}
.dlcob-hero p{font-size:15px;opacity:.8}
.dlcob-progress-header{background:var(--wh);border-left:1px solid var(--bd);border-right:1px solid var(--bd);padding:20px 28px 0}
.dlcob-steps-nav{display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.dlcob-step-dot{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0}
.dlcob-dot-num{width:32px;height:32px;border-radius:50%;background:var(--bg);border:2px solid var(--bd);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--mu);transition:all .3s var(--ease)}
.dlcob-dot-label{font-size:11px;font-weight:600;color:var(--mu);white-space:nowrap;transition:color .3s}
.dlcob-step-dot.active .dlcob-dot-num{background:var(--g);border-color:var(--g);color:#fff;transform:scale(1.1)}
.dlcob-step-dot.active .dlcob-dot-label{color:var(--g);font-weight:700}
.dlcob-step-dot.done .dlcob-dot-num{background:var(--g3);border-color:var(--g3);color:#fff;font-size:0}
.dlcob-step-dot.done .dlcob-dot-num::after{content:'✓';font-size:14px}
.dlcob-step-dot.done .dlcob-dot-label{color:var(--g3)}
.dlcob-step-line{flex:1;height:2px;background:var(--bd);margin:0 8px;margin-bottom:22px;transition:background .3s}
.dlcob-step-line.done{background:var(--g3)}
.dlcob-progress-bar{height:3px;background:var(--bg);border-radius:2px;overflow:hidden}
.dlcob-progress-fill{height:100%;background:linear-gradient(90deg,var(--g),var(--g3));border-radius:2px;transition:width .5s var(--ease)}
#dlcob-form{background:var(--wh);border:1px solid var(--bd);border-top:none;border-radius:0 0 var(--r-lg) var(--r-lg);overflow:hidden}
.dlcob-step{display:none;padding:28px clamp(20px,4vw,40px)}
.dlcob-step.active{display:block;animation:dlcob-slide-left .35s var(--ease)}
.dlcob-step.going-back{animation:dlcob-slide-right .35s var(--ease)}
.dlcob-step-hero{text-align:center;margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--bg)}
.dlcob-step-emoji{font-size:42px;margin-bottom:10px;display:block}
.dlcob-step-hero h2{font-size:clamp(18px,2.5vw,24px);font-weight:700;color:var(--tx);margin-bottom:6px}
.dlcob-step-hero p{font-size:14px;color:var(--mu)}
.dlcob-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dlcob-field-full{grid-column:1/-1}
.dlcob-field-half{grid-column:span 1}
.dlcob-field-quarter{grid-column:span 1}
.dlcob-field-third{grid-column:span 1}
.dlcob-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--sb);margin-bottom:6px}
.dlcob-req{color:var(--er);font-weight:700}
.dlcob-opt{font-size:10px;font-weight:400;color:var(--mu);text-transform:none;letter-spacing:0}
.dlcob-input{width:100%;padding:12px 14px;border:1.5px solid var(--bd);border-radius:var(--r);font-size:14px;font-family:var(--fn);background:var(--bg);color:var(--tx);transition:all .18s;outline:none;line-height:1.4}
.dlcob-input:focus{border-color:var(--g3);background:var(--wh);box-shadow:0 0 0 3px rgba(18,131,79,.09)}
.dlcob-input.dlcob-err-field{border-color:var(--er)}
textarea.dlcob-input{resize:vertical;min-height:80px}
.dlcob-textarea-wrap{position:relative}
.dlcob-char-count{position:absolute;bottom:10px;right:12px;font-size:11px;color:var(--mu);pointer-events:none}
.dlcob-select-wrap{position:relative}
.dlcob-select-wrap::after{content:'▾';position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--mu);pointer-events:none;font-size:12px}
.dlcob-select{width:100%;padding:12px 32px 12px 14px;border:1.5px solid var(--bd);border-radius:var(--r);font-size:14px;font-family:var(--fn);background:var(--bg);color:var(--tx);appearance:none;cursor:pointer;transition:all .18s}
.dlcob-select:focus{outline:none;border-color:var(--g3);background:var(--wh);box-shadow:0 0 0 3px rgba(18,131,79,.09)}
.dlcob-err{display:block;font-size:12px;color:var(--er);font-weight:600;margin-top:5px;min-height:16px}
.dlcob-phone-row{display:flex;gap:10px}
.dlcob-phone-code{width:90px;flex-shrink:0;text-align:center;font-weight:700;color:var(--g);background:var(--gxl);border-color:var(--gl)}
.dlcob-phone-num{flex:1}
.dlcob-type-chips{display:flex;gap:10px;flex-wrap:wrap}
.dlcob-type-chip{cursor:pointer}
.dlcob-type-chip input{position:absolute;opacity:0;width:0;height:0}
.dlcob-type-chip span{display:flex;align-items:center;padding:10px 16px;border:1.5px solid var(--bd);border-radius:var(--rp);font-size:13px;font-weight:600;color:var(--sb);background:var(--bg);cursor:pointer;transition:all .2s;white-space:nowrap}
.dlcob-type-chip input:checked+span{background:var(--g);color:#fff;border-color:var(--g);box-shadow:0 4px 12px rgba(6,61,41,.2)}
.dlcob-chip-grid{display:flex;flex-wrap:wrap;gap:8px}
.dlcob-chip-label{cursor:pointer}
.dlcob-chip-label input{position:absolute;opacity:0;width:0;height:0}
.dlcob-chip{display:inline-block;padding:7px 14px;border:1.5px solid var(--bd);border-radius:var(--rp);font-size:13px;font-weight:600;color:var(--sb);background:var(--bg);cursor:pointer;transition:all .18s var(--spring)}
.dlcob-chip-label input:checked+.dlcob-chip{background:var(--g);color:#fff;border-color:var(--g);transform:scale(1.04)}
.dlcob-chip-large{padding:10px 18px;font-size:14px}
.dlcob-diaspora-toggle{display:inline-flex}
.dlcob-diaspora-extra{background:var(--gxl);border:1px solid var(--gl);border-radius:var(--r);padding:14px 16px}
.dlcob-engagement-box{background:linear-gradient(135deg,#0F2D1E,#063D29);border-radius:var(--r-lg);padding:20px 22px;color:#fff}
.dlcob-eb-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap}
.dlcob-eb-header strong{font-size:15px;font-weight:700}
.dlcob-eb-header span{font-size:12px;opacity:.65;max-width:260px;line-height:1.4}
.dlcob-eb-live{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border-radius:var(--r);padding:10px 14px;margin-bottom:16px}
.dlcob-er-label{font-size:12px;opacity:.7;font-weight:600}
.dlcob-er-val{font-size:26px;font-weight:800;color:#4ADE80;margin-left:auto;letter-spacing:-.02em;transition:color .3s}
.dlcob-stats-row{grid-template-columns:1fr 1fr 1fr}
.dlcob-engagement-box .dlcob-label{color:rgba(255,255,255,.65)}
.dlcob-engagement-box .dlcob-input{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff;text-align:center;font-size:18px;font-weight:700}
.dlcob-engagement-box .dlcob-input::placeholder{color:rgba(255,255,255,.35);font-size:14px;font-weight:400}
.dlcob-engagement-box .dlcob-input:focus{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.5)}
.dlcob-engagement-box .dlcob-err{color:#FCA5A5}
.dlcob-photo-drop{position:relative;border:2px dashed var(--bd);border-radius:var(--r-lg);height:200px;overflow:hidden;cursor:pointer;transition:all .2s;background:var(--bg);display:flex;align-items:center;justify-content:center}
.dlcob-photo-drop:hover,.dlcob-photo-drop.drag-over{border-color:var(--g3);background:var(--gxl)}
.dlcob-photo-drop.has-file{border-style:solid;border-color:var(--g3)}
.dlcob-photo-ph{text-align:center;pointer-events:none}
.dlcob-photo-icon{font-size:40px;margin-bottom:10px;display:block}
.dlcob-photo-ph p{font-size:14px;font-weight:600;color:var(--sb);margin-bottom:4px}
.dlcob-photo-ph span{font-size:12px;color:var(--mu)}
.dlcob-file-drop{position:relative;border:1.5px dashed var(--bd);border-radius:var(--r);padding:16px 20px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .2s;background:var(--bg)}
.dlcob-file-drop:hover,.dlcob-file-drop.has-file{border-color:var(--g3);border-style:solid;background:var(--gxl)}
.dlcob-file-icon{font-size:28px;flex-shrink:0}
.dlcob-file-drop p{font-size:13px;font-weight:600;color:var(--sb);margin-bottom:2px}
.dlcob-file-drop span{font-size:11px;color:var(--mu)}
.dlcob-check-list{display:flex;flex-direction:column;gap:10px}
.dlcob-check-item{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:14px;color:var(--sb);line-height:1.5;position:relative;padding:2px 0}
.dlcob-check-item input{position:absolute;opacity:0;width:0;height:0}
.dlcob-checkmark{width:20px;height:20px;border:2px solid var(--bd);border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .18s var(--spring);background:var(--bg);margin-top:2px}
.dlcob-check-item input:checked~.dlcob-checkmark{background:var(--g);border-color:var(--g)}
.dlcob-check-item input:checked~.dlcob-checkmark::after{content:'✓';color:#fff;font-size:12px;font-weight:800}
.dlcob-terms-item{padding:14px 16px;background:var(--gxl);border:1px solid var(--gl);border-radius:var(--r);font-weight:500}
.dlcob-terms-item a{color:var(--g3);font-weight:700}
.dlcob-summary-card{background:var(--gxl);border:1px solid var(--gl);border-radius:var(--r-lg);padding:18px 20px}
.dlcob-summary-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;font-size:13px;font-weight:700;color:var(--g)}
.dlcob-edit-link{font-size:12px;font-weight:700;color:var(--g3);background:none;border:1px solid var(--gl);border-radius:var(--rp);padding:4px 12px;cursor:pointer;font-family:var(--fn)}
.dlcob-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dlcob-summary-item{background:var(--wh);border-radius:var(--r);padding:8px 12px}
.dlcob-summary-item span{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mu);margin-bottom:3px}
.dlcob-summary-item strong{font-size:13px;color:var(--tx)}
.dlcob-form-err{padding:12px 16px;background:var(--erl);color:var(--er);border:1px solid #FECACA;border-radius:var(--r);font-size:13px;font-weight:600}
.dlcob-nav{display:flex;align-items:center;justify-content:space-between;padding-top:24px;margin-top:8px;border-top:1px solid var(--bg)}
.dlcob-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:var(--rp);font-size:14px;font-weight:700;font-family:var(--fn);cursor:pointer;border:none;transition:all .22s;white-space:nowrap}
.dlcob-btn-next{background:var(--g);color:#fff}
.dlcob-btn-next:hover{background:var(--g2);transform:translateY(-1px);box-shadow:0 6px 20px rgba(6,61,41,.25)}
.dlcob-btn-ghost{background:transparent;border:1.5px solid var(--bd);color:var(--sb)}
.dlcob-btn-ghost:hover{border-color:var(--g);color:var(--g);background:var(--gxl)}
.dlcob-btn-submit{background:var(--am);color:var(--g)}
.dlcob-btn-submit:hover:not(:disabled){background:#d4930f;transform:translateY(-2px);box-shadow:0 6px 22px rgba(233,160,14,.35)}
.dlcob-btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.dlcob-spinner{animation:dlcob-spin .7s linear infinite}
.dlcob-success{background:var(--wh);border:1px solid var(--bd);border-top:none;border-radius:0 0 var(--r-lg) var(--r-lg);padding:60px 40px;text-align:center}
.dlcob-success-inner{max-width:420px;margin:0 auto}
.dlcob-success-circle{width:80px;height:80px;background:linear-gradient(135deg,var(--g),var(--g3));border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 40px rgba(6,61,41,.25);animation:dlcob-pop .5s var(--spring)}
.dlcob-success h2{font-size:26px;font-weight:800;color:var(--tx);margin-bottom:12px;margin-top:20px}
.dlcob-success p{font-size:15px;color:var(--sb);line-height:1.6;margin-bottom:8px}
.dlcob-success-note{font-size:13px;color:var(--mu)}
.dlcob-success-link{display:inline-block;margin-top:20px;color:var(--g3);font-weight:700;font-size:14px;text-decoration:none}
@media(max-width:600px){
  .dlcob-fields{grid-template-columns:1fr}
  .dlcob-field-half,.dlcob-field-quarter,.dlcob-field-third{grid-column:1/-1}
  .dlcob-stats-row{grid-template-columns:1fr}
  .dlcob-summary-grid{grid-template-columns:1fr}
  .dlcob-type-chips{flex-direction:column}
}
