﻿/* ── PaginaCorso ── */
.pc-hero { padding: clamp(3rem,8vw,5rem) clamp(1rem,5vw,4rem) clamp(2rem,5vw,4rem); }
.pc-hero-inner { max-width:1140px; margin:0 auto; display:grid; grid-template-columns:1fr 400px; gap:3rem; align-items:start; }
@media (max-width:860px) { .pc-hero-inner { grid-template-columns:1fr; } .pc-hero-card { order:-1; } }
.pc-hero h1 { font-size:clamp(1.8rem,4vw,2.6rem); letter-spacing:-.035em; }
.pc-hero h1 em { font-style:normal; color:#a0c4ff; }

.pc-breadcrumb { display:flex; gap:6px; align-items:center; font-size:.83rem; margin-bottom:1.5rem; flex-wrap:wrap; }
.pc-breadcrumb a { color:rgba(255,255,255,.4); text-decoration:none; }
.pc-breadcrumb a:hover { color:rgba(255,255,255,.8); }
.pc-breadcrumb .sep { color:rgba(255,255,255,.2); }
.pc-breadcrumb .cur { color:rgba(255,255,255,.6); }

.pc-badge { display:inline-flex; align-items:center; gap:5px; font-size:.78rem; font-weight:500; padding:4px 12px; border-radius:50px; }
.pc-badge-blue  { background:rgba(255,255,255,.1); color:rgba(255,255,255,.85); border:1px solid rgba(255,255,255,.2); }
.pc-badge-gold  { background:#fdf6e3; color:#8a6100; }
.pc-badge-green { background:#e6f7f0; color:#0a7c4f; }

.pc-trust-strip { display:flex; gap:20px; flex-wrap:wrap; }
.pc-trust-item  { display:flex; align-items:center; gap:7px; font-size:.84rem; color:rgba(255,255,255,.45); }

.pc-section { padding:clamp(2.5rem,6vw,4.5rem) clamp(1rem,5vw,4rem); }
.pc-section-inner { max-width:1140px; margin:0 auto; }
.pc-section-label { font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; font-weight:600; margin-bottom:.6rem; }
.pc-section-title { font-size:clamp(1.4rem,3vw,2rem); font-weight:700; letter-spacing:-.03em; margin-bottom:.75rem; }
.pc-section-desc  { max-width:620px; line-height:1.75; }

.pc-stats-inner { max-width:1140px; margin:0 auto; display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:1rem; }

.pc-notice-in { background:#feff9e; border:2px solid #fef976; border-radius:8px; padding:.875rem 1.25rem; font-weight:600; text-align:center; color:#555; display:flex; align-items:center; justify-content:center; gap:8px; }

.pc-perche-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1.25rem; margin-top:2.5rem; }
.pc-perche-icon  { width:44px; height:44px; border-radius:8px; display:flex; align-items:center; justify-content:center; margin-bottom:1rem; }

.pc-content-grid { display:flex; flex-direction:column; gap:1.5rem; margin-top:2.5rem; }
.pc-content-body, .pc-prefazione { font-size:.95rem; line-height:1.75; color:#3d4f5e; }
.pc-content-body table, .pc-prefazione table { width:100%; }
.pc-content-body td, .pc-prefazione td { font-size:14px; padding:8px; }
.pc-content-body tr, .pc-prefazione tr { border-bottom:dotted 1px #cacaca; }

.pc-steps { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); margin-top:2.5rem; }
.pc-step  { padding:2rem 1.5rem; position:relative; text-align:center; }
.pc-step:not(:last-child)::after { content:'→'; position:absolute; right:-.5rem; top:2rem; font-size:1.2rem; color:#2c6180; font-weight:700; display:none; }
@media (min-width:640px) { .pc-step:not(:last-child)::after { display:block; } }
.pc-step-n { width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 1rem; font-size:1.1rem; font-weight:700; }

.pc-cta-final { padding:clamp(2.5rem,6vw,4.5rem) clamp(1rem,5vw,4rem); text-align:center; }
.pc-btn-outline-white { color:rgba(255,255,255,.85); padding:12px 28px; border-radius:50px; font-size:.95rem; font-weight:600; border:1.5px solid rgba(255,255,255,.4); background:transparent; cursor:pointer; margin-top:.75rem; transition:background .2s; text-decoration:none; display:inline-block; }
.pc-btn-outline-white:hover { background:rgba(255,255,255,.1); color:#fff; }

.pc-rate-det summary { font-size:.84rem; cursor:pointer; padding:.4rem 0; list-style:none; color:#2c6180; }
.pc-rate-det summary::-webkit-details-marker { display:none; }

/* ── Accredia ── */
.section { padding:28px 0; }
.section-title { color:#203c4b; margin-top:0; font-weight:900; line-height:1.15; }
.subtle { color:#58656d; }
.badge-pill { display:inline-block; border:1px solid rgba(255,255,255,.35); padding:6px 10px; border-radius:999px; margin-right:8px; margin-bottom:8px; font-size:13px; opacity:.95; }
.toc a { display:inline-block; margin:0 10px 10px 0; padding:8px 12px; border:1px solid rgba(32,60,75,.18); border-radius:999px; color:#203c4b; text-decoration:none; font-weight:800; background:#fff; }
.toc a:hover { border-color:rgba(32,60,75,.35); }
.panel-brand { border-color:rgba(32,60,75,.25); border-radius:10px; overflow:hidden; box-shadow:0 1px 10px rgba(0,0,0,.05); }
.panel-brand > .panel-heading { background:rgba(32,60,75,.06); border-bottom:1px solid rgba(32,60,75,.12); color:#203c4b; font-weight:900; }
.icon-dot { display:inline-block; width:10px; height:10px; border-radius:50%; background:#cc0407; margin-right:8px; position:relative; top:-1px; }
.well-soft { background:rgba(32,60,75,.04); border:1px solid rgba(32,60,75,.12); border-radius:12px; }
.kpi { border-left:4px solid #cc0407; padding-left:12px; margin:14px 0; color:white; }
.mini-note { font-size:13px; color:#6b7780; margin-top:8px; }
a.footer-link { color:#fff; text-decoration:underline; }

/* ── Certificazioni Informatiche ── */
.panel-body-personalized { background-color:#3f7cbb; border-radius:10px; margin:10px; color:white; }

/* ── Certificazioni Linguistiche ── */
.boxevidenziato { color:#e61212; font-weight:bold; font-size:17px; background-color:#f9f33b; border:1px solid red; border-radius:4px; padding:5px; }
