/*
Theme Name: UpWP FSE
Author:  
Author URI: 
Theme URI: 
Tags: full-site-editing
Text Domain: upwp-fse
Requires at least: 5.8
Requires PHP: 7.4
Tested up to: 5.9
Version: 1.0.0

License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/

@font-face {
    font-family: 'ClaireHand';
    src: url('assets/fonts/ClaireHandRegular.woff2') format('woff2'),
         url('assets/fonts/ClaireHandRegular.woff') format('woff'),
         url('assets/fonts/ClaireHandRegular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'ClaireHand';
    src: url('assets/fonts/ClaireHandLight.woff2') format('woff2'),
         url('assets/fonts/ClaireHandLight.woff') format('woff'),
         url('assets/fonts/ClaireHandLight.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'ClaireHand';
    src: url('assets/fonts/ClaireHandBold.woff2') format('woff2'),
         url('assets/fonts/ClaireHandBold.woff') format('woff'),
         url('assets/fonts/ClaireHandBold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-200.woff2') format('woff2'),
         url('assets/fonts/Poppins-200.woff') format('woff'),
         url('assets/fonts/Poppins-200.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-300.woff2') format('woff2'),
         url('assets/fonts/Poppins-300.woff') format('woff'),
         url('assets/fonts/Poppins-300.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-400.woff2') format('woff2'),
         url('assets/fonts/Poppins-400.woff') format('woff'),
         url('assets/fonts/Poppins-400.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-600.woff2') format('woff2'),
         url('assets/fonts/Poppins-600.woff') format('woff'),
         url('assets/fonts/Poppins-600.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-700.woff2') format('woff2'),
         url('assets/fonts/Poppins-700.woff') format('woff'),
         url('assets/fonts/Poppins-700.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-800.woff2') format('woff2'),
         url('assets/fonts/Poppins-800.woff') format('woff'),
         url('assets/fonts/Poppins-800.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('assets/fonts/Poppins-900.woff2') format('woff2'),
         url('assets/fonts/Poppins-900.woff') format('woff'),
         url('assets/fonts/Poppins-900.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}



html{overflow-x:hidden;}
*, ::after, ::before {
    box-sizing: border-box;
}

.hide{display:none;}
.row{position:relative;}
.row:after{content:'';clear:both;display: block;}

.col_3{display:inline-block;float:left;width:33%;padding:0 10px;}
.col_4{display:inline-block;float:left;width:25%;padding:0 10px;}

.primary {width:68%;float:left}
.sidebar{width: 27%;float:left;margin-left:2%;}

ul, ol{margin-left: 20px;}
.site-title{z-index: 9999999999999999;}
 
ul.nolistitem li,
ul.nolistitem{list-style: none;}

a{ 
  color: #1a91a7;
}
a,
a:hover{text-decoration:unset !important}

.entry-content h1{margin-top:50px}
.entry-content h2{margin-top:40px}
.entry-content h3{margin-top:30px}
.entry-content h4{margin-top:20px}
.entry-content h5{margin-top:10px}

figure.white img{width:12px;filter:invert(.2);vertical-align:middle;margin-right:6px;}

/* HEADER */
.logohp img{max-height:100px;    object-fit: contain  !important;}
.site-title  a{text-decoration:unset !important}
/* NAV */
header .has-orange-background-color,
header .wp-block-navigation__container li.current-menu-item .wp-block-navigation__submenu-container{padding:0;}
header .wp-block-navigation__container li{margin:0 ;padding:0} 
header .wp-block-navigation__container li a{margin:0 ;padding:  25px 12px;background:#e1854b;  text-transform: none;} 
header .wp-block-navigation__container li.current-menu-item a{color:#fff !important ;background:#CE7106} 
header .wp-block-navigation__container li a + button{margin-left:-10px !important;}
header .wp-block-navigation__container li:hover a{color:#fff  !important;background:#1a91a7; }  
header .wp-block-navigation__container li:hover button{opacity:0;transform:.5s}  
header .wp-block-navigation__container li:hover li button{opacity:1}  
header .wp-block-navigation__container li li:hover button{opacity:0}  

header .wp-block-navigation__container li .wp-block-navigation__submenu-container{border:0px !important;background:#1a91a7;left:0 !important ;z-index:999 !important}
header .wp-block-navigation__container li li .wp-block-navigation__submenu-container{ left:100% !important ; }
header .wp-block-navigation__container li .wp-block-navigation__submenu-container li a{ padding:12px 20px;font-size:14px;font-weight:400;color:#fff !important ;background:#1a91a7} 
header .wp-block-navigation__container li .wp-block-navigation__submenu-container li a:hover{color:#fff  !important;background:#0B798C; } 

header .wp-block-navigation .has-child:not(.open-on-click):hover>.wp-block-navigation__submenu-container{min-width:100%}
header .wp-block-navigation .has-child:nth-child(4):not(.open-on-click):hover>.wp-block-navigation__submenu-container{width:400px}
header .wp-block-navigation .has-child:nth-child(5):not(.open-on-click):hover>.wp-block-navigation__submenu-container{width:205px}
header .wp-block-navigation .has-child:nth-child(6):not(.open-on-click):hover>.wp-block-navigation__submenu-container{width:205px}

header .wp-block-navigation .has-child .wp-block-navigation__submenu-icon  path {    stroke-width: 2.5;}
header .wp-block-navigation .has-child .has-child:not(.open-on-click):hover>.wp-block-navigation__submenu-container{max-width:270px}

.breadcrumb,
main{z-index:0}

/* BLOCKS */ 
.marker-category-1 {
    background-color: red;
} 
.breadcrumb{
    position: relative;
    margin-bottom: 10px;
}
.breadcrumb img{margin-top:-4px;}
.breadcrumb:after {
    content: ""; 
    display: block;
    width: 15px;
    position: absolute;
    bottom: 1px;
    height: 2px;
    background: #1A1A1A;
    left: 0;
}
.wp-block-cover a{text-decoration:unset !important;} 
.wp-block-cover:hover .cover-link{background:rgba(0,0,0,.5);}

.wp-block-cover .wp-block-cover__inner-container {z-index: 90;}

.wp-block-post-template {
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
}


.sidesearch .sidebar_class{
    background: #e1854b;
    padding: 10px 10px;
    border-radius: 5px;
}
.sidesearch .sidebar_class h3{
    color: #fff;
    text-align: center;
    font-weight: 300;
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: 1px;
    margin: 5px 0 10px;
    border-bottom: 1px solid #fff;
}
.sidesearch .widget-container{
    margin-bottom: 5px; 
    padding: 0;
}
.sidesearch .widget-title{
    display: block;
    width: 100%;
    color: #fff !important; 
    margin-top: 20px;
    margin-bottom: -10px;
}
.sidesearch .widget-title span{ 
    font-size: 15px;
    border-bottom: 1px solid #fff;
}
.sidesearch .widget-title span img{
    width:15px;filter:invert(1);margin-right:10px;
}
.sidesearch #search_query,
.sidesearch select {
    max-width: 100%;
    display: block;
    width: 100%;
    margin: 10px 0 0; 
    height: 40px;
    color: #555;
    background: #f9f9f9;
    border: 0px;
    font-size: 14px;
	padding:5px;
}
.sidesearch #search_query{padding:5px 10px;}
.sidesearch input[type="submit"] {  
    width: 100%;
    background: #f1f1f1;
    padding: 10px;
    color: #777;
    text-transform: uppercase;
    font-size: 12px; 
    margin-top: 5px;
    border: 0px;}
.sidesearch input[type="submit"]:hover {    background:#fff;color:#e1854b;}

.meta-content{margin-bottom:30px}
.meta-content div{width:auto;display:inline-block;margin-right:5px;}
.meta-content img{width:10px;  filter: invert(.7);    vertical-align: middle;    margin-right: 5px;}
.meta-content a{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#555;margin-right:10px;}
.meta-content a:hover{background:unset;color:#e1854b;text-decoration:underline;}

.post-box{padding:0 10px;}
#publications { 
	padding:0 20px; 
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* optionnel pour l'espacement */
}
#publications .post-box {  
	flex: 1 0 31%;  
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background: #f9f9f9;
    padding: 10px;
    border: 1px solid #ddd; 
	
}
#publications.pshort .post-box {flex: 1 0 23.5%;}
#posts_content .post-box .thumb {      
    display: block;
    margin: -10px -10px 10px; 
    height: 200px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
} 
#posts_content .post-box .meta-content {
    margin-bottom: 0;
    line-height: 18px;
}
#posts_content .post-box .meta-content i {
    font-size: 9px; 
}
#posts_content .post-box .meta-content a {
    font-size: 11px; 
    letter-spacing: 0px; 
}
#posts_content .post-box h2.post-title {
    font-size: 18px !important;
    line-height: 20px;
    margin: 15px 0 5px;
}
#posts_content .post-box .post-excerpt {
    font-size: 14px;
}
#posts_content .post-box a.continue-reading-link { 
    padding: 0px 10px;
    margin-top: 5px;
    line-height: 2;
    font-size: 0.7em;
    letter-spacing: 0px; 
    border-width: 1px; 
}
#posts_content .pagination {
    width: calc(100% - 30px);
    text-align: center;
    margin: 50px 0px 0 8px;
    padding: 10px;
    border: 1px solid #eee;}

#posts_content .pagination .total{
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
    color: #555;}
#posts_content .pagination a,
#posts_content .pagination span{display:inline-block;float:unset;margin: 0 2px;}

#posts_content .pagination .prev,
#posts_content .pagination .next{width:auto;
    font-size: 12px;padding:5px 10px;
    text-transform: uppercase;}

.publi_posts .publication {	border:1px solid #008080 !important;    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);background:#f9f9f9;
    transition: transform 0.2s ease, box-shadow 0.2s ease;}

.publi_posts .publication img {	  border-radius: 12px 12px 0 0;}

.wp-block-separator.weight2{height:3px !important;}

.agenda-externe {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin: 20px 0;
    font-family: inherit;
    color: #000;
}

.agenda-externe .item {
    background: #fff;
	border:1px solid #008080 !important;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between; 
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.agenda-externe .item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.agenda-externe .thumb {
    position: relative;
    width: 100%;
    height: 130px;
    overflow: hidden;
}

.agenda-externe .thumb img {
    width: 100%;
    height: 130px;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.agenda-externe .thumb::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(75, 146, 145, 0.4);
    opacity: 0;
    transition: opacity 0.3s ease;
}
 

.agenda-externe .thumb:hover::after {
    opacity: 1;
}
.agenda-externe .item .content {
    flex-grow: 1; 
    display: flex;
    flex-direction: column;
	margin-bottom:10px;
}
.agenda-externe .item h4 {
    font-size: 1em;
    color:#1a91a7;
    margin: 15px 15px 10px;
    line-height: 1.3;
}

.agenda-externe .item h4 a {
    text-decoration: none;
    color: inherit;
}
.agenda-externe .item h4 a:hover{ 
    color: var(--wp--preset--color--orange);
}

.agenda-externe .item p {
    margin: 5px 15px;
    font-size: 0.75em;
    display: flex;
    align-items: center;
    color: #000;
	line-height:1.2em;
}

.agenda-externe .item p img {
    width: 12px;
    height: auto;
    margin-right: 8px;
    display: inline-block;
}

.agenda-externe .item a.agenda-button {
    display: inline-block;
    margin: 15px;
    padding: 10px 15px;
    background:#1a91a7;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    text-align: center;
    transition: transform 0.2s ease, background 0.2s ease;
    font-size: 0.95em;
    margin-top: auto;
}

.agenda-externe .item a.agenda-button:hover {
    transform: scale(1.05);
    background: var(--wp--preset--color--orange);
}

/* Ninja Form */
.nf-form-fields-required{display:none;}
.nf-form-content label{ font-size:16px;color:#0D87A3;}
.nf-form-content input[type=button], .nf-form-content input[type=submit]{width:100%}
.nf-form-content button, .nf-form-content input[type=button], .nf-form-content input[type=submit]{background:#0D87A3;}
.nf-form-content button:hover, .nf-form-content input[type=button]:hover, .nf-form-content input[type=submit]:hover{background:#87d5e6; }


body .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none !important;;
}
body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: block !important;
}

/*FOOTER */
footer ul.nolistitem{float:right}
footer a {text-decoration:unset}

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


    .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open{background:#e1854b !important;color:#5a5a5a !important;   margin-top:85px;z-index: 900;}
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding: 20px}
    .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open a,
    .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open a span span{color:#fff !important;background:none !important; margin: 0 auto;}
    .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open a:hover,
    .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open a:hover span span{color:#5a5a5a !important;background:none !important}
	
	.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .newsletter a{margin-bottom:20px;}
	.wp-block-navigation__responsive-container-content, 
	.wp-block-navigation__responsive-container-content ul,
	.wp-block-navigation__responsive-container-content ul ul,
	.wp-block-navigation__responsive-container-content li,
	.wp-block-navigation__responsive-container-content li a {text-align:left !important;width:100% !important;    padding-right: 5px;}
	.wp-block-navigation__responsive-container-content li a {display:block !important;padding-left:20px;} 
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container{
    border: 1px solid #fff !important;
    line-height: 26px;
    min-width: 100% !important;
    padding: 10px;
    margin-bottom: 15px;}
	
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{border:0 !important; margin-bottom:0; padding:0 0 0 20px}
	
    .mobile_pad{padding:0 20px}
    .mobile_pad .fwidth{margin-left: -20px !important;margin-right: -20px !important;}
    
    .wp-block-spacer.th100{height:100px !important}
    .wp-block-spacer.th50{height:50px !important} 
   
    body .wp-block-navigation__responsive-container-open:not(.always-shown):hover{color:#fff;}
    .wp-block-navigation__responsive-container-close {   color:#5a5a5a;  top: 20px; right: 30px; } 
    .wp-block-navigation__responsive-container-close:hover {   color:#fff;}
    .wp-block-navigation__container li:first-child a span{display:block !important}
    .wp-block-navigation__container li:first-child a:before{display:none !important}

    body .wp-block-navigation__responsive-container-open:not(.always-shown) {display: block !important; }
    body .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {display: none !important;}
    
    .wp-block-navigation__container li { margin: 20px 20px 30px;font-size: 21px;font-weight: 700;} 
    .wp-block-navigation .wp-block-navigation-item__content{color:#5a5a5a;}
    .wp-block-navigation .wp-block-navigation-item__content:hover{color:#e1854b;}

	#publications.pshort .post-box,
	#publications .post-box{    flex: 1 0 46.5%;}
    #marker_container #close_container{
        bottom: 15px;
        top: unset;
        right: 15px;}
    #info_container #info_content, #marker_content{ 
        position: relative;
        width: 100%;
        top: 0;
        right: 0;
        max-height: unset;
        overflow: hidden;
    }
    #info_container #info_close{top:-15px;right:15px;}
    #filters { 
    position: relative;
    top: unset;
    right: unset;
    width: calc(100% + 2px);
    margin-left: -1px;}
    #filters h4:hover{color: #1a91a7;}
    #filters.open #filter_img{display:none;}
    #filters.open #filters_close{display:inline-block;margin-right: 5px;}
    #filters .fields,
    #filters #info_img  {
        display: none;
    }
    
    #filters h4 {
        cursor: pointer;
    }


} 
@media (max-width: 900px) {
    .agenda-externe {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media only screen and (max-width:768px) { 

	.wp-block-navigation__responsive-container-close{top:10px;right:20px; }
    .wp-block-spacer.mh100{height:100px !important}
    .wp-block-spacer.mh50{height:50px !important} 
    
    .mobile_fullwidth{width:100% !important;}
    .mobile_center {text-align: center !important;}
    .mobile_footer_contact{padding:0 !important;margin: 30px 0 10px !important;    text-align: center !important;}
    .mobile_footer_contact ul{padding:0;margin:0;float:unset !important;}
    .mobile_footer_contact ul li {display:inline-block;margin-right:10px;}

    .wp-block-query.mobile_imgfirst .wp-block-group{flex-wrap: wrap;margin-bottom:20px;}
    .wp-block-query.mobile_imgfirst .wp-block-group .wp-block-post-featured-image{    margin-bottom: 20px;}

	#publications.pshort .post-box,
	#publications .post-box{    flex: 1 0 100%;}

} 


@media (max-width: 500px) {
	
	
    .agenda-externe {
        grid-template-columns: 1fr;
    }
}

@media only screen and (max-width:400px) { 
  
    .wp-block-stackable-heading.logo h1{font-size: 31px !important;letter-spacing: 0 !important; }
}