 /* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* all */
b, strong {
  font-weight: 600 !important;
}

/* menu */
.btn-registrazione {
	background: #fff;
	border-radius: 50px;
	border: 1px solid #fff !important;
}
.btn-registrazione:hover{
	background: #465DAA;
}
.btn-registrazione a {
    color: #465DAA !important;
    font-weight: 700 !important;
	border: none !important;
}
.btn-registrazione a:hover{
	color: #fff !important;
}
.elementor-element-fff523e a:hover {
    color: #fff !important;
}
.elementor-element-d677fb7 .btn-registrazione {
    background: #465DAA;
}
.elementor-element-d677fb7 .btn-registrazione a{
    color: #fff !important;
}

/* Cambio bg header home */
#main-header {
    transition: background-color 0.4s ease, box-shadow 0.4s ease;
}
#main-header .elementor-item-active{
    color: #fff !important;
}
.logo-default, .logo-scrolled {
    transition: opacity 0.4s ease-in-out;
}
.elementor-nav-menu a {
    transition: color 0.4s ease !important;
}
.logo-scrolled {
    display: none;
}

/* home */
.elementor-lightbox-image.elementor-lightbox-prevent-close.swiper-lazy.swiper-lazy-loaded {
  border-radius: 15px;
}
.galleria-corso{border-radius: 0 !important;}

/* corso singolo */
.course-curriculum-info,
.section-count-items,
.course-item-ico.locked,
.course-item__info{
  display: none !important;
}
.course-section__items {
  margin-left: 40px !important;
}
.img-coach-corso img {
  width: 400px;
}
.thim-ekit-single-course__price {
    display: inline-grid;
    width: 100%;
    text-align: center;
}
.thim-ekit-single-course__price__origin {
    text-decoration: line-through;
    font-family: 'Outfit';
    font-size: 24px;
}
span.thim-ekit-single-course__price__price {
    margin-top: -15px;
}
.scroll-anchor {
    scroll-margin-top: 80px; /* Modifica con l'altezza del tuo header */
    position: relative;
}
.e-gallery-image{
    background-position: top center !important;
}
/* accordion corsi */
.accordion-moduli-wrapper {
    font-family: 'Outfit';
    max-width: 100%;
    margin: 20px 0;
}
.accordion-moduli-wrapper button:hover,
.accordion-moduli-wrapper button:focus{
    background: none;
    color: #000e2e;
}

/* ACCORDION LIVELLO 1 (esterno - moduli_corsi) */
.accordion-item-level-1 {
    margin-bottom: 15px;
    overflow: hidden;
}
.accordion-header-level-1 {
    width: 100%;
    color: #000e2e;
    border: none;
    padding: 20px 24px;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    font-size: 44px;
    font-weight: 700;
    transition: background 0.3s;
}
.accordion-header-level-1 span:not(.accordion-icon-level-1) {
    flex: 1;
    min-width: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal;
    hyphens: auto;
}
.accordion-icon-level-1 {
    color: #0073aa;
    font-size: 28px;
    font-weight: bold;
    transition: transform 0.3s;
    flex-shrink: 0;
}
.accordion-body-level-1 {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}
.accordion-body-level-1.active {
    max-height: 5000px;
    padding: 20px;
}

/* ACCORDION LIVELLO 2 (interno - moduli) */
.accordion-item-level-2 {
    border-bottom: 1px solid #707070;
    border-radius: 6px;
    margin-bottom: 10px;
    overflow: hidden;
    background: #fff;
}
.accordion-header-level-2 {
    width: 100%;
    border: none;
    padding: 16px 20px;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
    font-size: 26px;
    font-weight: 600;
    color: #333;
    transition: background 0.7s;
}
.accordion-header-level-2 span:not(.accordion-icon-level-2) {
    flex: 1;
    min-width: 0;
}
.accordion-header-level-2:hover {
    background: none;
    color: #000e2e;
}
.accordion-icon-level-2 {
    font-size: 22px;
    font-weight: bold;
    transition: transform 0.3s;
    color: #0073aa;
    flex-shrink: 0;
}
.accordion-body-level-2 {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
    background: #fff;
}
.accordion-body-level-2.active {
    max-height: 3000px;
    padding: 20px;
}

/* Contenuto descrizione */
.modulo-descrizione, 
.descrizione-modulo {
    color: #333;
    line-height: 1.6;
    font-size: 22px;
    font-weight: 300;
}
.modulo-descrizione p {
    margin: 0 0 10px 0;
}
.modulo-descrizione p:last-child {
    margin-bottom: 0;
}
.modulo-descrizione ul,
.modulo-descrizione ol {
    margin: 10px 0;
    padding-left: 20px;
}
.modulo-descrizione strong {
    font-weight: 600;
}
.modulo-descrizione a {
    color: #0073aa;
    text-decoration: underline;
}

/* MEDIA QUERIES PER MOBILE */
@media screen and (max-width: 768px) {
    .accordion-moduli-wrapper {
        margin: 15px 0;
    }
    
    /* Livello 1 mobile */
    .accordion-item-level-1 {
        margin-bottom: 12px;
        border-radius: 6px;
    }
    .accordion-header-level-1 {
        padding: 16px 18px;
        font-size: 18px;
        gap: 12px;
        line-height: 1.3;
        align-items: center;
    }
    .accordion-icon-level-1 {
        font-size: 24px;
    }
    .accordion-body-level-1.active {
        padding: 15px;
    }
    
    /* Livello 2 mobile */
    .accordion-item-level-2 {
        margin-bottom: 8px;
        border-radius: 5px;
    }
    .accordion-header-level-2 {
        padding: 14px 16px;
        font-size: 16px;
        gap: 10px;
        line-height: 1.3;
        align-items: center;
    }
    .accordion-icon-level-2 {
        font-size: 20px;
    }
    .accordion-body-level-2.active {
        padding: 15px;
    }
    
    /* Contenuto mobile */
    .modulo-descrizione {
        font-size: 15px;
        line-height: 1.5;
    }
    .modulo-descrizione ul,
    .modulo-descrizione ol {
        padding-left: 18px;
    }
}

@media screen and (max-width: 480px) {
    /* Extra piccoli (smartphone) */
    .accordion-header-level-1 {
        padding: 14px 16px;
        font-size: 17px;
        gap: 10px;
    }
    .accordion-icon-level-1 {
        font-size: 22px;
        margin-top: 3px;
    }
    .accordion-body-level-1.active {
        padding: 12px;
    }
    
    .accordion-header-level-2 {
        padding: 12px 14px;
        font-size: 15px;
        gap: 8px;
    }
    .accordion-icon-level-2 {
        font-size: 18px;
        margin-top: 3px;
    }
    .accordion-body-level-2.active {
        padding: 12px;
    }
    
    .modulo-descrizione {
        font-size: 14px;
    }
    .modulo-descrizione ul,
    .modulo-descrizione ol {
        padding-left: 16px;
    }
}

/* blog */
.e-n-tabs-heading {
  border-bottom: 1px solid #A2A2A2;
}
.e-n-tab-title[aria-selected="true"] {
  font-weight: 600 !important;
}

/* carrello */
input#coupon_code {
    border-radius: 15px;
    border-color: #707070;
    font-size: 22px;
    font-family: 'Outfit';
    font-weight: 300;
}
.elementor-widget-woocommerce-purchase-summary .woocommerce .woocommerce-thankyou-order-details li{
	margin-inline-end: 20px;
    padding-inline-end: 40px;

}
/* profilo */
.profile-recover-order,
li.courses,
li.quizzes,
li.lp_orders_woocommerce,
ul.profile-tab-sections,
.lp-user-profile .lp-profile-nav-tabs>li.has-child>a:after,
li.form-field.form-field__9304112.form-field__clear,
li.form-field.form-field__profile-social.form-field__50.form-field__facebook,
li.form-field.form-field__profile-social.form-field__50.form-field__twitter,
li.form-field.form-field__profile-social.form-field__50.form-field__youtube,
li.form-field.form-field__profile-social.form-field__50.form-field__linkedin,
div.statistic-box[title="Total courses passed"],
div.statistic-box[title="Total courses failed"],
a[data-tab="failed"],
a[data-tab="passed"]{
    display: none !important;
}
td .course-img {
    padding: 10px;
}
span.lp-label.label-trash br,
.column-order-number br {
    display: none;
}
.learn-press-profile-course__statistic {
    display: none !important;
}
.lp-user-profile .lp-profile-content-area{
    align-items: center !important;
}
.learn-press-tabs__item>a{font-size: 20px !important;}

/* login */
.learn-press-form-login, .learn-press-form-register {
    box-shadow: 5px 5px 15px #00000029 !important;
    border: none !important;
    border-radius: 15px !important;
}
.learn-press-form-register .form-fields .form-field label,
.learn-press-form-login .form-fields .form-field label{
	margin: 0!important;
}
.learn-press-form-login a{
    font-size: 16px;
    margin-top: 10px;
    font-family: 'Outfit';
}
.learn-press-form .form-fields .form-field input{
    margin-top: 10px;
}
.learn-press-form-login.learn-press-form label,
.learn-press-form-register.learn-press-form label {
    margin-bottom: 10px;
    font-family: 'Outfit';
    font-size: 16px;
}
.learn-press-form .form-fields .form-field>label {
	font-style: normal !important;
}
.learn-press-form-login, .learn-press-form-register{
	margin-left: 10px !important;
	margin-right: 10px !important;
}
.learn-press-form-login.learn-press-form br,
.learn-press-form-register.learn-press-form br {
    display: none;
}
.learn-press-form-login button[type=submit]{
    margin-bottom: 15px;
}

/* reset password */
form.woocommerce-ResetPassword.lost_reset_password {
    width: 1100px;
    margin: auto;
    display: block;
    padding: 50px 10px;
    font-family: 'Outfit';
    font-size: 22px;
}
@media screen and (max-width: 1024px){
    form.woocommerce-ResetPassword.lost_reset_password{
        width: 100%;
        padding: 50px 30px;
    }    
}

/* corso singolo */
#popup-sidebar {
    font-family: 'Outfit';
    font-size: 18px;
}
#popup-header, .content-item-summary{font-family: 'Outfit';}
#popup-course .popup-header__inner{
    font-size: 30px;
    padding: 15px;
}
#popup-content{color: #000e2e;}
.content-item-description.lesson-description{font-size: 22px;}
#popup-sidebar .search-course button i{color: #465daa !important;}
.lp-course-curriculum .course-section .course-section-header{
    background: none !important;
    border-bottom: 1px solid #e2e0db;
}
.lp-icon-angle-up:before,
.lp-icon-angle-down:before{
    content: "\2b" !important;
    color: #465daa;
}
#popup-header .course-title a{display: block !important;}
h1.course-item-title.lesson-title {
    font-size: 40px;
}
#popup-header .course-title a:hover{color: #fff !important;}
.lp-course-curriculum .course-section{border: none !important;}
.lp-course-curriculum .course-section .course-item{border-top: none !important;}
.mejs-overlay.mejs-layer.mejs-overlay-play {
    border-radius: 20px;
    background: #00000040 !important;
}
.wp-video, .wp-video-shortcode{width: 100% !important;}
.mejs-container{
    background: none !important;
    width: 100% !important;
}
.wp-video-shortcode video, video.wp-video-shortcode,
.lp-material-skeleton,
.mejs-mediaelement, .mejs-container .mejs-controls, .mejs-embed, .mejs-embed body{
    border-radius: 20px;
}
.mejs-container .mejs-controls, .mejs-embed, .mejs-embed body{background: none;}
.learnpress table tbody td, .learnpress table tbody th, .learnpress table tfoot td, .learnpress table tfoot th,
.learnpress table th, .learnpress table td, .learnpress table thead{
    border: none !important;
}
h1.course-item-title.lesson-title {display: none !important;}
.lp-course-curriculum .course-section .course-item-ico.in-progress::before{display: none !important;}
.learn-press-message{font-family: 'Outfit';}
button.lp-button.button-complete-lesson.lp-btn-complete-item {
    background: #465DAA !important;
    color: #fff;
    margin-top: 30px !important;
}
.lp-material-th-file-type, .lp-material-th-file-size,
.lp-material-file-type, .lp-material-file-size {
    display: none;
}
i.lp-icon-file-download.btn-download-material {
    font-size: 24px;
}
td.lp-material-file-name {
    font-size: 18px;
}
.mejs-container *{font-family: 'Outfit' !important;}
.mejs-time{font-size: 14px !important;}
/* Aggiunge il titolo "Risorse" prima della tabella */
.lp-list-material::before {
    content: "Risorse";
    display: block;
    font-size: 28px; /* Grandezza tipica di un titolo H3 */
    font-weight: 600;
    margin-bottom: 15px;
    color: #333333; /* Cambia con il colore del tuo sito */
}

/* learnpress */
#popup-header{
	background: #465DAA !important;
}
#popup-content .lp-button.completed{
	background: #465DAA !important;
	
}

/* acquisto */
div#customer_details {
    font-family: 'Outfit';
}
.woocommerce-account-fields{font-size: 18px;}
span.thim-ekits-mini-cart__close {display: none;}
.thim-ekits-mini-cart .elementor-menu-cart__footer-buttons{display: contents;}
.elementor-menu-cart__subtotal {margin-bottom: 30px;}
.elementor-button.elementor-button--view-cart.elementor-size-md {margin-bottom: 10px;}
.widget_shopping_cart_content {margin-top: 30px;}
.thim-ekits-mini-cart.side-cart{
    width: 40px;
    height: 40px;
}
.thim-ekits-mini-cart .minicart-icon {
    padding: 8px 5px 8px 5px;
}
.elementor-menu-cart__product-name.product-name a{
    color: #465daa;
}

/* contatti */
.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true],
.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs[data-touch-mode=false]>.e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover {
    background-color: #fff !important;
}

/* footer */
.elementor-field-group-privacy,
.elementor-turnstile-field {
    text-align: center;
    display: block;
}