/* ========================================
   CUSTOM STYLES - PAPIR-V2
   ========================================
   Version: 1.0.0
   Description: Styles personnalisés du thème
   Dernière mise à jour: Janvier 2025
   ======================================== */

/* ========================================
   TABLE DES MATIÈRES
   ========================================
   
   1. BASE & RESET
      1.1 Box Model & Scroll
      1.2 Body & Typography
      1.3 Headings
      1.4 Paragraphs & Lists
      1.5 Links
   
   2. LAYOUT
      2.1 Container principal (#page)
      2.2 Content widths (entry-content)
      2.3 Alignements Gutenberg
      2.4 Utility classes (reverse_grid, etc.)
   
   3. COMPOSANTS UI
      3.1 Titles (.title-lined)
      3.2 Buttons (kb-btn-global-inherit)
      3.3 FAQ / Accordions
	  3.4 BOX ONGLETS BUSINESS
	  3.5 POP VIDEO
	  3.6 CARDS
	  3.7 GALERIE LOGOS
	  3.8 LOGOS ISOTOP GRID
	  3.9 BUSINESS PROJECTS TABS
   
   4. DÉCORATIONS
      4.1 Corners (SVG decorations)
      4.2 Gradients personnalisés
   
   5. SECTIONS SPÉCIFIQUES
      5.1 Hero Home
      5.2 Partners section
      5.3 Autres sections
   
   6. UTILITAIRES
      6.1 Filtres & Effets
      6.2 Classes diverses
   
   7. RESPONSIVE
      7.1 Tablet (max-width: 1024px)
      7.2 Mobile (max-width: 767px)
   
   8. VISION PROJECT - LANDING
   
   ======================================== */


/* ========================================
   1. BASE & RESET
   ======================================== */

/* ----------------------------------
   1.1 Box Model & Scroll
   ---------------------------------- */
*,
html {
    scroll-behavior: smooth !important;
    scroll-margin-top: 6rem;
}

body:not(.wp-admin) * {
    box-sizing: border-box;
    scroll-behavior: smooth;
}

/* ----------------------------------
   1.2 Body & Typography
   ---------------------------------- */
body {
    padding: 0;
    margin: 0;
    line-height: var(--line-height);
    background-color: var(--col_1);
    font-family: var(--font);
    font-size: 1rem;
    font-weight: 300;
}

/* ----------------------------------
   1.3 Headings
   ---------------------------------- */
h1, h2, h3, h4, h5, h6 {
    line-height: var(--title-line-height);
    font-weight: 600;
}

h1 {
    font-weight: bold;
}

/* ----------------------------------
   1.4 Paragraphs & Lists
   ---------------------------------- */
body p {
    font-size: 1rem;
    letter-spacing: 0.01em;
    line-height: 1.35em;
}

ul, ol {
    margin-left: 0;
    padding-left: 1em;
}

b, strong {
    font-weight: 600;
}

/* ----------------------------------
   1.5 Links
   ---------------------------------- */
a,
a:link,
a:visited {
    color: inherit;
	text-decoration:none!important;
	
  

}

p a{text-decoration: underline;
  text-decoration-color: var(--col_3); /* ta couleur corail par exemple */
  text-underline-offset: .3em; /* espace entre texte et ligne */
  text-decoration-thickness: 1px; /* épaisseur du trait */}

/* ========================================
   2. LAYOUT
   ======================================== */

/* ----------------------------------
   2.1 Container principal
   ---------------------------------- */
#page {
    margin: auto;
}

#primary {
    color: var(--col_2);
}

/* ----------------------------------
   2.2 Content widths
   ---------------------------------- */
.entry-content > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator) {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--small_width);
}

.alignfull:not(.fullWidth_content, .page_header, #primary_footer, .sub_footer) .kt-row-column-wrap,
.blog_container {
    margin: auto;
}

/* ----------------------------------
   2.3 Alignements Gutenberg
   ---------------------------------- */
.entry-content .alignwide {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--medium_width);
}

.entry-content .alignfull {
    max-width: 100%;
}

/* ----------------------------------
   2.4 Utility classes
   ---------------------------------- */
.reverse_grid {
    direction: rtl;
}

/* Masquer éléments non nécessaires */
.site-title,
.entry-footer {
    display: none;
}
.linkedin_container{
	overflow:hidden;
}

/* ========================================
   3. COMPOSANTS UI
   ======================================== */

/* ----------------------------------
   3.1 Titles
   ---------------------------------- */
.title-lined {
    display: flex;
    gap: 1em;
    align-items: center;
    font-weight: 400;
    letter-spacing: 0.05em;
}

.title-lined::after {
    content: "";
    display: block;
    height: 1px;
    max-width: 300px;
    background: white;
	flex-grow: 2;
}

/* Variante sur fond clair */
.bg-light .title-lined::after {
    background: black;
}

/* Title avec trait (variante graph) */
.graphTitle strong {
    display: flex;
    width: 100%;
    font-weight: inherit;
}
/*
.graphTitle strong::after {
    content: "";
    display: block;
    height: 1em;
    border-bottom: solid 2px;
    flex-grow: 2;
}
*/
/* ----------------------------------
   3.2 Buttons
   ---------------------------------- */

/* Animation icon */
@keyframes iconMove {
    0%   { transform: translateY(0); }
    50%  { transform: translateY(150%); }
    51%  { transform: translateY(-150%); }
    100% { transform: translateY(0%); }
}

/* Base button (Kadence inherit) */
.wp-block-kadence-advancedbtn .wp-block-button__link.kb-btn-global-inherit,
.kt-blocks-modal-link {
    background: transparent;
    overflow: visible !important;
    font-weight: 600;
    letter-spacing: 0.04em;
}

/* Modal link specific */
.kt-blocks-modal-link {
    gap: 9px;
    font-size: 18px;
    font-family: var(--font);
    font-weight: 600;
}

/* Icon wrapper */
.wp-block-kadence-advancedbtn .kb-btn-global-inherit .kb-svg-icon-wrap,
.kt-blocks-modal-link .kb-svg-icon-wrap {
    background: var(--col_3);
    border-radius: 5px;
    padding: 6px !important;
    overflow: hidden;
}

/* Icon animation on hover */
.wp-block-kadence-advancedbtn .wp-block-button__link.kb-btn-global-inherit:hover .kb-svg-icon-wrap svg,
.kt-blocks-modal-link:hover .kb-svg-icon-wrap svg {
    animation-name: iconMove;
    animation-duration: 0.6s;
    animation-iteration-count: 1;
}

/* Underline effect */
.wp-block-kadence-advancedbtn .wp-block-button__link.kb-btn-global-inherit .kt-btn-inner-text::after,
.kt-blocks-modal-link .kt-blocks-modal-link-inner::after {
    content: "";
    display: block;
    height: 2px;
    width: 0;
    background: var(--col_3);
    position: relative;
    top: 2px;
    transition: all 0.4s;
}

.wp-block-kadence-advancedbtn .wp-block-button__link.kb-btn-global-inherit:hover .kt-btn-inner-text::after,
.kt-blocks-modal-link:hover .kt-blocks-modal-link-inner::after {
    width: 100%;
    transition: all 0.4s;
}


/* Effet de remplissage horizontal (gauche → droite) */
.wp-block-kadence-advancedbtn .kb-btn-global-inherit .kt-btn-inner-text {
  position: relative;
  background: linear-gradient(to right, var(--col_3) 50%, currentColor 50%);
  background-size: 200% 100%;
  background-position: 100% 0;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: background-position 0.4s ease;
  text-align:left;
}

.wp-block-kadence-advancedbtn .kb-btn-global-inherit.kb-button:hover .kt-btn-inner-text {
  background-position: 0 0;
}

/* Supprimer l'effet ::after existant si nécessaire */
.wp-block-kadence-advancedbtn .wp-block-button__link.kb-btn-global-inherit .kt-btn-inner-text::after {
  display: none !important;
}

/* ----------------------------------
   3.3 FAQ / Accordions
   ---------------------------------- */

/* FAQ Incubator */
.faq-incubator .kt-blocks-accordion-header {
    gap: 3.125rem;
    cursor: pointer;
}

.faq-incubator .kt-blocks-accordion-icon-trigger {
    border: solid 1px var(--col_3);
    border-radius: 5px;
}

/* FAQ Standard */
.faq .kt-blocks-accordion-header {
    gap: 1rem;
    cursor: pointer;
}

.faq .kt-blocks-accordion-icon-trigger {
    background: var(--col_3);
    height: 2.5em;
    width: 2.5em;
    border-radius: 5px 0 0 5px;
	
}

.faq .kt-accordion-panel-active .kt-blocks-accordion-icon-trigger {
    border-radius: 5px 0 0 0;
	
}

/* Icon trigger (commun) */
.faq-incubator .kt-blocks-accordion-icon-trigger::before,
.faq-incubator .kt-blocks-accordion-icon-trigger::after,
.faq .kt-blocks-accordion-icon-trigger::before,
.faq .kt-blocks-accordion-icon-trigger::after {
    height: 2px !important;
    width: 10px !important;
    left: calc(50% - 5px) !important;
    top: calc(50% - 1px) !important;
}

/* ----------------------------------
   3.4 BOX ONGLETS BUSINESS
   ---------------------------------- */

@media (min-width: 768px) {
	.business-projects{
		border-radius:10px;
		overflow:hidden;
	}
  /* Conteneur principal en flex */
  .business-projects .kt-tabs-wrap.kt-tabs-layout-vtabs {
    display: flex;
    align-items: stretch;
  }
  
  /* Colonne des onglets */
  .business-projects .kt-tabs-title-list {
    display: flex;
    flex-direction: column;
  }
  
  /* Chaque onglet : flex-grow pour répartir l'espace équitablement */
  .business-projects .kt-tabs-title-list > .kt-title-item {
    flex: 1 1 0;
    display: flex;
  }
  
  /* Le lien à l'intérieur prend toute la place */
  .business-projects .kt-tabs-title-list > .kt-title-item > .kt-tab-title {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center !important;
    align-items: flex-start !important;
  
  }
  
  /* Conteneur des volets */
  .business-projects .kt-tabs-content-wrap {
    flex: 1;
    position: relative;
  }
  
  /* Tous les volets en position absolute pour superposition */
  .business-projects .wp-block-kadence-tab {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
  }
  
  /* Volet actif */
  .business-projects .wp-block-kadence-tab[aria-hidden="false"],
  .business-projects .wp-block-kadence-tab[style*="display: block"] {
    position: relative;
    opacity: 1;
    visibility: visible;
  }
  
  /* Masquer les titres accordion en desktop */
  .business-projects .kt-tabs-accordion-title {
    display: none;
  }
}
/* ----------------------------------
   3.5 POP VIDEO
   ---------------------------------- */
	.wp-block-kadence-videopopup .kadence-video-intrinsic .kadence-video-popup-link{
		justify-content:flex-end;
		align-items:flex-end;
		cursor:pointer;
	}
	.wp-block-kadence-videopopup .kadence-video-intrinsic .kadence-video-overlay{
		opacity:0;
	}

	.wp-block-kadence-videopopup .kadence-video-intrinsic .kb-svg-icon-wrap.kb-svg-icon-fas_play{
		background:white;
		color:var(--col_3);
		display:flex;
		align-items:center;
		justify-content:center;
		border-radius:5px;
		height:2rem!important;
		width:2rem!important;
		margin:20px;
		transform-origin:right bottom;
		transition:all .6s;
	}
	
	.wp-block-kadence-videopopup .kadence-video-intrinsic .kb-svg-icon-wrap.kb-svg-icon-fas_play svg{
		width:30%!important;
		height:30%!important;
	}
	/* HOVER EFFECT */
	.wp-block-kadence-videopopup .kadence-video-intrinsic img{
		transition:all .6s;
	}
	.wp-block-kadence-videopopup .kadence-video-intrinsic:hover img{
		transform:scale(1.2);
		transition:all .3s;
	}
	.wp-block-kadence-videopopup .kadence-video-intrinsic:hover .kb-svg-icon-wrap.kb-svg-icon-fas_play{
		transform:scale(1.4);
		transition:all .3s;
	}
	
/* ----------------------------------
   3.6 CARDS
   ---------------------------------- */
	.card-ordered .kt-infobox-textcontent{
		display:flex!important;
		flex-direction:column!important;
	}
	.card-ordered .kt-infobox-textcontent h3{
		order:1;
		margin-bottom:0!important;
	}
	.card-ordered .kt-infobox-textcontent p{
		order:3;
	}
	.card-ordered .kt-infobox-textcontent .kt-blocks-info-box-learnmore-wrap{
		order:2;
	}
	.card-ordered .kt-infobox-textcontent .kt-blocks-info-box-learnmore-wrap span{
		margin-top:0!important;
		padding-top:0!important;
	}

/* ----------------------------------
   3.7 GALERIE LOGOS
   ---------------------------------- */
.logo-galerie .kb-gallery-ul{
	
	
	margin-bottom:0!important; 
	padding-bottom:0;
	}
.logo-galerie .kb-gallery-ul li{
	
	
	
	}
.logo-galerie .kb-gallery-ul li img{
	width:100%; 
	height:100%; 
	background:white; 
	object-fit: contain!important; 
	border:solid .5rem white;
	background:white; 
	}
.logo-galerie .kb-gallery-ul li *{
	transition:all .4s;
	}
.logo-galerie .kb-gallery-ul li a{
	display:block; 
	position:relative;
	}
.logo-galerie .kb-gallery-ul li a:before{
	content: "\f504"; 
	font-family: 'Dashicons'; 
	display:block; 
	position:absolute; 
	left:50%; 
	top:50%; 
	color:white; 
	font-size:2rem; 
	transform:translate(-50%, 100%); 
	opacity:0; 
	z-index:2000;  
	}
.logo-galerie .kb-gallery-ul li a:hover:before{
	transform:translate(-50%, -50%); 
	opacity:1; 
	transition:all .6s; 
	}
.logo-galerie .kb-gallery-ul li a:hover{
	background:var(--col_3)!important; 
	border-radius:10px;
	}
.logo-galerie .kb-gallery-ul li a:hover .kb-gal-image-radius{
	mix-blend-mode: multiply;
	}
.logo-galerie .kb-gallery-ul li a:hover img{
	opacity:.3; 
	}

/* ============================================
   GRILLE ISOTOPE (sans CSS Grid !)
   ============================================ */
.partners-grid {
    margin-top: 2rem;
    opacity: 0;
    transition: opacity 0.5s ease;
    margin: 0 -5px;
}

.partners-grid.loaded {
    opacity: 1;
}

/* Items - Colonnes gérées par largeur % */
.partner-item {
    position: relative;
    background: transparent;
    border: solid 0.5rem transparent;
    overflow: hidden;
    float: left;
    
    /* Dimensions carrées via padding-bottom */
    width: 16.66%; /* 6 colonnes par défaut */
    padding-bottom: 16.66%;
    margin: 0;
}

.partner-item * {
    transition: all 0.4s;
}

.partner-item-inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
}

.partner-item-inner a {
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
}

/* Logo */
.partner-item img,
.partner-logo {
    max-width: 90%;
    max-height: 90%;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    background: white;
    transition: all 0.4s;
}
.filter-buttons {
    display: flex;
    gap: 1rem;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
	margin-bottom:1rem;
}

.filter-select-wrapper {
    display: none;
}
.filter-buttons button{
	border:solid 1px rgba(255,255,255,0.3);
	color:rgba(255,255,255,0.5);
	background:var(--col_1);
	padding:.5em 1em;
	font-size: var(--global-kb-font-size-sm, 1rem);
	border-radius:5px;
	cursor:pointer;

}
.filter-buttons button .filter-count{
	/*color:var(--col_3);*/
}
.filter-buttons button:hover{
	border:solid 1px rgba(255,255,255,0.8);
	color:rgba(255,255,255,0.8);
}
.filter-buttons button.active{
	background:var(--col_3);
	color:var(--col_2);
	border-color:var(--col_3);
}
.filter-buttons button.active .filter-count{
	color:var(--col_2);
}
/* ============================================
   EFFET HOVER
   ============================================ */
.partner-item-inner a::before {
    content: "\f504";
    font-family: 'Dashicons';
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    color: white;
    font-size: 2rem;
    transform: translate(-50%, 100%);
    opacity: 0;
    z-index: 2000;
    transition: all 0.6s;
}

.partner-item-inner a:hover::before {
    transform: translate(-50%, -50%);
    opacity: 1;
}

.partner-item-inner a:hover {
    background: var(--col_3) !important;
    border-radius: 10px;
}

.partner-item-inner a:hover img {
    mix-blend-mode: multiply;
    opacity: 0.3;
}

.partner-placeholder {
    width: 100%;
    padding: 2rem 1rem;
    text-align: center;
    color: #adb5bd;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ============================================
   ANIMATIONS ISOTOPE
   ============================================ */
.partner-item.isotope-item {
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.partners-grid:not(.loaded) .partner-item {
    opacity: 0;
    transform: translateY(30px);
}

/* ============================================
   COLONNES DYNAMIQUES (via data-columns)
   ============================================ */
[data-columns="2"] .partner-item {
    width: 50%;
    padding-bottom: 50%;
}

[data-columns="3"] .partner-item {
    width: 33.33%;
    padding-bottom: 33.33%;
}

[data-columns="4"] .partner-item {
    width: 25%;
    padding-bottom: 25%;
}

[data-columns="5"] .partner-item {
    width: 20%;
    padding-bottom: 20%;
}

[data-columns="6"] .partner-item {
    width: 16.66%;
    padding-bottom: 16.66%;
}

/* ================================================
   SWR H2 Heading Reveal Animation
   Ne s'applique qu'au-dessus de 768px
   ================================================ */

@media (min-width: 769px) {

  .swr-leaf-ready {
    opacity: 0;
    transform: translateY(16px);
    transition: 
      opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1),
      transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  }

  .swr-leaf-in {
    opacity: 1;
    transform: translateY(0);
  }

}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 1400px) {
    [data-columns="6"] .partner-item {
        width: 20%;
        padding-bottom: 20%;
    }
}

@media (max-width: 1200px) {
    [data-columns="5"] .partner-item,
    [data-columns="6"] .partner-item {
        width: 25%;
        padding-bottom: 25%;
    }
}

@media (max-width: 900px) {
    .partner-item {
        width: 33.33% !important;
        padding-bottom: 33.33% !important;
        border-width: 0.4rem; /* ← Gouttière tablet */
    }
    
    .partner-item-inner {
        padding: 1rem;
    }
    
    .partner-filters {
        gap: 0.75rem;
    }
    
    .filter-btn {
        padding: 0.65rem 1.25rem;
        font-size: 0.8rem;
    }
    
    .partner-legend {
        padding: 1.25rem 0;
        font-size: 0.95rem;
        min-height: 90px;
    }
    
    .partner-item-inner a::before {
        font-size: 1.5rem;
    }
}

@media (max-width: 640px) {
	.partners-grid{
		margin: 0 -5px;
	}
    .partner-item {
        width: 33% !important;
        padding-bottom: calc(33% - 10px) !important;
        border-width:5px; /* ← Gouttière mobile */
    }
    
    .partner-item-inner {
        padding: 0.75rem;
    }
    
    .partner-filters {
        flex-direction: column;
        gap: 0.5rem;
        width: 100%;
    }
    
    .filter-btn {
        width: 100%;
        text-align: center;
        padding: 0.75rem;
    }
    
    .partner-legend {
        padding: 1rem 0;
        font-size: 0.9rem;
        min-height: 80px;
    }
    
    .partner-legend strong {
        font-size: 1rem;
    }
    
    .partner-item-inner a::before {
        font-size: 1.2rem;
    }
	.filter-buttons {
        display: none;
    }
    
    .filter-select-wrapper {
        display: block;
        width: 100%;
    }
    
    .filter-select {
        width: 100%;
        padding: 1rem;
        font-size: 1rem;
        font-weight: 600;
        color: #FF8C00;
        background: transparent;
        border: 2px solid #FF8C00;
        border-radius: 8px;
        cursor: pointer;
        appearance: none;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FF8C00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: right 1rem center;
        background-size: 20px;
        padding-right: 3rem;
        transition: all 0.3s ease;
		margin-bottom:.5rem;
		margin-top:2rem;
    }
    
    .filter-select:focus {
        outline: none;
        border-color: #FF8C00;
        box-shadow: 0 0 0 3px rgba(255, 140, 0, 0.2);
    }
    
    .filter-select:hover {
        background-color: transparent;
    }
}

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

@media print {
    .partner-filters,
    .partner-legend {
        display: none;
    }
    
    .partner-item {
        width: 25% !important;
        padding-bottom: 25% !important;
        break-inside: avoid;
        border: 1px solid #ccc;
    }
    
    .partner-item-inner a::before {
        display: none;
    }
}
/* ========================================
   3.9 BUSINESS PROJECTS TABS - Animations
   ======================================== */
/* État initial : tout est caché sans transition */
  .business-projects .wp-block-kadence-tab .kb-row-layout-wrap {
    opacity: 0;
    visibility: hidden;
  }
  
  .business-projects .wp-block-kadence-tab .kt-row-column-wrap {
    opacity: 0;
    visibility: hidden;
    transform: translateX(40px);
  }
  
  /* Keyframes */
  @keyframes fadeIn {
    0% {
      opacity: 0;
      visibility: visible;
    }
    100% {
      opacity: 1;
      visibility: visible;
    }
  }
  
  @keyframes slideFromRight {
    0% {
      opacity: 0;
      visibility: visible;
      transform: translateX(40px);
    }
    100% {
      opacity: 1;
      visibility: visible;
      transform: translateX(0);
    }
  }
  
  /* Classes d'animation - état final persistant */
  .business-projects .wp-block-kadence-tab .kb-row-layout-wrap.animate-fade {
    animation: fadeIn 0.4s ease-out forwards;
    visibility: visible;
  }
  
  .business-projects .wp-block-kadence-tab .kt-row-column-wrap.animate-slide {
    animation: slideFromRight 0.5s ease-out forwards;
    visibility: visible;
  }
  
  /* Volet inactif : reset immédiat sans flash */
  .business-projects .wp-block-kadence-tab[aria-hidden="true"] .kb-row-layout-wrap,
  .business-projects .wp-block-kadence-tab[aria-hidden="true"] .kt-row-column-wrap {
    opacity: 0;
    visibility: hidden;
    animation: none;
  }
  


/* ========================================
   4. DÉCORATIONS
   ======================================== */

/* ----------------------------------
   4.1 Corners (SVG decorations)
   ---------------------------------- */
.corner {
    position: relative!important;
}

.corner::after,
.corner::before {
    content: "";
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 1;
}

/* Bottom corners */
.corner.bottom::after {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2rem;
    background-image: url("images/corner-bottom-left.svg"), url("assets/images/frame-bottom-right.svg");
    background-position: left bottom, right bottom;
}

.corner.bottom-left::after {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2rem;
    background-image: url("images/corner-bottom-left.svg");
    background-position: left bottom;
}

.corner.bottom-right::after {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2rem;
    background-image: url("images/corner-bottom-right.svg");
    background-position: right bottom;
}

/* Top corners */
.corner.top::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 2rem;
    background-image: url("images/corner-left-top.svg"), url("images/corner-top-right.svg");
    background-position: left bottom, right bottom;
}

.corner.top-left::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 2rem;
    background-image: url("images/corner-top-left.svg");
    background-position: left top;
}

.corner.top-right::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 2rem;
    background-image: url("images/corner-top-right.svg");
    background-position: right top;
}

/* ----------------------------------
   4.2 Gradients personnalisés
   ---------------------------------- */
.angular-gradient {
    background: conic-gradient(
        from -60deg at 50% 50%,
        #000000 1%,
        #000000 35%,
        rgba(0, 62, 102, 0.6) 45%,
        #000000 50%,
        #000000 86%,
        rgba(223, 112, 77, 0.4) 94%,
        #000000 100%
    );
    background-size: 200% 200%;
    background-position: center center;
}


/* ========================================
   5. SECTIONS SPÉCIFIQUES
   ======================================== */

/* ----------------------------------
   5.1 Hero Home
   ---------------------------------- */
.home_hero .corner {
    max-width: 80ch !important;
	position: relative;
}

/* Corners décalés pour le hero */
/*.home_hero .corner.top-left::before {
    left: -2rem;
    top: -2rem;
}

.home_hero .corner.bottom-right::after {
    left: 2rem;
    bottom: -2rem;
}*/

/* ----------------------------------
   5.2 Partners section
   ---------------------------------- */
#partners .kt-row-layout-overlay {
    height: 70%;
    top: 39%;
}

/* ----------------------------------
   5.3 Autres sections
   ---------------------------------- */
.decal-dot .kt-inside-inner-col::before {
    transform: translate(-6vw, 3vw);
}
.ecosystem-bento .kt-row-layout-overlay{
	width:38%!important;
	height:48%!important;
	top:35%!important;
	left:50%!important;
	transform:translateX(-50%);
}
.ecosystem-bento .kt-row-layout-overlay:before, .ecosystem-bento .kt-row-layout-overlay:after{
	content:"";
	position:absolute;
	display:block;
	width:2rem;
	height: 2rem;
	
}
.ecosystem-bento .kt-row-layout-overlay:before{
	left:-1em;
	top:-1rem;
	
    background-image: url("images/corner-top-left.svg");
    background-position: left top;
}
.ecosystem-bento .kt-row-layout-overlay:after{
	right:-1em;
	bottom:-1rem;
	
    background-image: url("images/corner-bottom-right.svg");
    background-position: right bottom;
}
.ecosystem-card{
	aspect-ratio: 1 / 1;
}


/* ========================================
   6. UTILITAIRES
   ======================================== */

/* ----------------------------------
   6.1 Filtres & Effets
   ---------------------------------- */
.col-invert {
    filter: invert(1);
}

/* ----------------------------------
   6.2 Classes diverses
   À compléter selon les besoins
   ---------------------------------- */


/* ========================================
   7. RESPONSIVE
   ======================================== */

/* ----------------------------------
   7.1 Tablet (max-width: 1024px)
   ---------------------------------- */
@media (max-width: 1024px) {
    /* Tablet styles */
}

/* ----------------------------------
   7.2 Mobile (max-width: 767px)
   ---------------------------------- */
@media (max-width: 767px) {
    /* Mobile styles */
	.faq-incubator .kt-blocks-accordion-header{
		gap:0;
		align-items:flex-start;
	}
	.faq .kt-blocks-accordion-icon-trigger {
    
		width:40px!important;
		min-width:40px!important;
		height:100px;
	}
	.faq .kt-blocks-accordion-title-wrap{
		padding-right:5px;
	}
}


/* ========================================
   8. VISION PROJECT - LANDING
   ======================================== */

.menu-slide{
	width: 100%;
  height: 100%;
  display: block;
}
.ecosystem-card{
	aspect-ratio :auto;
}


/* ========================================
   FIN DU FICHIER
   ======================================== */



