:root{
  --desktop-frame:1200px;
  --content-max:1200px;
  --hero-max-w:750px;
  --text:#2a2a2a;
  --muted:#6f6f6f;
  --blue:#2C457C;
  --violet:#7b2e96;
  --deep-violet:#3a25a2;
  --light:#f4f7fc;
  --border:rgba(44,69,124,.12);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:#fff;
  color:var(--text);
  font-family:Arial, Helvetica, sans-serif;
  line-height:1.58;
  -webkit-text-size-adjust:100%;
}
img{max-width:100%;display:block;}
a{color:var(--blue);text-decoration:none;}
a:hover{text-decoration:underline;text-underline-offset:3px;}
.page-shell{min-height:100vh;}
.container{width:min(var(--desktop-frame), calc(100% - 2rem));margin:0 auto;padding:0 24px;}
.desktop-hero-wrap{width:min(var(--desktop-frame), calc(100% - 2rem));margin:0 auto;}
.nav{position:absolute;top:0;left:0;width:100%;z-index:20;background:transparent;border-bottom:0;pointer-events:none;}
.nav a,.nav-item{pointer-events:auto;}
.nav-inner{min-height:80px;display:flex;align-items:center;justify-content:center;gap:40px;flex-wrap:wrap;}
.nav-inner a{font-family:'Inter',system-ui,sans-serif;font-size:15.5px;font-weight:300;color:#2f2f2f;line-height:1;opacity:.95;}
.nav-inner a:hover{opacity:.72;text-decoration:none;}
.nav-item{position:relative;display:inline-flex;align-items:center;}
.nav-item>a{display:inline-flex;align-items:center;}
.submenu{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);min-width:260px;padding:14px 0;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 14px 34px rgba(0,0,0,.10);opacity:0;pointer-events:none;z-index:80;transition:.18s ease;}
.has-submenu:hover .submenu,.has-submenu:focus-within .submenu{opacity:1;transform:translate(-50%,0);pointer-events:auto;}
.nav-inner .submenu a{display:block;padding:12px 22px;white-space:nowrap;font-size:15px;font-weight:400;line-height:1.4;opacity:1;}
.nav-inner .submenu a:hover{background:#f6f7f8;color:#222;opacity:1;}
.desktop-hero{width:100%;padding:0;line-height:0;position:relative;z-index:1;}
.desktop-hero img{width:100%;height:auto;display:block;border-radius:0;box-shadow:none;}
.desktop-hero a{position:relative;z-index:2;display:block;text-decoration:none;border:0;cursor:pointer;}
.mobile-cover{width:100%;max-width:var(--hero-max-w);margin:0 auto;background:transparent;}
.hero-panel{position:relative;width:100%;overflow:hidden;line-height:0;background:transparent;}
.hero-panel img{display:block;width:100%;height:auto;}
.hero-link{position:absolute;z-index:3;display:block;background:transparent;border:0;top:0;left:0;width:100%;height:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
.main-content{width:min(var(--content-max), calc(100% - 2rem));margin:0 auto;padding:16px 0 40px;}
.card{overflow:hidden;border-radius:0;}
.block{margin-top:24px;padding:24px;background:var(--block-bg,#fff);border:var(--block-border,1px solid var(--border));}
.block--white{--block-bg:#fff;--block-border:1px solid var(--border);}
.block--light{--block-bg:var(--light);--block-border:1px solid var(--border);}
h1,h2,h3{margin:0 0 12px;font-family:Arial, Helvetica, sans-serif;line-height:1.18;letter-spacing:-.02em;font-weight:700;color:var(--violet);}
h1{font-size:clamp(1.9rem,4vw,2.65rem);text-align:center;}
h2{font-size:clamp(1.45rem,3vw,2rem);text-align:center;}
h3{font-size:1.1rem;color:var(--blue);}
p{margin:0 0 10px;color:#3e3e3e;}
strong{font-weight:700;color:#5a64a8;}
.home-intro-seo{margin:0 0 22px!important;padding:18px 24px!important;background:#fff!important;border:1px solid #d7dcef!important;text-align:center!important;}
.home-intro-seo h1{margin:0 0 8px!important;font-size:clamp(1.55rem,2.5vw,2rem)!important;line-height:1.12!important;color:var(--deep-violet)!important;text-align:center!important;}
.home-intro-seo p{margin:0 auto!important;font-size:1rem!important;line-height:1.45!important;color:#333!important;text-align:center!important;}
.cards-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;}
.course-card{display:flex;flex-direction:column;height:100%;}
.course-media{width:100%;aspect-ratio:1/1;overflow:hidden;background:#eef2fb;border:0;}
.course-media img{width:100%;height:100%;object-fit:cover;}
.course-copy{background:#f3f5fb;border:1px solid rgba(44,69,124,.10);padding:14px 16px;min-height:150px;display:flex;flex-direction:column;overflow:hidden;}
.course-copy h2{color:var(--deep-violet)!important;font-size:1.32rem!important;line-height:1.15!important;text-align:left;margin:0 0 8px!important;letter-spacing:0;}
.course-copy p{font-size:1rem;line-height:1.38;margin:0 0 8px;color:#333;}
.course-link{display:inline-block;margin-top:auto;color:#5f6fb3;font-weight:700;border-bottom:1px dotted rgba(95,111,179,.4);}
.course-link:hover{text-decoration:none;color:#7b2e96;border-bottom-color:rgba(123,46,150,.45);}
.block--final-cta{padding-top:34px;padding-bottom:38px;}
.block--final-cta p{max-width:980px;margin-left:auto;margin-right:auto;}
.faq-block{background:#f4f7fc;}
.faq-block>p{text-align:center;max-width:900px;margin-left:auto;margin-right:auto;}
.faq-group{margin-top:14px;border:1px solid rgba(123,46,150,.12);background:#fff;overflow:hidden;}
.faq-group>summary{cursor:pointer;list-style:none;padding:16px 20px;font-size:1.08rem;line-height:1.35;font-weight:700;color:var(--deep-violet);background:#fff;display:flex;align-items:center;transition:background .18s ease;}
.faq-group>summary:hover{background:#faf7ff;}
.faq-group>summary::-webkit-details-marker{display:none;}
.faq-group>summary::before{content:'▶';display:inline-block;margin-right:10px;color:var(--violet);font-size:.95rem;line-height:1;}
.faq-group[open]>summary::before{content:'▼';}
.faq-group>summary strong{color:var(--deep-violet);font-weight:700;}
.faq-content{padding:0 20px 20px;}
.faq-item{margin-top:20px;padding-top:16px;border-top:1px solid rgba(44,69,124,.08);}
.faq-item:first-child{border-top:0;padding-top:0;}
.faq-item h3{text-align:left;font-size:1.05rem;line-height:1.35;margin:0 0 8px;color:var(--blue)!important;}
.faq-item p{padding:0;margin:0 0 10px;}
.footer-main{width:100%;margin-top:40px;padding:70px 0 38px;background:#2a2f95;color:#fff;}
.footer-grid{width:min(var(--content-max), calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.footer-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:28px 24px;}
.footer-card h3{margin:0 0 14px;font-size:1.1rem;font-weight:600;color:#fff;text-align:center;}
.footer-card p{margin:6px 0;font-size:.95rem;color:rgba(255,255,255,.88);line-height:1.65;}
.footer-card a{color:#dfe4ff;text-decoration:none;}
.footer-card a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.footer-copy{grid-column:1/-1;text-align:center;margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:.9rem;color:#fff;}
.footer-copy a{color:rgba(255,255,255,.82);text-decoration:none;}
.footer-copy a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.footer-note{margin-top:8px;font-size:.85rem;line-height:1.4;color:rgba(255,255,255,.72);}
@media (min-width:768px){.desktop-hero-wrap{display:block;}.mobile-cover{display:none;}}
@media (max-width:1100px){.nav-inner{gap:20px;}}
@media (max-width:900px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:767.98px){.mobile-cover{display:block;}.desktop-hero-wrap{display:none;}.main-content{width:calc(100% - 28px);padding:14px 0 32px;}.block{padding:20px 16px;}.home-intro-seo{margin:0 0 18px!important;padding:18px 16px!important;}.home-intro-seo h1{font-size:1.85rem!important;}.home-intro-seo p{font-size:1rem!important;line-height:1.5!important;}.cards-row{grid-template-columns:1fr;gap:12px;}.course-copy{min-height:130px;padding:13px 14px;}.course-copy h2{font-size:1.25rem!important;}.faq-group>summary{padding:15px 16px;}.faq-content{padding:0 16px 18px;}.footer-main{margin-top:28px;padding:36px 0 28px;overflow:hidden;}.footer-grid{width:calc(100% - 28px);grid-template-columns:1fr;gap:14px;}.footer-card{padding:20px 16px;}.footer-card h3{text-align:left;font-size:1.05rem;}.footer-card p{font-size:.95rem;line-height:1.55;overflow-wrap:anywhere;}.footer-copy{margin-top:16px;font-size:.86rem;line-height:1.45;}}
@media (min-width:900px){.home-intro-seo p{white-space:nowrap!important;}}

/* ALLINEAMENTO PAGINA BAMBINI */
.corso-manga-bambini-page .block--final-cta p{
  max-width:none;
  margin-left:0;
  margin-right:0;
}

.corso-manga-bambini-page .block--final-cta h2{
  text-align:center;
}

.corso-manga-bambini-page .faq-block > p{
  max-width:none;
}
/* ALLINEAMENTO PAGINA RAGAZZI */
.corso-manga-ragazzi-page .block--final-cta p{
  max-width:none;
  margin-left:0;
  margin-right:0;
}

.corso-manga-ragazzi-page .block--final-cta ul{
  max-width:none;
}
.course-media{
    width:100%;
    aspect-ratio:1/1;
    overflow:hidden;
    background:#eef2fb;
    border:0;
    margin-bottom:12px;
}

.course-copy{
    background:#f3f5fb;
    border:1px solid rgba(44,69,124,.10);
    padding:16px 18px;
}
.bio-role{
    text-align:center;
    margin:-4px auto 20px;
    color:#7b2e96;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:.02em;
}
/* BIO DOCENTI */
.bio-role{
    text-align:center;
    margin:-4px auto 20px;
    color:#6f6f6f;
    font-size:1.05rem;
    font-weight:500;
    letter-spacing:.02em;
}