:root{--ink:#182c52;--text:#20242b;--muted:#667080;--red:#d42129;--line:#dce1e8;--soft:#f4f6f9;--white:#fff;--shadow:0 18px 48px rgba(21,40,76,.09)}
*{box-sizing:border-box}body{margin:0;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--text);background:#fafbfc;font-size:16px;line-height:1.5}.site-header{height:104px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,32px);border-bottom:1px solid #edf0f4}.brand img{display:block;width:214px;height:auto}.secure-note{color:var(--muted);font-size:.9rem;display:flex;align-items:center;gap:10px}.lock{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;color:var(--red);font-size:1.3rem}.shell{max-width:1240px;margin:52px auto 80px;padding:0 28px;display:grid;grid-template-columns:285px minmax(0,1fr);gap:58px}.progress-card{position:sticky;top:28px;align-self:start;background:var(--ink);color:#fff;padding:30px;border-radius:4px;box-shadow:var(--shadow)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:700;font-size:.72rem;color:var(--red);margin:0 0 7px}.progress-card h2{font-size:1.5rem;margin:0 0 30px}.progress-card ol{list-style:none;margin:0;padding:0}.progress-card li{position:relative;display:flex;gap:14px;align-items:flex-start;min-height:70px;color:#9eabc0}.progress-card li:not(:last-child):after{content:"";position:absolute;left:15px;top:34px;bottom:7px;border-left:1px solid #53627d}.progress-card li>span{width:31px;height:31px;border:1px solid #60708a;border-radius:50%;display:grid;place-items:center;font-size:.8rem;z-index:1;background:var(--ink)}.progress-card li b,.progress-card li small{display:block}.progress-card li b{font-size:.91rem}.progress-card li small{font-size:.75rem;margin-top:2px}.progress-card li.active,.progress-card li.done{color:#fff}.progress-card li.active>span{background:var(--red);border-color:var(--red)}.progress-card li.done>span{background:#fff;color:var(--ink);border-color:#fff}.help-box{border-top:1px solid #405171;margin-top:10px;padding-top:22px;display:flex;flex-direction:column;font-size:.86rem}.help-box a{color:#fff;text-decoration:none;margin-top:4px}.intro{margin-bottom:30px}.intro h1{font-size:clamp(2rem,4vw,3.15rem);line-height:1.08;letter-spacing:-.035em;color:var(--ink);margin:0 0 16px}.intro>p:not(.eyebrow){max-width:700px;color:var(--muted);font-size:1.05rem}.prototype-note{border-left:3px solid var(--red);background:#fff2f2;padding:11px 15px;margin-top:20px;font-size:.88rem;color:#6f282c}form{background:#fff;border:1px solid #e7eaf0;border-radius:5px;box-shadow:var(--shadow);padding:clamp(26px,5vw,52px)}.form-step{display:none}.form-step.active{display:block;animation:rise .22s ease-out}@keyframes rise{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.step-heading{display:flex;gap:20px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:30px}.step-heading>span{color:var(--red);font-weight:700;font-size:.83rem;margin-top:6px}.step-heading h2{color:var(--ink);font-size:1.65rem;margin:0}.step-heading p{color:var(--muted);margin:5px 0 0}.grid{display:grid;gap:23px 26px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.wide{grid-column:1/-1}label,legend{font-weight:700;color:#26334a;font-size:.9rem}label span{font-weight:400;color:var(--muted)}em{font-style:normal;color:var(--red)}input,select,textarea{display:block;width:100%;border:1px solid #cfd5df;border-radius:2px;background:#fff;color:var(--text);font:inherit;margin-top:8px;padding:12px 13px;outline:none;transition:.15s}textarea{resize:vertical;min-height:130px}input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(24,44,82,.09)}input.invalid,select.invalid,textarea.invalid{border-color:var(--red);background:#fffafa}.counter{display:block;text-align:right;color:var(--muted);font-weight:400;margin-top:5px}.compact{margin-top:24px}fieldset{border:1px solid var(--line);padding:18px;margin:0}fieldset legend{padding:0 6px}.choice{display:inline-flex;align-items:center;gap:9px;margin:8px 22px 0 0;font-weight:500}.choice input,.confirm input{width:18px;height:18px;margin:0;accent-color:var(--red)}.owner-card{background:var(--soft);border:1px solid var(--line);padding:24px;margin-bottom:18px;position:relative}.owner-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;color:var(--ink)}.owner-title h3{margin:0;font-size:1.05rem}.remove-owner{border:0;background:transparent;color:var(--red);cursor:pointer;font-weight:700}.add-person{border:1px dashed #aab4c3;background:#fff;color:var(--ink);width:100%;padding:14px;cursor:pointer;font-weight:700}.pep{margin-bottom:25px}.pep p{color:var(--muted);font-size:.88rem}.hidden{display:none!important}.pep #pepDetails{margin-top:18px;display:block}.upload{border:1px dashed #9da9ba;background:var(--soft);display:flex;align-items:center;justify-content:center;text-align:center;min-height:145px;cursor:pointer;margin:22px 0}.upload input{position:absolute;width:1px;height:1px;opacity:0}.upload span,.upload small{display:block}.upload b{color:var(--red);font-size:1rem}.file-list{margin:-10px 0 24px;color:var(--muted);font-size:.85rem}.confirm{display:flex;align-items:flex-start;gap:13px;background:#f5f7fa;padding:18px;margin-top:26px;font-weight:400}.confirm input{flex:0 0 auto;margin-top:3px}.form-error{color:#a51d24;font-size:.87rem;min-height:24px;margin-top:22px}.actions{border-top:1px solid var(--line);padding-top:24px;display:flex;align-items:center;gap:14px}.step-count{color:var(--muted);font-size:.85rem;margin-right:auto}.primary,.secondary{border-radius:2px;padding:12px 24px;font:700 .9rem Arial;cursor:pointer}.primary{background:var(--red);color:#fff;border:1px solid var(--red)}.primary:hover{background:#b61920}.secondary{background:#fff;color:var(--ink);border:1px solid #aeb7c4}.success{background:#fff;padding:65px;text-align:center;box-shadow:var(--shadow);border:1px solid var(--line)}.success-mark{margin:0 auto 20px;width:55px;height:55px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:1.6rem}.success h2{color:var(--ink);font-size:2rem;margin:0 0 12px}.success p:not(.eyebrow){color:var(--muted);max-width:590px;margin:0 auto 28px}footer{background:var(--ink);color:#c5cddd;display:flex;justify-content:space-between;padding:30px max(5vw,32px);font-size:.82rem}footer nav{display:flex;gap:22px}footer a{color:#fff;text-decoration:none}
@media(max-width:860px){.site-header{height:82px;padding:0 20px}.brand img{width:165px}.secure-note span:last-child{display:none}.shell{display:block;margin-top:28px;padding:0 16px}.progress-card{position:static;padding:18px;margin-bottom:26px}.progress-card h2,.progress-card li div,.help-box,.progress-card .eyebrow{display:none}.progress-card ol{display:flex;justify-content:space-between}.progress-card li{min-height:0}.progress-card li:not(:last-child):after{left:31px;top:15px;bottom:auto;width:calc(20vw - 35px);border-left:0;border-top:1px solid #53627d}.intro h1{font-size:2.2rem}form{padding:24px}.grid.two{grid-template-columns:1fr}.wide{grid-column:auto}.step-heading{gap:12px}.step-heading h2{font-size:1.35rem}.actions{flex-wrap:wrap}.step-count{order:-1;width:100%}.primary,.secondary{flex:1}footer{display:block;text-align:center}footer nav{justify-content:center;margin-top:10px}}
@media(max-width:440px){.intro h1{font-size:1.9rem}.step-heading>span{display:none}.owner-card{padding:17px}.success{padding:38px 24px}}

/* excent-style progress and participation total */
.progress-card{background:#fff;color:var(--ink);border-top:4px solid var(--red);border-radius:3px}
.progress-summary{display:flex;align-items:baseline;justify-content:space-between;margin:12px 0 9px}
.progress-summary strong{font-size:1.35rem;color:var(--ink)}
.progress-summary span{font-size:.75rem;color:var(--muted)}
.progress-track{height:3px;background:#e6e9ee;margin-bottom:28px;overflow:hidden}
.progress-track i{display:block;width:20%;height:100%;background:var(--red);transition:width .25s ease}
.progress-card li{color:#8a93a1}
.progress-card li:not(:last-child):after{border-color:#d7dce4}
.progress-card li>span{background:#fff;border-color:#c7ced8;color:#7f8998}
.progress-card li small{color:#9ba3af}
.progress-card li.active{color:var(--ink)}
.progress-card li.active>span{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 0 0 5px #fcebed}
.progress-card li.done{color:var(--ink)}
.progress-card li.done>span{background:var(--ink);border-color:var(--ink);color:#fff}
.help-box{border-color:var(--line);color:var(--ink)}
.help-box a{color:var(--red)}
.share-total{display:flex;justify-content:space-between;align-items:center;border-left:3px solid var(--ink);background:#edf1f6;color:var(--ink);padding:13px 16px;margin:4px 0 14px;font-size:.9rem}
.share-total strong{font-size:1rem}.share-total b{font-size:1.2rem}
.share-total.over{border-color:var(--red);background:#fff0f0;color:#a51d24}
@media(max-width:860px){.progress-card h2{display:none}.progress-summary{display:flex;margin:0 0 7px}.progress-track{margin-bottom:18px}.progress-card li:not(:last-child):after{border-color:#d7dce4}}
@media(max-width:520px){.share-total{align-items:flex-start;gap:6px;flex-direction:column}}
.company-search{position:relative}.field-hint{display:block;color:var(--muted);font-weight:400;font-size:.76rem;margin-top:6px}.uid-results{position:absolute;z-index:20;left:0;right:0;top:100%;background:#fff;border:1px solid #cfd5df;box-shadow:0 14px 30px rgba(21,40,76,.15);max-height:310px;overflow:auto}.uid-result{display:block;width:100%;padding:13px 14px;border:0;border-bottom:1px solid #e7eaf0;background:#fff;text-align:left;cursor:pointer;color:var(--text)}.uid-result:last-child{border-bottom:0}.uid-result:hover,.uid-result:focus{background:#f3f5f8;outline:none}.uid-result b,.uid-result span{display:block}.uid-result b{color:var(--ink);font-size:.9rem}.uid-result span{color:var(--muted);font-size:.78rem;margin-top:2px}.uid-result .uid-number{color:var(--red);font-weight:700}.uid-empty{padding:14px;color:var(--muted);font-size:.84rem}.uid-confirmed{color:#306a43!important;font-weight:700!important}
.signature-field{margin-top:27px}.signature-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.signature-heading label{margin:0}.signature-heading button{border:0;background:transparent;color:var(--red);font-weight:700;cursor:pointer;padding:5px 0}.signature-canvas-wrap{position:relative;border:1px solid #cfd5df;background:#fff;height:190px;overflow:hidden}.signature-canvas-wrap canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.signature-line{position:absolute;left:7%;right:7%;bottom:39px;border-top:1px solid #aeb6c2;padding-top:5px;color:#8b95a4;font-size:.72rem;pointer-events:none}.signature-field>small{display:block;color:var(--muted);font-size:.76rem;margin-top:6px}.signature-field.invalid .signature-canvas-wrap{border-color:var(--red);background:#fffafa;box-shadow:0 0 0 3px rgba(212,33,41,.08)}
@media(max-width:520px){.signature-heading{align-items:flex-start;flex-direction:column;gap:2px}.signature-canvas-wrap{height:165px}}
input.register-locked,select.register-locked{background:#eef1f5;color:#556173;border-color:#d8dde5;cursor:not-allowed}
