/*
Css Addons for JustColor
*/
.site-header {
    height: 60px;
}

.ngg-gallery-thumbnail-box {
    background: #a7d3f3!important;
    border: 1px solid #6eaed6!important;
    margin: 0 10px 15px!important;
    padding: 10px!important;
    padding-bottom: 10px!important;
    transition: opacity .4s ease-in-out !important;
    display: inline-block !important;
    text-align: center !important;
}

.ngg-gallery-thumbnail {
    width: 210px !important;
    height: auto !important;
}


.inside-header {
	padding-top: 0px !important;
}

.grayborder {
 	border: solid 1px lightgray; 
}


.widget_text {
    background-color: rgba(0, 0, 0, 0)!important;
}


.widget_nav_menu {
    background-color: rgba(0, 0, 0, 0)!important;
}
.widget_nav_menu a {
    color: white!important;
}

.widget-title {
	color:#b8c5d9!important;
}

/*.inside-header {
    background-image: linear-gradient(90deg,#003872,#c60aa5);
}*/

.inside-left-sidebar, .inside-right-sidebar, .site-main {
    margin: 0px !important;
}

.container-2 input#search {
    background-color:#ffffff!important;
    border:0px!important;
   
}
.searchelement {
    background-color: #383838!important;
}



/* Marge sticky ad pour JC car left sidebar collée */
.stickyad {
    margin-right:20px;
}


/* Menu accordeon */
div.nextend-accordion-menu-inner-container dl.level1 dt span { 
    line-height: normal!important;
}

div.nextend-accordion-menu-inner-container dl.level2 .inner {
    padding: 1px 0px 2px 20px!important;
}

.desc_p {
    margin-bottom: 0.5em;
}
.ngg-navigation a.page-numbers,
.ngg-navigation span.page-numbers,
.ngg-navigation span.current {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 46px;
  height: auto;
  padding: 11px 12px !important;
  line-height: 1.2;
  box-sizing: border-box;
  text-align: center;
}

.ngg-navigation a.next,
.ngg-navigation a.prev,
.ngg-navigation span.next,
.ngg-navigation span.prev {
  background: #fff !important;
  color: #003872 !important;
  padding: 3px 12px !important;
  border: 1px solid #003872 !important;
}

.ngg-navigation a.next:hover,
.ngg-navigation a.prev:hover {
  background: #a78c43 !important;
  color: #fff !important;
  border-color: #a78c43 !important;
}

.ngg-navigation a.page-numbers,
.ngg-navigation a.next,
.ngg-navigation a.prev,
.ngg-navigation span.page-numbers,
.ngg-navigation span.current,
.ngg-navigation span.next,
.ngg-navigation span.prev {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin-bottom: 6px;
}

.ngg-navigation {
  line-height: 2.2 !important;
}
.ngg-sort-control {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 6px 0 14px;
  font-size: 14px;
  color: #4b4b4b;
}

.ngg-sort-control label {
  font-weight: 600;
  color: #3a3a3a;
}

.ngg-sort-select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: #fff;
  border: 1px solid #d8dde3;
  border-radius: 8px;
  padding: 6px 28px 6px 10px;
  font-size: 14px;
  color: #1c1c1c;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
  background-image: linear-gradient(45deg, transparent 50%, #6b7785 50%),
    linear-gradient(135deg, #6b7785 50%, transparent 50%),
    linear-gradient(to right, #e9edf2, #e9edf2);
  background-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%, calc(100% - 28px) 50%;
  background-size: 5px 5px, 5px 5px, 1px 14px;
  background-repeat: no-repeat;
}

.ngg-sort-select:focus {
  outline: none;
  border-color: #8aa4c2;
  box-shadow: 0 0 0 3px rgba(0, 56, 114, 0.15);
}

/* === CSS Typography (externalisé depuis generate_font_css() - optimisation PageSpeed) === */
body{background-color:#003872;color:#3a3a3a;}a, a:visited{color:#1e73be;}a:hover, a:focus, a:active{color:#000000;}body .grid-container{max-width:1500px;}body, button, input, select, textarea{font-family:Helvetica;font-size:16px;}.entry-content > [class*="wp-block-"]:not(:last-child){margin-bottom:1.5em;}.main-navigation .main-nav ul ul li a{font-size:14px;}@media (max-width:768px){.main-title{font-size:30px;}h1{font-size:30px;}h2{font-size:25px;}}.top-bar{background-color:#636363;color:#ffffff;}.top-bar a,.top-bar a:visited{color:#ffffff;}.top-bar a:hover{color:#303030;}.site-header{background-color:#ffffff;color:#3a3a3a;}.site-header a,.site-header a:visited{color:#3a3a3a;}.main-title a,.main-title a:hover,.main-title a:visited{color:#222222;}.site-description{color:#757575;}.main-navigation,.main-navigation ul ul{background-color:#222222;}.main-navigation .main-nav ul li a,.menu-toggle{color:#ffffff;}.main-navigation .main-nav ul li:hover > a,.main-navigation .main-nav ul li:focus > a, .main-navigation .main-nav ul li.sfHover > a{color:#ffffff;background-color:#3f3f3f;}button.menu-toggle:hover,button.menu-toggle:focus,.main-navigation .mobile-bar-items a,.main-navigation .mobile-bar-items a:hover,.main-navigation .mobile-bar-items a:focus{color:#ffffff;}.main-navigation .main-nav ul li[class*="current-menu-"] > a{color:#ffffff;background-color:#3f3f3f;}.main-navigation .main-nav ul li[class*="current-menu-"] > a:hover,.main-navigation .main-nav ul li[class*="current-menu-"].sfHover > a{color:#ffffff;background-color:#3f3f3f;}.navigation-search input[type="search"],.navigation-search input[type="search"]:active{color:#3f3f3f;background-color:#3f3f3f;}.navigation-search input[type="search"]:focus{color:#ffffff;background-color:#3f3f3f;}.main-navigation ul ul{background-color:#3f3f3f;}.main-navigation .main-nav ul ul li a{color:#ffffff;}.main-navigation .main-nav ul ul li:hover > a,.main-navigation .main-nav ul ul li:focus > a,.main-navigation .main-nav ul ul li.sfHover > a{color:#ffffff;background-color:#4f4f4f;}.main-navigation .main-nav ul ul li[class*="current-menu-"] > a{color:#ffffff;background-color:#4f4f4f;}.main-navigation .main-nav ul ul li[class*="current-menu-"] > a:hover,.main-navigation .main-nav ul ul li[class*="current-menu-"].sfHover > a{color:#ffffff;background-color:#4f4f4f;}.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header{background-color:#ffffff;}.entry-meta{color:#595959;}.entry-meta a,.entry-meta a:visited{color:#595959;}.entry-meta a:hover{color:#1e73be;}.sidebar .widget{background-color:#ffffff;}.sidebar .widget .widget-title{color:#000000;}.footer-widgets{background-color:#ffffff;}.footer-widgets .widget-title{color:#000000;}.site-info{color:#ffffff;background-color:#222222;}.site-info a,.site-info a:visited{color:#ffffff;}.site-info a:hover{color:#606060;}.footer-bar .widget_nav_menu .current-menu-item a{color:#606060;}input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="search"],input[type="tel"],input[type="number"],textarea,select{color:#666666;background-color:#fafafa;border-color:#cccccc;}input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="number"]:focus,textarea:focus,select:focus{color:#666666;background-color:#ffffff;border-color:#bfbfbf;}button,html input[type="button"],input[type="reset"],input[type="submit"],a.button,a.button:visited,a.wp-block-button__link:not(.has-background){color:#ffffff;background-color:#666666;}button:hover,html input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover,a.button:hover,button:focus,html input[type="button"]:focus,input[type="reset"]:focus,input[type="submit"]:focus,a.button:focus,a.wp-block-button__link:not(.has-background):active,a.wp-block-button__link:not(.has-background):focus,a.wp-block-button__link:not(.has-background):hover{color:#ffffff;background-color:#3f3f3f;}.generate-back-to-top,.generate-back-to-top:visited{background-color:rgba( 0,0,0,0.4 );color:#ffffff;}.generate-back-to-top:hover,.generate-back-to-top:focus{background-color:rgba( 0,0,0,0.6 );color:#ffffff;}.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull{margin-left:-40px;width:calc(100% + 80px);max-width:calc(100% + 80px);}@media (max-width:768px){.separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .separate-containers .paging-navigation, .one-container .site-content, .inside-page-header{padding:30px;}.entry-content .alignwide, body:not(.no-sidebar) .entry-content .alignfull{margin-left:-30px;width:calc(100% + 60px);max-width:calc(100% + 60px);}}.rtl .menu-item-has-children .dropdown-menu-toggle{padding-left:20px;}.rtl .main-navigation .main-nav ul li.menu-item-has-children > a{padding-right:20px;}.one-container .sidebar .widget{padding:0px;}


.jc-nav-btn {
    flex: 1;
    max-width: 200px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 18px;
    background: linear-gradient(135deg, #4a90e2 0%, #357abd 100%);
    color: #fff !important;
    text-decoration: none;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 500;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.jc-nav-btn:hover {
    background: linear-gradient(135deg, #357abd 0%, #2868a8 100%);
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    color: #fff !important;
}

.jc-nav-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.jc-nav-disabled {
    background: transparent;
    box-shadow: none;
    cursor: default;
    pointer-events: none;
}

.jc-nav-icon {
    font-size: 18px;
    line-height: 1;
}

.jc-nav-label {
    font-size: 15px;
    line-height: 1.2;
}

.jc-nav-prev {
    margin-right: auto;
}

.jc-nav-next {
    margin-left: auto;
}

/* Mobile responsive */
@media (max-width: 600px) {
    .jc-image-nav {
        gap: 10px;
        margin: 15px 0 12px;
    }

    .jc-nav-btn {
        max-width: 160px;
        padding: 8px 14px;
        font-size: 14px;
        gap: 6px;
    }

    .jc-nav-icon {
        font-size: 16px;
    }

    .jc-nav-label {
        font-size: 14px;
    }
}

/* Très petit écran : icônes seulement */
@media (max-width: 400px) {
    .jc-nav-btn {
        max-width: 50px;
        padding: 10px;
    }

    .jc-nav-label {
        display: none;
    }

    .jc-nav-icon {
        font-size: 20px;
    }
}
/* === Harmonisation PRINT/DOWNLOAD/COLOR ONLINE === */
.sharify-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 5px 0 !important;
    overflow: visible !important;
}

.sharify-container ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.sharify-container li {
    list-style: none !important;
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    flex: 1 1 0 !important;
    max-width: calc((100% - 16px) / 3) !important;
    min-width: 0 !important;
}

.sharify-container li a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 16px !important;
    min-height: 48px !important;
    height: auto !important;
    line-height: 1.2 !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    color: #fff !important;
    border: 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    width: 100% !important;
}

/* PRINT - Bleu (garde sa couleur d'origine) */
.sharify-container li.sharify-btn-vk a {
    background: linear-gradient(135deg, #5a9fd4 0%, #4a8fc4 100%) !important;
}

.sharify-container li.sharify-btn-vk a:hover {
    background: linear-gradient(135deg, #4a8fc4 0%, #3a7fb4 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

/* DOWNLOAD - Vert (garde sa couleur d'origine) */
.sharify-container li.sharify-btn-skype a {
    background: linear-gradient(135deg, #61ba46 0%, #51aa36 100%) !important;
}

.sharify-container li.sharify-btn-skype a:hover {
    background: linear-gradient(135deg, #51aa36 0%, #419a26 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

/* COLOR ONLINE - Rouge bordeaux (spécificité renforcée) */
.sharify-container li.sharify-btn-skype.sharify-btn-color-online a {
    background: linear-gradient(135deg, #8b0000 0%, #6b0000 100%) !important;
}

.sharify-container li.sharify-btn-skype.sharify-btn-color-online a:hover {
    background: linear-gradient(135deg, #6b0000 0%, #4b0000 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
}

.sharify-container li a:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.sharify-icon {
    font-size: 20px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.sharify-icon img {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
}

.sharify-title {
    font-size: 14px !important;
    line-height: 1.2 !important;
}

/* === Navigation Précédent/Suivant (UX - réduction taux de rebond) === */
.jc-image-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
}

.jc-nav-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #95a5a6 0%, #7f8c8d 100%);
    color: #fff !important;
    text-decoration: none;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 500;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    white-space: nowrap;
}

.jc-nav-btn:hover {
    background: linear-gradient(135deg, #7f8c8d 0%, #6c7a7b 100%);
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    color: #fff !important;
}

.jc-nav-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.jc-nav-icon {
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
}

.jc-nav-text {
    font-size: 16px;
    line-height: 1.2;
}

/* Tablette : réduire padding */
@media (max-width: 768px) {
    .sharify-container li a {
        padding: 10px 12px !important;
        font-size: 13px !important;
    }

    .sharify-icon img {
        width: 18px !important;
        height: 18px !important;
    }

    .sharify-title {
        font-size: 13px !important;
    }

    .jc-nav-btn {
        padding: 10px 18px;
        font-size: 15px;
    }

    .jc-nav-icon {
        font-size: 18px;
    }

    .jc-nav-text {
        font-size: 15px;
    }
}

/* Mobile : texte masqué, icône seule */
@media (max-width: 600px) {
    .sharify-container li a {
        padding: 12px !important;
        gap: 0 !important;
    }

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

    .sharify-icon {
        font-size: 24px !important;
    }

    .sharify-icon img {
        width: 24px !important;
        height: 24px !important;
    }

    .jc-nav-btn {
        padding: 12px 16px;
        gap: 0;
    }

    .jc-nav-text {
        display: none;
    }

    .jc-nav-icon {
        font-size: 24px;
    }
}

/* ===== Sidebar Left (migre depuis sidebar-left.css) ===== */
.jc-sidebar-section-title {
    padding-top: 10px;
}

.jc-sidebar-section-title-light {
    color: whitesmoke;
}

.wpb_wmca_accordion_wrapper_theme_dark > ul > li > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.wpb-submenu-indicator-minus > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul ul {
    background: unset;
}

.wpb_wmca_accordion_wrapper_theme_dark > ul > li.wpb-submenu-indicator-minus > a {
    background-color: #002346;
}

.wpb_wmca_accordion_wrapper_theme_dark > ul > li:not(:last-child) > a {
    border-bottom: 1px solid #556f98 !important;
}

.wpb_category_n_menu_accordion > ul > li > a {
    padding: 12px 22px;
    font-size: 15px;
}

.wpb_wmca_accordion_wrapper_theme_dark ul ul li a {
    padding: 6px 15px;
}

.wpb_category_n_menu_accordion li a {
    font-size: 14px;
}

.wpb_wmca_accordion_wrapper_theme_dark > ul > li > a:hover,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current_page_ancestor > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current_page_parent > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current_page_item > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current-menu-parent > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current-menu-ancestor > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current-menu-item > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.current-cat > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.wpb-wmca-current-cat-parent > a,
.wpb_wmca_accordion_wrapper_theme_dark > ul > li.wpb-submenu-indicator-minus > a {
    background-color: #002346;
}

.wpb_wmca_accordion_wrapper_theme_dark > ul > li li.current-menu-item > a,
.wpb_wmca_accordion_wrapper_theme_dark li.current_page_item > a {
    border-color: #a78c43;
}

.gallery-link {
    padding-bottom: 5px;
}

.gallery-link a {
    color: #fff;
    font-size: 14px;
}

.ebook-rainbow-link {
    font-size: 15px;
    font-weight: 700;
    background: linear-gradient(90deg, #ff5f6d, #ffc371, #47e3ff, #6a67ce, #ff6ec4);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
    margin-top: 10px;
    text-decoration: none;
}

.ebook-rainbow-link:hover {
    text-decoration: underline;
}

.jc-sidebar-spacer {
    clear: left;
}

.jc-sidebar-spacer-sm {
    padding-bottom: 30px;
}

.jc-sidebar-spacer-lg {
    padding-bottom: 100px;
}

body.jc-family-cla,
body.jc-family-cla .site-header {
    background-color: #003872 !important;
}

body.jc-family-cle,
body.jc-family-cle .site-header {
    background-color: #016183 !important;
}
