/* Corsi e percorsi: una sola card, distinzione nel titolo e nei gruppi. */
body#top .af-course-card .af-preview-macro,body#top .af-home-macro-card .af-macro-microcopy,body#top .af-upcoming-card .af-macro-microcopy{display:none!important}
body#top .af-offer-explanation{max-width:850px;font-size:17px;line-height:1.6;margin:16px 0 28px}
body#top #main .af-offer-collection>h2,body#top #main .af-offer-subheading{font-size:34px!important;line-height:1.2!important;margin:28px 0 24px!important;padding:0!important}
body#top #main .af-offer-path-group{background:#10495c!important;padding:30px 26px!important;margin:32px 0!important;border:0!important}
body#top #main .af-offer-path-group>h2,body#top #main .af-offer-path-group>h3{color:#fff!important;margin-top:0!important}
body#top #main .af-offer-path-group .af-course-card{background:#fff!important}
body#top #main .af-offer-type-group{clear:both}
@media(max-width:767px){body#top #main .af-offer-collection>h2,body#top #main .af-offer-subheading{font-size:28px!important;margin:24px 0 18px!important}body#top #main .af-offer-path-group{padding:24px 16px!important;margin:24px 0!important}body#top .af-offer-explanation{font-size:16px;line-height:1.5}}

/* Gerarchia: specialità prima dei sottogruppi. */
body#top #main .af-macro-course-group>h2{font-size:42px!important;line-height:1.15!important;margin:44px 0 22px!important;color:#10495c!important}
body#top .af-alb-course{--af-card-columns:3;--af-card-gap:24px;display:flex!important;flex-wrap:wrap!important;gap:var(--af-card-gap)!important;align-items:stretch}
body#top .af-alb-course[data-columns="1"]{--af-card-columns:1}
body#top .af-alb-course[data-columns="2"]{--af-card-columns:2}
body#top .af-alb-course[data-columns="3"]{--af-card-columns:3}
body#top .af-alb-course[data-columns="4"]{--af-card-columns:4}
body#top .af-alb-course[data-columns="5"]{--af-card-columns:5}
body#top .af-alb-course[data-columns="6"]{--af-card-columns:6}
body#top .af-alb-course>.flex_column_table{display:contents!important}
body#top .af-alb-course .av-flex-placeholder{display:none!important}
body#top .af-alb-course .af-course-card{flex:1 1 calc((100% - (var(--af-card-columns) - 1)*var(--af-card-gap))/var(--af-card-columns))!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;float:none!important;box-sizing:border-box;align-self:stretch}
body#top #main .af-alb-course .af-card-last-wide{flex-basis:100%!important}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal){display:grid!important;grid-template-columns:minmax(0,40%) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:24px;padding:0!important;overflow:hidden}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal)>.avia-image-container{grid-column:1;grid-row:1/span 2;width:100%!important;margin:0!important;min-height:280px;height:100%!important;align-self:stretch}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) .avia-image-container-inner,body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) .avia-image-overlay-wrap{height:100%!important;aspect-ratio:auto!important}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) .avia-image-container img{width:100%!important;height:100%!important;object-fit:cover!important}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal)>.av-special-heading{grid-column:2;grid-row:1;margin:0!important;padding:24px 24px 10px 0!important}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal)>section.av_textblock_section{grid-column:2;grid-row:2;padding:0 24px 24px 0!important}
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) :is(h3,h4){font-size:25px!important;line-height:1.25!important}
body#top #main .af-course-card.af-card-type-path{background:#10495c!important;border-color:rgba(205,164,52,.45)!important}
body#top #main .af-course-card.af-card-type-path :is(h3,h4,p,small,strong,a,.af-price-heading,.af-price-note){color:#fff!important}
body#top #main .af-course-card.af-card-type-path .af-card-actions a{border-color:#cda434!important}
@media(max-width:1199px) and (min-width:768px){body#top .af-alb-course:is([data-columns="4"],[data-columns="5"],[data-columns="6"]){--af-card-columns:3}body#top .af-alb-course.af-cards-horizontal{--af-card-columns:1}}
@media(max-width:767px){body#top #main .af-macro-course-group>h2{font-size:34px!important;margin:32px 0 18px!important}body#top .af-alb-course{--af-card-columns:1!important;--af-card-gap:18px}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal){display:flex!important;flex-direction:column!important;gap:0}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal)>.avia-image-container{height:auto!important;min-height:0;align-self:auto}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) .avia-image-container-inner{height:auto!important;aspect-ratio:3/2!important}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) .avia-image-overlay-wrap{height:100%!important}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal)>.av-special-heading{padding:18px 18px 10px!important}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal)>section.av_textblock_section{padding:0 18px 18px!important}body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) :is(h3,h4){font-size:23px!important}}
/* Il vecchio limite delle schede singole non deve restringere i formati orizzontali. */
body#top #main .af-shortcode-single:has(.af-cards-horizontal){width:100%!important;max-width:none!important}
@media(max-width:767px){body#top #main .af-alb-course .af-card-actions{justify-content:space-between!important;gap:8px!important}body#top #main .af-alb-course .af-card-actions a{flex:0 1 auto!important;margin:0!important}body#top .af-sticky-area-links{scrollbar-width:none}body#top .af-sticky-area-links::-webkit-scrollbar{display:none}}

/* One sticky row: each specialty owns its optional submenu. */
body#top .af-sticky-area-slot{position:relative;min-height:41px;margin:6px 0 12px;z-index:120}
body#top .af-sticky-area-nav{position:relative;box-sizing:border-box;background:rgba(255,255,255,.98);border-top:1px solid #e5eaeb;border-bottom:1px solid #dce2e3;padding:0 24px;color:#10495c}
body#top .af-sticky-area-nav.is-fixed{position:fixed;top:var(--af-nav-top,0px);left:0;right:0;width:100%;z-index:120;box-shadow:0 3px 12px #10495c0b}
body#top .af-catalog-primary{display:flex;align-items:center;max-width:1310px;margin:auto;min-height:39px;gap:20px}
body#top .af-catalog-context{flex:0 0 auto;font-size:12px;font-weight:600;letter-spacing:.04em;color:#587078;padding-right:18px;border-right:1px solid #dce2e3}
body#top .af-sticky-area-links{display:flex;flex:1;align-items:center;justify-content:center;gap:16px;min-width:0;overflow-x:auto;scrollbar-width:none}
body#top .af-sticky-area-links::-webkit-scrollbar{display:none}
body#top .af-catalog-item{display:flex;flex:0 0 auto;align-items:center}
body#top .af-sticky-area-nav a{box-sizing:border-box;display:block;color:#39545d;text-decoration:none!important;white-space:nowrap;border-bottom:2px solid transparent;font-weight:500;line-height:1.3}
body#top #main .af-sticky-area-links a{padding:9px 0 7px;font-size:16px;font-weight:500!important}
body#top #main .af-sticky-area-nav a[aria-current]{font-weight:700!important;color:#10495c;border-bottom-color:#cda434}
body#top .af-sticky-area-nav a:hover{color:#10495c;border-bottom-color:#cda434}
body#top .af-sticky-area-nav :is(a,button):focus-visible{outline:2px solid #10495c;outline-offset:-2px;border-radius:2px}
body#top #main .af-catalog-toggle{appearance:none;position:relative;display:block;flex:0 0 18px;width:18px;height:38px;margin:0;padding:0;border:0;border-radius:0;background:transparent!important;color:#10495c;cursor:pointer;box-shadow:none!important;border:0!important}
body#top .af-catalog-toggle::after{content:'';position:absolute;left:2px;top:16.5px;width:4px;height:4px;border:solid currentColor;border-width:0 1px 1px 0;transform:rotate(45deg)}
body#top .af-catalog-toggle[aria-expanded=true]::after{top:16.5px;transform:rotate(225deg)}
body#top .af-catalog-submenu{position:absolute;top:100%;z-index:2;display:flex;align-items:center;gap:20px;box-sizing:border-box;width:max-content;max-width:calc(100% - 16px);padding:0 12px;background:#eff5f4;border:1px solid #dce7e4;border-top:0;box-shadow:0 3px 8px #10495c0a}
body#top .af-catalog-submenu[hidden]{display:none!important}
body#top .af-catalog-submenu a{font-size:14px;font-weight:400;padding:9px 0 7px}
body#top #main.af-catalog-navigation-ready :is(.af-offer-group-nav,.af-area-section-nav){display:none!important}
body#top :is(.af-macro-course-group,.af-offer-type-group,.af-offer-collection){scroll-margin-top:var(--af-academy-scroll-offset,120px)}
body#top #main .af-catalog-intro{max-width:960px;font-size:17px;line-height:1.55;margin:8px 0 18px}
body#top #main .af-macro-course-group{margin:0 0 32px;padding-top:0}
body#top #main .af-macro-course-group>h2{font-size:38px!important;line-height:1.16!important;margin:28px 0 16px!important}
body#top #main .af-macro-course-group .af-offer-subheading{font-size:28px!important;line-height:1.2!important;margin:22px 0 16px!important}
body#top #main .af-macro-course-group .af-offer-path-group{padding:24px!important;margin:26px 0 0!important}
body#top #main .af-macro-course-group .af-offer-path-group>h3{margin-top:0!important}
body#top #main .af-course-card :is(h3,h4){font-size:23px!important;line-height:1.25!important;font-weight:500}
body#top .af-offer-group-nav{display:flex;gap:24px;flex-wrap:wrap;margin:10px 0;font-size:15px}
body#top .af-offer-group-nav a{border-bottom:1px solid #cda434;text-decoration:none}
@media(max-width:1400px){body#top .af-catalog-context{display:none}}
@media(max-width:1100px){body#top .af-sticky-area-links{justify-content:flex-start;gap:20px}}
@media(max-width:767px){
 body#top .af-sticky-area-slot{min-height:46px;margin:4px 0 10px}
 body#top .af-sticky-area-nav{padding:0 16px}
 body#top .af-catalog-primary{min-height:44px}
 body#top #main .af-sticky-area-links a{padding:12px 0 10px;font-size:14px}
 body#top #main .af-catalog-toggle{width:24px;flex-basis:24px;height:44px}
 body#top .af-catalog-toggle::after{left:2px;top:19.5px}
 body#top .af-catalog-toggle[aria-expanded=true]::after{top:19.5px}
 body#top .af-catalog-submenu{gap:18px}
 body#top .af-catalog-submenu a{font-size:13px;padding:10px 0 8px}
 body#top #main .af-catalog-intro{font-size:16px;line-height:1.5;margin-bottom:16px}
 body#top #main .af-macro-course-group{margin-bottom:26px}
 body#top #main .af-macro-course-group>h2{font-size:30px!important;margin:24px 0 14px!important}
 body#top #main .af-macro-course-group .af-offer-subheading{font-size:24px!important;margin:18px 0 14px!important}
 body#top #main .af-macro-course-group .af-offer-path-group{padding:20px 16px!important;margin:22px 0 0!important}
 body#top #main .af-course-card :is(h3,h4){font-size:22px!important}
}

body#top .af-sticky-area-nav.is-past-catalog{visibility:hidden;pointer-events:none}
body#top #main.af-catalog-navigation-ready:has(.af-macro-course-group) h1{font-size:40px!important;line-height:1.15!important}
@media(max-width:767px){body#top #main.af-catalog-navigation-ready:has(.af-macro-course-group) h1{font-size:32px!important;line-height:1.18!important}}

/* Automatic desktop sequence: three first; balanced final rows, same source order. */
@media(min-width:1200px){
 body#top .af-alb-course .af-card-row-four{--af-card-columns:4}
 body#top .af-alb-course .af-card-auto-horizontal{--af-card-columns:2}
}
@media(min-width:768px) and (max-width:1199px){
 body#top .af-alb-course .af-card-row-four{--af-card-columns:2}
 body#top .af-alb-course .af-card-auto-horizontal{--af-card-columns:1}
}


/* Remove the theme's hidden 20px title padding; use a modest gap for disclosures. */
body#top #main .af-macro-course-group>h2{padding:0!important}
body#top #main .af-sticky-area-slot+.af-macro-course-group>h2{margin-top:32px!important}

/* Course/path group headings are regular; active navigation remains bold. */
body#top #main :is(.af-offer-subheading,.af-offer-collection>h2){font-weight:400!important}

/* Text is content, not a stretched card link. Images and explicit actions navigate. */
body#top .af-course-card{cursor:default!important}
body#top .af-course-card:hover{transform:none!important;box-shadow:none!important}
body#top .af-course-card .image-overlay{display:none!important}
body#top :is(.af-course-card,.af-course-sheet,.af-sheet-body) :is(h1,h2,h3,h4,h5,h6,p,li,small,strong,span,a){-webkit-user-select:text!important;user-select:text!important}
body#top :is(#wrap_all,#af-course-dialog) .af-path-summary,
body#top :is(#wrap_all,#af-course-dialog) .af-path-summary small{font-size:13px!important;line-height:1.5!important;font-weight:400!important}
body#top :is(#wrap_all,#af-course-dialog) .af-path-summary a{font-family:inherit!important;font-size:inherit!important;font-weight:400!important;line-height:inherit!important;text-decoration-thickness:1px;text-underline-offset:2px;display:inline!important}
body#top :is(#wrap_all,#af-course-dialog) .af-path-members :is(li,a){font-size:14px!important;font-weight:400!important;line-height:1.5!important}

/* A normal photo link must fill the existing horizontal crop, just as the image did. */
body#top #main :is(.af-cards-horizontal .af-course-card,.af-card-last-wide,.af-card-auto-horizontal) .avia-image-overlay-wrap>a{display:block!important;width:100%!important;height:100%!important;line-height:0}
