html {
	margin-top: 0;
	overflow-x: hidden;
}
.woocommerce-MyAccount-navigation-link--rapports {
	display: none;
}

/* Center alignment */
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.has-text-align-center img {
	margin-left: auto;
	margin-right: auto;
}

/* Right alignment */
.alignright {
	float: right;
	margin: 0.5em 0 0.5em 1em; /* top right bottom left */
}

/* Left alignment */
.alignleft {
	float: left;
	margin: 0.5em 1em 0.5em 0; /* top right bottom left */
}

.alignwide:not(.woocommerce):not(.wp-block-woocommerce-cart) {
	margin-left  : -80px;
	margin-right : -80px;
}
.alignfull:not(.wp-block-intuikeys-blocks-site-cover) {
	margin-left  : calc( -100vw / 2 + 100% / 2 );
	margin-right : calc( -100vw / 2 + 100% / 2 );
	max-width    : 100vw;
}

/* Site cover : masque appliqué à la vidéo de fond et au poster mobile */
.wp-block-intuikeys-blocks-site-cover .intuikeys-site-cover-video,
.wp-block-intuikeys-blocks-site-cover .intuikeys-site-cover-poster {
	-webkit-mask-image: url("mask.svg");
	mask-image: url("mask.svg");
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}

/* =================== GUTENBERG */
.wp-block-heading .heading-span {
	font-style: italic;
	font-size:clamp(2rem, calc(48 * ((100vw - 375px) / 969) + 32px), 5rem);
	/* display: block; */
}

@media(min-width: 1200px) {
	.wp-block-heading .heading-span {
		letter-spacing: -3px;
	}
}

h2.wp-block-heading .heading-span {
	font-size: clamp(1.75rem, calc(36 * ((100vw - 375px) / 969) + 28px), 4rem);
}

h3.wp-block-heading .heading-span {

	font-size: clamp(1.5rem, calc(30 * ((100vw - 375px) / 969) + 24px), 3rem);
}

.wp-block-heading:not(h1):has(span.heading-span) {
	margin-top: 1rem;
	line-height: 1;
}

.wp-block-cover.alignfull .wp-block-cover__inner-container {
	max-width: 1344px;
}

.wp-block-list,
.intuikeys-description ul{
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 32px;
	list-style-type: disc;
	padding-left: 32px;
}
.intuikeys-description ul {
	margin-top: 1rem;
	gap:4px;
	margin-bottom: 0;
}
.intuikeys-description ul ul {
	padding-left: 50px;
	margin-top:.6rem;
	list-style-type: circle;
}
.wp-block-list li,
.intuikeys-description ul li{
	line-height: 24px;
	font-size: 14px;
}
.wp-block-list li a,
.intuikeys-description ul li a{
	text-decoration: underline;
	text-underline-offset: 2px;
}

.wp-block-cover.overflow-auto {
	overflow: initial;
}
.wp-block-group figure + figure {
	margin-block-start: 8px;
}

.wp-block-group p+p {
	margin-block-start:8px
}

.wp-block-cover {
	padding: 32px
}

.widget.footer-menu ul {
	display: flex;
	flex-direction: column;
}
.widget.footer-menu ul li a {
	font-size: 14px;
	display: inline-block;
	padding: 8px 0
}

/* =================== ACCORDION */
.wp-block-pb-accordion-item {
	border-radius: 16px;
	background-color: #f7f7f7;
	padding:24px;
}
.wp-block-pb-accordion-item p:last-child {
	margin-bottom: 0;
}
.wp-block-pb-accordion-item .c-accordion__title {
	color: #153F42;
}
.c-accordion__title:after {
	color: #153F42;
}

.wp-block-pb-accordion-item[data-initially-open="true"] {
	margin-top: 64px;
}

/* Tabs */
.gutena-tabs-tab.tab-center {
	border-bottom:1px solid rgba(21, 63, 66, 0.60);
	width: max-content;
	margin:auto
}
.gutena-tab-title {
	position: relative;
}
.gutena-tab-title:hover {

}
.gutena-tab-title.active:after {
	position: absolute;
	width: 100%;
	height: 2px;
	background:#153F42;
	bottom: 0;
	left: 0;
	content: "";
}

.gutena-tab-title:not(.active) .gutena-tab-title-text {
	color: rgba(21, 63, 66, 0.60)
}
.gutena-tab-title:not(.active):hover {
	background-color: transparent !important;
	color: #153F42;
}

@media(max-width: 1199px) {
	.wp-block-cover.overflow-auto figure.wp-block-image {
		display: none;
	}
	.wp-block-cover.alignfull {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
	.gutena-tabs-tab.tab-center {
		width: 100%;
		white-space: nowrap;
	}
	.menu-item-has-children:not(.is-opened) .sous-menu {
		display: none !important;
	}
}
@media(min-width: 980px) {
	.c-accordion__title {
		padding-right: 3rem;
	}
}
@media(min-width: 1200px) {
	.wp-block-cover.overflow-auto {
		margin-top: 148px;
	}
	.wp-block-cover.overflow-auto {
		overflow: initial;
	}
	.wp-block-cover {
		padding-left: 48px;
		padding-right: 48px;
	}
	.translate-y-desktop-32 {
		transform: translateY(32px);
	}
	.c-accordion__title {
		padding-right: 12rem;
	}
}

/* =================== HEADER */
.main-site-logo img.custom-logo {
	height: 40px;
}


/* =================== WOOCOMMERCE */
#place_order {
	width:100%
}

.woocommerce-form-login label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
	margin-top: 12px;
}

/* =================== LOGIN FORM */
.woocommerce .woocommerce-form.woocommerce-form-login {
	width: 100%;
	max-width: 500px;
	margin:2rem auto;
}

/* =================== ACCOUNT PAGE */
.custom-my-account-layout {
	display: flex;
	min-height: 100vh;
}

.section-admin {
	margin-top: 2rem;
}
.campaign-header {
	background-color: #d9d9d9;
	padding:20px 10px;
}

.campaign-item {
	padding: 10px;
	border-bottom: 1px solid #dddddd;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap:50px
}
#responsable-select-list {
	border: 1px solid #dddddd;
	padding:4px;
}

.add-item, .add-coach {
	cursor: pointer;
	padding: 0.5rem 1.5rem;
	color: #000;
}
.add-item:hover, .add-coach:hover {
	color: #9ca3af;
}
.add-item:hover:before,.add-coach:hover:before {
	background-color: #9ca3af;
}
.add-item:before,.add-coach:before {
	content: '+';
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	background-color: #000;
	color: white;
	border-radius: 50%;
	margin-right: 0.5rem;
}

/**
* My account page
 */


.my-account-sidebar {
	width: 250px;
	background: #f7f7f7;
	padding: 0px;
	height: 100vh;
	position: sticky;
	top: 0;
	overflow-y: auto;
	border-radius: 16px;
	overflow: hidden;
}

.my-account-main {
	flex: 1;
	padding: 40px;
}

.woocommerce-MyAccount-navigation {
	display: flex;
	flex-direction: column;
	gap:10px;
	padding: 0px 0;
}
.woocommerce-MyAccount-navigation li a {
	display: block;
	border-bottom:  1px solid #ddd;
	padding:6px 10px;
}
.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover {
	background: rgb(229 231 235);
}

/* Account page */
body.woocommerce-account h1,
body.woocommerce-account h2,
body.woocommerce-account h3,
body.woocommerce-account h4,
body.woocommerce-account h5 {
	margin-top: 0;
	margin-bottom: 0em;
}

.swiper-button-prev:hover, .swiper-button-next:hover {
	background-color: #153F42;
}
.swiper-button-prev:hover svg path, .swiper-button-next:hover svg path {
	fill: #ffffff;
}

.woocommerce-checkout footer {
	transform: translateY(2.5rem);
}


/* Style général du tableau */
.wp-block-table table.has-fixed-layout {
	border-collapse: collapse;
	border: none;
	font-size: 1rem;
	width: max-content;
}

/* Cellule du titre */
table.has-fixed-layout tr:first-child td:first-child {
	font-weight: normal;
	font-size: 1rem;
	padding: 1rem;
	line-height: 1.4;
	text-align: left;
	vertical-align: top;
	border-top: none;
}

/* Entêtes avec logos */
table.has-fixed-layout tr:first-child td:not(:first-child) {
	text-align: center;
	vertical-align: bottom;
	padding: 0.5rem 0;
}

table.has-fixed-layout tr:first-child img {
	max-width: 186px;
	height: auto;
}

/* Lignes */
table.has-fixed-layout tr {
	border-bottom: 1px solid #21322f;
}
table.has-fixed-layout tr td {
	border:none;
	border-bottom: 1px solid #21322f;
}
	/* Cellule texte (colonne 1) */
table.has-fixed-layout td:first-child {
	text-align: left;
	padding: 1.2rem 1rem;
	font-size: 0.95rem;
	line-height: 1.5;
	font-weight: normal;
	border-top: none;
}

/* Cellules avec icônes */
table.has-fixed-layout td:not(:first-child) {
	text-align: center;
	padding: 1rem;
}

table.has-fixed-layout img[src*="check.svg"] {
	width: 24px;
	height: 24px;
	display: inline-block;
	filter: grayscale(0%);
}

table.has-fixed-layout img[src*="close.svg"] {
	width: 24px;
	height: 24px;
	opacity: 0.5;
	filter: grayscale(100%);
}

/* ============= survey start */

body:has(.intuikeys-survey-start) {
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: start;
	min-height: 100vh;
}

.no-scrollbar {
	-ms-overflow-style: none;  /* Internet Explorer 10+ */
	scrollbar-width: none
}
.no-scrollbar::-webkit-scrollbar {
	display: none;  /* Older Safari and Chromium */
}

.qcm-label {
	width: calc(100% - 40px);
}

body:has(.intuikeys-survey-start) #menu-principal,
body:has(.intuikeys-survey-start) footer {
	display: none;
}

body:has(.intuikeys-survey-start) .intuikeys-survey-start {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background-color: #F7F5F2;
	padding:48px;
	border-radius: 16px;
	width: 90%;
	max-width: 768px;
}
body:has(.intuikeys-survey-start) .intuikeys-survey-start h2 {
	font-size: 48px;
}
.intuikey-start-bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.checkbox-group {
	cursor: pointer;
	user-select: none;
	display: flex;
	gap:8px;
	align-items: center;
}
.checkbox-group label { cursor: pointer; }

.checkbox-group input[type="checkbox"] {
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;
}
.intuikeys-survey-start input[type="radio"] {
	/* cursor: pointer;
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;*/
}

.checkbox-span {
	width: 20px;
	height: 20px;
	border: 2px solid #333;
	border-radius: 4px;
	display: inline-block;
	position: relative;
	background-color: white;
	transition: all 0.2s ease;
}
/* Coche personnalisée */
.checkbox-group:has(input[type="checkbox"]:checked) .checkbox-span::after,
.answer-label:has(input[type="checkbox"]:checked):after,
.answer-label:has(input[type="radio"]:checked):after{
	content: '';
	position: absolute;
	top:50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80%;
	height: 80%;
	background-color: #153F42;
	border-radius: 2px;
}
.answer-label:has(input[type="radio"]:checked):after {
	border-radius: 50%;
}
.alphabet-choices label {
	background-color: white;
	padding:8px 16px 8px 8px;
	border-radius: 6px;
	border:1px solid #153F42;
	cursor: pointer;
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;

}
.alphabet-choices label:hover {
	background-color: #CBD8ED;
	border: 1px solid #CBD8ED
}
.alphabet-choices label:hover:not:has(input:checked) span
{
	color:#153F42 !important;
}
.alphabet-choices label:has(input:checked) span {
	color: white
}

.alphabet-choices label input {
	position: absolute;
	width: 0;
	left: 0;
	opacity: 0;
}
.alphabet-choices label span:first-child {
	display: inline-block;
	height: 40px;
	width: 40px;
	border-radius: 6px;
	border:1px solid #153F42;
	display: flex;
	align-items: center;
	justify-content: center;
}
.alphabet-choices.qcm_single label span:first-child {
	border-radius: 50%;
	height: 30px;
	width: 30px;
}
.alphabet-choices label:has(input:checked) {
	background-color: #153F42;
}
.alphabet-choices label:hover span:first-child{
	border:1px solid #153F42
}
.alphabet-choices label:has(input:checked) span:first-child {
	border: 1px solid white
}
.answer-label {
	display: inline-block;
	cursor: pointer;
	border-radius: 4px;
	position: relative;
	width: 30px;
	height: 30px;
	background: white;
	border: 1px solid gray;
}
.answer-label input {
	opacity: 0;
	position: absolute;
	width: 0;
	height: 0;
}
.answer-label:has(input[type="radio"]) {
	border-radius: 50%;
}
.answer-label:has(input[type="checkbox"]) {
	border-radius: 6px;
}

/* Focus accessible
.checkbox-group:has(input[type="checkbox"]:focus ) .checkbox-span {
	outline: 2px solid #153F42;
	outline-offset: 2px;
}*/

button[type="submit"]:hover {
	background-color: #CBD8ED;
	color: #153F42;
}
.wp-block-cover.sticky {
	position: sticky;
	top: 100px;
}

.nav-bar-container {
	transition: all .5s ease-in-out;
}
.woocommerce-MyAccount-navigation-link--results {
	display: none;
}
/* body.has-stuck .nav-bar-container {
	box-shadow: initial!important;
}*/
mark {
	background: transparent;
	font-weight: bolder;
}
.mini-label {
	font-size: 14px;
	width: 100px;
	display: block;
	white-space: normal;
	word-break: break-word;
}
.mini-label:first-child {
	color: #72706E;
}

.label-question {
	position: relative;
	cursor: pointer;
}
.label-question span {
	position: absolute;
	line-height: 1.5;
	font-size: 0.8em;
	background-color: white;
	padding:12px 24px;
	border-radius: 8px;
	display: none;
	justify-content: center;
	width: max-content;
	max-width: 300px;
	z-index: 10;
	border:1px solid #eeeeee;
	left:50px;
	top:-30px;
}
.label-question:hover span {
	display: flex;
}
.label-question:hover,
.label-question:hover ~ td {
	background-color: #e29b743b;
}

.woocommerce-page table.cart td.actions input[name="coupon_code"] {
	width: 100%;
	max-width: 200px;
}
.woocommerce-info::before {
	display: none;
}

/* =================== SPINNER */
/* Center the WooCommerce checkout loading spinner */
.woocommerce .blockUI.blockOverlay {
	position: fixed !important;
	top: 50% !important;
	left: 50% !important;
	transform: translate(-50%, -50%) !important;
	z-index: 9999 !important;
	background: rgba(255, 255, 255, 0.8) !important;
	border-radius: 10px !important;
	padding: 20px !important;
}

/* Alternative approach - full page overlay with centered spinner */
.woocommerce.processing {
	position: relative;
}

.woocommerce.processing::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 9998;
	display: block;
}

/* Ensure spinner is visible above overlay */
.woocommerce.processing .blockUI {
	z-index: 9999 !important;
}

body:has(.woocommerce.processing) {
	overflow: hidden;
}

.acf-input input {
	padding:8px 16px !important;
}
.acf-form-submit {
	display: flex;
	justify-content: center;
}
.acf-form-submit input[type="submit"]:hover {
	background-color: #CBD8ED;
	color: #153F42;
}
.acf-label label,
.acf-fields>.acf-field{
	color: #153F42;
	border-top-width: 0px!important;
	border-top-style: solid!important;
	border-top-color: transparent !important;
}
.acf-field[data-width]+.acf-field[data-width] {
	border:none
}
.acf-field[data-width]+.acf-field[data-width] {
	border-left: none !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
	background-color: #E29B74;
	color: #153F42;
	border-radius: 6px;
	transition: all .2s ease-in-out;
	font-weight: 500;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:hover {
	background-color: #CBD8ED;
	color: #153F42;
}

a.glink {
	font-size: 12px;
}
a.glink.gt-current-lang {
	pointer-events: none;
	font-weight: initial;
	color: #E29B74;
}

@media (max-width: 980px) {
	body:has(.intuikeys-survey-start) .intuikeys-survey-start {
		padding: 20px;
		width: 70%;
		margin-bottom: 60px;
	}
}

/* =================== RESPONSIVE STYLES */
@media (min-width: 1200px){
	.wp-block-table table.has-fixed-layout {
		width: 100%;
	}
	.woocommerce-account .container {
		width: 100%;
		/* max-width: 1440px; */
		padding:0
	}
	.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 100%
	}
	.woocommerce-account .woocommerce-MyAccount-content {
		width: 78%;
	}
}

@media (min-width: 768px){
	#customer_details{
		width: 60%;
		float: left;
	}
	#order_review_heading{
		width: 30%;
		float: left;
		margin-left:2%;
	}
	#order_review{
		width: 38%;
		float: left;
		margin-left:2%;
	}
	body:not(.woocommerce-cart) .woocommerce table.shop_table td{
		width: 50%;
	}
	.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,
	.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2{
		width: 100%;
	}
}