section {
    background: var(--color-white);
}
section.built {
    background: var(--color-white);
}
.page-template-default main img, .single main img{
    border-radius: var(--radius-16);	
}
#contact .acf-map *{
    border-radius: inherit;	
}
#intro-page{
	position: relative;	
    padding:50px 0;	
}
#nos-formations #intro-page {
    padding: 50px 0 0;
}
#intro-page .ariane *{
	color:  var(--color-white);	
}
#intro-page .ariane p{
	margin:10px 0 20px;	
}
.single-solution #single_ariane #breadcrumbs {
	margin:10px 0 20px;	
}
.single-solution #single_ariane #breadcrumbs * {
	color: var(--color-white);	
}
.breadcrumb_last{
	font-weight:700;	
}
nav.breadcrumbs {
    margin-top: 10px;
}
.single-solution #intro-page nav.breadcrumbs {
    margin: 10px 0 20px;
}
#breadcustom span{
	font-weight: 700;
}
#intro-page *{
    color: var(--color-white);	
}
#intro-page .bloc-2-3, #intro-page .bloc-3{
    display: flex;
    flex-direction: column;
    justify-content: center;
    row-gap: 10px;
	position: relative;
}
/* Nos formations + ajout intro pour actu */
#nos-formations #intro-page h1{
    text-align: center;
    margin: 20px 0;
}
#actualites #intro-page h1,
.single-solution #intro-page h1,
.archive #intro-page h1,
.page-template-default:not(.page-id-158) main:not(#nos-formations) #intro-page h1{
    text-align: center;
    margin: 50px 0 0;
}
#nos-formations #ajax-sofis{
	position: relative;	
	padding: 0;	
}
#actualites #intro-page, .page-template-default:not(.page-id-158) main:not(#nos-formations) #intro-page,  .archive #intro-page, .single-solution #intro-page{
	position: relative;	
	padding:0 0 50px;
	/*overflow: hidden;*/
}
#idsearch #intro-page{
	position: relative;	
}
#nos-formations #ajax-sofis::after {
    content: var(--pattern-patternmetier);
	position: absolute;
    right: 0;
    bottom: -4px;
    z-index: 1;
}
.archive #intro-page::after,
.page-template-default:not(.page-id-158) main:not(#nos-formations) #intro-page::after,
.single-solution #intro-page::after, 
#actualites #intro-page::after, 
#idsearch #intro-page::after {
    content: var(--pattern-pageintro);
	position: absolute;
    right: 0;
    bottom: -4px;
    z-index: 1;
}

#nos-formations #ajax-sofis{
    background: var(--color-marine);
}
#nos-formations #ajax-sofis .bloc-search .search-container {
    max-width: 585px;
    margin-top: 0;
    margin: 0 auto -150px;
}
#nos-formations #ajax-sofis .tab-content p {
    margin-bottom: 12px;
	margin-top: 0;
}
#nos-formations #ajax-sofis .bloc-search .search-container .search-actions {
    margin-top: 20px;
}
#nos-formations #ajax-sofis .bloc-search .search-container .search-select {
    margin-bottom: 20px;
}
#results-formation{
	background: var(--color-gray-light);
}
#nos-formations #results-formation{
	padding-top:190px;
}
.formation-item {
    background: var(--color-white);
    padding: 15px;
    border-radius: var(--radius-16);
    margin: 10px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 50px;
}
.formation-item h3 {
    letter-spacing: -1px;
}
.formation-themes{
	color: var(--color-white);
	padding:5px 20px;
	border-radius: 8px;
	background: linear-gradient(58deg, #E2093A 0%, #000032 49.6%);
    width: 100%;
    max-width: max-content;	
	font-weight: 600;
}
.modalite-container{
    display: flex;
	grid-column-gap: 16px;
}
.modalite-container input[type="radio"] {
    display: none;
}
.modalite-container .modalite-btn {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: max-content;
    padding: 11px 16px;
    font-size: 16px;
    font-weight: 600;
    border: 1px solid var(--color-marine);
    border-radius: 16px;
    color: var(--color-marine);
	cursor:pointer;
}
.modalite-container input[type="radio"]:checked + .modalite-btn {
    background-color: var(--color-marine);
    color: #fff;
    border-color: var(--color-marine);
}

.reset, .search-container input, .search-container select{
	cursor:pointer;
}
.reset{
	padding: 10px 30px;
    font-weight: 700;
    font-size: 16px;
    display: block;
    position: relative;
    width: max-content;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
    border-radius: var(--radius-20);
    border: 1px solid;
    background: var(--color-white);
    border-color: var(--color-white);
    color: var(--color-marine);	
}

.reset:after {
	content: var(--reset);
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translate(-50%, -50%);
}

.tax-thematiques #blog .bloc-3, .tax-metiers #blog .bloc-3 {
    margin-bottom: 2em;
}
.tax-thematiques #blog, .tax-metiers #blog .bloc-3, .category #blog .bloc-3 {
    margin: 1em 0;
}
.tax-thematiques #blog .bloc-3 .article h3, .tax-metiers #blog .bloc-3 .article h3{
    margin: 0;
}
/* SINGLE FORMATIONS  - ET SINGLE TOUT COURT */
.single #single_ariane {
    padding: 0;	
    background: var(--color-white);	
}
.single-solution #single_ariane {
    padding: 0;	
    background: transparent;	
}
.single #intro-page .bloc-3 img.picto-thema{
	position: absolute;
    left: 27px;
    bottom: 16px;
}
#intro-page .taxonomy-item {
    display: flex;
    gap: 5px;
    color: transparent;
}
.taxonomy-item a, .tag-item {
    font-weight: 700;
    border-radius: 12px;
    background: var(--color-red);
    padding: 4px 15px;
    margin-bottom: 10px;
    display: block;
    width: 100%;
    max-width: max-content;
}
.single-service .tag-item {
    padding: 4px 10px 6px;
    margin-bottom: 0;
}
#single-formation{
    background: var(--color-white);
	padding-top: 20px;
}
.formation-description{
	padding-bottom: 20px;
}
.bloc-intra-entreprises,
.bloc-inter-entreprises{
    border-radius: var(--radius-16);
 	padding: 20px;
}
.bloc-inter-entreprises{
    background: var(--color-marine);
}
.bloc-intra-entreprises{
    border:1px solid var(--color-marine);;
}
.bloc-inter-entreprises *{
    color: var(--color-white);
}
.bloc-inter-entreprises #gform_confirmation_message_1 p{
    color: var(--color-marine);
}
.bloc-inter-entreprises .titre-entreprises{
    font-size: 26px;
	letter-spacing: -1px;
}
.bloc-intra-entreprises h3,
.bloc-inter-entreprises h3{
	margin-top:10px;
}
.bloc-inter-entreprises .btn.btnred,
.bloc-intra-entreprises .btn.btnmarine{
    max-width: 100%;
    text-align: center;
    padding-left: 30px;
}
#single-formation .bloc-3 .btn{
	margin-top:20px;
}
#single-formation .bloc-3 > div{
	margin-bottom:30px;
}
.bloc-inter-entreprises .btn:after, .bloc-intra-entreprises .btn:after {
    content:'';
}
.bloc-inter-entreprises .btn span, .bloc-intra-entreprises .btn span {
	position: relative;	
}
.bloc-intra-entreprises .btn span, .events-container .btn span {
    color: var(--color-white);
}
.bloc-inter-entreprises .btn span:after, 
.bloc-intra-entreprises .btn span:after {
	content: var(--arrow-white);
    position: absolute;
    top: 50%;
    right: -30px;
    transform: translate(-50%, -50%);	
}
/*.bloc-intra-entreprises .btn.btnmarine:after {
    right: 78px;
}*/
.bloc-inter-entreprises hr {
    border-top:1px solid var(--color-white);
	margin:20px 0;
}
.bloc-intra-entreprises hr {
    border-top:1px solid var(--color-marine);
	margin:20px 0;
}
.bloc-btn-entreprises > a{
    background: var(--color-white);
	border: 1px solid var(--color-marine);
	width: 100%;
	border-radius: var(--radius-20);	
	margin: 10px 0;
	display: block;
}
#single-formation .bloc-3 .bloc-btn-entreprises a .btn.btnblancbis{
    background: none;
    border: none;
	margin: 0 auto;	
}
.bloc-avantages {
	border: 1px solid var(--color-gray);
    padding: 20px;
	border-radius: var(--radius-16);	
    max-width: 100%x;
}
.bloc-avantages h3 {
	position: relative;
    margin-bottom: 15px;
}
.bloc-avantages h3::after {
    content: url(/wp-content/themes/SOFIS/images/fermer.svg);
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%) scaleY(-1);
    right: 0;
    color: #fff;
    transition: transform 0.3s ease-in-out;
}
.bloc-avantages ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}
.bloc-avantages li {
    padding-left: 60px;
    display: flex;
    align-items: center;
    font-weight: 500;
    position: relative;
    height: 45px;
}
.bloc-avantages li::before {
    position: absolute;
    top: 55%;
	left:0;
    transform: translate(0, -50%);
}
.picto-formation-initiale::before {
    content: var(--formation-initiale);
}
.picto-maintien-et-actualisation-des-competences::before {
    content: var(--mac);
}
.picto-classe-a-distance::before {
    content: var(--classe-a-distance);
}
.picto-e-learning::before {
    content: var(--e-learning);
}
.picto-realite-virtuelle::before {
    content: var(--realite-virtuelle);
}
.picto-unite-technique::before {
    content: var(--unite-technique);
}
.picto-obligatoire::before {
    content: var(--obligatoire);
}
/* Style de base pour le conteneur */
.single-formation .bloc-2-3 {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

/* Styles de base pour le titre */
.single-formation #intro-page h1 {
    word-wrap: break-word;
    hyphens: auto;
    max-width: 100%;
    margin: 0 0 20px 0;
    font-weight: 700;
    transition: font-size 0.3s ease;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

/* Desktop (>1024px) - Conservation de votre logique existante */
@media (min-width: 1025px) {
    .single-formation #intro-page h1 {
        font-size: clamp(
            32px,
            calc(42px - (var(--title-length, 50) * 0.15px)),
            42px
        );
        line-height: 1.2;
        
        &.very-long-title {
            font-size: clamp(
                28px,
                calc(36px - (var(--title-length, 50) * 0.12px)),
                36px
            );
            letter-spacing: -0.02em;
            line-height: 1.1;
        }
    }
}

/* Tablette (481px-1024px) - Approche hybride */
@media (min-width: 481px) and (max-width: 1024px) {
    .single-formation #intro-page h1 {
        /* Base sur la largeur du viewport pour une adaptation plus fluide */
        font-size: clamp(
            28px,
            calc(28px + 1.5vw - (var(--title-length, 50) * 0.08px)),
            38px
        );
        line-height: clamp(1.1, calc(1.1 + 0.1vw), 1.3);
        
        &.very-long-title {
            font-size: clamp(
                26px,
                calc(26px + 1vw - (var(--title-length, 50) * 0.06px)),
                34px
            );
            letter-spacing: -0.01em;
            line-height: 1.2;
        }
    }
}

/* Mobile (<480px) - Approche plus fluide */
@media (max-width: 480px) {
    .single-formation #intro-page h1 {
        /* Adaptation plus progressive sur mobile */
        font-size: clamp(
            24px,
            calc(24px + 2vw - (var(--title-length, 50) * 0.04px)),
            30px
        );
        line-height: clamp(1.2, calc(1.2 + 0.1vw), 1.4);
        
        &.very-long-title {
            font-size: clamp(
                22px,
                calc(22px + 1.5vw - (var(--title-length, 50) * 0.03px)),
                28px
            );
            letter-spacing: -0.01em;
            line-height: 1.3;
        }
    }
}

/* Optimisations pour les très petits écrans */
@media (max-width: 320px) {
    .single-formation #intro-page h1 {
        font-size: clamp(
            20px,
            calc(20px + 1.5vw - (var(--title-length, 50) * 0.02px)),
            24px
        );
        
        &.very-long-title {
            font-size: clamp(
                18px,
                calc(18px + 1.5vw - (var(--title-length, 50) * 0.02px)),
                22px
            );
        }
    }
}

/* Optimisations de performance */
@supports (contain: layout) {
    .single-formation #intro-page {
        contain: layout;
    }
}

@media only screen and (min-width: 1024px) {}
@media only screen and (min-width: 481px) and (max-width: 1023px) {}
@media only screen and (max-width: 800px) {}
@media only screen and (max-width: 480px) {}
@media only screen and (min-width: 433px) and (max-width: 480px) {}
@media only screen and (max-width: 432px) {}
@media screen and (min-width: 481px) and (max-width: 800px) {}
@media screen and (max-width:480px) {}


/* PAGE CONTACT */
.bloc-coordonnees {
  display: flex;
  flex-direction: column;
}

.bloc-coordonnees img {
  margin-bottom: 1em;
  max-width: 240px;
}

.bloc-coordonnees .titre-co {
  font-weight: 700;
  font-size: 24px;
  margin-top: 2em;
}

.bloc-coordonnees p {
  margin-bottom: 1em;
  position: relative;
}

.bloc-coordonnees .adresse,
.bloc-coordonnees .telephone {
  padding-left: 2em;
}

.bloc-coordonnees .adresse::before {
  content: url('/wp-content/themes/Defi_ong/images/adresse.svg');
  position: absolute;
  left: 0;
  top: -5%;
}

.bloc-coordonnees .telephone::before {
  content: url('/wp-content/themes/Defi_ong/images/tel.svg');
  position: absolute;
  left: 0;
  top: -15%;
}

.contact .gform-theme--foundation .gform-grid-col {
  padding-inline: 8px;
}
.acf-map {
  width: 100%;
  height: 550px;
}

.acf-map img {
  max-width: inherit !important;
}

@media screen and (max-width: 800px) {
  .contact .bloc-2-3 {
    padding-top: 2em;
  }
}

/* SELECTEUR + PAGINATION */
#result {
  width: 100%;
  padding: 0;
}

#result .row {
  width: 100%;
}

#category-select {
  opacity: 0;
}

.select-selected {
  border: none;
  padding-right: 2em;
  position: relative
}

.select-selected {
  font-weight: 500;
  cursor: pointer;
  width: 285px;
  margin: auto;
  padding: 12px 20px;
  border-radius: 45px;
  font-size: 16px;
  text-transform: uppercase;
  background: #2c2574;
}

.select-selected span {
  color: #fff;
  position: relative;
  padding-right: 1em;
}

.select-selected span:after {
  content: url(/wp-content/themes/Defi_ong/images/defi-select.svg);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(50%, -50%);
}

.select-items {
  position: absolute;
  list-style: none;
  width: 285px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, .2);
  background-color: #fff;
  border-radius: 4px;
  padding: 10px;
  max-height: 300px;
  overflow-y: auto;
  transition: 0.5s ease;
  transform: scaleY(0);
  opacity: 0;
  visibility: hidden;
  left: 0;
  top: 0
}

.select-items div {
  cursor: pointer;
  background: #fff;
  font-weight: 500;
  text-transform: uppercase;
  padding: .7em .467em;
  line-height: 1.3;
  font-size: 15px;
}

.select-items div:hover {
  background-color: #51c0d5;
  color: #fff;
}

.select-show {
  display: block;
  border-radius: 20px;
  opacity: 1;
  visibility: visible;
  transform: scaleY(1);
  z-index: 999
}

#pagination {
  width: max-content;
  margin: 1.5em auto 0;
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
}
/* Pagination container */
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
    gap: 8px;
    flex-wrap: wrap;
}
#nos-formations .pagination{
    margin: 40px 0 0;
}
/* Pagination link style */
.pagination-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: transparent;
    color: var(--color-marine);
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    border: 2px solid var(--color-marine);
    transition: background-color 0.3s, color 0.3s;
    margin: 0.1em;
}

/* Active page link style */
.pagination-link.active {
    background-color: var(--color-marine);
    color:var(--color-white);
}
.pagination-link.prev, .pagination-link.next {
    border-color: transparent;
    color:var(--color-marine);
}

/* Hover effect for pagination links */
.pagination-link:hover {
    background-color: var(--color-marine);
    color:var(--color-white);
}

/* Disabled link style */
.pagination-link.disabled {
    pointer-events: none;
    opacity: 0.5;
}

/* Responsive adjustments */
@media screen and (max-width: 480px) {
/*    .pagination-link:not(.pagination-prev):not(.pagination-next) {
        display: none;
    }*/
.pagination-link.pagination-prev,
.pagination-link.pagination-next {
    position: relative;
    margin: 0 10px;
}
.pagination-link.pagination-prev::before {
    content: "Précédent";
    position: absolute;
    top: 20%;
    left: -25%;
    transform: translate(-100%, 0%);
}
.pagination-link.pagination-next::after {
    content: "Suivant";
    position: absolute;
    top: 20%;
    left: 0%;
    transform: translate(75%, 0%);
}
}

/* PAGE NOS SERVICES */
.page #blog.display-services {
    padding-bottom: 30px;
}
.page #blog.display-services .bloc-3 {
    margin-bottom:2em;
}
#blog.display-services .article h3 {
    margin: 0;
}
#nos-services #qsn {
    background: var(--color-gray-light);
}
/* PAGE CIBLES */
.introduction-cible, .foire-aux-questions{
	background: #fff;
}
.avantages-specifiques{
	background: #F7F7F7;
}
.introduction-cible .bloc-1 p {
	text-align: center;
}
.besoins-specifiques{
	margin: 30px 0 50px;
}
.introduction-cible .bloc-2-3 {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    align-self: stretch;
    flex-direction: column;
}
.introduction-cible .bloc-2-3 ul{
	margin-top: 0;
    margin-bottom: 0;
}
.introduction-cible .bloc-3 img {
    height: 100%;
    object-fit: cover;
}
.introduction-cible .methodologie{
    margin:15px 0 0;
}
.introduction-cible .methodologie h3{
    margin:0 0 10px;
}
.avantages-specifiques .bloc-1 *{
	text-align: center;
}
.avantages-specifiques .bloc-3{
	margin-top: 30px;
}
.avantages-spe{
    display: flex;
    padding: 40px 20px;
    flex-direction: column;
    gap: 10px;
    flex: 1 0 0;
    align-items: center;
    background: #fff;
    border-radius: 30px;
    height: 100%;
}
.avantages-spe h3{
    color: var(--color-red);
	text-align: center;
}
.avantages-spe p{
	text-align: center;
}
.foire-aux-questions h2 {
    text-align: center;
    margin-bottom: 15px;
}
.bloc-temoin{
    display: flex;
    padding: 30px 15px;
    flex-direction: column;
    gap: 10px;
    align-items: center;
    background: #F7F7F7;
    border-radius: 30px;
	margin-top: 30px;
}
.bloc-temoin *{
    text-align:center;	
}
/* SIGNLE SERVICES */
.bloc-btn-entreprises a.demandedevis {
    background: var(--color-red);
    border: 1px solid var(--color-red);
    width: 100%;
    border-radius: var(--radius-20);
	margin: 0 0 10px;
	display: block;
}
#single-formation .bloc-3 .bloc-btn-entreprises a.demandedevis .btnred {
    background: none;
    border: none;
    margin: 0 auto;
}



/* Single solution */
.introduction-solution, .deroulement-solution {
    background: #fff;
}
.introduction-solution .bloc-2-3 {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    align-self: stretch;
    flex-direction: column;
}
.introduction-solution .bloc-3 img {
    height: 100%;
    object-fit: cover;
}
.modalites-formation {
    background:#F7F7F7;
}
.avantages-solutions{
	margin-top:30px;
}
.avantages-solutions .bloc-1{
	margin-bottom:20px;
}
.avantages-solutions h2,.avantages-solutions p{
	text-align: center;
}
.bloc-avanslou{
	border-radius: 0px 0px 16px 16px;
	background: #F7F7F7;
	height:100%;
}
.bloc-avanslou ul {
    list-style-type: none;
    padding: 20px 35px;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}
.title-avanslou{
	border-radius: 16px 16px 0 0;
	background: var(--color-marine);
}
.title-avanslou h3{
	color: var(--color-white);
	text-align: center;
	padding:15px 0;
}
.modalites-formation .bloc-1 h2, .deroulement-solution .bloc-1 h2{
	margin-bottom:20px;
}
.modalites-contenu, .deroulement-contenu{
    flex-direction: column;
    gap: 20px;
    flex-shrink: 0;
    display: flex;
    align-items: flex-start;
}



/* PAGE - Nous connaitre */
#nous-connaitre .nos-services,
#nous-connaitre .certifications2{
	background: var(--color-gray-light);

}
#nous-connaitre .bloc-3-4,
#nous-connaitre .bloc-2-3 {
    display: flex;
    gap: 5px;
    justify-content: center;
    flex-direction: column;
}
#nous-connaitre section:not(.nos-services) .bloc-3 img {
    height: 100%;
    object-fit: cover;
}

#nous-connaitre .nos-services h2{
	text-align: center;
}
#nous-connaitre .nos-services .bloc-1,
#nous-connaitre .indicateurs-performance .bloc-1,
#recrutement .bloc-1,
#nous-connaitre .certifications .bloc-1,
#nous-connaitre .politique-qsse .qsse1 .bloc-1{
	margin-bottom: 30px;
}
#nous-connaitre .nos-services img{
	border-radius: 16px 16px 0 0;
}
#nous-connaitre .nos-services .service-card{
	border-radius: 16px;
	background: var(--color-white);
	height: 100%;
	
}
#nous-connaitre .nos-services h3{
	color: var(--color-red);
	font-weight: 600;
}
#nous-connaitre .nos-services .bloc-3 h3{
	text-align: center;
	margin:10px 0;
}

#nous-connaitre .nos-services .bloc-3 p{
	text-align: center;
	padding:0 20px 10px;
}


#nous-connaitre .row.bloceduaction{
	max-width: 1140px;
	border-radius: 16px;
	background: var(--color-white);
	margin: 30px auto 0;
	padding: 40px 20px;
}
#nous-connaitre .row.bloceduaction > *{
	padding: 0;
}
#nous-connaitre .row.bloceduaction .bloc-2-3 {
    gap: 15px;
}


#nous-connaitre .politique-qsse .qsse2 .bloc-1{
	margin-top: 30px;
}



.indicateurs-performance {
    position: relative;
    background: var(--color-marine);
	overflow: hidden;	
}
.indicateurs-performance * {
    color: var(--color-white);	
	text-align: center;
}
.indicateurs-performance::after {
    content: var(--pattern-left-backblue);
    position: absolute;
    left: -2.5em;
    bottom: -1em;
}
.indicateurs-performance .row.chiffres .chiffre{
	background: var(--gradient-radial);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
    margin-bottom: 0;	
    font-size: 25px;	
}
.indicateurs-performance .row.chiffres .chiffre span{
    font-size: 40px;
}



.certifications .row{
    display: flex;
    padding: 20px 0 0 0;
    align-items: flex-start;
    gap: 30px 0;
}

.certifications h2, .certifications p{
	text-align: center;
}


#recrutement h2{
	text-align: center;
}
#recrutement .recru-form {
    background: var(--color-marine);
    border-radius: 30px;
    padding: 30px;
    max-width: 860px;
    margin: auto;
}
#recrutement .recru-form p{
    color: var(--color-white);
	text-align: center;
	max-width: 700px;
	margin: 0 auto 25px;
}
input#gform_submit_button_1, input#gform_submit_button_3, input#gform_submit_button_4, input#gform_submit_button_5, input#gform_submit_button_6 {
    padding: 10px 60px 10px 30px;
    font-weight: 700;
    font-size: 16px;
    display: block;
    position: relative;
    width: 100%;
    max-width: max-content;
    -webkit-transition: all 0.25s ease-in-out;
    -moz-transition: all 0.25s ease-in-out;
    -o-transition: all 0.25s ease-in-out;
    transition: all 0.25s ease-in-out;
    border-radius: var(--radius-20);
    border: 1px solid;
    background: var(--color-red);
    border-color: var(--color-red);
}
input#gform_submit_button_1:after, input#gform_submit_button_3:after, input#gform_submit_button_4:after, input#gform_submit_button_5:after, input#gform_submit_button_6:after {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translate(-50%, -50%);
    content: var(--arrow-white);
}
#recrutement .gform_footer.before {
    width: max-content;
}


/* CATALOGUE */
.intro-catalogue {
    max-width: 860px;
    margin: auto;
}
.intro-catalogue * {
    text-align: center;
}
.intro-catalogue h2{
    margin-bottom: 20px;
}
.form_catalogue {
    background: var(--color-marine);
    border-radius: 30px;
    padding: 30px 40px;
    max-width: 720px;
    margin: 20px auto 0;
}
.form_catalogue p {
    color: var(--color-white);
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
	font-size:20px;
}
.form_catalogue .gform-theme--foundation .gform_footer {
    display: table;
    width: auto;
    margin: 1.5em auto;
}
#field_4_5{
	margin: auto;
} 
#gform_4{
    position: relative;
}
#field_4_6{
    position: absolute;
    bottom: -2.5em;
}

/* Single */
#postsofis #intro-article {
    padding: 50px 0;
}
#postsofis section.built {
    background: var(--color-white);
    padding: 2em 0;
}
#postsofis section.built:first-of-type {
    padding-top: 0;
}
#postsofis section.built:last-of-type {
    padding-bottom: 0;
}

#postsofis #intro-article .bloc-2-3 {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}
#postsofis #intro-article .bloc-3{
    display: flex;
    flex-direction: column;
    justify-content: center;
    row-gap: 10px;
    position: relative;
}
#postsofis #intro-article .bloc-3:after {
    content: var(--pattern-intro);
    z-index: -1;
    position: absolute;
    top: 55%;
    right: 0;
    transform: translate(39.5%, -50%);
    overflow: hidden;
}
#postsofis #intro-article h1{
    margin-bottom: 15px;
}
#postsofis #intro-article img {
    min-height: 250px;
    max-height: 300px;
    object-fit: cover;
    width: 100%;
}
#postsofis #intro-article .datcat{
	display: flex;
    align-items: center;
}
#postsofis #intro-article *{
    color: var(--color-white);
}
#postsofis #intro-article .date{
    font-weight: 600;
}
#postsofis #intro-article ul {
    list-style-type: none;
    margin-left: 0;
    margin-top: 0;
    margin-bottom: 0;
}
#postsofis #intro-article a{
    font-weight: 700;
    border-radius: 12px;
    background: var(--color-red);
    padding: 4px 15px;
    display: block;
    width: 100%;
    max-width: max-content;
    color: #fff;
}
#postsofis #article{
    padding:3em 0;
    background: var(--color-white);
}



/* CALENDRIER DES FORMATIONS */
#results-calendrier .spinner {
    font-size: 16px;
    color: #333;
    margin-top: 20px;
    text-align: center;
}
#results-calendrier .custom-options {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: none; /* Caché initialement */
    position: absolute;
    background: #fff;
    border: 1px solid #ccc;
    overflow-y: auto;
    z-index: 1000;
}
#results-calendrier .custom-options li {
    padding: 10px;
    cursor: pointer;
}
#results-calendrier .custom-options li:hover {
    background-color: #f0f0f0;
}
#results-calendrier .custom-options li.selected {
    font-weight: bold;
}
#results-calendrier .custom-select {
    position: relative;
    cursor: pointer;
}
#results-calendrier .custom-select.open .custom-options {
    display: block;
}
#results-calendrier .pagination a.disabled, 
#reset-filtre:disabled, 
#filtrer_thematique:disabled {
    pointer-events: none;
    opacity: 0.6;
}
/* Styles de pagination pour ressembler à l'exemple fourni */
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px 0;
    gap: 8px;
}
.pagination a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid #1A1A57;
    color: #1A1A57;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.3s, color 0.3s;
}
.pagination .page-arrow.prev,
.pagination .page-arrow.next{
    border: none;
}
.pagination a:hover {
    background-color: #1A1A57;
	border: 2px solid #1A1A57;
    color: #ffffff;
}
.pagination a.active {
    background-color: #000032;
    color: #ffffff;
}
.pagination a.disabled {
    pointer-events: none;
    opacity: 0.5;
}
.pagination .dots {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    color: #1A1A57;
    font-weight: bold;
}
section#results-calendrier{
    background: #F7F7F7;
}
section#results-calendrier #filtre-thematique, #formations-de-formateurs #filtre-thematique{
    display: flex;
    align-items: center;
}
section#results-calendrier .custom-select-wrapper, #formations-de-formateurs .custom-select-wrapper {
    position: relative;
    width: 100%;
    margin-bottom: 1em;
    margin-right: 1em;
    max-width: 300px;
}
section#results-calendrier .custom-options, #formations-de-formateurs .custom-options {
    max-height: 210px;
}
section#results-calendrier .custom-options.show, #formations-de-formateurs .custom-options.show {
    display: block;
    opacity: 1;
}
section#results-calendrier #reset-filtre, #formations-de-formateurs #reset-filtre {
    border: none;
    background: none;
    text-decoration: underline;
	font-size: 16px;
}
.event-item-bloc{
    border-radius: 16px;
    border: 1px solid #000;
    background: #FFF;
}	
.event-item:nth-child(even) {
    background: #F3F6FB;
}
.event-item {
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.event-item:last-of-type {
    border-radius: 16px;
}
.event-btnthema .event-thematique {
    color: #E2093A;
    padding: 0;
    border-radius: 8px;
    width: 100%;
    max-width: max-content;
    font-weight: 600;
}
.event-title-meta{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
	width: 100%;
}
.event-btn {
    min-width: 250px;
    display: flex;
    justify-content: flex-end;
    margin-left: 1em;
}
.event-meta {
    display: flex;
    align-items: center;
    margin-top: .5em;
}
.event-lieu, .event-date{
    font-weight: 600;
    font-size: 16px;
	position: relative;
    padding-left: 2em;	
}
.event-date{
    width:280px;
	margin-right:3em;	
}	
.event-lieu{
    width: 220px;
    margin-right: 3em;
}
.event-date:before,.event-lieu:before{
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);	
}
.event-date:before{
	content: url('/wp-content/themes/SOFIS/images/puce-date.svg');	
}
.event-lieu:before{
	content: url('/wp-content/themes/SOFIS/images/ico-localisation.svg');	
}
.event-disponibilite{
	text-align: center;
	font-weight: 600;
	position: relative;
}
.event-disponibilite:before{
	content:'';
	position: absolute;
    top: 50%;
    left: -20px;
    transform: translate(-50%,-50%);	
	width: 14px;
	height: 14px;
	border-radius: 50%;
}
.event-disponibilite.event-places-disponibles{
color:#186F33;
}
.event-disponibilite.event-places-disponibles:before{
background: #9EE7A4;
}
.event-disponibilite.event-dernieres-places{
color:  #A44A10;
}
.event-disponibilite.event-dernieres-places:before{
background: #FECD93;
}	
.event-disponibilite.event-complet{
color: #BF0A33;
}
.event-disponibilite.event-complet:before{
background: #FA9B8B;
}



/* Single popup formation */
/*.single-formation #blog.section-formation {
    background: var(--color-white);
}*/
/* Styles pour la section calendrier */
.formation-calendar-section {
    background: var(--color-gray-light);
}
.formation-calendar-section h2{
    text-align: center;
}
.events-container {
    margin-top: 1.5rem;
    border-radius: 16px;
    border: 1px solid #000;
    background: #FFF;
	padding:0;
}

/* Styles pour la popup */
.overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    visibility: hidden;
    opacity: 0;
    z-index: 999;
    backdrop-filter: blur(2px);
    /* Supprimé display: none */
    transition: opacity 0.3s ease;
    pointer-events: none; /* Empêche l'interaction quand fermé */
}

.overlay .popup {
    background: #fff;
    border-radius: 0.75rem;
    width: 90%;
    max-width: 900px;
    padding: 2.5rem;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.95);
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    opacity: 0;
    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), 
                opacity 0.3s ease;
}

.overlay.open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto; /* Réactive l'interaction */
}

.overlay.open .popup {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
}

/* Le reste du CSS reste identique */
.overlay.open .popup h3 {
    margin: 0 0 1.25rem;
    color: #333;
    font-size: 1.5rem;
    font-weight: 600;
}

.overlay.open .popup .close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 2rem;
    height: 2rem;
    border: none;
    background: none;
    font-size: 40px;
    line-height: 1;
    cursor: pointer;
    color: #000032;
    transition: color 0.3s ease;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.overlay.open .popup .close:hover {
    color: #0000327a;
}
#formation-details {
    margin-bottom: 1.5rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #666;
    padding: 1rem;
    background: #f5f5f5;
    border-radius: 0.5rem;
}
body.single-service .gform-theme--foundation .gfield_label, body.single-service .gform-theme--foundation .gfield_consent_label, body.single-service .gform-theme--foundation .gfield_consent_label a, body.single-formation .gform-theme--foundation .gfield_label, body.single-formation .gform-theme--foundation .gfield_consent_label, body.single-formation .gform-theme--foundation .gfield_consent_label a, #demande-de-devis .gform-theme--foundation .gfield_label, #demande-de-devis .gform-theme--foundation .gfield_consent_label, #demande-de-devis .gform-theme--foundation .gfield_consent_label a, #gform_wrapper_6.gform-theme--foundation .gfield_consent_label, #gform_wrapper_6.gform-theme--foundation .gfield_consent_label a {
    color: #112337;
}
.overlay.open .gform-theme--foundation .gform_footer, #demande-de-devis .gform-theme--foundation .gform_footer, #gform_wrapper_6.gform-theme--foundation .gform_footer, #gform_wrapper_3.gform-theme--foundation .gform_footer {
    justify-content: flex-end;
    margin-block-start: 0;	
} 
@media screen and (min-width: 1024px) {
#gform_wrapper_1.gform-theme--foundation .gform_footer, #gform_wrapper_5.gform-theme--foundation .gform_footer{
    margin-top: -2.5em;	
}
	
#gform_wrapper_3.gform-theme--foundation .gform_footer,	
#gform_wrapper_6.gform-theme--foundation .gform_footer {
    margin-top: -3em;	
}
}
#gform_wrapper_6.gform-theme--foundation .gfield .ginput_password.medium, #gform_wrapper_6.gform-theme--foundation .gfield input.medium, #gform_wrapper_6.gform-theme--foundation .gfield select.medium {
    border-radius: var(--radius-16);
}
/* Scrollbar personnalisée 
.overlay.open .popup::-webkit-scrollbar {
    width: 6px;
}
.overlay.open .popup::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}
.overlay.open .popup::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 3px;
}
.overlay.open .popup::-webkit-scrollbar-thumb:hover {
    background: #999;
}*/

/* Formulaire de recherche */
#idsearch #globe{
	background: var(--color-gray-light);	
} 
#idsearch #search-results {
    border-radius: 16px;
    border: 1px solid #000;
    background: var(--color-white);	
	padding:0;
	margin-top: 1em;
}
#idsearch .search-result-item:nth-child(even) {
    background: #F3F6FB;
}
#idsearch .search-result-item:last-child {
    border-radius: 0 0 16px 16px;
}
#idsearch .search-cat{
	font-weight: 700;
    border-radius: 12px;
    background: var(--color-red);
    padding: 4px 15px;
    display: block;
    width: 100%;
    max-width: max-content;
    color: #fff;
}
#idsearch .date-article{
    width: 210px;
    margin-right: 2em;
}
#idsearch .extrait-search p{
	margin: 0;
}


/* PAGE FORMATEUR */
/* PAGE CONNEXION */
#formateurpage{
	background: #fff;
}
.formco {
    margin:3rem auto;
}
.formco #loginform, .formco #lostpasswordef {
    margin: 1rem auto;
    width: 100%;
    max-width: 380px;
    padding: 2rem;
    background-color: var(--color-gray-light);
	border-radius: 30px;
}
.formco #lostpasswordef {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.formco #loginform p, .formco #lostpasswordef p {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.formco #loginform label {
  margin: 0.5em auto .25em;
}
.formco #lostpasswordef label {
  margin: 0 auto;
	font-size: 18px;
}

.formco #loginform input, .formco #lostpasswordef input {
    border-radius: var(--radius-16);
	font-size: 16px;
    border: 2px solid var(--color-marine);
    padding: 6px 14px;
	text-align: center;
}
.formco #loginform #user_login, 
.formco #loginform #user_pass,
.formco #lostpasswordef #user_login, 
.formco #lostpasswordef #user_pass{
    width:80%;
	margin: auto;
}

.formco #loginform .login-remember label, .formco #llostpasswordef .login-remember label {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.formco #loginform #rememberme, .formco #lostpasswordef #rememberme {
    height: 20px;
    padding: inherit;
    width: 20px;
    border-radius: 0;
    margin: 0 0.5em;
    cursor: pointer;
}
.formco #loginform #rememberme:checked, .formco #lostpasswordef #rememberme:checked {
  background-image: url(/wp-content/themes/DMUC/images/checked.png);
  background-position: center;
  background-size: 120%;
}

.formco #loginform input[type=submit], .formco #lostpasswordef #wp-submit {
    padding: 7px 25px;
  color: #fff;
  background: #e20a3a;
  -webkit-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  text-align: center;
  line-height: 1;
  cursor: pointer;
	font-size:18px;
	font-weight: 600;
  border-color: #e20a3a;
    margin: .5em auto 0;
    width: max-content;
}

.formco #loginform input[type=submit]:hover, .formco #lostpasswordef #wp-submit:hover {
  background: var(--color-marine);
  border: 2px solid var(--color-marine);
}
.formco #loginform .login-submit, .formco #lostpasswordef .login-submit {
	margin-top: 1em;
}


/* PAGE FAQ */
.intro-faq{
	text-align: center;
	margin-bottom: 1.5em;
}


.single-formation #intro-page, .single-service #intro-page, #nos-services #intro-page{
    overflow: hidden;
}	
@media screen and (min-width: 1200px) {	
.introduction-cible {
    padding-top: 50px;
}
#postsofis #intro-article h1{
    font-size: 35px;
}
}
@media screen and (min-width: 1024px) {	
#intro-page .bloc-3:after {
    content: var(--pattern-intro);
    z-index: -1;
    position: absolute;
    top: 55%;
    right: 0;
    transform: translate(39.5%, -50%);
    overflow: hidden;
}
#intro-page .bloc-3 img:not(.picto-thema) {
    border-radius: var(--radius-16);
    height: 100%;
    object-fit: cover;
}
}	
@media screen and (max-width: 1480px) {	
.indicateurs-performance::after {
    zoom: .75;
}
.indicateurs-performance .row.chiffres {
    position: relative;
    z-index: 1;
}
}
@media screen and (max-width: 1199px) {	
#intro-page {
    padding: 20px 0 3em;
}	
/* nos formations */	
#nos-formations #intro-page {
    padding: 20px 0 0;
}
.bloc-search {
    position: relative;
    z-index: 2;
}	
}
@media screen and (min-width: 801px) and (max-width: 1199px) {	
/* single formations - services - Page nos services */	
.single-formation #intro-page, .single-service #intro-page, .single-post #intro-article, #nos-services #intro-page{
    padding: 50px 0;
}	
.indicateurs-performance .row.chiffres .chiffre span {
    font-size: 30px;
}
}
@media screen and (min-width: 601px) and (max-width:1024px) {	
/* nous connaitre */	
.certifications .bloc-4{
	-webkit-box-flex: 0;
    -ms-flex: 0 0 33.3%;
    flex: 0 0 33.3%;
    max-width: 33.3%;
    padding: 0 0.5em;	
}	
}
@media screen and (max-width: 1023px) {	
.single-formation #intro-page .bloc-3 img, .single-service #intro-page .bloc-3 img, .single-post #intro-article .bloc-3 img, #nos-services #intro-page .bloc-3 img{
    display: none;
}
.single-formation #intro-page .bloc-2-3, .single-service #intro-page .bloc-2-3, .single-post #intro-article .bloc-2-3, #nos-services #intro-page .bloc-2-3 {
    width: 100%;
    overflow: hidden;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}	
.single-formation #intro-page:after, .single-service #intro-page:after,  #nos-services #intro-page:after {
    content: var(--pattern-intro);
    z-index: -1;
    position: absolute;
    top: 55%;
    right: 0;
    transform: translate(52%, -50%);
    overflow: hidden;
}
.single-post #intro-article{
    position: relative;
}
.single-post #intro-article:after {
    content: var(--pattern-intro);
    z-index: -1;
    position: absolute;
    top: 75%;
    right: 0;
    transform: translate(52%, -50%);
    overflow: hidden;
}
#postsofis #intro-article h1 {
    margin-top: 20px;
}
#postsofis #intro-article .bloc-3:after {
    content: '';
}
/* PAge nous connaitre */
.certifications .row {
    padding: 0;
}
}
@media screen and (min-width:801px) and (max-width: 1023px) {
/* nos formations */	
.formation-item {
    column-gap: 20px;
}
/* Page cibles */
.besoins-specifiques .bloc-3, .solutions-formation .bloc-3{
    display: none
}	
.besoins-specifiques .bloc-2-3, .solutions-formation .bloc-2-3{
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}	
.besoins-specifiques {
    margin: 30px 0;
}
/* Fiche solution */
.introduction-solution .bloc-3{
    display: none
}		
.introduction-solution .bloc-2-3{
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}	
.bloc-avanslou ul {
    padding: 15px 20px;
    gap: 10px;
}
}
@media screen and (min-width:601px) and (max-width: 1023px) {
/* nos formations */	
.formation-item {
    column-gap: 20px;
}
}
@media screen and (max-width: 1023px) {
/* nos formations */	
#nos-formations #ajax-sofis::after {
    zoom: .5;
}	
#results-formation {
    padding-top: 160px;
}	
/* Page nous connaitre */
#nous-connaitre .nos-services .bloc-1, #nous-connaitre .indicateurs-performance .bloc-1, #recrutement .bloc-1, #nous-connaitre .certifications .bloc-1, #nous-connaitre .politique-qsse .qsse1 .bloc-1 {
    margin-bottom: 15px;
}
.indicateurs-performance::after {
    zoom: .5;
}	
}
@media screen and (min-width: 801px) and (max-width: 1199px) {
/* Fiche formation */
.bloc-intra-entreprises, .bloc-inter-entreprises {
    padding: 15px;
}
.bloc-intra-entreprises h3, .bloc-inter-entreprises h3 {
    margin-top: 0;
}	
}
@media screen and (min-width:992px) and (max-width: 1199px) {
/* Fiche formation */	
#single-formation .bloc-3{
    padding-left:0;
}
}
@media screen and (min-width:801px) and (max-width: 1100px) {
/* Fiche formation */	
.event-date {
    width: 30%;
    margin-right: 2em;
}
.event-lieu {
    width: 25%;
    margin-right: 2em;
}
}
@media screen and (min-width:992px)  {
/* Fiche formation */	
#single-formation .bloc-2-3 {
    padding-right: 25px;
}
}
@media screen and (min-width:801px) and (max-width: 991px) {
/* Fiche formation */	
#single-formation .bloc-2-3, #single-formation .bloc-3{
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}	
}
@media screen and (max-width: 991px) {
/* Fiche formation */	
#single-formation .bloc-3{
	margin-top: 2em;
}	
#single-formation .bloc-3 > div:last-of-type {
    margin-bottom: 0;
}
}
@media screen and (max-width:800px) {
#intro-page .ariane * {
    font-size: 14px;
}	
/* single formations - services - Page nos services */	
.single-formation #intro-page, .single-service #intro-page, .single-post #intro-article, #nos-services #intro-page{
    padding: 40px 0 30px;
}
/* Fiche formation */		
.event-item {
    padding: 15px;
    flex-direction: column;
    gap: 15px;
}
.event-meta {
    width: 100%;
}
/* Actualites */
#actualites #blog .bloc-3 {
    margin:0 0 1em;
}
#actualites .pagination {
    margin-bottom: 0;
}
/* Page nous connaitre */
.indicateur-card {
    margin: auto;
    width: 320px;
}
.qualiopi-section img{
    margin: 0 auto 1em;
    display: block;
}
.opca-section img{
    margin: 1em auto 0;
    display: block;
}
/* Page cibles */
.besoins-specifiques {
    margin: 30px 0;
}	
.introduction-cible .bloc-3 img, .foire-aux-questions .bloc-3 img {
    height: auto;
    object-fit: inherit;
    margin: 1em auto 0;
    display: block;
}
.solutions-formation > div:nth-child(1){order:2;}
.solutions-formation > div:nth-child(2){order:1;}
.avantages-spe {
    padding: 20px;
}	
.avantages-spe p {
    margin: 0;
}	
.avantages-specifiques .bloc-3 {
    margin-top: 20px;
}
/* Fiche solution */
.introduction-solution .solution .bloc-3 img {
    height: auto;
    object-fit: inherit;
    margin: 0 auto;
    display: block;
}	
.bloc-avanslou ul {
    padding: 15px 20px;
    gap: 15px;
}
.introduction-solution > div > div.row:nth-child(3) > div.bloc-2:nth-child(1){
    margin-bottom: 1.5em;
}
/* Fil d'ariane */
nav.breadcrumbs {
    font-size: 14px;
}
/* Single post */
#postsofis #article {
    padding: 2em 0;
}
#postsofis #intro-article a {
    font-size: 14px;
}
#postsofis #intro-article .date {
    font-size: 14px;
}
#search-results .event-btn {
    justify-content: center;
    margin-left: 0;
}
}
@media screen and (max-width:600px) {
/* nos formations */	
.formation-item {
    gap: 15px;
    flex-direction: column;
	align-items: flex-start;	
}
.formation-item .btnmarine{
    display: none;	
}
/* popup */	
.overlay .popup {
    width: 95%;
    padding: 20px;
    max-height: 85vh;
}
body .gform-theme--foundation .gform_fields, body .gform-theme--foundation .gform-grid-row {
    row-gap: 10px;
}
body .gform-theme--foundation .gfield input.medium, body .gform-theme--foundation .gfield input.small {
    width: 100%;
}
.certifications .bloc-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 0.5em;
}
.certifications .row {
    gap: 20px 0;
}
.certifications p {
    font-size: 14px;
}
}
@media screen and (min-width:481px) and (max-width:1199px) {
#nous-connaitre .row.bloceduaction {
    margin-left: .9375em;
    margin-right: .9375em;
}
}
@media screen and (min-width:481px) and (max-width:1023px) {
#nous-connaitre .nos-services .row:not(.bloceduaction) .bloc-3{
	-webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;	
    margin: 0 0 1em;
}
#nous-connaitre .nos-services .service-card {
    padding: 1em .5em .5em;
}
#nous-connaitre .nos-services .row:not(.bloceduaction) .bloc-3 img{ 
	display: none;		
}
#nous-connaitre .row.bloceduaction {
    margin-top: 0;
    padding: 30px 15px;
}
#nous-connaitre .politique-qsse .bloc-3 {
    display: none;
}
#nous-connaitre .politique-qsse .bloc-2-3 {
	-webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;	
}
#nous-connaitre .politique-qsse ul {
    margin-top: 0;
}

#nous-connaitre .politique-qsse .qsse2 .bloc-1 {
    margin-top: 0;
}
}
@media screen and (min-width:481px) and (max-width:800px) {
/* Page nos servics */
#blog.display-services .bloc-3:nth-child(odd), .tax-thematiques #blog .bloc-3:nth-child(odd), .category #blog .bloc-3:nth-child(odd) , #actualites #blog .bloc-3:nth-child(odd) {
    padding-right: 7px;
}
#blog.display-services .bloc-3:nth-child(even), .tax-thematiques #blog .bloc-3:nth-child(even), .category #blog .bloc-3:nth-child(even), #actualites #blog .bloc-3:nth-child(even) {
    padding-left: 7px;
}	
.page #blog.display-services .bloc-3 {
    margin-bottom: 16px;
}
/*page nous connaitre */
.qui-sommes-nous .bloc-3{
	display: none;
}
.bloceduaction img{
    width: auto;
    margin: auto;
    display: block;
}
}
@media screen and (max-width:480px) {
/* nos formations */
.modalite-container {
    flex-direction: column;
	gap: 10px;	
}
.modalite-container .modalite-btn {
    width: 100%;
    text-align: center;
    color: #959595;
    border: 1px solid var(--color-gray);
}
.bloc-search .btn.btnred {
    width: 100%;
    max-width: inherit;
    padding: 10px 30px 10px 30px;
    text-align: center;
}
.bloc-search .btn.btnred:after {
    position: absolute;
    top: 50%;
    right: inherit;
    transform: translate(100%, -50%);
}
.bloc-search .reset {
    padding: 10px 0px 10px 30px;
    margin-top: 5px;
}
/* Fiche formation */	
.accordeon-title,
.accordeon-content {
    padding: 10px 15px;
}	
.event-item {
    gap: 10px;
}
.event-meta {
    flex-direction: column;
    gap: 10px;
    align-items: center;
	margin:0;
}
.event-date, .event-lieu, .event-disponibilite {
    width: max-content;
    margin: auto;
}
/* Page nos services */
.page #blog.display-services .bloc-3 {
    margin-bottom: 1em;
}
#nos-services #intro-page {
    padding: 20px 0 30px;
}
#actualites #intro-page h1, .single-solution #intro-page h1, .archive #intro-page h1, .page-template-default:not(.page-id-158) main:not(#nos-formations) #intro-page h1 {
    position: relative;
    z-index: 2;
}
/*page nous connaitre */
.qui-sommes-nous .bloc-3 img{
	width:100%;
	margin-top:.5em;
    height: auto;	
}
#nous-connaitre .nos-services img{
    width:100%;
}
#nous-connaitre .nos-services .row:not(.bloceduaction) .bloc-3{
    margin-bottom: 1em;
}
#nous-connaitre .row.bloceduaction {
    margin: 15px auto 0;
    padding: 0 20px 20px;
}
#notre-politique-qsse .row.qsse1 > div:nth-child(1){order:1;}
#notre-politique-qsse .row.qsse1 > div:nth-child(2){order:3;}
#notre-politique-qsse .row.qsse1 > div:nth-child(3){order:2;}
#nous-connaitre .politique-qsse .bloc-3 img {
    width: 100%;
}
#recrutement .recru-form {
    padding: 30px 15px;
}
#gform_wrapper_3.gform-theme--foundation .gform_footer{
    width: max-content;
    margin: 1em auto 0;	
}
#calendrier-des-formations .event-meta {
    align-items: flex-start;
}
#calendrier-des-formations .event-meta .event-disponibilite{
    margin-left: 32px;
}
#calendrier-des-formations .event-date, #calendrier-des-formations .event-lieu, #calendrier-des-formations .event-disponibilite {
    margin: 0;
}	
#calendrier-des-formations .event-btn {
    justify-content: center;
    margin-left: 0;
}
.form_catalogue {
    padding: 20px 20px 40px;
}	
.form_catalogue p {
    margin-bottom: 15px;
    font-size: 18px;
}
body .gform-theme--foundation .gfield_label, body .gform-theme--foundation .gfield_consent_label, body .gform-theme--foundation .gfield_consent_label a {
    font-size: 14px;
}
body .gform-theme--foundation .gfield_consent_label{
    margin-left: 5px;
}
/* Page cibles */
.bloc-temoin {
    margin-top: 15px;
}
.introduction-cible .bloc-3 img, .foire-aux-questions .bloc-3 img, .introduction-solution .solution .bloc-3 img{
    width: 100%;
}
	
/* Search.php */
#idsearch .search-cat {
    font-size: 14px;
}
#idsearch .date-article {
    width: auto;
    margin: inherit;
    font-size: 14px;
}
#idsearch .event-meta {
    align-items: flex-start;
}
#idsearch .event-date, #idsearch .event-lieu {
    width: auto;
    margin: 0;
}
#idsearch .event-disponibilite {
    width: auto;
    margin-left: 2em;
}
}