/* =========================================================
   PRONTA MATURITÀ — Content Engine π-factor
   Shared visual layer; loaded after maturita.css.
   ========================================================= */

#pronta-maturita-page .home-section-intro{max-width:820px;margin-bottom:2rem}
#pronta-maturita-page .home-section-intro h2{color:#173044;font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.05;letter-spacing:-.035em;margin:.55rem 0 1rem}
#pronta-maturita-page .home-section-intro>p:last-child{color:#526978;font-size:1.05rem;line-height:1.72;max-width:760px}
#pronta-maturita-page .home-kicker{color:#0f91d1;font-weight:850;letter-spacing:.1em}

.ce-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem;margin-top:1.5rem}
.ce-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ce-card,.ce-exercise{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff,rgba(242,249,253,.72));border:1px solid rgba(16,162,247,.14);border-radius:24px;padding:1.65rem;box-shadow:0 12px 30px rgba(23,48,68,.055);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.ce-card:before,.ce-exercise:before{content:'';position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(180deg,#10a2f7,#3edfda)}
.ce-card:nth-child(even):before,.ce-exercise:nth-child(even):before{background:linear-gradient(180deg,#ffa03a,#f47b20)}
.ce-card:hover,.ce-exercise:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(23,48,68,.09);border-color:rgba(16,162,247,.24)}
.ce-card h3,.ce-exercise h3{color:#173044;font-size:1.3rem;line-height:1.15;margin:0 0 .8rem}
.ce-card p,.ce-exercise p{color:#526978;line-height:1.68;margin:0}
.ce-card ul{color:#526978;line-height:1.65}
.ce-step{display:flex;gap:15px;align-items:flex-start}
.ce-num{flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:850;color:#173044;background:rgba(16,162,247,.12)}

.ce-math{font-family:Georgia,'Times New Roman',serif;font-size:1.08em;color:#173044;white-space:nowrap}
.ce-frac{display:inline-flex;flex-direction:column;vertical-align:middle;text-align:center;line-height:1.05;margin:0 .14em;transform:translateY(.12em)}
.ce-frac>span:first-child{border-bottom:1.25px solid currentColor;padding:0 .18em .09em}
.ce-frac>span:last-child{padding:.09em .18em 0}

.ce-exercises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-top:1.5rem}
.ce-exercise{min-height:220px;padding-top:3.25rem}
.ce-level{position:absolute;top:1.2rem;left:1.65rem;display:inline-block;color:#0b83bd;font-weight:850;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.ce-exercise:nth-child(even) .ce-level{color:#d87309}

.ce-note{position:relative;padding:1.5rem 1.6rem 1.5rem 1.9rem;border-radius:22px;background:linear-gradient(135deg,rgba(255,160,58,.11),rgba(255,255,255,.92));border:1px solid rgba(255,160,58,.24);margin-top:1.4rem;color:#526978;line-height:1.65}
.ce-note:before{content:'π';position:absolute;right:1.25rem;bottom:-.45rem;font-size:5rem;font-weight:900;line-height:1;color:rgba(244,123,32,.08)}
.ce-note strong{display:block;color:#173044;font-size:1.08rem;margin-bottom:.35rem}
.ce-note p{margin:0;max-width:90%}

.ce-links{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.4rem}
.ce-links a,.ce-topic-list a{color:#173044;text-decoration:none;font-weight:800}
.ce-links a{display:inline-flex;align-items:center;min-height:46px;padding:.7rem 1rem;border:1px solid rgba(16,162,247,.18);border-radius:999px;background:#fff;box-shadow:0 7px 18px rgba(23,48,68,.04)}
.ce-links a:hover,.ce-topic-list a:hover{color:#0b8fd3}

.ce-check{list-style:none;padding:0;margin:1.25rem 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.ce-check li{position:relative;padding:1rem 1rem 1rem 3rem;border-radius:16px;background:#fff;border:1px solid rgba(16,162,247,.12);color:#526978;line-height:1.5}
.ce-check li:before{content:'✓';position:absolute;left:1rem;top:.95rem;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#10a2f7;color:#fff;font-size:.78rem;font-weight:900}

.ce-source{font-size:.92rem;color:#637784;margin-top:1.2rem}
.ce-source a{color:#173044;text-decoration:underline;text-decoration-color:rgba(16,162,247,.45);text-underline-offset:3px}
.ce-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:1.4rem;background:#fff;border:1px solid rgba(16,162,247,.13);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(23,48,68,.045)}
.ce-table th,.ce-table td{padding:1rem 1.15rem;border-bottom:1px solid rgba(19,43,65,.08);text-align:left;vertical-align:top}
.ce-table th{width:22%;color:#173044;font-weight:850;background:rgba(16,162,247,.045)}
.ce-table td{color:#526978;line-height:1.55}
.ce-table tr:last-child td,.ce-table tr:last-child th{border-bottom:0}
.ce-sim{counter-reset:ex}.ce-sim .ce-card{counter-increment:ex}.ce-sim .ce-card h3:before{content:'Esercizio ' counter(ex) ' · ';color:#0b8fd3}
.ce-disclaimer{font-size:.9rem;color:#637784}

.ce-topic-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;background:transparent;border:0;box-shadow:none;padding:0}
.ce-topic-list:before{display:none}
.ce-topic-list a{position:relative;display:flex;align-items:center;min-height:66px;padding:1rem 3rem 1rem 1.15rem;background:#fff;border:1px solid rgba(16,162,247,.13);border-radius:16px;box-shadow:0 8px 20px rgba(23,48,68,.04)}
.ce-topic-list a:after{content:'→';position:absolute;right:1.1rem;color:#f47b20;font-size:1.25rem}
.ce-topic-list a+a{border-top:1px solid rgba(16,162,247,.13)}

/* The CE pages use the existing Maturità section backgrounds but get their own identity. */
#pronta-maturita-page .mat-path,#pronta-maturita-page .mat-next{background:radial-gradient(circle at 96% 12%,rgba(62,223,218,.10),transparent 24%),#fff}
#pronta-maturita-page .mat-fit{background:linear-gradient(180deg,#f7fbfd,#fff)}
#pronta-maturita-page .mat-social-proof{background:linear-gradient(135deg,rgba(16,162,247,.07),rgba(255,160,58,.06))}

@media(max-width:900px){.ce-grid.three,.ce-exercises{grid-template-columns:1fr 1fr}.ce-check{grid-template-columns:1fr}}
@media(max-width:700px){.ce-grid,.ce-grid.three,.ce-exercises,.ce-topic-list{grid-template-columns:1fr}.ce-table,.ce-table tbody,.ce-table tr,.ce-table th,.ce-table td{display:block}.ce-table th{width:auto;padding-bottom:.35rem}.ce-table td{padding-top:.35rem}.ce-math{white-space:normal}.ce-card,.ce-exercise{border-radius:18px;padding:1.35rem}.ce-exercise{padding-top:3.1rem}.ce-level{left:1.35rem}.ce-note p{max-width:100%}}
