/* Studio Legale Chiarappa — guide interattive: percorso in sette passi.
   Schermo: un passo alla volta, titolo a sinistra e contenuto a destra, colori per categoria.
   Stampa: due fogli A4 orizzontali. Usa i colori e i caratteri di site.css. */

:root{
  --c-ink:#14294A;   --t-ink:#EAF0F8;
  --c-amber:#9A5B0B; --t-amber:#FBF2E2;
  --c-teal:#1D6A66;  --t-teal:#E4F1F0;
  --c-violet:#4A3B8C;--t-violet:#EEEBF8;
  --c-slate:#4A5568; --t-slate:#EEF0F3;
  --c-olive:#566A2E; --t-olive:#EFF3E6;
  --c-red:#8C2F39;   --t-red:#F8ECEE;
  --c-green:#2F6B46; --t-green:#E8F3EC;
  --c-blue:#1F4E8C;  --t-blue:#E9F0FA;
}

/* ---------- i sette passi nella testata della pagina ---------- */
.g-hpath{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid rgba(201,166,107,.45)}
.g-hpath li{position:relative}
.g-hpath a{display:flex;flex-direction:column;gap:8px;padding:16px 14px 4px 0;text-decoration:none;color:#FFFFFF;height:100%}
.g-hpath a::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--gold-2);transition:transform .3s var(--ease)}
.g-hpath a:hover::before{transform:scale(1.6)}
.g-hpath span{font-family:var(--font);font-size:30px;line-height:1;color:var(--gold-2)}
.g-hpath b{font-weight:400;font-size:15px;line-height:1.35;color:var(--on-dark);text-align:left;hyphens:manual}
.g-hpath a:hover b{color:#FFFFFF}

/* ---------- barra del percorso ---------- */
.g-sec{padding:0 0 80px;background:var(--tint)}
.g-path{position:sticky;top:76px;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);margin-bottom:44px}
.g-path ol{list-style:none;margin:0 auto;padding:0 24px;max-width:1280px;display:grid;grid-template-columns:repeat(7,1fr)}
.g-path a{display:flex;align-items:center;gap:10px;padding:14px 8px 13px 0;font-family:var(--sans);font-size:12.5px;letter-spacing:.02em;color:var(--muted);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .25s}
.g-path a span{flex:none;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;font-size:11.5px;color:var(--ink);transition:all .3s var(--ease)}
.g-path a:hover{color:var(--ink)}
.g-path a.done span{border-color:var(--gold);color:var(--gold-text)}
.g-path a[aria-current="step"]{color:var(--ink)}
.g-path a[aria-current="step"] span{background:var(--ink);border-color:var(--ink);color:#FFFFFF}
.g-pbar{display:block;height:2px}
.g-pbar i{display:block;height:100%;background:var(--gold);transform-origin:left;transform:scaleX(var(--gp,0));transition:transform .4s var(--ease)}

/* ---------- fogli ---------- */
.g-wrap{max-width:1280px;margin:0 auto;padding:0 24px;display:grid;gap:48px}
.g-sheet{background:#FFFFFF;border:1px solid var(--line);box-shadow:0 24px 48px -32px rgba(14,28,51,.25);padding:36px 48px 22px;font-size:15.5px;line-height:1.62;scroll-margin-top:150px}
.g-sheet p,.g-sheet li,.g-sheet td{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto}
.g-sheet h3,.g-sheet h4,.g-sheet h5{text-wrap:balance;text-align:left}
.g-sheet a{text-underline-offset:3px}

.g-sh{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:14px 28px;padding-bottom:14px;border-bottom:1px solid var(--ink)}
.g-shl{display:flex;flex-direction:column;gap:4px;font-family:var(--sans);text-transform:uppercase}
.g-shn{font-size:10.5px;letter-spacing:.2em;color:var(--muted)}
.g-shk{font-size:22px;font-weight:300;letter-spacing:.14em;color:var(--gold-text)}
.g-sht h2{font-size:28px;line-height:1.15;color:var(--ink)}
.g-sht p{margin-top:4px;color:var(--text-2);font-size:15px;text-align:left}
.g-shb{display:flex;flex-direction:column;align-items:center;gap:4px;font-family:var(--sans);color:var(--ink);line-height:1}
.g-shb b{font-weight:300;font-size:17px;letter-spacing:.12em}
.g-shb i{font-style:normal;font-weight:500;font-size:7px;letter-spacing:.45em}
.g-mini{grid-column:1/-1;list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.g-mini li{display:flex;align-items:center;gap:6px;font-family:var(--sans);font-size:11px;color:var(--field);padding-top:6px;border-top:2px solid var(--line);text-align:left;hyphens:manual}
.g-mini li span{font-weight:500}
.g-mini li.on{color:var(--ink);border-top-color:var(--gold)}
.g-mini li.on span{color:var(--gold-text)}

/* ---------- il passo: titolo a sinistra, contenuto a destra ---------- */
.g-grid1,.g-col{display:block}
.g-step{display:grid;grid-template-columns:250px minmax(0,1fr);gap:52px;padding:40px 0;border-bottom:1px solid var(--line);scroll-margin-top:140px}
.g-sth{position:sticky;top:150px;align-self:start;display:block}
.g-num{display:block;font-family:var(--font);font-size:64px;line-height:.85;color:var(--gold);margin-bottom:12px}
.g-stk{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);text-align:left!important}
.g-sth h3{font-size:25px;line-height:1.2;color:var(--ink);margin:6px 0 0}
.g-rac{margin-top:12px;padding-top:12px;border-top:1px solid var(--gold);font-style:italic;color:var(--text-2);font-size:15px;line-height:1.55;text-align:left!important;hyphens:manual!important}
.g-stb{min-width:0}

/* rinvii alle fonti */
.g-refs{display:flex;flex-wrap:wrap;gap:5px 6px;margin-top:7px}
.g-ref{display:inline-flex;align-items:center;gap:5px;font-family:var(--sans);font-size:11.5px;line-height:1;letter-spacing:.01em;padding:4px 7px;border:1px solid;text-decoration:none!important;white-space:nowrap;transition:background .2s,color .2s}
.g-ref-a{font-weight:500}
.g-ref-ue{color:var(--c-blue)!important;border-color:#BCD0EA;background:var(--t-blue)}
.g-ref-it{color:var(--c-green)!important;border-color:#BFDAC9;background:var(--t-green)}
.g-ref-ex{color:var(--c-slate)!important;border-color:#D3D8E0;background:#F6F7F9}
.g-ref:hover{background:#FFFFFF}
.g-band.g-ue .g-ref{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.35);color:#FFFFFF!important}

/* passo 1 */
.g-bands{display:grid;gap:8px}
.g-band{display:grid;grid-template-columns:34px 1fr;gap:16px;padding:14px 18px;background:var(--tint);border-left:3px solid var(--ink)}
.g-band.g-ue{background:var(--night);color:#FFFFFF;border-left-color:var(--gold-2)}
.g-band.g-ue p{color:var(--on-dark)}
.g-band.g-it{background:var(--t-green);border-left-color:var(--c-green)}
.g-band.g-base{background:#FFFFFF;border:1px dashed var(--field);border-left:3px solid var(--gold)}
.g-lvl{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.1em;display:flex;align-items:center;justify-content:center;border:1px solid currentColor;height:30px;opacity:.85}
.g-band h4{font-family:var(--sans);font-weight:500;font-size:14px;margin:0 0 4px}
.g-band p{font-size:15px;line-height:1.58}
.g-auth{font-size:14px;color:var(--text-2);margin-top:14px;line-height:1.55}

/* passo 2 */
.g-defs{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-bottom:22px}
.g-def{border-left:3px solid var(--ink);padding:2px 0 2px 16px}
.g-term{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-align:left!important;margin-bottom:5px}
.g-dd{font-size:15.5px;line-height:1.6}
.g-plain{margin-top:10px;font-size:15px;background:var(--t-ink);padding:10px 14px}
.g-plain b,.g-ex b,.g-fix b,.g-exc b{display:block;font-family:var(--sans);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-bottom:3px}
.g-yn{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.g-yn > div{padding:14px 16px}
.g-yes{background:var(--t-green)}
.g-no{background:#F6F7F9}
.g-yn > div > p{font-family:var(--sans);font-size:11.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;text-align:left!important}
.g-yes > p{color:var(--c-green)}
.g-no > p{color:var(--c-slate)}
.g-yn ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.g-yn li{font-size:15px;line-height:1.45;padding-left:22px;position:relative;text-align:left!important;hyphens:manual!important}
.g-yes li::before{content:"";position:absolute;left:2px;top:.36em;width:10px;height:5px;border-left:1.6px solid var(--c-green);border-bottom:1.6px solid var(--c-green);transform:rotate(-45deg)}
.g-no li::before{content:"";position:absolute;left:2px;top:.72em;width:10px;height:1.6px;background:var(--field)}

/* passo 3 */
.g-roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.g-role{border:1px solid var(--line);border-top:3px solid var(--ink);padding:14px 16px;background:#FFFFFF}
.g-role .g-dd{font-size:15px;line-height:1.55}
.g-ex{margin-top:10px;font-size:14.5px;line-height:1.5;color:var(--text-2);background:#FAF7F1;padding:9px 12px;border-left:2px solid var(--gold)}
.g-change{margin-top:16px;background:var(--t-ink);border-left:3px solid var(--gold);padding:14px 18px}

/* passo 4: livelli di rischio */
.g-pyr{display:grid;gap:10px}
.g-tier{display:grid;grid-template-columns:150px 1fr;border:1px solid var(--line);background:#FFFFFF}
.g-tl{display:flex;align-items:flex-start;padding:14px 16px;color:#FFFFFF;position:relative}
.g-tl b{font-family:var(--sans);font-weight:500;font-size:14px;letter-spacing:.02em}
.g-tl::after{content:"";position:absolute;left:16px;bottom:16px;height:6px;border-radius:3px;background:rgba(255,255,255,.55)}
.g-v .g-tl{background:var(--c-red)}   .g-v .g-tl::after{width:28px}
.g-a .g-tl{background:var(--c-violet)}.g-a .g-tl::after{width:56px}
.g-t .g-tl{background:var(--c-amber)} .g-t .g-tl::after{width:84px}
.g-m .g-tl{background:var(--c-green)} .g-m .g-tl::after{width:112px}
.g-tb{padding:14px 18px}
.g-tw{font-size:15px;line-height:1.55}
.g-tc{margin-top:6px;font-size:14.5px;line-height:1.5;color:var(--ink)}
.g-tc span{font-family:var(--sans);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;margin-right:6px;color:var(--gold-text)}
.g-tx{list-style:none;margin:10px 0 0;padding:10px 0 0;border-top:1px dotted var(--line);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px 18px}
.g-tx li{font-size:14px;line-height:1.45;color:var(--text-2);padding-left:14px;position:relative;text-align:left!important;hyphens:manual!important}
.g-tx li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%}
.g-v .g-tx li::before{background:var(--c-red)}.g-a .g-tx li::before{background:var(--c-violet)}.g-t .g-tx li::before{background:var(--c-amber)}.g-m .g-tx li::before{background:var(--c-green)}
.g-exc{margin-top:16px;padding:12px 16px;background:var(--t-violet);border-left:3px solid var(--c-violet);color:var(--ink)}

/* ---------- test ---------- */
.g-c3{padding:40px 0 0}
.g-test{background:var(--night);color:#FFFFFF;padding:30px 34px;scroll-margin-top:150px}
.g-testh{max-width:720px}
.g-k{font-family:var(--sans);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);text-align:left!important}
.g-test h3{font-size:26px;line-height:1.2;margin:6px 0 8px}
.g-ti{font-size:15px;color:var(--on-dark);margin-bottom:20px;text-align:left!important}
.g-form{columns:2;column-gap:44px}
.g-form fieldset{border:0;margin:0 0 16px;padding:0;break-inside:avoid}
.g-form legend{font-size:15px;line-height:1.4;margin-bottom:6px;display:flex;gap:10px;padding:0}
.g-form legend span{font-family:var(--sans);font-size:11px;color:var(--gold-2);padding-top:3px;flex:none}
.g-form label{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4;color:var(--on-dark);padding:3px 0 3px 21px;cursor:pointer}
.g-form label:hover{color:#FFFFFF}
.g-form input{appearance:none;-webkit-appearance:none;flex:none;width:13px;height:13px;margin:3px 0 0;border:1px solid var(--on-dark-2);background:transparent;cursor:pointer}
.g-form input[type=radio]{border-radius:50%}
.g-form input:checked{background:var(--gold-2);border-color:var(--gold-2);box-shadow:inset 0 0 0 2px var(--night)}
.g-form input:focus-visible{outline:1px solid var(--gold-2);outline-offset:2px}
.g-act{display:flex;align-items:center;gap:16px;margin-top:8px}
.g-btn{display:inline-flex;align-items:center;gap:10px;background:var(--gold-2);color:var(--night)!important;border:0;font-family:var(--sans);font-size:13px;letter-spacing:.05em;padding:12px 18px;cursor:pointer;text-decoration:none!important}
.g-btn svg{width:16px;height:9px;transition:transform .3s var(--ease)}
.g-btn:hover{background:#FFFFFF}
.g-btn:hover svg{transform:translateX(3px)}
.g-link{background:none;border:0;padding:0;font-family:var(--sans);font-size:12.5px;letter-spacing:.04em;color:inherit;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;cursor:pointer}
.g-out{margin-top:22px;padding-top:18px;border-top:1px solid var(--line-dark)}
.g-out h4{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);margin:0 0 10px}
.g-prof{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;max-width:720px}
.g-prof div{border:1px solid var(--line-dark);padding:10px 12px}
.g-prof span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-2)}
.g-prof b{display:block;font-weight:400;font-size:18px;line-height:1.25;color:#FFFFFF;margin-top:3px}
.g-out ul{margin:0;padding:0;list-style:none;display:grid;gap:7px;max-width:900px}
.g-out li{font-size:15px;line-height:1.5;padding-left:16px;position:relative;text-align:left!important}
.g-out li::before{content:"";position:absolute;left:0;top:.7em;width:7px;height:1px;background:var(--gold-2)}
.g-codes{margin-top:12px;font-family:var(--sans);font-size:12.5px;color:var(--on-dark);text-align:left!important}
.g-codes a{color:var(--gold-2)!important}

/* ---------- passo 5: obblighi per gruppi ---------- */
.g-tools{display:flex;justify-content:flex-end;gap:22px;align-items:center;margin:16px 0 0}
.g-filter{font-family:var(--sans);font-size:12.5px;letter-spacing:.04em;background:#FFFFFF;border:1px solid var(--ink);color:var(--ink);padding:8px 14px;cursor:pointer}
.g-filter[disabled]{opacity:.4;cursor:default}
.g-filter[aria-pressed=true]{background:var(--ink);color:#FFFFFF}
.g-groups{display:grid;gap:26px}
.g-grp{--c:var(--c-ink);--t:var(--t-ink)}
.g-c-amber{--c:var(--c-amber);--t:var(--t-amber)}.g-c-teal{--c:var(--c-teal);--t:var(--t-teal)}.g-c-violet{--c:var(--c-violet);--t:var(--t-violet)}
.g-c-slate{--c:var(--c-slate);--t:var(--t-slate)}.g-c-olive{--c:var(--c-olive);--t:var(--t-olive)}
.g-grph{display:flex;align-items:center;gap:14px;background:var(--t);border-left:4px solid var(--c);padding:10px 16px;margin-bottom:12px}
.g-grpl{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--c);color:#FFFFFF;font-family:var(--sans);font-weight:500;font-size:15px}
.g-grph h4{font-family:var(--sans);font-weight:500;font-size:15px;color:var(--c);margin:0}
.g-grph p{font-family:var(--sans);font-size:12px;color:var(--text-2);margin-top:1px;text-align:left!important}
.g-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}
.g-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-left:3px solid var(--c);padding:14px 16px;background:#FFFFFF;transition:opacity .3s,box-shadow .3s;scroll-margin-top:150px}
.g-card h5{display:flex;gap:9px;align-items:baseline;font-family:var(--sans);font-weight:500;font-size:15px;line-height:1.3;color:var(--ink);margin:0 70px 4px 0}
.g-card h5 span{font-size:11.5px;color:var(--c);letter-spacing:.06em}
.g-when{font-family:var(--sans);font-size:12px;color:var(--c);margin-bottom:8px;text-align:left!important}
.g-d{font-size:15px;line-height:1.58}
.g-card .g-ex{border-left-color:var(--c);background:var(--t)}
.g-src{margin-top:auto;padding-top:10px;text-align:left!important}
.g-badge{display:none;position:absolute;top:12px;right:12px;font-family:var(--sans);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;background:var(--gold-2);color:var(--night);padding:3px 7px}
.g-card.on{box-shadow:0 0 0 2px var(--gold)}
.g-card.on .g-badge{display:block}
.g-only .g-card:not(.on){opacity:.25}
.g-only .g-grp:not(.on){display:none}

/* ---------- passo 6 ---------- */
.g-resp{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.g-rcol h4{font-family:var(--sans);font-size:14px;font-weight:500;margin:0 0 8px;padding-bottom:6px;border-bottom:2px solid var(--gold)}
.g-rcol ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.g-rcol li{font-size:14.5px;line-height:1.55;padding-left:14px;position:relative}
.g-rcol li::before{content:"";position:absolute;left:0;top:.65em;width:6px;height:6px;border:1px solid var(--gold);border-radius:50%}
.g-fix{margin-top:12px;font-size:14px;background:var(--t-ink);padding:10px 12px;border-left:3px solid var(--ink)}
.g-sancol{margin-top:30px}
.g-sanz{width:100%;border-collapse:collapse;font-size:14px;line-height:1.45}
.g-sanz caption{text-align:left;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);margin-bottom:10px}
.g-sanz thead th{font-family:var(--sans);font-weight:500;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;padding:0 10px 6px;border-bottom:1px solid var(--ink)}
.g-sanz tbody th{font-weight:400;text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top;width:38%}
.g-sanz td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left!important;hyphens:manual!important}
.g-sanz tbody tr:nth-child(odd){background:#FAFBFC}
.g-sanz td:last-child{width:24%}
.g-note{font-size:13px;color:var(--muted);margin-top:10px}

/* ---------- passo 7 ---------- */
.g-s7{background:var(--night);color:#FFFFFF;padding:36px 34px;margin-top:40px;border-bottom:0}
.g-s7 .g-num,.g-s7 .g-stk{color:var(--gold-2)}
.g-s7 .g-sth h3{color:#FFFFFF}
.g-s7 .g-rac{color:var(--on-dark);border-top-color:var(--line-dark)}
.g-last{display:grid;grid-template-columns:1fr 280px;gap:30px}
.g-todo{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.g-todo li{display:flex;gap:14px;align-items:baseline;font-size:15px;line-height:1.5;color:var(--on-dark);text-align:left!important;border-top:1px solid var(--line-dark);padding-top:10px}
.g-todo li span{font-family:var(--font);font-size:24px;line-height:1;color:var(--gold-2);min-width:16px}
.g-nl{border-left:1px solid var(--line-dark);padding-left:26px;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.g-nl p:not(.g-k){font-size:14.5px;line-height:1.5;color:var(--on-dark);text-align:left!important}
.g-nlurl{display:none}

/* ---------- fonti ---------- */
.g-fonti{padding:40px 0 4px;scroll-margin-top:150px}
.g-fonti h3{font-size:24px;color:var(--ink)}
.g-fonti > p{margin:8px 0 16px;color:var(--text-2);font-size:15px;max-width:860px}
.g-flist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:36px}
.g-flist li{display:grid;grid-template-columns:150px 1fr auto;gap:14px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.g-fk{font-family:var(--sans);font-weight:500;font-size:12px;padding:4px 8px;text-align:left;justify-self:start}
.g-f-ue .g-fk{color:var(--c-blue);background:var(--t-blue)}.g-f-it .g-fk{color:var(--c-green);background:var(--t-green)}.g-f-ex .g-fk{color:var(--c-slate);background:#F2F4F7}
.g-ft{font-size:14px;line-height:1.42;text-align:left!important;hyphens:manual!important}
.g-ft i{display:block;font-style:normal;font-family:var(--sans);font-size:11.5px;color:var(--muted);margin-top:2px}
.g-flist a{font-family:var(--sans);font-size:12px;white-space:nowrap;color:var(--ink)}

/* ---------- piede del foglio ---------- */
.g-sf{display:flex;justify-content:space-between;gap:20px;margin-top:18px;padding-top:10px;border-top:1px solid var(--line);font-family:var(--sans);font-size:11px;letter-spacing:.03em;color:var(--muted)}

/* ---------- schermi medi e piccoli ---------- */
@media (max-width:1180px){
  .g-path a{font-size:0;gap:0;justify-content:center;padding-right:0}
  .g-path a span{font-size:11.5px}
}
@media (max-width:1000px){
  .g-step{grid-template-columns:1fr;gap:18px;padding:30px 0}
  .g-sth{position:static;display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:start}
  .g-num{grid-row:span 3;font-size:52px;margin:0}
  .g-rac{grid-column:2}
  .g-resp{grid-template-columns:1fr}
  .g-hpath{grid-template-columns:repeat(4,1fr);row-gap:18px}
  .g-last{grid-template-columns:1fr}
  .g-nl{border-left:0;padding-left:0;border-top:1px solid var(--line-dark);padding-top:16px}
}
@media (max-width:880px){.g-path{top:72px}}
@media (max-width:720px){
  .g-hpath{grid-template-columns:1fr;border-top:0;margin-top:26px}
  .g-hpath a{flex-direction:row;align-items:baseline;gap:14px;padding:10px 0;border-top:1px solid rgba(201,166,107,.3)}
  .g-hpath a::before{display:none}
  .g-hpath span{font-size:24px;min-width:20px}
  .g-path ol{padding:0 12px}
  .g-path a{padding:10px 0}
  .g-wrap{padding:0 10px;gap:28px}
  .g-sheet,.g-fonti{padding:22px 16px 16px}
  .g-sh{grid-template-columns:1fr;gap:10px}
  .g-shb,.g-mini{display:none}
  .g-sht h2{font-size:23px}
  .g-num{font-size:42px}
  .g-sth h3{font-size:21px}
  .g-yn,.g-form{grid-template-columns:1fr;columns:1}
  .g-tier{grid-template-columns:1fr}
  .g-tl{padding:10px 14px}
  .g-tl::after{left:auto;right:14px;bottom:auto;top:50%;margin-top:-3px}
  .g-test{padding:22px 18px}
  .g-cards{grid-template-columns:1fr}
  .g-sanz thead{display:none}
  .g-sanz tr{display:block;padding:8px 0;border-bottom:1px solid var(--line)}
  .g-sanz tbody th,.g-sanz td{display:block;width:auto!important;border:0;padding:2px 6px}
  .g-flist{grid-template-columns:1fr}
  .g-flist li{grid-template-columns:1fr;gap:6px}
  .g-sf{flex-direction:column;gap:4px}
  .g-tools{justify-content:flex-start;flex-wrap:wrap;gap:12px}
}

/* ---------- stampa: due pagine A4 orizzontali ---------- */
@media print{
  @page{size:A4 landscape;margin:7mm}
  html,body{background:#FFFFFF!important}
  .top,.phero,.foot,.g-srcsec,.skip,.g-tools,.g-act,.g-codes,.g-path,.g-badge,.g-flist a{display:none!important}
  main > section:not(.g-sec){display:none!important}
  .g-sec{padding:0!important;background:#FFFFFF!important}
  .g-wrap{max-width:none;padding:0;gap:0;display:block}
  .g-sheet{box-shadow:none;border:0;padding:0;font-size:6.6pt;line-height:1.25;height:195.5mm;overflow:hidden;break-after:page;page-break-after:always;display:flex;flex-direction:column}
  .g-sheet:last-of-type{break-after:auto}
  .g-sheet,.g-sheet *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .g-sheet a{text-decoration:none}
  .g-sh{padding-bottom:1.4mm;gap:.8mm 6mm}
  .g-shn{font-size:5.6pt}.g-shk{font-size:11pt}.g-sht h2{font-size:13pt}.g-sht p{font-size:7pt;margin-top:.3mm}
  .g-shb b{font-size:9.5pt}.g-shb i{font-size:4.4pt}
  .g-mini{margin-top:.6mm;gap:1mm}
  .g-mini li{font-size:5.6pt;padding-top:.6mm;border-top-width:1.2pt;gap:1mm}
  /* foglio 1: tre colonne */
  .g-grid1{display:grid;grid-template-columns:.92fr 1.32fr .76fr;gap:4.4mm;flex:1;min-height:0;margin-top:2mm}
  .g-col{display:flex;flex-direction:column;gap:2.2mm}
  .g-c3{padding:0}
  .g-step{display:block;padding:0;border:0}
  .g-sth{position:static;display:grid;grid-template-columns:auto 1fr;gap:0 2mm;margin-bottom:1.2mm}
  .g-num{font-size:17pt;margin:0;grid-row:span 2;line-height:.9}
  .g-stk{display:inline;font-size:5.2pt;letter-spacing:.12em;margin-right:1.6mm}
  .g-sth h3{display:inline;font-size:9.6pt;margin:0}
  .g-sthx{line-height:1.1}
  .g-rac{margin-top:.4mm;padding-top:0;border:0;font-size:6.4pt;line-height:1.22}
  .g-ref{font-size:5.2pt;padding:.3mm .9mm;gap:.8mm}
    .g-refs{gap:.5mm 1mm;margin-top:.5mm}
  .g-bands{gap:.8mm}
  .g-band{padding:1mm 1.6mm;grid-template-columns:5mm 1fr;gap:1.6mm;border-left-width:1.6pt}
  .g-lvl{height:3.8mm;font-size:5.2pt}
  .g-band h4,.g-term,.g-tl b{font-size:6.4pt}
  .g-band p,.g-dd,.g-tw,.g-d,.g-rcol li{font-size:6.5pt;line-height:1.24}
  .g-band h4{margin-bottom:.2mm}
  .g-auth{font-size:5.9pt;margin-top:1mm;line-height:1.22}
  .g-defs{gap:2mm;margin-bottom:1.4mm;grid-template-columns:repeat(auto-fit,minmax(38mm,1fr))}
  .g-def{padding:0 0 0 1.8mm;border-left-width:1.6pt}
  .g-term{margin-bottom:.3mm}
  .g-plain{margin-top:.8mm;padding:.8mm 1.4mm;font-size:6.3pt}
  .g-plain b,.g-ex b,.g-fix b,.g-exc b{display:inline;font-size:5.2pt;margin-right:1mm}
  .g-yn{gap:1.6mm}
  .g-yn > div{padding:1mm 1.6mm}
  .g-yn > div > p{font-size:5.4pt;margin-bottom:.6mm}
  .g-yn ul{gap:.4mm}
  .g-yn li{font-size:6.1pt;line-height:1.2;padding-left:3mm}
  .g-yes li::before{width:1.7mm;height:.9mm;top:.32em;border-width:.8pt;left:.3mm}
  .g-no li::before{width:1.7mm;height:.7pt;left:.3mm}
  .g-roles{gap:1mm;grid-template-columns:1fr}
  .g-role{display:grid;grid-template-columns:20mm 1fr;gap:1.6mm;padding:1mm 1.6mm;border-top-width:1pt;border-left:1.6pt solid var(--ink)}
  .g-role .g-term{margin:0}
  .g-role .g-dd{font-size:6.3pt;line-height:1.22}
  .g-ex{margin-top:.6mm;font-size:6.1pt;line-height:1.2;padding:.6mm 1.2mm;border-left-width:1pt}
  .g-change{margin-top:1.2mm;padding:1mm 1.6mm;border-left-width:1.6pt}
  .g-change .g-dd{font-size:6.3pt;line-height:1.22}
  .g-pyr{gap:.8mm}
  .g-tier{grid-template-columns:15mm 1fr}
  .g-tl{padding:1mm 1.4mm}
  .g-tl::after{display:none}
  .g-tb{padding:.9mm 1.6mm}
  .g-tw{font-size:6.2pt;line-height:1.2}
  .g-tc{margin-top:.3mm;font-size:6.1pt;line-height:1.2}
  .g-tc span{font-size:5pt;margin-right:1mm}
  .g-tx{margin-top:.6mm;padding-top:.5mm;gap:.2mm 2mm;grid-template-columns:1fr}
  .g-tx li{font-size:5.9pt;line-height:1.18;padding-left:2mm}
  .g-tx li::before{width:.9mm;height:.9mm;top:.5em}
  .g-exc{margin-top:1mm;padding:.8mm 1.4mm;font-size:5.9pt;border-left-width:1.6pt}
  .g-test{padding:2.4mm 2.8mm}
  .g-k{font-size:5.4pt}
  .g-test h3{font-size:10pt;margin:.3mm 0 .6mm}
  .g-ti{font-size:6.2pt;margin-bottom:1.2mm}
  .g-form{columns:1}
  .g-form fieldset{margin-bottom:1mm}
  .g-form legend{font-size:6.4pt;margin-bottom:.3mm;gap:1.4mm}
  .g-form legend span{font-size:5.6pt;padding-top:0}
  .g-form label{font-size:6pt;padding:.05mm 0 .05mm 2.8mm;color:#E8EDF4;line-height:1.2;gap:1.4mm}
  .g-form input{width:2mm;height:2mm;margin-top:.2mm;border-color:#C9D1DD}
  .g-test.done .g-form label:not(:has(input:checked)){display:none}
  .g-out{margin-top:1.4mm;padding-top:1.2mm}
  .g-out h4{font-size:5.6pt;margin-bottom:.8mm}
  .g-prof{gap:1mm;margin-bottom:1.2mm}
  .g-prof div{padding:.7mm 1.2mm}
  .g-prof span{font-size:4.8pt}.g-prof b{font-size:7pt}
  .g-out ul{gap:.6mm}
  .g-out li{font-size:6.1pt;line-height:1.22}
  /* foglio 2 */
  #foglio-2 .g-step{margin-top:2mm}
  .g-s5 .g-sth{margin-bottom:1mm}
  .g-groups{display:block;column-count:4;column-gap:3mm}
  .g-grp{break-inside:auto;margin-bottom:1.6mm}
  .g-grph{break-after:avoid;padding:.8mm 1.4mm;gap:1.4mm;margin-bottom:1mm;border-left-width:1.6pt}
  .g-grpl{width:3.8mm;height:3.8mm;font-size:6.4pt}
  .g-grph h4{font-size:6.3pt;line-height:1.15}
  .g-grph p{font-size:5.3pt}
  .g-cards{display:block}
  .g-card{display:block;break-inside:avoid;padding:1.1mm 1.5mm;margin-bottom:1mm;border-left-width:1.4pt}
  .g-card.on{box-shadow:none;outline:.8pt solid var(--gold)}
  .g-card h5{font-size:6.6pt;margin:0 0 .2mm;gap:1mm}
  .g-card h5 span{font-size:5.4pt}
  .g-when{font-size:5.4pt;margin-bottom:.4mm}
  .g-d{font-size:6.2pt;line-height:1.21}
  .g-src{padding-top:.5mm}
  .g-only .g-card:not(.on){opacity:1}
  .g-only .g-grp:not(.on){display:block}
  .g-s6{display:grid;grid-template-columns:1.5fr 1fr;gap:3.4mm}
  .g-resp{gap:2.4mm}
  .g-rcol h4{font-size:6.6pt;margin-bottom:.6mm;padding-bottom:.4mm;border-bottom-width:1pt}
  .g-rcol ul{gap:.6mm}
  .g-rcol li{font-size:6.1pt;line-height:1.2;padding-left:2mm}
  .g-rcol li::before{width:1mm;height:1mm;top:.55em}
  .g-fix{font-size:5.9pt;line-height:1.2;padding:.7mm 1.2mm;margin-top:.8mm;border-left-width:1.4pt}
  .g-sancol{margin-top:0}
  .g-sanz{font-size:5.9pt;line-height:1.18}
  .g-sanz caption{font-size:5.4pt;margin-bottom:.6mm}
  .g-sanz thead th{font-size:4.9pt;padding:0 .8mm .5mm}
  .g-sanz tbody th,.g-sanz td{padding:.45mm .8mm}
  .g-note{font-size:5.4pt;margin-top:.5mm}
  .g-s7{margin-top:auto!important;padding:1.6mm 2.4mm;display:grid;grid-template-columns:46mm 1fr;gap:3mm;align-items:start}
  .g-s7 .g-sth{margin:0}
  .g-s7 .g-num{font-size:14pt}
  .g-s7 .g-rac{display:none}
  .g-last{grid-template-columns:1fr 58mm;gap:3mm}
  .g-todo{grid-template-columns:repeat(5,1fr);gap:2mm}
  .g-todo li{display:block;font-size:6pt;line-height:1.2;padding-top:.6mm}
  .g-todo li span{display:block;font-size:8.5pt;margin-bottom:.2mm}
  .g-nl{padding-left:2.6mm;gap:.6mm}
  .g-nl p:not(.g-k){font-size:5.9pt;line-height:1.2}
  .g-nl .g-btn{display:none}
  .g-nlurl{display:block;font-family:var(--sans);font-size:6.2pt;color:var(--gold-2)}
  .g-sf{margin-top:auto;padding-top:.8mm;font-size:5.4pt}
  /* foglio 2: solo obblighi, un po' più grande */
  #foglio-2 .g-d{font-size:6.4pt;line-height:1.23}
  #foglio-2 .g-ex{font-size:6.2pt}
  /* foglio 3 */
  #foglio-3{font-size:7.4pt}
  #foglio-3 .g-step{margin-top:2.6mm}
  #foglio-3 .g-rcol li{font-size:7.2pt;line-height:1.27;text-align:left;hyphens:manual}
  #foglio-3 .g-fix{font-size:6.9pt}
  #foglio-3 .g-sth h3{font-size:11pt}
  #foglio-3 .g-sanz{font-size:6.9pt}
  #foglio-3 .g-todo li{font-size:6.8pt}
  #foglio-3 .g-ft{font-size:6.8pt}
  .g-s7{margin-top:3mm!important}
  .g-fonti{padding:2.6mm 0 0}
  .g-fonti h3{font-size:9.5pt}
  .g-fonti > p{font-size:6.4pt;margin:.6mm 0 1.2mm}
  .g-flist{column-gap:5mm}
  .g-flist li{grid-template-columns:24mm 1fr;gap:2mm;padding:.8mm 0}
  .g-fk{font-size:5.8pt;padding:.4mm 1.2mm}
  .g-ft{font-size:6.2pt;line-height:1.2}
  .g-ft i{font-size:5.4pt;margin-top:.2mm}
}

/* riquadri stretti: testo allineato a sinistra, per evitare spazi irregolari */
.g-role p,.g-defs p,.g-rcol li,.g-fix,.g-change .g-ex,.g-yn li{text-align:left!important;-webkit-hyphens:manual;hyphens:manual}


/* =====================================================================
   Revisione grafica: spina del percorso, gruppi, alto rischio, passo 6 a schede,
   sanzioni, passo 7 con invito all'azione, newsletter, fonti.
   ===================================================================== */
.g-ref-go{font-size:10px;opacity:.7;margin-left:1px}
.g-ref{border-radius:2px}

/* spina verticale che collega i passi */
@media (min-width:1001px){
  .g-step{position:relative}
  .g-step::before{content:"";position:absolute;left:-25px;top:46px;bottom:-1px;width:1px;background:linear-gradient(to bottom,var(--gold),rgba(176,141,87,0))}
  .g-s7::before{display:none}
}
.g-num{font-size:72px;letter-spacing:-.02em}
.g-sth h3{font-size:27px}
.g-sheet{border-top:3px solid var(--gold)}

/* gruppi */
.g-grph{border-radius:2px}
.g-grpl{border-radius:50%}
.g-grpn{margin-left:auto;font-family:var(--sans);font-size:11px;letter-spacing:.06em;color:var(--c);border:1px solid var(--c);padding:3px 9px;border-radius:20px;white-space:nowrap;opacity:.85}
.g-card{border-radius:2px;transition:opacity .3s,box-shadow .3s,transform .3s var(--ease)}
.g-card:hover{box-shadow:0 14px 28px -18px rgba(14,28,51,.35);transform:translateY(-2px)}
.g-ex{border-radius:0 2px 2px 0}

/* quadro completo dell'alto rischio */
.g-hr{background:#FFFFFF;border:1px solid var(--line);border-top:3px solid var(--c);padding:18px 20px;margin:0 0 14px}
.g-hrk{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-text);text-align:left!important}
.g-hri{margin:6px 0 14px;font-size:15px;color:var(--text-2)}
.g-hrc{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.g-hrc h6{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--c);margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.g-hrc ol{margin:0 0 4px;padding:0;list-style:none;counter-reset:hr;display:grid;gap:5px}
.g-hrc li{counter-increment:hr;position:relative;padding-left:26px;font-size:14px;line-height:1.45;text-align:left!important;hyphens:manual!important}
.g-hrc li::before{content:counter(hr);position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;background:var(--t);color:var(--c);font-family:var(--sans);font-size:10px;font-weight:500;display:flex;align-items:center;justify-content:center}

/* passo 6: schede come al passo 5 */
.g-c-red{--c:var(--c-red);--t:var(--t-red)}
.g-respg{gap:22px}
.g-rcards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.g-rcard h5{margin-right:0}
.g-respg .g-fix{grid-column:1/-1;background:var(--t);border-left:3px solid var(--c);margin-top:0;font-size:14.5px;padding:10px 14px}
.g-respg .g-fix b{display:inline;margin-right:8px}

/* sanzioni */
.g-sanzw{margin-top:30px}
.g-szg{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}
.g-sz{background:#FFFFFF;border:1px solid var(--line);border-top:3px solid var(--ink);padding:14px 16px;display:flex;flex-direction:column}
.g-szv{font-family:var(--font);font-size:25px;line-height:1.1;color:var(--ink);text-align:left!important}
.g-szo{font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:3px;text-align:left!important}
.g-szl{font-size:14.5px;line-height:1.4;margin-top:10px;padding-top:8px;border-top:1px dotted var(--line);text-align:left!important;hyphens:manual!important}
.g-sz .g-src{margin-top:auto;padding-top:8px}
.g-szn{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.g-szn li{background:var(--t-ink);padding:10px 14px;font-size:14px;line-height:1.45;text-align:left!important;hyphens:manual!important}
.g-szn li b{display:block;font-family:var(--sans);font-weight:500;font-size:12px;color:var(--ink);margin-bottom:3px}
.g-szn .g-refs{margin-top:6px}

/* passo 7: in evidenza, con invito all'azione */
.g-s7{grid-template-columns:1fr;gap:26px;padding:48px 48px 44px;margin:44px -48px 0;background:radial-gradient(120% 140% at 0% 0%,#1B3157 0%,var(--night) 55%,#0A1527 100%)}
.g-s7 .g-sth{position:static;display:grid;grid-template-columns:auto 1fr;gap:4px 22px;align-items:end;max-width:900px}
.g-s7 .g-num{grid-row:span 3;font-size:96px;margin:0;color:var(--gold-2)}
.g-s7 .g-sth h3{font-size:36px}
.g-s7 .g-rac{grid-column:2;margin-top:6px;padding-top:0;border:0}
.g-todo{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative}
.g-todo::before{content:"";position:absolute;left:20px;right:20px;top:20px;height:1px;background:linear-gradient(to right,var(--gold-2),rgba(201,166,107,.25))}
.g-todo li{display:block;border:0;padding:0 18px 0 0;position:relative;color:var(--on-dark)}
.g-tn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--night);border:1px solid var(--gold-2);font-family:var(--font);font-size:19px;color:var(--gold-2);position:relative;margin-bottom:14px}
.g-todo b{display:block;font-family:var(--sans);font-weight:500;font-size:15px;color:#FFFFFF;margin-bottom:4px}
.g-todo p{font-size:14.5px;line-height:1.5;color:var(--on-dark);text-align:left!important;hyphens:manual!important}
.g-cta{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;margin-top:8px;padding:26px 30px;border:1px solid rgba(201,166,107,.55);background:rgba(255,255,255,.04)}
.g-cta h4{font-size:26px;line-height:1.2;color:#FFFFFF;margin:6px 0 8px;font-weight:400}
.g-cta p:not(.g-k){font-size:15.5px;line-height:1.55;color:var(--on-dark);max-width:620px;text-align:left!important}
.g-ctab{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.g-btn-lg{font-size:14.5px;padding:16px 26px}
.g-ctal{font-family:var(--sans);font-size:13px;color:var(--on-dark)!important;text-decoration-color:var(--gold-2)}
.g-ctap{display:none}
.g-last,.g-nl{display:none}

/* newsletter */
.g-nlsec{background:#FFFFFF;border-top:1px solid var(--line)}
.g-nlw{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.g-nlt h2{font-size:32px;line-height:1.2;margin:8px 0 14px}
.g-nlt p:not(.kicker){color:var(--text-2);font-size:16px}
.g-nlx{display:flex;flex-direction:column;gap:12px;align-items:flex-start}

/* fonti */
.g-fonti{padding:44px 0 6px}
.g-fonti h3{margin-bottom:14px}
.g-flist a{color:var(--c-blue);text-decoration:none;border:1px solid #BCD0EA;padding:4px 9px;border-radius:2px;font-size:12px}
.g-flist a:hover{background:var(--t-blue)}

@media (max-width:1000px){
  .g-hrc,.g-szg,.g-szn,.g-nlw{grid-template-columns:1fr}
  .g-s7{margin:30px -16px 0;padding:32px 22px}
  .g-s7 .g-num{font-size:64px}
  .g-s7 .g-sth h3{font-size:28px}
  .g-todo{grid-template-columns:1fr;gap:16px}
  .g-todo::before{left:20px;right:auto;top:20px;bottom:20px;width:1px;height:auto;background:linear-gradient(to bottom,var(--gold-2),rgba(201,166,107,.25))}
  .g-todo li{display:grid;grid-template-columns:40px 1fr;column-gap:14px;padding:0}
  .g-tn{grid-row:span 2;margin:0}
  .g-cta{grid-template-columns:1fr;padding:22px}
}

@media print{
  .g-step::before,.g-grpn,.g-nlsec,.g-ctal,.g-btn-lg{display:none!important}
  .g-sheet{border-top:0}
  .g-num{font-size:17pt}
  .g-sth h3{font-size:9.6pt}
  .g-card:hover{transform:none;box-shadow:none}
  .g-hr{padding:1.2mm 1.6mm;margin:0 0 1mm;border-top-width:1.2pt;break-inside:avoid}
  .g-hrk{font-size:5.4pt}
  .g-hri{font-size:5.9pt;margin:.4mm 0 .8mm;line-height:1.2}
  .g-hrc{gap:2mm;grid-template-columns:1fr}
  .g-hrc h6{font-size:6pt;margin-bottom:.5mm;padding-bottom:.3mm}
  .g-hrc ol{gap:0;display:block;columns:1}
  .g-hrc li{font-size:5.8pt;line-height:1.18;padding-left:2.6mm}
  .g-hrc li::before{width:2mm;height:2mm;font-size:4.2pt;top:.1mm}
  /* foglio 3 */
  #foglio-3 .g-respg{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4mm}
  #foglio-3 .g-grp{margin:0}
  #foglio-3 .g-cards{display:block}
  #foglio-3 .g-rcard{margin-bottom:.9mm;padding:1mm 1.4mm}
  #foglio-3 .g-rcard h5{font-size:6.8pt}
  #foglio-3 .g-rcard .g-d{font-size:6.5pt;line-height:1.22}
  #foglio-3 .g-respg .g-fix{font-size:6.2pt;padding:.8mm 1.2mm}
  #foglio-3 .g-respg .g-grph{padding:.8mm 1.4mm;margin-bottom:.8mm}
  #foglio-3 .g-respg .g-grph h4{font-size:6.8pt}
  .g-sanzw{margin-top:2mm}
  .g-szg{grid-template-columns:repeat(6,1fr);gap:1.2mm;margin-top:.8mm}
  .g-sz{padding:1mm 1.3mm;border-top-width:1.2pt}
  .g-szv{font-size:9pt}
  .g-szo{font-size:5.3pt;margin-top:.2mm}
  .g-szl{font-size:5.9pt;line-height:1.18;margin-top:.6mm;padding-top:.5mm}
  .g-sz .g-src{padding-top:.5mm}
  .g-szn{grid-template-columns:repeat(3,1fr);gap:1.2mm;margin-top:1mm}
  .g-szn li{padding:.8mm 1.3mm;font-size:5.9pt;line-height:1.2}
  .g-szn li b{font-size:5.9pt;margin-bottom:.2mm}
  .g-s7{margin:2.4mm 0 0!important;padding:2mm 3mm!important;display:grid!important;grid-template-columns:1fr!important;gap:1.4mm!important}
  .g-s7 .g-sth{display:flex!important;align-items:baseline;gap:2mm}
  .g-s7 .g-num{font-size:14pt}
  .g-s7 .g-sth h3{font-size:10pt}
  .g-todo{grid-template-columns:repeat(5,1fr)!important;gap:2mm!important}
  .g-todo::before{top:2.2mm;left:2mm;right:2mm}
  .g-todo li{display:block!important;padding:0!important;border:0!important}
  .g-tn{width:4.4mm;height:4.4mm;font-size:6.5pt;margin-bottom:.8mm}
  .g-todo b{font-size:6.6pt;margin-bottom:.2mm}
  .g-todo p{font-size:6.1pt;line-height:1.2}
  .g-cta{margin-top:.6mm;padding:1.4mm 2.4mm;gap:3mm;grid-template-columns:1fr auto}
  .g-cta .g-k{display:none}
  .g-cta h4{font-size:8pt;margin:0 0 .3mm}
  .g-cta p:not(.g-k){font-size:6.2pt;line-height:1.2}
  .g-ctap{display:block;font-family:var(--sans);font-size:6.2pt;color:var(--gold-2)}
  .g-fonti{padding:2mm 0 0}
  .g-fonti h3{font-size:8.5pt;margin-bottom:.8mm}
  .g-flist a{display:none}
  .g-hrc{grid-template-columns:1fr 1fr}
  .g-hrc ol{display:block}
  .g-hrc li{display:inline;padding-left:0;margin-right:1.2mm}
  .g-hrc li::before{position:static;display:inline-flex;vertical-align:.1mm;margin-right:.6mm}
  .g-flist{grid-template-columns:repeat(4,1fr);column-gap:3mm}
  .g-flist li{grid-template-columns:19mm 1fr;gap:1.4mm;padding:.5mm 0}
  .g-fk{font-size:5.3pt;padding:.3mm .9mm}
  #foglio-3 .g-ft{font-size:5.6pt;line-height:1.15}
  .g-ft i{font-size:4.9pt}
  #foglio-3 .g-step{margin-top:1.6mm}
  #foglio-3 .g-sh{margin-bottom:0}
  .g-s5{flex:1;min-height:0;display:flex!important;flex-direction:column;gap:0!important}
  .g-s5 .g-stb{flex:1;min-height:0}
  .g-s5 .g-groups{height:100%;column-fill:auto}
  #foglio-3 .g-rcard .g-d{font-size:6.2pt;line-height:1.2}
  #foglio-3 .g-rcard h5{font-size:6.5pt}
  #foglio-3 .g-rcard{margin-bottom:.7mm;padding:.8mm 1.3mm}
  .g-sz .g-src .g-refs,.g-sz .g-src{padding-top:.3mm}
  .g-szn li .g-refs{display:inline-flex;margin:0 0 0 1mm}
  .g-szn li b{display:inline;margin-right:1mm}
  #foglio-2 .g-d{font-size:6.05pt;line-height:1.19}
  #foglio-2 .g-ex{font-size:5.85pt;line-height:1.17;margin-top:.5mm;padding:.5mm 1mm}
  #foglio-2 .g-card{padding:.9mm 1.3mm;margin-bottom:.8mm}
  #foglio-2 .g-card h5{font-size:6.4pt}
  #foglio-2 .g-when{font-size:5.2pt;margin-bottom:.3mm}
  #foglio-2 .g-src{padding-top:.4mm}
  #foglio-2 .g-grph{margin-bottom:.7mm}
  .g-hr .g-refs{display:none}
  .g-hri{display:none}
}


/* =====================================================================
   Terza revisione: essenziale, chi vigila, rinvii dai livelli di rischio,
   mappa degli obblighi, caso concreto, marcatori allineati, accessibilità.
   ===================================================================== */
.g-c-ink{--c:var(--c-ink);--t:var(--t-ink)}
.g-mini li{color:var(--muted)}

/* l'essenziale, subito dopo la testata */
.g-ess{background:#FFFFFF;padding:60px 0 56px;border-bottom:1px solid var(--line)}
.g-ess .wrap{max-width:1280px;padding:0 24px;display:grid;grid-template-columns:270px minmax(0,1fr);gap:56px;align-items:start}
.g-essh h2{font-size:31px;line-height:1.15;color:var(--ink);margin:10px 0 12px}
.g-essh p:not(.kicker){color:var(--text-2);font-size:15.5px;line-height:1.55}
.g-esl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}
.g-esl li{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:16px;align-content:start;padding:24px 28px 22px 0;border-bottom:1px solid var(--line)}
.g-esl li:nth-child(even){padding:24px 0 22px 28px;border-left:1px solid var(--line)}
.g-esn{grid-row:span 2;font-family:var(--font);font-size:44px;line-height:.85;color:var(--gold)}
.g-esl p{font-size:16.5px;line-height:1.55;color:var(--ink)}
.g-esl a{justify-self:start;margin-top:12px;font-family:var(--sans);font-size:12.5px;letter-spacing:.05em;color:var(--gold-text);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:1px}
.g-esl a:hover{color:var(--ink);border-bottom-color:var(--ink)}

/* passo 1: chi vigila */
.g-vig{margin-top:22px;border:1px solid var(--line);border-top:3px solid var(--ink);padding:18px 22px 20px;background:#FFFFFF;scroll-margin-top:150px}
.g-vigi{font-size:15px;line-height:1.55;color:var(--text-2);margin:6px 0 10px;text-align:left!important}
.g-vigg{list-style:none;margin:0;padding:0}
.g-vi{display:grid;grid-template-columns:128px minmax(0,1fr);gap:18px;padding:14px 0;border-top:1px solid var(--line)}
.g-vis{align-self:start;display:block;font-family:var(--sans);font-weight:500;font-size:12px;line-height:1.3;letter-spacing:.03em;color:#FFFFFF;background:var(--ink);padding:7px 9px;text-align:center;border-radius:2px}
.g-vi:nth-child(2) .g-vis{background:var(--c-teal)}
.g-vi:nth-child(3) .g-vis{background:var(--c-violet)}
.g-vi:nth-child(4) .g-vis{background:var(--c-slate)}
.g-vi:nth-child(5) .g-vis{background:var(--c-blue)}
.g-vin{font-family:var(--sans);font-weight:500;font-size:13.5px;color:var(--ink);text-align:left!important}
.g-vid{font-size:15px;line-height:1.55;margin-top:3px;text-align:left!important;hyphens:manual!important}
.g-vir{margin-top:6px;padding:12px 16px;background:var(--t-ink);font-size:14.5px;line-height:1.55;text-align:left!important}
.g-vir b{font-family:var(--sans);font-weight:500;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);margin-right:8px}
.g-vir + .g-refs{margin-top:8px}

/* passo 4: rinvio agli obblighi ed esempi */
.g-tb > .g-refs{margin-top:6px}
.g-tc{margin-top:10px}
.g-go{display:inline-flex;align-items:center;gap:6px;margin-left:4px;font-family:var(--sans);font-size:12.5px;font-weight:500;letter-spacing:.02em;line-height:1;padding:5px 10px;border:1px solid currentColor;border-radius:20px;text-decoration:none!important;white-space:nowrap;transition:background .2s,color .2s}
.g-go i{font-style:normal;transition:transform .25s var(--ease)}
.g-go:hover i{transform:translateX(3px)}
.g-v .g-go{color:var(--c-red)}.g-a .g-go{color:var(--c-violet)}.g-t .g-go{color:var(--c-amber)}.g-m .g-go{color:var(--c-green)}
.g-v .g-go:hover{background:var(--t-red)}.g-a .g-go:hover{background:var(--t-violet)}.g-t .g-go:hover{background:var(--t-amber)}.g-m .g-go:hover{background:var(--t-green)}
.g-txk{margin-top:12px;padding-top:10px;border-top:1px dotted var(--line);font-family:var(--sans);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text);text-align:left!important}
.g-tx{margin-top:6px;padding-top:0;border-top:0}

/* destinazione dei rinvii: un segnale breve */
.g-grp,.g-omap{scroll-margin-top:150px}
@keyframes g-flash{0%{box-shadow:0 0 0 3px var(--gold)}100%{box-shadow:0 0 0 3px rgba(176,141,87,0)}}
.g-card:target,.g-grp:target > .g-grph{animation:g-flash 2.4s var(--ease) 1}

/* passo 5: mappa degli obblighi */
.g-omap{margin:0 0 34px}
.g-omi{font-size:15.5px;line-height:1.6;color:var(--text-2);margin:6px 0 18px;max-width:860px}
.g-omg{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.g-omg a{position:relative;display:flex;flex-direction:column;gap:9px;height:100%;padding:16px 18px 14px;background:#FFFFFF;border:1px solid var(--line);border-top:4px solid var(--c);border-radius:2px;color:var(--ink);text-decoration:none!important;transition:background .25s,box-shadow .25s,transform .25s var(--ease)}
.g-omg a:hover{background:var(--t);transform:translateY(-2px);box-shadow:0 14px 28px -20px rgba(14,28,51,.4)}
.g-oml{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--c);color:#FFFFFF;font-family:var(--sans);font-weight:500;font-size:14px}
.g-omq{font-family:var(--font);font-size:18.5px;line-height:1.3;color:var(--ink);text-align:left}
.g-omt{font-family:var(--sans);font-size:12px;line-height:1.4;color:var(--c);text-align:left}
.g-omm{margin-top:auto;padding-top:9px;border-top:1px dotted var(--line);font-family:var(--sans);font-size:11.5px;line-height:1.4;color:var(--muted);text-align:left}
.g-omm b{font-weight:500;color:var(--c)}
.g-omb{display:none;position:absolute;top:14px;right:14px;font-family:var(--sans);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;background:var(--gold-2);color:var(--night);padding:3px 7px}
.g-omg li.on a{background:var(--t);box-shadow:0 0 0 2px var(--gold)}
.g-omg li.on .g-omb{display:block}
.g-leg{margin-top:18px;display:grid;grid-template-columns:170px minmax(0,1fr);gap:22px;align-items:start;padding:16px 20px;background:#FAF7F1;border-left:3px solid var(--gold)}
.g-legk{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.16em;line-height:1.5;text-transform:uppercase;color:var(--gold-text);text-align:left!important;padding-top:3px}
.g-leg ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.g-leg li span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 6px;margin-bottom:7px;background:var(--ink);color:#FFFFFF;font-family:var(--sans);font-size:11px;font-weight:500;border-radius:2px}
.g-leg li b{display:block;font-family:var(--sans);font-weight:500;font-size:13px;color:var(--ink);margin-bottom:2px}
.g-leg li p{font-size:13.5px;line-height:1.45;color:var(--text-2);text-align:left!important;hyphens:manual!important}

/* passo 6: il caso concreto */
.g-scen{margin:0 0 32px;padding:26px 28px 22px;background:#FAF7F1;border:1px solid #E7DCC8;border-top:3px solid var(--gold)}
.g-scenh .g-k{color:var(--gold-text)}
.g-scenh h4{font-size:25px;line-height:1.2;font-weight:400;color:var(--ink);margin:6px 0 20px}
.g-scl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;position:relative}
.g-scl::before{content:"";position:absolute;left:17px;right:17px;top:17px;height:1px;background:linear-gradient(to right,var(--gold),rgba(176,141,87,.35))}
.g-scl li{position:relative;display:flex;flex-direction:column}
.g-scn{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#FAF7F1;border:1px solid var(--gold);color:var(--gold-text);font-family:var(--font);font-size:18px;margin-bottom:12px}
.g-scl li:last-child .g-scn{background:var(--ink);border-color:var(--ink);color:#FFFFFF}
.g-scl b{font-family:var(--sans);font-weight:500;font-size:14.5px;color:var(--ink);margin-bottom:5px}
.g-scl p{font-size:15px;line-height:1.55;text-align:left!important;hyphens:manual!important}
.g-scl .g-refs{margin-top:auto;padding-top:10px}
.g-scx{margin-top:18px;padding-top:12px;border-top:1px solid #E7DCC8;font-style:italic;font-size:14.5px;color:var(--text-2);text-align:left!important}

/* marcatori degli elenchi: centrati sulla prima riga di testo */
.g-yes li,.g-no li{padding-left:24px}
.g-yes li::before,.g-no li::before{left:0;width:14px;height:14px;top:.18em;top:calc(.5lh - 7px);border:0;transform:none;background:center/contain no-repeat}
.g-yes li::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M2.5 7.4l3 3 6-6.4' fill='none' stroke='%232F6B46' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.g-no li::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.5 3.5l7 7M10.5 3.5l-7 7' fill='none' stroke='%235E6676' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E")}
.g-tx li::before{top:.5em;top:calc(.5lh - 3px)}
.g-out li::before{top:calc(.5lh - .5px)}
.g-rcol li::before{top:calc(.5lh - 3px)}
.g-hrc li::before{top:calc(.5lh - 9px)}

/* accessibilità: fuoco visibile e movimento ridotto */
.g-sheet a:focus-visible,.g-path a:focus-visible,.g-hpath a:focus-visible,.g-esl a:focus-visible,.g-omg a:focus-visible,
.g-btn:focus-visible,.g-link:focus-visible,.g-filter:focus-visible,.g-go:focus-visible,.g-ref:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.g-test .g-btn:focus-visible,.g-s7 a:focus-visible{outline-color:#FFFFFF}
@media (prefers-reduced-motion:reduce){
  .g-sec *,.g-ess *,.g-hpath *{transition:none!important;animation:none!important}
  .g-card:hover,.g-omg a:hover{transform:none}
}

@media (max-width:1100px){
  .g-leg{grid-template-columns:1fr;gap:10px}
  .g-leg ol{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1000px){
  .g-ess .wrap{grid-template-columns:1fr;gap:20px}
  .g-omg{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g-scl{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}
  .g-scl::before{display:none}
}
@media (max-width:720px){
  .g-ess{padding:36px 0 32px}
  .g-ess .wrap{padding:0 16px}
  .g-essh h2{font-size:25px}
  .g-esl{grid-template-columns:1fr}
  .g-esl li,.g-esl li:nth-child(even){padding:18px 0;border-left:0;grid-template-columns:36px minmax(0,1fr)}
  .g-esn{font-size:34px}
  .g-vig{padding:14px 14px 16px}
  .g-vi{grid-template-columns:1fr;gap:8px}
  .g-vis{justify-self:start}
  .g-omg{grid-template-columns:1fr}
  .g-leg ol{grid-template-columns:1fr 1fr}
  .g-scen{padding:20px 16px 16px}
  .g-scl{grid-template-columns:1fr}
  .g-go{margin:6px 0 0}
}

@media print{
  .g-ess,.g-omap,.g-scen{display:none!important}
  .g-vig{margin-top:1.2mm;padding:.9mm 1.4mm 1mm;border-top-width:1.2pt}
  .g-vigi{display:none}
  .g-vi{grid-template-columns:12.5mm minmax(0,1fr);gap:1.4mm;padding:.5mm 0}
  .g-vis{font-size:4.9pt;padding:.35mm .5mm;line-height:1.15}
  .g-vin{display:inline;font-size:5.8pt;margin-right:.8mm}
  .g-vid{display:inline;font-size:5.9pt;line-height:1.2;margin:0}
  .g-vi .g-refs{display:inline-flex;margin:0 0 0 .8mm;vertical-align:baseline}
  .g-vir{margin-top:.4mm;padding:.6mm 1.2mm;font-size:5.8pt;line-height:1.2}
  .g-vir b{font-size:5pt;margin-right:1mm}
  .g-vir + .g-refs{display:none}
  .g-tw{display:inline}
  .g-tb > .g-refs{display:inline-flex;margin:0 0 0 1mm;vertical-align:baseline}
  .g-tc{margin-top:.3mm}
  .g-go{font-size:5.1pt;padding:.2mm .9mm;margin-left:.6mm;gap:.6mm;border-width:.5pt}
  .g-txk{display:none}
  .g-tx{margin-top:.6mm;padding-top:.5mm;border-top:1px dotted var(--line)}
  .g-yes li,.g-no li{padding-left:2.8mm}
  .g-yes li::before,.g-no li::before{width:2mm;height:2mm;top:calc(.5lh - 1mm);left:0}
  .g-tx li::before{top:calc(.5lh - .45mm)}
  .g-out li::before{top:calc(.5lh - .25pt)}
  .g-rcol li::before{top:calc(.5lh - .5mm)}
  .g-card:target,.g-grp:target > .g-grph{animation:none}
}
.g-vip{display:none}
@media print{
  .g-vid{display:none!important}
  .g-vip{display:inline;font-size:5.9pt;line-height:1.2}
  .g-vin{display:none}
  .g-vi{grid-template-columns:15mm minmax(0,1fr);align-items:baseline}
  .g-vis{font-size:4.8pt}
}
@media print{
  .g-vi p{text-align:left!important}
  .g-vi .g-refs{display:inline-flex;margin:0 0 0 .8mm;vertical-align:baseline}
}
@media print{.g-vi div{text-align:left!important}}
.g-vig-p{display:none}
@media print{
  .g-vig-s{display:none!important}
  .g-vig-p{display:block;margin-top:0}
  .g-vig-p .g-vi{grid-template-columns:1fr;gap:.3mm;padding:.7mm 0}
  .g-vig-p .g-vis{justify-self:start;padding:.3mm 1mm}
  .g-tc{text-align:left!important;hyphens:manual!important}
  .g-tier{grid-template-columns:17mm 1fr}
  .g-tl b{font-size:6pt}
}
@media print{
  .g-vig-p .g-vi{display:block;padding:.5mm 0}
  .g-vig-p .g-vis{display:inline-block;margin-right:1mm;vertical-align:baseline}
  .g-vig-p .g-vi > div{display:inline}
  .g-vig-p .g-vi .g-refs{display:inline;margin-left:.6mm}
  .g-vig-p .g-vi .g-ref{margin-right:.6mm}
  .g-c1 .g-vig-p{margin-top:auto}
}
@media print{.g-vig-p .g-vi,.g-vig-p .g-vir{text-align:left!important;hyphens:manual!important}}
@media print{
  .g-vig-p .g-vi{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:1.4mm;align-items:start;padding:.55mm 0}
  .g-vig-p .g-vi > div{display:contents}
  .g-vig-p .g-vis{margin:0;width:auto}
  .g-vig-p .g-vip{display:block}
  .g-vig-p .g-vi .g-refs{display:flex;flex-direction:column;align-items:flex-end;gap:.4mm;margin:0}
  .g-vig-p .g-vi .g-ref{margin:0}
}
@media print{
  .g-vig-p .g-vi{grid-template-columns:15mm minmax(0,1fr) auto}
  .g-vig-p .g-vis{justify-self:start}
  .g-vig-p .g-ref{font-size:4.9pt;padding:.05mm .7mm}
  .g-vig-p .g-vi .g-refs{flex-direction:row;gap:.6mm}
  .g-vig-p .g-vir{padding:.5mm 1.2mm}
}
@media print{
  .g-vig-p .g-vir .g-vip{display:inline}
  .g-vig-p .g-vi{grid-template-columns:13.5mm minmax(0,1fr) auto}
  .g-c3 .g-vig-p .g-vi{display:block;padding:.6mm 0}
  .g-c3 .g-vig-p .g-vi > div{display:block;margin-top:.3mm}
  .g-c3 .g-vig-p .g-vi .g-refs{justify-content:flex-start;margin-top:.3mm}
}
@media print{
  .g-c3 .g-vig-p .g-vis{display:inline-block;margin-right:1mm}
  .g-c3 .g-vig-p .g-vi > div{display:inline;margin:0}
  .g-c3 .g-vig-p .g-vip{display:inline}
  .g-c3 .g-vig-p .g-vi .g-refs{display:flex;margin-top:.4mm}
}
/* livelli di rischio: indicatore di intensità a quattro tacche */
.g-tl{flex-direction:column;justify-content:space-between;gap:14px}
.g-tl::after{display:none}
.g-meter{display:flex;gap:4px}
.g-meter i{display:block;width:18px;height:5px;border-radius:2px;background:rgba(255,255,255,.28)}
.g-meter i.on{background:rgba(255,255,255,.92)}
.g-tc,.g-leg li,.g-esl p{text-align:left!important;-webkit-hyphens:manual;hyphens:manual}
@media (max-width:720px){.g-tl{flex-direction:row;align-items:center}}
@media print{.g-meter{display:none}}
@media print{
  .g-c1 .g-vig-p .g-vigg{display:grid;grid-template-columns:1fr 1fr;column-gap:2.4mm}
  .g-c1 .g-vig-p .g-vi{display:block;padding:.5mm 0}
  .g-c1 .g-vig-p .g-vis{display:inline-block;margin-right:.8mm}
  .g-c1 .g-vig-p .g-vi > div{display:inline}
  .g-c1 .g-vig-p .g-vip{display:inline}
  .g-c1 .g-vig-p .g-vi .g-refs{display:flex;flex-wrap:wrap;margin-top:.3mm;justify-content:flex-start}
}
@media print{
  .g-vig-p .g-ref{font-size:4.6pt;padding:0 .6mm;gap:.5mm}
  .g-vig-p .g-ref .g-ref-go{font-size:4pt}
  .g-c1 .g-vig-p .g-vi .g-refs{gap:.4mm .6mm;margin-top:.2mm}
  .g-c1 .g-vig-p .g-vi{padding:.4mm 0}
  .g-c1 .g-vig-p{padding-bottom:.6mm}
}
@media print{.g-stk{display:none!important}}
@media print{.g-tn{line-height:1;padding:0}}
@media print{.g-todo li .g-tn{display:flex!important;align-items:center;justify-content:center}}
@media print{.g-ft i{display:none}}
.g-omm,.g-omt{-webkit-hyphens:manual;hyphens:manual}

/* il quadro in sintesi: cappello introduttivo dopo la testata */
.g-qd{background:#FFFFFF;padding:64px 0 56px;border-bottom:1px solid var(--line)}
.g-qd .wrap{max-width:1280px;padding:0 24px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px 60px;align-items:start}
.g-qdh{position:sticky;top:120px}
.g-qdh h2{font-size:32px;line-height:1.15;color:var(--ink);margin:10px 0 16px}
.g-qdl{font-size:17px;line-height:1.6;color:var(--ink);text-align:left;hyphens:manual}
.g-qdh .g-refs{margin-top:12px}
.g-qdl2{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}
.g-qdl2 li{display:flex;flex-direction:column;padding:24px 30px 24px 0;border-bottom:1px solid var(--line)}
.g-qdl2 li:nth-child(even){padding:24px 0 24px 30px;border-left:1px solid var(--line)}
.g-qn{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.16em;color:var(--gold-text)}
.g-qdl2 h3{font-size:21px;line-height:1.25;color:var(--ink);margin:6px 0 8px;font-weight:400}
.g-qdl2 p{font-size:15.5px;line-height:1.6;color:var(--text-2);text-align:left;hyphens:manual}
.g-qdl2 .g-refs{margin-top:auto;padding-top:12px}
.g-qdx{grid-column:2;font-size:15.5px;line-height:1.55;color:var(--text-2);font-style:italic}
.g-qdx a{font-family:var(--sans);font-style:normal;font-size:12.5px;letter-spacing:.05em;color:var(--gold-text);text-decoration:none;border-bottom:1px solid var(--gold);margin-left:6px;white-space:nowrap}
.g-qdx a:hover{color:var(--ink);border-bottom-color:var(--ink)}
.g-qdx a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media (max-width:1000px){
  .g-qd .wrap{grid-template-columns:1fr;gap:24px}
  .g-qdh{position:static}
  .g-qdx{grid-column:1}
}
@media (max-width:720px){
  .g-qd{padding:38px 0 34px}
  .g-qd .wrap{padding:0 16px}
  .g-qdh h2{font-size:25px}
  .g-qdl2{grid-template-columns:1fr}
  .g-qdl2 li,.g-qdl2 li:nth-child(even){padding:20px 0;border-left:0}
}
@media print{.g-qd{display:none!important}}
.g-qdx{text-align:left;hyphens:manual}

/* =====================================================================
   Quarta revisione: leggibilità, conseguenza allineata, testo giustificato.
   ===================================================================== */
/* conseguenza: etichetta a sinistra, testo e rinvio allineati nella stessa colonna */
.g-tc{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:baseline;margin-top:12px}
.g-tck{font-family:var(--sans);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text)}
.g-tcb p{margin:0}
.g-tcb .g-go{margin:8px 0 0}

/* leggibilità a schermo: testo più scuro, corpo più ampio, tratti più pieni */
@media screen{
  .g-sec,.g-qd,.g-nlsec{--text-2:#25314A;--muted:#4B5466}
  .g-sheet{font-size:16.5px;color:#0F2240}
  .g-sheet p,.g-sheet li,.g-qd p{-webkit-text-stroke:.25px currentColor;text-rendering:optimizeLegibility;font-kerning:normal}
  .g-band p,.g-dd,.g-tw,.g-d,.g-vid,.g-scl p,.g-omi,.g-vigi,.g-tcb p,.g-qdl2 p{font-size:16.5px;line-height:1.62}
  .g-plain,.g-ex,.g-vir,.g-yn li,.g-tx li,.g-rcol li,.g-szn li,.g-hrc li,.g-out li,.g-todo p,.g-scx{font-size:15.5px;line-height:1.55}
  .g-leg li p,.g-ft{font-size:14.5px}
  .g-shk,.g-shb b{font-weight:400}
  .g-tx li{color:var(--ink)}
}

/* testo giustificato ovunque, con sillabazione per evitare spazi irregolari */
html body :is(.g-sec,.g-qd,.g-nlsec,.phero) :is(p,li){text-align:justify!important;text-justify:inter-word;-webkit-hyphens:auto!important;hyphens:auto!important}
html body :is(.g-sec,.g-qd) :is(.g-k,.g-stk,.g-hrk,.g-legk,.g-term,.g-yn > div > p,.g-mini li,.g-szv,.g-szo,.g-txk,.g-when,.g-src,.g-codes){text-align:left!important;-webkit-hyphens:manual!important;hyphens:manual!important}
@media print{
  .g-tc{display:block;margin-top:.3mm}
  .g-tck{font-size:5pt;margin-right:1mm}
  .g-tcb,.g-tcb p{display:inline}
  .g-tcb .g-go{margin:0 0 0 .6mm}
}
