/* AI Champion - Custom Styles */

/* Footer */
#section-footer > .ct-section-inner-wrap{max-width:100%;padding-left:125px;align-items:center}
#section-footer{background-color:#002c3d;text-align:left}
@media (max-width:1120px){#section-footer > .ct-section-inner-wrap{padding-left:20px}}

/* Header */
#div_block-nav{width:100%;text-align:left;align-items:flex-end;padding-right:25px}
#_rich_text-footer{color:#f5f4f5;font-size:14px;text-align:center}
#link_button-header{background-color:#9b5de5;border:1px solid #9b5de5;color:#f5f4f5}
#link_button-header{font-size:16px;letter-spacing:1px;font-weight:600;padding-left:32px;padding-right:32px;box-shadow:4px 4px rgba(155,93,229,0.25)}
#link_button-header:hover{background-color:rgba(155,93,229,0.8);border:1px solid rgba(155,93,229,0.8);color:#f5f4f5}
@media (max-width:767px){#link_button-header{display:none}}

#image-logo{width:167px}
#inner_content{overflow:visible}
@media (max-width:767px){#inner_content{font-size:17px}}

/* Nav Menu */
#_nav_menu .oxy-nav-menu-hamburger-line{background-color:#f5f4f5}
@media (max-width:1120px){#_nav_menu .oxy-nav-menu-list{display:none}#_nav_menu .oxy-menu-toggle{display:initial}#_nav_menu.oxy-nav-menu.oxy-nav-menu-open .oxy-nav-menu-list{display:initial}}
#_nav_menu.oxy-nav-menu.oxy-nav-menu-open{margin:0 !important}
#_nav_menu.oxy-nav-menu.oxy-nav-menu-open .menu-item a{padding:10px 20px}
#_nav_menu .oxy-nav-menu-hamburger-wrap{width:40px;height:40px;margin:10px}
#_nav_menu .oxy-nav-menu-hamburger{width:40px;height:32px}
#_nav_menu .oxy-nav-menu-hamburger-line{height:6px}
#_nav_menu.oxy-nav-menu-open .oxy-nav-menu-hamburger .oxy-nav-menu-hamburger-line:first-child{top:13px}
#_nav_menu.oxy-nav-menu-open .oxy-nav-menu-hamburger .oxy-nav-menu-hamburger-line:last-child{top:-13px}
#_nav_menu{display:none}
#_nav_menu .oxy-nav-menu-list{flex-direction:row}
#_nav_menu .menu-item a{padding:10px 20px;font-size:16px;color:#f5f4f5;font-weight:600;letter-spacing:1px}
#_nav_menu .menu-item:focus-within a,#_nav_menu .menu-item:hover a{color:#9b5de5}
@media (max-width:1120px){#_nav_menu{display:flex}}

#_nav_menu_footer .oxy-nav-menu-list{flex-direction:row}
#_nav_menu_footer .menu-item a{padding:0 20px 20px;font-size:14px}

#_header_row .oxy-nav-menu-open,#_header_row .oxy-nav-menu:not(.oxy-nav-menu-open) .sub-menu{background-color:#002c3d}
#_header_row{background-color:#002c3d;display:block}

/* Hero Section */
#section-hero > .ct-section-inner-wrap{align-items:center}
#section-hero{text-align:left}

/* Intro Section */
#section-intro > .ct-section-inner-wrap{max-width:100%;align-items:center}
#section-intro{background-color:rgba(155,93,229,0.2);text-align:left}

/* What Section */
#section-what > .ct-section-inner-wrap{padding-right:125px;padding-left:125px}
@media (max-width:1120px){#section-what > .ct-section-inner-wrap{padding-right:20px;padding-left:20px}}

/* Features Section */
#section-features > .ct-section-inner-wrap{padding:50px;display:flex;flex-wrap:wrap}
#section-features{display:block;background-color:rgba(155,93,229,0.4);text-align:left}
@media (max-width:1120px){#section-features > .ct-section-inner-wrap{padding:20px}}

/* Content Section */
#section-content > .ct-section-inner-wrap{padding-right:125px;padding-left:125px}
#section-content{background-color:rgba(155,93,229,0.6)}
@media (max-width:1120px){#section-content > .ct-section-inner-wrap{padding-right:20px;padding-left:20px}}

/* Trainer Section */
#section-trainer > .ct-section-inner-wrap{padding-left:125px;align-items:center}
#section-trainer{background-color:#9b5de5;text-align:left}
@media (max-width:1120px){#section-trainer > .ct-section-inner-wrap{padding-left:20px}}

/* Pricing Section */
#section-pricing > .ct-section-inner-wrap{padding-left:125px;align-items:center}
#section-pricing{background-color:#f5f4f5}
@media (max-width:1120px){#section-pricing > .ct-section-inner-wrap{padding-left:20px}}

/* Contact Section */
#section-contact > .ct-section-inner-wrap{padding-left:125px}
#section-contact{background-color:rgba(155,93,229,0.39)}
@media (max-width:1120px){#section-contact > .ct-section-inner-wrap{padding-left:20px}}
@media (max-width:479px){#section-contact > .ct-section-inner-wrap{padding:10px}}

/* Div Blocks */
#div_block-hero{flex-direction:row;display:flex;justify-content:center}
#div_block-hero-inner{flex-direction:row;display:flex;flex-wrap:nowrap;justify-content:center}

#div_block-what-left{text-align:right;align-items:center;justify-content:center;width:50%}
#div_block-what-right{width:50%;padding:25px 0;justify-content:center;align-items:flex-start;text-align:left}

#div_block-feature{width:25%;align-items:center;flex-direction:column;display:flex}
@media (max-width:991px){#div_block-feature{width:50%}}
@media (max-width:767px){#div_block-feature{width:100%}}

#div_block-content-left{width:50%;align-items:flex-end;justify-content:flex-start;text-align:left;padding-bottom:0}
#div_block-content-right{width:50%;text-align:left;align-items:center;padding:0;justify-content:center}
@media (max-width:991px){#div_block-content-left,#div_block-content-right{width:100%}}

#div_block-trainer{width:100%;align-items:center}

#div_block-pricing-left{width:50%;padding:25px 0;justify-content:center;align-items:center;text-align:left}
#div_block-pricing-right{width:50%;text-align:left;align-items:center;justify-content:center}
@media (max-width:991px){#div_block-pricing-left,#div_block-pricing-right{width:100%}}

#div_block-pricing-card{background-color:rgba(155,93,229,0.15);border-radius:16px;padding:25px;text-align:center;align-items:stretch;min-width:100%;height:100%;box-shadow:0px 4px 18px rgba(0,0,0,0.25)}
@media (max-width:991px){#div_block-pricing-card{min-width:70%}}
@media (max-width:767px){#div_block-pricing-card{min-width:100%}}

#div_block-pricing-item{text-align:left;flex-direction:row;display:flex;align-items:center;margin-bottom:25px}

#div_block-contact-left{width:50%;align-items:center;text-align:left}
#div_block-contact-right{width:50%}
@media (max-width:991px){#div_block-contact-left,#div_block-contact-right{width:100%}}

#div_block-contact-card{background-color:#002c3d;border-radius:16px;padding:25px;text-align:center;align-items:stretch;min-width:100%;height:100%;box-shadow:0px 4px 18px rgba(0,0,0,0.25)}
@media (max-width:991px){#div_block-contact-card{min-width:70%}}
@media (max-width:767px){#div_block-contact-card{min-width:100%;padding-left:25px}}
@media (max-width:479px){#div_block-contact-card{padding:10px;text-align:justify;align-items:center}}

#div_block-contact-item{text-align:left;flex-direction:row;display:flex;align-items:center;margin-bottom:50px;flex-wrap:wrap}
@media (max-width:479px){#div_block-contact-item{justify-content:center}}

/* Headlines */
#headline-main{margin-top:75px;text-align:center}
#headline-ai{font-family:'Space Mono'}
#headline-champion{font-family:'Space Mono';color:#9b5de5}
#headline-sub{font-family:'Space Mono';text-align:center}
@media (max-width:991px){#headline-main{font-size:4rem}#headline-ai,#headline-champion,#headline-sub{font-size:2rem}}

#headline-intro{margin-bottom:25px}
#headline-what{margin-bottom:25px;text-align:center}
#headline-trainer{margin-bottom:25px;text-align:center}
#headline-trainer-name{text-align:center;margin:25px 0;color:#f5f4f5}
#headline-pricing{margin-bottom:25px}
#headline-contact{margin-bottom:35px;color:#f5f4f5;text-align:left}

/* Text Blocks */
#text_block-feature{text-align:center;font-weight:600}
@media (max-width:991px){#text_block-feature{font-size:18px}}
#text_block-contact{color:#f5f4f5}
@media (max-width:479px){#text_block-contact{text-align:center}}

/* Rich Text */
#_rich_text-intro{max-width:830px;padding:0 10px}
@media (max-width:991px){#_rich_text-intro{max-width:100%}}
#_rich_text-what{margin-top:25px}
#_rich_text-content{padding-bottom:0}
@media (max-width:767px){#_rich_text-content{padding:0}}
#_rich_text-trainer{color:#f5f4f5}
#text_link-contact{color:#f5f4f5}

/* Buttons */
#link_button-hero{background-color:rgba(155,93,229,0.8);border:1px solid rgba(155,93,229,0.8);color:#f5f4f5;font-size:16px;letter-spacing:1px;font-weight:600;margin-top:50px;margin-bottom:150px;padding-left:32px;padding-right:32px;box-shadow:4px 4px rgba(155,93,229,0.25)}
#link_button-hero:hover{background-color:#9b5de5;border:1px solid #9b5de5;color:#f5f4f5}

#link_button-content{background-color:rgba(0,44,61,0.8);border:1px solid rgba(0,44,61,0.8);color:#f5f4f5;font-size:16px;letter-spacing:1px;font-weight:600;margin-top:25px;box-shadow:4px 4px rgba(155,93,229,0.25)}
#link_button-content:hover{background-color:#002c3d;border:1px solid #002c3d;color:#f5f4f5}

#link_button-pricing{background-color:rgba(155,93,229,0.8);border:1px solid rgba(155,93,229,0.8);color:#f5f4f5;font-size:16px;letter-spacing:1px;font-weight:600;margin-top:25px;box-shadow:4px 4px rgba(155,93,229,0.25)}
#link_button-pricing:hover{background-color:#9b5de5;border:1px solid #9b5de5;color:#f5f4f5}

/* Images */
#image-feature{max-height:150px}
@media (max-width:991px){#image-feature{max-height:100px}}
#image-trainer{border:8px solid #f5f4f5;border-radius:16px}
@media (max-width:991px){#image-trainer{max-width:50%}}
@media (max-width:767px){#image-trainer{max-width:80%}}
@media (max-width:479px){#image-trainer{max-width:100%}}

#image-pricing{max-height:50px;margin-right:25px}
#image-contact{max-height:50px;margin:15px 25px 15px 0}
@media (max-width:479px){#image-contact{margin-right:0}}

@media (max-width:1120px){#image-what{max-width:100%}}
@media (max-width:991px){#image-what{max-width:50%}#image-content{max-width:50%}#image-pricing-visual{max-width:50%}}
@media (max-width:767px){#image-what,#image-content,#image-pricing-visual{max-width:80%}}
@media (max-width:479px){#image-what,#image-content,#image-pricing-visual{max-width:100%}}

/* Responsive Columns */
@media (max-width:991px){
    .ct-new-columns > .ct-div-block{width:100% !important}
    #new_columns-features > .ct-div-block{width:50% !important}
    #new_columns-content{flex-direction:column-reverse}
}
@media (max-width:767px){
    #new_columns-features > .ct-div-block{width:100% !important}
    #new_columns-features{flex-direction:column}
    #div_block-hero{flex-direction:column;text-align:left;align-items:center}
    #div_block-hero-inner{text-align:left}
}

/* Shape Divider */
.oxy_shape_divider{position:absolute;left:0;right:0;bottom:-1px;pointer-events:none}
.oxy_shape_divider > svg{min-width:100%;position:absolute;bottom:0;left:0;z-index:0;transform-origin:bottom center}
#shape-divider .oxy_shape_divider{color:rgba(155,93,229,0.4)}
#shape-divider .oxy_shape_divider svg{height:136px}
#shape-divider .oxy_shape_divider > svg{left:auto}
#shape-divider .oxy_shape_divider{display:flex;justify-content:center}

/* Pricing highlight */
.price-highlight{font-size:2.5rem;font-weight:700;color:#9b5de5}
.price-original{text-decoration:line-through;opacity:0.6;font-size:1.2rem}
.price-savings{background-color:#9b5de5;color:#fff;padding:5px 15px;border-radius:20px;font-size:0.9rem;margin-top:10px;display:inline-block}

/* =============================================
   PRICING BOXES - 3 Columns Side by Side
   ============================================= */

#section-pricing > .ct-section-inner-wrap {
    padding: 50px 40px;
    align-items: center;
    max-width: 1400px;
}
@media (max-width:1120px) {
    #section-pricing > .ct-section-inner-wrap { padding: 50px 20px; }
}

#pricing-boxes {
    display: flex;
    gap: 25px;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}

.pricing-box-wrapper {
    flex: 1;
    min-width: 280px;
    max-width: 380px;
}

.pricing-box {
    background-color: #fff;
    border-radius: 20px;
    padding: 35px 25px;
    text-align: center;
    height: 100%;
    display: flex;
    flex-direction: column;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
}

.pricing-box:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(155, 93, 229, 0.25);
}

.pricing-trial {
    border: 2px solid #667eea;
    background: linear-gradient(180deg, rgba(102,126,234,0.05) 0%, #fff 100%);
}

.pricing-monthly {
    border: 2px solid #e0e0e0;
}

.pricing-annual {
    border: 3px solid #9b5de5;
    background: linear-gradient(180deg, rgba(155,93,229,0.08) 0%, #fff 100%);
}

.pricing-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #002c3d;
    margin-bottom: 20px;
}

.price-highlight {
    font-size: 3rem;
    font-weight: 700;
    color: #9b5de5;
    line-height: 1.2;
}

.price-period {
    font-size: 1.2rem;
    font-weight: 400;
    color: #666;
}

.price-original {
    text-decoration: line-through;
    color: #999;
    font-size: 1.1rem;
    margin-bottom: 5px;
}

.price-savings {
    background: linear-gradient(135deg, #9b5de5, #667eea);
    color: #fff;
    padding: 8px 20px;
    border-radius: 25px;
    font-size: 0.9rem;
    font-weight: 600;
    margin: 15px 0;
    display: inline-block;
}

.pricing-subtitle {
    font-size: 0.95rem;
    color: #666;
    margin: 15px 0 25px;
}

.pricing-features {
    text-align: left;
    flex-grow: 1;
    margin-bottom: 25px;
}

.pricing-feature {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    gap: 12px;
}

.pricing-feature img {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.pricing-feature span {
    font-size: 0.95rem;
    color: #333;
}

.pricing-btn {
    background-color: rgba(155,93,229,0.15);
    border: 2px solid #9b5de5;
    color: #9b5de5;
    padding: 15px 30px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-block;
    margin-top: auto;
}

.pricing-btn:hover {
    background-color: #9b5de5;
    color: #fff;
    transform: scale(1.02);
}

.pricing-btn-featured {
    background-color: #9b5de5;
    color: #fff;
}

.pricing-btn-featured:hover {
    background-color: #7a3fc4;
}

.recommended-badge {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #9b5de5, #667eea);
    color: #fff;
    padding: 8px 25px;
    border-radius: 25px;
    font-size: 0.85rem;
    font-weight: 600;
    white-space: nowrap;
}

.pricing-note {
    font-size: 0.85rem;
    color: #9b5de5;
    font-weight: 500;
    margin: 15px 0 5px;
    padding: 8px 15px;
    background-color: rgba(155, 93, 229, 0.08);
    border-radius: 8px;
}

.pricing-vat-note {
    text-align: center;
    margin-top: 30px;
    font-size: 0.9rem;
    color: #666;
    font-style: italic;
}

/* Pricing Responsive */
@media (max-width: 1200px) {
    .pricing-box-wrapper {
        min-width: 260px;
        max-width: 340px;
    }
    .pricing-box {
        padding: 30px 20px;
    }
}

@media (max-width: 991px) {
    #pricing-boxes {
        flex-direction: column;
        align-items: center;
    }
    .pricing-box-wrapper {
        width: 100%;
        max-width: 450px;
        min-width: auto;
    }
}

@media (max-width: 479px) {
    .pricing-box {
        padding: 25px 18px;
    }
    .price-highlight {
        font-size: 2.5rem;
    }
    .pricing-title {
        font-size: 1.3rem;
    }
}

/* =============================================
   FAQ SECTION
   ============================================= */

#section-faq {
    background-color: rgba(155,93,229,0.15);
}

#section-faq > .ct-section-inner-wrap {
    padding: 50px 125px;
}

@media (max-width:1120px) {
    #section-faq > .ct-section-inner-wrap { padding: 50px 20px; }
}

/* Header con titolo e immagine affiancati */
.faq-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    margin-bottom: 40px;
}

.faq-header h3 {
    margin: 0;
    font-size: 2rem;
}

#image-faq {
    max-width: 200px;
    height: auto;
}

/* FAQ Grid 2 colonne */
.faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.faq-item {
    background: #fff;
    border-radius: 12px;
    padding: 20px 25px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.faq-item:hover {
    box-shadow: 0 8px 25px rgba(155, 93, 229, 0.15);
    transform: translateY(-3px);
}

.faq-question {
    font-weight: 600;
    color: #002c3d;
    font-size: 1.05rem;
    margin-bottom: 10px;
    position: relative;
    padding-left: 28px;
}

.faq-question::before {
    content: "?";
    position: absolute;
    left: 0;
    top: 0;
    width: 20px;
    height: 20px;
    background-color: #9b5de5;
    color: #fff;
    border-radius: 50%;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.faq-answer {
    color: #555;
    font-size: 0.9rem;
    line-height: 1.6;
    padding-left: 28px;
}

/* FAQ Responsive */
@media (max-width: 991px) {
    .faq-header {
        flex-direction: column;
        gap: 20px;
    }
    #image-faq {
        max-width: 150px;
    }
}

@media (max-width: 767px) {
    .faq-grid {
        grid-template-columns: 1fr;
    }
    #image-faq {
        max-width: 120px;
    }
}

@media (max-width: 479px) {
    .faq-item {
        padding: 15px 18px;
    }
    .faq-question {
        font-size: 1rem;
    }
}

/* =============================================
   CONTACT FORM
   ============================================= */

#div_block-contact-right {
    width: 50%;
    padding: 20px;
}

.contact-form-wrapper {
    background: #fff;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
}

.contact-form-title {
    color: #002c3d;
    margin-bottom: 25px;
    text-align: center;
    font-size: 1.5rem;
}

.contact-form .form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.contact-form .form-group {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.contact-form .form-group.full-width {
    width: 100%;
    margin-bottom: 15px;
}

.contact-form label {
    font-size: 0.9rem;
    font-weight: 600;
    color: #002c3d;
    margin-bottom: 5px;
}

.contact-form input,
.contact-form textarea {
    padding: 12px 15px;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 1rem;
    font-family: inherit;
    transition: border-color 0.3s ease;
}

.contact-form input:focus,
.contact-form textarea:focus {
    outline: none;
    border-color: #9b5de5;
}

.contact-form textarea {
    resize: vertical;
    min-height: 100px;
}

.contact-form .checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-weight: 400;
    font-size: 0.85rem;
    cursor: pointer;
}

.contact-form .checkbox-label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    flex-shrink: 0;
}

.contact-form .checkbox-label a {
    color: #9b5de5;
    text-decoration: underline;
}

.form-submit {
    width: 100%;
    padding: 15px 30px;
    background-color: #9b5de5;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 10px;
}

.form-submit:hover {
    background-color: #7a3fc4;
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(155, 93, 229, 0.4);
}

/* Contact Form Responsive */
@media (max-width: 991px) {
    #div_block-contact-right {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .contact-form .form-row {
        flex-direction: column;
        gap: 0;
    }
    .contact-form .form-group {
        margin-bottom: 15px;
    }
    .contact-form-wrapper {
        padding: 25px 20px;
    }
}

@media (max-width: 479px) {
    .contact-form-wrapper {
        padding: 20px 15px;
    }
}
