/* Stili comuni alle pagine interne (storia, arte marziale, tecniche, privacy, safeguarding) */
.phead{position:relative;color:#fff;background:var(--navy) center/cover no-repeat;padding:128px 0 52px;overflow:hidden}
.phead::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(21,26,33,.78),rgba(21,26,33,.93))}
.phead .wrap{position:relative}
.phead h1{margin:0 0 12px;font-size:clamp(2.2rem,6vw,3.6rem);max-width:none}
.phead p{margin:0;max-width:60ch;font-size:1.15rem;color:#dde2ea}
.crumb{margin:0 0 14px!important;font-size:.9rem!important;color:#cdd5e0!important}
.crumb a{text-decoration:none;opacity:.85}.crumb a:hover{opacity:1;text-decoration:underline}
.subnav{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 0}
.subnav a{padding:8px 16px;border-radius:99px;border:1px solid rgba(255,255,255,.4);color:#fff;text-decoration:none;font-weight:500;font-size:.95rem}
.subnav a:hover{background:rgba(255,255,255,.15)}
.subnav a[aria-current="page"]{background:#fff;color:#151a21;border-color:#fff}
.page{padding:56px 0 64px}
.page .lead2{max-width:68ch;margin:0 0 34px;font-size:1.1rem;color:var(--muted)}

/* linea del tempo */
.tl{list-style:none;margin:0;padding:0 0 0 26px;border-left:3px solid var(--line)}
.tl li{position:relative;padding:0 0 40px 22px}
.tl li::before{content:"";position:absolute;left:-37px;top:6px;width:20px;height:20px;border-radius:50%;background:var(--c);border:4px solid var(--bg)}
.tl .date{display:inline-block;padding:3px 12px;border-radius:99px;background:var(--c);color:#111;font-weight:700;font-size:.85rem;letter-spacing:.04em}
.tl h3{margin:8px 0 6px;font-size:1.4rem}
.tl p{margin:0 0 10px;max-width:68ch}
.tl figure,.feat figure,.wide{margin:14px 0 0;aspect-ratio:16/9;max-width:600px;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,var(--navy),#2b3442)}
.tl img,.feat img,.wide img{width:100%;height:100%;object-fit:cover;display:block}
.kingdoms{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:14px 0 6px}
.kingdoms div{background:var(--surface);border:1px solid var(--line);border-top:6px solid var(--c);border-radius:12px;padding:14px 16px}
.kingdoms b{display:block;margin-bottom:4px}
.quote{margin-top:10px;padding:22px 26px;border-radius:14px;background:var(--navy);color:#fff;font-size:1.15rem;border-left:10px solid rgba(255,255,255,.4)}

/* blocchi con immagine (arte marziale) */
.feat{display:grid;gap:30px;grid-template-columns:1fr 1fr;align-items:center;padding:42px 0;border-top:1px solid var(--line)}
.feat:first-of-type{border-top:0;padding-top:0}
.feat.rev figure{order:-1}
.feat figure{margin:0;max-width:none;aspect-ratio:4/3}
.feat .n{display:inline-block;padding:3px 12px;border-radius:99px;background:var(--c);color:#111;font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.feat h2{margin:10px 0 10px}
.feat p{margin:0 0 12px;max-width:60ch}
.feat.full{grid-template-columns:1fr}
.bod{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:6px}
.bod div{background:var(--surface);border:1px solid var(--line);border-top:8px solid var(--c);border-radius:14px;padding:18px 20px}
.bod b{display:block;font-size:1.15rem}.bod small{display:block;color:var(--muted);margin:2px 0 8px}.bod p{margin:0}
@media (max-width:760px){.feat{grid-template-columns:1fr}.feat.rev figure{order:0}}

/* documenti: privacy e safeguarding */
.doc{max-width:780px}
.doc h2{margin:38px 0 14px;font-size:1.5rem}
.doc h2:first-child{margin-top:0}
.doc p{margin:0 0 14px}
.cards{display:grid;gap:14px;margin:0 0 6px}
.card2{background:var(--surface);border:1px solid var(--line);border-left:8px solid var(--c);border-radius:0 14px 14px 0;padding:16px 20px}
.card2 small{display:block;color:var(--muted);font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:.78rem}
.card2 b{display:block;font-size:1.1rem;margin:2px 0}
.card2 span{color:var(--muted)}
.dl{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.dl a{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:14px;text-decoration:none;font-weight:700;transition:transform .25s}
.dl a:hover{transform:translateY(-3px)}
.dl a i{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--ink);color:var(--bg);font-style:normal;font-size:.72rem;font-weight:800}
.upd{margin-top:30px;color:var(--muted);font-size:.92rem}

/* pagina precedente / successiva */
.pager{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:44px;padding-top:26px;border-top:1px solid var(--line)}
.pager a{padding:12px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-decoration:none;font-weight:700}
.pager a:hover{border-color:var(--ink)}

/* spazio sopra l'immagine dei Boderion */
.feat.full .wide{margin-top:38px;max-width:none;aspect-ratio:16/9}

/* documenti legali */
.doc h3{margin:22px 0 8px;font-size:1.1rem}
.doc ul{margin:0 0 14px;padding-left:22px}
.doc ul li{margin:4px 0}
.doc .btn.alt{color:var(--ink);border-color:var(--ink)}
.tbl{overflow-x:auto;margin:0 0 14px;border:1px solid var(--line);border-radius:14px}
.tbl table{width:100%;min-width:640px;border-collapse:collapse;background:var(--surface)}
.tbl th,.tbl td{text-align:left;padding:12px 14px;border-top:1px solid var(--line);vertical-align:top;font-size:.95rem}
.tbl thead th{border-top:0;background:var(--bg);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.toc{columns:2;column-gap:30px;margin:0 0 30px;padding:18px 22px 18px 42px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.toc li{margin:4px 0;break-inside:avoid}
@media (max-width:640px){.toc{columns:1}}
