/* ==========================================================
   Completamento Corso — Domus Formazione
   Scoped a .dc — zero conflitti con Divi e altri template.
   Prefisso: dc- (domus completamento)
   ========================================================== */

/* VARIABILI — scoped, non inquinano :root globale */
.dc {
  --dc-navy:        #0A2540;
  --dc-navy-soft:   #1a3b5e;
  --dc-green:       #10B981;
  --dc-red:         #DC2626;
  --dc-ink:         #0A2540;
  --dc-ink-soft:    #5b6b80;
  --dc-bg:          #ffffff;
  --dc-surface:     #ffffff;
  --dc-surface-alt: #f6f8fb;
  --dc-border:      #e3e8ef;
  --dc-radius:      12px;
  --dc-shadow:      0 1px 2px rgba(10,37,64,.04), 0 8px 24px rgba(10,37,64,.05);
  --dc-maxw:        1180px;
  --dc-font:        'Plus Jakarta Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
}

/* RESET — scoped */
.dc *,
.dc *::before,
.dc *::after { box-sizing: border-box; }

.dc {
  font-family: var(--dc-font);
  color: var(--dc-ink);
  background: var(--dc-bg);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

/* WRAPPER */
.dc-wrap {
  max-width: var(--dc-maxw);
  margin-inline: auto;
  padding-inline: clamp(1.25rem, 5vw, 2rem);
}

/* ==========================================================
   HERO
   ========================================================== */
.dc-hero {
  background: var(--dc-navy);
  color: #fff;
  padding: 3.5rem 0;
  border-bottom: 1px solid var(--dc-border);
}

.dc-hero__wrap {
  max-width: var(--dc-maxw);
  margin-inline: auto;
  padding-inline: clamp(1.25rem, 5vw, 2rem);
  text-align: center;
}

.dc-hero__title {
  margin: 0;
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  line-height: 1.15;
  color: #fff;
}

.dc-hero__sub {
  margin: .9rem 0 0;
  font-size: clamp(.9rem, 2vw, 1.05rem);
  color: rgba(255,255,255,.78);
  max-width: 520px;
  margin-inline: auto;
}

/* ==========================================================
   GRIGLIA PRINCIPALE — testo + accordion
   ========================================================== */
.dc-main {
  padding: clamp(2.5rem, 6vw, 4rem) 0;
  border-bottom: 1px solid var(--dc-border);
}

.dc-main__grid {
  display: grid;
  gap: 2.5rem;
}

@media (min-width: 860px) {
  .dc-main__grid {
    grid-template-columns: 1fr 1.25fr;
    gap: 3rem;
    align-items: start;
  }
}

/* --- Colonna sinistra: istruzioni --- */
.dc-istruzioni__title {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--dc-ink-soft);
  margin: 0 0 1rem;
  letter-spacing: -.01em;
}

.dc-istruzioni__text {
  font-size: .95rem;
  color: var(--dc-ink-soft);
  margin: 0 0 1rem;
  line-height: 1.7;
}

.dc-istruzioni__text a {
  color: var(--dc-ink);
  font-weight: 600;
  text-decoration: underline;
}

.dc-istruzioni__list {
  margin: .5rem 0 1rem 1.25rem;
  padding: 0;
  font-size: .95rem;
  color: var(--dc-ink-soft);
  line-height: 1.75;
}

.dc-istruzioni__list li + li { margin-top: .35rem; }

.dc-istruzioni__note {
  font-size: .9rem;
  color: var(--dc-ink-soft);
  margin: 0;
  line-height: 1.65;
  font-style: italic;
}

/* ==========================================================
   ACCORDION — Info costi corsi
   ========================================================== */
.dc-acc__heading {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--dc-ink-soft);
  margin: 0 0 1rem;
  letter-spacing: -.01em;
}

.dc-acc {
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius);
  overflow: hidden;
  box-shadow: var(--dc-shadow);
}

/* Item singolo */
.dc-acc__item {
  border-bottom: 1px solid var(--dc-border);
}

.dc-acc__item:last-child {
  border-bottom: 0;
}

/* Header cliccabile */
.dc-acc__header {
  width: 100%;
  background: var(--dc-surface);
  border: none;
  padding: .95rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  cursor: pointer;
  font-family: var(--dc-font);
  font-size: .9rem;
  font-weight: 700;
  color: var(--dc-ink);
  text-align: left;
  letter-spacing: .01em;
  text-transform: uppercase;
  transition: background-color .15s;
}

.dc-acc__header:hover,
.dc-acc__item--open .dc-acc__header {
  background: var(--dc-surface-alt);
}

/* Icona freccia */
.dc-acc__icon {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--dc-ink-soft);
  transition: transform .25s ease;
}

.dc-acc__item--open .dc-acc__icon {
  transform: rotate(180deg);
  color: var(--dc-ink);
}

/* Body collassabile */
.dc-acc__body {
  max-height: 0;
  overflow: hidden;
  transition: max-height .35s ease;
}

/* Tabella prezzi */
.dc-acc__table {
  width: 100%;
  border-collapse: collapse;
  font-size: .85rem;
}

.dc-acc__table th {
  background: var(--dc-navy);
  color: #fff;
  padding: .6rem 1rem;
  text-align: left;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dc-acc__table th:last-child { text-align: right; }

.dc-acc__table td {
  padding: .6rem 1rem;
  color: var(--dc-ink);
  border-bottom: 1px solid var(--dc-border);
  line-height: 1.5;
  vertical-align: middle;
}

.dc-acc__table td:last-child {
  text-align: right;
  white-space: nowrap;
  font-weight: 700;
  color: var(--dc-ink);
  width: 6rem;
}

.dc-acc__table tr:nth-child(even) td {
  background: var(--dc-surface-alt);
}

.dc-acc__table tr:last-child td {
  border-bottom: 0;
}

/* ==========================================================
   MODALITÀ DI PAGAMENTO
   ========================================================== */
.dc-pagamento {
  padding: clamp(2.5rem, 6vw, 4rem) 0;
  border-bottom: 1px solid var(--dc-border);
}

.dc-pagamento__title {
  font-size: clamp(1.3rem, 3vw, 1.7rem);
  font-weight: 700;
  color: var(--dc-ink-soft);
  margin: 0 0 1.75rem;
  text-align: center;
  letter-spacing: -.01em;
}

.dc-pagamento__grid {
  display: grid;
  gap: 1.5rem;
}

@media (min-width: 680px) {
  .dc-pagamento__grid {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}

/* Card pagamento */
.dc-pay-card {
  background: var(--dc-surface);
  border: 1px solid var(--dc-border);
  border-radius: var(--dc-radius);
  padding: clamp(1.5rem, 4vw, 2rem);
  box-shadow: var(--dc-shadow);
}

.dc-pay-card__icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(10,37,64,.08);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--dc-ink);
  margin-bottom: 1rem;
}

.dc-pay-card__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--dc-ink);
  margin: 0 0 1rem;
}

.dc-pay-card__row {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  margin-bottom: .85rem;
}

.dc-pay-card__label {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--dc-ink-soft);
}

.dc-pay-card__value {
  font-size: .93rem;
  color: var(--dc-ink);
  font-weight: 500;
}

.dc-pay-card__iban {
  font-size: .9rem;
  font-weight: 700;
  color: var(--dc-ink);
  letter-spacing: .04em;
  font-family: 'Courier New', monospace;
  background: var(--dc-surface-alt);
  border: 1px solid var(--dc-border);
  border-radius: 6px;
  padding: .5rem .75rem;
  display: inline-block;
  margin-top: .15rem;
  word-break: break-all;
}

.dc-pay-card__placeholder {
  font-size: .9rem;
  color: var(--dc-ink-soft);
  font-style: italic;
  margin: 0;
  padding: 1.5rem 0;
  text-align: center;
  border: 2px dashed var(--dc-border);
  border-radius: 8px;
}

/* ==========================================================
   SEZIONE IMPORTANTE
   ========================================================== */
.dc-importante {
  padding: clamp(2.5rem, 6vw, 4rem) 0 clamp(3rem, 8vw, 5rem);
}

.dc-importante__box {
  background: rgba(10,37,64,.04);
  border: 1px solid var(--dc-border);
  border-left: 4px solid var(--dc-navy);
  border-radius: var(--dc-radius);
  padding: 1.75rem 2rem;
}

.dc-importante__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--dc-ink);
  margin: 0 0 .85rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.dc-importante__text {
  font-size: .95rem;
  color: var(--dc-ink-soft);
  margin: 0 0 .85rem;
  line-height: 1.7;
}

.dc-importante__text:last-child { margin-bottom: 0; }

.dc-importante__phone {
  font-weight: 700;
  color: var(--dc-ink);
  font-size: 1.05rem;
  text-decoration: none;
  white-space: nowrap;
}

.dc-importante__phone:hover { text-decoration: underline; }

/* ==========================================================
   DARK MODE — scoped a .dc
   ========================================================== */
@media (prefers-color-scheme: dark) {
  .dc {
    --dc-bg:          #0b1424;
    --dc-surface:     #10203a;
    --dc-surface-alt: #0e1b30;
    --dc-ink:         #e8eef7;
    --dc-ink-soft:    #9bacc4;
    --dc-border:      #1d3050;
  }

  /* In dark mode --dc-navy è usato solo per sfondi (hero, header tabella):
     qui lo sovrascriviamo solo per i testi che ancora lo usano direttamente. */
  .dc-acc__header:hover,
  .dc-acc__item--open .dc-acc__header { background: #0e1b30; }

  .dc-acc__table th { background: #0f2a4a; }
  .dc-pay-card__iban { background: #0e1b30; }
  .dc-importante__box { background: rgba(10,37,64,.35); }
  .dc-pay-card__icon { background: rgba(232,238,247,.08); }
}

/* ==========================================================
   RESPONSIVE — mobile ≤ 768px
   ========================================================== */
@media (max-width: 768px) {
  .dc-acc__table th,
  .dc-acc__table td { padding: .55rem .75rem; font-size: .8rem; }

  .dc-acc__table td:last-child { width: 5rem; }

  .dc-hero__title { letter-spacing: .02em; }
}

/* Restyling grafico 16 ottobre 2026: esclusivamente presentazione. */
#dc-completamento{--dc-maxw:1264px;--dc-radius:18px;--dc-shadow:0 8px 28px rgba(10,37,64,.035);font-size:16px;line-height:1.75}
#dc-completamento h1,#dc-completamento h2,#dc-completamento h3{font-family:'Outfit',sans-serif;letter-spacing:-.03em;line-height:1.15;padding:0;font-weight:600}
#dc-completamento .dc-hero{padding:62px 0 65px;border:0;background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.06) 1px,transparent 0) 0 0 / 24px 24px,#0a2540}
#dc-completamento .dc-hero__title{font-size:clamp(36px,4.5vw,58px);letter-spacing:-.035em;text-transform:none;margin:0 0 20px;color:#fff}
#dc-completamento .dc-hero__sub{font-size:17px;line-height:1.8;max-width:650px;color:#cbd9e3;margin:0 auto;padding:0}
#dc-completamento .dc-main{padding:55px 0 60px;background:var(--dc-surface-alt);border:0}
#dc-completamento .dc-main__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:38px;align-items:start}
#dc-completamento .dc-istruzioni{background:var(--dc-surface);border:1px solid var(--dc-border);border-top:3px solid #10b981;border-radius:18px;padding:30px;box-shadow:var(--dc-shadow)}
#dc-completamento .dc-istruzioni__title,#dc-completamento .dc-acc__heading{font-size:29px;color:var(--dc-ink);margin:0 0 23px}
#dc-completamento .dc-istruzioni__text{font-size:14px;line-height:1.85;margin:0 0 23px;padding:0}
#dc-completamento .dc-istruzioni__text a{text-decoration-color:#8ccdb8;text-underline-offset:4px;overflow-wrap:anywhere}
#dc-completamento .dc-istruzioni__list{list-style:none;margin:0 0 24px;padding:0;font-size:14px}
#dc-completamento .dc-istruzioni__list li{position:relative;padding:13px 14px 13px 40px;border:1px solid var(--dc-border);border-radius:10px;margin:0;background:var(--dc-surface-alt)}
#dc-completamento .dc-istruzioni__list li+li{margin-top:10px}
#dc-completamento .dc-istruzioni__list li::before{content:'✓';position:absolute;left:16px;color:#087e5c;font-weight:700}
#dc-completamento .dc-istruzioni__note{font-style:normal;font-size:13px;border-top:1px solid var(--dc-border);padding:20px 0 0;margin:0;line-height:1.8}
#dc-completamento .dc-acc-col{min-width:0}
#dc-completamento .dc-acc__heading{margin-top:4px}
#dc-completamento .dc-acc{background:var(--dc-surface);border-radius:16px;box-shadow:var(--dc-shadow)}
#dc-completamento .dc-acc__header{padding:18px 20px;min-height:60px;font-size:12px;line-height:1.5;letter-spacing:.025em}
#dc-completamento .dc-acc__header:hover,#dc-completamento .dc-acc__item--open .dc-acc__header{background:var(--dc-surface-alt)}
#dc-completamento .dc-acc__item--open .dc-acc__header{color:#087e5c}
#dc-completamento .dc-acc__header:focus-visible{outline:3px solid #10b981;outline-offset:-4px}
#dc-completamento .dc-acc__icon{width:27px;height:27px;border:1px solid var(--dc-border);border-radius:50%;background:var(--dc-surface)}
#dc-completamento .dc-acc__icon svg{width:14px;height:14px}
/* Mantiene leggibili tutte le righe anche dopo il caricamento dei font. */
#dc-completamento .dc-acc__item--open .dc-acc__body{max-height:none!important}
#dc-completamento .dc-acc__table{font-size:13px;margin:0;border:0}
#dc-completamento .dc-acc__table th{font-size:10px;letter-spacing:.09em;padding:12px 17px}
#dc-completamento .dc-acc__table td{font-size:13px;padding:12px 17px;line-height:1.65}
#dc-completamento .dc-acc__table td:last-child{font-variant-numeric:tabular-nums;width:85px}
#dc-completamento .dc-pagamento{padding:59px 0 60px;border:0}
#dc-completamento .dc-pagamento__title{font-size:clamp(30px,3.5vw,40px);color:var(--dc-ink);text-align:left;margin:0 0 30px}
#dc-completamento .dc-pagamento__grid{gap:26px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}
#dc-completamento .dc-pay-card{padding:32px;min-width:0;box-shadow:var(--dc-shadow)}
#dc-completamento .dc-pay-card__icon{width:48px;height:48px;border:1px solid var(--dc-border);background:var(--dc-surface-alt);color:#087e5c;border-radius:13px;margin-bottom:23px}
#dc-completamento .dc-pay-card__title{font-size:27px;margin:0 0 27px}
#dc-completamento .dc-pay-card__row{gap:7px;margin:0;padding:17px 0;border-top:1px solid var(--dc-border)}
#dc-completamento .dc-pay-card__label{font-size:10px;letter-spacing:.12em}
#dc-completamento .dc-pay-card__value{font-size:14px}
#dc-completamento .dc-pay-card__iban{font-size:15px;letter-spacing:.015em;padding:13px 15px;line-height:1.6;user-select:text;margin-top:3px}
/* Solo aspetto dei controlli: nessuna regola di visibilità o stato. */
#dc-completamento .form-pagamento-container{font:inherit;color:var(--dc-ink);margin:0;padding:0}
#dc-completamento .form-pagamento-container label{font-family:var(--dc-font);font-size:13px;font-weight:600;line-height:1.6;color:var(--dc-ink);margin-bottom:10px}
#dc-completamento #nome_corsista,#dc-completamento #corso_selezionato{width:100%;max-width:100%;min-height:48px;padding:12px 14px;font:400 16px/1.5 var(--dc-font);border:1px solid var(--dc-border);border-radius:9px;background:var(--dc-surface);color:var(--dc-ink);box-shadow:none;margin:10px 0 16px}
#dc-completamento #nome_corsista:focus,#dc-completamento #corso_selezionato:focus{outline:2px solid #10b981;outline-offset:2px}
#dc-completamento #btnProcedi{font:700 14px/1.5 var(--dc-font);padding:13px 24px;min-height:48px;border:0;border-radius:9px;background:#10b981;color:#062e25;cursor:pointer}
#dc-completamento #btnProcedi:hover{background:#43d5aa}
#dc-completamento #btnProcedi:focus-visible{outline:3px solid var(--dc-navy);outline-offset:3px}
#dc-completamento .dc-importante{padding:0 0 65px}
#dc-completamento .dc-importante__box{padding:29px 32px;background:var(--dc-surface-alt);border-left:3px solid #10b981}
#dc-completamento .dc-importante__title{font-size:26px;text-transform:none;letter-spacing:-.025em;margin:0 0 15px}
#dc-completamento .dc-importante__text{font-size:14px;line-height:1.85;padding:0;max-width:950px}
#dc-completamento .dc-importante__phone{font-size:16px;text-underline-offset:4px}
@media(max-width:859px){#dc-completamento .dc-main__grid{grid-template-columns:1fr;gap:32px}#dc-completamento .dc-pagamento__grid{grid-template-columns:1fr}#dc-completamento .dc-istruzioni__title{max-width:600px}}
@media(max-width:600px){#dc-completamento .dc-wrap,#dc-completamento .dc-hero__wrap{padding-inline:18px}#dc-completamento .dc-hero{padding:38px 0 42px}#dc-completamento .dc-hero__title{font-size:39px}#dc-completamento .dc-hero__sub{font-size:15px}#dc-completamento .dc-main{padding:30px 0 38px}#dc-completamento .dc-istruzioni{padding:23px}#dc-completamento .dc-istruzioni__title,#dc-completamento .dc-acc__heading{font-size:27px}#dc-completamento .dc-acc__header{padding:16px;font-size:11px}#dc-completamento .dc-acc__table th,#dc-completamento .dc-acc__table td{padding:11px 12px}#dc-completamento .dc-acc__table td{font-size:12px}#dc-completamento .dc-acc__table td:last-child{width:75px}#dc-completamento .dc-pagamento{padding:36px 0}#dc-completamento .dc-pay-card{padding:23px}#dc-completamento .dc-pay-card__title{font-size:25px}#dc-completamento .dc-pay-card__iban{font-size:13px;padding:12px;letter-spacing:0}#dc-completamento .dc-importante{padding-bottom:40px}#dc-completamento .dc-importante__box{padding:24px}#dc-completamento .dc-istruzioni__list li{font-size:13px}}

/* Procedura attestato: guida e destinazioni, 16 ottobre 2026. */
#dc-completamento .dc-steps ol{list-style:none;padding:0;margin:0}
#dc-completamento .dc-steps li+li{border-top:1px solid var(--dc-border);margin-top:18px;padding-top:18px}
#dc-completamento .dc-steps a{display:block;font-size:17px;font-weight:700;color:var(--dc-ink);text-decoration:underline;text-decoration-color:#8ccdb8;text-underline-offset:4px;margin-bottom:6px}
#dc-completamento .dc-steps p{font-size:13px;line-height:1.8;color:var(--dc-ink-soft);padding:0;margin:0}
#dc-completamento .dc-documents{padding:0 0 42px}
#dc-completamento .dc-documents .dc-istruzioni{max-width:850px}
#dc-completamento #costi-attestati,#dc-completamento #pagamento-attestato,#dc-completamento #invio-documenti{scroll-margin-top:95px}
#dc-completamento .dc-steps a:focus-visible{outline:3px solid #10b981;outline-offset:4px}

/* Numeri cerchiati per i tre passaggi della procedura. */
#dc-completamento .dc-steps ol{counter-reset:dc-step}
#dc-completamento .dc-steps li{counter-increment:dc-step;position:relative;padding-left:72px;min-height:58px}
#dc-completamento .dc-steps li::before{content:counter(dc-step);position:absolute;left:0;top:0;width:54px;height:54px;display:grid;place-items:center;border:2px solid #10b981;border-radius:50%;background:var(--dc-surface);color:var(--dc-ink);font:600 32px/1 'Outfit',sans-serif;font-variant-numeric:tabular-nums}
#dc-completamento .dc-steps li+li{padding-top:22px;margin-top:22px}
#dc-completamento .dc-steps li+li::before{top:22px}
@media(max-width:600px){#dc-completamento .dc-steps li{padding-left:61px}#dc-completamento .dc-steps li::before{width:46px;height:46px;font-size:29px}}

/* Numeri delle sezioni corrispondenti ai tre passaggi della guida. */
#dc-completamento #costi-attestati .dc-acc__heading,
#dc-completamento #dc-pag-title,
#dc-completamento #dc-documenti-title{position:relative;padding-left:72px;min-height:54px;display:flex;align-items:center}
#dc-completamento #costi-attestati .dc-acc__heading::before,
#dc-completamento #dc-pag-title::before,
#dc-completamento #dc-documenti-title::before{position:absolute;left:0;top:50%;transform:translateY(-50%);width:54px;height:54px;display:grid;place-items:center;border:2px solid #10b981;border-radius:50%;background:var(--dc-surface);color:var(--dc-ink);font:600 32px/1 'Outfit',sans-serif;font-variant-numeric:tabular-nums;letter-spacing:0}
#dc-completamento #costi-attestati .dc-acc__heading::before{content:'1'}
#dc-completamento #dc-pag-title::before{content:'2'}
#dc-completamento #dc-documenti-title::before{content:'3'}
@media(max-width:600px){
#dc-completamento #costi-attestati .dc-acc__heading,
#dc-completamento #dc-pag-title,
#dc-completamento #dc-documenti-title{padding-left:61px;min-height:46px}
#dc-completamento #costi-attestati .dc-acc__heading::before,
#dc-completamento #dc-pag-title::before,
#dc-completamento #dc-documenti-title::before{width:46px;height:46px;font-size:29px}
}

/* Quattro fasce: panoramica autonoma e tre sezioni operative. */
#dc-completamento .dc-overview{background:#0a2540;color:#fff;padding:0 0 45px}
#dc-completamento .dc-overview .dc-steps{padding:32px 0 0;border:0;border-top:1px solid #ffffff26;border-radius:0;box-shadow:none;background:transparent}
#dc-completamento .dc-overview .dc-istruzioni__title{color:#fff;font-size:25px;margin-bottom:26px}
#dc-completamento .dc-overview ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
#dc-completamento .dc-overview .dc-steps li{padding-left:70px;min-height:65px;margin:0;border:0;padding-top:0}
#dc-completamento .dc-overview .dc-steps li::before{top:0;background:#ffffff08;color:#fff;border-color:#5bdfb3}
#dc-completamento .dc-overview .dc-steps a{color:#fff;font-size:16px;text-decoration-color:#5bdfb3}
#dc-completamento .dc-overview .dc-steps p{color:#cbd9e3;font-size:13px}
#dc-completamento .dc-main.dc-costs{background:#fff;padding:60px 0}
#dc-completamento .dc-costs .dc-acc-col{max-width:1000px;margin-inline:auto}
#dc-completamento .dc-costs .dc-acc__heading{font-size:clamp(28px,3.5vw,40px);margin:0 0 28px}
#dc-completamento .dc-costs .dc-acc{box-shadow:none}
#dc-completamento .dc-pagamento{background:#f3f6f9;padding:60px 0}
#dc-completamento .dc-pagamento__grid{align-items:start}
#dc-completamento .dc-documents{background:#edf7f1;padding:60px 0 35px}
#dc-completamento .dc-documents .dc-istruzioni{max-width:none;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}
#dc-completamento .dc-documents .dc-istruzioni__title{font-size:clamp(28px,3.5vw,40px);margin-bottom:28px}
#dc-completamento .dc-documents .dc-istruzioni__text{max-width:760px;font-size:15px}
#dc-completamento .dc-documents .dc-istruzioni__list{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:850px}
#dc-completamento .dc-documents .dc-istruzioni__list li{background:#fff;border-color:#cfe4d8;padding-block:17px}
#dc-completamento .dc-documents .dc-istruzioni__list li+li{margin-top:0}
#dc-completamento .dc-documents .dc-istruzioni__note{max-width:850px;border-color:#cfe4d8}
#dc-completamento .dc-importante{background:#edf7f1;padding:0 0 60px}
#dc-completamento .dc-importante__box{background:#ffffffb3;border-color:#cfe4d8;border-left-color:#10b981}
@media(max-width:859px){#dc-completamento .dc-overview ol{grid-template-columns:1fr;gap:24px}#dc-completamento .dc-overview .dc-steps li{min-height:54px}#dc-completamento .dc-overview .dc-steps p{max-width:550px}}
@media(max-width:600px){#dc-completamento .dc-overview{padding-bottom:34px}#dc-completamento .dc-overview .dc-steps{padding-top:27px}#dc-completamento .dc-overview .dc-steps li{padding-left:61px}#dc-completamento .dc-main.dc-costs,#dc-completamento .dc-pagamento{padding:37px 0}#dc-completamento .dc-documents{padding:37px 0 28px}#dc-completamento .dc-documents .dc-istruzioni__list{grid-template-columns:1fr;gap:10px}#dc-completamento .dc-importante{padding-bottom:38px}}

/* Accordion attestati: categorie distinte dalle righe dei corsi. */
#dc-completamento .dc-costs .dc-acc{border:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none}
#dc-completamento .dc-costs .dc-acc__item{margin:0 0 12px;border:1px solid #c9d6e1;border-radius:12px;overflow:hidden;background:#fff}
#dc-completamento .dc-costs .dc-acc__item:last-child{margin-bottom:0;border-bottom:1px solid #c9d6e1}
#dc-completamento .dc-costs .dc-acc__header{min-height:60px;padding:16px 20px;background:#163b5b;color:#fff;font-size:13px;letter-spacing:.025em}
#dc-completamento .dc-costs .dc-acc__header:hover{background:#214f73;color:#fff}
#dc-completamento .dc-costs .dc-acc__item--open{border-color:#0a2540;box-shadow:0 5px 18px #0a25400a}
#dc-completamento .dc-costs .dc-acc__item--open .dc-acc__header{background:#0a2540;color:#fff;border-bottom:3px solid #10b981}
#dc-completamento .dc-costs .dc-acc__icon{width:30px;height:30px;border:1px solid #ffffff60;border-radius:7px;background:#ffffff10;color:#fff;transform:none;position:relative}
#dc-completamento .dc-costs .dc-acc__icon svg{display:none}
#dc-completamento .dc-costs .dc-acc__icon::before,#dc-completamento .dc-costs .dc-acc__icon::after{content:'';position:absolute;background:currentColor;border-radius:1px}
#dc-completamento .dc-costs .dc-acc__icon::before{width:12px;height:2px}
#dc-completamento .dc-costs .dc-acc__icon::after{width:2px;height:12px}
#dc-completamento .dc-costs .dc-acc__item--open .dc-acc__icon::after{display:none}
#dc-completamento .dc-costs .dc-acc__body{background:#fff}
#dc-completamento .dc-costs .dc-acc__table th{background:#e8f0f5;color:#334f65;border-bottom:1px solid #cfdae3;font-size:10px;padding:10px 20px}
#dc-completamento .dc-costs .dc-acc__table td{background:#fff;color:#223c50;border-color:#e2e9ef;padding:11px 20px;font-size:13px}
#dc-completamento .dc-costs .dc-acc__table tr:nth-child(even) td{background:#f7fafc}
#dc-completamento .dc-costs .dc-acc__table td:last-child{color:#0a2540;font-weight:700}
@media(max-width:600px){#dc-completamento .dc-costs .dc-acc__header{padding:14px 16px;font-size:12px}#dc-completamento .dc-costs .dc-acc__table th,#dc-completamento .dc-costs .dc-acc__table td{padding:11px 13px}#dc-completamento .dc-costs .dc-acc__table td{font-size:12px}}

/* Barre categoria più compatte, con superficie cliccabile di almeno 48px. */
#dc-completamento .dc-costs .dc-acc__header{min-height:48px;padding:9px 18px}
#dc-completamento .dc-costs .dc-acc__icon{width:26px;height:26px}
@media(max-width:600px){#dc-completamento .dc-costs .dc-acc__header{min-height:48px;padding:9px 14px}}
