.contract-shell{background:#f5f6f8;min-height:calc(100vh - 120px);padding:56px 20px}.contract-wrap{max-width:920px;margin:auto;background:#fff;border-radius:24px;padding:42px;box-shadow:0 18px 60px rgba(20,25,35,.09)}.contract-progress{display:flex;align-items:flex-start;justify-content:center;margin-bottom:44px}.progress-item{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:64px;color:#7c8088;font-weight:700}.progress-item span{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e8e9ed;color:#34363b;font-weight:800}.progress-item small{font-size:12px}.progress-item.active,.progress-item.done{color:#d71920}.progress-item.active span,.progress-item.done span{background:#d71920;color:#fff}.contract-progress i{width:82px;height:3px;background:#e8e9ed;margin-top:19px}.contract-progress i.done{background:#d71920}.contract-step{display:none}.contract-step.active{display:block}.contract-step h1{text-align:center;margin:8px 0 12px;font-size:clamp(32px,5vw,48px)}.contract-step>.eyebrow{display:block;text-align:center}.selected-offer,.step-intro{text-align:center;margin:0 auto 30px;max-width:650px}.selected-offer strong{color:#d71920}.contract-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contract-form label,.upload-grid label,.fallback-capture{font-weight:700;display:flex;flex-direction:column;gap:8px}.contract-form input,.contract-form select,.upload-grid input,.fallback-capture input{border:1px solid #d9dce2;border-radius:12px;padding:14px;font:inherit;background:#fff}.contract-form input:focus,.contract-form select:focus{outline:3px solid rgba(215,25,32,.12);border-color:#d71920}.address-wide{grid-column:1/-1}.full{grid-column:1/-1}.btn-wide{width:100%;justify-content:center}.capture-panel,.upload-grid{border:1px solid #e0e2e6;border-radius:18px;padding:24px;margin:25px 0}.capture-panel h2{text-align:center;margin:0 0 8px}.capture-panel>p{text-align:center}.capture-panel video{width:100%;max-height:390px;background:#111;border-radius:14px;aspect-ratio:16/9;object-fit:cover}.capture-actions,.step-actions,.signature-actions,.thanks-actions{display:flex;gap:12px;justify-content:center;margin-top:20px}.fallback-capture{margin-top:22px;padding-top:20px;border-top:1px solid #e4e5e8}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.file-note{font-size:12px;color:#737780;font-weight:500}.status-text{text-align:center;font-weight:700}.record-meter{height:6px;background:#eceef1;border-radius:10px;overflow:hidden;margin:18px 0 0;display:none}.record-meter.active{display:block}.record-meter span{display:block;width:0;height:100%;background:#d71920}.record-meter.active span{animation:recording 5s linear forwards}@keyframes recording{to{width:100%}}.step-actions{justify-content:space-between;margin-top:30px}.signature-box{position:relative}.signature-box span{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);color:#bbb;pointer-events:none;font-size:13px}#signaturePad{width:100%;height:300px;border:2px dashed #aeb2ba;border-radius:16px;background:#fff;touch-action:none}.consent{display:flex;gap:12px;align-items:flex-start;margin-top:24px;padding:18px;border-radius:14px;background:#f6f7f9}.consent input{margin-top:3px;accent-color:#d71920}.thanks{text-align:center;padding:20px 0}.success-mark{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:#e8f8ee;color:#178a44;font-size:48px;font-weight:800;margin:0 auto 22px}.reference{background:#f5f6f8;padding:14px 20px;border-radius:12px;display:inline-block}.contract-online-btn{margin-top:10px}.btn-outline{border:2px solid #000;color:#000;background:#fff}.btn-outline:hover{background:#000;color:#fff}@media(max-width:700px){.contract-wrap{padding:26px 18px;border-radius:18px}.contract-form,.upload-grid{grid-template-columns:1fr}.address-wide{grid-column:auto}.contract-progress i{width:18px}.progress-item{min-width:46px}.progress-item small{font-size:10px}.step-actions{gap:10px}.step-actions .btn{flex:1}.capture-actions,.thanks-actions{flex-direction:column}.contract-shell{padding:24px 10px}.actions .btn-light{display:none}}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.consent a{color:inherit;text-decoration:underline}.btn:disabled{opacity:.55;cursor:not-allowed}


.consent-group{display:grid;gap:18px;margin-top:22px}.marketing-consents{border:1px solid #ddd;border-radius:16px;padding:20px;background:#fafafa}.marketing-consents h2{font-size:20px;margin:0 0 6px}.marketing-consents>p{margin:0 0 16px;color:#666}.marketing-consents .consent{margin:12px 0}.required-consent{border-left:4px solid #e30613;padding-left:14px}.consent input{flex:0 0 auto;margin-top:4px}
