/*
 Theme Name:   Web Frontalier Child
 Theme URI:    https://web-frontalier.com/
 Description:  Web Frontalier Child Theme
 Author:       Driss BATECH
 Author URI:   http://apusthemes.com
 Template:     web-frontalier
 Version:      1.0.0
 Text Domain:  superio-child
*/
/* ===========================================
Defaults 
============================================== */
.wf-mark {
    color: #fff;
    background-color: var(--e-global-color-secondary);
    font-style: italic;
    padding: 0 5px;
    /* border-radius: 10px; */
}


/* remove text spaces inside text editor */
.elementor-widget-text-editor p:last-child {
    margin-bottom: 0px;
}

.green-color {color: #28A745 !important;}
.red-color {color: #DC3545 !important;}
.link {color:blue !important;font-weight: 500;}
a.link:after {
    content: "\e940";
    font-family: 'webfrontalier' !important;
    padding: 3px;
    border-radius: 50%;
    font-size: 11px;
    font-weight: bold;
    margin-left: 4px;
}
/* Global colors */
.elementor-text-color-secondary {color: var(--e-global-color-secondary);}

/* Defaults media queries */
@media (max-width: 767px) {
    .sm-inline {display: inline !important;}
}

/* =========================================== 
Mobile header 
=============================================*/
/* Login btn */
.wf-login a.btn-login {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    font-weight: bold;
    border: 1px solid var(--e-global-color-primary);
    width: 45px;
    height: 45px;
}

.wf-login a.btn-login:focus {
    background: rgba(50, 33, 101, 0.07);
    color: var(--e-global-color-primary);
    border: 1px solid var(--e-global-color-primary);
}
.wf-login .infor-account {gap: 10px;}
.wf-login.top-wrapper-menu .inner-top-menu {right: 8px;}
.wf-login.top-wrapper-menu .inner-top-menu .name-account {
    font-size:16px;
    font-weight: 500;
    text-align: center;
    padding: 12px 0;
    border-bottom: 1px solid #f1f1f1;
    margin-bottom:10px
}
/* Menu */
.apus-offcanvas {
    background-color: #F5F5FE;
}

.apus-offcanvas-body .navbar-offcanvas ul li a {
    color: #322165;
    font-size: 1.5rem;
    font-weight: 600;
}

.apus-offcanvas-body .navbar-offcanvas .sliding-menu .sliding-menu__panel:first-child li.active > a {
    background-color: #cbc8ff !important;
}

/* Off-canvas Contact Info */
.off-canvas-contact-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    background: #cbc8ff !important;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.off-canvas-contact-info .contact-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.off-canvas-contact-info .contact-item a {
    text-decoration: none;
    color: #322164 !important;
    font-size: 1.5rem;
    font-weight: 600;
    transition: text-decoration 0.2s;
}

.off-canvas-contact-info .contact-item a:hover {
    text-decoration: underline;
}

.off-canvas-contact-info .contact-item i {
    color: #322164;
    border: 2px solid #afabe6;
    font-size: 1.8rem;
    font-weight: 600;
    background: #fff;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* offcanvas social */
.header-mobile-bottom .widget_apus_socials_widget ul {
    display: flex;
    gap: 15px;
    justify-content: center;
    width: 100%;
    border-radius: 10px;
}

.header-mobile-bottom .widget_apus_socials_widget ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #322164;
    color: #fff;
    font-size: 18px;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.5);
}

.header-mobile-bottom .widget_apus_socials_widget ul li {margin: 0;}

/* Login */
a.apus-user-login.btn-icon-login {
    padding: 5px 12.5px;
    border-radius: 50%;
    border: 3px solid #322165;
}


/* Register shortcode styles =========== */


/*
#cmb2-metabox-_candidate_register_fields .col-md-6 {
    flex: 0 0 calc(50% - 5px);
    box-sizing: border-box;
}
#cmb2-metabox-_candidate_register_fields .col-md-12 {
    flex: 0 0 100%;
    box-sizing: border-box;
}
#cmb2-metabox-_candidate_register_fields [class*="col-md-"] {
    padding: 0 !important;
}
@media (max-width: 768px) {
    #cmb2-metabox-_candidate_register_fields .col-md-6 {
        flex: 0 0 100%;
    }
}


 .cmb-row.cmb-type-pw-select.cmb2-id-phone-prefix {
    flex: 0 0 115px;
}

.cmb-row.cmb-type-text.cmb2-id--candidate-phone.table-layout {
    flex: 1 1 auto;
}

.cmb-row.cmb-type-pw-select.cmb2-id-phone-prefix .select2-selection__rendered {
    padding: 5px 10px !important;
}

.cmb-row.cmb-type-pw-select.cmb2-id-phone-prefix .select2-selection.select2-selection--single {
    padding-right: 10px!important;
}

.cmb-row.cmb-type-pw-select.cmb2-id-phone-prefix .select2-selection__arrow {
    right:5px !important;
}    */
/* Timeline */
/* this code in home page */
.timeline-container .tl-vline-container {
    position: absolute;
}

.timeline-container .tl-vline-container .tl-vline .elementor-widget-container {
    max-height: 85% !important;
}

/* this code is in /nos-themes/demande-de-pdu1-u1/ */
.timeline-container {counter-reset: step-counter;}
.timeline-container .tl-content-item .tl-step {counter-increment: step-counter;}
.timeline-container .tl-content-item .tl-step .tl-icon-num {position:relative;}
.timeline-container .tl-content-item .tl-step .tl-icon-num .elementor-icon {background: linear-gradient(135deg, var(--e-global-color-primary) 0%, #000 100%);}
.timeline-container .tl-content-item .tl-step .tl-icon-num.tl-icon-green .elementor-icon {background: #1bbf5c;}
.timeline-container .tl-content-item .tl-step .tl-icon-num::after {
  content: counter(step-counter);
  position: absolute;
  top: -5px;
  right: -5px;
  display: inline-block;
  background: #fff;
  color: var(--e-global-color-primary);
  border: 2px solid var(--e-global-color-primary);
  font-size: 18px;
  font-weight: bold;
  width: 30px;
  height: 30px;
  line-height: 28px;
  text-align: center;
  border-radius: 50%;
}

.timeline-container .tl-content-item .tl-step .tl-icon-num.tl-icon-green::after {display: none;}


/* Price box */
.pricing-text h3.elementor-headline.e-animated span:not(:nth-child(2)) {
    display: block;
}

.pricing-text h3.elementor-headline.e-animated span:nth-child(2) {font-size: 5rem;}

.pricing-text h3.elementor-headline.e-animated {line-height: 5.2rem;}
.pricing-text h3.elementor-headline.e-animated span:nth-child(2) svg {
    width: calc(100% + 45px) !important;
    height: calc(100% + 25px) !important;
}
/* Accordion 1 */
.wf-accordion details.e-n-accordion-item {
    border: 2px solid var(--e-global-color-primary);
    border-radius: 8px;
}

/* Accordion 2 */

:is(.wf-accordion2, .wf-accordion3) .e-n-accordion details.e-n-accordion-item summary.e-n-accordion-item-title[aria-expanded="true"] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.wf-accordion2 .e-n-accordion details.e-n-accordion-item summary.e-n-accordion-item-title:hover * {
    color:#fff !important
}

:is(.wf-accordion2, .wf-accordion3) .e-n-accordion details.e-n-accordion-item summary.e-n-accordion-item-title {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

:is(.wf-accordion2, .wf-accordion3).e-n-accordion details.e-n-accordion-item {box-shadow: 0 2px 12px rgba(45, 0, 104, 0.06);}

/* Pricing Table */
.wf-pricing-table .elementor-price-table__features-list .elementor-price-table__feature-inner {display: flex;}
.wf-pricing-table .elementor-price-table__header span.elementor-price-table__subheading {
    line-height: 22px !important;
    display: block;
    width: 300px;
    margin: 0 auto;
}

.wf-pricing-table .elementor-price-table__header .elementor-price-table__heading {
    margin-bottom: 10px !important;
}


/* themes custom tabs (used in /nos-themes/banque-change/)*/
.wf-theme-tabs .e-n-tabs .e-n-tabs-heading button[aria-selected="false"]:hover {
    background-color: #F5F5FE !important;
    color: #171717 !important;
    border: 1px solid #02020221 !important;
    box-shadow: 0px 2px 12px 0px rgba(44.99, 0, 104, 0.06);
}
.wf-theme-tabs .e-n-tabs-heading button.e-n-tab-title[aria-selected="true"]::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    bottom: -14px;
    left: 50%;
    margin-left: -15px;
    z-index: 5;
}

.wf-theme-tabs .e-n-tabs-heading button#red-tab[aria-selected="true"] {background: #DC3545 !important;}
.wf-theme-tabs .e-n-tabs-heading button#red-tab[aria-selected="true"]::after {border-top: 15px solid #DC3545;}

/* .wf-theme-tabs .e-n-tabs-heading button#blue-tab[aria-selected="true"] {background: #58c6f1 !important;}
.wf-theme-tabs .e-n-tabs-heading button#blue-tab[aria-selected="true"]::after {border-top: 15px solid #58c6f1;} */

.wf-theme-tabs .e-n-tabs-heading button#blue-tab[aria-selected="true"] {background: #007BFF !important;}
.wf-theme-tabs .e-n-tabs-heading button#blue-tab[aria-selected="true"]::after {border-top: 15px solid #007BFF;}

.wf-theme-tabs .e-n-tabs-heading button#green-tab[aria-selected="true"] {background: #28a745 !important;}
.wf-theme-tabs .e-n-tabs-heading button#green-tab[aria-selected="true"]::after {border-top: 15px solid #28a745;}

.wf-theme-tabs .e-n-tabs-heading button#purple-tab[aria-selected="true"] {background: var(--e-global-color-primary) !important;}
.wf-theme-tabs .e-n-tabs-heading button#purple-tab[aria-selected="true"]::after {border-top: 15px solid var(--e-global-color-primary);}

/* Box-shadow with border */
.wf-shadow-box::after {
  content: '';
  position: absolute;
  top: 6px;
  left: 6px;
  width: 100%;
  height: 100%;
  border: 1px solid var(--e-global-color-primary);
  border-radius: 15px;
  z-index: 0;
  background: transparent;
}

.wf-shadow-box:hover::after {
  top: 0px;
  left: 0px;
  z-index: -1;
}

.wf-shadow-box:hover h2 {
    color: var(--e-global-color-primary) !important;
}

.wf-shadow-box:hover .box-shadow-icon svg path {fill: var(--e-global-color-secondary) !important;}
.wf-shadow-box:hover .box-shadow-link-icon .elementor-icon-wrapper .elementor-icon i {color: var(--e-global-color-primary) !important;}


@media (max-width: 767px) {
    .timeline-container .tl-vline-container {
        position: relative;
    }
    .timeline-container .tl-vline-container .tl-vline .elementor-widget-container {
        max-height: 80% !important;
    }
    /* icons aligning */
    .timeline-container .tl-left-icon .elementor-divider {
        text-align: left !important;
    }


    .timeline-container .tl-left-icon .elementor-divider-separator:after {
        border-block-end: 0;
        content: "";
        display: block;
        flex-grow: 1;
    }

    .timeline-container .tl-left-icon .elementor-divider-separator:before {
        display: none;
    }

    .timeline-container .tl-left-icon {
        left: -67px !important;
        right: unset !important;
    }
}


/* ==============================
Infos legales accordions
================================= */
.wf_accordion .e-n-accordion {
    counter-reset: accordion-counter;
}

/* Style the summary and ensure alignment */
.wf_accordion .e-n-accordion details summary {
    display: flex;
    align-items: center;
    text-align: left;
    margin: 0;
    gap: 8px; /* Space between elements */
    justify-content: space-between;
}

/* Ensure the title takes 90% of the width */
.wf_accordion .e-n-accordion details summary .e-n-accordion-item-title-header {
    display: flex;
    align-items: center;
}

/* Ensure the icon takes 10% of the width */
.wf_accordion .e-n-accordion details summary .e-n-accordion-item-title-icon {
    display: flex;
    justify-content: center; /* Pushes icon to the right */
}

/* Add incremented number before text */
.wf_accordion.accordion_number_count .e-n-accordion details summary .e-n-accordion-item-title-header::before {
    counter-increment: accordion-counter;
    content: counter(accordion-counter);
    font-weight: bold;
    margin-right: 5px;
    background: #ffffff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    text-align: center;
    line-height: 40px;
    font-size: 25px;
    border: 2px solid #bababa;
    min-width: 40px;
}
.wf_accordion .e-n-accordion details summary .e-n-accordion-item-title-header .e-n-accordion-item-title-text {
    margin: 0;
}

.wf_accordion h3 {
    font-family: inherit;
    font-size: 17px;
    color: var(--e-global-color-primary);
    font-weight: 900;
}

.wf_accordion details.e-n-accordion-item[open] summary .e-n-accordion-item-title-header h2 {
    color:#fff;
}

.wf_accordion details.e-n-accordion-item[open] summary .e-n-accordion-item-title-icon .e-opened i {
    color:#fff;
}


/* ==============================
Articles
================================= */

/* Post grid */
.post-avatar-date ul.elementor-post-info li span.elementor-icon-list-text {
    display: flex;
    flex-direction: column-reverse;
    gap: 0px;
    align-items: flex-start;
}

nav.elementor-pagination span.page-numbers.current {
  position: relative;
  display: inline-block;
}

nav.elementor-pagination span.page-numbers.current::before,
nav.elementor-pagination span.page-numbers.current::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 20px;
  height: 8px;
  border: 3px solid var(--e-global-color-primary);
  transform: translateX(-50%);
}

nav.elementor-pagination span.page-numbers.current::before {
  top: 0;
  border-bottom: none; /* open side down */
}

nav.elementor-pagination span.page-numbers.current::after {
  bottom: 0;
  border-top: none;
}

/* ==============================
Footer
================================= */
form.wpcf7-form {max-width: 100% !important;}

/* ==============================
Footer
================================= */
/* newsletter */
.newsletter input {color: #53575B !important;} 
/* Menu */
.footer_menu li[class^="icon-"] > a::before {
    content: '';
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    background-color: transparent !important;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 6px;
    vertical-align: sub;
    transform: unset !important;
    position: unset !important;
}

/* .footer_menu li[class^="icon-"] a:hover {padding-left:5px !important;} */

.footer_menu ul.menu li:hover:before, .footer_menu ul.menu li.current-menu-item.active:before {width: 8px !important;}
.footer_menu ul.menu li:before, .footer_menu ul.menu li.current-menu-item.active:before {
    content: '';
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 2px;
    background: #fff;
    transition: width 0.3s ease;
    border-radius: 1px;
}
.footer_menu ul.menu li {
    display: flex;
    align-items: center;
    padding: 3px 0px;
    transition: all 0.3s ease;
    border-radius: 8px;
    position: relative;
    transition-delay: 0.1s;
}
.footer_menu ul.menu li a {display: flex !important;align-items: center;width: 100%;}
.footer_menu ul.menu li:hover, .footer_menu ul.menu li.current-menu-item.active {background: rgba(255, 255, 255, 0.05);transform: translateX(5px);}
.footer_menu ul.menu li:hover a, .footer_menu ul.menu li.current-menu-item.active a {padding-left: 8px !important;}
.footer_menu ul.menu li:hover i {transform: scale(1.2);color: #fff;}
/*  */

.footer_menu li.icon-ml > a::before {
    background-image: url('/wp-content/uploads/2025/07/ml-icon.svg');
}

.footer_menu li.icon-cgu > a::before {
    background-image: url('/wp-content/uploads/2025/07/cgu-icon.svg');
}

.footer_menu li.icon-pc > a::before {
    background-image: url('/wp-content/uploads/2025/07/pc-icon.svg');
}

.footer_menu li.icon-cgv > a::before {
    background-image: url('/wp-content/uploads/2025/07/cgv-icon.svg');
}

.footer_menu li.icon-worktogether > a::before {
    background-image: url('/wp-content/uploads/2025/07/worktogether-icon.svg');
}

.footer_menu li.icon-similateur-white > a::before {
    background-image: url('/wp-content/uploads/2025/07/similateur-white-icon.svg');
}

.footer_menu li.icon-contact > a::before {
    background-image: url('/wp-content/uploads/2025/07/contact-icon.svg');
}

.footer_menu li.icon-about > a::before {
    background-image: url('/wp-content/uploads/2025/07/about-icon.svg');
}

.footer-logo {margin: 0 !important;}
.footer_menu h4.widget-title, .footer-logo h3 {
    position: relative;margin-bottom: 50px;
}
.footer_menu h4.widget-title::after, .footer-logo h3::after {
    content: '';
    position: absolute;
    top: 45px;
    left: 0;
    width: 45px;
    height: 5px;
    background: linear-gradient(90deg, var(--e-global-color-secondary), #f5f5fe);
    border-radius: 10px;
}
/* copyright footer */
.copyright-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 220px;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--e-global-color-secondary), transparent);
}




/* dashboard menu ===================================== */

/* Group heading style */
.menu-group {
    margin-top: 10px;
}
.menu-group > a {
    font-weight: 600;
    font-size:17px;
    pointer-events: none;
    border-left: 3px solid var(--e-global-color-primary);
    border-radius: 0 !important;
    background: linear-gradient(to right, #F5F5FE, #fff) !important;
    cursor: default;
    color: var(--e-global-color-primary) !important;
}

/* Show submenu always */
.menu-group > ul.dropdown-menu {
    display: block !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    /* padding-left: 20px; */
    box-shadow: none !important;
    border: none;
}

/* Optional: submenu link style */
.wf-login .topmenu-menu > li > a, .menu_short_profile li > a, .menu-group > ul.dropdown-menu > li > a {
    font-weight: normal;
    display: inline-flex;
    align-items: center;
    line-height: 2;
    width: 100%;
    gap: 8px;
}

.wf-login .topmenu-menu > li > a i,
.menu_short_profile li > a i,
.menu-group > ul.dropdown-menu > li > a i {
    display: inline-flex;
    align-items: center;
    line-height: 0;
    margin-right: 0 !important;
}

.menu-group > ul.dropdown-menu > li > a:hover {
    background-color: #3221651a !important;
    color: var(--e-global-color-primary) !important;
}

.menu_short_profile li a i {margin-bottom: 3px;}

/* Remove caret icon */
.menu-group > a > .caret {
    display: none;
}






/* dashboard - packages */
.wf-pricing-table.wf-packages {
    overflow:unset !important;
    height: 100%;
}
.wf-pricing-table.wf-packages .elementor-price-table__header {
    border-radius:12px 12px 0 0;
}

.wf-pricing-table.wf-packages .feature-tooltip {
    position: relative;
    display: inline-block;
    margin-left: 6px;   /* space after the text */
}

.wf-pricing-table.wf-packages .feature-tooltip .wf-info {
    background: var(--e-global-color-primary);
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    padding: 3px;
    border-radius: 50%;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.wf-pricing-table.wf-packages .feature-tooltip-txt {
    display: none;
    position: absolute;
    left: 50%;
    bottom: 130%;
    transform: translateX(-50%);
    min-width: 220px;
    background: #fff;
    color: #77838F !important;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(45, 0, 104, 0.13);
    padding: 8px 12px;
    font-size: 14px;
    white-space: normal;
    z-index: 9999;
}

.wf-pricing-table.wf-packages .feature-tooltip:hover .feature-tooltip-txt,
.feature-tooltip:focus-within .feature-tooltip-txt {
    display: block;
}


.wf-pricing-table.wf-packages.wf-packages-dark .feature-tooltip .wf-info {
    background: #fff;
    color: var(--e-global-color-primary);
}

.wf-pricing-table.wf-packages.wf-packages-dark .elementor-price-table__ribbon-inner {
    transform: unset !important;
    width: 100%;
    margin: 0 !important;
    padding: 5px 12px !important;
    border-radius: 30px !important;
    box-shadow: 0 2px 8px rgba(45, 0, 104, 0.10);
    border: 1px solid var(--e-global-color-primary);
}

.wf-pricing-table.wf-packages.wf-packages-dark .elementor-price-table__ribbon {
    top: -20px;
    left: 50%;
    text-align: center;
    transform: translateX(-50%) !important;
    width: 200px;
    height: 34px;
}

.wf-pricing-table.wf-packages.wf-packages-dark .elementor-price-table__header {
    border-bottom:2px solid #461685;
}


/* Main flex container: column layout and full height */
.wf-pricing-table.wf-packages .elementor-price-table {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

/* Footer pushed to bottom */
.wf-pricing-table.wf-packages .elementor-price-table .elementor-price-table__footer {
    margin-top: auto; /* pushes footer to the bottom */
}