/********************************************************/
/*
/*      Site frame CSS
/*
/********************************************************/
html:has(body:not(.wp-admin)) {
	margin-block-start: 0 !important;
	overflow-x: clip;
	overflow-y: scroll;
	scroll-behavior: smooth;
	scrollbar-width: none;
	
	&::-webkit-scrollbar {
		display: none;
	}
	
	body {
		display: contents;
		
		/* &:not(.wp-admin) #wpadminbar {
			position: relative !important;
			margin-block-start: 0;
			overflow-y: hidden;
			transition: margin-block var(--wp--custom--speed--slow);
			
			body:has(header.fade-out) & {
				margin-block-start: calc(var(--wp--custom--adminbar-height) * -1);
			}
			
			body:has(header.fade-out.fast) & {
				transition: unset !important;
			}
		} */
	}
	
	/* Required since Chrome's scrollbar-aware change (145+) */
	#vw-measurer {
		position: fixed;
		width: 100vw !important;
		min-width: 100vw !important;
		max-width: 100vw !important;
		height: 0 !important;
		min-height: 0 !important;
		max-height: 0 !important;
		margin: unset !important;
		padding: unset !important;
	}
	
	/* Remove when site is online */
	.otgs-development-site-front-end {
		display: none !important;
	}	
}

.wp-site-blocks {
	display: grid;
	grid-template-columns: 100%;
	/* grid-template-rows: 0 repeat(var(--item-count, 1), 100svh) 0 100svh; */
	grid-template-rows: 0 repeat(var(--item-count, 1), max-content) 0 max-content;
	justify-content: center;
	width: 100%;
	min-width: 100%;
	max-width: var(--wp--custom--viewport-width);
	height: 100svh;
	min-height: 100svh;
	max-height: 100svh;
	background-color: var(--wp--custom--color--default--bg);
	margin-inline: auto;
	overflow-x: clip;
	overflow-y: scroll;
	
	/* Do not apply scrollsnap style to blog article singles */
	body.single-cke_blogue & {
		grid-template-rows: unset;
		grid-auto-rows: max-content;
	}
	
	& > *,
	& > :is(header, footer) :where(.is-layout-flow) > *,
	& > :is(header, footer) :where(.is-layout-flow) > * + .site-nav {
		margin-block-start: 0;
	}
	
	& > :is(header, footer) > :is(.site-header, .site-foot).has-background,
	& > :is(header, footer) > :is(.site-header, .site-foot) > .has-background {
		position: relative;
		
		&::before {
			content: '';
			position: absolute;
			top: 0;
			left: calc((var(--wp--custom--viewport-width) - 100%) / 2 * -1);
			width: var(--wp--custom--viewport-width);
			height: 100%;
			background-color: inherit;
			z-index: -1;
		}
	}
	
	/************************************************************/
	/* Header
	/************************************************************/
	& > header {
		--header-pad-top: var(--wp--preset--spacing--3-5);
		--header-pad-bottom: 0;
		
		position: relative;
		display: flex;
		justify-content: center;
		align-items: start;
		width: 100%;
		height: var(--wp--custom--header-height); 
		margin-block-start: 0;
		z-index: 5;
		
		/* &.fade-out {
			pointer-events: none !important;
			
			& > .site-header {
				pointer-events: none !important;
				
				&.site-header {
					opacity: 0;
				}
			}
			
		} */
		
		/******************************/
		/* Site header
		/******************************/
		& > .site-header {
			display: grid;
			grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
			grid-template-rows: 1fr auto;
			grid-template-areas:
				'left-utility-nav logo right-utility-nav';
			align-items: center;
			column-gap: var(--wp--preset--spacing--4);
			width: 100%;
			max-width: var(--wp--style--global--wide-size);
			padding-block: var(--header-pad-top) var(--header-pad-bottom);
			box-sizing: border-box;
			opacity: 1;
			pointer-events: all;
			transition: opacity var(--wp--custom--speed--slow);
			
			/* Logo */
			.wp-block-site-logo {
				grid-area: logo;
				max-width: 100%;
				margin-inline: auto;
				
				* {
					width: 300px;
					max-width: 100%;
					height: auto;
					aspect-ratio: 482/183;
					
					&:is(svg) {
						fill: var(--wp--custom--color--default--bg);
						transition: fill var(--wp--custom--speed--fast);
						
						.wp-block-site-logo:is(:hover, :focus, :active) & {
							fill: var(--wp--custom--color--default--focus);
						}
					}
				}
			}
			
			/* Menus */
			.site-nav {
				/* Utility menus */
				&.utility {
					justify-self: center;
					gap: var(--wp--preset--spacing--3);
					
					/* Mobile-only menus */
					&.mobile-only {
						display: none;
					}
					
					/* Left */
					&.left {
						grid-area: left-utility-nav;
						
						& > .menu-item.wpml-ls-item {
							display: none; /* Will be displayed on mobile */
						}
					}
					
					/* Right */
					&.right {
						grid-area: right-utility-nav;
					}
					
					/* Items with icons */
					& > .menu-item.has-icon > a {
						display: flex;
						flex-direction: column;
						align-items: center;
						gap: var(--wp--preset--spacing--0-25);
						font-family: var(--wp--preset--font-family--canela);
						font-weight: 300;
						
						&::before {
							content: '';
							width: 25px;
							height: auto;
							aspect-ratio: 1;
							color: inherit;
							background-repeat: no-repeat;
							background-position: center;
							background-color: currentcolor;
							transition: background-color var(--wp--custom--speed--fast);
							
							-webkit-mask: var(--svg, unset);
							mask: var(--svg, unset);
							mask-repeat: no-repeat;
							mask-position: center;
						}
						
						.summer > &::before {
							--svg: url(../images/em-icon-season-summer.svg);
							
							width: 28px;
							aspect-ratio: 30/29;
						}
						
						.autumn > &::before {
							--svg: url(../images/em-icon-season-autumn.svg);
							
							aspect-ratio: 13/14;
						}
						
						.winter > &::before {
							--svg: url(../images/em-icon-season-winter.svg);
							
							width: 24px;
							aspect-ratio: 23/26;
						}
						
						.spring > &::before {
							--svg: url(../images/em-icon-season-spring.svg);
							
							width: 24px;
							aspect-ratio: 1;
						}
					}
				} 
			}
			
			/******************************/
			/* Responsive
			/******************************/
			@media (width <= 1400px) {
				.site-nav {
					&.utility {
						gap: var(--wp--preset--spacing--1-5);
					}
				}
			}
			
			@media (width <= 1200px) {
				grid-template-columns: max-content minmax(0, 1fr);
				grid-template-areas:
					'logo right-utility-nav'
					'logo left-utility-nav';
				column-gap: var(--wp--preset--spacing--2-5);
				row-gap: var(--wp--preset--spacing--1);
				
				.site-nav {
					&.utility {
						justify-self: end;
					}
				}
			}
			
			@media (width <= 800px) {
				.wp-block-site-logo {
					* {
						width: 240px;
					}
				}
			}
			
			@media (width <= 600px) {
				grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
				grid-template-areas:
					'mobile-left-utility-nav logo 			  mobile-right-utility-nav'
					'left-utility-nav		 left-utility-nav left-utility-nav';
				column-gap: var(--wp--preset--spacing--1-5);
				
				.site-nav {
					&.utility {
						justify-self: center;
						
						&.mobile-only {
							display: flex;
							align-self: center;
							
							&.left {
								grid-area: mobile-left-utility-nav;
							}
							
							&.right {
								grid-area: mobile-right-utility-nav;
							}
						}
						
						&.left {
							& > .menu-item.wpml-ls-item {
								display: block;
							}
						}
						
						&.right:not(.mobile-only) {
							display: none;
						}
					}
				}
			}
			
			@media (width <= 520px) {
				column-gap: var(--wp--preset--spacing--1);
				
				.wp-block-site-logo {
					* {
						width: 200px;
					}
				}
			}
			
			@media (width <= 420px) {
				grid-template-columns: max-content minmax(0, 1fr);
				grid-template-rows: repeat(2, max-content) auto;
				grid-template-areas:
					'logo 			  mobile-left-utility-nav'
					'logo 			  mobile-right-utility-nav'
					'left-utility-nav left-utility-nav';
				row-gap: var(--wp--preset--spacing--0-50);
				
				.wp-block-site-logo {
					* {
						width: 200px;
					}
				}
				
				.site-nav {
					&.utility {
						&.mobile-only {
							justify-self: end;
							
							&.left {
								align-self: end;
								margin-block-end: var(--wp--preset--spacing--0-50);
							}
							
							&.right {
								align-self: start;
								margin-block-start: var(--wp--preset--spacing--0-50);
							}
						}
						
						&.left:not(.mobile-only) {
							justify-self: start;
							width: 100%;
							
							& > .menu-item.wpml-ls-item {
								align-self: start;
								margin-inline-start: auto;
							}
						}
						
						& > .menu-item.has-icon > a {
							&::before {
								width: 22px;
							}
							
							.summer > &::before {
								width: 25px;
							}
							
							.winter > &::before,
							.spring > &::before {
								width: 21px;
							}
						}
					}
				}
			}
			
			@media (width <= 350px) {
				.wp-block-site-logo {
					* {
						width: 175px;
					}
				}
			}
		}
		
		/******************************/
		/* Burger popup
		/******************************/
		& > #burger-popup {
			display: grid;
			grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
			grid-template-rows: calc(var(--wp--custom--header-height) - var(--header-pad-top)) minmax(0, 1fr) max-content;
			grid-template-areas:
				'left-burger-utility-nav logo 			   	right-burger-utility-nav'
				'left-burger-nav 		 center-burger-nav  right-burger-nav'
				'menu-toggle-widget 	 menu-toggle-widget menu-toggle-widget';
			column-gap: var(--wp--preset--spacing--6);
			row-gap: var(--wp--preset--spacing--4);
			justify-content: space-evenly;
			width: 100vw;
			height: 100dvh;
			max-height: 100dvh;
			background-color: var(--wp--custom--color--default--text--main);
			padding-block: calc(var(--wp--custom--adminbar-height) + var(--header-pad-top)) var(--header-pad-top);
			padding-inline: var(--wp--custom--wide-pad) calc(var(--wp--custom--wide-pad) + var(--wp--custom--scrollbar-width));
			border: unset;
			box-sizing: border-box;
			overflow-y: clip;
			transition: opacity var(--wp--custom--speed--medium), padding-block var(--wp--custom--speed--medium);
			
			&, * {
				pointer-events: all;
			}
			
			&::backdrop {
				display: none !important;
			}
			
			body:not(.loaded) &,
			&:not(:popover-open) {
				opacity: 0;
			}
			
			body:not(.loaded) &,
			&:not(:popover-open),
			&:not(:popover-open) * {
				pointer-events: none;
			}
			
			& > * {
				position: relative;
				z-index: 2;
			}
			
			/* Logo */
			.wp-block-site-logo {
				grid-area: logo;
				justify-self: center;
				max-width: 100%;
				
				* {
					width: 300px;
					max-width: 100%;
					height: auto;
					aspect-ratio: 482/183;
					
					&:is(svg) {
						fill: var(--wp--custom--color--default--bg);
						transition: fill var(--wp--custom--speed--fast);
						
						.wp-block-site-logo:is(:hover, :focus, :active) & {
							fill: var(--wp--custom--color--default--focus);
						}
					}
				}
			}
			
			/* Menus */
			& > .site-nav {
				display: flex;
				flex-direction: column;
				align-items: center;
				
				.menu-item > a {
					display: inline-block;
				}
				
				/* Burger menu */
				&.burger {
					&.left-and-right {
						display: none; /* Will be used for responsiveness */
					}
					
					/* Left & Right */
					&:is(.left, .right, .left-and-right) {
						align-self: center;
						justify-self: center;
						gap: var(--wp--preset--spacing--0-25);
						min-width: calc(var(--wp--style--global--wide-size) * .15);
						height: max-content;
						text-align: center;
						padding: var(--wp--preset--spacing--1-5) var(--wp--preset--spacing--0-50);
						border-block: 2px solid var(--wp--custom--color--default--text--headings);
						
						/* Left */
						&.left {
							grid-area: left-burger-nav;
						}
						
						/* Right */
						&.right {
							grid-area: right-burger-nav;
						}
						
						/* Items */
						& > .menu-item {
							font-family: var(--wp--preset--font-family--national-2);
							font-size: var(--wp--preset--font-size--large);
							line-height: 1.2;
							font-weight: 400;
							text-transform: uppercase;
						}
					}
					
					/* Center */
					&.center {
						grid-area: center-burger-nav;
						
						& > .menu-item {
							font-family: var(--wp--preset--font-family--canela);
							font-size: var(--wp--preset--font-size--2-x-large);
							line-height: 1.4;
							font-weight: 300;
							letter-spacing: 2px;
							text-transform: uppercase;
							
							&.mobile-only {
								display: none;
							}
						}
					}
				}
				
				/* Utility menu */
				&.utility {
					align-self: center;
					
					/* Left */
					&.left {
						grid-area: left-burger-utility-nav;
					}
					
					/* Right */
					&.right {
						grid-area: right-burger-utility-nav;
					}
				}
			}
			
			/* Menu toggle widget */
			& > .menu-toggle-widget {
				--bg-color: var(--wp--custom--color--default--text--main);
				
				grid-area: menu-toggle-widget;
				justify-self: center;
				bottom: var(--wp--preset--spacing--1);
				width: calc(100% - ((var(--wp--custom--wide-pad) * 2) + var(--wp--custom--scrollbar-width)));
				
				svg {
					min-width: 41px;
				}
			}
			
			/******************************/
			/* Responsive
			/******************************/
			@media (width <= 1200px) {
				padding-block: var(--wp--preset--spacing--1-5) calc(var(--wp--preset--spacing--1) + 60px);
			}
			
			@media (width <= 600px) {
				padding-block: var(--wp--preset--spacing--1-5) calc(var(--wp--preset--spacing--1) + 50px);
			}
			
			@media (width <= 1000px),
				   (height <= 800px) {
				overflow: auto;
			}
			
			/**** Width queries (only applied if viewport height is 675px or more) ****/
			@media (width <= 1400px) and (height >= 675px) {
				column-gap: var(--wp--preset--spacing--3);
			}
			
			@media (width <= 1200px) and (height >= 675px) {
				grid-template-columns: max-content repeat(2, minmax(0, 1fr)) max-content;
				grid-template-areas:
					'logo 				left-burger-utility-nav left-burger-utility-nav    right-burger-utility-nav'
					'center-burger-nav  center-burger-nav 		left-and-right-burger-navs left-and-right-burger-navs'
					'menu-toggle-widget menu-toggle-widget 		menu-toggle-widget		   menu-toggle-widget';
				column-gap: var(--wp--preset--spacing--1-5);
				row-gap: var(--wp--preset--spacing--2);
				padding-inline: var(--wp--custom--outer-pad) calc(var(--wp--custom--outer-pad) + var(--wp--custom--scrollbar-width));
				
				.wp-block-site-logo {
					justify-self: start;
				}
				
				& > .site-nav {
					&.burger {
						align-self: center;
						
						&:is(.left, .right, .left-and-right) {
							display: none;
							
							&.left-and-right {
								grid-area: left-and-right-burger-navs;
								justify-self: end;
								display: flex;
							}
						}
						
						&.center {
							justify-self: start;
						}
					}
					
					&.utility {
						width: max-content;
						justify-self: end;
					}
				}
			}
			
			@media (width <= 1000px) and (height >= 675px) {
				& > .site-nav {
					&.burger {
						&.center,
						&:is(.left, .right, .left-and-right) {
							align-self: start;
						}
						
						&:is(.left, .right, .left-and-right) {
							padding: var(--wp--preset--spacing--0-75) var(--wp--preset--spacing--0-25);
							
							&.left-and-right {
								grid-area: left-and-right-burger-navs;
								justify-self: end;
								display: flex;
							}
						}
						
						&.center {
							justify-content: start;
							align-items: start;
							row-gap: var(--wp--preset--spacing--1-5);
							
							& > .menu-item {
								grid-template-rows: max-content 1fr;
								font-size: var(--wp--preset--font-size--x-large);
								line-height: normal;
								
								&:has(> .sub-menu),
								&:has(+ .menu-item > .sub-menu) {
									padding-block-end: var(--wp--preset--spacing--1);
									border-block-end: 2px solid var(--wp--custom--color--default--text--headings);
								}
								
								& > a {
									text-align: start;
									padding-block-end: unset;
									border-block-end: unset;
								}
								
								& > .sub-menu {
									margin-block-start: var(--wp--preset--spacing--0-50);
									margin-inline: 0 auto;
									
									& > * {
										justify-content: start;
										width: max-content;
										font-size: var(--wp--preset--font-size--medium);
										font-weight: 500;
										line-height: normal;
										margin-inline: unset;
										
										&:first-child {
											padding-block-start: unset;
											border-block-start: unset;
										}
										
										&:last-child {
											padding-block-end: unset;
											border-block-end: unset;
										}
									}
								}
							}
						}
					}
				}
			}
			
			@media (width <= 800px) and (height >= 675px) {
				grid-template-columns: auto repeat(2, max-content) auto;
				grid-template-rows: calc(var(--wp--custom--header-height) - var(--header-pad-top)) max-content minmax(0, 1fr);
				grid-template-areas:
					'logo 			    logo 			   left-burger-utility-nav right-burger-utility-nav'
					'center-burger-nav  center-burger-nav  center-burger-nav 	   center-burger-nav'
					'left-burger-nav    right-burger-nav   empty				   empty'
					'menu-toggle-widget menu-toggle-widget menu-toggle-widget	   menu-toggle-widget';
				justify-content: start;
				row-gap: var(--wp--preset--spacing--1-5);
				
				.wp-block-site-logo {
					* {
						width: 240px;
					}
				}
				
				& > .site-nav {
					max-width: 100%;
					
					&.utility {
						&.left {
							justify-self: end;
						}
					}
					
					&.burger {
						&:is(.left, .right, .left-and-right) {
							align-items: start;
							width: max-content;
							padding: var(--wp--preset--spacing--0-75) 0;
							
							&.left,
							&.right {
								justify-self: start;
								display: flex;
							}
							
							&.left-and-right {
								display: none;
							}
							
							& > .menu-item {
								font-size: var(--wp--preset--font-size--small);
								font-weight: 500;
								text-align: start;
							}
						}
						
						&.center {
							row-gap: var(--wp--preset--spacing--0-75);
							
							& > .menu-item {
								width: 100%;
								text-align: start;
								
								&:has(> .sub-menu),
								&:has(+ .menu-item > .sub-menu) {
									padding-block-end: var(--wp--preset--spacing--0-75);
									border-block-end: 1px solid var(--wp--custom--color--default--text--headings);
								}
								
								& > a {
									font-size: var(--wp--preset--font-size--large);
								}
								
								& > .sub-menu {
									& > * {
										font-size: var(--wp--preset--font-size--small);
									}
								}
							}
						}
					}
				}
				
				& > .menu-toggle-widget {
					justify-self: start;
				}
			}
			
			@media (width <= 550px) and (height >= 675px) {
				grid-template-rows: repeat(3, max-content) minmax(0, 1fr) max-content;
				grid-template-areas:
				'logo 			    	 logo 			   		  logo  			 logo'
				'left-burger-utility-nav right-burger-utility-nav empty 			 empty'
				'center-burger-nav  	 center-burger-nav  	  center-burger-nav  center-burger-nav'
				'left-burger-nav    	 right-burger-nav		  empty-2			 empty-2'
				'menu-toggle-widget 	 menu-toggle-widget		  menu-toggle-widget menu-toggle-widget';
				
				.wp-block-site-logo {
					* {
						width: 200px;
					}
				}
				
				& > .site-nav {
					max-width: 100%;
					
					&.utility {
						&.left,
						&.right {
							justify-self: start;
						}
					}
					
					&.burger {
						&.center {							
							& > .menu-item {
								width: max-content;
							}
						}
					}
				}
			}
			
			@media (width <= 350px) {
				.wp-block-site-logo {
					* {
						width: 175px;
					}
				}
			}
			
			/**** Height queries (force simplification of burger popup starting at viewport height 800px) ****/
			@media (height < 800px) {
				padding-block-start: var(--wp--custom--outer-pad);
				/* row-gap: var(--wp--preset--spacing--4); */
				
				/* & > .site-nav {
					&.burger {
						&:is(.left, .right, .left-and-right) {
							padding: var(--wp--preset--spacing--0-75) var(--wp--preset--spacing--0-25);
						}
						
						&.center {
							row-gap: var(--wp--preset--spacing--1);
							
							& > .menu-item {
								& > .sub-menu {
									& > * {
										line-height: normal;
										
										&:first-child {
											padding-block-start: var(--wp--preset--spacing--0-75);
										}
										
										&:last-child {
											padding-block-end: var(--wp--preset--spacing--0-75);
										}
									}
								}
							}
						}
					}
				} */
			}
			
			@media (height < 675px) {
				row-gap: var(--wp--preset--spacing--2);
				
				& > .site-nav {
					&.burger {
						&.center {
							row-gap: var(--wp--preset--spacing--0-50);
							
							& > .menu-item {
								font-size: var(--wp--preset--font-size--large);
								line-height: normal;
								font-weight: 400;
								
								& > .sub-menu {
									/* display: none; */
									
									& > * {
										font-size: var(--wp--preset--font-size--small);
									}
								}
							}
						}
						
						&:is(.left, .right, .left-and-right) {
							align-self: start;
						}
					}
				}
				
				@media (width <= 1000px) {
					column-gap: var(--wp--preset--spacing--1);
					
					& > .site-nav {
						max-width: 100%;
						
						&.burger {
							align-self: center !important;
							
							&:is(.left, .right, .left-and-right) {
								& > .menu-item {
									font-size: var(--wp--preset--font-size--small);
								}
							}
						}
					}
				}
				
				
			}
			
			/**** Smallest supported sizes (smaller than 700x675 and/or height under 420px) ****/
			@media (height < 420px), (width <= 700px) and (height < 675px) {
				grid-template-rows: 1fr max-content;
				grid-template-areas:
					'left-burger-nav 	center-burger-nav 		right-burger-nav'
					'menu-toggle-widget menu-toggle-widget 		menu-toggle-widget';
				
				.wp-block-site-logo {
					display: none;
				}
				
				& > .site-nav {
					align-self: center !important;
					
					&.utility {
						display: none;
					}
				}
				
				@media (width <= 700px) and (height < 675px) {
					display: flex;
					flex-direction: column;
					flex-wrap: wrap;
					justify-content: start;
					align-items: center;
					row-gap: var(--wp--preset--spacing--0-50);
					padding-block-end: 50px;
					/* column-count: 2; */
					
					& > .site-nav {
						display: contents;
						
						& > .menu-item {
							font-family: var(--wp--preset--font-family--canela) !important;
							font-size: var(--wp--preset--font-size--medium) !important;
							line-height: 1.2 !important;
							font-weight: 400 !important;
							letter-spacing: 0px !important;
							/* text-align: start; */
							/* margin-inline: 0 auto !important; */
							
							&.mobile-only {
								display: inline-block !important;
							}
							
							.burger.center > & {
								order: -1;
							}
							
							& > a {
								text-transform: initial !important;
							}
							
							& > .sub-menu {
								display: none;
							}
							
							/* Always display Cruises menu item and its submenu */
							&:is(#menu-item-97, #menu-item-134) {
								order: 99;
								font-size: var(--wp--preset--font-size--x-large) !important;
								margin-block: auto;
								
								& > .sub-menu {
									display: flex;
									flex-direction: column;
									height: max-content;
									
									& > .menu-item {
										font-size: var(--wp--preset--font-size--medium) !important;
									}
								}
							}
						}
					}
					
					& > .menu-toggle-widget {
						/* justify-self: unset !important; */
						justify-self: end !important;
					}
				}
			}
		}
		
		/******************************/
		/* Responsive
		/******************************/
		@media (width <= 1200px) {
			--header-pad-top: var(--wp--preset--spacing--1-5);
		}
	}
	
	/************************************************************/
	/* Footer
	/************************************************************/
	& > footer {
		width: 100%;
		max-width: var(--wp--style--global--wide-size);
		margin-block-start: var(--wp--custom--outer-pad);
		margin-inline: auto;
		z-index: 3;
		
		& > .wp-block-group {
			margin-block: 0;
		}
		
		/******************************/
		/* Site footer
		/******************************/
		& > .site-footer {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			grid-template-rows: repeat(4, max-content);
			grid-template-areas:
				'logo 		   	  logo    	 	  logo'
				'phone-numbers 	  address 	 	  social-nav'
				'multi-cta 	   	  multi-cta 	   multi-cta'
				'palplus-entities palplus-entities palplus-entities';
			column-gap: var(--wp--preset--spacing--1);
			row-gap: var(--wp--preset--spacing--1);
			justify-content: space-between;
			align-items: center;
			
			/* Logo */
			.wp-block-site-logo {
				grid-area: logo;
				justify-self: center;
				max-width: 80%;
				margin-block-end: var(--wp--preset--spacing--2);
				
				* {
					width: 480px;
					max-width: 100%;
					height: auto;
					aspect-ratio: 482/183;
					
					&:is(svg path) {
						transition: fill var(--wp--custom--speed--fast);
						
						&.fill-1 {
							fill: var(--wp--custom--color--default--text--headings);
						}
						
						&.fill-2 {
							fill: var(--wp--custom--color--default--text--main);
						}
						
						.wp-block-site-logo:is(:hover, :focus, :active) &:is(.fill-1, .fill-2) {
							fill: var(--wp--custom--color--default--focus);
						}
					}
				}
			}
			
			/* Coordinates */
			.coordinates {
				justify-self: center;
				
				&, p {
					max-width: 100%;
				}
				
				/* Phone numbers */
				&.phone-numbers {
					grid-area: phone-numbers;
				}
				
				/* Address */
				&.address {
					grid-area: address;
				}
			}
			
			/* Menus */
			.site-nav {
				/* Social menu */
				&.social {
					grid-area: social-nav;
				}
				
				/* PAL+ entities */
				&.palplus-entities {
					grid-area: palplus-entities;
					display: flex;
					flex-wrap: wrap;
					justify-content: end;
					align-items: center;
					column-gap: var(--wp--preset--spacing--2);
					row-gap: var(--wp--preset--spacing--0-75);
					background-color: var(--wp--custom--color--default--text--main);
					padding: var(--wp--preset--spacing--3) 7.5%;
					border-radius: var(--wp--custom--border-radius--medium);
					overflow: clip;
					
					& > .menu-item {
						&.palplus {
							margin-inline-end: auto;
						}
						
						& > a {
							display: flex;
							justify-content: center;
							align-items: center;
							font-size: 0;
							color: transparent;
							background-color: transparent;
							transition: background-color var(--wp--custom--speed--fast);
							
							&::after {
								display: block;
								content: '';
								height: auto;
								max-height: 100%;
								background-color: var(--wp--custom--color--default--bg);
								background-repeat: no-repeat;
								background-position: center;
								transition: background-color var(--wp--custom--speed--fast);
								
								-webkit-mask: var(--btn-icon);
								mask: var(--btn-icon);
								mask-repeat: no-repeat;
								mask-position: center;
								mask-size: contain;
							}
							
							&:is(:hover, :focus, :active) {
								&::after {
									background-color: var(--wp--custom--color--default--focus);
								}
							}
							
							.palplus > &::after 		{ --btn-icon: url(../images/pal-logo.svg); width: 240px; aspect-ratio: 70/17; }
							body.en .palplus > &::after { --btn-icon: url(../images/pal-logo-en.svg); width: 240px; aspect-ratio: 135/34; }
							.e4s > &::after 			{ --btn-icon: url(../images/e4s-logo.svg); width: 90px; aspect-ratio: 281/144; }
							.b4s > &::after 			{ --btn-icon: url(../images/b4s-logo.svg); width: 75px; aspect-ratio: 24/25; }
							.bp > &::after 				{ --btn-icon: url(../images/bp-logo.svg); width: 85px; aspect-ratio: 401/255; }
							.verso > &::after 			{ --btn-icon: url(../images/verso-logo.svg); width: 110px; aspect-ratio: 25/8; }
							.koz > &::after 			{ --btn-icon: url(../images/koz-logo.svg); width: 65px; aspect-ratio: 86/75; }
							.omg > &::after 			{ --btn-icon: url(../images/omg-logo.svg); width: 75px; aspect-ratio: 3/2; }
							.rata > &::after 			{ --btn-icon: url(../images/ratatouille-logo.svg); width: 85px; aspect-ratio: 87/50; }
							.cornet > &::after 			{ --btn-icon: url(../images/cornet-logo.png); width: 80px; aspect-ratio: 1398/1141; }
							.em > &::after 				{ --btn-icon: url(../images/em-logo.svg); width: 110px; aspect-ratio: 50/19; }
						}
					}
				}
			}
			
			/* Multi-CTA */
			.wp-block-cke-multi-cta {
				grid-area: multi-cta;
				margin-block: var(--wp--preset--spacing--1);
			}
			
			/******************************/
			/* Responsive
			/******************************/
			@media (width <= 1720px) {
				.site-nav {
					&.palplus-entities {
						padding: var(--wp--preset--spacing--2) var(--wp--preset--spacing--3);
					}
				}
			}
			
			@media (width <= 1480px) {
				.site-nav {
					&.palplus-entities {
						& > .menu-item {
							&.palplus {
								padding-inline-end: calc(100% / 3);
								translate: 0 50%;
							}
						}
					}
				}
			}
			
			@media (width <= 1240px) {
				.site-nav {
					&.palplus-entities {
						& > .menu-item {
							&.palplus {
								padding-inline-end: 15%;
							}
						}
					}
				}
			}
			
			@media (width <= 1000px) {
				grid-template-columns: repeat(3, minmax(0, 1fr));
				grid-template-rows: repeat(5, max-content);
				grid-template-areas:
					'logo 			  logo 			   logo'
					'phone-numbers 	  address    	   address'
					'social-nav 	  social-nav 	   social-nav'
					'multi-cta 		  multi-cta 	   multi-cta'
					'palplus-entities palplus-entities palplus-entities';
				
				.site-nav {
					&.social {
						margin-block: var(--wp--preset--spacing--2);
					}
					
					&.palplus-entities {
						justify-content: center;
						
						& > .menu-item {
							&.palplus {
								width: 100%;
								padding-inline-end: unset;
								margin-block-end: var(--wp--preset--spacing--2);
								translate: unset;
							}
						}
					}
				}
				
				.wp-block-cke-multi-cta {
					margin-block: unset;
				}
			}
			
			@media (width <= 600px) {
				grid-template-columns: 100%;
				grid-template-rows: repeat(6, max-content);
				grid-template-areas:
					'logo'
					'phone-numbers'
					'address'
					'social-nav'
					'multi-cta'
					'palplus-entities';
				row-gap: var(--wp--preset--spacing--2);
				
				.site-nav {
					&.social {
						margin-block: unset;
					}
				}
				
				.wp-block-cke-multi-cta {
					& > .acf-innerblocks-container {
						gap: var(--wp--preset--spacing--2);
					}
				}
			}
		}
		
		/******************************/
		/* Site credits
		/******************************/
		& > .site-credits {
			display: flex;
			align-items: center;
			background-color: var(--wp--custom--color--default--bg);
			padding-block: var(--wp--preset--spacing--1);
			
			& > :is(p, .cake) {
				margin-block: unset;
			}
			
			& > p {
				font-size: var(--wp--preset--font-size--small);
				color: var(--wp--custom--color--default--text--headings);
				line-height: 1;
				
				a {
					color: inherit;
					text-decoration: none;
					
					&:is(:hover, :focus, :active) {
						color: var(--wp--custom--color--default--focus);
					}
				}
			}
			
			& > :is(.copyright, .privacy-policy) {
				padding-inline-end: var(--wp--preset--spacing--0-50);
				border-inline-end: 1px solid currentcolor;
				margin-inline-end: var(--wp--preset--spacing--0-50);
			}
			
			& > .cake {
				position: relative;
				margin-inline-start: auto;
				
				svg {
					fill: var(--wp--custom--color--default--text--headings);
					transition: fill var(--wp--custom--speed--fast);
				}
				
				a:is(:hover, :focus, :active) > svg {
					fill: var(--wp--custom--color--default--focus);
				}
				
				&, * {
					display: flex;
					align-items: center;
					height: 20px;
				}
			}
			
			/******************************/
			/* Responsive
			/******************************/
			@media (width <= 1000px) {
				flex-wrap: wrap;
				justify-content: center;
				row-gap: var(--wp--preset--spacing--0-75);
				
				& > .cake {
					justify-content: center;
					width: 100%;
				}
			}
			
			@media (width <= 800px) {
				flex-direction: column;
				flex-wrap: nowrap;
				text-align: center;
				
				& > :is(.copyright, .privacy-policy) {
					padding-inline-end: unset;
					border-inline-end: unset;
					margin-inline-end: unset;
				}
			}
		}
	}
	
	/************************************************************/
	/* Menus
	/************************************************************/
	.site-nav {
		display: flex;
		align-items: end;
		gap: var(--wp--preset--spacing--1-5);
		
		/******************************/
		/* Menu items
		/******************************/
		& > .menu-item {
			position: relative;
			width: max-content;
			max-width: 100%;
			font-size: var(--wp--preset--font-size--large);
			color: var(--wp--custom--color--default--bg);
			list-style: none;
			
			& > a {
				font-family: inherit;
				font-size: inherit;
				line-height: inherit;
				color: inherit;
				text-decoration: none;
				transition: color var(--wp--custom--speed--fast);
				
				:is(:hover, :focus, :active, [class*="current-menu-"]) > & {
					color: var(--wp--custom--color--default--focus);
				}
			}
			
			/**** Simple button style ****/
			&.btn-simple {
				& > a {
					font-family: var(--wp--preset--font-family--canela);
					background-color: transparent;
					padding: var(--wp--preset--spacing--0-50) var(--wp--preset--spacing--1) var(--wp--preset--spacing--0-25);
					border: 1px solid var(--wp--custom--color--default--bg);
					border-radius: var(--wp--custom--border-radius--small);
					outline: none;
					transition: color var(--wp--custom--speed--fast), background-color var(--wp--custom--speed--fast), background-color var(--wp--custom--speed--fast);
					
					:is(:hover, :focus, :active, [class*="current-menu-"]) > & {
						color: var(--wp--custom--color--default--text--main);
						background-color: var(--wp--custom--color--default--focus);
						border-color: var(--wp--custom--color--default--focus);
					}
				}
			}
			
			/**** Language switcher style ****/
			:not(.burger) > &.wpml-ls-item {
				span[lang] {
					font-size: 0;
					color: transparent;
					
					&::before {
						display: inline-block;
						font-family: var(--wp--preset--font-family--canela);
						font-size: var(--wp--preset--font-size--large);
						font-weight: 300;
						text-transform: uppercase;
						transition: color var(--wp--custom--speed--fast);
						color: var(--wp--custom--color--default--bg);
					}
					
					&[lang="fr"]::before { content: 'FR'; }
					&[lang="en"]::before { content: 'EN'; }
					
					:is(:hover, :focus, :active, [class*="current-menu-"]) > &::before {
						color: var(--wp--custom--color--default--focus);
					}
				}
			}
		}
		
		/******************************/
		/* Sub-menus
		/******************************/
		.menu-item:has(> .sub-menu) {
			display: grid;
			grid-template-rows: max-content 0fr;
			grid-template-columns: 1fr;
			transition: grid-template-rows var(--wp--custom--speed--slow);
			
			&:is(:hover, :focus, :active) {
				grid-template-rows: max-content 1fr;
			}
			
			&, * {
				text-transform: uppercase;
			}
			
			& > .sub-menu {
				justify-self: stretch;
				align-items: center;
				width: max-content;
				max-width: 100%;
				margin-block: unset;
				margin-inline: auto;
				padding: unset;
				overflow: hidden;
				list-style: unset;
				
				& > * {
					display: flex;
					justify-content: center;
					font-family: var(--wp--preset--font-family--national-2);
					font-size: var(--wp--preset--font-size--large);
					/* line-height: 2.4; */
					font-weight: 500;
					margin-inline: var(--wp--preset--spacing--0-50);
					
					&:first-child {
						padding-block-start: var(--wp--preset--spacing--1-5);
						border-block-start: 2px solid var(--wp--custom--color--default--text--headings);
					}
					
					&:last-child {
						padding-block-end: var(--wp--preset--spacing--1-5);
						border-block-end: 2px solid var(--wp--custom--color--default--text--headings);
					}
					
					a {
						text-decoration: none;
						
						&:is(:hover, :focus, :active) {
							color: var(--wp--custom--color--default--focus);
						}
					}
				}
			}
		}
		
		/******************************/
		/* Social menu
		/******************************/
		&.social {
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: var(--wp--preset--spacing--0-75);
			
			* {
				margin-block: 0;
			}
			
			& > .items {
				display: flex;
				justify-content: center;
				align-items: center;
				gap: var(--wp--preset--spacing--0-25);
				
				& > .menu-item {
					list-style: none;
					
					& > a {
						position: relative;
						display: flex;
						justify-content: center;
						align-items: center;
						width: 38px;
						height: auto;
						aspect-ratio: 1;
						font-size: 0;
						color: transparent;
						background-color: transparent;
						border: 2px solid var(--wp--custom--color--default--text--main);
						border-radius: 50%;
						transition: background-color var(--wp--custom--speed--fast), border-color var(--wp--custom--speed--fast);
						
						&::after {
							display: block;
							position: absolute;
							top: 50%;
							left: 50%;
							font-family: var(--wp--preset--font-family--fontawesome);
							font-size: 1.25rem;
							font-weight: 400;
							line-height: normal;
							color: var(--wp--custom--color--default--text--main);
							translate: -50% -50%;
							transition: color var(--wp--custom--speed--fast);
						}
						
						&:is(:hover, :focus, :active) {
							background-color: var(--wp--custom--color--default--focus);
							border-color: var(--wp--custom--color--default--focus);
							
							&::after {
								color: var(--wp--custom--color--default--bg);
							}
						}
						
						.fb > &::after { content: ''; 	font-size: 1.125rem; }
						.ig > &::after { content: ''; }
						.in > &::after { content: ''; }
						.yt > &::after { content: ''; }
						.tk > &::after { content: ''; }
					}
				}
			}
		}
		
		@media (width <= 700px) {
			& > .menu-item {
				font-size: var(--wp--preset--font-size--medium);
				
				:not(.burger) > &.wpml-ls-item {
					& span[lang] {
						&::before {
							font-size: var(--wp--preset--font-size--medium);
						}
					}
				}
			}
		}
		
		@media (width <= 550px) {
			& > .menu-item {
				&.btn-simple {
					font-size: var(--wp--preset--font-size--small);
					
					& > a {
						padding: var(--wp--preset--spacing--0-50) var(--wp--preset--spacing--0-50) var(--wp--preset--spacing--0-25);
					}
				}
			}
		}
		
		@media (width <= 420px) {
			& > .menu-item {
				font-size: var(--wp--preset--font-size--small);
			}
		}
	}
	
	/************************************************************/
	/* Misc.
	/************************************************************/
	/******************************/
	/* Menu toggle widget
	/******************************/
	.menu-toggle-widget {
		--color: var(--wp--custom--color--default--text--headings);
		--bg-color: var(--wp--custom--color--default--bg);
		--deco-color: var(--wp--custom--color--default--bg);
		--focus-color: var(--wp--custom--color--default--bg);
		
		&.light-style {		
			--color: var(--wp--custom--color--default--focus);
			--bg-color: transparent;
			--deco-color: var(--wp--custom--color--default--text--main);
			--focus-color: var(--wp--custom--color--default--text--main);
		}
		
		display: flex;
		justify-content: center;
		align-items: end;
		position: sticky;
		bottom: var(--wp--preset--spacing--1);
		/* bottom: calc(var(--wp--custom--adminbar-height) + var(--wp--preset--spacing--1)); */
		width: 0;
		height: 0;
		margin-inline: auto;
		/* transition: bottom var(--wp--custom--speed--slow); */
		z-index: 4;
		
		&.reset-bottom {
			bottom: calc(var(--wp--preset--spacing--1) + .01px);
		}
		
		/* body:has(header.fade-out) & {
			bottom: var(--wp--preset--spacing--1);
		} */
		
		/* body:has(header.fast) & {
			transition: unset !important;
		} */
		
		& > .widget-inner {
			display: flex;
			align-items: stretch;
			max-width: calc(var(--wp--style--global--wide-size) - (var(--wp--custom--outer-pad) * 2));
			padding: unset;
			border: 1px solid var(--color);
			border-radius: var(--wp--custom--border-radius--small);
			overflow: clip;
			transition: border-color var(--wp--custom--speed--fast);
			
			/* Boat deco */
			& > .boat-deco {
				background-color: var(--color);
				padding-block: var(--wp--preset--spacing--0-50);
				padding-inline: var(--wp--preset--spacing--0-75) var(--wp--preset--spacing--0-50);
				transition: background-color var(--wp--custom--speed--fast);
				
				svg {
					width: auto;
					height: 32px;
					aspect-ratio: 63/31;
					
					* {
						fill: var(--deco-color);
					}
				}
			}
			
			/* Burger toggle button / Current page anchors / Anchor selection input */
			& > [class*="burger-popup"],
			& > .current-page-anchors > a,
			& > .anchor-selection-input-container > select#anchor-selection-input {
				width: max-content;
				height: unset;
				text-transform: uppercase;
				white-space: nowrap;
				color: var(--color);
				background-color: var(--bg-color);
				padding-block: var(--wp--preset--spacing--0-75);
				padding-inline: var(--wp--preset--spacing--1-5);
				border: unset;
				border-inline-start: 1px solid var(--color);
				border-radius: unset;
				box-sizing: content-box;
				transition: color var(--wp--custom--speed--fast), background-color var(--wp--custom--speed--fast);
				
				&[class*="burger-popup"] {
					display: flex;
					align-items: center;
					padding-inline: var(--wp--preset--spacing--2);
					
					svg {
						width: auto;
						
						.burger-popup-open > & {
							height: 19px;
							aspect-ratio: 11/5;
							margin-block-end: -2px;
						}
						
						.burger-popup-close > & {
							height: 23px;
							aspect-ratio: 1;
						}
						
						* {
							fill: var(--color);
							transition: fill var(--wp--custom--speed--fast);
						}
					} 
				}
				
				&:is(.anchor-link, #anchor-selection-input) {
					font-family: var(--wp--preset--font-family--national-2);
					font-weight: 400;
				}
				
				&:is(:hover, :focus, :active, .active),
				body:has([class*="burger-popup"]:is(:hover, :focus, :active)) &[class*="burger-popup"] {
					background-color: var(--color);

					&:is(.anchor-link, #anchor-selection-input) {
						color: var(--focus-color);
					}
					
					&[class*="burger-popup"] svg,
					&#anchor-selection-input + svg {
						* {
							fill: var(--focus-color);
						}
					}
				}
			}
			
			.mobile-layout > & > .current-page-anchors,
			:not(.mobile-layout) > & > .anchor-selection-input-container,
			& > .current-page-anchors:not(:has(.anchor-link)) {
				display: none !important;
			}
			
			/* Anchor selection input (will replace anchor links when menu toggle widget has reached its maximum width) */
			& > .anchor-selection-input-container {
				position: relative;
				
				& > select#anchor-selection-input {
					appearance: none;
					height: 100%;
					font-size: var(--wp--preset--font-size--medium-large);
					line-height: 1;
					text-align: center;
					padding-inline-end: var(--wp--preset--spacing--3);
					box-sizing: border-box;
					box-shadow: unset;
					outline: unset;
					cursor: pointer;
				}
				
				& > svg {
					position: absolute;
					top: 50%;
					right: var(--wp--preset--spacing--1-5);
					width: auto;
					height: 15px;
					aspect-ratio: 1/2;
					rotate: 90deg;
					translate: 0 -50%;
					pointer-events: none;
					
					* {
						fill: var(--wp--custom--color--default--text--headings);
					}
				}
			}
		}
		
		#burger-popup > & {
			position: fixed;
		}
		
		/******************************/
		/* Responsive
		/******************************/
		@media (width <= 600px) {
			& > .widget-inner {
				& > .boat-deco {
					svg {
						height: 24px;
					}
				}
				
				& > [class*="burger-popup"],
				& > .current-page-anchors > a,
				& > .anchor-selection-input-container > select#anchor-selection-input {
					padding-block: var(--wp--preset--spacing--0-50);
					
					&[class*="burger-popup"] {
						padding-inline: var(--wp--preset--spacing--1);
						
						svg {
							.burger-popup-open > & {
								height: 15px;
							}
						
							.burger-popup-close > & {
								min-width: 33px;
								width: 33px;
								height: 19px;
							}	
						}
					}
					
					&:is(.anchor-link, #anchor-selection-input) {
						font-size: var(--wp--preset--font-size--small);
					}
				}
				
				& > .anchor-selection-input-container {					
					& > svg {
						height: 12px;
					}
				}
			}
		}
		
		@media (width <= 500px) {
			& > .widget-inner {
				& > .boat-deco {
					display: none;
				}
				
				& > [class*="burger-popup"],
				& > .current-page-anchors > a,
				& > .anchor-selection-input-container > select#anchor-selection-input {
					padding-inline: var(--wp--preset--spacing--0-75);
					
					&[class*="burger-popup"] {
						color: var(--bg-color);
						background-color: var(--color);
						border-inline-start: unset;
						
						.menu-toggle-widget.light-style > .widget-inner > & {
							--bg-color: var(--wp--custom--color--default--text--main);
						}
						
						&:is(:hover, :focus, :active, .active),
						body:has([class*="burger-popup"]:is(:hover, :focus, :active)) & {
							color: var(--color);
							background-color: var(--bg-color);
							
							svg * {
								fill: var(--color) !important;
							}
						}
						
						svg {
							.burger-popup-open > & {
								height: 12px;
								margin-block: 2px;
							}
							
							.burger-popup-close > & {
								height: 16px;
								min-width: 28px;
								translate: 0 .5px;
							}
							
							* {
								fill: var(--bg-color);
							}	
						}
					}
				}
				
				& > .anchor-selection-input-container {
					& > select#anchor-selection-input {
						padding-inline-end: var(--wp--preset--spacing--2);
					}
					
					& > svg {
						right: var(--wp--preset--spacing--0-75);
						height: 10px;
					}
				}
			}
		}
		
		@media (width <= 320px) {
			& > .widget-inner {
				& > :not([class*="burger-popup"]) {
					display: none;
				}
			}
		}
	}
	
	/******************************/
	/* Popup alerts
	/******************************/
	.popup-overlay,
	.popup-alert {
		position: fixed;
		opacity: 0;
		pointer-events: none !important;
		transition: opacity var(--wp--custom--speed--medium);
		
		&.visible {
			opacity: 1;
			pointer-events: all !important;
		}
		
		&.popup-alert.visible ~ .popup-alert {
			opacity: 0 !important;
			pointer-events: none !important;
		}
		
		html:has(.popup-alert.visible) {
			overflow-y: clip;
		}
		
		/* Overlay */
		&.popup-overlay {
			inset: 0;
			width: var(--wp--custom--viewport-width);
			height: 100vh;
			background: rgba(var(--wp--custom--color--nebula-blue--rgb) / .4);
			margin: 0;
			cursor: pointer;
			z-index: 19;
		}
		
		/* Alert */
		&.popup-alert {
			display: flex;
			align-items: end;
			top: 50%;
			left: 50%;
			width: var(--wp--style--global--content-size);
			max-width: calc(var(--wp--custom--viewport-width) * .95);
			min-height: 60svh;
			max-height: 95vh;
			background-color: var(--wp--custom--color--default--bg);
			border: 12px solid var(--wp--custom--color--default--bg);
			border-radius: var(--wp--custom--border-radius--medium);
			margin: 0 !important;
			box-sizing: border-box;
			overflow: clip;
			translate: -50% -50%;
			z-index: 20;
			
			&:has(> figure) {
				padding-inline-end: calc(var(--wp--style--global--content-size) * .375);
				
				& > figure {
					position: absolute;
					top: 0;
					right: 0;
					width: calc(var(--wp--style--global--content-size) * .375);
					height: 100%;
					min-height: 100%;
					
					img {
						width: 100%;
						height: 100%;
						object-fit: cover;
					}
				}
			}
			
			& > button {
				position: absolute;
				top: var(--wp--preset--spacing--1);
				right: var(--wp--preset--spacing--1);
				width: 24px;
				height: 24px;
				z-index: 1;
				
				&:not(:hover, :focus, :active) {
					& > svg {
						fill: var(--wp--custom--color--default--bg);
					}
				}
			}
			
			& > .popup-content {
				height: max-content;
				max-height: calc(95svh - (12px * 2)); /* Roughly the maximum height that the popup alert can have */
				padding: var(--wp--preset--spacing--5-5);
				padding-block-end: var(--wp--preset--spacing--3-5);
				box-sizing: border-box;
				overflow-y: auto;
				scrollbar-color: var(--wp--custom--color--default--text--headings) transparent;
				scrollbar-width: thin;
				
				&::after {
					content: '';
					display: block;
					position: absolute;
					top: var(--wp--preset--spacing--2-5);
					left: var(--wp--preset--spacing--1-5);
					width: 180px;
					height: auto;
					aspect-ratio: 1;
					background: url(../images/em-stamp.svg) no-repeat center;
					background-size: contain;
					rotate: -15deg;
					filter: var(--wp--custom--color--prism-blue--filter);
					z-index: -1;
				}
				
				& > * {
					margin-block: unset;
					
					& + * {
						margin-block-start: 1em;
					}
				}
			}
		}
		
		/******************************/
		/* Responsive
		/******************************/
		@media (width <= 1400px) {
			&.popup-alert {
				& > .popup-content {
					padding: var(--wp--preset--spacing--3);
					
					&::after {
						top: var(--wp--preset--spacing--1-5);
						left: var(--wp--preset--spacing--1);
					}
				}
			}
		}
		
		@media (width <= 1000px) {
			&.popup-alert {
				& > .popup-content {
					padding: var(--wp--preset--spacing--2);
					padding-inline-end: var(--wp--preset--spacing--3);
				}
			}
		}
		
		@media (width <= 800px) {
			&.popup-alert {
				& > .popup-content {
					padding: var(--wp--preset--spacing--1-5);
					padding-inline-end: var(--wp--preset--spacing--2);
					
					&::after {
						top: var(--wp--preset--spacing--0-75);
						left: var(--wp--preset--spacing--0-75);
						width: 140px;
					}
				}
			}
		}
		
		@media (width <= 600px) {
			&.popup-alert {
				&:has(> figure) {
					padding-block-start: 25svh;
					padding-inline-end: unset;
					
					& > figure {
						width: 100%;
						height: 25svh;
						min-height: 25svh;
					}
				}
				
				& > .popup-content {
					padding: var(--wp--preset--spacing--1);
					padding-block-start: var(--wp--preset--spacing--2);
					padding-inline-end: var(--wp--preset--spacing--1);
					
					&::after {
						top: unset;
						left: unset;
						bottom: var(--wp--preset--spacing--0-75);
						right: var(--wp--preset--spacing--0-75);
					}
				}
			}
		}
		
		@media (width <= 400px) {
			&.popup-alert {
				&:has(> figure) {
					padding-block-start: 15svh;
					
					& > figure {
						height: 15svh;
						min-height: 15svh;
					}
				}
				
				& > .popup-content {
					padding: var(--wp--preset--spacing--0-25);
					padding-block-start: var(--wp--preset--spacing--1);
					padding-inline-end: var(--wp--preset--spacing--0-25);
					
					&::after {
						bottom: var(--wp--preset--spacing--0-25);
						right: var(--wp--preset--spacing--0-25);
						width: 100px;
					}
				}
			}
		}
	}
}