/*
Theme Name: EGPL
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: Sooraj Mal
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * IMPORTANT: This file is only served on the frontend when `SCRIPT_DEBUG` is enabled;
 * in most instances, the `style.min.css` file will be served. It is not recommended that you
 * use the Theme File Editor to modify this stylesheet. Instead, add the necessary style
 * overrides via "Additional CSS" in the Site Editor.
 */

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap');

a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
	text-decoration: none;
}


/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

/*
 * Prevents unnecessary scrollbars while handling long lines of preformatted text.
 * https://core.trac.wordpress.org/ticket/63875
 */
:where(pre) {
	overflow-x: auto;
}

:root {
    --width: 120rem;
    --primary: #002688;
    --container-width: 1440px;
    --font-family: "Lato", sans-serif;
    --secondary: #2b2b2b;
  }
body, a , p , li, div, input, select, textarea, * { font-family: var(--font-family) !important;}  
footer.wp-block-template-part {
  padding-top: 4rem;
  margin-top:0;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu{padding:2rem !important; top: 62px;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-megamenu > ul.mega-sub-menu li a {
  line-height: 20px !important;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu{
    margin-top:15px;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu li {
  margin: 10px 0;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li {
  margin: 0 10px !important;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item > a.mega-menu-link, 
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item > a.mega-menu-link:hover, 
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item > a.mega-menu-link:focus{
border-radius:100px !important;    padding:0 20px;
}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link{padding:0 20px;}
.custom-logo-link img{max-height:100px;}
.wp-block-navigation .wp-block-page-list{gap: 40px;}
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{border: 0;background: var(--primary);
    color: #fff;
    margin-top: 20px;}
    .wp-block-navigation .wp-block-navigation-item li a {
        font-size: 1rem;
      }    
      .wp-block-navigation .wp-block-navigation-item li:hover a {
        background: var(--secondary);
      }      
      .wp-block-navigation .wp-block-navigation-item li a {
        font-size: 1rem;
        padding: 0.7rem;
      } 
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container::before {
    content: "";
    border-bottom: 10px solid var(--primary);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    position: absolute;
    top: -10px;
    right: 10px;
  }
.home-postfirst .wp-block-group.home-post-bg p, .taxonomy-category.wp-block-post-terms {
  position: absolute;
  padding: 5px 15px !important;
  border-radius: 100px;
  font-size: 12px;
  letter-spacing: 0.4px;
  top:20px;
}
.home-post-loop ul > li h4 {
  margin: 10px 0 20px;
  font-weight: 500;
  height: 84px;
  font-size: inherit !important;
}
.home-post-loop time a{color: #9e9e9e;}
.home-postfirst h2 {  height: 172px;}
.home-posts  .home-post-loop ul > li h4 a, .home-posts .home-post-content h2 a {color:#000;}
 .home-post-loop ul > li .taxonomy-category.wp-block-post-terms a{color:#fff;}
 .home-post-loop ul > li .taxonomy-category.wp-block-post-terms{position: static; background:var(--wp--preset--color--custom-primar) !important; display: inline-block;
  color: #fff !important;}
.home-postfirst .wp-block-group.home-post-bg {
  height: 224px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.wp-block-column.home-postfirst, .home-post-loop ul > li { transition: all .3s ease; margin-bottom:30px !important;
  box-shadow: 0px 3px 1px rgba(0,0,0,0.06),0px 2px 2px rgba(0,0,0,0.06),0px 1px 5px rgba(0,0,0,0.1);
}
.home-post-loop ul > li:hover {box-shadow: 0px 9px 46px rgba(0,0,0,0.06),0px 24px 38px rgba(0,0,0,0.06),0px 11px 15px rgba(0,0,0,0.1);}
.home-post-loop ul > li {padding:30px 40px ;}
#mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 > li.mega-menu-item a{font-weight:600 !important;}  
#mega-menu-wrap-max_mega_menu_1{width:100%;}  
  p.boxed-style {
    display: inline-block;
    padding: 5px 10px !important;
  }
  .full-bg-img {
    background-size: contain !important;
    background-repeat: no-repeat; position: relative;
    background-position: right;
  }
  .full-bg-img::before {
    content: "";
    position: absolute;
    background: linear-gradient(90deg, #002789, #002789, #002789, rgba(0,39,137,1), rgba(0,39,137,0.9), transparent);
    top: 58px;
    bottom: 0;
    width: 61%;
    left: 0;
  }
.boxed-pdf .wp-block-file a {
  margin: 0;
}
.boxed-pdf .wp-block-file {
    margin-top: 50px;
  font-size: 0;
}
.boxed-pdf .wp-block-file .wp-block-file__button {
  background: none;
  color: #009DE9;
  background-image: linear-gradient(135deg,#0AF 0.89%,#23D2B5 94.05%);
  background-size: 100%;
  background-repeat: repeat;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-decoration: none;
    text-decoration-thickness: auto;
  padding: 0;
  position:relative;
  margin: 0;
  font-size: 0;
}
.boxed-pdf .wp-block-file .wp-block-file__button:before{content:"Télécharger"; background:url(assets/images/download.svg) no-repeat;
    font-size: 17px;
  padding: 0 0 0 25px;
}
    

.boxed-pdf {
  box-shadow: 0px 1px 10px rgba(0,0,0,0.06),0px 4px 5px rgba(0,0,0,0.06),0px 2px 4px rgba(0,0,0,0.1) !important;
  padding: 34px 40px !important;
  max-width: 500px;
  margin: 50px 0 !important;
}
  .zindex2{z-index: 2; position: relative;}
header.wp-block-template-part {
  box-shadow: 0px 4px 6px rgba(0,0,0,0.15);
  padding-bottom: 10px;
}
.inner-content .wp-block-group .entry-content {
  padding: 0;
}
.wp-block-group.hero-section {
  max-width: var(--container-width);
  margin: -19px auto 0;
}
.wp-block-group.inner-slider figure.inner-featured {  max-width: var(--container-width);  margin: -19px auto 0; position:relative;}
.wp-block-group.inner-group {
  padding-top: 40px !important;
}
.inner-content .wp-block-group.inner-group {

}
.custom-breadcrumb {
  display: flex;
  gap: 20px;
  font-weight: 600;
  font-size: 14px; 
  margin: 25px 0 50px;
}
.custom-breadcrumb a{color: inherit !important}
.inner-main:has(figure.inner-featured img) .inner-content .wp-block-group.inner-group{
  margin-top: -230px;
  padding: 42px 95px !important;    
    
}
.wp-block-group.inner-slider figure.inner-featured::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0,0,0,0.1);
}
.inner-content .wp-block-group.inner-group .wp-block-post-title {
  font-size: 4rem;
  font-weight: 600;
}
.yoast-breadcrumbs a {
  color: #000;
}
.yoast-breadcrumbs {
  font-weight: 600; margin-bottom:50px;
}
/*---------------------------------- Slick SLider----------------------------------------------------*/
.main-slider,
.slick-center,
.item-slider,
.client,
.thumb-slider { display: none; }
.item-slider.slick-initialized,
.thumb-slider.slick-initialized,
.client.slick-initialized,
.main-slider.slick-initialized { display: block !important; margin:0; }
ul.main-slider {	overflow: inherit !important;	max-height: inherit !important;  }
.slider {position: relative;margin: 0px 0;overflow: hidden;}
.slider .inner-item {height: 400px;}
.slider .container {position: relative;}
.slick-slide .caption {color: #fff;font-size: 1.2em;line-height: 1.2em;position: absolute;left: 10%;text-shadow: 2px 2px 2px #000;top: 37%;width: 35%;background:rgba(0,0,0,0.7);padding:20px 20px 0;z-index: 99;}
.slick-slider {position: relative;display: block;box-sizing: border-box;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-touch-callout: none;-khtml-user-select: none;-ms-touch-action: pan-y;touch-action: pan-y;-webkit-tap-highlight-color: transparent;}
.thumb-slider .slick-slide {margin: 5px 0 0 5px;}
.slider-thumb .thumb-slider .slick-slide img{  max-width:100%; height:auto; box-sizing:border-box;}
.slick-list {position: relative;display: block;overflow: hidden;margin: 0;padding: 0;}
.slick-list:focus {outline: none;}
.slick-list.dragging {cursor: pointer;cursor: hand;}
.slick-slider .slick-track, .slick-slider .slick-list {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);}
.slick-track {position: relative;top: 0;left: 0;display: block;}
.slick-track:before, .slick-track:after {display: table;content: '';}
.slick-track:after {clear: both;}
.slick-loading .slick-track {visibility: hidden;}
.slick-slide {display: none;float: left;height: 100%;min-height: 1px;position: relative;}
[dir='rtl'] .slick-slide {float: right;}
.slick-slide img {display: block;transition: all .25s ease;}
.slick-slide.slick-loading img {display: none;}
.slick-slide.dragging img {pointer-events: none;}
.slick-initialized .slick-slide {display: block;}
.slick-loading .slick-slide {visibility: hidden;}
.slick-vertical .slick-slide {display: block;height: auto;border: 1px solid transparent;}
.slick-arrow.slick-hidden {display: none;}
.slick-dots {position: absolute;z-index: 11;bottom: 10px;margin: 0px;padding: 0;text-align: center;width: 100%;}
.slick-dots li {list-style: none;display: inline-block;margin:0;}
.slick-dots button { border: 0; background:url(assets/images/dot.svg) no-repeat;background-size: 12px; filter: brightness(0) invert(1); width: 15px;height: 19px;border-radius: 100%;font-size: 0;padding: 0px;margin-right: 5px;}
.slick-dots .slick-active button {background-image: url(assets/images/dot.svg);filter: brightness(0); opacity:0.4;}
.slick-arrow {
    border: 0px;
    font-size: 0;
    margin-top: -40px !important;
    position: absolute;
    top: 50%; left: 10px;
    z-index: 1;
    background: rgba(255,255,255,0.8);
    width: 40px;
    height: 40px;
    border-radius: 100px;
    cursor: pointer;
    transition: all .3s ease;
  }
.services-slider .slick-arrow {height: 65px;}
.slick-arrow::after {
    content: "\2039";
    color: #fff;
    font-size: 50px;
    font-family: Arial;
    line-height: 18px;
    font-weight: 100;
    margin-left: 2px;
  }
.slick-arrow:hover {text-decoration: none;filter: invert(100%);}
.slick-next.slick-arrow {right: 10px; left: inherit; }
.slick-next.slick-arrow:after{content:"\203A";}
.slider-progress {width: 100%;height: 5px;background: rgba(0,216,192,0.8);position: absolute;top: 0;z-index: 99;}
.slider-progress .progress {width: 0%;height: 5px;background: rgba(36,51,0,0.8);}
.thumb-slider .slick-active img {border: 1px solid transparent}
.thumb-slider .slick-current img {opacity:0.5;}
.slick-center .slick-slide {text-align: center;line-height: 0; margin-top:50px;transition: transform .3s ease;}
.slick-center img {text-align: center;margin: 0 auto;max-width:200px;}
.slick-center .slick-list, .slick-center .slick-track {overflow: visible;}
.slick-center .slick-current {width: 0px;top: 50%;z-index:1;transform: scale(1.7);transform-origin: center center;}


.desktop-only{display:block;}
.mobile-only{display:none;}
@media screen and (max-width: 640px) and (min-width: 200px) {
.desktop-only{display:none;}
.mobile-only{display:block;}

}
/*---------------------------------- Footer ----------------------------------------------------*/
.wp-block-navigation a {
    color: #ffffff;
    text-decoration: none;
    font-size: 1rem;
}

.wp-block-navigation a:hover {
    color: #018fe2 !important;
    text-decoration: underline;
}
.wp-block-list a:hover {
    color: #005aa0 !important;
    text-decoration: underline;
}
/* ============================================
   Info Cards Grid
   ============================================ */
.info-cards-section {
    position: relative;
    background: linear-gradient(to bottom, #ffffff 0%, #ffffff 40%, #EEEEEE 40%, #EEEEEE 100%);
}

.info-card-item {
    position: relative;
    cursor: pointer;
}

.info-card-link-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    text-indent: -9999px;
    outline: none;
    background: transparent;
    border: none;
    text-decoration: none;
}

.info-card-link-overlay:focus,
.info-card-link-overlay:active {
    outline: none;
    box-shadow: none;
    background: transparent;
}

.info-card-cover {
    border-radius: 0px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.info-card-item:hover .info-card-cover {

}

.info-card-cover {
    position: relative;
    min-height: 340px;
    margin:0;
}

.info-card-cover::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
    z-index: 1;
}

.info-card-cover .wp-block-cover__inner-container {
    width: 100% !important;
    padding: 2rem 0 !important;
    position: static;
    z-index: 2;
    box-sizing: border-box;
}

.info-card-content {
    width: 100%;
    z-index: 2;
    position: relative;
}

.info-card-content h3 {
    color: #ffffff !important;
    margin: 0;
    flex: 1;
    min-width: 150px;
}

.info-card-content h3 a {
    color: #ffffff !important;
    text-decoration: none;
}

.info-card-content::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 0L6.59 1.41L12.17 7H0V9H12.17L6.59 14.59L8 16L16 8L8 0Z" fill="white"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    margin-left: 1rem;
    align-self: center;
}

.info-card-item:hover .info-card-content::after {
    transform: translateX(5px);
}

.info-card-arrow {
    display: inline-flex;
    align-items: center;
    color: #ffffff;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    margin-left: 1rem;
}

.info-card-item:hover .info-card-arrow {
    transform: translateX(5px);
}

.info-card-hover-box {
position: absolute;
  bottom: 1rem;
  left: 1rem;
  right: 1rem;
  background: #ffffff;
  color: #000;
  padding: 2rem;
  transform: translateY(100%);
  transition: transform 0.4s ease;
  z-index: 2;
  min-height: 90% !important;
  top: 0rem;
}

.info-card-hover-box::after {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 0L6.59 1.41L12.17 7H0V9H12.17L6.59 14.59L8 16L16 8L8 0Z" fill="black"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    margin-top: 1rem;
    align-self: flex-start;
    transition: transform 0.3s ease;
    margin-left: 150px;
}

.info-card-item:hover .info-card-hover-box {
    transform: translateY(0);
}

.info-card-item:hover .info-card-hover-box::after {
    transform: translateX(5px);
}

.info-card-item:hover .info-card-content {
    opacity: 0;
    transition: opacity 0.2s ease;
}

.info-card-hover-box h4 {
    color: #333;
    margin: 0 0 0.5rem 0;
}

.info-card-hover-box p {
    color: #666;
    margin: 0;
}

/* Responsive */
@media screen and (max-width: 1024px) {
    .info-cards-section .wp-block-columns {
        flex-wrap: wrap !important;
    }
    
    .info-cards-section .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-bottom: 1.5rem;
    }
    
    .info-card-cover {
        min-height: 300px !important;
    }
}
