/*
Theme Name: Oceanwp Enfant
Description: Theme enfant de Oceanwp.
Author: Kunda Webdev
Author URI: https://kunda.ovh
Template: oceanwp
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');

/********************** Général ***********************************************/
.text-center {
    text-align: center;
}

.display-none {
    display: none!important;
}


.color-green {
    color: #0F7175!important;
}

.col-3 {
    display: inline-flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;  
    gap: 40px;
}

.subcol {
    flex: 1;
}

.a-btn {
    display: flex;
    align-content: center;
    justify-content: center;
    text-transform: uppercase;
    margin: 20px 0;
    padding: 11px 20px;
    font-weight: bold;
    background-color: #F3F3F3;
    border-radius: 10px;
    box-shadow: 0px 20px 25px 0px #0000001A!important;
}

.toggle {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 20px;
}

.pmpro-level > div {
    width: calc(100% - 60px);
}

.toggle input {
    display: none;
}

.toggle-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #D9D9D9;
    transition: 0.4s;
    border-radius: 34px;
}

.toggle-slider:before {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    transition: 0.4s;
    border-radius: 50%;
}

input:checked + .toggle-slider {
    background-color: var(--wp-admin-theme-color, #0F7175);
}

input:checked + .toggle-slider:before {
    transform: translateX(20px);
}

.text-separator {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 20px 0 50px;
}

.text-separator .line {
    flex: 1;
    height: 1px;
    background-color: #7C7C7C;
    border: none;
}

.text-separator .text {
    padding: 0 10px;
    color: #7C7C7C;
    font-weight: 700;
    font-family: 'Montserrat';
    font-size: 14px;
}

.padding-b18 {
    padding-bottom: 18px!important;
}

input:focus, 
textarea:focus, 
select:focus, 
button:focus, 
a:focus,
a.elementor-button:focus,
a.btn-grey:focus,
.field-a-btn a:focus,
nav a:focus {
    border: none !important;
    outline: none !important;
    outline-width: 0 !important;
}

input:focus, 
textarea:focus, 
select:focus, 
button:focus, 
a:focus {
/*    background-color: transparent !important;*/
}

a.btn-grey:focus {
    background-color: white!important;
}

.menu-right a:focus {
    background: white !important;
    outline: unset !important;
}

.elementor-post__badge  {
    font-size: 12px!important;
    font-family: 'Montserrat'!important;
    font-weight: bold!important;
}

button.btn-retour {
    background: white;
    height: 40px;
    width: 40px;
    border-radius: 50%;
}

button.btn-retour i {
    font-size: 26px;
    opacity: 30%;
}

.wpp-post-title,
.elementor-post__title {
    line-height: 24px;
}

.wpp-excerpt,
.elementor-post__excerpt p,
.elementor-post__card .sub-title {
    line-height: 19px!important;
}

.cbxwpbkmarkwrap {
    background: white;
    border-radius: 50%;
    padding: 3px 6px 3px 6px;
    box-shadow: 0px 20px 25px 0px #0000001A;
}

/* Hover Effect ***************************************************************/
/* Bouton Grey */
.btn-grey:hover,
.a-btn:hover {
    color:#1E1E1E;
}

.btn-grey:hover,
.a-btn:hover,
.menu-cta a:hover,
.btn-grey-container a:hover,
header .elementor-menu-toggle:hover,
header .elementor-button:hover,
.cmplz-btn:hover,
#loginform .login-submit input#wp-submit:hover,
.pole-position .elementor-post__read-more:hover,
.pmpro-cancel .pmpro_btn-cancel:hover {
    background-color: #C2C2C2!important;
    border-color:  #C2C2C2!important;
    animation-timing-function: ease-out!important;
    animation-duration: 300ms!important;
}

/* Bouton Green */
.btn-green:hover,
.contact-form-container .wpcf7-submit.has-spinner:hover,
.pmpro_btn-submit-checkout:hover,
.pmpro_btn-submit-change-password:hover,
.pmpro-cancel .pmpro_btn-submit:hover {
    background-color: #002C2C!important;
    border-color:  #002C2C!important;
    animation-timing-function: ease-out!important;
    animation-duration: 300ms!important;
}

/* Bouton red */
.btn-red:hover {
    background-color: #600000!important;
    border-color:  #600000!important;
    animation-timing-function: ease-out!important;
    animation-duration: 300ms!important;
}

/* Bouton yellow */
.btn-yellow:hover {
    background-color: #AA5611!important;
    border-color:  #AA5611!important;
    animation-timing-function: ease-out!important;
    animation-duration: 300ms!important;
}

/* Etiquettes */
.post-categories a:hover {
    border: solid 1px #B5B6BA!important;
    background: #7C7C7C80!important;
    color: #002C2C!important;
    animation-timing-function: ease-in-out;
    animation-duration: 300ms;
}

/* Lire ce numéro */
.btn-lire-numero:hover,
.all-posts a:hover {
    background-color: #C2C2C2!important;
    border-color:  #C2C2C2!important;
    color: #000!important;
  
}

/******************************************************************************/
/**************************** Header / Footer *********************************/
/******************************************************************************/
header {
    border: 0!important;
}

header div {
    margin-bottom: 0 !important;
}

.header-panel {
    width: 100% !important;
    padding: 0 !important;
}

.menu-main {
    margin: 0 !important;
}

header .e-con-inner {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

header .header-logo {
    position: relative;
    top: 20px;
    margin-top: -20px;
}

.account-btn a {
    padding: 9px 16px;
}

p.sib-email-area {
    display: flex;
    flex-direction: row;
    width: 100%;
    margin: 0;
}

input.sib-email-area {
    background-color: white !important;
    border-radius: 10px 0 0 10px !important;
}

button.sib-default-btn {
    border-color: #002C2C !important;
    background-color: #002C2C!important;
    border-radius: 0 10px 10px 0 !important;
}

.sib-default-btn img.btn-icon {
    width: 24px;
}

.sib_loader {
    display: none!important;
}

.menu-right svg {
    width: 22px !important;
    height: 22px !important;
}

/* Menus du header ************************************************************/
.menu-header .elementor-menu-toggle {
    border: solid !important;
    border-radius: 10px !important;
}

.menu-header nav {
    position: absolute !important; 
    top: 100%;
    right: 0;
    z-index: 9999; 
    background: #fff;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    border-radius: 10px;
    width: 130px;
    border-radius: 10px;
}

.menu-main nav {
    left: 0;    
    width: 300px;
}

.menu-more nav {
    right: 0;    
    width: 250px;
    padding: 20px;
}

.menu-main ul {
    padding: 75px 40px 40px !important;
    border-radius: 10px;
    width: 300px;
}

.menu-main .submenu-logo a {
    background-color: white!important;
    border: 0;
    padding: 0 0 40px !important;
    margin-bottom: 75px;
}

.menu-header li a {
    justify-content: center;
    color: #0F7175 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-family: 'Montserrat';
}

.menu-header nav .current-menu-item a {
    background: white !important;
}

.menu-header ul li.menu-item-type-taxonomy a:hover {
    background: unset!important;
    color: #727272 !important;
    border: 0 !important;
}

li.menu-cta.first-cta {
    padding-top: 60px;
}
    
.menu-header ul li.menu-cta a {
    color: #000 !important;
    background-color: #F3F3F3;
    border-radius: 10px;
    margin-bottom: 40px;
    box-shadow: 0px 20px 25px 0px #0000001A;
}

.menu-header ul li.menu-cta a:hover {
    background-color: white;
}

.menu-search-icon a {
    width: 100%!important;
}

.menu-search-icon a i {
    font-size: 20px;
}

.previous-posts-sidebar .elementor-post__text {
    display: flex !important;
    flex-direction: column !important;}

.previous-posts-sidebar .elementor-post__title {
    order: 1;
    margin-bottom: 10px!important;
}

.previous-posts-sidebar .elementor-post__excerpt {
    order: 2;
    position: relative;
}

.previous-posts-sidebar .elementor-post__meta-data {
    order: 3;
    display: flex;
    flex-direction: column;
}

/******************************************************************************/
/**************************** Accueil *****************************************/
/******************************************************************************/
.home main {
    margin-top: -110px!important;
}

.home header {
    background-color: #ffffff00 !important;
}

.month-posts .elementor-post__card {
    padding: 8px;
    overflow: hidden !important;
}

.month-posts article {
    padding: 0 15px !important;
}

.month-posts .elementor-posts-container {
    grid-template-columns: 280px 220px 220px;
    justify-content: end;
}

.month-posts .elementor-posts-container,
.month-posts .elementor-posts-container * {
    transition: all 0.3s ease!important;
}


.month-posts article .elementor-post__thumbnail,
.month-posts article img {
    height: 240px;
}

.month-posts article img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center top;
}

.month-posts .elementor-post__excerpt {
    margin: 0 !important;
}

.pole-position article .elementor-post__thumbnail,
.second-level article .elementor-post__thumbnail {
    border-radius: 15px;
}

.pole-position article .elementor-post__text {
    padding: 0 !important;
    margin: 0 !important;
}

.second-level article .elementor-post__card {
    padding: 8px !important;
}

.second-level article .elementor-post__text {
    padding: 0 20px !important;
    margin: 0 !important;
}

.month-posts article .sub-title,
.pole-position article .sub-title {
    font-family: 'Barlow Semi Condensed';
    font-size: 16px;
    font-weight: 500;
    color: #7C7C7C;
    text-transform: uppercase;
}

.pole-position article .elementor-post__meta-data {
    padding: 10px 0 !important;
    border: 0 !important;
    display: flex;
    flex-direction: row;
}

.second-level article .elementor-post__meta-data {
    padding: 0 20px !important;
    border: 0 !important;
    display: flex;
    flex-direction: column;
    margin-bottom: 18px!important;
}

.pole-position article .elementor-post-date,
.second-level article .elementor-post-date {
    order: 1;
}

.pole-position article .elementor-post-author,
.second-level article .elementor-post-author {
    order: 2;
}

.pole-position article .elementor-post-date::before {
    margin: 0 2px !important;
    content: "Le ";
}

.pole-position article .elementor-post-author::before {
    margin: 0 !important;
    content: " • ";
    padding-left: 5px;
}

.second-level article .elementor-post-date:before {
    margin: 0!important;
    content: "Le ";
}

.pole-position article .elementor-post__read-more {
    background: #F3F3F3;
    padding: 10px 38px;
    border-radius: 10px;
    font-weight: 700 !important;
    color: #1E1E1E;
    position: absolute;
    right: 20px;    
}

.pole-position article .elementor-post__badge {
    font-family: 'Montserrat';
    font-weight: 700 !important;
    padding: 7px 30px !important;
}

.pole-position .elementor-post__excerpt {
    margin: 0!important;
}

.home .cbxwpbkmarkwrap,
.archive-container .cbxwpbkmarkwrap {
    position: absolute;
    bottom: 15px;
    right: 10px;
}

.popular-posts .cbxwpbkmarkwrap {
    bottom: 10px;
}

.previous-posts-sidebar .cbxwpbkmarkwrap {
    bottom: -35px;
}

.single .bookmark .cbxwpbkmarkwrap-post {
    display: block;
}

.cbxwpbkmarktrig-label,
.single .cbxwpbkmarkwrap-post {
    display: none;
}

.cbxwpbkmarktrig-icon {
    height: 18px!important;
}

#awn-popup-wrapper .awn-buttons .awn-btn-success {
    background-color: #0f7175!important;
    color: black!important;
    font-weight: 900 !important;
}

#awn-popup-wrapper .awn-buttons .awn-btn-cancel {
    background-color: #F3F3F3!important;
    font-weight: 900 !important;
}

@media (max-width: 768px) {
    .month-posts .elementor-posts-container {
        grid-template-columns: repeat(1, 1fr)!important;
    }
}



/******************************************************************************/
/**************************** Ma sélection ************************************/
/******************************************************************************/
.cbxwpbookmark-title-postlist {
    display: none;
}

.cbxwpbookmark-mylist {
    display: flex;
    align-items: stretch;  
    gap: 40px;
    flex-wrap: wrap;
    margin: 0;
    list-style-type: none;
}

.selection-container-li {
    flex: 0 0 calc(33.333% - 27px);    
}

.selection-container {
    background-color: white;
    border-radius: 15px;
    padding: 8px;
    height: 100%;
}

.selection-thumbnail {
    position: relative;
}

.selection-thumbnail img {
    border-radius: 15px!important;
    height: 350px !important;
    width: 100%;
    object-fit: cover;
    object-position: center;    
}

.selection-badge {
    position: absolute;
    bottom: 35px;
    left: 10px;
    background-color: #FFFFFFCC;
    border-radius: 15px;
    padding: 8px 15px;
    font-family: Montserrat;
    font-weight: 700;
    font-size: 12px;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
    color: #0F7175;
}

.cbxbookmark-delete-btn {
    position: absolute;
    background-color: white;
    top: 10px;
    right: 10px;
    padding: 10px;
    border-radius: 50%;
}

.selection-title {
    font-family: Barlow Semi Condensed;
    font-weight: 700;
    font-size: 20px;
    line-height: 100%;
    text-transform: uppercase;
    color: black;
    margin: 0 20px 10px;
}

.selection-excerpt {
    margin: 10px 20px;
}

@media only screen and (max-width: 959px) {
    .selection-container {
        flex: 0 0 calc(50% - 20px);
    }
}

@media (max-width: 768px) {
    
    .display-hello {
        text-align: center;
    }    

    .kiosque-btn span {
        padding: 0 10px;
    }
    
    .selection-container {
        flex: 1;
    }
    
    .cbxwpbookmark-mylist {
        margin: 0;
    }    
    
    .selection-container-li {
        flex: 1;
    }
}

/******************************************************************************/
/**************************** Social share ************************************/
/******************************************************************************/
.social-sharing {
    margin: 30px auto!important;
}

.heateor_sss_sharing_container.heateor_sss_horizontal_sharing {
    background-color: #0F7175;
    padding: 2px 15px;
    border-radius: 20px;
    width: fit-content;
}

.heateor_sss_sharing_ul a {
    margin: 6px !important;
}

.heateor_sss_svg {
    background-color: white !important;
}

.heateor_sss_sharing_container path {
    fill: #0F7175;
}

/* Cookie *********************************************************************/
.cmplz-cookiebanner .cmplz-logo {
    grid-column-start: 2;
    text-align: center;
}

.cmplz-cookiebanner .cmplz-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 800 !important;
    font-size: 20px !important;
    grid-column: span 3!important;
}

.cmplz-logo img {
    max-height: 94px !important;
}

.cmplz-close {
    align-self: flex-start;
    color: lightgray!important;
    grid-row-start: 1;
}

.cmplz-message {
    font-family: 'Montserrat';
    text-align: justify;
}

button.cmplz-btn {
    text-transform: uppercase;
    background-color: #F3F3F3 !important;
    color: #1E1E1E !important;
    font-family: 'Montserrat' !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    box-shadow: 0px 20px 25px 0px #0000001A;
    border: 0 !important;
}


@media (max-width: 768px) {
    .cmplz-cookiebanner .cmplz-buttons {
        flex-direction: row !important;
    }
}

/* Mise en page spécifique ****************************************************/
.pmpro-login .site-main,
.pmpro-levels .site-main,
.pmpro-account .site-main,
.pmpro-checkout .site-main,
.pmpro-invoice .site-main,
.pmpro-cancel .site-main,
.pmpro-confirmation .site-main,
.page-id-5267  .site-main {
    background-color: #0F7175 !important;
    min-height: calc(100vh - 70px)!important;    
}

.container-without-header {
    min-height: calc(100vh - 40px)!important;    
}

.pmpro-login #content-wrap,
.pmpro-levels #content-wrap,
.pmpro-account #content-wrap,
.pmpro-invoice #content-wrap,
.pmpro-checkout #content-wrap,
.pmpro-cancel #content-wrap,
.pmpro-confirmation #content-wrap,
.page-id-5267 #content-wrap {
    width: 100%!important;
    max-width: 1640px;
    padding: 0 1%;
}


/******************************************************************************/
/************************* Login form *****************************************/
/******************************************************************************/
.no-access{
    max-width: 325px;
    margin: auto;
}

.no-access-subscribe-btn {
    margin-bottom: 50px;
    text-align: center;
}

.no-access-subscribe-btn a {
    text-align: center;
    border: solid 1px #A9A9A9;
    border-radius: 10px;
    padding: 11px 40px;
    text-transform: uppercase;
    font-family: 'Montserrat';
    font-size: 14px;
    font-weight: 700;
}

.no-access .pmpro_login_wrap {
    background-color: unset !important;
}

.no-access .pmpro_card_title {
    display: none;
}

.no-access .pmpro_card_content {
    padding: 0;
}

.nsl-container {
    margin: 0 2px;
}

.nsl-separator {
    font-family: 'Montserrat';
    font-size: 9px;
    font-weight: 700 !important;
}

.no-access input {
    border-color: #E6E6E6 !important;
    font-size: 11px!important;
}

.no-access #wp-submit {
    border-radius: 10px;
}

.no-access .login-password {
    position: relative;
}

.no-access .pmpro_form_field-password-toggle {
    position: absolute;
    top: 30px;
    right: 10px;
}

.no-access .pmpro_icon-eye svg {
    stroke: lightgray;
}

.no-access .login-submit {
    box-shadow: unset!important;
}

.email-access-label {
    font-size: 14px;
    text-align: center;
    margin-bottom: 15px;
}

#email-access-form .form-group {
    display: flex;
}

#email-access-form input {
    background-color: var(--pmpro--color--base);
    border: 1px solid var(--pmpro--color--border);
    border-radius: 0;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;    
    box-shadow: none;
    box-sizing: border-box;
    margin: 0;
    min-height: auto;
    outline: none;
    padding: var(--pmpro--base--spacing--small);
    font-size: 11px !important;
    line-height: 1 !important;
    font-family: 'Montserrat';
    font-weight: 600;
    color: #B5B6BA !important;
}

#email-access-form button {
    border: 0;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    background-color: #F3F3F3;
    color: black;
}

#email-access-form button:hover {
    background-color: #C2C2C2;
    animation-timing-function: ease-out !important;
    animation-duration: 300ms !important;
}

#email-access-form .error-msg {
    color: red;
    font-size: 14px;
    line-height: 16px;
    padding-top: 15px;    
}

@media (max-width: 767px) {	
    .no-access-subscribe-btn a {
        padding: 10px 20px;
    }	
}


/******************************************************************************/
/************************* Archives *******************************************/
/******************************************************************************/
.archive-header {
    padding: 10px 0;
}

.h3-category {
    font-family: Barlow Semi Condensed;
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
}

.h3-category h3 {
    color: #1E1E1E!important;
}

.archive-all-posts article a::after {
	background-image: unset !important;
}

.archive-all-posts article .elementor-post__thumbnail__link {
    padding: 0 8px;
}

.archive-all-posts article .elementor-post__thumbnail {
    border-radius: 15px;
}

.archive-all-posts article .elementor-post__text {
    margin-top: 0 !important;
}

.archive-all-posts article .elementor-post__excerpt, 
.archive-all-posts article .elementor-post__title {
    margin-bottom: 10px!important;
}

.archive-all-posts article .elementor-post__meta-data,
.archive-all-posts article .elementor-post__text {
    padding-right: 28px !important;
    padding-left: 28px !important;
}

.archive-all-posts article .elementor-post__meta-data {
    border: 0 !important;
    display: flex;
    flex-direction: column-reverse;
    padding: 0 28px !important;
    margin-bottom: 18px!important;
}

nav.elementor-pagination {
    margin: 65px 0 20px 0;
}

nav.elementor-pagination .current {
    background: #0F7175 !important;
    color: white;
    font-weight: 600;
    padding: 10px 17px;
    border-radius: 10px;
}

.elementor-pagination a.page-numbers {
    font-weight: 600;
}

.archive-sidebar {
    max-width: 400px;
    margin-left: calc(33.3333% - 400px);
}

.list-categories-container {
    display: flex;
    gap: 38px;
    flex-wrap: wrap;
}

.list-category {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    font-family: 'Montserrat';
}

.list-category a {
    background-color: white;
    padding: 11px;
    border-radius: 10px;
    box-shadow: 0px 20px 20px 0px #00000010 !important;
    display: inline-block;
    width: 150px;
    text-align: center;
    color: #1E1E1E;
}

.popular-post {
    display: flex;
    flex-direction: row;
	gap: 50px;
	padding: 20px;
	align-items: center;
}

.popular-post-compteur {
    font-family: 'Montserrat';
    font-size: 64px;
    font-weight: 900;
    color: #D9d9d9;
	min-width: 40px;
}

.popular-post-data {
    position: relative;
}

.popular-post-title {
    font-family: 'Barlow Semi Condensed';
    font-weight: 700;
    font-size: 16px;
    color: #000;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.popular-post-excerpt {
    font-family: 'Barlow Semi Condensed';
    font-size: 15px;
    font-weight: 500;
	margin-bottom: 5px;
}

.popular-post-date, 
.popular-post-author {
    font-family: 'Montserrat';
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 500;
    color: #000;
}

#type-filter {
    border: solid 1px #D4D4D8;
    color: #71717A;
    background-color: white;
    border-radius: 5px;
}

.filter-list {
    position: absolute;
    right: 0;    
    width: 260px;
    background-color: #fff;
    padding: 10px;
    z-index: 99;
    -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, .2), 0 2px 8px rgba(0, 0, 0, .1);
    box-shadow: 0 0 2px rgba(0, 0, 0, .2), 0 2px 8px rgba(0, 0, 0, .1);
    cursor: pointer;
    border-radius: 5px;
}

.sort-container {
    display: block;
    margin-left: auto;
    margin-right: 0;
}

.filter-title {
    background-color: white;
    width: 85%;
    text-align: left;
    border-radius: 5px;
}

.new-arrow {
    position: relative;
    padding-right: 24px;
    cursor: pointer;
    margin-left: auto;
}

.new-arrow::after {
    width: 6px;
    height: 6px;
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -5px;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.small {
    font-size: 85%;
}

.elementor-widget-search .e-search-input-wrapper svg {
    display: none;
}

.elementor-posts-nothing-found {
    text-align: center;
    grid-column: 1 / -1;
}

@media only screen and (max-width: 959px) {

    .list-categories-container {
        column-gap: 80px;
        row-gap: 20px;
    }

    .archive-sidebar {
        max-width: 100% !important;
    }

    .list-category {
        width: calc(50% - 80px / 2);
    }

    .list-category a {
        width: 100%;
        text-align: left;
    }	
}

@media (max-width: 767px) {	
    .list-category {
    	width: 100%;
    }	
}


/******************************************************************************/
/************************* RECHERCHE ******************************************/
/******************************************************************************/
.dialog-widget-content.dialog-lightbox-widget-content.animated {
    border-radius: 15px;
}

.dialog-lightbox-close-button {
    display: none!important;
}

.search article .elementor-post__thumbnail {
    padding: 0 !important;
    height: 250px;
}

.search article img {
    max-height: 250px !important;
    object-fit: cover;
}

.search .elementor-post__read-more {
    background-color: #429296;
    padding: 10px 20px;
    border-radius: 10px;
    box-shadow: 0px 10px 10px 0px #0000000A;
}

.search-nb-results {
    font-family: 'Montserrat';
    font-size: 20px;
    font-weight: 500;
    text-transform: uppercase;
    text-align: center;
    margin: 20px 0 0;
    color: #7C7C7C;
    letter-spacing: 4px;
}

.search-query {
    font-family: 'Montserrat';
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 40px;
    color: #000;
    letter-spacing: 4px;
}


/******************************************************************************/
/************************* Articles *******************************************/
/******************************************************************************/
.single-post main#main {
    background-color: #F3F3F3;
}

.post-footer, 
.post-footer .post-categories-container,
.post-info-container, 
.post-info-container div {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.breadcrumb_last {
    color: #0F7175;
}

.one-post-info .elementor-post-info__item-prefix {
    font-weight: 600;
    color: #7C7C7C;
}

.one-post-info .elementor-post-info__item--type-author {
    font-weight: 800;
    color: black !important;
}

.elementor-widget-theme-post-featured-image {
    max-height: 350px !important;
    overflow: hidden;
    border-radius: 20px;
}

.post-content h2 {
    font-family: 'Barlow'!important;
    text-transform: unset!important;
    font-size: 26px!important;
    font-weight: 900!important;
    letter-spacing: 0!important;
}

.post-content img {
    max-height: 380px;
    border-radius: 30px!important;
    object-fit: cover;
}

.post-main-category {
    font-family: 'Montserrat';
    font-weight: 700;
	font-size: 14px;
    text-transform: uppercase;
    color: #1E1E1E;
    background-color: #fff;
    box-shadow: 0px 10px 10px 0px #0000000A;
    padding: 7px 14px;
    border-radius: 10px;
    margin-bottom: 20px;
}

.post-categories {
    display: flex;
    gap: 14px !important;
    flex-flow: wrap!important;
}

.post-categories a {
    border: solid 1px;
    border-radius: 10px;
    padding: 5px 14px;
}

.ligne-bouton-lire {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding: 20px 0;
}

.ligne-gauche, .ligne-droite {
    flex: 1;
    border: none;
    height: 1px;
    background-color: #B5B6BA;
}

.btn-lire-numero {
    width: 150px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: white;
    padding: 12px 20px;
    border-radius: 12px;
    font-weight: bold;
    box-shadow: 0px 20px 25px 0px #0000001A!important;
    color: #000;
    text-decoration: none;
    transition: box-shadow 0.3s ease;
}

.icone-magazine {
    width: 28px;
}

.icone-livre {
    font-size: 1.2em;
}

.logo-bg {
    position: absolute !important;
    height: 100% !important;
    pointer-events: none;
    z-index: 0 !important;
    align-items: center !important;
    left: -90px;
}

.logo-bg img {
    left: 50%;
    position: relative;
    transform: rotate(-90deg);
    width: calc(var(--section-height, 100vh) - 400px);
    min-width: 200px;
    user-select: none;
    pointer-events: none;
    max-width: 1024px !important;    
}

.all-posts .elementor-button-content-wrapper {
    align-items: center;
}

.all-posts svg {
    width: 28px !important;
    height: 28px !important;
}

@media only screen and (max-width: 959px) {
    .logo-bg {
        transform: translateX(0%)!important;
    }	
        
    .elementor-widget-theme-post-featured-image img {
        aspect-ratio: 1 / 1;
    }
}

@media (max-width: 767px) {
}

/* Meilleurs articles *********************************************************/
.wpp-list {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    gap: 22px;
    margin: 10px 0 70px;
}

.wpp-list li {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    background-color: white;
    width: 33%;
    border-radius: 15px;
    padding: 8px;
    font-family: 'Barlow Semi Condensed';
}

.wpp-list img {
    border-radius: 15px!important;
    margin-bottom: 23px;
    width: 100%!important;
}

.wpp-post-title {
    font-weight: 700;
    font-size: 20px;
    text-transform: uppercase;
    color: #000;
    padding: 0 23px 10px;
    text-align: left;
    width: 100%;
}

.wpp-excerpt {
    margin: 0 23px 10px;
    font-size: 16px;
    font-weight: 500;
}

span.wpp-meta.post-stats  {
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-start;
    flex-wrap: nowrap;
    width: 100%;
    padding: 0 23px;
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 11px;
    text-transform: uppercase;
    color: #000;
    margin-top: auto;
    margin-bottom: 18px;
}

span.wpp-meta.post-stats a {
    color: #000;
}

@media only screen and (max-width: 959px) {
	
}

@media (max-width: 767px) {
	.wpp-list {
		flex-direction: column;
	}
	
	.wpp-list li,
	.wpp-list li a,
	.wpp-list li img {
		width: 100%;
	}
}


/******************************************************************************/
/****************************** QSN *******************************************/
/******************************************************************************/
.qsn-header p {
    margin: 0;
}

/******************************************************************************/
/*********************** Abonnement *******************************************/
/******************************************************************************/
.pmpro_section_content {
    display: inline-flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
    margin: 0 auto;
    justify-content: center;
}

.dynamic-container {
    padding: 0 calc((100% - 700px)/2)!important;
    justify-content: center !important;
    margin-top: auto!important;
    margin-bottom: auto!important;
}

.level-container {
    background-color: #F3F3F3;
    border-radius: 20px;
    padding: 40px 0;
    text-align: left;
    width: 50%!important;
}

.level-container.premium-level {
    background-color: #0F7175;
    color: white;
}

.level-container-text {
    padding: 0 40px;
}

.level-title {
    font-family: 'Inter';
    font-size: 16px;
    font-weight: 700;
}

.level-title i {
    margin-right: 10px;
}

.level-price-container {
    margin-top: 43px;
    max-width: 350px;
    display: flex;
}

.level-price {
    font-size: 40px;
    font-family: Montserrat;
    font-weight: 800;
    line-height: 100%;
    vertical-align: middle;
}

.level-frequency {
    font-family: Inter;
    font-weight: 700;
    font-size: 16px;
    line-height: 100%;
    vertical-align: middle;
    color: #0F7175;
    margin-left: 10px;
    text-transform: uppercase;
}

.premium-level .level-frequency {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    color: #FFFFFFCC;
}

.trial-duration {
    font-size: 12px;
}

.level-description {
    margin: 43px 0;
    font-size: 13px;
}

.level-action {
    font-family: Montserrat;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    display: inline-flex;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    width: 100%;
}

.level-action div {
    width: 100%;
    max-width: 205px;
    margin: 0 20px;
    background-color: white;
    padding: 10px 10px;
    border-radius: 10px;
    line-height: 100%;
    text-align: center;
    box-shadow: 0px 1px 3px 1px #00000026;
    color: #1E1E1E;    
}

.year-level-container {
    background-color: #155558;
    border-radius: 20px;
    margin: 40px 40px 0;
    padding: 14px;
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
}

.free-period img {
    width: 60px;
}

.yearly-price-container img {
    width: 147px;
}

.final-level-price-container {
    font-family: 'Montserrat';
    margin-top: 40px;
}

.final-level-price {
    font-size: 20px !important;
    font-weight: 700;
}

.first-period {
    width: 100%;
}

.checkout-container {
    max-width: 800px!important;
    margin: auto!important;
}

@media only screen and (max-width: 959px) {
    .pmpro-levels .container{
        max-width: 98%;
    }
    
    .level-container {
        margin: 0 auto!important;
        width: 100% !important;
    }
    
    .level-price-container {
        display: flex;
        flex-direction: column;
    }
    
    .level-frequency {
        margin-top: 10px;
    }

    .level-frequency {
        margin-left: 0 !important;
        margin-right: 10px;
    }

    .year-level-container {
        margin: 40px 20px 0;
    }

    .final-level-price-container {
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        margin-top: 20px;
    }
    
    .final-level-price, 
    .final-level-text {
        width: 100%;
    }
    
}

@media (max-width: 767px) {
    .pmpro_section_content {
        flex-direction: column;
    }
    
    .year-level-container {
        flex-direction: column;
    }
}

/******************************************************************************/
/********************************* Kiosque ************************************/
/******************************************************************************/
.kiosque_all_numbers,
.kiosque-title {
    max-width: 1370px!important;
    margin: auto!important;
}

.kiosque_all_numbers {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    column-gap: 90px !important;
    row-gap: 46px !important;
    justify-items: center;    
}

.kiosque_last_number .kiosque-one-container {
    max-width: 500px;
}

.kiosque_last_number .kiosque-one-number {
    margin-bottom: 34px;
    text-transform: uppercase;
    font-size: 32px;
}

.kiosque_last_number img {
    margin-bottom: 52px;
}

.kiosque_last_number .kiosque-one-btn {
    box-shadow: 0px 20px 25px 0px #0000001A;
}

.kiosque_all_numbers .kiosque-one-container {
    max-width: 270px;
}

.kiosque-data {
    margin-top: 20px;
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 22px;
}

.kiosque-data > div {
    width: 50%;
}

.kiosque-one-number {
    font-family: 'Barlow Semi Condensed';
    font-size: 16px;
    font-weight: 700;
}

.kiosque-one-date {
    font-family: Barlow Semi Condensed;
    font-weight: 500;
    font-size: 15px;
    line-height: 100%;
    color: #7C7C7C;
    margin-top: 10px;
    text-transform: uppercase;
}

.kiosque-one-btn {
    background: white;
    border-radius: 10px;
    padding: 9px calc((100% - 22px)/2);
}

.kiosque-one-btn i {
    font-size: 22px;
    color: black;
}

.no-access-container {
    background: white;
    max-width: 400px;
    padding: 50px 30px 10px;
    border-radius: 20px;
}

@media (max-width: 767px) {
    .kiosque_last_number .kiosque-one-number {
        font-size: 30px;
    }
    
    .kiosque-title {
        flex-wrap: nowrap!important;        
    }
    
    .kiosque-title p {
        margin: 0;
    }
    
    .no-access-container {
        padding: 50px 10px 10px;
    }

    
    
}

/******************************************************************************/
/*********************** Paiement adhésion ************************************/
/******************************************************************************/
.pmpro-checkout .form-container  {
    background-color: #F3F3F3;
    padding: 30px;
    border-radius: 20px;
    margin: 0 100px;
}

.pmpro-checkout .pmpro_card_title  {
    display: none;
}

.pmpro-checkout .pmpro_level_description_text {
    margin: 20px 0;
}

.pmpro-checkout label {
    font-family: 'Montserrat'!important;
    font-weight: 600 !important;
}

.pricing-container .pmpro_card_content {
    padding-bottom: 0;
}

.pmpro_form_field-username label {
    padding-bottom: 15px !important;
}

.user-info-container .pmpro_card_content {
    padding-top: 0 !important;
}

.user-info-container h2 {
    font-size: 17px !important;
    font-family: 'Montserrat' !important;
    font-weight: 700 !important;
}

.user-info-container h3 {
    font-family: 'Montserrat' !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    margin-top: 30px !important;
}

.user-info-container select#bcountry {
    padding: 12px !important;
}

.user-info-container .pmpro_form_field-bphone {
    margin-top: 30px;
}

.pmpro_btn-submit-checkout {
    text-transform: uppercase !important;
    border-radius: 10px !important;
    padding: 12px 45px !important;
    font-size: 14px !important;
    font-family: 'Montserrat' !important;
    margin-left: 36px !important;
}

#pmpro_order_single-items table {
    border-radius: 15px!important
}

.pmpro-confirmation .pmpro_card_title {
    letter-spacing: 0;
}

.pmpro_form_submit {
    flex-direction: column !important;
}

.pmpro_btn-submit-checkout-paypal-image {
    display: none !important;
}

button#pmpro_btn-submit-paypalexpress {
    color: white;
    background-color: #0F7175;
    border-color: #0F7175;
}

fieldset#pmpro_billing_address_fields {
    display: block !important;
}

#other_discount_code_fields .pmpro_form_label {
    font-size: 10px;
    text-transform: uppercase;
    width: 120px;
    margin-right: 20px;
}

.pmpro-checkout .nsl-container.nsl-container-block {
    text-align: center !important;
    margin-top: 40px;
}

.register-separator {
    display: flex;
    flex-basis: 100%;
    align-items: center;
    color: #72777c;
    margin: 20px 0 20px;
    padding: 36px 36px 0;
}

.pmpro-checkout .nsl-separator::before, 
.pmpro-checkout .nsl-separator::after {
    content: "";
    flex-grow: 1;
    background: #dddddd;
    height: 1px;
    font-size: 0;
    line-height: 0;
    margin: 0 8px;
}

@media only screen and (max-width: 959px) {
    .pmpro-checkout .form-container {
        margin: 0 30px;
        padding: 0;
    }

    .pmpro_form_submit {
        justify-content: center;
    }        
    
    #other_discount_code_fields .pmpro_form_label {
        width: auto;
        margin-right: 10px;
    }
}
 
@media (max-width: 767px) {
    .pmpro-checkout .form-container {
        margin: 0 10px;
    }

    .pmpro_btn-submit-checkout {
        margin: 0 !important;
        padding: 12px 20px !important;
    }
    
    .pmpro_checkout_gateway-paypalexpress .pmpro_card_actions,
    .pmpro_checkout_gateway-paypalexpress .pmpro_card_content {
        padding: 20px;
    }
    
    
    
}

/******************************************************************************/
/*********************** Nous contacter ***************************************/
/******************************************************************************/
.grecaptcha-badge {
    display: none !important;
}

.page-id-1711 .grecaptcha-badge {
    display: block !important;
}

.social-container {
    width: auto!important;
}

.social-container .elementor-widget-social-icons {
    width: fit-content;
}

.contact-form-container label {
    font-weight: 600;
    font-family: 'Montserrat';
    font-size: 14px;
}

.contact-form-container label.your-message {
    font-size: 17px;
    font-weight: 700;
    margin-top: 60px;
}

.contact-form-container textarea,
.contact-form-container input {
    margin: 20px 0;
    background-color: white !important;
}

.contact-form-container textarea::placeholder,
.contact-form-container input::placeholder {
    color: #00000040;
}

.contact-form-container .col-2 > p {
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    gap: 30px;
    justify-content: space-between;
}

.contact-form-container .col-2 input {
    margin: 0;
}

.contact-form-container .col-2 .wpcf7-form-control-wrap {
    width: 100%;
}

.contact-form-container .wpcf7-submit.has-spinner {
    background-color: #0F7175 !important;
    font-size: 14px;
    font-weight: 700;
    font-family: 'Montserrat';
    width: 50%;
    border-radius: 10px;
}

.contact-form-container .submit-btn {
    text-align: center;
}


@media only screen and (max-width: 959px) {
}
 
@media (max-width: 767px) {
    .contact-form-container .col-2 > p {
        gap: 10px;
    }
}

/******************************************************************************/
/*********************** Espace Client ****************************************/
/******************************************************************************/
.pmpro-account .e-con-inner {
    margin: 0 !important;
    width: 98% !important;
    max-width: 1640px !important;
}

.espace-client-title h1 {
    position: absolute;
    top: 265px;
    left: -35px;
    transform: translateX(-50%) rotate(-90deg);
    transform-origin: center;
    white-space: nowrap;
}

.display-hello {
    font-size: 20px;
    font-weight: 800;
    font-family: 'Montserrat';
    color: #155558;
}

.pmpro_card {
    background-color: #F3F3F3 !important;
    border-radius: 20px !important;
    box-shadow: none !important;
}   

.pmpro-account input {
    font-size: 14px!important;
}

.pmpro-account button, 
.pmpro-account .pmpro_btn-submit {
    text-transform: uppercase !important;
    font-size: 16px !important;
}

/* Login **********************************************************************/
.subscribe-link a {
    text-decoration: underline;
    text-decoration-color: #0F7175;
}

.subscribe-link p {
    margin: 0!important;
}

#pmpro_login .pmpro_login_wrap {
    background-color: unset !important;
}

.login-container {
    max-width: 400px;
}

.login-container p {
    margin: 0;
}

.pmpro-login .site-main {
    background-color: #0F7175 !important;
}

.pmpro-login .pmpro_form_field-password-toggle {
    position: relative;
    top: 36px;
    right: 13px;
}

span.pmpro_form_field-password-toggle-state {
    display: none;
}

#loginform label {
    font-family: 'Montserrat';
    font-size: 10px;
    font-weight: 600 !important;
    color: #727272;
}

#loginform .login-username,
#loginform .login-password{
    gap: 0
}

#loginform input {
    font-size: 11px !important;
    line-height: 1 !important;
    font-family: 'Montserrat';
    font-weight: 600;
    color: #B5B6BA !important;
}

#loginform .login-submit {
    box-shadow: 0px 20px 25px 0px #0000001A;
}

#loginform .login-submit input#wp-submit {
    text-transform: uppercase;
    background-color: #F3F3F3;
    border: 0;
    color: #1E1E1E!important;
    font-family: Montserrat;
    font-weight: 700;
    font-size: 14px !important;
}

.pmpro_login_wrap {
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
}

.pmpro_login_wrap .pmpro_card_content {
    padding-top: 0 !important;    
    padding-bottom: 13px !important;
}

.pmpro_card_actions {
    text-align: center;
    background-color: unset !important;
    border: none !important;
    margin: 0 !important;
    font-family: 'Inter';
    font-size: 11px;
    font-weight: 700;
    color: #686868;
}

.pmpro_lost_password_wrap .pmpro_btn-submit {
    width: 100%;
}

.pmpro_lost_password_wrap {
    background-color: unset !important;
    border: none !important;
}

.pmpro_lost_password_wrap .pmpro_card_content {
    padding: 0!important;
}

@media (max-width: 767px) {
    
    .pmpro_login_wrap .pmpro_card_content {
        padding: 0 0 13px!important;    
    }

}



/* Mes informations ***********************************************************/
.pmpro_form_field-user_email span {
    color: red;
    margin-right: 5px;
}

#pmpro_form_fieldset-adresse h2::before {
    content: '*';
    color: red;
    margin-right: 5px;
}

#member-profile-edit .pmpro_form_field-user_email,
#member-profile-edit .pmpro_form_field-title,
#member-profile-edit .pmpro_form_field-display_name,
#member-profile-edit .pmpro_form_field-rue,
#member-profile-edit .pmpro_form_field-complement_rue,
#member-profile-edit .pmpro_form_field-pays,
#member-profile-edit .pmpro_btn-submit-update-profile {
    width: 100% !important;
}

.pmpro_success a,
.pmpro_form_field-user_email .pmpro_form_hint, 
#member-profile-edit .pmpro_form_field-title label,
#member-profile-edit .pmpro_form_field-display_name,
#member-profile-edit .pmpro_form_field-numero_de_telephone label,
#member-profile-edit #pmpro_form_fieldset-adresse label,
#member-profile-edit .pmpro_btn-cancel {
    display: none;
}

.pmpro_form_field-title h3,
.pmpro_form_fieldset h2.pmpro_form_heading, 
.pmpro_form_fieldset label  {
    font-size: 14px;
    font-family: 'Inter';
    font-weight: 700;
    text-transform: unset;
    letter-spacing: 0;
}

#member-profile-edit .pmpro_form_field-title {
    margin-top: 23px;
}

#pmpro_form_fieldset-adresse .pmpro_form_fields {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--pmpro--base--spacing--medium);
}

.pmpro_form_field-ville,
.pmpro_form_field-code_postal {
    width : calc(50% - calc(var(--pmpro--base--spacing--medium) / 2));
}

#member-profile-edit .pmpro_form_submit {
    margin-top: 43px !important;
}

#member-profile-edit select#pays {
    padding: 12px !important;
}

/* Changement de mot de passe *************************************************/
#change-password .pmpro_asterisk,
#change-password .pmpro_form_legend,
#change-password .pmpro_btn-password-toggle,
#change-password .pmpro_form_hint,
#change-password .pmpro_btn-cancel{
    display: none !important;
}

#change-password .pmpro_btn-submit-change-password,
#change-password .pmpro_cols-1 > *,
#change-password .pmpro_cols-2 > * {
    width: 100% !important;
}

.password-error {
    opacity: 1 !important;
    border: none !important;
    text-align: left !important;
    color: var(--pmpro--color--error-text) !important;
    background-color: var(--pmpro--color--error-background);
}

.a-btn.contact-btn {
    margin-top: 64px;
}

/* Gestion de l'abonnement ****************************************************/
.manage-levels {
    background-color: #F3F3F3;
    border-radius: 10px;
    padding: 35px 23px;
    margin-top: 18px;    
}

.pmpro_levels {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.pmpro-level {
    display: inline-flex;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    align-items: center;
    gap: 20px;
    width: 100%;
    text-transform: uppercase;
    font-family: 'MONTSERRAT';
    font-size: 13px;
    font-weight: 800;
}

.a-btn.unsubscribe-level {
    background-color: red;
    color: white;
    margin: 0;
    text-align: center;
}

.a-btn.update-level {
    text-transform: uppercase !important;
    background-color: #0F7175;
    color: white;
    margin: 0;    
}

.btn-disconnected {
    margin-top: 63px;
    margin-bottom: 100px;
}


/* Factures *********************************************************/
.account-invoice table {
    background-color: white;
    border-radius: 15px;
}

.account-invoice h3 {
    display: none;
}

.pmpro_table_orders th:last-child, 
.pmpro_table_orders th:first-child, 
.pmpro_table_orders td:last-child, 
.pmpro_table_orders td:first-child {
    border-radius: 15px;
}

.pmpro_section_title {
	font-weight: 700;
	margin: 0;
	padding: 0;
}

.account-invoice {
    background-color: #F3F3F3;
    border-radius: 20px;
    padding-bottom: 50px;    
}

.account-invoice h2 {
    font-size: 20px !important;
    padding: 30px 40px !important;
    font-family: 'Barlow' !important;
    letter-spacing: normal!important;   
}

.account-invoice .pmpro_card {
    border: none !important;
}

.account-invoice .pmpro_actions_nav {
    
    margin: 0 40px;
}


@media only screen and (max-width: 959px) {
    .col-3 {
        flex-direction: column;
        padding-right: 20px;
    }
    
    .subcol,
    .pmpro_section_content,
    .pmpro_form {
        width: 100%;
    }
}
 
@media (max-width: 767px) {
    .espace-client-title h1 {
        position: relative;
        top: auto;
        left: auto;
        transform: unset;
        white-space: unset;
        text-align: center;
        padding: 30px 0;
    }
    
    .col-3 {
            padding: 0;
    }    
    
    #pmpro_member_profile_edit {
        margin: 0;
    }
    
    .pmpro_table_orders tbody tr:last-child th:first-child {
        border-radius: unset;
    }    
    
    .account-invoice thead {
        display: none;
    }

    .account-invoice tr {
        grid-template-columns: repeat(2, 1fr);
        display: grid;        
    }

    table td:nth-child(1), table td:nth-child(2) {
       border-bottom: none;
    }
    
}
/******************************************************************************/
/*********************** FIN - Mon Compte *************************************/
/******************************************************************************/
