@font-face{font-family:Manrope;src:url('/assets/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
:root{--red:#ba1530;--red-dark:#961026;--ink:#242424;--muted:#66666b;--border:#e1e0dd;--paper:#f7f6f3;--soft-red:#fcf0f1;--radius:10px;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:disabled{cursor:not-allowed}button[hidden],[hidden]{display:none!important}:focus-visible{outline:3px solid #1d5fb4;outline-offset:4px}input:focus-visible,select:focus-visible{outline-offset:2px}::selection{background:#f6bec7}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}button{font-weight:700}.skip-link{position:fixed;left:16px;top:-100px;padding:12px;background:white;z-index:20}.skip-link:focus{top:12px}
.site-header{background:white;border-bottom:1px solid var(--border)}.header-inner{max-width:1312px;margin:auto;padding:20px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center}.brand img{display:block;width:178px;height:76px;object-fit:contain}.header-label{font-size:12px;font-weight:700;letter-spacing:.01em;display:flex;align-items:center;gap:9px}.header-region{color:var(--muted);font-weight:500}.status-dot{width:7px;height:7px;border-radius:100%;background:var(--red);display:inline-block}
.layout{max-width:1312px;padding:56px 48px 64px;margin:auto;display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.55fr);gap:64px;align-items:start}.intro{padding-top:23px;position:sticky;top:35px}.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:800;color:var(--red);margin-bottom:18px;line-height:1.6}.intro h1{font-size:clamp(38px,4.1vw,58px);line-height:1.13;font-weight:800;margin-bottom:26px;letter-spacing:-.055em}.intro h1 span{color:var(--red)}.intro-copy{color:var(--muted);font-size:14px;line-height:1.85;max-width:330px}.intro-rule{height:3px;background:var(--red);width:42px;margin:34px 0}.intro-note{display:flex;gap:14px;max-width:330px}.note-icon{font-size:22px;color:var(--red);flex:0 0 32px}.intro-note strong{font-size:12px}.intro-note p{font-size:12px;color:var(--muted);line-height:1.8;margin:6px 0}.intro-foot{font-size:9px;font-weight:800;letter-spacing:.14em;line-height:1.8;color:#858589;margin:60px 0 0}
.workspace{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 40px #27201104;padding:30px 34px 0;min-width:0}.workspace-top{display:flex;justify-content:space-between;gap:10px;font-size:10px;line-height:1.5;margin-bottom:25px}.section-kicker{font-weight:800;letter-spacing:.13em}.workspace-top>span:last-child{color:var(--muted)}.steps{list-style:none;display:flex;padding:0;margin:0 0 26px;gap:0}.steps li{flex:1;position:relative;text-align:center;color:#808086;min-width:0}.steps li:after{content:'';height:1px;background:var(--border);position:absolute;left:calc(50% + 18px);right:calc(-50% + 18px);top:15px}.steps li:last-child:after{display:none}.steps li span{width:31px;height:31px;background:#f3f3f2;border:1px solid #e6e5e2;display:flex;align-items:center;justify-content:center;margin:0 auto 9px;border-radius:50%;font-size:11px;font-weight:800}.steps li b{font-size:9px;font-weight:600;display:block;line-height:1.5}.steps li[aria-current] span{color:white;background:var(--red);border-color:var(--red);box-shadow:0 0 0 4px var(--soft-red)}.steps li[aria-current] b{color:var(--red);font-weight:800}.steps li.done span{color:var(--red);background:var(--soft-red);border-color:#f0c7ce}.steps li.done:after{background:#d9a0aa}
.service-notice{padding:12px 14px;border:1px solid #e8dbb9;background:#fdfaf1;border-radius:6px;color:#6d592c;font-size:10px;line-height:1.7;margin-bottom:27px}.service-notice.is-ready{border-color:#c7dfd0;background:#f1f9f4;color:#235e3c}.stage-heading{margin-bottom:26px}.stage-heading .eyebrow{margin-bottom:8px;font-size:9px}.stage-heading h2{font-size:25px;line-height:1.3;margin-bottom:10px;font-weight:800}.stage-heading>p:last-child{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:0}.stage-heading h2:focus{outline:none}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 18px}.fields.compact{gap:12px}.fields>label{display:flex;flex-direction:column;align-items:stretch;gap:8px;font-size:10px;font-weight:700;min-width:0;line-height:1.5}.fields input,.fields select{width:100%;min-width:0;min-height:44px;border:1px solid #d9d9d7;border-radius:6px;background:#fff;padding:11px 12px;color:var(--ink);font-size:12px;box-shadow:0 1px 2px #22222203;transition:border-color .15s,box-shadow .15s}.fields input:hover,.fields select:hover{border-color:#a8a8a8}.fields input:focus,.fields select:focus{border-color:var(--red);box-shadow:0 0 0 3px #ba153012}.fields input::placeholder{color:#98989b;font-size:11px}.fields small{font-size:9px;color:var(--muted);font-weight:400;line-height:1.6}.uppercase{text-transform:uppercase}.full{grid-column:1/-1}.field-divider{font-size:10px;font-weight:800;padding-top:13px;border-top:1px solid #efeeeb;margin-top:6px}.optional{font-weight:400;color:var(--muted)}input[aria-invalid],select[aria-invalid]{border-color:var(--red);background:#fffafa}.field-error{display:block;color:#ad1230;font-size:10px;line-height:1.6;font-weight:600;margin-top:4px}.alert{padding:15px;margin:0 0 22px;border-radius:6px;font-size:12px;line-height:1.7}.alert.error{background:var(--soft-red);border:1px solid #edc9cf;color:#9c0f24}
.form-navigation{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:28px 0 27px;margin-top:27px;border-top:1px solid #eeece9}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:44px;padding:12px 20px;border-radius:6px;font-size:11px;font-weight:800;text-decoration:none;line-height:1.6;border:1px solid transparent;transition:background .15s,border-color .15s}.button.primary{background:var(--red);color:white}.button.primary:hover{background:var(--red-dark)}.button.primary:disabled{background:#ecebed;color:#7a777e;border:1px solid #dedcdf}.button.secondary{background:white;color:#56545a;border-color:var(--border)}.button.secondary:hover{border-color:#a9a6aa;background:#fafafa}#navigation-note{font-size:9px;color:#818186;line-height:1.7;max-width:230px}.form-navigation .primary{margin-left:auto;min-width:128px}.workspace-footer{padding:17px 0 20px;border-top:1px solid #eeece9;color:#858388;display:flex;align-items:flex-start;gap:8px;font-size:9px;line-height:1.8}.workspace-footer>span{font-size:13px;line-height:1.2}.site-footer{max-width:1216px;border-top:1px solid #deddd9;padding:23px 0 30px;margin:0 auto;display:flex;justify-content:space-between;gap:20px;color:#7a797d;font-size:10px}.site-footer>span:first-child{font-weight:800;color:#565459}
fieldset{border:0;padding:0;min-width:0;margin:0}legend{padding:0;font-size:12px;font-weight:800;line-height:1.7;margin-bottom:15px}.choice-card{display:flex;gap:12px;align-items:flex-start;padding:18px;border:1px solid var(--border);border-radius:8px;margin-bottom:13px;cursor:pointer;line-height:1.6}.choice-card:has(input:checked){border-color:var(--red);background:#fff8f9}.choice-card strong{display:block;font-size:11px;font-weight:700}.choice-card small{display:block;font-size:10px;color:var(--muted);margin-top:5px}input[type=radio],input[type=checkbox]{accent-color:var(--red);width:17px;height:17px;flex:0 0 17px;margin:1px 0 0;cursor:pointer}.choice-field{margin-bottom:24px}.subtle-note{background:var(--paper);border-left:2px solid #cbc7c5;padding:15px;font-size:11px;color:var(--muted);line-height:1.9;margin-top:22px}.document-button{display:flex;gap:14px;align-items:center;width:100%;padding:17px 15px;border:1px solid var(--border);border-radius:8px;background:white;text-align:left;font-size:14px;font-weight:500;text-decoration:none;line-height:1.5}.document-button:hover{border-color:#ba1530;background:#fffbfb}.document-button>span:first-child{color:var(--red)}.document-button>span:last-child:not(:first-child){margin-left:auto}.document-button strong{font-size:11px;font-weight:800;display:block}.document-button small{font-size:9px;color:var(--muted);display:block;margin-top:5px;font-weight:400}.document-button .pdf-icon{font-size:8px;font-weight:800;background:var(--soft-red);border:1px solid #f1cbd1;border-radius:4px;padding:12px 6px}.documents{display:grid;gap:12px;margin:24px 0}.privacy-choice{padding:22px 0;border-bottom:1px solid var(--border)}.privacy-choice legend{float:left;width:100%;margin-bottom:10px}.privacy-choice legend+p{clear:both}.privacy-choice p{font-size:10px;line-height:1.85;color:var(--muted);margin-bottom:16px}.privacy-choice p.privacy-optional{font-size:9px}.radio-row{display:flex;flex-wrap:wrap;gap:15px 24px}.radio-row label{display:flex;gap:9px;font-size:10px;align-items:center;line-height:1.8;cursor:pointer}.acknowledge{display:flex;gap:12px;padding:20px 0 0;font-size:11px;line-height:1.9;cursor:pointer}.acknowledge input{margin-top:3px}.review-group{border:1px solid var(--border);border-radius:8px;margin-bottom:14px;padding:17px}.review-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:12px;border-bottom:1px solid #eee}.review-heading h3{font-size:12px;margin:0;letter-spacing:0}.text-button{background:none;border:0;padding:5px 0;color:var(--red);font-size:10px;text-decoration:underline;text-underline-offset:3px}.review-group dl{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(0,1.2fr);gap:9px 18px;margin:15px 0 0;font-size:10px;line-height:1.7}.review-group dt{color:var(--muted)}.review-group dd{margin:0;font-weight:600;overflow-wrap:anywhere}.signing-info{padding:18px;background:var(--paper);border-radius:8px;font-size:11px;line-height:1.9}.signing-info>strong{display:block;margin-bottom:7px}.signing-info p{color:var(--muted);margin-bottom:12px}.signing-info p:last-child{margin:0;color:#8e323e;font-weight:600}.sign-button{width:100%;margin-top:22px}.signing-footnote{font-size:9px;text-align:center;color:var(--muted);line-height:1.7;margin:11px 0 0}#request-status{padding-bottom:28px}#request-status .stage-heading p:last-child{font-size:13px}#email-status{font-size:12px;line-height:1.8;background:var(--paper);padding:16px;border-radius:6px}#provider-link{margin:12px 0}
dialog{width:min(1050px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 90px #0005;color:var(--ink)}dialog::backdrop{background:#19171ab8}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;border-bottom:1px solid var(--border)}.dialog-header .eyebrow{font-size:9px;margin-bottom:5px}.dialog-header h2{font-size:20px;margin:0}.icon-button{width:42px;height:42px;background:white;border:1px solid var(--border);border-radius:6px;font-size:17px;flex-shrink:0}.icon-button:hover{background:var(--paper)}#pdf-message{margin:0;padding:12px 24px;font-size:11px;line-height:1.7}#pdf-frame{display:block;width:100%;height:60dvh;min-height:240px;border:0;background:#e9e7e5}.dialog-footer{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:16px 24px;font-size:11px}.dialog-footer>span{color:var(--muted)}
@media(min-width:1440px){.layout{padding-top:70px;gap:84px}.workspace{padding:34px 40px 0}.intro{padding-top:32px}}
@media(max-width:1050px){.header-inner{padding:18px 32px}.layout{padding:40px 32px 48px;gap:36px;grid-template-columns:minmax(230px,.7fr) minmax(0,1.5fr)}.intro h1{font-size:42px}.workspace{padding:24px 25px 0}.site-footer{margin:0 32px}.header-region{display:none}.fields{gap:17px 13px}.intro-copy{font-size:13px}.intro-note{max-width:250px}.steps li b{font-size:8px}}
@media(max-width:800px){.layout{max-width:650px;grid-template-columns:1fr;gap:28px;padding-top:27px}.intro{position:static;padding-top:0}.intro h1{font-size:41px;line-height:1.14;letter-spacing:-.05em;margin-bottom:17px}.intro h1 br{display:none}.intro h1 span{display:block}.intro .eyebrow{margin-bottom:10px;font-size:9px}.intro-copy{max-width:530px;font-size:12px;margin-bottom:0;line-height:1.8}.intro-rule,.intro-note,.intro-foot{display:none}.header-inner{max-width:650px;padding:13px 32px}.brand img{width:142px;height:61px}.header-label{font-size:10px;gap:7px}.workspace{padding:26px 28px 0}.site-footer{max-width:586px;margin:auto;font-size:9px}.stage-heading h2{font-size:25px}.steps li b{font-size:9px}}
@media(max-width:480px){.header-inner{padding:11px 20px}.brand img{width:126px;height:54px}.header-label{font-size:9px}.header-label .status-dot{width:6px;height:6px}.layout{padding:25px 16px 32px;gap:23px}.intro{padding:0 5px}.intro h1{font-size:34px;margin-bottom:14px;line-height:1.15}.intro-copy{font-size:11px;line-height:1.85}.workspace{padding:23px 20px 0;border-radius:10px}.workspace-top{font-size:9px;margin-bottom:24px}.steps{margin-bottom:23px}.steps li b{font-size:8px;line-height:1.5}.steps li span{width:27px;height:27px;font-size:10px}.steps li:after{top:13px;left:calc(50% + 16px);right:calc(-50% + 16px)}.service-notice{font-size:9px;margin-bottom:24px}.stage-heading h2{font-size:23px;line-height:1.3}.stage-heading>p:last-child{font-size:10px}.stage-heading{margin-bottom:23px}.fields{grid-template-columns:1fr;gap:18px}.fields.compact{grid-template-columns:1fr 1fr}.fields>label{font-size:10px;gap:7px}.fields input,.fields select{font-size:16px;min-height:46px;padding:10px 11px}.fields input::placeholder{font-size:11px}.field-divider{padding-top:16px;margin-top:4px}.form-navigation{padding:22px 0;margin-top:24px;gap:10px}.button{font-size:10px;padding:12px 16px;min-height:44px;gap:14px}.form-navigation .primary{min-width:115px}#navigation-note{font-size:8px;max-width:130px}.workspace-footer{font-size:8px;padding:15px 0 18px;line-height:1.9}.site-footer{margin:0 22px;padding:20px 0;display:block;font-size:9px;line-height:1.8}.site-footer>span{display:block}.site-footer>span+span{margin-top:6px}.choice-card{padding:15px 12px;gap:10px}.choice-card strong{font-size:10px}.choice-card small{font-size:9px}.subtle-note{font-size:10px}.privacy-choice p{font-size:10px}.privacy-choice legend{font-size:11px}.radio-row{gap:14px;flex-direction:column}.radio-row label{font-size:10px;min-height:28px}.acknowledge{font-size:10px}.review-group{padding:14px}.review-group dl{grid-template-columns:1fr;gap:3px}.review-group dd{margin-bottom:10px}.document-button{padding:14px 12px;gap:10px}.document-button strong{font-size:10px}.document-button small{font-size:8px}.signing-info{font-size:10px;padding:15px}.dialog-header{padding:15px}.dialog-header h2{font-size:17px}.dialog-header .eyebrow{font-size:8px}.dialog-footer{padding:14px;flex-wrap:wrap;gap:12px}.dialog-footer>span{font-size:10px}#pdf-message{font-size:10px;padding:12px 15px}#pdf-frame{height:55dvh}.icon-button{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.intro,.site-header,.site-footer,.steps,.service-notice,.form-navigation,.workspace-footer,.button{display:none}.layout{display:block;padding:0}.workspace{border:0;box-shadow:none;padding:0}.stage[hidden]{display:none!important}}
/* Dimensioni di lettura per campi, consensi e istruzioni operative. */
.fields>label{font-size:12px}.fields input,.fields select{font-size:14px}.fields small{font-size:11px}.stage-heading>p:last-child{font-size:13px}.service-notice{font-size:11px}.button{font-size:12px}.choice-card strong{font-size:13px}.choice-card small{font-size:11px}.privacy-choice p{font-size:12px}.privacy-choice p.privacy-optional{font-size:11px}.privacy-choice legend{font-size:13px}.radio-row label{font-size:12px}.acknowledge{font-size:12px}.document-button strong{font-size:13px}.document-button small{font-size:11px}.review-group dl{font-size:12px}.signing-info{font-size:12px}.subtle-note{font-size:12px}.field-error{font-size:11px}
@media(max-width:480px){.fields input,.fields select{font-size:16px}.fields>label{font-size:12px}.stage-heading>p:last-child{font-size:12px}.service-notice{font-size:11px}.choice-card strong{font-size:12px}.choice-card small{font-size:11px}.document-button strong{font-size:12px}.document-button small{font-size:10px}.review-group dl{font-size:12px}.signing-info{font-size:12px}.radio-row label{min-height:35px}.intro-copy{font-size:13px}.acknowledge{font-size:12px}.dialog-footer>span{font-size:11px}.signing-footnote{font-size:10px}}

/* Contrasto WCAG per testi secondari e progressione. */
.intro-foot,.workspace-footer,.site-footer>span:nth-child(2),.steps li b{color:#626267}
