/*
Theme Name: 4mn34
Author: 4mn34
Author URI: https://www.4minutes34.com/
Description:
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.2
Text Domain: 4mn34
*/


/* Fonts ------------------------------------- */

@font-face {
	font-family: NonBreakingSpaceOverride;
	src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff");
}

@font-face {
	font-family: 'Inter';
	src: url(./assets/fonts/Inter/Inter_18pt-Regular.ttf); /* 400 */
}

@font-face {
	font-family: 'Inter Thin';
	src: url(./assets/fonts/Inter/Inter_18pt-Thin.ttf); /* 100 */
}

@font-face {
	font-family: 'Inter Light';
	src: url(./assets/fonts/Inter/Inter_18pt-Light.ttf); /* 300 Inter_18pt*/
}

@font-face {
	font-family: 'Inter Extra Light';
	src: url(./assets/fonts/Inter/Inter_18pt-ExtraLight.ttf); /* 300 */
}

@font-face {
	font-family: 'Inter Medium';
	src: url(./assets/fonts/Inter/Inter_18pt-Medium.ttf); /* 500 */
}

@font-face {
	font-family: 'Inter Semi Bold';
	src: url(./assets/fonts/Inter/Inter_18pt-SemiBold.ttf); /* 600 */
	font-weight: 600;
}

@font-face {
	font-family: 'Inter Bold';
	src: url(./assets/fonts/Inter/Inter_18pt-Bold.ttf); /* 700 */
	font-weight: 700;
}

@font-face {
	font-family: 'Inter ExtraBold';
	src: url(./assets/fonts/Inter/Inter_18pt-ExtraBold.ttf); /* 800 */
	font-weight: 800;
}

@font-face {
	font-family: 'Inter Black';
	src: url(./assets/fonts/Inter/Inter_18pt-Black.ttf); /* 900 */
}


/*
 *
 * Vars
 *
 */

html {
	--inter-thin-font: 'Inter Thin', sans-serif; /* 100 */
	--inter-light-font: 'Inter Light', sans-serif; /* 300 */
	--inter-regular-font: 'Inter', sans-serif; /* 400 */
	--inter-medium-font: 'Inter Medium', sans-serif; /* 500 */
	--inter-semi-bold-font: 'Inter Semi Bold', sans-serif; /* 600 */
	--inter-bold-font: 'Inter Bold', sans-serif; /* 700 */
	--inter-extra-bold-font: 'Inter ExtraBold', sans-serif; /* 800 */
	--inter-black-font: 'Inter Black', sans-serif; /* 900 */

	--grey-color: #6D6D6D;
	--grey-separator-color: #979797;
	--green-color: #0faa00;
	--green-separator-color: #b0e3ab;
	--black-color: #333333;
	--title-black-color: #000000;

	--red-button-color: #ff4d7f;

	--taxonomy-domaine-color: #0b8a00;
	--taxonomy-public-color: #000000;
	--taxonomy-media-color: #0022a1;

	--default-font-size: 20px;
	--default-font-size-mobile: 16px;

	--anchors-menu-height: 150px;
}


/*
 *
 * Reset styles
 *
 */

html,
body {
	border: none;
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
address,
big,
cite,
code,
em,
font,
img,
small,
strike,
sub,
sup,
li,
ol,
ul,
fieldset,
form,
label,
legend,
button,
table,
caption,
tr,
th,
td {
	border: none;
	margin: 0;
	padding: 0;
}

blockquote::before,
blockquote::after {
	content: "";
}

:where(figure) {
	margin: 0;
}

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

p a {
	text-decoration: none;
	color: var(--green-color);
}

p a:hover {
	text-decoration: underline;
}

ul {
	list-style-position: inside;
	padding-left: 0;
}

figcaption {
	font-size: 14px;
}

figcaption em {
	font-style: normal;
}

/* Screen Reader Text ------------------------ */

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
	word-break: normal;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	-webkit-clip-path: none;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	right: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}


/* Skip Link --------------------------------- */

.skip-link {
	left: -9999rem;
	top: 2.5rem;
	z-index: 999999999;
	text-decoration: underline;
}

.skip-link:focus {
	display: block;
	left: 6px;
	top: 7px;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	line-height: normal;
	padding: 15px 23px 14px;
	z-index: 100000;
	right: auto;
}



/* Accessibility Settings -------------------- */

@media ( prefers-reduced-motion: reduce ) {
	* {
		animation-duration: 0s !important;
		transition-duration: 0s !important;
	}
}



/* Items du Menu principal : Hover, Active et Focus styles */
body.single .main-menu-parent li:first-child a,
.main-menu-parent li.current-menu-item a,
:where(.wp-site-blocks .main-menu-parent a:hover),
:where(.wp-site-blocks .main-menu-parent a:focus) {
	color: var(--black-color);
}

body .main-menu-parent li .sub-menu a {
	outline-width: 0 !important;
}


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

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

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

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

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





/* Base -------------------- */

html {
	font-size: var(--default-font-size);
	font-family: var(--inter-regular-font), sans-serif;
	font-weight: normal;
}

body .wp-site-blocks > footer > .footer-contents,
body .wp-site-blocks > header,
main > .contents-wrapper {
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
}

body .wp-site-blocks > .header-bg {
	position: fixed;
	top: 0;
	z-index: 1;
	background-color: #FFF;
	/* box-shadow: -1px 10px 5px 0 rgba(255,255,255,0.75); */
	box-sizing: border-box;
	width: 100%;
	height: 130px;
}

body .wp-site-blocks > .header-bg::after {
	content: "";
	position: absolute;
	bottom: -16px;
	display: block;
	width: 100%;
	height: 16px;
	background: linear-gradient(to bottom, rgba(255,255,255,1), rgba(255,255,255,0));
}

body .wp-site-blocks > header > .header-wrapper {
	padding-top: 16px;
}

body .wp-site-blocks > header {
	position: sticky;
	top: 0;
	z-index: 2;
}

body.admin-bar .wp-site-blocks > header {
	top: 32px;
}

body .wp-site-blocks > .header-logo {
	position: sticky;
	top: 0;
	z-index: 20;
	margin-top: -16px;
	margin-left: calc(50% - 640px);
}

body.admin-bar .wp-site-blocks > .header-logo {
	top: 32px;
}

main > .contents-wrapper {
	margin-top: 85px;
	margin-bottom: 150px;
}

body.home main > .contents-wrapper {
	margin-top: 45px;
	margin-bottom: 150px;
}


/* Avec user admin bar */
body.admin-bar > .wp-site-blocks {
	margin-top: 32px;
}

/* A.1 Header -------------------- */

.main-navigation-menu {
	position: relative;
	width: 100%;
}

.main-navigation-menu nav,
.main-navigation-menu nav ul,
.header-contents {
	display: flex;
}

.main-navigation-menu nav {
	justify-content: flex-end;
}

.main-navigation-menu nav,
.main-navigation-menu nav ul {
	list-style-type: none;
	align-items: center;
	gap: 25px;
}

.main-navigation-menu nav > .navigation-menu > ul > li {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 45px;
}

.main-navigation-menu nav > .navigation-menu > ul > li > a {
	padding: 10px;
	font-size: 16px;
	line-height: 1.3;
	color: var(--green-color);
	text-decoration: none;
}

.main-navigation-menu nav > .navigation-menu > ul > li.current-menu-item > a {
	color: var(--black-color);
}

.main-navigation-menu nav > .navigation-menu > ul > li > a {
	display: inline-block;
	max-width: 105px;
}

.main-navigation-menu nav > .navigation-menu > ul > li > a:hover {
	text-decoration: underline;
}


body .wp-site-blocks > .header-logo {
	width: 277px;
	height: 101px;
}

.logo-wrapper {
	position: relative;
}

.logo-wrapper,
.logo {
	display: inline-block;
	width: 100%;
	height: 100%;
}

.logo {
	position: absolute;
	z-index: 3;
}

.logo.is-sticky {
	width: 100px;
	height: 60px;
}

.logo-4mn34,
.logo-wrapper::after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
}

.logo-wrapper::after {
	z-index: 2;
	background: url(./assets/images/4m34_logo_poisson.svg) center / contain no-repeat;
}

.logo-4mn34 {
	z-index: 1;
	text-indent: -9999px;
	background: url(./assets/images/4m34_logo_4mn34.svg) center / contain no-repeat;
}

body .main-menu-parent li.menu-item-has-children.opened ul.sub-menu > li > a:focus {
	background: #c1dcef;
}


/* A.2 Header : Hamburger -------------------- */

.hamburger-parent {
	display: none;
}

.c-hamburger {
	display: inline-block;
	position: relative;
	top:1px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	width: 20px;
	height: 30px;
	font-size: 0;
	text-indent: -9999px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-shadow: none;
	border: none;
	cursor: pointer;
	transition: background 0.3s;
}

.c-hamburger:focus {
	outline: none;
}

.c-hamburger:hover span::before,
.c-hamburger:hover span::after,
.c-hamburger:hover span {
}

.c-hamburger span {
	display: block;
	position: absolute;
	top: 17px;
	left: 0;
	right: 0;
	height: 2px;
	background: var(--green-color);
}

.c-hamburger span::before,
.c-hamburger span::after {
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
	height: 2px;
	background: var(--green-color);
	content: "";
}

.c-hamburger span::before {
	top: -8px;
}

.c-hamburger span::after {
	bottom: -8px;
}

.c-hamburger--htx span {
	transition: background 0s 0.3s;
}

.c-hamburger--htx span::before,
.c-hamburger--htx span::after {
	transition-duration: 0.3s, 0.3s;
	transition-delay: 0.3s, 0s;
}

.c-hamburger--htx span::before {
	transition-property: top, transform;
}

.c-hamburger--htx span::after {
	transition-property: bottom, transform;
}

.c-hamburger--htx.active span {
	background: none;
}

.c-hamburger--htx.active span::before {
	top: 0;
	transform: rotate(45deg);
}

.c-hamburger--htx.active span::after {
	bottom: 0;
	transform: rotate(-45deg);
}

.c-hamburger--htx.active span::before,
.c-hamburger--htx.active span::after {
	transition-delay: 0s, 0.3s;
}


/* B. Footer -------------------- */

body .wp-site-blocks > footer {
	position: relative;
	margin-top: 500px;
	background-color: #D8D8D8;
}

body .wp-site-blocks > footer > .footer-contents > .wp-block-group:before {
	content: "";
	position: absolute;
	left: 0;
	top: -101px;
	display: inline-block;
	width: 143px;
	height: 101px;
	background: url(./assets/images/logo-434-gris.svg) center / 143px auto no-repeat;
}

body .wp-site-blocks > footer > .footer-contents {
	padding: 50px 0;
}

body .wp-site-blocks > footer > .footer-contents > .wp-block-group > .wp-block-group.contents-wrapper {
	display: flex;
	gap: 100px;
}

body .wp-site-blocks > footer > .footer-contents h4 {
	margin-bottom: 30px;
}

body .wp-site-blocks > footer > .footer-contents p {
	margin-bottom: 30px;
	font-size: 16px;
}

body .wp-site-blocks > footer > .footer-contents a {
	font-family: var(--inter-medium-font), sans-serif;
	color: var(--black-color);
	text-decoration: none;
}

body .wp-site-blocks > footer > .footer-contents a:hover {
	text-decoration: underline;
}

/* B.2 Scroll to top -------------------- */

.cd-top {
	display: inline-block;
	height: 56px;
	width: 56px;
	position: fixed;
	top: calc(100vh - 120px);
	right: calc(50% - 600px - 28px);
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: url(./assets/images/scroll-top.svg) center / cover ;
	visibility: hidden;
	opacity: 0;
	transition: opacity .3s 0s, visibility 0s .3s, background-color .3s 0s;
	pointer-events: none;
}

.cd-top.cd-top--show,
.cd-top.cd-top--fade-out,
.cd-top:hover {
	transition: opacity .3s 0s, visibility 0s 0s, background-color .3s 0s;
}

.cd-top.cd-top--show {
	/* the button becomes visible */
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

.cd-top.cd-top--fade-out {
	/* if the user keeps scrolling down, the button is out of focus and becomes less visible */
}

.cd-top:hover {
	opacity: 1;
	cursor: pointer;
}


/* C.1 Main - Pages with anchors -------------------- */

main > .contents-wrapper.page-content-with-anchors > aside.page-anchors-aside {
	position: sticky;
	top: 200px;
}

main > .contents-wrapper.page-content-with-anchors > .entry-content {
	margin-top: calc( -70px - var(--anchors-menu-height));
}

main > .contents-wrapper.page-content-with-anchors > aside {
	width: 150px;
	padding-left: 72px;
}

main > .contents-wrapper.page-content-with-anchors > aside nav ul.anchors-menu {
	list-style-type: none;
	margin-top: 130px;
	height: var(--anchors-menu-height);
}

main > .contents-wrapper.page-content-with-anchors > aside nav ul.anchors-menu > li {
	margin-bottom: 14px;
}

main > .contents-wrapper.page-content-with-anchors > aside nav ul.anchors-menu > li > a {
	font-family: var(--inter-semi-bold-font), sans-serif;
	font-weight: normal;
	font-size: 16px;
	color: var(--green-color);
	text-decoration: none;
}

main > .contents-wrapper.page-content-with-anchors > aside nav ul.anchors-menu > li > a:hover,
main > .contents-wrapper.page-content-with-anchors > aside nav ul.anchors-menu > li.current-anchor > a {
	color: var(--black-color);
}

/* C.1 Main - Pages -------------------- */

body h1 {
	font-family: var(--inter-extra-bold-font), sans-serif;
}

body h2,
body h3,
body h4 {
	font-family: var(--inter-bold-font), sans-serif;
}

body h1,
body h2,
body h3,
body h4 {
	margin-bottom: 20px;
	font-weight: normal;
	line-height: 1.2;
}

body h3,
body h4 {
	color: var(--black-color);
}

body h1 {
	font-size: 45px;
	color: var(--title-black-color);
}

body h2 {
	font-size: 35px;
	color: var(--title-black-color);
}

body h3 {
	font-size: 30px;
}

body h4 {
	font-size: 24px;
}

body > .wp-site-blocks > main.wp-block-group {
	min-height: calc(100vh - 500px);
}

body.page .wp-block-post-title-parent {
	border-top: 1px solid var(--grey-separator-color);
}

/* C.2 Accueil -------------------- */

body.page main > .contents-wrapper > .wp-block-post-content.entry-content,
body.single main > .wp-block-group.contents-wrapper {
	padding-left: 50px;
	padding-right: 50px;
}

body.page main > .contents-wrapper > .wp-block-post-content.entry-content .wp-block-columns {
	border-top: 1px solid #f2f2f2;
	padding-top: 60px;
}

body.home main > .contents-wrapper > .wp-block-post-content.entry-content {
	padding-left: 250px;
	padding-right: 50px;
}

/* C.3 Réalisations -------------------- */

body.single-realisation {
}

body.single-realisation .wp-block-post-title-parent {
	border-top: 1px solid var(--grey-separator-color);
}

body.single-realisation .wp-block-post-title-parent > * {
	max-width: 80%;
}

body.single-realisation .post-taxonomies {
	margin-top: 23px;
	padding-right: 90px; /* for previous-next */
}

body.single-realisation .post-taxonomies .post-metadata-links,
body.single-realisation .post-taxonomies .post-metadata-links > ul,
body.single-realisation .post-taxonomies .post-metadata-links > ul > li {
	display: inline;
}

body.single-realisation .post-taxonomies .post-metadata-links > ul > li > a {
	font-family: var(--inter-bold-font) sans-serif;
	font-weight: bold;
	font-size: 16px;
	line-height: 19px;
	text-decoration: none;
}

body.single-realisation .post-taxonomies .post-metadata-links > ul > li:last-child > a {
	padding-right: 5px;
	border-right: 1px solid #7d7d7d;
	margin-right: 5px;
}

body.single-realisation .post-taxonomies .post-metadata-links > ul > li:not(:last-child) > a::after {
	content: ",";
	margin-right: 5px;
}

body.single-realisation .post-taxonomies .post-metadata-links > ul > li > a:hover {
	text-decoration: underline;
}

body.single-realisation .post-taxonomies .post-metadata-links:last-child > ul > li > a:last-child {
	border: none;
}

body.single-realisation .post-taxonomies .post-metadata-links.taxonomy-domaine > ul > li > a {
	color: var(--taxonomy-domaine-color);
}

body.single-realisation .post-taxonomies .post-metadata-links.taxonomy-public > ul > li > a {
	color: var(--taxonomy-public-color);
}

body.single-realisation .post-taxonomies .post-metadata-links.taxonomy-mediatype > ul > li > a {
	color: var(--taxonomy-media-color);
}

body.single-realisation h1.wp-block-post-title {
	margin: 34px 0 10px;
	font-family: var(--inter-extra-bold-font), sans-serif;
	font-weight: normal;
	font-size: 45px;
	line-height: 100%;
	color: var(--title-black-color);
}

body.page .wp-block-post-content .wp-block-column > p,
body .wp-block-post-content > p {
	margin-bottom: 20px;
}

body.single-realisation .wp-block-post-content .wp-block-columns {
	padding-top: 58px;
	margin-top: 0;
	border-top: 1px solid var(--grey-separator-color);
}

body.single-realisation .wp-block-post-content .wp-block-columns > .wp-block-column:first-child {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

body.single-realisation .wp-block-post-content .wp-block-columns > .wp-block-column > p {
	font-size: 16px;
}

body.single-realisation .wp-block-post-content .wp-block-columns > .wp-block-column > p a {
	color: var(--green-color);
}

body.single-realisation .wp-block-post-content .wp-block-columns > .wp-block-column > p a:hover {
	text-decoration: underline;
}

nav.previous-next-post {
	position: absolute;
	right: 50px;
	top: 25px;
}

nav.previous-next-post ul {
	display: flex;
	gap: 25px;
	padding: 0;
	margin: 0;
	list-style-type: none;
}

nav.previous-next-post ul li.previous-post-link.disabled a {
	opacity: 0.8;
	pointer-events: none;
}

nav.previous-next-post ul li.previous-post-link a,
nav.previous-next-post ul li.next-post-link a {
	display: inline-block;
	width: 29px;
	height: 24px;
}

nav.previous-next-post ul li.previous-post-link a:before,
nav.previous-next-post ul li.next-post-link a:before {
	content: "";
	display: inline-block;
	width: 100%;
	height: 100%;
	background: url(./assets/images/fleche-droite.svg) center / 29px auto no-repeat;
}

nav.previous-next-post ul li.previous-post-link a:hover:before,
nav.previous-next-post ul li.next-post-link a:hover:before {
	background-image: url(./assets/images/fleche-droite-off.svg);
}

nav.previous-next-post ul li.previous-post-link a:before {
	transform: scaleX(-100%);
}

nav.previous-next-post ul li.next-post-link a {
}

.see-also-posts {
	max-width: 900px;
	margin-top: 100px;
}

.clients .post-metadata-links.taxonomy-client {
	margin-bottom: 83px;
}

.clients .post-metadata-links.taxonomy-client ul.taxonomy {
	list-style-type: none;
}

.clients .post-metadata-links.taxonomy-client ul.taxonomy li {
	display: inline-block;
	margin: 0;
	padding: 0;
}

.clients .post-metadata-links.taxonomy-client ul.taxonomy > li:not(:last-child):after {
	content: ",";
	margin-right: 3px;
}

.clients .post-metadata-links.taxonomy-client ul.taxonomy a {
	font-family: var(--inter-regular-font) sans-serif;
	font-weight: normal;
	font-size: 16px;
	color: #393939;
	text-decoration: none;
	pointer-events: none;
}

.fullscreen-popup {
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	background: rgb(0,0,0);
	z-index: 20;
}

.fullscreen-popup-content {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}

.fullscreen-popup-content figure {
	pointer-events: none;
}

.fullscreen-popup-content figure img {
	width: auto !important;
	max-width: 80vw !important;
	max-height: 80vh !important;
	pointer-events: none;
}

body.popup-opened {
	height: 100vh;
	overflow: hidden;
}

/* Slider */

ul.slick-dots {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
	margin: 15px 0 50px;
	list-style-type: none;
}

ul.slick-dots li {
	display: inline-block;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background-color: #cccccc;
	text-indent: -9999px;
}

ul.slick-dots li.slick-active {
	background-color: var(--black-color);
}


/* RESPONSIVE -------------------- */

@media screen and ( max-width: 1320px ) {

	body .wp-site-blocks > footer > .footer-contents, body .wp-site-blocks > header,
	main > .contents-wrapper {
		margin-left: 20px;
		margin-right: 20px;
	}

	body main > .wp-block-group {
		padding-left: 20px;
		padding-right: 20px;
	}

	body .wp-site-blocks > .header-logo {
		margin-left: 20px;
	}

	.cd-top {
		right: 20px;
	}

	#wp-admin-bar-customize {
		display: none;
	}

}

@media screen and ( max-width: 1024px ) {

	body.home main > .contents-wrapper {
		margin-top: 25px;
		margin-bottom: 150px;
	}

	body .wp-site-blocks > footer > .footer-contents, body .wp-site-blocks > header,
	main > .contents-wrapper {
		margin-left: 15px;
		margin-right: 15px;
	}

	.hamburger-parent {
		position: absolute;
		right: 5px;
		top: 15px;
		transform: translateY(-50%);
		display: inline-block;
	}

	nav.main-menu-parent {
		position: absolute;
		display: none;
	}

	nav.main-menu-parent.opened {
		display: block;
		width: 280px;
		background: var(--green-color);
		box-shadow: 3px 5px 5px -1px rgba(0,0,0,0.35);
		right: 5px;
		top: 74px;
		padding-top: 20px;
		padding-bottom: 20px;
		z-index: 2;
	}

	.main-navigation-menu nav > .navigation-menu > ul > li > a {
		color: #FFF;
	}

	nav.main-menu-parent .navigation-menu > ul {
		flex-direction: column;
		gap: 20px;
	}

	.main-navigation-menu nav > .navigation-menu > ul > li {
		height: auto;
		padding: 0 !important;
		border: none !important;
	}

	main > .contents-wrapper.page-content-with-anchors > aside.page-anchors-aside,
	main > .contents-wrapper > aside {
		display: none;
	}

	main > .contents-wrapper.page-content-with-anchors > .entry-content {
		margin-top: 0;
	}

	body.page main > .contents-wrapper > .wp-block-post-content.entry-content,
	body.single main > .wp-block-group.contents-wrapper {
		padding-left: 0;
		padding-right: 0;
	}

	body.single-realisation .wp-block-post-title-parent > * {
		max-width: 90%;
	}

	body.single-realisation .wp-block-post-content .wp-block-columns {
		padding-top: 30px;
		margin-top: 0;
		border-top: none;
	}

	body.single-realisation h3 {
		font-size: 28px !important;
	}

	nav.previous-next-post {
		position: absolute;
		right: 0;
	}

	body .wp-site-blocks > footer {
		margin-top: 350px;
	}
}

@media screen and (max-width: 782px) {
	body.admin-bar .hamburger-parent {
		top: 10px;
	}

	body.admin-bar .wp-site-blocks > .header-logo {
		top: 50px;
	}

	body .wp-site-blocks > .header-logo {
		margin-left: 10px;
	}
}

@media screen and ( max-width: 640px ) {

	html {
		font-size: var(--default-font-size-mobile);
	}

	nav.main-menu-parent.opened {
		display: block;
		width: 100vw;
		height: 100vh;
		background: var(--green-color);
		box-shadow: none;
		right: -15px;
		top: 94px;
		padding-top: 40px;
		padding-bottom: 20px;
		z-index: 2;
		color: #FFF;
	}

	body.popup-opened,
	body.menu-opened {
		height: 100vh;
		overflow: hidden;
	}

	body.admin-bar > .wp-site-blocks {
		margin-top: 46px;
	}

	body .wp-site-blocks > header {
		position: sticky;
		top: 0;
		z-index: 10;
		margin-left: 0;
		margin-right: 0;
		padding: 0 15px 27px;
		background-color: #FFFFFF;
	}

	body.admin-bar .wp-site-blocks > header {
		top: 46px;
	}

	.logo-wrapper {
		width: 200px;
		height: 72px;
	}

	.skip-link:focus {
		font-size: 12px;
	}

	body.home main > .contents-wrapper,
	main > .contents-wrapper {
		margin-top: 10px;
		margin-bottom: 150px;
	}

	body h1,
	body h2,
	body h3,
	body h4 {
		margin-bottom: 10px;
	}

	body main > .wp-block-group {
		padding-left: 10px;
		padding-right: 10px;
	}

	body .wp-site-blocks > footer > .footer-contents > .wp-block-group > .wp-block-group.contents-wrapper {
		justify-content: space-between;
		gap: 50px;
	}

	body .wp-site-blocks > footer > .footer-contents > .wp-block-group > .wp-block-group.contents-wrapper > * {
		flex: calc(50% - 25px);
	}

	body .wp-site-blocks > footer > .footer-contents > .wp-block-group::before {
		left: 50%;
		transform: translateX(-50%);
	}

	body.single-realisation .wp-block-post-title-parent {
		border-top: none;
	}

	body.single-realisation .post-taxonomies {
		display: none;
	}

	body.single-realisation h1.wp-block-post-title {
		font-size: 28px;
		line-height: 1.25;
		margin-top: 80px; /* For previous-next */
	}

	body.single-realisation .wp-block-post-content p {
		font-size: 20px;
	}

	body.single-realisation .wp-block-post-content .wp-block-columns {
		padding-top: 30px;
		margin-top: 0;
		border-top: none;
	}

	/* previous-next */
	nav.previous-next-post {
		position: absolute;
		right: 50%;
		top: -66px;
		transform: translateX(50%);
	}

	.clients .post-metadata-links.taxonomy-client {
		margin-bottom: 36px;
	}

	.cd-top {
		width: 40px;
		height: 40px;
		right: 15px;
	}

	body .wp-site-blocks > footer {
		margin-top: 250px;
	}


}

@media screen and (max-width: 600px) {
	html #wpadminbar {
		position: fixed;
		max-width: 100vw;
	}
}

@media screen and (max-width: 400px) {
	body .wp-site-blocks > footer > .footer-contents > .wp-block-group > .wp-block-group.contents-wrapper {
		flex-direction: column;
		gap: 30px;
	}
}

@media screen and (max-width: 310px) {
	#wp-admin-bar-top-secondary {
		display: none;
	}
}


/* loading spinner */

.ispinner {
	position:relative;
	width:40px;
	height:40px;
	margin: 20px 0;
}
.ispinner .ispinner-blade {
	position:absolute;
	left:44.5%;
	top:37%;
	width:8%;
	height:25%;
	border-radius:50%/20%;
	-webkit-animation:ispinner-fade 1s linear infinite;
	animation:ispinner-fade 1s linear infinite;
	-webkit-animation-play-state:paused;
	animation-play-state:paused
}
.ispinner .ispinner-blade:nth-child(1) {
	-webkit-animation-delay:-1.66667s;
	animation-delay:-1.66667s;
	-webkit-transform:rotate(30deg) translate(0,-150%);
	transform:rotate(30deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(2) {
	-webkit-animation-delay:-1.58333s;
	animation-delay:-1.58333s;
	-webkit-transform:rotate(60deg) translate(0,-150%);
	transform:rotate(60deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(3) {
	-webkit-animation-delay:-1.5s;
	animation-delay:-1.5s;
	-webkit-transform:rotate(90deg) translate(0,-150%);
	transform:rotate(90deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(4) {
	-webkit-animation-delay:-1.41667s;
	animation-delay:-1.41667s;
	-webkit-transform:rotate(120deg) translate(0,-150%);
	transform:rotate(120deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(5) {
	-webkit-animation-delay:-1.33333s;
	animation-delay:-1.33333s;
	-webkit-transform:rotate(150deg) translate(0,-150%);
	transform:rotate(150deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(6) {
	-webkit-animation-delay:-1.25s;
	animation-delay:-1.25s;
	-webkit-transform:rotate(180deg) translate(0,-150%);
	transform:rotate(180deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(7) {
	-webkit-animation-delay:-1.16667s;
	animation-delay:-1.16667s;
	-webkit-transform:rotate(210deg) translate(0,-150%);
	transform:rotate(210deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(8) {
	-webkit-animation-delay:-1.08333s;
	animation-delay:-1.08333s;
	-webkit-transform:rotate(240deg) translate(0,-150%);
	transform:rotate(240deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(9) {
	-webkit-animation-delay:-1s;
	animation-delay:-1s;
	-webkit-transform:rotate(270deg) translate(0,-150%);
	transform:rotate(270deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(10) {
	-webkit-animation-delay:-.91667s;
	animation-delay:-.91667s;
	-webkit-transform:rotate(300deg) translate(0,-150%);
	transform:rotate(300deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(11) {
	-webkit-animation-delay:-.83333s;
	animation-delay:-.83333s;
	-webkit-transform:rotate(330deg) translate(0,-150%);
	transform:rotate(330deg) translate(0,-150%)
}
.ispinner .ispinner-blade:nth-child(12) {
	-webkit-animation-delay:-.75s;
	animation-delay:-.75s;
	-webkit-transform:rotate(360deg) translate(0,-150%);
	transform:rotate(360deg) translate(0,-150%)
}
.ispinner.animating .ispinner-blade {
	-webkit-animation-play-state:running;
	animation-play-state:running
}

.ispinner .ispinner-blade {
	background-color:#8c998c;
}

.ispinner.white .ispinner-blade {
	background-color:#fff;
}

.ispinner.large {
	width:35px;
	height:35px
}
.ispinner.large .ispinner-blade {
	width:8.57143%;
	height:25.71429%;
	border-radius:50%/16.67%
}

@-webkit-keyframes ispinner-fade {
	0% {
		opacity:.85
	}
	50% {
		opacity:.25
	}
	100% {
		opacity:.25
	}
}
@keyframes ispinner-fade {
	0% {
		opacity:.85
	}
	50% {
		opacity:.25
	}
	100% {
		opacity:.25
	}
}