.site--menu {
	background-color: var(--wp--custom--default--background);
	box-shadow: 0 0 20px 0px rgba(0,0,0,0.5);

	position: sticky;
	top: 0;
	z-index: 12;
}

.site--menu--inner {
	
	display: grid;
	grid-template-columns: min-content 1fr;
	grid-template-rows: auto auto;
	padding-block: 1rem; 
	column-gap: 1rem;
	align-items: flex-end!important;
	& > * {
		margin-block-start: 0;
	}
	
	& a:hover  {
		text-decoration: none!important;
	}
	
	& .logo {
		min-height: 5rem;
		display: flex;
		align-items: flex-end;
		grid-column: 1 / span 1;
		grid-row: 1 / span 2;
		align-self: flex-end;
		& > a {
			display: inline-block
		}
		
		& img {
			display: block;
		}
		
		& .logo--txt  {
			margin: 0;
			filter : var(--wp--custom--filter--white);
		}
	}
	
		
	& .menu {
		display: flex;
		gap : 1rem;
		justify-self: flex-end;
		align-self: flex-end;
		justify-content: flex-end;
	
		
		& > *  {
			margin-block-start: 0;
		}
		
		& .sub-menu  {
			list-style: none;
			padding: 0;
		}
		
		& > .menu-item:has(.sub-menu):after {
			content: '';
			font-family: var(--wp--preset--font-family--fontawesome);
			font-size: 0.8em;
			color: var(--wp--custom--default--accent);
		}
		
		&.menu--utility {
		
			grid-column: 2 / span 1;
			grid-row: 1 / span 1;
			gap: 0;
			& .menu-item  {
				display: flex;
				align-items: center;
			
				@media (width <= 780px) {
					
					&:not(.langue) {
						display: none;
					}
					
				}
				
			}
			& .menu-item:is(:hover, .current-menu-item) > a {
				color: var(--wp--preset--color--white);
			}
			& .menu-item:not(:last-child)  {
				
				&:after {
					content: '|';
					display: inline-block;
					font-weight: 400;
					padding-inline: 1rem;
					color: var(--wp--custom--default--accent);
				}
		
				&.tel > a{
					font-size: var(--wp--preset--font-size--large);
					font-weight: 700;
				}
			}
		
		}
		
		&.menu--main {
			
			grid-column: 2 / span 1;
			grid-row: 2 / span 1;
			
			align-self: flex-end;
			align-items: flex-end;
			
			position: relative;
			
			& > .menu-item {
				
				& > a {
					color: var(--wp--preset--color--white);
				}
				
				&:is(:hover, .current-menu-item, .current-menu-ancestor) > a {
					color: var(--wp--preset--color--jaune);
				}
				
				& > .submenu-wrapper  {
				
					display: none;
					position: absolute;
					background: var(--wp--custom--default--background);
					
					top: 100%;
					left: auto;
					right: -1rem;
					min-width: 52rem;
					border-top: 1rem solid var(--wp--custom--default--background);
					
					&:before {
						content: '';
						position: absolute;
						inset : 1rem 0 0 0;
						z-index: -1;
						box-shadow: 0 0 20px 0px rgba(0,0,0,0.25);
					}
					
					& > .sub-menu {
						position: relative;
						display: grid;
						grid-auto-flow: column;
						grid-auto-columns : 1fr;
						isolation: isolate;
						
						
						@supports (position-anchor:  --hovered-link) {
						
							&:before {
								content: '';
								position: absolute;
								z-index: -1;
								background: var(--wp--custom--default--accent);
								
								top: calc(100% - 2px);
								left: 0;
								right: 0;
								bottom: 0;
								position-anchor: --hovered-link;
								transition: left .3s, right .3s, top .3s, bottom .3s  ;
							}
				
							&:has( > .menu-item:hover ):before {
					
								top: anchor(top);
								left: anchor(left);
								right: anchor(right);
								bottom: anchor(bottom);
							
							}
							& > .menu-item:hover  {
								anchor-name: --hovered-link;
							}
						}
						
						@supports not (position-anchor:  --hovered-link) {
							
							& > .menu-item {
								
								transition: background .3s  ;
								
								&:hover  {
									background: var(--wp--custom--default--accent);
								}
							}
						
						}
					
						& > .menu-item  {
						
							padding-top: 1rem;
							padding-bottom: 2rem;
							padding-inline: 2rem;
						
						
						
							& > a  {
								color: var(--wp--preset--color--jaune);
								&:hover {
									color: var(--wp--wp--custom--default--background);
								}
							}
						
							& > .submenu-wrapper  {
								margin-top: 1rem;
							
								& .menu-item  {
									padding-block-end: 0.5rem; 
									font-size: var(--wp--preset--font-size--medium-small);
									
									& a {
										color: var(--wp--preset--color--white);
										&:hover {
											color: var(--wp--custom--default--background);
										}
									}
							
								}
							}
						}
						
					}
				}
				
				&:is(.assurances.particuliers) > .submenu-wrapper > .sub-menu {
					grid-template-columns: repeat(3, 1fr);
				}	
				
				&:is(.assurances.entreprises) > .submenu-wrapper > .sub-menu {
					
					grid-template-columns: 2fr 1fr;
					
					& .menu-item:is(.assurances.entreprises.secteurs)  .sub-menu  {
						max-height: 21rem;
						columns: 2;
					}
				}
				
				&:is(.soumission) > .submenu-wrapper {
					
					min-width: 20rem;
					max-width: 44rem;
					& > .sub-menu {	
						grid-template-columns: 2fr 1fr;
					
						&  .sub-menu  {
							columns: 2;
						}
					}
				}
				
				&:is(:hover) > .submenu-wrapper {
					display: initial;
				}
				
				@media (width <= 1080px) {
					display: none;
				}
			}	
			
		
			& .burger  {
				border: none;
				background : none;
				padding: 0;
				color: var(--wp--custom--default--accent);
				font-size : var(--wp--preset--font-size--large);
				cursor: pointer;
			}
		}
		
	}


}


