/* Tipi di concorso e guide "Come entrare / Come diventare" su concorso.it (inc/concorsi/carriere.php).
   Solo i pezzi nuovi: il resto viene dal tema (ta-*) e da guide-concorsi.css (tg-*). */

/* ---- tendine Concorsi e Carriere del menu: colonne affiancate su desktop (impilate andrebbero oltre lo schermo) ---- */
@media (min-width: 992px) {
	.tcc-dd .ta-dd-cols { flex-direction: row !important; align-items: flex-start; gap: 6px 18px; }
	.tcc-dd .ta-dd-cols > .w-layout-cell { min-width: 230px; }
	.tcc-dd .ta-dd-link { padding-top: 7px; padding-bottom: 7px; }
}

/* ---- home: i due riquadri ---- */
.tcc-home { background: #f5f8fb; }
.tcc-due { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.tcc-box { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 20px; border-radius: 20px; padding: 30px; box-shadow: 0 18px 40px -28px rgba(11, 58, 64, .55); }
.tcc-box-militari { background: #0e2740; color: #fff; }
.tcc-box-militari::after { content: ""; position: absolute; right: -140px; top: -140px; width: 360px; height: 360px; border-radius: 50%; background: radial-gradient(circle, rgba(233, 168, 38, .22), transparent 65%); pointer-events: none; }
.tcc-box-pa { background: #fff; border: 1px solid #e3ebf3; color: #14365c; }
.tcc-home .ta-sec-head { max-width: 760px; margin: 0 auto 34px; text-align: center; }
.tcc-box-head h3 { margin: 0 0 6px; font-size: 26px; font-weight: 800; line-height: 1.2; }
.tcc-home .tcc-box-militari .tcc-box-head h3, .tcc-home .tcc-box-militari .tcc-box-head h3 a, .tcc-home .tcc-box-militari .tcc-box-head p { color: #fff; }
.tcc-home .tcc-box-pa .tcc-box-head h3, .tcc-home .tcc-box-pa .tcc-box-head h3 a { color: #14365c; }
.tcc-box-head h3 a { color: inherit; text-decoration: none; }
.tcc-box-head h3 a:hover { text-decoration: underline; }
.tcc-box-head p { margin: 0; font-size: 15px; line-height: 1.5; opacity: .8; }
.tcc-voci { position: relative; z-index: 1; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.tcc-voci a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 14px; border-radius: 12px; font-size: 15px; font-weight: 700; text-decoration: none; transition: background-color .15s, border-color .15s; }
.tcc-box-militari .tcc-voci a { background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .14); color: #fff; }
.tcc-box-militari .tcc-voci a:hover { background: rgba(255, 255, 255, .15); }
.tcc-box-pa .tcc-voci a { background: #f3f7fb; border: 1px solid #e3ebf3; color: #14365c; }
.tcc-box-pa .tcc-voci a:hover { border-color: #14365c; }
.tcc-voci .c { flex: none; min-width: 28px; text-align: center; font-size: 12px; font-weight: 800; border-radius: 999px; padding: 2px 8px; background: #e9a826; color: #0e2740; }
.tcc-voci .c.zero { background: transparent; color: inherit; opacity: .45; }
.tcc-box-btn { position: relative; z-index: 1; align-self: flex-start; margin-top: auto; }
.tcc-guide-home { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; margin-top: 26px; font-size: 14px; }
.tcc-guide-home span { font-weight: 800; color: #14365c; }
.tcc-guide-home a { padding: 6px 12px; border: 1px solid #d6dee7; border-radius: 999px; background: #fff; color: #14365c; text-decoration: none; }
.tcc-guide-home a:hover { border-color: #14365c; }

/* ---- pagine dei tipi ---- */
.tcc .ta-section { padding: 46px 0; }
.tcc .tcc-tipi { padding-bottom: 10px; }
.tcc-conta { margin: 0 0 12px; font-size: 14px; font-weight: 700; color: #41595f; }
.tcc-pagine { display: flex; flex-wrap: wrap; gap: 6px; margin: 22px 0 0; }
.tcc-pagine a, .tcc-pagine span { display: inline-block; min-width: 38px; padding: 8px 12px; border-radius: 10px; text-align: center; font-weight: 700; font-size: 14px; text-decoration: none; border: 1px solid #d6dee7; color: #14365c; background: #fff; }
.tcc-pagine a:hover { border-color: #14365c; }
.tcc-pagine .on { background: #14365c; border-color: #14365c; color: #fff; }
.tcc-vuoto { background: #fff; border: 1px dashed #c9d8df; border-radius: 16px; padding: 22px 24px; color: #40515e; }
.tcc-vuoto p { margin: 0 0 10px; }
.tcc-vuoto ul { margin: 0; padding-left: 20px; }
.tcc-chiusi { margin-top: 24px; }
.tcc-chiusi summary { cursor: pointer; font-weight: 700; color: #14365c; padding: 10px 0; }
.tcc-locale { margin-top: 46px; }
.tcc-tabella { overflow-x: auto; margin: 0 0 22px; }
.tcc-tabella table, .tcc-guida-art table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.tcc-tabella th, .tcc-tabella td, .tcc-guida-art th, .tcc-guida-art td { border: 1px solid #e3ebf3; padding: 10px 12px; text-align: left; vertical-align: top; color: #39525b; }
.tcc-tabella th, .tcc-guida-art th { background: #f3f7fb; color: #14365c; font-weight: 800; }
.tcc-cta-box { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 22px; background: #0e2740; color: #fff; border-radius: 20px; padding: 30px 32px; }
.tcc-cta-box h2 { margin: 0 0 8px; color: #fff; font-size: 26px; font-weight: 800; }
.tcc-cta-box p { margin: 0; max-width: 640px; color: #c4d6e8; font-size: 16px; line-height: 1.55; }
.tcc-cta-btn { display: flex; flex-wrap: wrap; gap: 10px; }
.tcc-altri-t { margin: 0 0 12px; font-size: 20px; font-weight: 800; }
.tcc-altri-t a { color: #14365c; text-decoration: none; }
.tcc-pillole { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 26px; }
.tcc-pillola { display: inline-flex; align-items: center; gap: 8px; padding: 7px 13px; border: 1px solid #d6dee7; border-radius: 999px; background: #fff; color: #14365c; font-size: 14px; font-weight: 700; text-decoration: none; }
.tcc-pillola span { font-size: 12px; color: #6b7d89; }
.tcc-pillola:hover, .tcc-pillola.on { border-color: #14365c; }
.tcc-pillola.on { background: #14365c; color: #fff; }
.tcc-pillola.on span { color: #c4d6e8; }
.tcc-tutti a { font-weight: 700; color: #1d5d8c; text-decoration: none; }

/* ---- articoli-guida ---- */
.tcc-guida-art table { display: block; overflow-x: auto; margin: 0 0 24px; }
.tcc-guida-art td li, .tcc-guida-art th li { font-size: 15px; }
.tcc-coda { margin-top: 40px; padding: 26px; border: 1px solid #e3ebf3; border-radius: 18px; background: #f5f8fb; }
.tcc-coda h2 { margin-top: 0 !important; }
.tcc-coda .ta-bandi-list { display: grid; gap: 12px; margin: 0 0 18px; }
.tcc-coda-link { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 !important; }
.tcc-coda .ta-btn { border-bottom: 0 !important; }
.tcc-coda .ta-btn-primary { color: #fff !important; }

@media (max-width: 860px) {
	.tcc-due { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
	.tcc-voci { grid-template-columns: 1fr; }
	.tcc-box { padding: 22px; }
	.tcc-cta-box { padding: 24px 20px; }
	.tcc-box-btn { align-self: stretch; }
}
