/* ===========================================================================
   Raina Impianti - stili delle pagine di testo (template pagina, es. privacy)
   Richiede /css/site.css, che va caricato prima di questo file.
   =========================================================================== */

html{scroll-padding-top:96px;}

/* colonna di lettura piu stretta della home; intestazione e piè di pagina
   restano invece a tutta larghezza */
.page-head .wrap,
.page-text .wrap{max-width:900px;}

/* ============ TIPOGRAFIA DEL TESTO ============ */
.page-text{line-height:1.7;padding-bottom:70px;}
.page-text p{margin:0 0 1.1em;}
.page-text h2{
	font-size:clamp(1.25rem,2.6vw,1.6rem);margin:52px 0 .5em;
	color:var(--navy);scroll-margin-top:96px;
}
.page-text h3{font-size:1.05rem;margin:28px 0 .4em;}

/* nella home gli elenchi sono senza pallino: qui il testo discorsivo li usa */
.page-text ul{list-style:disc;}
.page-text ul,
.page-text ol{margin:0 0 1.2em;padding-left:1.3em;}
.page-text li{margin-bottom:.5em;}

/* i collegamenti dentro al testo restano sottolineati, per leggibilita */
.page-text p a,
.page-text li a,
.page-text td a{text-decoration:underline;}
.page-text a:hover{text-decoration:none;}

.lead{font-size:1.05rem;color:var(--muted);}

/* ============ INTESTAZIONE ============ */
.page-head{
	background:linear-gradient(160deg,var(--navy) 0%,var(--navy-dark) 60%,var(--navy-deep) 100%);
	color:#fff;padding:54px 0 58px;
}
.page-head h1{font-size:clamp(1.9rem,4.5vw,2.6rem);margin:0 0 .3em;}
.page-head .eyebrow{color:var(--navy-deep);}
.page-head p{color:rgba(255,255,255,.85);margin:0;max-width:660px;}
.updated{margin-top:18px !important;font-size:.86rem;color:rgba(255,255,255,.65) !important;}

/* ============ INDICE ============ */
.toc{
	background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);
	padding:24px 26px;margin:44px 0 8px;
}
.toc h2{margin:0 0 12px;font-size:1rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);}
.toc ol{margin:0;padding-left:1.2em;columns:2;column-gap:34px;}
.toc li{margin-bottom:.35em;font-size:.95rem;break-inside:avoid;}
.page-text .toc a{text-decoration:none;}
.page-text .toc a:hover{text-decoration:underline;}

/* ============ BLOCCHI DI CONTENUTO ============ */
.note{
	background:var(--bg-soft);border-left:5px solid var(--yellow);border-radius:0 10px 10px 0;
	padding:18px 20px;margin:24px 0;font-size:.97rem;
}
.note p:last-child{margin-bottom:0;}
.note strong{color:var(--navy);}

.data-box{
	background:#fff;border:1px solid var(--line);border-radius:var(--radius);
	padding:26px 28px;box-shadow:var(--shadow);margin:24px 0;
}
.data-box h3{margin-top:0;color:var(--navy);}
.data-box p:last-child{margin-bottom:0;}

.table-scroll{overflow-x:auto;margin:22px 0;-webkit-overflow-scrolling:touch;}
.page-text table{border-collapse:collapse;width:100%;min-width:560px;font-size:.95rem;}
.page-text th,
.page-text td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:top;}
.page-text thead th{background:var(--navy);color:#fff;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;border-bottom:none;}
.page-text thead th:first-child{border-top-left-radius:10px;}
.page-text thead th:last-child{border-top-right-radius:10px;}
.page-text tbody tr:nth-child(even){background:var(--bg-soft);}

.rights li{margin-bottom:.8em;}
.rights strong{color:var(--navy);}

.contact-box{
	background:var(--navy);color:#fff;border-radius:var(--radius);padding:30px;margin:36px 0 10px;
}
.contact-box h3{margin:0 0 14px;color:#fff;}
.contact-box a{color:var(--yellow);}
.contact-box p:last-child{margin-bottom:0;}

/* pagina 404 */
.not-found-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:44px !important;}
.page-text .btn{text-decoration:none;}

/* ============ RESPONSIVE ============ */
@media (max-width:640px){
	.toc ol{columns:1;}
	.page-head{padding:40px 0 44px;}
	.page-text h2{margin-top:42px;}
}
