/*
    Theme Name: Oxygenserv
    Author: Oxygenserv

    Template: hello-elementor
    Version: 1.0
*/
body {
    overflow-x: hidden !important;
}

.added_to_cart, .ea-line {
    display: none !important;
}

.a2cp_button {
    width: auto !important;
    margin: 0 auto !important;
    background-color: #3146ff !important;
    transition: all 0.15s !important;
    border-radius: 50px !important;
    padding: 15px 40px !important;
    color: #FFF !important;
    font-weight: 600 !important;
    border: none !important;
}

.a2cp_button:hover {
    background-color: #0C145C !important;
    transition: all 0.15s !important;
}

.add-to-cart-pro.subscription_variation{
    text-align: center !important;
}

.elementor-menu-cart__main {
    width: 600px !important;
}

.elementor-menu-cart__product-remove {
    top: 35% !important;
    bottom: auto !important;
}

/* Ultimate Member */

.um.um-register{
    max-width: 100% !important;
}

.um.um-login{
    max-width: 100% !important;
}


.um .um-button{
    border-radius: 3em !important;
    background-color: #3146FF !important;
    transition: all 0.15s !important;
}

.um .um-button:hover{
    background-color: #00063C !important;
    transition: all 0.15s !important;
}

.um-button.um-alt{
    background-color: #EAECFF !important;
    color: #3146FF !important;
    transition: all 0.15s !important;
    box-shadow: none !important;
}

.um-button.um-alt:hover{
    background-color: #3146FF !important;
    color: #FFFFFF !important;
    transition: all 0.15s !important;
}



/* -- */

/* Animation Hover */

.growup{
    transition: all 0.15s;
    /* transform: scale(1); */
}

.growup:hover{
    transition: all 0.15s;
    /* transform: scale(1.050); */
}

/* Custom Title */

#title_home div.part1 {
    font-size: 64px;
    padding: 0 15px;
    margin-bottom: 15px;
}
#title_home div.part2 {
    font-size: 36px;
    opacity: 0.7;
    padding: 0 15px;
}

#title_about span {
    font-size: 1.4em;
}

/* --- */

#bc_shadow{
    text-shadow: 0 5px 10px rgb(0, 0, 0);
}


/* Selection */

::-moz-selection {
    color: #FFFFFF;
    background: #40567d;
}

::selection {
    color: #FFFFFF;
    background: #40567d;
}

.scrolled-header{
    background-color: #FFFFFF !important;
    box-shadow: 0 10px 50px rgba(0,0,0,0.1) !important;
}

/* --- */

/* Override Elementor */

.elementor-icon-list-items .elementor-icon-list-item a span{
    transition: all 0.15s;
}

.elementor-icon-list-items .elementor-icon-list-item a:hover span {
    transition: all 0.15s;
}

.elementor-toggle-item{
    border-radius: 10px;
}

.elementor-toggle-item .elementor-tab-title {
    border-radius: 10px;
}

.elementor-toggle-item .elementor-tab-content {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

/* End Override Elementor */

/* Override Premium Addons */

/* Premium Modal Box */

.premium-modal-box-modal .add-to-cart-pro {
    text-align: center;
}

.premium-modal-box-modal table tbody tr td,
.premium-modal-box-modal table tbody tr th {
    background-color: transparent !important;
}

.premium-modal-box-modal table tbody tr td:hover,
.premium-modal-box-modal table tbody tr th:hover {
    background-color: transparent !important;
}

.premium-modal-box-modal table tbody tr {
    text-align: left;
}

.premium-modal-box-modal .label.abovefield .label-tag,
.label.abovefield abbr {
    font-weight: 700;
}

.premium-modal-box-modal .thwepof-input-field {
    margin-top: 5px;
    background-color: #FFFFFF;
}

.premium-modal-box-modal .price{
    font-size: 28px;
    font-weight: 700;
    background-color: #77a4641f;
    display: inline;
    padding: 10px 35px;
    border-radius: 5px;
    margin-bottom: 15px;
    display: block;
}

.premium-modal-box-modal .woocommerce-variation-price{
    text-align: center;
}

/* End Premium Modal Box */

.premium-bullet-list-box {
    padding: 0 !important;
}

.premium-blog-thumb-effect-wrapper, .premium-blog-content-wrapper{
    border-radius: 15px;
}

#tab_home .premium-tabs-nav.horizontal{
    margin: 0 35%;
}

#tab_offers .premium-tabs-nav.horizontal{
    max-width: 360px;
    margin: 0 auto;
}

#tab_offers .premium-tabs-nav.horizontal .premium-tabs-nav-list {
    box-shadow: 0 10px 50px rgba(0, 0, 0, 0.1);
    border-radius: 100px;
}

#tab_offers .premium-tabs-nav.horizontal .premium-tabs-nav-list li:first-child a {
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
}

#tab_offers .premium-tabs-nav.horizontal .premium-tabs-nav-list li:last-child a {
    border-top-right-radius: 100px;
    border-bottom-right-radius: 100px;
}

.premium-content-toggle-container .premium-content-toggle-two-content{
    overflow: visible !important;
}

.premium-tabs .premium-tab-content{
    overflow: visible !important;
}

#tab_faq .premium-tabs-nav-list-item{
    margin-bottom: 15px;
}

.premium-twentytwenty-handle{
    padding: 25px !important;
}

/* .premium-images-compare-container{
    overflow: hidden !important;
    height: 0 !important;
    padding-top: 56.25% !important;
} */



/* End Premium Addons */

/* Cookie Law */

.cli-modal-backdrop.cli-show {
    opacity: 0.7;
}

#cookie-law-info-bar {
    width: 750px !important;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0 !important;
    border-radius: 15px;
    padding: 35px 15px !important;
    font-weight: 400;
    box-shadow: 0 10px 50px rgba(0, 0, 0, 0.25);
}

.cli-modal-content {
    border-radius: 6px;
}

#cookie-law-info-bar br {
    display: none;
}

#cookie-law-info-bar:before {
    content: '';
    background-image: url(/wp-content/uploads/2022/06/oxygenserv.svg);
    margin: 0 auto;
    height: 75px;
    width: 185px;
    background-size: contain;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    display: block;
}

#cookie-law-info-bar span div {
    padding: 0 50px;
    color: #6a7c92;
}

#wt-cli-reject-btn,
.cli_settings_button {
    border-radius: 50px;
    padding: 15px 35px;
}

#wt-cli-accept-all-btn,
.cli_settings_button {
    border-radius: 50px;
    padding: 15px 35px;
}

#wt-cli-accept-all-btn {
    margin-top: 25px;
}

.cli-tab-footer .wt-cli-privacy-accept-btn {
    background-color: #3146ff;
    border-radius: 50px;
}

.cli-tab-footer .wt-cli-privacy-accept-btn:hover {
    background-color: #3146ff;
    color: #FFFFFF;
    border-radius: 50px;
}

.wt-cli-manage-consent-link {
    padding: 15px 35px;
    background-color: #3146ff;
    color: #FFFFFF !important;
    text-decoration: none !important;
    display: inline-block;
    cursor: pointer;
    border-radius: 50px;
}

.wt-cli-manage-consent-link:hover {
    color: #FFF;
}

/* End Cookie Law */

/* Responsive */

/* Tablet */
@media screen and (max-width: 1024px) {
    /* .bdt-tab-title-icon-wrapper i {
        font-size: 24px;
    } */

    #cookie-law-info-bar span div {
        padding: 0 15px;
    }
    .growup {
        transition: all 0s;
        transform: scale(1);
    }

    .growup:hover {
        transition: all 0s;
        transform: scale(1);
    }
}

/* Mobile */
@media screen and (max-width: 767px) {
    #cookie-law-info-bar:before {
        width: 75%;
    }
    
    #cookie-law-info-bar {
        width: 90% !important;
    }
    #title_about span {
        font-size: 1em;
    }
    #title_home br{
        display: none;
    }
    #tab_home .premium-tabs-nav.horizontal {
        margin: 0 2.5%;
    }
    /* .bdt-tab-title-icon-wrapper {
        flex-direction: row;
    }
    .bdt-tab-title-icon-wrapper i {
        font-size: 14px;
    } */
}

.sld-ap-form_box {
    padding: 30px !important;
    width: 100%;
    border: 1px solid var(--sld-ap-border-color);
    border-radius: 15px !important;
}

.sld-ap-form_box h2 {
    display: none !important
}

.sld_title-text {
    font-weight: 500;
}

.sld-ap-form_login {
    background: #3146FF!important;
    font-size: 15px !important;
    font-weight: 500;
    color: #fff !important;
    padding: 15px 20px;
    border: none !important;
    border-radius: 5px;
    transition: background 0.3s;
}


.button button-primary {
    background: #3146FF!important;
    font-size: 15px !important;
    font-weight: 500;
    color: #fff !important;
    padding: 15px 20px !important;
    border: none !important;
    border-radius: 5px !important;
    transition: background 0.3s !important;
}

.sld-ap-form_notice success {
    display:none !important;
}

.sld-ap-form_submit {
    background: #3146FF!important;
    font-size: 15px !important;
    font-weight: 500;
    color: #fff;
    padding: 15px 20px;
    border: none !important;
    border-radius: 5px;
    transition: background 0.3s;
}

.sld-ap-form_submit:hover {
    background: #202ba1 !important;
}

.card .sld-store-credit-transaction-type.sld-debit {
    color: black !important;
}

.location-serveur-widget .product-item a {
    font-size: 16px;
    color: #6B7280;
    text-decoration: none;
}

.location-serveur-widget .product-item a:hover {
    color: #FFFFFF; /* Blanc */
    text-decoration: none;
}

/* FAQ Game Widget - Version Elementor */
div.game-faq-wrapper {
    max-width: 900px !important;
    margin: 3rem auto !important;
    padding: 0 1rem !important;
    background: transparent !important;
    border: none !important;
}

h2.game-faq-title {
    text-align: center !important;
    font-family: "Inter", Sans-serif !important;
    font-size: 2.4em !important;
    font-weight: 400 !important;
    margin-bottom: 2rem !important;
    margin-top: 0 !important;
    color: inherit !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    line-height: 1.3 !important;
}

div.faq-items-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 1rem !important;
    margin: 0 !important;
    padding: 0 !important;
}

div.faq-single-item {
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    border: 1px solid #e5e7eb !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    margin: 0 !important;
    padding: 0 !important;
}

div.faq-single-item:hover {
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15) !important;
    border-color: #3b82f6 !important;
}

button.faq-question-btn {
    width: 100% !important;
    text-align: left !important;
    padding: 1.5rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 1rem !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    transition: background-color 0.2s ease !important;
    font-family: inherit !important;
    margin: 0 !important;
    box-shadow: none !important;
}

button.faq-question-btn:hover {
    background-color: #f9fafb !important;
}

button.faq-question-btn:focus {
    outline: none !important;
    background-color: #f3f4f6 !important;
    box-shadow: none !important;
}

h3.faq-question-text {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    color: #111827 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
    flex: 1 !important;
    min-width: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

span.faq-icon-wrapper {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    color: #3b82f6 !important;
    transition: transform 0.3s ease !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    display: block !important;
}

div.faq-single-item.active span.faq-icon-wrapper {
    transform: rotate(180deg) !important;
}

span.faq-icon-wrapper svg {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
}

div.faq-answer-wrapper {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

div.faq-single-item.active div.faq-answer-wrapper {
    max-height: 800px !important;
}

div.faq-answer-content {
    padding: 0 1.5rem 1.5rem 1.5rem !important;
    margin: 0 !important;
    color: #4b5563 !important;
    line-height: 1.7 !important;
    font-size: 1rem !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

div.faq-answer-content p {
    margin: 0 !important;
    padding: 0 !important;
    color: #4b5563 !important;
    line-height: 1.7 !important;
}

div.faq-single-item.active div.faq-answer-content {
    animation: fadeInFAQ 0.4s ease-in !important;
}

@keyframes fadeInFAQ {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive */
@media (max-width: 768px) {
    div.game-faq-wrapper {
        margin: 2rem auto !important;
    }
    
    h2.game-faq-title {
        font-size: 1.75em !important;
        margin-bottom: 1.5rem !important;
    }
    
    h3.faq-question-text {
        font-size: 1rem !important;
    }
    
    button.faq-question-btn {
        padding: 1.25rem !important;
    }
    
    div.faq-answer-content {
        padding: 0 1.25rem 1.25rem 1.25rem !important;
        font-size: 0.95rem !important;
    }
    
    span.faq-icon-wrapper {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        min-height: 24px !important;
    }
}

@media (max-width: 480px) {
    div.game-faq-wrapper {
        margin: 1.5rem 0.5rem !important;
    }
    
    h2.game-faq-title {
        font-size: 1.5em !important;
    }
    
    button.faq-question-btn {
        padding: 1rem !important;
        gap: 0.75rem !important;
    }
    
    div.faq-answer-content {
        padding: 0 1rem 1rem 1rem !important;
    }
}

/* Force box-sizing */
.game-faq-wrapper *,
.game-faq-wrapper *::before,
.game-faq-wrapper *::after {
    box-sizing: border-box !important;
}

/* Checkout - Sections personnalisées */
.os-checkout-gamemode-section {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
}

.os-checkout-gamemode-section .os-section-title {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.os-checkout-backup-section {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.os-checkout-backup-section h3 {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 1rem 0;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #e2e8f0;
}

.os-checkout-gamemode-section .form-row,
.os-checkout-backup-section .form-row {
    margin-bottom: 0.75rem;
}

.os-checkout-gamemode-section .form-row:last-child,
.os-checkout-backup-section .form-row:last-child {
    margin-bottom: 0;
}

.os-checkout-gamemode-section select,
.os-checkout-backup-section select {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background-color: #fff;
    font-size: 0.95rem;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.os-checkout-gamemode-section select:focus,
.os-checkout-backup-section select:focus {
    border-color: #3146ff;
    box-shadow: 0 0 0 3px rgba(49, 70, 255, 0.1);
    outline: none;
}

.os-checkout-gamemode-section label,
.os-checkout-backup-section label {
    font-weight: 500;
    color: #475569;
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
    display: block;
}

/* Checkout - Section paiement harmonisée */
.woocommerce-checkout #payment {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 1rem 1.25rem !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    margin-bottom: 0.5rem !important;
    padding: 0.75rem 1rem !important;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child {
    margin-bottom: 0 !important;
}

.woocommerce-checkout #payment .payment_box {
    background: transparent !important;
    padding: 0.75rem 0 0 0 !important;
    margin: 0 !important;
}

.woocommerce-checkout #payment .payment_box::before {
    display: none !important;
}

/* Checkout - Bouton de commande */
.woocommerce-checkout #place_order {
    background: #3146ff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 1rem 2rem !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    width: 100% !important;
    margin-top: 1rem !important;
    transition: background 0.2s !important;
}

.woocommerce-checkout #place_order:hover {
    background: #0c145c !important;
}