:root{--livio:#284985;--text:#18202a;--muted:#657181;--line:#d7dde6;--panel:#f7f8fb;--ok:#24724a;--danger:#a72f2f;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:#eef1f6;color:var(--text);line-height:1.45}
.wrap{width:min(920px,calc(100% - 24px));margin:24px auto 56px;background:white;border-radius:18px;box-shadow:0 10px 38px rgba(20,35,60,.10);overflow:hidden}
.header{padding:28px 30px 18px;border-bottom:1px solid var(--line)}.logo{display:block;width:min(220px,48vw);height:auto;margin-bottom:18px}h1{margin:0;font-size:clamp(28px,5vw,42px);line-height:1.1;color:var(--livio)}.intro{margin:10px 0 0;color:var(--muted);max-width:70ch}
.savebar{position:sticky;top:0;z-index:10;padding:10px 30px 12px;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);font-size:14px;box-shadow:0 3px 14px rgba(20,35,60,.05)}.savebar-top{display:flex;gap:12px;align-items:center;justify-content:space-between}.save-meta{display:flex;gap:10px;align-items:center;min-width:0}#saveStatus{color:var(--ok);font-weight:700;white-space:nowrap}.saved-note{color:var(--muted);white-space:nowrap}.progress-copy{font-weight:750;color:var(--livio);white-space:nowrap}.progress-track{height:8px;margin-top:9px;background:#e7ebf2;border-radius:999px;overflow:hidden}.progress-fill{height:100%;width:0;background:var(--livio);border-radius:999px;transition:width .18s ease}.progress-sub{display:flex;justify-content:space-between;gap:12px;margin-top:5px;font-size:12px;color:var(--muted)}#currentSection{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
form{padding:10px 30px 34px}.form-section{padding:22px 0;border-bottom:1px solid var(--line)}.form-section:last-of-type{border-bottom:0}h2{font-size:19px;margin:0 0 16px;color:var(--livio)}
.field{margin:0 0 16px}.field:last-child{margin-bottom:0}.field-label{display:block;font-weight:650;margin:0 0 7px}.req{color:var(--danger)}
input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],textarea{width:100%;border:1px solid #aeb7c5;border-radius:10px;padding:12px 13px;font:inherit;background:white;min-height:46px}textarea{resize:vertical;min-height:82px}input:focus,textarea:focus{outline:3px solid rgba(40,73,133,.16);border-color:var(--livio)}
.choices{display:flex;flex-wrap:wrap;gap:9px}.choice{display:flex;align-items:center;gap:8px;border:1px solid #b8c0cc;border-radius:10px;padding:10px 13px;min-height:44px;cursor:pointer;background:#fff}.choice:has(input:checked){border-color:var(--livio);box-shadow:0 0 0 2px rgba(40,73,133,.12)}.choice input{width:19px;height:19px;accent-color:var(--livio)}.single{width:max-content}.hint{font-size:13px;color:var(--muted);margin-top:6px}
.actions{display:flex;gap:10px;justify-content:space-between;align-items:center;padding-top:26px;flex-wrap:wrap}button{border:0;border-radius:10px;padding:12px 18px;font:inherit;font-weight:700;cursor:pointer}.primary{background:var(--livio);color:#fff}.secondary{background:#eef1f5;color:#334052}.danger{background:#fff;color:var(--danger);border:1px solid #d9b1b1}button:focus-visible{outline:3px solid rgba(40,73,133,.25)}
.footer-note{font-size:13px;color:var(--muted);margin-top:14px}.noscript{margin:16px 30px;padding:12px;border:1px solid #e5b7b7;background:#fff5f5;border-radius:10px}

.skip-link{position:fixed;left:12px;top:12px;z-index:1000;transform:translateY(-180%);background:#fff;color:var(--livio);padding:12px 16px;border:2px solid var(--livio);border-radius:10px;font-weight:800;box-shadow:0 6px 20px rgba(20,35,60,.15)}
.skip-link:focus{transform:translateY(0)}
input:focus-visible,textarea:focus-visible,.choice:focus-within,button:focus-visible,a:focus-visible{outline:3px solid #111;outline-offset:3px}
.form-section{scroll-margin-top:118px}
.field-label{cursor:default}
.floating-progress{position:fixed;right:18px;bottom:18px;z-index:20;width:190px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 30px rgba(20,35,60,.16);padding:12px 14px}
.floating-progress strong{display:block;color:var(--livio);font-size:15px}.floating-progress .mini-track{height:7px;margin-top:8px;background:#e7ebf2;border-radius:999px;overflow:hidden}.floating-progress .mini-fill{height:100%;width:0;background:var(--livio);border-radius:999px;transition:width .18s ease}.floating-progress small{display:block;margin-top:6px;color:var(--muted);line-height:1.25}
.floating-save{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:11px;color:var(--ok);font-weight:700}
.floating-save-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 auto}
.floating-save.is-saving{color:var(--muted)}
.floating-save.is-error{color:#b42318}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width:640px){body{padding-bottom:76px}.wrap{width:100%;margin:0;border-radius:0;box-shadow:none}.header,.savebar,form{padding-left:16px;padding-right:16px}.savebar-top{align-items:flex-start}.save-meta{display:block}.saved-note{display:none}.progress-copy{font-size:13px}.progress-sub{font-size:11px}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.choice{justify-content:center}.single{width:100%}.actions{align-items:stretch;flex-direction:column}button{width:100%}.floating-progress{left:12px;right:12px;bottom:10px;width:auto;padding:9px 12px;border-radius:13px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.floating-progress strong{font-size:14px}.floating-progress .mini-track{margin:0;height:8px}.floating-progress small{grid-column:1/-1;margin-top:3px;font-size:11px}.floating-save{grid-column:1/-1;margin-top:3px}}
@media print{body{background:white}.wrap{box-shadow:none;width:100%;margin:0}.savebar,.floating-progress,.actions,.footer-note,.skip-link{display:none}.form-section{break-inside:avoid}}

.required-note{margin:10px 0 0;color:var(--danger);font-size:14px;font-weight:650}.conditional-req{display:none;color:var(--danger)}.field.is-conditionally-required .conditional-req{display:inline}.attestation-list{margin:4px 0 12px;padding-left:24px}.attestation-list li{margin:6px 0}
.version-banner{display:none;margin:0 30px 16px;padding:12px 16px;border:1px solid #f0c36d;background:#fff8e6;border-radius:10px;color:#6b4c02;font-weight:650}.version-banner.is-visible{display:block}
.char-counter{font-size:12px;color:var(--muted);margin-top:4px;text-align:right}.char-counter.is-warning{color:var(--danger);font-weight:650}
input[type="number"][name$="_ar"]{-moz-appearance:textfield;appearance:textfield}input[type="number"][name$="_ar"]::-webkit-inner-spin-button,input[type="number"][name$="_ar"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}