:root,
::after,
::before
{
	--primary: #09AAD7;
	--primary-light: #696969;
	--primary-lighter: #C7C7C7;
	--secondary: #82BF40;
	--green: #93C01F;
	--red: #DF2F35;
	--orange: #F6A500;
	--soft-grey: #F8F9FA;
	--paper: 0 3px 6px 2px rgb(0 0 0 / 4%);
	--input-height: 32px;
	--medium-input-height: 38px;
	--input-background: #F3F3F3;
	--input-radius: 4px;
	--error-background: #F7E7E7;
	--options-shadow: 0 6px 6px 2px rgb(0 0 0 / 10%);
	--green: #5B9A8D;
	--green-darker: #63918B;
	--og-green: #5B9A8D;
	--og-green-darker: #63918B;
	--blue: #09AAD7;
	--black: #000;
	--carbon: #515151;
	--page-container-w: 1300px;
}
html
{
	display: flex;

	min-height: 100%;
	width: 100%;

	overflow: auto;
}

*
{
	-webkit-print-color-adjust: exact !important;   /* Chrome, Safari 6 – 15.3, Edge */
	        print-color-adjust: exact !important;           /* Firefox 97+, Safari 15.4+ */
}

@page
{
	margin: 20px 20px;

	size: A4;
}

body
{
	display: block;

	min-height: 100%;
	width: 100%;

	margin: 0;
	padding: 0;

	font-family: circular, Rubik, sans-serif !important;
	font-size: 18px;

	letter-spacing: 0;
}

@media print
{
	body
	{
		font-size: 15px;
	}

	::-webkit-scrollbar
	{
		display: none !important;
	}
}

body > [id="root"]
{
	display: flex;

	min-height: 100%;
	width: 100%;
}

.front-page,
.back-page
{
	position: relative;

	min-height: 100%;
	width: 100%;

	overflow: auto;

	flex-grow: 1;
}

.auth-page
{
	display: flex;

	flex-direction: row;

	min-height: 100%;
	width: 100%;
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.auth-page
	{
		flex-direction: column;
		flex-wrap: nowrap;
	}
}

.back-page
{
	display: flex;

	flex-direction: column;

	background-color: var(--body-background);

	--body-background: #F7F7F7;
}

.front-page
{
	display: flex;

	flex-direction: column;

	flex-grow: 1;
}

.page-content
{
	position: relative;
	display: flex;

	flex-direction: column;

	margin-left: auto;
	padding-bottom: 15px;

	flex-grow: 1;
}

.page-content--error
{
	flex-direction: row;

	height: 100%;
	width: 100%;

	padding: 0;

	background-color: var(--body-background);

	--body-background: #F7F7F7;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.page-content--error
	{
		flex-direction: column;
	}
}

.centered-page-content
{
	display: flex;

	flex-direction: column;

	width: 1200px;
	max-width: 100%;

	margin-right: auto;
	margin-left: auto;

	align-items: center;
	justify-content: flex-start;
	flex-grow: 1;
}

.small-form-page-content,
.small-page-content
{
	display: block;

	width: 744px;
	max-width: 100%;

	margin-top: 2rem;
	margin-right: auto;
	margin-left: auto;
	padding: 0 12px;
}

.medium-form-page-content
{
	display: block;

	width: 1024px;
	max-width: 100%;

	margin-top: 2rem;
	margin-right: auto;
	margin-left: auto;
	padding-right: 12px;
	padding-left: 12px;
}

.large-form-page-content
{
	display: block;

	width: 1224px;
	max-width: 100%;

	margin-top: 2rem;
	margin-right: auto;
	margin-left: auto;
}

.error-page__content
{
	display: flex;

	width: 50%;

	justify-content: center;
	align-items: center;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.error-page__content
	{
		width: 100%;

		padding: 0 12px;

		z-index: 1;

		flex-grow: 1;
	}
}

.error-page__image
{
	width: 50%;

	object-fit: cover;
	object-position: 50% 80%;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.error-page__image
	{
		position: absolute;

		height: 100%;
		width: 100%;

		top: 0;
		right: 0;
		left: 0;
		bottom: 0;

		z-index: 0;
	}
}
html
{
	box-sizing: border-box;
}

*,
:before,
:after
{
	box-sizing: inherit;
}
button
{
	line-height: inherit;

	padding: 0;

	background: none;

	font-family: inherit;
	font-size: inherit;

	cursor: pointer;
	-webkit-user-select: none;
	 -khtml-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;

	border: none;

	box-shadow: none;

	overflow: visible;

	appearance: none;
	-webkit-touch-callout: none;
}

button:focus
{
	outline: none;
}

a
{
	font-family: inherit;
}

a:not([class]),
.c-link
{
	color: var(--primary);
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, currentColor 0 1.5px 0 0;
}

a:not([class]):hover,
a:not([class]):focus,
.c-link:hover,
.c-link:focus
{
	background-color: #F3F3F3;

	color: var(--primary);
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, var(--secondary) 0 2px 0 0;
}
svg
{
	display: block;

	height: 1em;
	width: 1em;
}
strong
{
	font-weight: 500;
}ul[class]
{
	padding-left: 0;

	list-style: none;
}
.o-bg
{
	width: 100%;

	background-color: #EEE;
}
.o-contact
{
	position: relative;
	display: flex;

	gap: 60px;

	width: 100%;

	margin-top: 50px;
	margin-bottom: 50px;
}

.o-contact__col
{
	position: relative;

	flex-basis: 30%;
	flex-grow: 1;
}

.o-contact__col:first-child
{
	flex-basis: 20%;
}

.o-contact__col:first-child::after
{
	position: absolute;

	height: 100%;
	width: 4px;

	top: 0;
	right: -2px;

	background-color: #F3F3F3;

	content: "";
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.o-contact
	{
		flex-direction: column;
	}

	.o-contact__col
	{
		width: 100%;
	}
}

.o-contact__title
{
	display: flex;

	gap: 14px;

	margin: 0 0 1em 0;

	font-family: inherit;
	font-weight: 500;
	font-size: 1.8rem;

	letter-spacing: 0;

	align-items: center;
	justify-content: flex-start;
}

.o-contact__icon
{
	display: flex;

	height: 1em;
	width: 1em;

	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;

	font-size: 43px;
}

.o-contact__icon[data-icon="mailbox"]
{
	background-image: url("/images/icons/postbox.svg");

	font-size: 48px;
}

.o-contact__icon[data-icon="email"]
{
	background-image: url("/images/icons/email_color.svg");
}

.o-contact__icon[data-icon="telephone"]
{
	background-image: url("/images/icons/telephone.svg");
}

.o-contact__address
{
	line-height: 1.7;
	width: 100%;

	font-style: normal;
	font-size: 1.2rem;
	text-decoration: none;
}

.o-contact__hours
{
	line-height: 1.7;

	font-style: normal;
	font-size: 1.2rem;
}

.o-contact__required-helper
{
	position: relative;
	display: inline-flex;

	gap: 4px;

	align-items: center;
}

.o-contact__required-helper::before
{
	position: relative;
	display: flex;

	font-size: 1.3rem;
	color: var(--orange);

	content: "*";

	align-items: center;
}
.o-container
{
	width: var(--page-container-w);
	max-width: 100%;

	margin-right: auto;
	margin-left: auto;
}

.o-container--larger
{
	width: 1500px;
}

@media (max-width: 1300px)
{
	.o-container
	{
		padding-right: 12px;
		padding-left: 12px;
	}
}

@media print
{
	.o-container
	{
		padding-right: 20px;
		padding-left: 20px;
	}
}

.o-container__page-text
{
	width: 100%;

	margin-bottom: 30px;

	text-align: center;
}

.o-container__condensed-text
{
	width: 100%;

	margin-bottom: 30px;
	padding: 0 50px;

	text-align: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.o-container__condensed-text
	{
		padding-right: 0;
		padding-left: 0;

		text-align: justify;
	}
}
.o-content
{
	padding: 0 15px;
}.o-cookies-alert
{
	position: fixed;
	display: flex;

	flex-wrap: wrap;
	gap: 15px 12px;

	width: 100vw;
	max-width: 100%;

	right: 0;
	left: 0;
	bottom: 0;
	padding: 6px 10px;

	background-color: #262626;

	z-index: 1000;

	justify-content: center;
	align-items: stretch;
}

/* -------------- Mobile (small) -------------- */
@media (max-width: 424px)
{
	.o-cookies-alert
	{
		flex-wrap: wrap;
		gap: 15px 18px;
	}
}

.o-cookies-alert__text
{
	display: flex;

	margin: 0 15px 0 0;

	color: #FFF;

	align-items: center;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.o-cookies-alert__text
	{
		width: 100%;

		margin-right: 0;
	}
}


/* -------------- Mobile (small) -------------- */
@media (max-width: 424px)
{
	.o-cookies-alert__text
	{
		width: 100%;

		margin-right: 0;

		text-align: center;
	}
}
.o-dashboard
{
	width: 1300px;
	max-width: 100%;

	margin-right: auto;
	margin-left: auto;
	padding-right: 12px;
	padding-left: 12px;
}

.o-dashboard--my-records
{
	position: relative;

	padding-right: 0;
	padding-left: 0;
}

.o-dashboard--small
{
	width: 1150px;
}

.o-dashboard--large
{
	width: 1550px;
}

.o-dashboard--full-width
{
	width: 100%;
}

.o-dashboard__top
{
	display: flex;

	flex-wrap: wrap;
	gap: 3rem 1.5rem;

	width: 100%;

	margin-top: 2rem;
	margin-bottom: 1.5rem;

	align-items: center;
	justify-content: space-between;
}

.o-dashboard__filters
{
	position: relative;

	margin: 1.5rem 0;
}

.o-dashboard__reset
{
	position: absolute;
	display: flex;

	height: 1em;
	width: 1em;

	top: 0;
	right: 0;

	background-color: var(--secondary);

	font-size: 34px;
	color: #FFF;

	border-top-right-radius: 4px;
	border-bottom-left-radius: 10px;

	overflow: hidden;

	transition: background-color 240ms ease;

	align-items: center;
	justify-content: center;
}

.o-dashboard__reset:disabled
{
	background-color: var(--primary-lighter);

	cursor: default;
}

.o-dashboard__reset:not(:disabled):hover,
.o-dashboard__reset:not(:disabled):focus
{
	background-color: #000;
}

.o-dashboard__reset-icon
{
	position: relative;
	display: block;

	left: 2px;

	font-size: .65em;
	color: inherit;

	overflow: hidden;
}

.o-dashboard__filters-content
{
	display: flex;

	flex-wrap: wrap;
	gap: 15px;

	padding-top: 26px;

	align-items: flex-end;
}

.o-dashboard__table-container
{
	position: relative;

	overflow: auto;
}

.o-dashboard__table-container.is-loading
{
	overflow: hidden;
}
.o-filter
{
	position: relative;

	flex-basis: 100px;
	flex-grow: 1;
}

.o-filter--record-list
{
	text-align: right;

	flex-basis: 250px;
}
.o-form
{
	position: relative;
	display: flex;

	flex-direction: row;
	flex-wrap: wrap;

	width: 100%;

	padding: 0;
}

.c-modal__body .o-form--intervention
{
	min-height: 360px;
}

.o-form--my-record-ids
{
	margin-top: 30px;
	margin-bottom: 30px;
}

.o-form--account-creation
{
	gap: 30px;
}

.o-form--client-revenues
{
	gap: 30px 20px;
}

.o-form__title
{
	margin: 0 0 1em 0;

	font-weight: 500;
	font-size: 2rem;
}

.o-form__fields
{
	display: flex;

	flex-wrap: wrap;
	gap: 15px 12px;

	width: 100%;

	align-items: flex-start;
}

.o-form--my-record-ids .o-form__fields
{
	gap: 35px 12px;
}

.o-form__fields-group
{
	display: flex;

	gap: 20px;

	width: 100%;

	align-items: flex-start;
}

.o-form--intervention .o-form__fields-group.is-radios-group
{
	row-gap: 8px;

	min-height: 62px;
}

.o-form__fields-group.is-radios-group
{
	flex-wrap: wrap;

	align-items: center;
}

.o-form__fields-grouped
{
	display: flex;

	flex-wrap: wrap;
	gap: 15px;

	width: 100%;

	align-items: flex-start;
}

.o-form__fields-grouped:first-child
{
	width: 160px;

	flex-shrink: 0;
}

.o-form__checkboxes
{
	display: flex;

	flex-wrap: wrap;
	gap: 14px 15px;

	width: 100%;

	margin-top: 6px;
}

.o-form__footer
{
	display: flex;

	flex-direction: column;
	gap: 15px 0;

	width: 100%;

	margin-top: 2rem;
}

.o-form__footer-controls
{
	display: flex;

	gap: 15px 25px;

	width: 100%;

	padding-bottom: 2px;

	justify-content: center;
}

.o-form__fieldset
{
	position: relative;

	width: 100%;

	margin: 0;
	padding: 12px 12px 10px 12px;

	border-radius: 4px;
	border-width: 2px;
	border-style: solid;
	border-color: #E7E7E7;
	border-image: none;

	box-shadow: none;

	outline: none;
}

.o-form__fieldset[class*="50%"]
{
	width: 33.4%;
	min-width: 350px;

	flex-grow: 1;
}

/* -------------- Mobile (small) -------------- */
@media (max-width: 369px)
{
	.o-form__fieldset[class*="50%"]
	{
		width: 33.4%;
		min-width: 70vw;

		flex-grow: 1;
	}
}

.o-form__fieldset-legend
{
	position: relative;

	padding: 0 4px;

	font-weight: 400;
	font-size: 1rem;
	color: var(--carbon);

	text-transform: uppercase;
}

.o-form__fieldset-description
{
	margin-bottom: 1.2rem;
}

.o-form__fieldset-content
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 15px 12px;

	align-items: flex-start;
}

.o-form__controls
{
	display: flex;

	flex-wrap: wrap;
	gap: 20px;

	width: 100%;

	margin-top: 20px;

	align-items: center;
}
.o-grid
{
	display: flex;

	flex-wrap: wrap;
	gap: var(--gap-w);
	--row-gap: calc(var(--gap-w) * var(--gaps) + 1px);

	--item-width: calc(100% / var(--i-count));
	--i-count: 4;
	--base-item-w: calc(100% / var(--i-count));
	--gaps: calc(var(--i-count) - 1);
	--gap-w: 30px;
}

/* ----------------- Laptop ------------------- */
@media (min-width: 1201px) and (max-width: 1536px)
{
	.o-grid
	{
		--i-count: 3;
	}
}

/* ------ Tablet (portrait & landscape) ------- */
@media (min-width: 600px) and (max-width: 1200px)
{
	.o-grid
	{
		--i-count: 2;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.o-grid
	{
		--i-count: 1;
	}
}

.o-grid__item
{
	width: calc(var(--item-width) - calc(var(--row-gap) / var(--i-count)));
}
.o-header
{
	position: relative;
	display: flex;

	width: 100%;

	background-color: var(--soft-grey);

	font-size: 1em;

	z-index: 100;

	justify-content: space-between;
}

.o-header--admin
{
	background-color: #FFF;
}

.o-header__menu-actions
{
	display: flex;

	align-items: center;
	justify-content: flex-start;
	flex-basis: 100px;
}

/* ------------- Laptop & Desktop ------------- */
@media (min-width: 1326px)
{
	.o-header__menu-actions
	{
		display: none;
	}
}

.o-header__toggle-btn
{
	width: 100%;

	padding: 0 12px;

	border-radius: 0;

	align-self: stretch;
	justify-content: flex-end;
}

.o-header__toggle-title
{
	position: absolute;

	top: 50%;
	left: 10px;

	font-size: 1em;

	transform: translateY(-50%);

	z-index: -1;
}

.o-header__logo
{
	display: flex;

	height: 42px;
	width: auto;

	margin: 6px 0 6px 15px;
}

.o-header__logo-img
{
	display: block;

	height: 64px;
	width: 140px;

	font-family: "object-fit: contain;";

	object-fit: contain;
}

.o-header__logout
{
	cursor: pointer;
}

.o-header__action-btn
{
	position: relative;
	display: flex;

	padding: 0 15px;

	color: #000;

	align-items: center;
}

.o-header__action-btn:before
{
	position: absolute;
	display: block;

	height: 30px;
	width: 2px;

	left: -1px;

	background-color: currentColor;

	content: "";
}

.o-header-brand
{
	display: flex;

	font-size: 1.6em;

	align-items: center;
	flex-shrink: 0;
}

.o-header__navbar
{
	display: flex;

	flex-grow: 1;
	justify-content: center;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.o-header__navbar
	{
		justify-content: flex-start;
	}
}

.o-header__toggle
{
	position: relative;
	display: none;

	height: 100%;
	width: 68px;

	flex-shrink: 0;
	align-items: center;
	justify-content: center;
}

.o-header__toggle::after
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	content: "";

	z-index: 2;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.o-header__toggle
	{
		display: flex;
	}
}

.o-header__toggle-icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 42px;
	color: currentcolor;
}

.o-header__menu
{
	display: flex;

	gap: 15px;

	margin: 0;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.o-header__menu
	{
		position: absolute;
		display: flex;
		visibility: visible;
		opacity: 1;

		flex-direction: column;
		gap: 0;

		width: 100%;

		top: 100%;
		left: 0;

		background-color: #FFF;

		border-bottom: 5px solid black;

		transition-timing-function: ease;
		transition-duration: 240ms;
		transition-property: visibility, opacity, transform;
		transform: translate3d(0, 0, 0);

		will-change: transform, opacity, visibility;
	}

	.o-header__menu[aria-hidden="true"]
	{
		visibility: hidden;
		opacity: 0;

		transform: translate3d(0, 12px, 0);
	}
}
.o-info-alert
{
	position: fixed;
	display: flex;

	gap: 15px;

	left: 50%;
	bottom: 10px;
	padding: 5px 15px;

	background-color: #FFF;

	border-radius: 8px;
	border: 2px solid var(--primary);

	box-shadow: 3px 3px 0 0 var(
	--secondary);

	transform: translateX(-50%);

	z-index: 1337;

	align-items: center;
}

.o-info-alert__text
{
	margin: 0;

	font-weight: 500;
	font-size: .95rem;
}
.o-internal-page
{
	width: 1200px;
	max-width: 100%;

	margin-right: auto;
	margin-left: auto;
	padding: 0 12px;
}
.o-stats
{
	display: flex;

	gap: var(--gap);
	--gap: 20px;

	margin-top: 50px;
	padding: 0 30px;

	justify-content: center;
}
.o-title
{
	display: flex;

	flex-direction: column;

	width: 100%;

	margin: 0 0 3rem 0;

	font-family: circular, sans-serif;
	font-weight: 600;
	font-size: 3rem;
	color: var(--primary);

	text-align: center;

	align-items: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.o-title
	{
		font-size: 2.4rem;
	}
}

.o-title::after
{
	display: block;

	height: 6px;
	width: 80px;

	margin-top: 6px;

	background-color: var(--secondary);

	content: "";

	border-radius: 6px;
}

.o-title--site-title
{
	margin-top: 40px;
}

.o-title--front
{
	display: flex;

	flex-direction: row;

	width: 100%;

	margin: 1rem 0 .8rem 0;

	font-weight: 600;
	font-size: 2.3rem;
	color: #000;

	text-align: left;

	align-items: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.o-title--front
	{
		font-size: 1.8rem;
	}
}

.o-title--front::after
{
	display: block;

	height: 40px;
	width: 6px;

	margin-right: 16px;

	background-color: var(--secondary);

	content: "";

	border-radius: 6px;

	order: -1;
}

.o-title--user-bo
{
	width: auto;

	margin: 0;
	padding: 4px 15px;

	background-color: var(--primary);

	font-weight: 500;
	font-size: 2rem;
	color: #FFF;

	text-align: left;

	border-radius: 8px;

	box-shadow: var(--paper);

	align-items: flex-start;
}

.o-title--user-bo::after
{
	display: none;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.o-title--user-bo
	{
		font-size: 1.45rem;
	}
}

.o-title--smaller
{
	width: 100%;

	margin-bottom: 0;

	font-weight: 600;
	font-size: 1.8rem;

	text-align: left;

	justify-content: flex-start;
	align-items: flex-start;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.o-title--smaller
	{
		font-size: 1.5rem;
	}
}
.o-user-menu
{
	position: relative;
	display: flex;

	--btn-padding: 25px;
}

.o-user-menu__toggle
{
	position: relative;
	display: flex;

	padding: 4px 10px;

	overflow: hidden;

	align-items: center;
}

.o-user-menu__toggle:hover
{
	background-color: rgb(243 243 243);
}

.o-user-menu__toggle-icon
{
	font-size: 42px;
}

.o-user-menu__list
{
	position: absolute;
	display: inline-flex;
	visibility: hidden;
	opacity: 0;

	flex-direction: column;

	width: auto;

	margin: 0;
	top: calc(100% + 19px);
	right: 0;
	padding: 0;

	background-color: #FFF;

	transition-timing-function: ease;
	transition-duration: 240ms;
	transition-property: transform, opacity, visibility;
	transform: translate3d(0, 8px, 0);

	will-change: transform, opacity, visibility;
}

.o-user-menu__list[aria-hidden="false"]
{
	visibility: visible;
	opacity: 1;

	transform: translate3d(0, 0, 0);
}

.o-user-menu__rect
{
	position: absolute;
	display: inline-flex;
	visibility: hidden;
	opacity: 0;

	flex-direction: column;

	height: 1em;
	width: 1em;

	top: 100%;
	right: 20px;
	padding: 0;

	font-size: 22px;
	color: #408174;

	transition-timing-function: ease;
	transition-duration: 240ms;
	transition-property: transform, opacity, visibility;
	transform: translate3d(0, 8px, 0);

	z-index: -1;
}

.o-user-menu__list[aria-hidden="false"] ~ .o-user-menu__rect
{
	visibility: visible;
	opacity: 1;

	transform: translate3d(0, 0, 0);
}

.o-user-menu__list-btn
{
	position: relative;
	display: flex;

	padding: 8px var(--btn-padding);

	font-weight: 400;
	font-size: .9rem;
	color: inherit;
	text-decoration: none;

	text-align: right;
	white-space: nowrap;
	text-transform: uppercase;

	justify-content: flex-end;
}

.o-user-menu__list-btn:visited
{
	color: inherit;
}

.o-user-menu__list-btn::after
{
	position: absolute;
	display: flex;
	opacity: 0;

	height: calc(100% - 24px);
	width: 4px;

	top: 12px;
	right: calc(var(--btn-padding) / 2 + 6px - 2px);

	background-color: var(--primary);

	content: "";

	border-radius: 4px;

	transition: width 120ms linear;
	transition: opacity 240ms ease;

	align-self: stretch;
}

.o-user-menu__list-item:not(:last-child) .o-user-menu__list-btn::before
{
	position: absolute;
	display: block;

	height: 1.5px;
	width: 72%;

	top: 100%;
	right: 14%;

	background-color: #CCC;

	content: "";

	border-radius: 2px;
}

.o-user-menu__list-btn:hover::after,
.o-user-menu__list-btn:focus::after,
.o-user-menu__list-btn.active::after
{
	opacity: 1;
}

.o-user-menu__list-btn-txt
{
	padding: 8px 0;

	transition: transform 240ms ease;
	transform: translateX(0);
}

.o-user-menu__list-btn:hover .o-user-menu__list-btn-txt,
.o-user-menu__list-btn:focus .o-user-menu__list-btn-txt,
.o-user-menu__list-btn.active .o-user-menu__list-btn-txt
{
	transform: translateX(-6px);
}
.c-back-title
{
	width: auto;

	margin: 0;
	padding: 4px 15px;

	background-color: var(--primary);

	font-weight: 500;
	font-size: 2rem;
	color: #FFF;

	border-radius: 8px;

	box-shadow: var(--paper);
}

.c-back-title--form
{
	margin-bottom: 25px;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-back-title
	{
		font-size: 1.45rem;
	}
}

.c-back-title--admin-home
{
	width: 100%;

	margin-top: 60px;
	margin-bottom: 20px;

	font-weight: 600;
	font-size: 2.8rem;

	text-align: center;
}
.c-button
{
	position: relative;
	display: inline-flex;

	gap: 8px;

	line-height: 1.4em;
	min-height: 48px;
	min-width: 190px;

	padding: 6px 25px;

	background-color: var(--primary);

	font-family: inherit;
	font-weight: 600;
	font-size: 1em;
	color: #FFF;
	text-decoration: none;

	text-align: center;
	letter-spacing: .2px;
	text-transform: uppercase;

	border-radius: 10px;
	border: none;

	overflow: hidden;

	transition: color 240ms ease, background-color 240ms ease;

	align-items: center;
	flex-shrink: 0;
	justify-content: center;
}

.c-button--cookies-footer
{
	min-height: 0;

	padding-top: 5px;
	padding-bottom: 5px;

	border-radius: 6px;
}

.c-button__icon
{
	font-size: 30px;
}

.c-button:not(:disabled):hover,
.c-button:not(:disabled):focus
{
	background-color: var(--000);

	color: #000;
}

.c-button--cookies-footer:not(:disabled):hover,
.c-button--cookies-footer:not(:disabled):focus
{
	background-color: var(--000);

	color: #FFF;
}

.c-button--smaller
{
	min-height: 0;
	width: auto;
	min-width: 150px;

	margin-top: 30px;
	padding-top: 14px;
	padding-bottom: 14px;

	flex-grow: 0;
}

.c-button--user-panel
{
	min-height: 0;
	min-width: 0;
	max-width: 100%;

	padding: 8px 25px;

	border-radius: 4px;
}

.c-button--ghost-white
{
	background-color: transparent;

	color: #FFF;

	border: 2px solid #FFF;
}

.c-button--ghost-white:not(:disabled):hover,
.c-button--ghost-white:not(:disabled):active,
.c-button--ghost-white:not(:disabled):focus
{
	background-color: var(--primary);

	border-color: var(--primary);
}

.c-button--red
{
	background-color: #C00506;
}

.c-button[disabled]
{
	opacity: .45;

	cursor: not-allowed;
}
.c-card
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	width: calc(var(--grid-actual-w) / var(--items-count));

	padding: 18px 18px 22px;

	background-color: #FFF;

	text-align: center;

	border-radius: 20px;

	--items-count: 4;
	--gap-size: calc(var(--gap) * calc(var(--items-count) - 1));
	--grid-actual-w: calc(100% - var(--gap-size));
	flex-shrink: 0;
}

.c-card--stats
{
	min-width: 210px;
	max-width: 380px;
}

.c-card__number
{
	width: 100%;

	font-weight: 500;
	font-size: 2.8rem;
}

.c-card__title
{
	width: 100%;

	color: var(--primary);
}
.c-chart-card
{
	position: relative;

	width: 540px;
	max-width: 100%;

	padding: 20px 0;

	background-color: #FFF;

	border-radius: 6px;

	box-shadow: 0 2px 16px 2px #EAEAEA;

	flex-grow: 1;
}

.c-chart-card--pie
{
	margin-top: 30px;
	margin-right: auto;
	margin-left: auto;
}

.c-chart-card__title
{
	display: flex;

	flex-wrap: wrap;
	gap: 8px;

	width: 100%;

	margin: 0;
	margin-bottom: 20px;
	padding: 0 20px;

	font-size: 1rem;
	color: var(--black);

	text-align: center;
	text-transform: none;

	align-items: flex-start;
}

.c-chart-card__title-text
{
	width: 80%;

	font-size: 1.7rem;

	flex-shrink: 0;
	flex-grow: 1;
}

.c-chart-card__info-icon-container
{
	position: absolute;
	display: block;

	top: 10px;
	right: 14px;
	padding: 8px;

	background-color: var(--primary);

	border-radius: 50%;

	transform: translateX(50%) translateY(-50%);

	flex-shrink: 0;
}

.c-chart-card__info-icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 22px;
	color: #FFF;
}

.c-chart-card__axis-labels
{
	display: flex;

	width: 100%;

	margin-bottom: 8px;
	padding: 0 30px;

	justify-content: space-between;
}

.c-chart-card svg
{
	height: auto;
	width: auto;
}

.c-chart-card svg:focus
{
	outline: none;
}
.c-checkbox
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	padding: 0;

	cursor: pointer;

	overflow: hidden;

	align-items: center;
}

.c-checkbox--nowrap
{
	flex-wrap: nowrap;
}

.c-checkbox--25\%
{
	width: 20%;

	flex-grow: 1;
}

.c-checkbox--column
{
	flex-direction: column;
}

.c-checkbox--50\%
{
	width: 50%;
}

.c-checkbox--100\%
{
	width: 100%;
}

.c-checkbox--disabled
{
	color: #ABABAB;

	cursor: default;
}

.c-checkbox--front-cgu
{
	width: 25em;
	max-width: 100%;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-checkbox--front-cgu
	{
		width: 100%;

		margin-bottom: 20px;
	}
}

.c-checkbox__indicator,
.c-checkbox__indicator::before
{
	--cb-indicator-size: var(--input-height);
}

.c-checkbox__indicator
{
	position: relative;
	display: flex;

	height: 1em;
	width: 1em;

	margin-right: 14px;

	background-color: var(--input-background);

	font-size: var(--cb-indicator-size);

	border-radius: 4px;
	border: none;

	z-index: 0;

	flex-shrink: 0;
}

.c-checkbox--error .c-checkbox__indicator
{
	background-color: var(--error-background);
}

.c-checkbox--column .c-checkbox__indicator
{
	margin-right: 0;
}

.c-checkbox input:checked ~ .c-checkbox__indicator::before
{
	position: absolute;
	display: block;

	height: 0;
	width: 0;

	top: .18em;
	left: .1em;

	font-size: calc(var(--cb-indicator-size) * .75);

	content: "";

	border-right: 3px solid transparent;
	border-bottom: 3px solid transparent;

	transform: rotate(45deg);
	transform-origin: 0 100%;
	animation: checkbox-check 180ms 40ms linear;
	animation-fill-mode: forwards;
}

.c-checkbox input:disabled ~ .c-checkbox__indicator
{
	background-color: #EBEBEB;
}

.c-checkbox__indicator::after
{
	position: absolute;
	visibility: hidden;
	opacity: 0;

	height: calc(100% + 8px);
	width: calc(100% + 8px);

	top: -4px;
	left: -4px;

	content: "";

	border-radius: 4px;
	border: 2px solid #000;

	transition-timing-function: ease;
	transition-duration: 200ms;
	transition-property: height, width, opacity, visibility, top, left;

	z-index: 1;
}

.c-checkbox input:focus ~ .c-checkbox__indicator::after
{
	visibility: visible;
	opacity: 1;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;
}

.c-checkbox__icon
{
	position: absolute;
	display: flex;

	height: 1em;
	width: 1em;

	top: 50%;
	margin-top: -.6em;
	left: 0;

	font-size: 35px;
	color: var(--green-darker);

	transform-origin: left;
	animation-name: checkbox-animation;
	animation-duration: 240ms;

	z-index: 4;
}

.c-checkbox input
{
	position: absolute;

	height: 1px;
	width: 1px;

	right: 100%;

	z-index: -4;
}

.c-checkbox .p-ink
{
	height: 22px !important;
	width: 22px !important;

	background-color: rgba(0, 0, 0, .35);
}

.c-checkbox input:disabled ~ .p-ink
{
	display: none !important;
}

@keyframes checkbox-check
{
	0%
	{
		height: 0;
		width: 0;

		top: .37em;
		left: .30em;

		border-color: currentColor;
	}

	35%
	{
		height: 0;
		width: .65em;

		top: .37em;
		left: .30em;

		border-color: currentColor;
	}

	40%
	{
		height: .2em;
		width: .65em;

		top: .30em;
		left: .30em;

		border-color: currentColor;
	}

	45%
	{
		height: .3em;
		width: .65em;

		top: .19em;
		left: .30em;

		border-color: currentColor;
	}

	50%
	{
		height: .4em;
		width: .65em;

		top: .09em;
		left: .30em;

		border-color: currentColor;
	}

	55%
	{
		height: .5em;
		width: .65em;

		top: -.01em;
		left: .30em;

		border-color: currentColor;
	}

	60%
	{
		height: .6em;
		width: .65em;

		top: -.11em;
		left: .30em;

		border-color: currentColor;
	}

	65%
	{
		height: .7em;
		width: .65em;

		top: -.20em;
		left: .30em;

		border-color: currentColor;
	}

	70%
	{
		height: .8em;
		width: .65em;

		top: -.31em;
		left: .30em;

		border-color: currentColor;
	}

	75%
	{
		height: .9em;
		width: .65em;

		top: -.41em;
		left: .30em;

		border-color: currentColor;
	}

	80%
	{
		height: 1em;
		width: .65em;

		top: -.51em;
		left: .30em;

		border-color: currentColor;
	}

	85%
	{
		height: 1.1em;
		width: .65em;

		top: -.61em;
		left: .30em;

		border-color: currentColor;
	}

	90%
	{
		height: 1.2em;
		width: .65em;

		top: -.70em;
		left: .30em;

		border-color: currentColor;
	}

	100%
	{
		height: 1.35em;
		width: .65em;

		top: -.85em;
		left: .3em;

		border-color: currentColor;
	}
}
.c-chip
{
	display: inline-flex;

	padding: 4px 12px;

	background-color: #E0E0E0;

	font-weight: 500;
	font-size: 1rem;
	color: #000;

	border-radius: 6px;
}

.c-chip:empty
{
	display: none;
}

.c-chip--primary
{
	background-color: var(--primary);

	color: #FFF;
}

.c-chip--green
{
	background-color: var(--secondary);

	color: #FFF;
}

.c-chip--pink
{
	background-color: #FFD1F1;

	color: #000;
}

.c-chip--no-bottom-radius
{
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.c-chip--orange
{
	background-color: var(--orange);

	color: #FFF;
}

.c-chip--secondary
{
	background-color: var(--secondary);

	color: #FFF;
}

.c-chip--red
{
	background-color: var(--red);

	color: #FFF;
}

.c-chip__label
{
	font-weight: inherit;
	font-size: 1rem;
	color: inherit;
}
.c-client-form
{
	position: relative;

	margin-top: 50px;
	margin-bottom: 30px;
}

.c-client-form__fields
{
	display: flex;

	flex-wrap: wrap;
	gap: 25px 15px;

	align-items: flex-start;
}

.c-client-form__register-txt
{
	text-align: center;
}

.c-client-form__register-trigger
{
	display: block;

	width: 100%;

	margin-bottom: 20px;

	text-align: center;
}

.c-client-form__title
{
	display: flex;

	flex-direction: row;

	width: 100%;

	margin: 2rem 0 0 0;

	font-weight: 600;
	font-size: 2.3rem;
	color: #000;

	text-align: left;

	align-items: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-client-form__title
	{
		font-size: 1.8rem;
	}
}

.c-client-form__title::after
{
	display: block;

	height: 40px;
	width: 6px;

	margin-right: 16px;

	background-color: var(--secondary);

	content: "";

	border-radius: 6px;

	order: -1;
}

.c-client-form__cared-for-list
{
	display: flex;

	flex-direction: column;
	gap: 50px;

	width: 100%;
}

.c-client-form__cared-person
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 20px;

	width: 100%;

	align-items: flex-start;
}

.c-client-form__cared-person:not(:last-child)::before
{
	position: absolute;

	height: 4px;
	width: 1em;

	left: 50%;
	margin-left: -.5em;
	bottom: -30px;

	background-color: var(--primary);

	font-size: 120px;

	content: "";

	border-radius: 6px;
}

.c-client-form__cared-add
{
	display: flex;

	flex-direction: column;
	gap: 15px;

	width: 100%;

	margin-bottom: 30px;
}

.c-client-form__cared-add-buttons
{
	display: flex;

	flex-wrap: wrap;
	gap: 22px;

	align-items: center;
}

.c-client-form__validation
{
	display: flex;

	flex-direction: column;
	gap: 30px;
}

.c-client-form__required-helper
{
	position: relative;
	display: inline-flex;

	gap: 4px;

	align-items: center;
}

.c-client-form__required-helper::before
{
	position: relative;
	display: flex;

	font-size: 1.3rem;
	color: var(--orange);

	content: "*";

	align-items: center;
}

.c-client-form__legal
{
	display: flex;

	gap: 20px;

	width: 100%;

	align-items: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-client-form__legal
	{
		display: block;
	}
}
.c-col-placeholder--50\%
{
	flex-basis: 33.1%;
	flex-grow: 1;
}

.c-col-placeholder--33\%
{
	flex-basis: 25.1%;
	flex-grow: 1;
}

.c-col-placeholder--25\%
{
	flex-basis: 20.1%;
	flex-grow: 1;
}

.c-col-placeholder--75\%
{
	flex-basis: 51.1%;
	flex-grow: 1;
}
.c-collapse,
.c-collapse *,
.c-collapse *::before,
.c-collapse *::after
{
	--border-radius: 4px;
	--border-color: #000;

	--padding-x: 14px;
}

.c-collapse
{
	display: inline-flex;

	flex-direction: column;

	width: 100%;

	margin-top: 0;

	border-radius: var(--border-radius);
	border: 0 solid var(--border-color);

	overflow: hidden;

	transition: border-radius 320ms ease;
}

.c-collapse[data-collapsed="false"]
{
	width: 100%;
}

.c-collapse__header
{
	display: flex;

	gap: 6px;

	margin-bottom: 20px;

	background-color: #F5F8FA;

	align-items: stretch;
}

.c-collapse__toggle
{
	display: inline-flex;
	opacity: 1;

	gap: 4px;

	line-height: 1.3em;
	min-height: 42px;
	width: 100%;

	padding: 8px 12px;

	background-color: #FFF;

	font-weight: 400;
	font-size: 1rem;

	text-align: left;

	border-radius: 6px;

	box-shadow: 0 3px 6px 2px rgb(0 0 0 / 4%);

	align-items: center;
	justify-content: flex-start;
}

.c-collapse__toggle:hover,
.c-collapse__toggle:focus
{
	opacity: 1;
}

.c-collapse__toggle-icon-container
{
	position: relative;

	margin-right: 6px;
	padding: 4px;

	background-color: var(--secondary);

	border-radius: 50%;
}

.c-collapse__toggle-icon
{
	display: flex;

	height: 1em;
	width: 1em;

	font-size: 22px;
	color: #FFF;

	transition: transform 240ms ease;
	transform: rotate(0deg);
}

.c-collapse__toggle-icon[data-collapsed="false"]
{
	transform: rotate(-45deg);
}

.c-collapse__collapsed
{
	display: none;

	width: 100%;

	padding: 0;
}

.c-collapse__collapsed[data-collapsed="false"]
{
	display: flex;

	flex-direction: column;
}

.c-collapse__list
{
	padding-top: 8px;
	padding-right: var(--padding-x);
	padding-left: var(--padding-x);
	padding-bottom: 8px;
}
.c-cookie-parameter
{
	display: flex;

	flex-wrap: wrap;
	gap: 12px 35px;

	width: 100%;

	margin: 16px 0;
}

.c-cookie-parameter__title
{
	margin: 0;

	font-weight: 700;
	font-size: 1.25rem;

	flex-basis: 40%;
	flex-grow: 1;
}

.c-cookie-parameter__description
{
	width: 100%;
}

.c-cookie-parameter__value
{
	display: flex;

	flex-grow: 0;
	flex-shrink: 0;
	align-items: center;
}

.c-cookie-parameter__status
{
	width: 65px;

	margin: 0;
	padding: 2px 6px;

	font-weight: 600;
	font-size: 1em;
	color: #888;

	cursor: pointer;
	text-align: center;

	border-radius: 4px;
}

.c-cookie-parameter--checked .c-cookie-parameter__status
{
	background-color: #009688;

	color: #FFF;
}

.c-cookie-parameter--disabled .c-cookie-parameter__status
{
	background-color: #DE2A39;

	color: #FFF;
}
.c-DPE
{
	display: flex;

	flex-wrap: wrap;
	gap: 80px;

	width: 100%;

	margin-top: 35px;
}

@media print
{
	.c-DPE
	{
		flex-wrap: nowrap;
	}
}

.c-DPE__electricity,
.c-DPE__gas-emissions
{
	position: relative;

	overflow: hidden;
}

.c-DPE__electricity
{
	padding-left: 2px;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-DPE__electricity,
	.c-DPE__gas-emissions
	{
		width: 100%;
	}
}

.c-DPE__gas-emissions
{
	padding: 12px 15px;

	border-radius: 10px;
	border: 3px solid #98DAF7;
}

.c-DPE__text-asterix
{
	margin-bottom: 5px;

	font-weight: 500;
	font-size: 1.3rem;
}

.c-DPE__text-asterix::before
{
	content: "*";
}

.c-DPE__track
{
	display: flex;

	flex-direction: column;
	gap: 4px;

	counter-reset: number -1;

	align-items: flex-start;
	--dpe-maxlength: 200px;
}

@media print
{
	.c-DPE__track
	{
		--dpe-maxlength: 100px;
	}
}

@media print
{
	.c-DPE__track
	{
		--dpe-maxlength: 160px;
	}

	.c-DPE__gas-emissions .c-DPE__track
	{
		--dpe-maxlength: 90px;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-DPE__track
	{
		--dpe-maxlength: 160px;
	}

	.c-DPE__gas-emissions .c-DPE__track
	{
		--dpe-maxlength: 55px;
	}
}

.c-DPE__help-text
{
	margin-bottom: 4px;
	padding-left: 173px;

	font-weight: 400;
	font-size: .9rem;
	color: #00A072;
}

@media print
{
	.c-DPE__help-text
	{
		padding-left: 0;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-DPE__help-text
	{
		padding-left: 0;
	}
}

.c-DPE__gas-emissions .c-DPE__help-text
{
	padding-left: 0;

	color: #6F92AF;
}

.c-DPE__help-text.is-bottom
{
	margin-top: 4px;
	margin-bottom: 0;

	color: #E52710;
}

.c-DPE__gas-emissions .c-DPE__help-text.is-bottom
{
	color: #000;
}

.c-DPE__label-with-infos
{
	display: flex;

	width: 100%;

	align-items: stretch;
}

.c-DPE__label
{
	position: relative;
	display: inline-flex;

	min-height: var(--label-height);

	align-items: stretch;
	justify-content: flex-start;
	flex-grow: 0;
	--label-height: 36px;
	--arrow-length: 10px;
}

.c-DPE__gas-emissions .c-DPE__label
{
	--arrow-length: 25px;
	--label-height: 28px;
}

.c-DPE__label.is-active
{
	border-color: #000;

	--label-height: 60px;
	--arrow-length: 16px;
}

@media print
{
	.c-DPE__electricity .c-DPE__label:not(.is-active) .c-DPE__label-kwh,
	.c-DPE__electricity  .c-DPE__label:not(.is-active) .c-DPE__label-kgC02
	{
		display: none;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-DPE__electricity .c-DPE__label:not(.is-active) .c-DPE__label-kwh,
	.c-DPE__electricity  .c-DPE__label:not(.is-active) .c-DPE__label-kgC02
	{
		display: none;
	}
}

.c-DPE__gas-emissions .c-DPE__label.is-active
{
	--label-height: 48px;
	--arrow-length: 30px;
}

.c-DPE__label[data-letter="A"]
{
	--label-color: #00A06F;
	--index: 0;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="A"]
{
	--label-color: #A1D9F7;
}

.c-DPE__label[data-letter="B"]
{
	--label-color: #49B05A;
	--index: 1;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="B"]
{
	--label-color: #86B4D8;
}

.c-DPE__label[data-letter="C"]
{
	--label-color: #A3CC79;
	--index: 2;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="C"]
{
	--label-color: #7392B0;
}

.c-DPE__label[data-letter="D"]
{
	--label-color: #F7E637;
	--index: 3;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="D"]
{
	--label-color: #5C6E8E;
}

.c-DPE__label[data-letter="E"]
{
	--label-color: #F5B529;
	--index: 4;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="E"]
{
	--label-color: #4C506E;
}

.c-DPE__label[data-letter="F"]
{
	--label-color: #F28336;
	--index: 5;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="F"]
{
	--label-color: #383654;
}

.c-DPE__label[data-letter="G"]
{
	--label-color: #DE2219;
	--index: 6;
}

.c-DPE__gas-emissions .c-DPE__label[data-letter="G"]
{
	--label-color: #281A33;
}

.c-DPE__label-kwh
{
	position: relative;
	position: relative;
	display: flex;

	flex-direction: column;

	left: -2px;
	padding: 0 10px 0 6px;

	font-weight: 700;
	font-size: 24px;

	justify-content: center;
	align-items: center;
}

.c-DPE__label.is-active .c-DPE__label-kwh
{
	border-top-left-radius: 8px;
	border-bottom-left-radius: 8px;
	border: 2px solid black;
	border-right: 0;
}

.c-DPE__label.is-active .c-DPE__label-kwh::after
{
	position: absolute;

	height: 86%;
	width: 3px;

	top: 7%;
	right: 0;

	background-color: #000;

	content: "";

	border-radius: 4px;
}

.c-DPE__label-kgC02
{
	position: relative;
	display: flex;

	flex-direction: column;
	flex-wrap: wrap;

	left: -2px;
	padding: 0 6px;

	font-weight: 700;
	font-size: 24px;

	justify-content: center;
	align-items: center;
}

.c-DPE__label.is-active .c-DPE__label-kgC02
{
	margin-right: -2px;

	border: 2px solid black;
	border-left: 0;
}

.c-DPE__label-kgC02 .c-DPE__label-value::after
{
	font-weight: 300;

	content: "*";
}

.c-DPE__unit
{
	display: block;
	visibility: hidden;

	width: auto;

	font-weight: 300;
	font-size: .8rem;

	order: 2;
	flex-grow: 0;
}

.c-DPE__label.is-active .c-DPE__unit
{
	visibility: visible;
}

.c-DPE__label-letter
{
	position: relative;
	display: flex;

	line-height: 1.1;
	min-width: calc(3.6rem + var(--offset));

	font-weight: 500;
	font-size: 1.6rem;
	color: #FFF;

	align-items: stretch;
	justify-content: space-between;
	--offset: calc(calc(var(--dpe-maxlength) / 6) * var(--index));
}

@media print
{
	.c-DPE__electricity .c-DPE__label.is-active .c-DPE__label-letter
	{
		min-width: 40px;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-DPE__electricity .c-DPE__label.is-active .c-DPE__label-letter
	{
		min-width: 40px;
	}
}

.c-DPE__gas-emissions .c-DPE__label-letter
{
	font-size: 1.2rem;
}

.c-DPE__label-letter::after
{
	position: absolute;
	display: block;

	height: 0;
	width: 0;

	left: 100%;

	font-size: var(--label-height);

	content: "";

	border-width: .5em 0 .5em var(--arrow-length);
	border-style: solid;
	border-color: transparent transparent transparent var(--label-color);

	transform: rotate(0deg);

	z-index: 5;
}

.c-DPE__gas-emissions .c-DPE__label-letter::after
{
	display: none;
}

.c-DPE__label-letter-bg
{
	display: flex;

	line-height: inherit;

	padding: 0 10px;

	background-color: var(--label-color);

	text-align: left;

	flex-grow: 1;
	align-items: center;
	justify-content: flex-start;
}

.c-DPE__label.is-active .c-DPE__label-letter
{
	line-height: .9;

	font-size: 2.3em;
}

.c-DPE__label.is-active .c-DPE__label-letter-bg
{
	padding-left: 8px;

	text-shadow: 3px 1px 1px black;
}

.c-DPE__gas-emissions .c-DPE__label-letter-bg
{
	border-top-right-radius: var(--label-height);
	border-bottom-right-radius: var(--label-height);
}

.c-DPE__gas-emissions .c-DPE__label.is-active .c-DPE__label-letter-bg
{
	border: 2px solid black;
}

.c-DPE__label-text-info
{
	display: flex;

	gap: 3px;

	margin-left: 15px;

	font-weight: 600;
	font-size: 1.6rem;

	white-space: nowrap;

	align-items: flex-end;
	align-self: center;
	flex-grow: 1;
}

.c-DPE__label-text-info::before
{
	height: 2px;
	min-width: 20px;
	max-width: 70px;

	margin-right: 8px;

	background-color: #000;

	content: "";

	flex-grow: 1;
	align-self: center;
}

@media print
{
	.c-DPE__label-text-info::before
	{
		display: none;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-DPE__label-text-info::before
	{
		display: none;
	}
}

.c-DPE__label-with-infos:last-child .c-DPE__label-text-info::before
{
	min-width: 0;
}

.c-DPE__label-text-info-unit
{
	position: relative;

	bottom: 2px;

	font-weight: 300;
	font-size: .8rem;
}
.c-executive-note-history
{
	display: flex;

	gap: 30px;

	padding: 8px 15px;

	background-color: #FFF;

	align-items: center;
}
.c-field-error
{
	display: flex;

	gap: 4px;

	width: 100%;

	padding: 2px 0;

	color: #C00506;

	align-items: center;
	flex-shrink: 0;
}

.c-field-error--week-day-picker
{
	margin-top: 1rem;
}

.c-field-error--checkbox
{
	margin-top: 2px;
}

.c-field-error--fileinput
{
	position: relative;

	margin-top: 0;
	left: 0;
	margin-bottom: 10px;
	padding: 6px 12px;

	background-color: var(--error-background);

	font-weight: 400;
	font-size: 1.05rem;

	border-radius: 4px;
}

.c-field-error--fileinput .c-field-error__icon
{
	font-size: 20px;
}

.c-field-error--fileinput-row
{
	padding: 6px 12px;

	background-color: #F8E7E7;

	font-weight: 400;
	font-size: 1rem;

	border-bottom-right-radius: var(--border-radius);
	border-bottom-left-radius: var(--border-radius);
	border-top: 2px solid currentColor;
}

.c-field-error__icon
{
	font-size: 18px;
	color: inherit;

	flex-shrink: 0;
}
.c-fileinput
{
	position: relative;

	width: 100%;

	font-size: 1rem;
}

.c-fileinput--50\%
{
	flex-basis: 34%;
	flex-grow: 1;
}

.c-fileinput__elements
{
	display: flex;

	flex-direction: column;
	gap: 12px;

	width: 100%;

	margin: 0;
	padding: 0;
}

.c-fileinput__elements:empty
{
	margin-top: -12px;
}

.c-fileinput__element
{
	width: 100%;

	--border-radius: 4px;

	--darker-background: #D2D2D2;
	--padding-y: 4px;
}

.c-fileinput__element-content
{
	display: flex;

	width: 100%;

	margin-top: 0;
	padding: 0;

	background-color: var(--input-background);

	border-radius: var(--border-radius);

	align-items: stretch;
}

.c-fileinput__element-content.has-error
{
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.c-fileinput__element-icon
{
	position: relative;
	display: flex;

	padding-top: var(--padding-y);
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: var(--padding-y);

	transition: background-color 240ms ease;
}

.c-fileinput__element-icon:first-child
{
	border-top-left-radius: var(--border-radius);
	border-bottom-left-radius: var(--border-radius);
}

.c-fileinput__element-icon::after
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	content: "";
}

.c-fileinput__element-icon:hover
{
	background-color: var(--darker-background);
}

.c-fileinput__size
{
	display: flex;

	margin-top: var(--padding-y);
	margin-left: 4px;
	margin-bottom: var(--padding-y);

	font-weight: 500;
	font-size: .95rem;

	align-items: center;
}

.c-fileinput__element-icon-svg
{
	position: relative;
	display: flex;

	height: 1em;
	width: 1em;

	top: 1px;

	font-size: 40px;
	color: #000;

	fill: hsl(0deg 0% 95.29%);
}

.c-fileinput__element-icon-img
{
	position: relative;
	display: flex;

	height: 1em;
	width: auto;
	max-width: 1.5em;

	top: 1px;

	font-size: 40px;

	border-radius: 4px;

	object-fit: cover;
}

.c-fileinput__element-icon-img[src$=".png"]
{
	object-fit: contain;
}

.c-fileinput__name::before
{
	margin: 0 10px;

	font-family: inherit;
	font-size: 1em;

	content: "-";
}

.c-fileinput__name
{
	display: flex;

	width: auto;
	min-width: 100px;

	margin-top: var(--padding-y);
	margin-bottom: var(--padding-y);

	white-space: nowrap;

	align-items: center;
	flex-grow: 2;
	flex-shrink: 1;
}

.c-fileinput__ellipsed-name
{
	display: block;

	width: 10px;
	min-width: 0;

	text-align: left;
	white-space: nowrap;
	text-overflow: ellipsis;

	overflow: hidden;

	flex-grow: 1;
}

.c-fileinput__remove-btn
{
	position: relative;
	display: flex;

	width: 40px;

	background-color: #E5E5E5;

	border-top-right-radius: var(--border-radius);
	border-bottom-right-radius: var(--border-radius);

	overflow: hidden;

	transition: background-color 240ms ease;

	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	align-self: stretch;
}

.c-fileinput__remove-btn:hover,
.c-fileinput__remove-btn:focus
{
	background-color: #FF7D7D;
}

.c-fileinput__remove-icon
{
	font-size: 34px;
	color: #000;

	transition: color 240ms ease;
	transform: rotate(45deg);
}

.c-fileinput__remove-btn:hover .c-fileinput__remove-icon,
.c-fileinput__remove-btn:focus .c-fileinput__remove-icon
{
	color: #FFF;
}

.c-fileinput__drag-btn
{
	position: relative;
	display: flex;

	margin: 0;
	margin-right: -2px;
	padding-right: 8px;
	padding-left: 12px;

	background-color: transparent;

	border-top-left-radius: var(--border-radius);
	border-bottom-left-radius: var(--border-radius);

	transition: background-color 240ms ease;

	align-self: stretch;
	align-items: center;
	justify-content: center;
}

.c-fileinput__drag-btn::after
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	content: "";
}

.c-fileinput__drag-btn:hover
{
	background-color: var(--darker-background);
}

.c-fileinput__drag-icon
{
	height: 1em;
	width: 1em;

	font-size: 26px;
	color: inherit;
}

.c-fileinput__controls
{
	width: 100%;

	margin-top: .9rem;
}

.c-fileinput input[type="file"]
{
	position: absolute;
	display: flex;
	opacity: .001;

	height: 0;
	width: 0;

	left: 1200px;

	z-index: -1;
}

.c-fileinput__progress
{
	display: flex;

	padding-right: 12px;
	padding-left: 12px;

	flex-basis: 100px;
	align-items: center;
	flex-grow: 3;
}

.c-fileinput__progress-label
{
	margin-left: 12px;

	font-weight: 600;
	font-size: 16px;
	color: #000;
}

.c-fileinput__upload-error
{
	display: flex;

	padding-right: 25px;
	padding-left: 20px;

	align-items: center;
	flex-shrink: 0;
}

.c-fileinput__retry
{
	position: relative;
	display: flex;

	margin-left: 15px;
	padding: 0 10px;

	background-color: #E52E38;

	color: #FFF;

	border-radius: 4px;

	overflow: hidden;

	transition: background-color 240ms ease;

	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	align-self: stretch;
}

.c-fileinput__retry::after
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

.c-fileinput__retry:hover,
.c-fileinput__retry:focus
{
	background-color: #F1BEC0;

	color: #000;

	outline: none;
}

.c-fileinput__retry-svg
{
	display: flex;

	height: 1em;
	width: 1em;

	margin-right: 8px;

	font-size: 30px;
	color: inherit;
}
.c-fillable-indicator
{
	position: relative;
	display: inline-flex;

	height: 4px;
	width: 100px;

	border-radius: 16px;
	border: 2px solid #E0E0E0;

	flex-grow: 1;
}

.c-fillable-indicator--upload
{
	height: 6px;
	width: 40px;

	background-color: #E0E0E0;

	border: none;

	overflow: hidden;

	flex-grow: 1;
}

.c-fillable-indicator--empty
{
	border-color: transparent;
}

.c-fillable-indicator__bar
{
	position: absolute;

	height: calc(100% + 4px);

	top: -2px;
	left: -2px;

	background-color: #2EB619;

	content: "";

	border-radius: 20px;
}

.c-fillable-indicator--upload .c-fillable-indicator__bar
{
	height: 100%;

	top: 0;
	left: 0;

	transition: width 500ms ease;
}

.c-fillable-indicator--yellow .c-fillable-indicator__bar
{
	background-color: #F5EB6A;
}

.c-fillable-indicator--orange .c-fillable-indicator__bar
{
	background-color: #F58049;
}

.c-fillable-indicator--red .c-fillable-indicator__bar
{
	background-color: #E93339;
}



/* ------------------------------------- *\
|* ---- # c-additional-indicator # ----- *|
\* ------------------------------------- */
.c-additional-indicator
{
	position: absolute;

	height: calc(100% + 4px);

	top: -2px;
	left: -2px;

	background-color: #DC82E2;

	content: "";

	border-radius: 20px;
}
.c-flat-btn
{
	position: relative;
	display: inline-flex;

	gap: 8px;

	min-height: 40px;
	min-width: 0;

	margin-top: 3px;
	margin-right: 3px;
	margin-bottom: 3px;
	padding: 5px 15px;

	background-color: #FFF;

	font-family: inherit;
	font-weight: 600;
	color: var(--black);
	text-decoration: none;

	text-transform: uppercase;

	border-radius: 5px;
	border: 2px solid var(--black);

	box-shadow: 3px 3px 0 0 var(--primary);

	overflow: hidden;

	transition: color 240ms ease, background-color 240ms ease, box-shadow 240ms ease, border-color 240ms ease;

	align-items: center;
	flex-shrink: 0;
}

.c-flat-btn--consistent-margins
{
	margin-top: 3px;
}

.c-flat-btn--js-version
{
	padding-top: 5px;
	padding-bottom: 5px;
}

.c-flat-btn--no-wrap
{
	white-space: nowrap;
}

.c-flat-btn--save-filters
{
	min-height: var(--input-height);

	padding-top: 4px;
	padding-bottom: 4px;

	box-shadow: 3px 3px 0 0 var(--primary);
}

.c-flat-btn:disabled
{
	cursor: default;
}

.c-flat-btn span
{
	font-family: inherit;
	font-weight: inherit;
	font-size: 1em;
}

.c-flat-btn--smaller
{
	padding: 2px 6px;

	box-shadow: 2px 2px 0 0 var(--primary);
}

.c-flat-btn--icon.c-flat-btn--no-text
{
	padding-right: 6px;
	padding-left: 6px;
}

.c-flat-btn--icon > span
{
	gap: 8px;
}

.c-flat-btn--cookies-footer
{
	min-width: 110px;

	font-weight: 600;
	font-size: .9rem;

	letter-spacing: .2px;
	text-transform: uppercase;

	box-shadow: none;
}

.c-flat-btn:not(:disabled):hover,
.c-flat-btn:not(:disabled):focus
{
	color: var(--black);

	box-shadow: 0 0 0 0 var(--secondary);
}

.c-flat-btn--delete-doc:not(:disabled):hover,
.c-flat-btn--delete-doc:not(:disabled):focus
{
	color: var(--black);

	box-shadow: 0 0 0 0 var(--red);
}

.c-flat-btn--red
{
	color: #FFF;

	border: 2px solid var(--secondary);

	box-shadow: 3px 3px 0 0 var(--black);
}

.c-flat-btn--green
{
	color: #FFF;

	border: 2px solid var(--green);

	box-shadow: 3px 3px 0 0 var(--black);
}

.c-flat-btn--blue
{
	box-shadow: 3px 3px 0 0 var(--black);
}

.c-flat-btn--secondary
{
	box-shadow: 3px 3px 0 0 var(--black);
}

.c-flat-btn--table
{
	width: 100%;

	margin: 0;

	background-color: transparent;

	border-radius: 0;
	border: none;

	box-shadow: none;
}

.c-flat-btn,
.c-flat-btn:not(:disabled):hover,
.c-flat-btn:not(:disabled):focus
{
	border-color: var(--black);
}

.c-flat-btn--red,
.c-flat-btn--red:not(:disabled):hover,
.c-flat-btn--red:focus
{
	background-color: var(--red);

	color: #FFF;

	border-color: var(--red);

	outline: none;
}

.c-flat-btn--green,
.c-flat-btn--green:not(:disabled):hover,
.c-flat-btn--green:not(:disabled):focus
{
	background-color: var(--green-darker);

	color: #FFF;

	border-color: var(--green-darker);
}

.c-flat-btn--blue,
.c-flat-btn--blue:not(:disabled):hover,
.c-flat-btn--blue:not(:disabled):focus
{
	background-color: var(--blue);

	color: #FFF;

	border-color: var(--blue);
}

.c-flat-btn--secondary,
.c-flat-btn--secondary:not(:disabled):hover,
.c-flat-btn--secondary:not(:disabled):focus
{
	background-color: var(--secondary);

	color: #FFF;

	border-color: var(--secondary);
}

.c-flat-btn--invisible,
.c-flat-btn--transparent
{
	margin-right: 0;
	margin-bottom: 0;
}

.c-flat-btn--invisible,
.c-flat-btn--invisible:not(:disabled):hover,
.c-flat-btn--invisible:not(:disabled):focus
{
	background-color: transparent;

	border-color: transparent;

	box-shadow: none;

	transition: border-color 240ms ease;
}

.c-flat-btn--invisible.c-flat-btn--red
{
	color: var(--secondary);
}

.c-flat-btn--invisible:not(:disabled).c-flat-btn--red:hover,
.c-flat-btn--invisible:not(:disabled).c-flat-btn--red:focus
{
	border-color: var(--secondary);
}

.c-flat-btn--invisible:not(:disabled):hover,
.c-flat-btn--invisible:not(:disabled):focus
{
	border-color: var(--primary);
}

.c-flat-btn--red:not(:disabled):hover,
.c-flat-btn--red:not(:disabled):focus,
.c-flat-btn--green:not(:disabled):hover,
.c-flat-btn--green:not(:disabled):focus,
.c-flat-btn--blue:not(:disabled):hover,
.c-flat-btn--blue:not(:disabled):focus
{
	box-shadow: 0 0 0 0 var(--primary);
}

.c-flat-btn--secondary:not(:disabled):hover,
.c-flat-btn--secondary:not(:disabled):focus
{
	box-shadow: 0 0 0 0 var(--black);
}

.c-flat-btn--primary
{
	color: var(--black);

	box-shadow: 3px 3px 0 0 var(--primary);
}

.c-flat-btn--delete-requirement
{
	margin: 0;
	padding: 8px 20px;
}

.c-flat-btn--primary,
.c-flat-btn--primary:not(:disabled):hover,
.c-flat-btn--primary:not(:disabled):focus
{
	background-color: #FFF;
}

.c-flat-btn--primary:not(:disabled):hover
{
	background-color: #23203E;

	color: #FFF;

	box-shadow: 0 0 0 0 var(--primary);
}

.c-flat-btn:disabled
{
	opacity: .4;
}

.c-flat-btn:disabled.c-flat-btn--invisible,
.c-flat-btn:disabled.c-flat-btn--invisible:hover,
.c-flat-btn:disabled.c-flat-btn--invisible:focus
{
	border-color: transparent;
}

.c-flat-btn--cookies-footer:not(:disabled):hover,
.c-flat-btn--cookies-footer:not(:disabled):focus
{
	border-color: #FFF;
}

.c-flat-btn--red.c-flat-btn--transparent
{
	background-color: transparent;

	color: var(--primary);

	box-shadow: none;
}

.c-flat-btn--red.c-flat-btn--transparent:not(:disabled):hover,
.c-flat-btn--red.c-flat-btn--transparent:not(:disabled):focus
{
	background-color: var(--primary);

	color: #FFF;
}

.c-flat-btn--thin
{
	font-weight: 400;

	border-width: 1px;
}

.c-flat-btn--table:not(:disabled):hover,
.c-flat-btn--table:not(:disabled):focus
{
	background-color: var(--primary);

	color: #FFF;
}

.c-flat-btn--delete-doc
{
	margin: 0;

	background-color: transparent;

	color: var(--red);

	border: none;

	box-shadow: none;
}

.c-flat-btn--update-doc
{
	margin: 0;

	background-color: transparent;

	color: var(--primary);

	border: none;

	box-shadow: none;
}

.c-flat-btn--delete-doc:not(:disabled):focus
{
	box-shadow: 0 0 0 2px #000;
}

.c-flat-btn--transparent
{
	border: none;

	box-shadow: none;
}

.c-flat-btn--transparent:hover:not(:disabled)
{
	background-color: #E7E7E7;
}

.c-flat-btn__icon
{
	display: inline-block;

	height: 1em;
	width: 1em;

	font-size: 1.2em;

	user-select: none;

	flex-shrink: 0;
}

.c-flat-btn__icon[data-icon="IoCheckmarkDone"]
{
	transform: scale(1.4);
}

.c-flat-btn--bullet::before
{
	display: flex;

	height: 1em;
	width: 1em;

	background-color: var(--black);

	font-size: 8px;

	content: "";

	border-radius: 50%;

	flex-shrink: 0;
	order: 0;
}

.c-flat-btn--bullet-red::before
{
	background-color: var(--red);
}

.c-flat-btn--bullet-secondary::before
{
	background-color: var(--secondary);
}

.c-flat-btn--bullet-primary::before
{
	background-color: var(--primary);
}

.c-flat-btn--bullet-pink::before
{
	background-color: #FF92DD;
}

.c-flat-btn--bullet-orange::before
{
	background-color: var(--orange);
}

.c-flat-btn--bullet-gray::before
{
	background-color: #E0E0E0;
}

.c-flat-btn--bullet .c-flat-btn__icon
{
	margin-left: auto;

	order: 2;
}
.c-footer
{
	line-height: 1.6;

	margin-top: auto;

	background-color: #515151;

	font-size: .95rem;
	color: #FFF;
}

.c-footer__content
{
	display: flex;

	flex-wrap: wrap;
	gap: 40px 50px;

	max-width: var(--page-container-w);

	margin: 0 auto;
	padding: 40px 12px;

	justify-content: flex-start;
	align-items: flex-start;
}

.c-footer__col
{
	min-width: 200px;
	max-width: 100%;

	flex-basis: 25%;
	flex-grow: 1;
	flex-shrink: 1;
}

.c-footer__col.is-logo-col
{
	display: flex;

	flex-wrap: wrap;
	gap: 60px;

	align-items: center;
	flex-basis: 450px;
	flex-shrink: 0;
	flex-grow: 0;
}

.c-footer__col-title
{
	margin: 0;
	margin-bottom: .6rem;

	font-weight: 500;
	font-size: 1.2rem;
}

.c-footer__address
{
	line-height: inherit;

	font-style: normal;
	font-size: 1em;
}

.c-footer__logo-link
{
	position: relative;
	display: block;

	width: 120px;

	margin-bottom: 14px;

	color: #FFF;

	z-index: 0;
}

.c-footer__logo-link::before
{
	position: absolute;

	height: 100%;
	width: 108%;

	top: 3%;
	left: 3%;
	bottom: 0;

	background: #AFAFAF;

	content: "";

	border-radius: 10px;

	transform: rotate(5deg);
	transform-origin: left;

	z-index: -1;
}

.c-footer__logo
{
	display: block;

	height: auto;
	width: 100%;
}

.c-footer__logo-side
{
	min-width: 200px;

	flex-basis: 100px;
	flex-grow: 1;
	flex-shrink: 1;
}

ul.c-footer__links
{
	line-height: inherit;

	padding-left: 20px;

	list-style: disc;
}

.c-footer__nav-link
{
	display: flex;

	line-height: 1.2;

	padding: 6px 0;

	color: inherit;
	text-decoration: none;
}




/* ------------------------------------ */
/* --------- c-footer__legal ---------- */
/* ------------------------------------ */

.c-footer__legal
{
	display: flex;

	width: 100%;

	padding: 10px 8px;

	background-color: #484848;

	font-size: .9rem;
	color: #FFF;

	justify-content: center;
}

.c-footer__legal-content
{
	display: flex;

	flex-wrap: wrap;
	row-gap: 10px;
	column-gap: 30px;

	justify-content: space-between;
}

.c-footer__copyright
{
	margin: 0;
	padding: 10px 0;
}

.c-footer__legal-links
{
	display: flex;

	flex-wrap: wrap;
	row-gap: 12px;
	column-gap: 25px;

	margin: 0;

	align-items: center;
}

.c-footer__legal-a
{
	display: flex;

	padding: 2px 0;

	color: inherit;
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, transparent 0 2px 0 0;

	align-items: center;
}

.c-footer__legal-a:hover,
.c-footer__legal-a:focus
{
	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, #FFF 0 2px 0 0;
}

.c-footer__legal-a:before
{
	display: block;

	height: 1em;
	width: 1em;

	margin-right: 8px;

	background-color: #FFF;

	font-size: 5px;

	content: "";

	flex-shrink: 0;
}




/* ------------------------------------ */
/* --------- c-footer__made-by -------- */
/* ------------------------------------ */

.c-footer__made-by-content
{
	margin-right: auto;
	margin-left: auto;
}

.c-footer__made-by
{
	display: flex;

	flex-wrap: wrap;
	gap: 6px;

	margin: 0;
	padding: 3px 0;

	align-items: center;
	justify-content: center;
}

.c-footer__made-by-icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 16px;
	color: inherit;

	transition: color 240ms ease;
}

.c-footer__made-by:hover .c-footer__made-by-icon
{
	color: #C00506;
}

.c-footer__made-by-a
{
	position: relative;

	line-height: 1.4em;

	top: 1px;

	font-weight: inherit;
}

.c-footer__made-by-a,
.c-footer__made-by-a:hover,
.c-footer__made-by-a:focus,
.c-footer__made-by-a:active
{
	color: inherit;
	text-decoration: none;
}
.c-form-element-label
{
	display: flex;

	gap: 0 8px;

	line-height: 1.4em;
	width: 100%;

	padding-bottom: 6px;

	font-family: inherit;
	font-weight: 500;
	font-size: .95em;
	color: #000;

	cursor: pointer;
	user-select: none;
	letter-spacing: .02em;
	text-transform: uppercase;

	align-items: center;
	order: -1;
}

.c-form-element-label--inline
{
	width: auto;

	margin-right: 10px;
	padding: 0;

	align-self: center;
}

.c-form-element-label--nowrap
{
	white-space: nowrap;
}

.c-form-element-label--multi-select
{
	order: -1;
}

.c-form-element-label--checkbox
{
	position: relative;

	width: 60%;

	top: 1px;
	padding: 0;

	font-size: 1rem;

	text-transform: none;

	order: initial;
	flex-grow: 1;
}

.c-form-element-label--checkbox:empty
{
	display: none;
}

.c-form-element-label--checkbox.c-form-element-label--column
{
	width: 100%;

	padding-bottom: 6px;

	font-size: .9rem;

	text-transform: uppercase;

	order: -1;
}

.c-form-element-label--required::after
{
	position: relative;
	display: flex;

	left: -.4em;

	font-size: .9rem;
	color: var(--orange);

	content: "*";

	transform: scale(1.3);

	align-items: center;
}

.c-form-element-label--disabled
{
	color: #A6A6A6;

	cursor: default;
}

.c-form-element-label--radio-title
{
	min-height: 26px;
	width: 100%;

	margin-bottom: 2px;
	padding: 0;
}

.c-form-element-label__icon
{
	font-size: 16px;
	color: inherit;
}

.c-form-element-label--model-picker .c-form-element-label__icon
{
	font-size: 16px;
	color: inherit;

	transform: scale(1.2);
}
.c-front-goods
{
	position: relative;

	min-height: 200px;

	padding: 80px 15px;
}

.c-front-goods__title
{
	margin-bottom: 2rem;
}

.c-front-goods__grid
{
	display: flex;

	flex-wrap: wrap;

	width: 100%;
}

.c-front-goods__item
{
	position: relative;

	border-radius: var(--radius);

	overflow: hidden;

	--radius: 6px;
}

.c-front-goods__item:hover,
.c-front-goods__item:focus
{
	text-decoration: none;

	outline: none;
}

.c-front-goods__item::before
{
	display: block;

	width: 100%;

	padding-top: 100%;

	content: "";
}

.c-front-goods__item-content
{
	position: absolute;
	display: flex;

	flex-direction: column;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	border-radius: 0;
	border: 0;

	--padding-w: 20px;
}

.c-front-goods__item-title
{
	margin: 0 0 0 0;
	padding: 15px var(--padding-w);

	background-color: var(--primary);

	font-weight: 600;
	font-size: 1.4rem;
	color: #FFF;
}

.c-front-goods__item-body
{
	position: relative;
	display: flex;

	flex-direction: column;

	padding: 20px var(--padding-w);

	color: #FFF;

	flex-grow: 1;
}

.c-front-goods__item-body::before
{
	position: absolute;
	visibility: hidden;
	opacity: 0;

	height: calc(100% - var(--spacing) - var(--spacing));
	width: calc(100% - var(--spacing) - var(--spacing));

	top: var(--spacing);
	left: var(--spacing);
	padding: var(--spacing);

	content: "";

	border-radius: 0;

	box-shadow: 0 0 0 3px #FFF;

	transition: visibility 240ms ease, transform 240ms ease, opacity 240ms ease;
	transform: scale(1.05);

	--spacing: 7px;
}

.c-front-goods__item:hover .c-front-goods__item-body::before
{
	visibility: visible;
	opacity: 1;

	transform: scale(1);
}

.c-front-goods__item-subtitle
{
	margin-bottom: 16px;

	font-weight: 500;
	font-size: 1.3rem;

	text-transform: uppercase;
}

.c-front-goods__item-desc
{
	margin: 0;
	padding: 0;

	font-size: 1rem;
	color: inherit;
}

.c-front-goods__item-img
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	border-top-left-radius: calc(var(--radius) + 4px);
	border-top-right-radius: calc(var(--radius) + 4px);

	transition: filter 240ms ease;

	object-position: center;
	object-fit: cover;
	filter: contrast(1.3) brightness(.5);
}

.c-front-goods__item:hover .c-front-goods__item-img
{
	filter: contrast(1.3) brightness(.35);
}

.c-front-goods__item-more
{
	display: inline-flex;

	margin-top: auto;

	align-self: flex-end;
}

.c-front-goods__item-more-icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 20px;
	color: inherit;
}

.c-front-goods__item:focus .c-front-goods__item-more
{
	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, #FFF 0 2px 0 0;
}
.c-front-residences
{
	position: relative;

	min-height: 200px;

	padding: 80px 15px;

	background-color: #EEE;
}

.c-front-residences--client-form
{
	padding: 40px 0;

	background-color: transparent;
}

.c-front-residences__title
{
	margin-bottom: 2rem;
}

.c-front-residences__grid
{
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	--i-count: 3;
}

/* ------------ Tablet (portrait) ------------- */
@media (min-width: 600px) and (max-width: 900px)
{
	.c-front-residences__grid
	{
		--i-count: 2;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-front-residences__grid
	{
		--i-count: 1;
	}
}

.c-front-residences__item
{
	position: relative;

	border-radius: var(--radius);

	overflow: hidden;

	--radius: 6px;
}

.c-front-residences__item:hover,
.c-front-residences__item:focus
{
	text-decoration: none;

	outline: none;
}

.c-front-residences__item::before
{
	display: block;

	width: 100%;

	padding-top: 100%;

	content: "";
}

.c-front-residences__item.is-disabled::before
{
	position: relative;
	opacity: .8;

	background-color: #E1E1E1;

	z-index: 4;
}

.c-front-residences__item-content
{
	position: absolute;
	display: flex;

	flex-direction: column;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	border-radius: 0;
	border: 0;

	--padding-w: 20px;
}

.c-front-residences__item-title
{
	margin: 0 0 0 0;
	padding: 15px var(--padding-w);

	background-color: var(--orange);

	font-weight: 600;
	font-size: 1.4rem;
	color: #FFF;
}

.c-front-residences__item-body
{
	position: relative;
	display: flex;

	flex-direction: column;

	padding: 20px var(--padding-w);

	color: #FFF;

	flex-grow: 1;
}

.c-front-residences__item-body::before
{
	position: absolute;
	visibility: hidden;
	opacity: 0;

	height: calc(100% - var(--spacing) - var(--spacing));
	width: calc(100% - var(--spacing) - var(--spacing));

	top: var(--spacing);
	left: var(--spacing);
	padding: var(--spacing);

	content: "";

	border-radius: 0;

	box-shadow: 0 0 0 3px #FFF;

	transition: visibility 240ms ease, transform 240ms ease, opacity 240ms ease;
	transform: scale(1.05);

	--spacing: 7px;
}

a.c-front-residences__item:hover .c-front-residences__item-body::before
{
	visibility: visible;
	opacity: 1;

	transform: scale(1);
}

.c-front-residences__item-subtitle
{
	margin-bottom: 16px;

	font-weight: 500;
	font-size: 1.3rem;

	text-transform: uppercase;
}

.c-front-residences__item-desc
{
	line-height: 1.6;

	margin: 0;
	padding: 0;

	font-size: 1rem;
	color: inherit;
}

.c-front-residences__closed-label
{
	position: absolute;

	width: 275px;

	right: 0;
	bottom: 155px;
	padding: 8px 0;

	background-color: var(--blue);

	color: #FFF;

	text-align: center;
	text-transform: uppercase;

	transform: rotate(-45deg);
	transform-origin: top right;
}

.c-front-residences__closed-label.is-color-primary
{
	background-color: var(--primary);
}

.c-front-residences__closed-label.is-color-secondary
{
	background-color: var(--secondary);
}

.c-front-residences__item-img
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	border-top-left-radius: calc(var(--radius) + 4px);
	border-top-right-radius: calc(var(--radius) + 4px);

	object-position: center;
	object-fit: cover;
	filter: contrast(1.3) brightness(.5);
}

.c-front-residences__item-img.is-blurred
{
	filter: blur(8px) contrast(1.3) brightness(.5);
}

a.c-front-residences__item:hover .c-front-residences__item-img
{
	filter: contrast(1.3) brightness(.35);
}

.c-front-residences__item-more
{
	display: inline-flex;

	margin-top: auto;

	align-self: flex-end;
}

.c-front-residences__item-more-icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 20px;
	color: inherit;
}

a.c-front-residences__item:focus .c-front-residences__item-more
{
	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, #FFF 0 2px 0 0;
}

.c-front-residences__eligibility
{
	width: 100%;

	padding: 6px 0;

	text-align: center;
}
.c-header
{
	position: relative;
	display: flex;

	width: 100%;

	align-items: center;
	justify-content: center;
}

.c-header__container
{
	display: flex;

	gap: 0 60px;

	width: var(--page-container-w);
	max-width: 100%;

	padding: 10px 40px 22px;

	align-items: center;
	justify-content: space-between;
}

@media (max-width: 1150px)
{
	.c-header__container
	{
		gap: 0 20px;

		padding: 10px 10px;
	}
}

.c-header__logo-link
{
	position: relative;
	display: block;

	width: 120px;

	flex-shrink: 0;
}

/* ------------ Tablet (portrait) ------------- */
@media (min-width: 600px) and (max-width: 900px)
{
	.c-header__logo-link
	{
		width: 90px;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-header__logo-link
	{
		width: 70px;
	}
}

.c-header__logo-link::before
{
	position: absolute;

	height: 100%;
	width: 108%;

	top: 3%;
	left: 3%;
	bottom: 0;

	background: #DADADA;

	content: "";

	border-radius: 10px;

	transform: rotate(5deg);
	transform-origin: left;

	z-index: -1;
}

.c-header__logo
{
	display: block;

	height: auto;
	width: 100%;
}

.c-header__nav
{
	display: flex;

	gap: 12px 25px;

	flex-grow: 1;
	align-items: center;
	justify-content: flex-start;
}

@media (max-width: 1150px)
{
	.c-header__nav
	{
		position: absolute;
		display: flex;
		visibility: visible;
		opacity: 1;

		flex-direction: column;
		gap: 0;

		width: 100%;

		top: 100%;
		left: 0;

		background-color: #FFF;

		border-top: 3px solid #CDCDCD;

		transition-timing-function: ease;
		transition-duration: 240ms;
		transition-property: visibility, opacity, transform;
		transform: translate3d(0, 0, 0);

		z-index: 2;

		will-change: transform, opacity, visibility;
	}

	.c-header:not(.c-header--open) .c-header__nav
	{
		visibility: hidden;
		opacity: 0;

		transform: translate3d(0, 12px, 0);
	}
}

.c-header__nav-link
{
	line-height: 1.6;

	padding: 1px 0;

	font-weight: 500;
	font-size: 1.2rem;
	color: var(--black);
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, transparent 0 3px 0 0;
}

.c-header__nav-link:hover,
.c-header__nav-link.active,
.c-header__nav-link:focus
{
	color: var(--primary);
	text-decoration: none;
}

@media (min-width: 1150px)
{
	.c-header__nav-link:hover,
	.c-header__nav-link.active,
	.c-header__nav-link:focus
	{
		box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, var(--secondary) 0 3px 0 0;
	}
}

@media (max-width: 1150px)
{
	.c-header__nav-item
	{
		width: 100%;
	}

	.c-header__nav-link
	{
		display: flex;

		width: 100%;

		padding: 10px 12px;
	}
}

.c-header__nav-link-special
{
	padding: 4px 14px;

	background-color: var(--orange);

	font-size: 1em;
	color: #FFF;

	border-radius: 4px;

	transition: background-color 240ms ease, color 240ms ease;
}

.c-header__nav-link-special:hover,
.c-header__nav-link-special:focus
{
	background-color: #F3F3F3;

	color: var(--blue);
}

.c-header__toggle
{
	position: relative;
	display: none;

	height: 48px;
	width: 48px;

	background-color: var(--orange);

	color: #FFF;

	border-radius: 6px;

	transform: scaleX(-1);

	flex-shrink: 0;
	align-items: center;
	justify-content: center;
}

.c-header__toggle::after
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	content: "";

	z-index: 2;
}

@media (max-width: 1150px)
{
	.c-header__toggle
	{
		display: flex;

		margin-left: auto;
	}
}

.c-header__toggle-icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 37px;
	color: currentcolor;
}

.c-header--open .c-header__toggle-icon
{
	font-size: 42px;

	transform: rotate(45deg);
}

.c-header__user-toggle
{
	position: relative;
	display: flex;

	gap: 10px;

	padding: 6px 10px;

	border-radius: 10px;
	border: 1.5px solid #DDD;
	border-color: transparent;

	transition: background-color 240ms ease;

	align-items: center;
}

@media (max-width: 1150px)
{
	.c-header__user-toggle
	{
		gap: 8px;

		padding: 6px 8px;
	}
}

.c-header__user-toggle:focus
{
	border-color: #DFDFDF;
}

.c-header__user-toggle:hover
{
	background-color: #F3F3F3;
}

.c-header__user-toggle-icon-container
{
	padding: 8px;

	background-color: var(--primary);

	border-radius: 9px;
}

.c-header__user-toggle-icon
{
	font-size: 32px;
	color: #FFF;
}

.c-header__user-toggle-label
{
	font-weight: 600;
	font-size: 1.2rem;
	color: #000;
}

@media (max-width: 1150px)
{
	.c-header__user-toggle-label
	{
		font-size: 1rem;
	}
}
.c-hero
{
	position: relative;
	display: flex;

	flex-direction: column;

	min-height: 55vh;
	width: 100%;

	background-image: url(/images/hero/accession-sociale-dans-le-neuf-1920x588.webp);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;

	z-index: 1;

	align-items: center;
	justify-content: center;
}

.c-hero::before
{
	position: absolute;
	opacity: 0;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	z-index: -1;
}

.c-hero__title
{
	margin: 0;
	padding: 10px 15px;

	background-color: #FFF;

	font-weight: 600;
	font-size: 3.5rem;
	color: var(--primary);
}
.c-home-rounds
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 30px;

	margin-bottom: 30px;

	font-family: "Neo";

	justify-content: center;
}

.c-home-rounds__round
{
	display: flex;

	height: 200px;
	line-height: 1.4;
	width: 200px;

	padding: 30px 15px;

	background-color: var(--orange);

	font-weight: 500;
	font-size: 1.15rem;
	color: #FFF;

	text-align: center;
	text-transform: uppercase;

	border-radius: 50%;

	align-items: center;
	justify-content: center;
}

.c-home-rounds__round:nth-child(2n)
{
	background-color: var(--primary);
}
.c-id-file
{
	display: flex;

	gap: 20px;

	width: 100%;

	align-items: stretch;
}

.c-id-file__info
{
	display: flex;

	gap: 12px;

	min-width: 10em;

	padding: 8px 15px;

	background-color: #FFF3E1;

	color: #F6A500;

	border-radius: 8px;

	align-items: center;
	flex-shrink: 0;
}

.c-id-file--pending .c-id-file__info
{
	background-color: #EBF8FC;

	color: var(--primary);
}

.c-id-file--validated .c-id-file__info
{
	background-color: #EFF7EA;

	color: #000;
}

.c-id-file--refused .c-id-file__info
{
	background-color: #F4DDDD;

	color: #000;
}

.c-id-file__icon
{
	height: 1em;
	width: 1em;

	font-size: 32px;
	color: currentColor;
}

.c-id-file--validated .c-id-file__icon
{
	color: var(--secondary);
}

.c-id-file--refused .c-id-file__icon
{
	color: #C00506;
}
.c-info-btn
{
	position: relative;
	display: flex;

	height: var(--size);
	line-height: 1;
	width: var(--size);

	background-color: #000;

	font-weight: 500;
	font-size: 16px;
	color: #FFF;

	text-align: center;

	border-radius: 50%;

	order: 2;
	--size: 28px;
	align-items: center;
	justify-content: center;
}
.c-infos
{
	position: relative;

	padding: 30px 30px;
}

.c-infos--absolute-title
{
	display: flex;

	flex-direction: column;
	gap: 2.5rem;

	margin-top: 36px;
}

.c-infos__title
{
	display: inline-flex;

	margin: 0 0 2rem 0;
	bottom: 100%;
	padding: 8px 15px;

	background-color: var(--primary);

	font-weight: 500;
	font-size: 1.05rem;
	color: #FFF;

	border-radius: 10px;
}

.c-infos--absolute-title .c-infos__title
{
	position: absolute;

	margin: 0;
	bottom: 100%;

	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.c-infos__top
{
	display: flex;

	gap: 20px;

	width: 100%;

	margin-bottom: 0;

	align-items: center;
}

.c-infos__urgent
{
	display: inline-flex;

	gap: 8px;

	margin-top: 0;
	margin-bottom: 0;
	padding: 8px 15px;

	background-color: var(--red);

	font-weight: 600;
	font-size: 1.05rem;
	color: #FFF;

	letter-spacing: .5px;
	text-transform: uppercase;

	align-items: center;
}

.c-infos__urgent-icon
{
	font-size: 24px;
	color: currentColor;
}

.c-infos__top-icon
{
	font-size: 24px;
	color: currentColor;
}

.c-infos__top-txt
{
	display: flex;

	gap: 8px;

	font-size: 1.05rem;

	align-items: center;
}

.c-infos__grid
{
	display: flex;

	flex-wrap: wrap;
	gap: 25px 20px;

	justify-content: flex-start;
}

.c-infos__part
{
	position: relative;
	display: flex;

	flex-direction: column;
	gap: 15px;

	width: 390px;
}

.c-infos__part-content
{
	position: relative;
	display: flex;

	flex-direction: column;
	gap: 8px;

	padding: 6px 0 6px 45px;
}

.c-infos__part-content::before
{
	position: absolute;

	height: 100%;
	width: 3px;

	top: 0;
	left: 17px;

	background-color: var(--primary-lighter);

	content: "";

	border-radius: 8px;

	z-index: 0;
}

.c-infos__part-title
{
	display: flex;

	gap: 8px;

	margin-top: 0;
	margin-bottom: -6px;

	background-color: #FFF;

	z-index: 1;

	align-items: center;
}

.c-infos__part-title-icon
{
	position: relative;

	top: -2px;

	font-size: 35px;
	color: currentColor;
}

.c-infos__text
{
	margin: 0;
	padding: 0;
}

.c-infos__description
{
	display: block;

	margin-top: 0;
	margin-bottom: 0;
	padding-top: var(--icon-offset);

	--icon-offset: 8px;
}

.c-infos__description-icon
{
	position: relative;
	float: left;

	top: calc(var(--icon-offset) * -1);
	margin-right: 10px;

	font-size: 35px;
	color: currentColor;
}
.c-input
{
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	font-size: 1rem;

	flex-shrink: 0;
}

.c-input--75\%
{
	flex-basis: 50.1%;
	flex-grow: 1;
}

.c-input--50\%
{
	flex-basis: 33.1%;
	flex-grow: 1;
}

.c-input--33\%
{
	flex-basis: 25.1%;
	flex-grow: 1;
}

.c-input--25\%
{
	flex-basis: 20.1%;
	flex-grow: 1;
}

.c-input--75\%
{
	flex-basis: 51.1%;
	flex-grow: 1;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-input--25\%
	{
		flex-basis: 100%;
	}

	.c-input--33\%
	{
		flex-basis: 100%;
	}

	.c-input--75\%
	{
		flex-basis: 100%;
	}

	.c-input--50\%
	{
		flex-basis: 100%;
	}
}

/* -------------- Mobile (small) -------------- */
@media (max-width: 369px)
{
	.c-input
	{
		flex-basis: 100%;
	}
}

.c-input__label
{
	display: flex;

	gap: 0 8px;

	width: 100%;

	padding-bottom: 6px;

	font-family: inherit;
	font-weight: 400;
	font-size: .9em;
	color: #000;

	cursor: pointer;
	user-select: none;
	letter-spacing: .02em;
	text-transform: uppercase;

	align-items: center;
	order: -1;
	flex-shrink: 0;
}

.c-input--nowrap .c-input__label
{
	white-space: nowrap;
}

.c-input--required .c-input__label::after
{
	position: relative;
	display: flex;

	left: -.4em;

	font-size: .9rem;
	color: var(--secondary);

	content: "*";

	align-items: center;
}

.c-input--disabled .c-input__label
{
	color: #A6A6A6;

	cursor: default;
}

.c-input__label-icon
{
	font-size: 16px;
	color: inherit;

	transform: scale(1.2);
}

.c-input__tel-wrapper
{
	position: relative;
	display: flex;

	gap: 0 6px;

	align-items: flex-start;
	flex-grow: 1;
}

.c-input__tel-content
{
	display: block;

	width: 100%;
}

.c-input__input-wrapper
{
	position: relative;

	width: 100%;

	background-color: var(--input-background);

	border-radius: var(--input-radius);
}

.c-input--model-picker .c-input__input-wrapper
{
	display: flex;

	align-items: stretch;
}

.c-input__tel-placeholder
{
	position: absolute;
	display: flex;
	opacity: 1;

	height: 100%;
	width: 100%;

	padding: 0 8px;

	background-color: transparent;

	font-size: 1em;
	color: inherit;
	color: #908DB8;

	z-index: 0;

	align-items: center;
}

.c-input__input
{
	position: relative;
	display: flex;

	height: var(--input-height);
	width: 100%;

	padding: 0 8px;

	background-color: transparent;

	font-family: inherit;
	font-size: 1em;

	text-align: left;

	border-radius: 0;
	border: none;

	outline: none;

	z-index: 2;

	align-items: center;
	justify-content: flex-start;
}

.c-input--medium .c-input__input
{
	height: var(--medium-input-height);
}

.c-input--tel .c-input__input
{
	padding-left: calc(8px + 2.25em);
}

.c-input--tel-prefix--4 .c-input__input
{
	padding-left: calc(8px + 2.75em);
}

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

.c-input__input ~ .c-input__border
{
	position: absolute;
	visibility: hidden;
	opacity: 0;

	height: calc(100% + 8px);
	width: calc(100% + 8px);

	top: -4px;
	left: -4px;

	border-radius: 4px;
	border: 2px solid #000;

	transition-timing-function: ease;
	transition-duration: 200ms;
	transition-property: height, width, opacity, visibility, top, left;

	z-index: 1;
}

.c-input__input:focus ~ .c-input__border
{
	visibility: visible;
	opacity: 1;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;
}

.c-input--error .c-input__input-wrapper
{
	background-color: var(--error-background);
}

.c-input--disabled .c-input__input-wrapper
{
	background-color: #EBEBEB;
}

.c-input--disabled .c-input__input
{
	color: #ABABAB;
}

.c-input__input::placeholder
{
	color: #C8C8C8;
}
.c-intervention-details
{
	position: relative;
	display: flex;

	flex-direction: row-reverse;
	flex-wrap: wrap;

	border-top: none;
}

.c-intervention-details__content
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	border-top: none;

	order: -1;
}

.c-intervention-details__header
{
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	padding: 0 8px;

	background-color: #E4E4E4;

	font-weight: 600;
	color: #000;

	text-align: left;

	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	border: 2px solid #E4E4E4;
	border-width: 2px 2px 0 2px;

	transition: border-color 240ms ease;

	align-items: center;
	justify-content: flex-end;
}

.c-intervention-details__date
{
	flex-grow: 1;
	flex-shrink: 0;
}

button:hover ~ .c-intervention-details__content .c-intervention-details__date,
button:focus ~ .c-intervention-details__content .c-intervention-details__date
{
	border-top-color: var(--primary);
	border-right-color: var(--primary);
	border-left-color: var(--primary);
}

.c-intervention-details__infos
{
	display: flex;

	flex-wrap: wrap;
	gap: 15px 25px;

	width: 100%;

	padding: 6px 8px;

	background-color: #FFF;

	border: 2px solid #E4E4E4;
	border-width: 0 2px 2px 2px;

	transition: border-color 240ms ease;
}

button:hover ~ .c-intervention-details__content .c-intervention-details__infos,
button:focus ~ .c-intervention-details__content .c-intervention-details__infos
{
	border-right-color: var(--primary);
	border-bottom-color: var(--primary);
	border-left-color: var(--primary);
}

.c-intervention-details__linked-infos
{
	display: flex;

	flex-wrap: wrap;
	gap: 16px;

	align-items: center;
}

.c-intervention-details__applied-to
{
	display: flex;

	align-items: center;
}

.c-intervention-details__type,
.c-intervention-details__action
{
	width: auto;
}

.c-intervention-details__text
{
	width: 100%;

	font-style: italic;
}

.c-intervention-details__icon-arrow
{
	display: block;

	font-size: 28px;
	color: var(--primary);
}
.c-leaflet-map
{
	position: relative;

	height: 420px;
	width: 100%;

	margin-bottom: 30px;

	border-radius: 8px;
}

.c-leaflet-map--grey-bg
{
	background-color: #EEE;
}

@media print
{
	.c-leaflet-map
	{
		height: 300px;
	}
}

.c-leaflet-map .leaflet-popup-content
{
	width: 100% !important;

	margin: 0;
}

.c-leaflet-map .leaflet-popup
{
	width: 320px;

	margin: 0;
}

.c-leaflet-map--contact .leaflet-popup
{
	width: 220px;
}

.c-leaflet-map a.leaflet-popup-close-button
{
	position: absolute;
	display: flex;

	height: 42px;
	width: 42px;

	color: transparent !important;
}

.c-leaflet-map a.leaflet-popup-close-button::before
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-image: url(/images/icons/close_popup.svg);
	background-position: center;
	background-size: contain;

	content: "";

	transform: rotate(45deg);

	z-index: 2;
}

.c-leaflet-map .leaflet-popup-content-wrapper,
.c-leaflet-map .leaflet-popup-tip
{
	background: transparent;

	color: inherit;

	box-shadow: none;
}
.c-loader
{
	position: absolute;
	display: flex;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	font-weight: 500;
	font-size: 20px;
	color: inherit;

	cursor: default;

	z-index: 2;

	align-items: center;
	justify-content: center;
}

.c-loader--stats
{
	padding-top: 240px;

	align-items: flex-start;
}

@media print
{
	.c-loader
	{
		display: none;
	}
}

.c-loader--content
{
	font-size: 36px;
}

.c-loader--root
{
	background-color: var(--body-background);

	font-size: 48px;
}

.c-loader--model-picker
{
	height: calc(100% - 4px);
	width: 38px;

	top: 2px;
	right: 2px;
	left: auto;

	border-radius: 4px;

	z-index: 4;
}

.c-loader--big
{
	display: flex;

	flex-direction: column;

	font-size: 42px;

	align-items: center;
	justify-content: center;
}

.c-loader--medium
{
	display: flex;

	flex-direction: column;

	font-size: 26px;

	justify-content: center;
	align-items: center;
}

.c-loader--page
{
	display: flex;

	flex-direction: column;

	font-size: 64px;

	align-items: center;
	justify-content: center;
}

.c-loader--top-50
{
	padding-top: 50px;

	justify-content: flex-start;
}

/* ---------- Couleur du loader ---------- */

.c-loader--white
{
	color: #FFF;
}

.c-loader--black
{
	color: #000;
}

.c-loader--primary
{
	color: var(--primary);
}

.c-loader--secondary
{
	color: var(--secondary);
}

.c-loader--green
{
	color: #408174;
}

.c-loader--red
{
	color: #D7263D;
}

/* ---------- Couleur du fond ---------- */

.c-loader--bg-white
{
	background-color: #FFF;
}

.c-loader--bg-black
{
	background-color: #000;
}

.c-loader--bg-semi-white
{
	background-color: rgba(255, 255, 255, .75);
}

.c-loader--bg-primary
{
	background-color: var(--primary);
}

.c-loader--bg-secondary
{
	background-color: var(--secondary);
}

.c-loader--bg-soft-grey
{
	background-color: var(--soft-grey);
}

.c-loader--bg-input
{
	background-color: var(--input-background);
}

.c-input--error .c-loader--bg-input
{
	background-color: var(--error-background);
}

.c-input--disabled .c-loader--bg-input
{
	background-color: #EBEBEB;
}

.c-loader--bg-light
{
	background-color: #BDD261;
}

.c-loader--bg-dark-blue
{
	background-color: #252242;
}

.c-loader--bg-green
{
	background-color: #408174;
}

.c-loader--bg-red
{
	background-color: #D7263D;
}

.c-loader--bg-grey,
.c-loader--bg-gray
{
	background-color: #F5F5F5;
}

.c-loader--big .c-loader__txt
{
	margin-top: 5px;

	font-size: .85em;
}

.c-loader--medium .c-loader__txt
{
	margin-top: 4px;

	font-size: .8em;
}

.c-loader__svg
{
	position: relative;
	display: block;

	height: 1em;
	width: 2em;

	margin-right: 8px;

	flex-shrink: 0;
}

.c-loader--round .c-loader__svg
{
	height: 1em;
	width: 1em;

	margin: 0;
}

.c-loader--application .c-loader__svg
{
	margin-right: 0;
}

.c-loader--big .c-loader__svg,
.c-loader--medium .c-loader__svg
{
	top: 0;
	margin-right: 0;
}

.c-loader--DataList
{
	position: static;

	padding-top: 15px;
	padding-bottom: 15px;
}

.c-loader__txt
{
	font-size: 16px;
}

.c-loader--modal .c-loader__txt
{
	font-weight: 400;
	font-size: 1.4rem;
}

.c-loader--modal .c-loader__svg
{
	font-size: 32px;
}
.c-loca-pass
{
	display: flex;

	flex-direction: column;

	width: 100%;

	padding: 30px 0 60px;
}

.c-loca-pass__quote
{
	position: relative;
	display: block;

	flex-direction: column;
	gap: 4px;

	width: auto;

	margin-right: auto;
	margin-left: auto;

	font-weight: 500;
	font-size: 2.2rem;
	color: var(--primary);
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-loca-pass__quote
	{
		font-size: 1.5rem;
	}
}

.c-loca-pass__quote-icon
{
	margin-bottom: 6px;

	font-size: 55px;
}

.c-loca-pass__quote-text
{
	display: inline-block;

	width: auto;

	text-align: left;
}

.c-loca-pass__text
{
	width: 100%;
}
.c-map-pin
{
	position: relative;

	width: 100%;

	margin-bottom: 16px;

	background-color: #FFF;

	border-radius: 6px;

	overflow: hidden;

	--padding-x: 15px;
	--padding-y: 12px;
}

.c-map-pin--hsa
{
	box-shadow: 0 0 8px 1px rgba(0, 0, 0, .2);
}

.c-map-pin__header
{
	position: relative;
	display: flex;

	min-height: 120px;

	align-items: center;
}

.c-map-pin__header::before
{
	position: absolute;
	opacity: .1;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	z-index: 1;
}

.c-map-pin--hsa .c-map-pin__header::before
{
	display: none;

	content: none;
}

.c-map-pin__title
{
	position: relative;
	display: flex;

	line-height: 1;
	width: 100%;

	margin: 0;
	margin: 12px 0 0 0;
	padding: 0 var(--padding-x);

	font-family: circular, sans-serif;
	font-weight: 600;
	font-size: 1.3rem;
	color: #000;

	text-align: center;

	z-index: 2;

	align-items: center;
	justify-content: flex-start;
}

.c-map-pin--hsa .c-map-pin__title
{
	line-height: 1.3;

	margin-top: 0;
	margin-bottom: 12px;
}

.c-map-pin__img
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	z-index: 0;

	object-fit: cover;
}

.c-map-pin__img[src*="logo-hsa.svg"]
{
	position: static;
	display: flex;

	height: 115px;
	width: auto;

	margin: 12px auto;

	object-fit: contain;
}

.c-map-pin__address
{
	margin: 6px 0;
	padding: 0 var(--padding-x);

	font-weight: 500;
	font-style: normal;
	font-size: 1.1rem;
}

.c-map-pin__city
{
	display: block;

	width: 100%;

	margin-top: 4px;
}

.c-map-pin__address-line
{
	width: auto;
}

.c-map-pin__address-line-2
{
	width: auto;
}

.c-map-pin__actions
{
	display: flex;

	width: 100%;

	padding: 12px var(--padding-x);

	justify-content: flex-end;
}
.c-menu-item
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	padding: 0;

	font-weight: 500;
	font-size: .95em;

	text-transform: uppercase;

	transition: color 240ms ease;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-menu-item
	{
		background-color: #F3F3F3;
	}

	.c-menu-item--dropdown.c-menu-item--open
	{
		background-color: #000;
	}
}

.c-menu-item:not(:last-child):after
{
	position: absolute;

	height: 30%;
	width: 2px;

	top: 37%;
	right: -4px;

	background-color: #000;

	content: "";
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-menu-item:not(:last-child):after
	{
		content: none;
	}
}

.c-menu-item__link.active:before,
.c-menu-item--active > .c-menu-item__link:before
{
	position: absolute;

	height: 3px;
	width: 100%;

	left: 0;
	bottom: 0;

	background-color: var(--secondary);

	content: "";
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-menu-item__link.active:before,
	.c-menu-item--active > .c-menu-item__link:before
	{
		content: none;
	}
}

.c-menu-item__link,
.c-menu-item__link:hover,
.c-menu-item__link:active,
.c-menu-item__link:focus,
.c-menu-item__link:visited
{
	font-weight: inherit;
	text-decoration: none;
}

.c-menu-item__link
{
	display: flex;

	min-width: 0;

	padding: 10px 8px;

	font-size: 1.05em;
	color: #000;

	text-transform: uppercase;

	border-radius: 0;

	transition: color 240ms ease;

	align-items: center;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-menu-item__link
	{
		width: 100%;

		padding-top: 18px;
		padding-bottom: 18px;

		background-color: white;

		text-align: center;

		justify-content: center;
	}

	.c-menu-item:nth-child(odd) .c-menu-item__link
	{
		background-color: #F3F3F3;
	}
}

.c-menu-item--dropdown .c-menu-item__link:after
{
	position: relative;

	height: 1em;
	width: 1em;

	top: -2px;
	margin-left: 8px;

	font-size: 10px;

	content: "";

	border-width: 0 2px 2px 0;
	border-style: solid;
	border-color: currentColor;

	transition: transform 240ms ease;
	transform: rotate(45deg);
}

.c-menu-item--open.c-menu-item--dropdown .c-menu-item__link:after
{
	transform: rotate(-135deg) translate3d(-4px, -2px, 0);
}

.c-menu-item__icon
{
	font-size: 1.3rem;
}

.c-menu-item__menu
{
	position: absolute;
	display: flex;
	visibility: hidden;
	opacity: 0;

	flex-direction: column;

	top: 100%;
	left: 0;

	background-color: #FFF;

	color: #000;

	border-radius: 8px;

	box-shadow: var(--paper);

	transition: opacity 240ms ease, transform 320ms ease, visibility 240ms ease;
	transform: translateY(12px);
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-menu-item__menu
	{
		opacity: 0;

		width: calc(100% - 12px);

		margin: 0 auto 4px;

		border-top-left-radius: 0;
		border-top-right-radius: 0;
		border: 3px solid #000;
		border-top: none;

		box-shadow: none;

		transition: none;
		transform: none;
	}
}

.c-menu-item--open .c-menu-item__menu
{
	visibility: visible;
	opacity: 1;

	transform: translateY(6px);
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-menu-item--open .c-menu-item__menu
	{
		position: static;
		visibility: visible;
		opacity: 1;

		transform: none;
	}
}

.c-menu-item__subitem
{
	position: relative;
}

.c-menu-item__subitembefore,
.c-menu-item--a
{
	position: relative;
}

.c-menu-item__subitem:before
{
	position: absolute;
	opacity: 0;

	height: 1em;
	width: 4px;

	top: 50%;
	margin-top: -.5em;
	left: 14px;

	background-color: currentColor;

	font-size: 26px;

	content: "";

	border-radius: 8px;
}

.c-menu-item__subitem:first-child:not(:only-child):before
{
	margin-top: calc(-.5em + 5px);
}

.c-menu-item__subitem:last-child:not(:only-child):before
{
	margin-top: calc(-.5em - 4px);
}

.c-menu-item__subitem.active:before,
.c-menu-item__subitem:hover:before
{
	opacity: 1;
}

.c-menu-item__subitem-link,
.c-menu-item__subitem-link:hover,
.c-menu-item__subitem-link:active,
.c-menu-item__subitem-link:focus,
.c-menu-item__subitem-link:visited
{
	color: inherit;
	text-decoration: none;
}

.c-menu-item__subitem-link
{
	display: flex;

	min-height: 2.8em;
	width: 100%;

	padding: 8px 20px;

	white-space: nowrap;

	transition: transform 240ms ease;
	transform: translateX(0);

	align-items: center;
}

:first-child > .c-menu-item__subitem-link
{
	padding-top: 16px;
}

:last-child > .c-menu-item__subitem-link
{
	padding-bottom: 16px;
}

.c-menu-item__subitem-link:hover,
.active > .c-menu-item__subitem-link
{
	transform: translateX(8px);
}
.c-message
{
	display: flex;

	line-height: 1.5em;
	width: 100%;

	padding: 6px 12px;

	background-color: #F0F0F0;

	font-size: .95rem;
	color: #353535;

	border-radius: 6px;

	align-items: center;
}

.c-message--center-msg
{
	text-align: center;

	justify-content: center;
}

.c-message--icon
{
	padding: 8px 12px;
}

.c-message--smaller
{
	padding: 8px 10px;

	font-size: .95em;
}

.c-message--no-margin,
.c-message--no-margins
{
	margin-top: 0;
	margin-bottom: 0;
}

.c-message--green
{
	background-color: #E7F1EF;

	color: #000;
}

.c-message--red
{
	background-color: #F4DDDD;

	color: #C00506;
}

.c-message--orange
{
	background-color: #FFF6E5;

	color: #DC8C00;
}

.c-message--blue
{
	background-color: #E4F6FF;

	color: #000;
}

.c-message--primary
{
	background-color: #006EB2;

	color: #006EB2;
}

.c-message__content
{
	line-height: 1.4;

	padding: 6px 0;

	font-weight: 500;
	color: inherit;
}

.c-message__icon
{
	margin-top: 2px;
	margin-right: 12px;
	margin-left: 4px;
	margin-bottom: 2px;
	padding: 4px;

	font-size: 32px;

	border-radius: 50%;
	border: 2px solid currentColor;

	flex-shrink: 0;
}

.c-message--no-icon-border .c-message__icon
{
	padding: 0;

	border-radius: 0;
	border: none;
}

.c-message--green .c-message__icon
{
	font-size: 32px;
	color: #5B9A8D;
}

.c-message--blue .c-message__icon
{
	font-size: 32px;
	color: #09AFF6;
}

.c-message__link
{
	line-height: 1;

	color: var(--primary);
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, currentColor 0 1.5px 0 0;
}

.c-message a:not([class]),
.c-message__link
{
	font-weight: 600;
	color: inherit;
}

.c-message a:not([class]):hover,
.c-message__link:hover
{
	text-decoration: none;
}

.c-message__text
{
	font-weight: 400;
}

.c-message strong
{
	font-weight: 600;
}

.c-message--icon strong
{
	font-weight: 800;
}

.c-message__underlined
{
	display: inline;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, currentColor 0 2px 0 0;
}
.c-modal-cover
{
	position: fixed;
	display: flex;

	flex-direction: column;

	height: 100%;
	max-height: none;
	width: 100%;
	max-width: none;

	margin: 0;
	top: 0;
	left: 0;
	padding: 0;

	background: none;

	border: none;

	outline: none;

	z-index: 1336;

	justify-content: center;
	align-items: center;
}

.c-modal-cover:before
{
	position: absolute;
	opacity: 1;

	height: 100%;
	width: 100%;

	right: 0;
	left: 0;

	background-color: rgb(51 49 59 / 80%);

	content: "";

	transition: opacity 420ms ease;
	transform: translateZ(0);
	animation: cover-animation 340ms ease;

	z-index: 0;
}

.c-modal-cover--image:before
{
	background-color: rgb(51 49 59 / 40%);
}

.c-modal-cover--fade:before
{
	opacity: 0;
}

.c-modal
{
	position: relative;
	display: flex;

	flex-direction: column;

	height: auto;
	max-height: 100%;
	width: 700px;
	max-width: 100%;

	top: 0;
	left: 0;

	background-color: #FFF;

	border-radius: 4px;

	box-shadow: 10px 10px 0 0 #9C99A2;

	overflow: hidden;

	z-index: 1;
}

.c-modal--simple
{
	box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, .35);
}

.c-modal--large
{
	width: 1600px;
}

.c-modal--image
{
	height: 100vh;
}

.c-modal--image:not(.c-modal--width-auto)
{
	width: calc(100vw - 2em);
}

.c-modal--medium
{
	width: 650px;
}

.c-modal--intermediate
{
	width: 1050px;
}

.c-modal--fullscreen
{
	width: 100%;
}

.c-modal--full-width
{
	width: 100%;
}

.c-modal--fullscreen
{
	min-height: 100vh;
}

.c-modal--fade
{
	opacity: 0;

	transition: transform 420ms ease, opacity 420ms ease;
	transform: translate3d(-10px, -6px, 0);
}

/* ------------------ Mobile ------------------ */
@media (max-width: 767px)
{
	.c-modal
	{
		max-width: 100%;
	}
}

@media screen and (min-width: 767px)
{
	.c-modal
	{
		max-height: calc(100% - 3em);

		animation: box-animation 340ms ease;
	}

	.c-modal--image
	{
		max-height: calc(100% - 2em);
	}

	.c-modal--editor
	{
		max-height: calc(100vh - 30px);
	}

	.c-modal--files
	{
		max-height: calc(100vh - 200px);
	}
}

@media screen and (max-width: 639px)
{
	.c-modal
	{
		animation: mobile-box-animation 320ms ease;
	}

	.c-modal--fade
	{
		opacity: 0;

		transition: opacity 320ms ease, transform 320ms ease;
		transform: scale(.9);
	}
}

/* ------------ Tablet (portrait) ------------- */
@media (min-width: 768px) and (max-width: 1023px)
{
	.c-modal--large,
	.c-modal--intermediate
	{
		max-width: 90%;
	}

	.c-modal--medium
	{
		max-width: 80%;
	}
}

/* ------------ Tablet (landscape) ------------ */
@media (min-width: 1024px) and (max-width: 1325px)
{
	.c-modal--large,
	.c-modal--intermediate
	{
		max-width: 80%;
	}
}

/* ----------------- Laptop ------------------- */
@media (min-width: 1326px) and (max-width: 1399px)
{
	.c-modal--large,
	.c-modal--intermediate
	{
		max-width: 85%;
	}

	.c-modal--medium
	{
		max-width: 70%;
	}
}

.c-modal__header
{
	position: relative;
	display: flex;

	min-height: 45px;
	width: 100%;

	margin-bottom: 0;
	padding: 12px 20px;
	padding-right: 46px;

	background-color: hsla(240, 5%, 95%, 1);

	font-weight: 700;
	color: #000;

	text-transform: uppercase;

	flex-shrink: 0;
	align-items: center;
}

.c-modal__close
{
	position: absolute;
	display: flex;

	height: 45px;
	width: 46px;

	top: 0;
	right: 0;

	background: transparent;

	color: #E93339;

	cursor: pointer;

	transition: background-color 320ms ease;

	align-items: center;
	justify-content: center;
}

.c-modal--floating-close .c-modal__close
{
	top: 6px;
	right: 8px;

	background-color: #FFF;

	border-radius: 50%;
}

.c-modal__close:hover,
.c-modal__close:focus
{
	background-color: #E4E4E7;
}

.c-modal__close:focus:before
{
	position: absolute;
	display: block;

	height: 2px;
	width: 1.4em;

	top: 50%;
	margin-top: .7em;
	left: 50%;
	margin-left: -.7em;

	content: "";

	border: 2px solid #E93339;
	border-width: 0 0 2px 2px;
}

.c-modal__close-icon
{
	height: 1em;
	width: 1em;

	font-size: 32px;

	fill: transparent;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 3px;
}

.c-modal__body
{
	width: 100%;

	padding: 20px 25px 5px;

	overflow-y: auto;

	flex-grow: 1;
}

.c-modal__body:nth-last-child(2)
{
	padding-bottom: 20px;
}

.c-modal__body:empty
{
	display: none;
}

.c-modal--center .c-modal__body
{
	text-align: center;

	justify-content: center;
	align-items: center;
}

.c-modal--fullscreen .c-modal__body
{
	display: flex;

	flex-direction: column;

	padding-bottom: 15px;
}

.c-modal--image .c-modal__body
{
	display: flex;

	flex-direction: column;

	height: 100%;

	padding: 0;

	overflow-y: auto;
}

@media screen and (max-width: 639px)
{
	.c-modal__body
	{
		padding: 10px 10px 0;
	}
}

.c-modal__img
{
	display: block;

	height: 100%;
	max-height: 100%;
	width: 100%;

	font-family: "object-fit: contain; object-position: center";

	object-fit: contain;
	object-position: center;
}

.c-modal__controls
{
	display: flex;

	flex-wrap: wrap;
	gap: 15px 25px;

	padding: 20px 25px;

	align-items: center;
	justify-content: flex-end;
	flex-shrink: 0;
}

.c-modal__controls:empty
{
	display: none;
}

@media screen and (max-width: 639px)
{
	.c-modal__controls
	{
		padding: 12px 10px;
	}
}

.c-modal__controls-close
{
	order: -1;
}

@keyframes box-animation
{
	0%
	{
		opacity: 0;

		transform: translate3d(0, 0, 0);
	}

	20%
	{
		opacity: 0;

		transform: translate3d(-10px, -6px, 0);
	}

	100%
	{
		opacity: 1;

		transform: translate3d(0, 0, 0);
	}
}

@keyframes mobile-box-animation
{
	0%
	{
		opacity: 0;

		transform: scale(.9);
	}

	20%
	{
		opacity: 0;

		transform: scale(.9);
	}

	100%
	{
		opacity: 1;

		transform: scale(1);
	}
}

@keyframes cover-animation
{
	0%
	{
		opacity: 0;
	}

	100%
	{
		opacity: 1;
	}
}
.c-model-picker
{
	width: 100%;
}

.c-model-picker--50\%
{
	width: 33.1%;

	flex-grow: 1;
}

.c-model-picker--33\%
{
	width: 25.1%;

	flex-grow: 1;
}

.c-model-picker--25\%
{
	width: 20.1%;

	flex-grow: 1;
}

.c-model-picker--75\%
{
	width: 51.1%;

	flex-grow: 1;
}

.c-model-picker__wrapper
{
	position: relative;
	display: flex;

	align-items: stretch;
}

.c-model-picker__toggle
{
	position: relative;
	display: flex;

	width: 38px;

	text-align: center;

	border-top-right-radius: var(--input-radius);
	border-bottom-right-radius: var(--input-radius);

	overflow: hidden;

	z-index: 1;

	flex-shrink: 0;
	align-items: center;
	justify-content: center;
}

.c-model-picker__toggle:disabled
{
	cursor: default;
}

.c-model-picker__toggle:after
{
	position: absolute;
	opacity: 0;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	transition: opacity 240ms ease;
}

.c-model-picker__toggle:not(:disabled):hover:after,
.c-model-picker__toggle:not(:disabled):focus:after
{
	opacity: .08;
}

.c-model-picker__toggle-icon
{
	transition: transform 240ms ease;
	transform: rotate(0);
}

.c-model-picker--open .c-model-picker__toggle-icon
{
	transform: rotate(180deg);
}

.c-model-picker__options
{
	position: absolute;
	display: block;
	visibility: hidden;
	opacity: 0;

	height: auto;
	max-height: 35vh;
	width: 100%;

	margin: 0;
	top: 100%;
	margin-top: 1px;
	right: 0;
	left: 0;
	padding: 0;

	background-color: #FFF;

	border-bottom-right-radius: var(--multi-select-radius);
	border-bottom-left-radius: var(--multi-select-radius);
	border: 2px solid #F3F3F3;

	overflow: auto;

	transition: visibility 160ms ease, opacity 160ms ease, transform 220ms ease;
	transform: scale(.95);

	z-index: 10;
}

.c-model-picker__options::empty
{
	visibility: hidden;
}

.c-model-picker__options[aria-hidden="false"]
{
	visibility: visible;
	opacity: 1;

	transform: scale(1);
}

.c-model-picker__item:not(:last-child)
{
	border-bottom: 2px solid var(--input-background);
}

.c-model-picker__item-btn
{
	position: relative;
	display: flex;

	gap: 0 6px;

	min-height: 42px;
	width: 100%;

	padding: 8px 15px;

	text-align: left;

	align-items: center;
	justify-content: flex-start;
}

.c-model-picker__item-btn:disabled
{
	cursor: default;
}

.c-model-picker__item-btn::before
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	content: "";

	z-index: -2;
}

.c-model-picker__item-btn:not(:disabled):hover::before,
.c-model-picker__item-btn:focus::before
{
	background-color: var(--input-background);
}

.c-model-picker__no-result
{
	display: flex;
	opacity: 1;

	gap: 0 8px;

	padding: 8px 10px;

	font-weight: 500;
	font-size: .9rem;
	color: #000;

	text-transform: uppercase;

	align-items: center;
}

.c-model-picker__no-result[data-empty="true"]
{
	font-size: .9rem;
	color: #0C7BD6;
}

.c-model-picker__no-result-icon
{
	font-size: 1.4rem;
	color: inherit;
}

.c-model-picker__no-result[data-empty="true"] .c-model-picker__no-result-icon
{
	display: none;
}
.c-multi-select
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	font-size: 1rem;

	--multi-select-radius: var(--input-radius);
}

.c-multi-select--profile-selection
{
	width: 450px;

	flex-grow: 0;
}

.c-multi-select--50\%
{
	width: 33.1%;

	flex-grow: 1;
}

.c-multi-select__wrapper
{
	position: relative;

	min-height: var(--input-height);
	width: 100%;

	background-color: var(--input-background);

	border-radius: var(--multi-select-radius);
}

.c-multi-select--error .c-multi-select__wrapper
{
	background-color: var(--error-background);
}

.c-multi-select__content
{
	position: relative;
	display: flex;

	padding: 4px 8px;

	align-items: center;
	justify-content: flex-start;
	flex-grow: 1;
}

.c-multi-select__placeholder
{
	position: relative;
}

.c-multi-select__toggle
{
	display: flex;

	width: 32px;

	overflow: hidden;

	z-index: 1;

	flex-shrink: 0;
	flex-grow: 0;
	align-items: center;
	justify-content: center;
}

.c-multi-select__toggle::before
{
	position: absolute;
	opacity: 0;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	border-radius: var(--multi-select-radius);

	transition: opacity 240ms ease;

	z-index: -1;
}

.c-multi-select__toggle:hover::before,
.c-multi-select__toggle:focus::before,
.c-multi-select__toggle:active::before
{
	opacity: .08;
}

.c-multi-select__toggle-icon
{
	font-size: 16px;
	color: inherit;

	transition: transform 240ms ease;
	transform: rotate(0deg);
}

.c-multi-select--open .c-multi-select__toggle-icon
{
	transform: rotate(180deg);
}

.c-multi-select__wrapper
{
	position: relative;
	display: flex;

	justify-content: space-between;
	align-items: stretch;
}

.c-multi-select__placeholder
{
	opacity: .5;

	font-weight: 400;
	font-size: .96rem;
}

.c-multi-select__values
{
	display: block;

	width: 10px;
	min-width: 0;

	text-align: left;
	white-space: nowrap;
	text-overflow: ellipsis;

	overflow: hidden;

	flex-grow: 1;
}

.c-multi-select__options
{
	position: absolute;
	display: block;
	visibility: visible;

	height: auto;
	max-height: 35vh;
	width: 100%;

	margin: 0;
	top: 100%;
	right: 0;
	left: 0;
	padding: 0;

	background-color: #FFF;

	border-bottom-right-radius: var(--multi-select-radius);
	border-bottom-left-radius: var(--multi-select-radius);

	box-shadow: var(--options-shadow);

	overflow: auto;

	z-index: 10;
}

.c-multi-select__options[aria-hidden="true"]
{
	display: none;
	visibility: hidden;
}

.c-multi-select__option
{
	position: relative;
	display: flex;

	gap: 0 6px;

	width: 100%;

	padding: 6px 15px;

	text-align: left;

	align-items: center;
	justify-content: flex-start;
}

.c-multi-select__option:disabled
{
	cursor: default;
}

.c-multi-select__option::before
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	content: "";

	z-index: -2;

	flex-shrink: 0;
}

.c-multi-select__option:not(:disabled):hover::before,
.c-multi-select__option:focus::before
{
	background-color: var(--input-background);
}

.c-multi-select__cb
{
	height: 1em;
	width: 1em;

	font-size: 24px;
	color: transparent;

	border: 2px solid #E3E3E3;

	z-index: -1;

	flex-shrink: 0;
}

.c-multi-select__cb.is-visible
{
	color: inherit;
}
.c-nav-tabs
{
	position: static;

	margin-bottom: 20px;
	padding-top: 10px;
}

.c-nav-tabs__list
{
	display: flex;

	flex-wrap: wrap;
	gap: 18px;

	margin: 0;
	padding: 6px 25px;

	background-color: var(--body-background);

	align-items: stretch;
	justify-content: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-nav-tabs__list
	{
		align-self: flex-start;
		justify-content: flex-start;
	}
}

.c-nav-tabs--fixed .c-nav-tabs__list
{
	position: fixed;

	top: 0;

	background-color: #FFF;

	z-index: 3;
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.c-nav-tabs--fixed .c-nav-tabs__list
	{
		position: static;
	}
}

.c-nav-tabs__item
{
	display: flex;

	min-height: 42px;
}

.c-nav-tabs__link
{
	position: relative;
	display: flex;

	gap: 10px;

	padding: 6px 20px;

	background-color: #FFF;

	border-radius: 4px;

	overflow: hidden;

	transition: transform 240ms ease background-color 240ms ease;

	align-items: center;
}

.c-nav-tabs--fixed .c-nav-tabs__link
{
	background-color: #F3F3F3;
}

.c-nav-tabs__link::after
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	content: "";

	z-index: 1;
}

.c-nav-tabs__link,
.c-nav-tabs__link:visited,
.c-nav-tabs__link:hover
{
	color: #000;
}

.c-nav-tabs__link,
.c-nav-tabs__link:hover,
.c-nav-tabs__link:focus
{
	text-decoration: none;
}

.c-nav-tabs__link:hover
{
	box-shadow: 0 0 0 2px black;
}

.c-nav-tabs__link .p-ink
{
	background-color: rgba(0, 0, 0, .35);
}

.c-nav-tabs__icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 22px;
	color: currentcolor;
}

.c-nav-tabs__icon.icon-myWO
{
	width: 1.1em;

	margin-left: 2px;
	margin-bottom: 2px;

	font-size: 28px;

	transform: scale(1.4) translateY(4px);

	order: 2;
}
.c-page-details
{
	padding: 80px 0;
}

.c-page-details--residence
{
	padding-top: 20px;
}

@media print
{
	.c-page-details--good,
	.c-page-details--residence
	{
		padding-top: 20px;
		padding-bottom: 20px;
	}
}

.c-page-details__container
{
	display: flex;

	flex-wrap: wrap;
	gap: 0 30px;
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.c-page-details__container
	{
		flex-direction: column;
	}
}

@media print
{
	.c-page-details__container
	{
		flex-direction: row;
	}
}

.c-page-details__container-left
{
	flex-basis: 40%;
	flex-grow: 1;
}

.c-page-details__container-right
{
	line-height: 1.8;

	text-align: center;

	flex-basis: 425px;
	flex-grow: 0;
	align-self: start;
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.c-page-details__container-right
	{
		margin-top: 30px;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-details__container-right
	{
		width: 100%;

		flex-basis: auto;
	}
}

@media print
{
	.c-page-details__container-right
	{
		flex-basis: auto;
	}
}

.c-page-details__content
{
	width: 100%;
}

.c-page-details__section
{
	width: 100%;
}

@media print
{
	.c-page-details__section
	{
		break-inside: avoid;
	}
}

.c-page-details__card
{
	display: flex;

	flex-direction: column;
	gap: 10px;

	padding: 40px 50px;

	background-color: var(--secondary);

	font-size: 1.1rem;
	color: #FFF;

	border-radius: 6px;
}

/* ------ Tablet (portrait & landscape) ------- */
@media (min-width: 600px) and (max-width: 1200px)
{
	.c-page-details__card
	{
		flex-direction: row;
		flex-wrap: wrap;
		gap: 20px 25px;

		width: 100%;
	}
}

@media print
{
	.c-page-details__card
	{
		flex-direction: column;

		width: auto;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-details__card
	{
		width: 100%;

		padding: 30px 25px;
	}
}

@media print
{
	.c-page-details__card
	{
		margin-bottom: 15px;
		padding: 30px 25px;

		font-size: 1rem;
	}
}

.c-page-details__title
{
	margin-top: 2rem;
	margin-bottom: 1rem;
}

.c-page-details__el
{
	display: flex;

	gap: 10px 14px;

	align-items: center;
}

.c-page-details__el[data-field="city"]
{
	text-align: left;

	align-items: flex-start;
}

.c-page-details__el.grow
{
	line-height: 1.6;
	width: 100%;
}

.c-page-details__icon-svg
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: 29px;
	color: #FFF;
}

.c-page-details__el[data-field="city"] .c-page-details__icon-svg
{
	position: relative;

	top: 4px;
}

.c-page-details__address-line
{
	line-height: 1.5;
	width: 100%;

	margin: 0;
}

.c-page-details__icon-svg.is-icon-flat_size
{
	font-size: 31px;
}

.c-page-details__label
{
	display: flex;

	gap: 5px;

	font-weight: 600;
	font-size: 1em;

	align-items: flex-start;
}

/* --------- Tablet, Laptop & Desktop --------- */
@media (min-width: 600px)
{
	.c-page-details__label
	{
		white-space: nowrap;
	}
}

.c-page-details__label::after
{
	content: ":";
}

.c-page-details__ul-title
{
	line-height: 1.3;
	width: 100%;

	margin-top: 20px;

	font-weight: 700;
	font-size: 1.1em;

	text-align: left;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-details__ul-title
	{
		font-size: 1em;
	}
}

ul.c-page-details__ul
{
	padding-left: 20px;

	list-style: disc;
}

ul.c-page-details__ul.is-custom-ul
{
	padding-left: 10px;

	list-style: none;
}

.c-page-details__ul.is-page-details-equipments
{
	display: flex;

	flex-wrap: wrap;
	gap: 12px var(--gap-x);

	width: 100%;
	max-width: 100%;

	margin-top: 1.6rem;

	--available-space: calc(100% - var(--total-gap));
	--gap-x: 30px;
	--total-gap: calc(calc(var(--items-count) - 1) * var(--gap-x));
	--items-count: 3;
}

/* ------------ Tablet (portrait) ------------- */
@media (min-width: 600px) and (max-width: 900px)
{
	.c-page-details__ul.is-page-details-equipments
	{
		width: 100%;

		--items-count: 2;
	}
}

.c-page-details__ul.is-page-details-equipments li
{
	flex-basis: calc(calc(1 / var(--items-count)) * var(--available-space));
	flex-grow: 0;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-details__ul.is-page-details-equipments li
	{
		flex-basis: 100%;
	}
}

.c-page-details__li
{
	display: flex;

	gap: 8px;

	align-items: center;
}

.c-page-details__value
{
	font-weight: 300;
	font-size: 1.1em;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-details__value
	{
		font-size: 1em;
	}
}

.c-page-details__smaller-value
{
	font-size: .85em;
}

.c-page-details__value sub,
.c-page-details__value sup
{
	margin-right: 2px;

	font-size: .7em;
}

.front-html-description
{
	line-height: 1.6;
}

.front-html-description > :first-child
{
	margin-top: 0;
}

.front-html-description p
{
	min-height: 0;

	margin-top: 1em;
	margin-bottom: .6em;
}

.front-html-description ul
{
	margin-top: .5em;
}

.c-page-details__certifications
{
	display: flex;

	flex-wrap: wrap;
	gap: 25px 70px;

	margin-top: 20px;

	align-items: flex-end;
}

.c-page-details__certification-logo
{
	display: block;

	height: 90px;
	width: auto;
}

@media print
{
	.c-page-details__certification-logo
	{
		height: 60px;
	}
}

.c-page-details__dpe-img
{
	display: block;

	height: 320px;
	width: auto;
	max-width: 100%;

	object-fit: contain;
}

.c-page-details__share
{
	margin: 0;
}
.c-page-hero
{
	position: relative;
	display: flex;

	flex-direction: column;

	min-height: 45vh;
	width: 100%;

	background-image: url(/images/hero/accession-sociale-dans-le-neuf-1920x588.webp);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;

	color: #FFF;

	z-index: 1;

	align-items: center;
	justify-content: center;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-hero
	{
		min-height: 40vh;
	}
}

@media print
{
	.c-page-hero
	{
		min-height: 0;

		padding-top: 10px;
		padding-bottom: 20px;

		/* background: none !important; */

		/* color: #000; */
	}
}

.c-page-hero::before
{
	position: absolute;
	opacity: .3;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	z-index: -1;
}

/* @media print
{
	.c-page-hero::before
	{
		display: none;
	}
} */

.c-page-hero__content
{
	display: flex;

	flex-direction: column;

	max-width: 80%;

	margin-right: auto;
	margin-left: auto;
	padding: 15px 0;

	align-items: flex-end;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-hero__content
	{
		max-width: 100%;

		padding: 0 15px;
	}
}

/* @media print
{
	.c-page-hero__content
	{
		max-width: 100%;

		padding: 0 15px;
	}
} */

.c-page-hero__title
{
	max-width: 100%;

	margin: 0;
	padding: 10px 15px;

	font-family: "Neo";
	font-weight: 700;
	font-size: 3.5rem;
	color: inherit;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-hero__title
	{
		font-size: 2rem;

		text-align: center;
	}
}

@media print
{
	.c-page-hero__title
	{
		font-size: 2.5rem;
	}
}

.c-page-hero__subtitle
{
	display: inline-flex;

	margin-top: 20px;
	margin-left: auto;
	margin-bottom: 0;

	font-weight: 600;
	font-size: 2rem;
	color: inherit;

	text-transform: uppercase;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-page-hero__subtitle
	{
		margin-top: 35px;
		margin-right: auto;

		font-size: 1.3rem;

		text-align: center;
	}
}
.c-pagination
{
	display: flex;

	margin: 1.5rem 0;
	padding: 0 15px;

	justify-content: space-between;
	align-items: center;
	flex-grow: 1;
	flex-basis: 10px;
}

.c-pagination__left
{
	flex-basis: 130px;
}

.c-pagination__infos
{
	margin-left: 15px;

	font-weight: 400;
	font-size: .95em;

	text-align: right;

	flex-basis: 130px;
}

.c-pagination__pages
{
	display: flex;

	gap: 10px 8px;

	margin: -6px 0 0 0;

	justify-content: center;
	flex-basis: 10px;
	flex-grow: 1;
}

.c-pagination__page
{
	position: relative;
	display: flex;

	height: 1em;
	width: 1em;

	font-size: 34px;
}

.c-pagination__page:last-child
{
	margin-right: 0;
}

.c-pagination__page-btn
{
	position: absolute;
	display: flex;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;
	padding: 4px 8px;

	background-color: #EBEBEB;

	font-weight: 400;
	font-size: .9rem;

	text-align: center;

	border-radius: 50%;

	justify-content: center;
	align-items: center;
}

.c-pagination__page-btn.active
{
	background-color: #E93339;

	color: #FFF;
}

.c-pagination__suspension
{
	display: flex;

	margin: 6px 0 0;

	align-items: center;
}

.c-pagination__suspension:nth-child(2)
{
	margin-right: 8px;
}

.c-pagination__suspension:nth-child(n-2)
{
	margin-right: 6px;
}
.c-paper
{
	position: relative;

	width: 100%;
	max-width: 100%;

	margin: auto;
	padding: 12px 15px;

	background-color: #FFF;

	border-radius: 4px;

	box-shadow: 0 3px 6px 2px rgb(0 0 0 / 4%);
}

.c-paper--intervention-form
{
	margin-top: 20px;
}

.c-paper--reco-form
{
	min-height: 200px;
}

.c-paper--big-padding
{
	padding: 30px 25px;
}

.c-paper--form
{
	margin-bottom: .5rem;
	padding: 30px 25px;
}

.c-paper--contact-form
{
	line-height: 1.6;
}

.c-paper--no-padding
{
	padding: 0;
}

.c-paper--front
{
	line-height: 2em;
}

.c-paper--modal-label
{
	padding: 8px 0 15px;

	border: 2px solid #DBDBDB;

	box-shadow: none;

	flex-grow: 1;
	flex-basis: 100px;
}
.c-pdf
{
	position: relative;

	font-size: 16px;

	flex-grow: 1;
}

@media print
{
	.c-pdf
	{
		font-size: 14px;
	}
}

.c-pdf__page
{
	display: block;

	flex-direction: column;

	width: 760px;
	max-width: 100%;

	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	padding: 25px 30px;

	border: 1px solid #000;
}

@media print
{
	.c-pdf__page
	{
		margin-top: 0;
		margin-bottom: 0;
		padding: 0 10px;

		border: none;
	}
}

.c-pdf__header
{
	display: flex;

	align-items: center;
	justify-content: space-between;
}

.c-pdf__header-logo
{
	position: relative;
	display: block;

	width: 110px;

	flex-shrink: 0;
}

/* ------------ Tablet (portrait) ------------- */
@media (min-width: 600px) and (max-width: 900px)
{
	.c-pdf__header-logo
	{
		width: 90px;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-pdf__header-logo
	{
		width: 70px;
	}
}

.c-pdf__header-secondlogo-img
{
	display: block;

	height: 106px;
}

.c-pdf__header-logo::before
{
	position: absolute;

	height: 100%;
	width: 108%;

	top: 3%;
	left: 3%;
	bottom: 0;

	background: #DADADA;

	content: "";

	border-radius: 10px;

	transform: rotate(5deg);
	transform-origin: left;

	z-index: -1;
}

.c-pdf__header-logo-img
{
	display: block;

	height: auto;
	width: 100%;
}

.c-pdf__title
{
	display: inline-flex;

	width: auto;

	margin: 0 auto;

	font-size: 1.8em;

	text-align: center;
	text-transform: uppercase;

	box-shadow: 0 3px 0 0 black;
}

.c-pdf__subtitle
{
	display: block;

	width: 100%;

	margin-top: 16px;
	margin-right: auto;
	margin-left: auto;

	font-weight: 400;
	font-size: 1.6em;

	text-align: center;
}

.c-pdf__highlight
{
	width: 100%;

	padding: 12px 30px;

	background: #EDEDED;
}

.c-pdf__text
{
	line-height: 1.6;

	margin: 1em 0;
}

.c-pdf__right-block
{
	display: flex;

	margin-left: auto;

	text-align: right;

	justify-content: flex-end;
}

.c-pdf__right-block__txt
{
	display: flex;

	flex-direction: column;
	gap: 8px;

	margin: 0;

	justify-content: center;
	align-items: center;
}

.c-pdf__signature
{
	display: flex;

	min-height: 200px;

	margin-top: 30px;
	padding: 16px 20px;

	border: 1px solid black;

	justify-content: space-between;
	align-items: flex-start;
}

.c-pdf__underlined
{
	text-decoration: underline;
}
.c-pdf-table
{
	display: flex;

	width: 100%;

	margin: 25px auto;

	text-align: left;

	justify-content: center;
}

.c-pdf-table--executive-table-1 .c-pdf-table__table
{
	width: 660px;
	max-width: 100%;
}

.c-pdf-table__table
{
	border-collapse: collapse;

	border: 1px solid black;
}

.c-pdf-table__row
{
	break-inside: avoid;
}

.c-pdf-table__cell
{
	padding: 8px 12px;

	font-weight: 400;

	border-right: 1px solid black;
	border-bottom: 1px solid black;
}

th.c-pdf-table__cell
{
	background-color: grey;

	font-weight: 600;
	color: #FFF;
}

.c-pdf-table--transparent-header .c-pdf-table__cell
{
	background-color: transparent;

	font-weight: 400;
	color: #000;
}
.c-photos-tiles
{
	width: 100%;

	padding: 60px 0;

	background-color: #EEE;
}

@media print
{
	.c-photos-tiles
	{
		padding: 0;

		background-color: transparent;
	}
}

.c-photos-tiles__title
{
	margin-bottom: 2rem;
}

.c-photos-tiles__item
{
	position: relative;

	border-radius: 6px;

	overflow: hidden;

	z-index: 0;
}

.c-photos-tiles__item::before
{
	display: block;

	width: 100%;

	padding-top: 100%;

	content: "";
}

.c-photos-tiles__item::after
{
	position: absolute;
	display: block;
	display: flex;
	opacity: 0;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-color: rgba(0, 0, 0, 0);

	font-weight: 600;
	font-size: 1.2rem;
	color: #FFF;

	content: "Agrandir la photo";
	text-align: center;
	letter-spacing: .4px;
	text-transform: uppercase;

	border: 8px solid transparent;

	box-shadow: inset 0 0 0 3px transparent;

	transition: all 440ms ease;

	z-index: -1;

	justify-content: center;
	align-items: center;
}

.c-photos-tiles__item:hover::after
{
	opacity: 1;

	background-color: rgba(0, 0, 0, .4);

	box-shadow: inset 0 0 0 3px #FFF;

	transition-duration: 240ms;
}

.c-photos-tiles__img
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	z-index: 0;
	z-index: -1;

	object-fit: cover;
	object-position: center;
}
.c-picked-elements
{
	display: flex;

	flex-wrap: wrap;
	gap: 12px;

	width: 100%;

	flex-grow: 1;
	align-items: flex-end;
}

.c-picked-elements__picker
{
	width: 310px;

	flex-shrink: 0;
}

.c-picked-elements__item
{
	display: inline-flex;

	gap: 0;

	padding: 0 0 0 15px;

	background-color: #F3F3F3;

	border-radius: var(--input-radius);

	overflow: hidden;

	align-items: center;
}

.c-picked-elements__remove
{
	position: relative;

	height: calc(1em + var(--padding-y) + var(--padding-y));
	width: calc(1em + var(--padding-x) + var(--padding-x));

	padding: var(--padding-y) var(--padding-x);

	background-color: transparent;

	font-size: 30px;
	color: var(--red);

	overflow: hidden;

	transition: backgrond-color 240ms ease;

	--padding-y: 4px;
	--padding-x: 8px;
}

.c-picked-elements__remove::after
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	content: "";

	z-index: 1;
}

.c-picked-elements__remove:hover
{
	background-color: var(--error-background);
}

.c-picked-elements__remove .p-ink
{
	background-color: rgba(0, 0, 0, .4);
}
.c-popup-element
{
	position: relative;
}

.c-popup-element--remove-fileinput-file
{
	display: flex;

	align-self: stretch;
}

.c-popup-element__popup
{
	position: absolute;
	display: flex;
	visibility: hidden;
	opacity: 0;

	gap: 15px;

	top: 50%;
	left: 50%;
	padding: 8px 12px;

	background-color: #FFF;

	border-radius: 2px;

	box-shadow: 0 3px 6px 2px rgb(0 0 0 / 12%);

	transition-timing-function: ease;
	transition-duration: 260ms;
	transition-property: opacity, visibility, transform;
	transform: scale(1) translateX(-50%) translateY(-50%);
	animation: 260ms popup-appear;

	z-index: 11;

	will-change: opacity, visibility, transform;
}

.c-popup-element__popup.visible
{
	visibility: visible;
	opacity: 1;

	transform: scale(1) translateX(-50%) translateY(-50%);
}

.c-popup-element__popup.without-padding
{
	padding: 0;
}

@keyframes popup-appear
{
	from
	{
		visibility: hidden;
		opacity: 0;

		transform: scale(1) translateX(-50%) translateY(-50%);
	}
	to
	{
		visibility: visible;
		opacity: 1;

		transform: scale(1) translateX(-50%) translateY(-50%);
	}
}
.c-radio-wrapper
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	min-height: 26px;

	align-items: center;
}

.c-radio-wrapper--50\%
{
	flex-basis: 33.1%;
	flex-grow: 1;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-radio-wrapper--50\%
	{
		flex-basis: 100%;
		flex-grow: 0;
	}
}
.c-radio
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 6px;

	overflow: hidden;

	--radio-icon-size: 20px;
}

.c-radio--disabled
{
	opacity: .55;
}

.c-radio--week-day-picker
{
	width: 100%;
}

.c-radio__top-label
{
	width: 100%;
}

.c-radio__content
{
	display: flex;

	align-items: stretch;
}

.c-radio--week-day-picker .c-radio__content
{
	flex-grow: 1;
}

.c-radio__input
{
	position: absolute;

	height: 1px;
	width: 1px;

	top: -100%;

	z-index: -10;
}

.c-radio__label
{
	position: relative;
	display: flex;

	gap: 4px;

	padding: 4px 8px;

	user-select: none;

	border-radius: 4px;

	overflow: hidden;

	transition: background-color 320ms ease;

	align-items: center;
}

.c-radio__label .p-ink
{
	background-color: rgba(0, 0, 0, .35);
}

.c-radio--week-day-picker .c-radio__label
{
	width: 100%;

	background-color: var(--input-background);

	text-align: center;

	border: 2px solid transparent;

	transition: border-color 240ms ease;

	justify-content: center;
}

.c-week-day-picker--error .c-radio__label
{
	background-color: var(--error-background);
}

.c-radio--week-day-picker:not(.c-radio--active) .c-radio__input:focus ~ .c-radio__label,
.c-radio--week-day-picker:not(.c-radio--active) .c-radio__label:hover
{
	border-color: #000;
}

.c-radio__input:focus ~ .c-radio__label
{
	background-color: var(--input-background);
}

.c-radio:not(.c-radio--active) .c-radio__input:not([disabled]) ~ .c-radio__label:hover,
.c-radio:not(.c-radio--active) .c-radio__input:focus:not([disabled]) ~ .c-radio__label:hover
{
	background-color: var(--input-background);

	cursor: pointer;
}

.c-radio--active.c-radio--week-day-picker .c-radio__input:not([disabled]) ~ .c-radio__label,
.c-radio--active.c-radio--week-day-picker .c-radio__input:focus:not([disabled]) ~ .c-radio__label:hover
{
	background-color: var(--primary);

	color: #FFF;
}


.c-week-day-picker--picked-error .c-radio--active .c-radio__input:not([disabled]) ~ .c-radio__label
{
	background-color: #C00506;
}

.c-radio--active.c-radio--week-day-picker .c-radio__input:focus ~ .c-radio__label
{
	text-decoration: underline;
}

.c-radio__icon
{
	display: block;

	height: 1em;
	width: 1em;

	font-size: var(--radio-icon-size);

	order: -2;
}

.c-radio--week-day-picker .c-radio__icon
{
	display: none;
}

.c-radio__label::before
{
	position: relative;
	display: block;

	height: 2.5px;
	width: 12px;

	background-color: var(--primary);

	font-size: var(--radio-icon-size);

	content: "";

	border-radius: 4px;

	order: -1;
}

.c-radio--week-day-picker .c-radio__label::before
{
	display: none;
}

.c-radio--disabled .c-radio__label::before
{
	background-color: currentColor;
}
.c-reco-status
{
	position: relative;
	display: flex;

	gap: 12px;

	margin-top: 0;

	align-items: center;
}

.c-reco-status__label
{
	font-weight: 500;
}
.c-record-details
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 30px;

	width: 100%;

	margin-bottom: 30px;
	padding: 20px 0;
}

.c-record-details__section
{
	display: flex;

	flex-wrap: wrap;
	gap: 20px;

	width: 100%;
}

.c-record-details__section-title
{
	width: 100%;

	margin-bottom: 15px;

	font-weight: 600;
	font-size: 1.8rem;

	text-align: left;

	justify-content: flex-start;
	align-items: flex-start;
}

.c-record-details__section-subtitle
{
	width: 100%;

	margin-top: 0;
	margin-bottom: 0;

	font-weight: 600;
	font-size: 1.8rem;

	text-align: left;

	justify-content: flex-start;
	align-items: flex-start;
}

.c-record-details__section-fields
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 20px;

	width: 100%;
}

.c-record-details__section-fields + .c-record-details__section-fields
{
	margin-top: 28px;
}

.c-record-details__section-fields + .c-record-details__section-fields::before
{
	position: absolute;

	height: 6px;
	width: 1em;

	top: -28px;
	left: 50%;
	margin-left: -.5em;

	background-color: var(--primary);

	font-size: 120px;

	content: "";

	border-radius: 6px;
}

.c-record-details__field
{
	display: flex;

	flex-direction: column;

	flex-basis: calc(33.33% - 15px);
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-record-details__field
	{
		flex-basis: 100%;
	}
}

.c-record-details__field-label
{
	display: flex;

	padding: 6px 8px;

	background-color: #E4E4E4;

	font-weight: 600;
	color: #000;

	text-align: left;

	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	border: 2px solid #E4E4E4;

	align-items: center;
	justify-content: flex-start;
}

.c-record-details__field-value
{
	position: relative;
	display: flex;

	padding: 6px 10px;

	background-color: #FFF;

	text-align: left;

	border: 2px solid #E4E4E4;
	border-width: 0 2px 2px 2px;

	align-items: center;
	justify-content: flex-start;
}

.c-record-details__field.field-job .c-record-details__field-value
{
	gap: 12px;

	align-items: flex-end;
}

.c-record-details__field.is-file .c-record-details__field-value
{
	flex-direction: column;
	row-gap: 12px;

	align-items: flex-start;
}

.c-record-details__field-validate
{
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	margin-top: 10px;
}

.c-record-details__job-section
{
	display: flex;

	gap: 25px;

	align-items: flex-end;
}
.c-record-interventions
{
	width: 100%;
}

.c-record-interventions__history
{
	display: flex;

	flex-direction: column;
	gap: 12px;

	width: 100%;

	margin-top: 20px;
}
.c-scroll-indicator
{
	position: fixed;
	visibility: hidden;
	opacity: 0;

	height: 1em;
	width: 1em;

	right: 20px;
	bottom: 20px;

	background-color: hsl(0deg 0% 96.21% / 96%);

	font-size: 50px;
	color: var(--orange);

	border-radius: 50%;

	box-shadow: 0 0 10px 1px rgb(0 0 0 / 12%);

	transition: visibility 240ms ease, opacity 240ms ease, background-color 240ms ease;
	animation: animation 1600ms ease infinite;

	fill: #FFF;
}

.c-scroll-indicator--back-to-top
{
	color: var(--orange);

	fill: var(--primary);
}

/* -------- Mobile -------- */
@media (max-width: 639px)
{
	.c-scroll-indicator
	{
		right: 10px;
		bottom: 10px;
	}
}

.c-scroll-indicator:hover
{
	background-color: var(--primary);
}

.c-scroll-indicator--back-to-top:hover
{
	background-color: rgb(0 0 0 / 8%);
}

.c-scroll-indicator--visible
{
	visibility: visible;
	opacity: 1;
}

.c-scroll-indicator__svg
{
	position: absolute;

	top: 50%;
	margin-top: -.5em;
	left: 50%;
	margin-left: -.5em;

	font-size: 32px;
}

.c-scroll-indicator--back-to-top .c-scroll-indicator__svg
{
	margin-top: -.55em;

	font-size: 28px;
}

/* -------- Mobile -------- */
@media (max-width: 639px)
{
	.c-scroll-indicator__svg
	{
		font-size: 26px;
	}

	.c-scroll-indicator--back-to-top .c-scroll-indicator__svg
	{
		font-size: 22px;
	}
}

@keyframes animation
{
	0%
	{
		transform: scale(1);
	}

	50%
	{
		transform: scale(1.07);
	}

	100%
	{
		transform: scale(1);
	}
}
.c-select
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	width: 100%;

	font-size: 1rem;
}

.c-select--inline
{
	flex-wrap: nowrap;
}

.c-select--50\%
{
	width: 33.1%;

	flex-grow: 1;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.c-select--50\%
	{
		width: 67%;

		flex-grow: 1;
	}
}

.c-select__select-wrapper
{
	position: relative;

	width: 100%;

	background-color: var(--input-background);

	border-radius: var(--input-radius);
}

.c-select__select
{
	position: relative;
	display: flex;

	height: 32px;
	width: 100%;

	padding: 0 8px;

	background-color: transparent;

	font-family: inherit;
	font-size: 1em;

	text-align: left;

	border-radius: var(--input-radius);
	border: 2px solid transparent;

	outline: none;

	z-index: 2;

	align-items: center;
	justify-content: flex-start;
}

.c-select__select:not(:disabled)
{
	cursor: pointer;
}

.c-select__select:focus
{
	border-color: #000;

	outline: none;
}

.c-select--error .c-select__select-wrapper
{
	background-color: var(--error-background);
}

.c-select--disabled .c-select__select-wrapper
{
	background-color: #EBEBEB;
}

.c-select--disabled .c-select__select
{
	color: #ADADAD;
}

.c-select option[value=""]
{
	display: none;
}
.c-shared-file
{
	margin: 15px 0;

	background-color: #EFEFEF;
}

.c-shared-file__label
{
	padding: 10px 15px;

	background-color: var(--primary);

	font-weight: 400;
	font-size: 1.25rem;
	color: #FFF;

	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}

.c-shared-file__files
{
	display: flex;

	flex-wrap: wrap;
	gap: 15px;

	padding: 16px 15px;
}
.c-simple-pdf-table
{
	width: 100%;

	overflow: auto;
}

.c-simple-pdf-table__table
{
	width: 100%;

	border-collapse: collapse;
}

.c-simple-pdf-table__row
{
	break-inside: avoid;
}

.c-simple-pdf-table__cell
{
	height: 42px;

	padding: 6px 12px;

	border: 1px solid #000;
}
.c-social-share
{
	position: relative;

	width: auto;
	max-width: 100%;
}

.c-social-share__ul
{
	display: flex;

	flex-wrap: wrap;
	gap: 16px;
}

.c-social-share__item
{
	display: flex;

	align-items: center;
}

.c-social-share__link
{
	display: flex;

	gap: 8px;

	color: #000;
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, transparent 0 1.5px 0 0;

	transition: box-shadow 240ms ease;

	align-items: center;
}

.c-social-share__link:hover
{
	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, currentColor 0 1.5px 0 0;
}

.c-social-share__icon
{
	font-size: 22px;
}

.c-social-share__link[data-social="facebook"]  .c-social-share__icon
{
	font-size: 26px;
	color: rgb(8, 102, 255);
}

.c-social-share__link[data-social="twitter"]  .c-social-share__icon
{
	color: #000;
}

.c-social-share__link[data-social="linkedin"]  .c-social-share__icon
{
	font-size: 25px;
	color: #0065C0;
}
.c-stat-card
{
	display: inline-flex;

	flex-direction: column;
	gap: 25px;

	width: 380px;
	max-width: 100%;

	padding: 40px 40px;

	background-color: var(--card-color);

	color: #FFF;

	text-align: center;

	border-radius: 6px;

	box-shadow: 0 2px 16px 2px #CECECE;

	align-items: center;
}

.c-stat-card--primary
{
	--card-color: var(--primary);
}

.c-stat-card--secondary
{
	--card-color: var(--secondary);
}

.c-stats-card__label
{
	font-weight: 600;
	font-size: 1.4rem;

	text-transform: uppercase;
}

.c-stat-card__number
{
	display: flex;

	height: var(--size);
	width: var(--size);

	background-color: #FFF;

	font-weight: 800;
	font-size: 3rem;
	color: var(--card-color);

	text-align: center;

	border-radius: 50%;

	--size: 60px;
	align-items: center;
	justify-content: center;
}
.c-status-picker
{
	position: relative;
	display: inline-flex;

	width: auto;
	min-width: 210px;

	padding: 2px 0 6px;

	z-index: 100;

	flex-shrink: 0;
}

.c-status-picker__options
{
	display: block;

	min-width: 180px;

	margin: 0;
	padding: 0;
}
.c-styled-btn
{
	position: relative;
	display: flex;

	padding: 8px 12px;

	color: var(--black);

	flex-shrink: 0;
	align-items: center;
}

.c-styled-btn::after
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	z-index: 10;
}

.c-styled-btn--inline
{
	padding: 0;
}

.c-styled-btn--pickable
{
	width: 100%;

	padding: 10px 16px;

	white-space: nowrap;

	border-radius: 0;

	overflow: hidden;

	justify-content: left;
}

.c-styled-btn--pickable:focus
{
	background-color: #FFF6CF;
}

.c-styled-btn--selected
{
	color: #FFF;

	cursor: default;
}

.c-styled-btn--project-status-filter
{
	min-width: 120px;
}

.c-styled-btn--red .c-styled-btn__txt:before
{
	color: var(--red);
}

.c-styled-btn--pink .c-styled-btn__txt:before
{
	color: #FF92DD;
}

.c-styled-btn--red.c-styled-btn--selected
{
	background-color: var(--red);
}

.c-styled-btn--pink.c-styled-btn--selected
{
	background-color: #FFD1F1;

	color: #000;
}

.c-styled-btn--primary .c-styled-btn__txt:before
{
	color: var(--primary);
}

.c-styled-btn--primary.c-styled-btn--selected
{
	background-color: var(--primary);
}

.c-styled-btn--secondary .c-styled-btn__txt:before
{
	color: var(--secondary);
}

.c-styled-btn--secondary.c-styled-btn--selected
{
	background-color: var(--secondary);
}

.c-styled-btn--orange.c-styled-btn--selected
{
	background-color: var(--orange);
}

.c-styled-btn--gray .c-styled-btn__txt:before
{
	color: #E0E0E0;
}

.c-styled-btn--gray.c-styled-btn--selected
{
	background-color: #E0E0E0;

	color: #000;
}

.c-styled-btn--pickable::after
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	content: "";

	z-index: 10;
}

.c-styled-btn--selected .c-styled-btn__txt:before
{
	color: #FFF;
}

.c-styled-btn__icon
{
	margin-right: 10px;

	font-size: 32px !important;
	color: inherit;
}

.c-styled-btn__txt
{
	display: flex;

	color: inherit;

	align-items: center;
}

.c-styled-btn__txt:before
{
	display: block;

	height: 1em;
	width: 1em;

	margin-right: 8px;

	background-color: currentColor;

	font-size: 10px;

	content: "";

	border-radius: 50%;

	flex-shrink: 0;
}
.c-table-btn
{
	position: relative;
	display: flex;

	gap: var(--gap);
	--gap: 4px;

	height: auto;
	min-width: 90px;

	margin-left: auto;
	padding: 2px 12px;

	background-color: #E0E0E0;

	font-weight: 500;
	font-size: .9rem;
	color: #000;

	text-align: center;
	letter-spacing: .5px;
	text-transform: uppercase;

	border-top-right-radius: var(--border-radius);
	border-bottom-right-radius: var(--border-radius);

	transition: opacity 240ms ease;

	--icon-size: 22px;
	order: 10;
	align-self: stretch;
	align-items: center;
	justify-content: center;
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.c-table-btn
	{
		min-height: 44px;
		min-width: 150px;
		max-width: 100%;

		margin-top: .5rem;
		margin-right: auto;
		margin-left: auto;
		margin-bottom: .5rem;
		padding: 10px 20px;

		border-radius: var(--border-radius);
	}
}

.c-table-btn--smaller-icon
{
	--icon-size: 18px;
}

.c-table-btn--in-cell
{
	width: 100%;

	margin: 0;

	background-color: transparent;
}

.c-table-btn--in-cell:hover
{
	background-color: transparent;
}

.c-table-btn--inside
{
	min-height: 34px;

	margin: 0;
	padding: 6px 16px;

	border-radius: var(--border-radius);

	align-self: center;
}

.c-table-btn--blue
{
	background-color: var(--blue);

	color: #FFF;
}

.c-table-btn--red
{
	background-color: var(--red);

	color: #FFF;
}

.c-table-btn--green
{
	background-color: var(--green);

	color: #FFF;
}

.c-table-btn--white
{
	background-color: #FFF;

	color: #000;
}

.c-table-btn__label
{
	transition: transform 200ms ease;
	transform: translateX(calc(-1 * calc(calc(var(--gap) / 2) + calc(var(--icon-size) / 2 ))));
}

.c-table-btn--in-cell .c-table-btn__label
{
	transform: translateX(-3px);
}


.c-table-btn,
.c-table-btn:hover,
.c-table-btn:focus,
.c-table-btn:active
{
	text-decoration: none;
}

.c-table-btn:hover:not(:disabled) .c-table-btn__label,
.c-table-btn:focus:not(:disabled) .c-table-btn__label,
.c-table-btn:active:not(:disabled) .c-table-btn__label
{
	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, var(--primary) 0 1.5px 0 0;

	transform: translateX(-3px);
}

@media (pointer: coarse)
{
	.c-table-btn__label
	{
		transform: translateX(-3px);
	}
}

.c-table-btn__icon
{
	display: block;
	opacity: 0;

	height: 1em;
	width: 1em;

	font-size: var(--icon-size);

	transition: transform 200ms ease, opacity 200ms ease;
	transform: translateX(-.5em);
}

@media (pointer: coarse)
{
	.c-table-btn__icon
	{
		opacity: 1;

		transform: translateX(-1px);
	}
}

.c-table-btn:hover:not(:disabled) .c-table-btn__icon,
.c-table-btn:focus:not(:disabled) .c-table-btn__icon,
.c-table-btn:active:not(:disabled) .c-table-btn__icon
{
	opacity: 1;

	transform: translateX(-1px);
}

.c-table-btn--in-cell .c-table-btn__icon
{
	opacity: 1;

	transform: translateX(-1px);
}
.c-table
{
	height: 1px;
	min-height: 68px;
	width: 100%;

	margin-right: auto;
	margin-left: auto;

	border-collapse: collapse;
}

.c-table__table
{
	padding: 0;

	background-color: #FFF;

	border-collapse: collapse;

	border-radius: 4px;
	border: none;

	box-shadow: var(--paper);

	flex-grow: 1;
}

.c-table__th
{
	border-bottom: 1.5px solid #ECECEC;
}

.c-table__row:hover
{
	background-color: rgb(200 200 200 / 20%);
}

.c-table__cell
{
	width: 30px;

	padding: 8px 14px;

	text-align: left;
	white-space: nowrap;

	border-right: 1.5px solid #ECECEC;
	border-left: 1.5px solid #ECECEC;
}

th.c-table__cell
{
	padding-top: 8px;
	padding-bottom: 8px;

	font-size: .9rem;

	text-transform: uppercase;
}

.c-table__cell[class$="-_link"]
{
	min-width: 120px;

	padding-top: 0;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 0;
}

.c-table__cell:first-child
{
	border-left: none;
}

.c-table__cell:last-child
{
	border-right: none;
}

.c-table__cell.User-login,
.c-table__cell.User-name
{
	width: 65%;
}

.c-table__cell.User-name
{
	white-space: normal;
}

.c-table__cell-full-height-hack
{
	display: flex;

	height: 100%;
	width: 100%;

	overflow: auto;
}

.c-table__cell.Good-enabled
{
	padding-top: 2px;
	padding-bottom: 2px;
}

.c-table__cell.Good-_residence\.name
{
	width: 50%;
}

.c-table__cell.Residence-enabled
{
	padding-top: 2px;
	padding-bottom: 2px;

	text-align: center;
}

.c-table__cell.Residence-name
{
	width: 50%;
}

.c-table__cell.Equipment-name
{
	width: 65%;
}

.c-table__cell.Equipment-type
{
	width: 35%;
}

.c-table__cell.MyRecord-created_at
{
	width: 90%;
}





/* ------------------------------------ */
/* -------------- Record -------------- */
/* ------------------------------------ */
.c-table__cell.Record-_name
{
	width: 50%;
}

.c-table__cell.Record-status
{
	text-align: center;
}





/* ------------------------------------ */
/* ------------ ContactForm ----------- */
/* ------------------------------------ */

.c-table__cell.ContactForm-processed_date
{
	width: 60px;

	text-align: center;
}

.c-table__cell.ContactForm-name,
.c-table__cell.ContactForm-email
{
	width: 30%;
}

.c-table__cell.ContactForm-_link
{
	text-align: center;
}
.c-tel-langs
{
	display: flex;

	min-height: var(--input-height);

	--tel-langs-radius: var(
	--input-radius);
	--tel-langs-background: var(
	--input-background);
	align-items: stretch;
	--tel-langs-padding-left: 12px;
	--tel-langs-radius: var(
	--input-radius);
}

.c-tel-langs__toggle
{
	position: relative;
	display: flex;

	gap: 0 6px;

	padding: 0 calc(var(--tel-langs-padding-left) - 4px) 0 var(--tel-langs-padding-left);

	background-color: var(--tel-langs-background);

	border-radius: var(--tel-langs-radius);

	align-items: center;
}

.c-tel-langs__toggle::before
{
	position: absolute;
	opacity: 0;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	border-radius: var(--tel-langs-radius);

	transition: opacity 240ms ease;
}

.c-tel-langs__toggle:hover::before,
.c-tel-langs__toggle:focus::before
{
	opacity: .08;
}

.c-tel-langs__icon
{
	font-size: 24px;
}

.c-tel-langs__toggle-icon
{
	font-size: 16px;

	transition: transform 240ms ease;
}

.c-tel-langs--open .c-tel-langs__toggle-icon
{
	transform: rotate(180deg);
}

.c-tel-langs__options
{
	position: absolute;
	display: block;
	visibility: visible;

	height: auto;
	max-height: 35vh;
	width: 100%;

	margin: 0;
	top: 100%;
	right: 0;
	left: 0;
	padding: 0;

	background-color: #FFF;

	border-bottom-right-radius: var(--tel-langs-radius);
	border-bottom-left-radius: var(--tel-langs-radius);

	box-shadow: 0 6px 6px 2px rgb(0 0 0 / 4%);

	overflow: auto;

	z-index: 10;
}

.c-tel-langs__options[aria-hidden="true"]
{
	display: none;
	visibility: hidden;
}

.c-tel-langs__item
{
	position: relative;
}

.c-tel-langs__option
{
	position: relative;
	display: flex;

	gap: 0 8px;

	width: 100%;

	padding: var(--tel-langs-padding-left) 12px;

	text-align: left;

	align-items: center;
	justify-content: flex-start;
}

.c-tel-langs__option::before
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	content: "";

	z-index: -2;
}

.c-tel-langs__option:hover::before,
.c-tel-langs__option:focus::before
{
	background-color: var(--input-background);
}

.c-tel-langs__cb
{
	height: 1em;
	width: 1em;

	font-size: 24px;
	color: transparent;

	border: 2px solid #E3E3E3;

	z-index: -1;
}

.c-tel-langs__cb.is-visible
{
	color: inherit;
}
.c-text-editor
{
	flex-grow: 1;
}

.c-text-editor--100\%
{
	width: 100%;
}
.c-textarea
{
	width: 100%;

	font-size: 1rem;
}

.c-textarea__content
{
	position: relative;
	display: flex;

	min-height: 120px;
	width: 100%;

	background-color: var(--input-background);

	border-radius: var(--input-radius);

	align-items: stretch;
}

.c-textarea--error .c-textarea__content
{
	background-color: var(--error-background);
}

.c-textarea--disabled .c-textarea__content
{
	color: #ABABAB;
}

.c-textarea--disabled .c-textarea__content *
{
	outline: none !important;
}

.c-textarea__content > div[contenteditable]
{
	position: relative;

	width: 100%;

	padding: 8px 12px;

	outline: none;

	z-index: 1;
}

.c-textarea__content > div[contenteditable] > :first-child
{
	margin-top: 0;
}

.c-textarea__content > div[contenteditable] > :last-child
{
	margin-bottom: 0;
}

.c-textarea__content > div[contenteditable] ~ .c-textarea__border
{
	position: absolute;
	visibility: hidden;
	opacity: 0;

	height: calc(100% + 8px);
	width: calc(100% + 8px);

	top: -4px;
	left: -4px;

	border-radius: 4px;
	border: 2px solid #000;

	transition-timing-function: ease;
	transition-duration: 200ms;
	transition-property: height, width, opacity, visibility, top, left;

	z-index: 0;
}

.c-textarea__content > div[contenteditable]:focus ~ .c-textarea__border
{
	visibility: visible;
	opacity: 1;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;
}

.c-textarea--disabled .c-textarea__border
{
	display: none;
}
.c-tile
{
	position: relative;
	display: flex;

	flex-direction: column;
	gap: 35px;

	width: 400px;
	max-width: 100%;

	margin: auto;
	padding: 20px 50px;

	color: #000;

	border-radius: 8px;

	box-shadow: var(--paper);

	overflow: hidden;
}

.c-tile--page-error
{
	width: 550px;
}

.c-tile--primary
{
	color: var(--primary);
}

.c-tile--red
{
	color: var(--red);
}

.c-tile--bg-white
{
	background-color: #FFF;
}

.c-tile__icon-container
{
	position: absolute;
	display: flex;

	height: 1em;
	width: 1em;

	top: 0;
	right: 0;

	background-color: currentColor;

	font-size: 42px;

	border-bottom-left-radius: 8px;

	align-items: center;
	justify-content: center;
}

.c-tile--red .c-tile__icon-container
{
	color: #E93339;
}

.c-tile__icon
{
	display: block;

	font-size: 42px;
	color: #FFF;
}

.c-tile__icon[data-icon="BsExclamationLg"]
{
	font-size: 30px;
}

.c-tile__title
{
	display: flex;

	flex-direction: column;

	width: 100%;

	margin: 0;

	color: #000;

	align-items: center;
}

.c-tile__sep
{
	display: flex;

	flex-direction: column;
	gap: 2px;

	margin-top: 12px;
	margin-right: auto;
	margin-left: auto;

	font-size: 44px;
	color: inherit;

	align-self: center;
}

.c-tile__sep::before,
.c-tile__sep::after
{
	position: relative;

	height: 2.5px;
	width: 38px;

	content: "";

	border-radius: 4px;
}

.c-tile__sep::before
{
	left: -4px;

	background-color: var(--primary);
}

.c-tile__sep::after
{
	left: 4px;

	background-color: var(--secondary);
}

.c-tile--primary .c-tile__sep
{
	color: var(--primary);
}

.c-tile__content
{
	width: 100%;

	text-align: center;
}

.c-tile__number
{
	font-weight: 700;
	font-size: 2.4rem;
	color: inherit;
}
.c-timeline
{
	width: 700px;
	max-width: 100%;

	margin: 30px auto 0;

	--timeline-arrow: 30px;
	--timeline-offset: 18px;
}

.c-timeline__list
{
	position: relative;
	display: flex;

	flex-direction: column;
	gap: 12px;

	margin-bottom: 0;
	padding-bottom: 50px;
}

.c-timeline__list::before
{
	position: absolute;

	height: 100%;
	width: 4px;

	left: var(--timeline-offset);

	background-color: var(--orange);

	content: "";
}

.c-timeline__element
{
	position: relative;
	display: flex;

	gap: 12px;

	font-weight: 600;

	align-items: center;
	justify-content: flex-start;
}

.c-timeline__number
{
	display: flex;

	height: 2.4em;
	width: 2.4em;

	background-color: var(--orange);

	font-weight: 500;
	font-size: 1.1rem;
	color: #FFF;

	text-align: center;

	border-radius: 50%;

	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.c-timeline__footer
{
	position: relative;

	width: 100%;

	top: calc(-1 * var(--offset-y));
	padding-left: calc(var(--timeline-arrow) + var(--timeline-offset) + 25px);

	font-weight: 600;
	font-size: 1.2rem;
	color: var(--orange);

	--offset-y: 9px;
}

.c-timeline__footer::before
{
	position: absolute;

	height: 4px;
	width: var(--timeline-arrow);

	top: var(--offset-y);
	left: var(--timeline-offset);

	background-color: var(--orange);

	content: "";
}

.c-timeline__footer::after
{
	position: absolute;
	display: block;

	height: 0;
	width: 0;

	top: -1px;
	left: calc(var(--timeline-offset) + var(--timeline-arrow));

	font-size: 12px;

	content: "";

	border-top: 1em solid transparent;
	border-bottom: 1em solid transparent;
	border-left: 1em solid var(--orange);
}
.c-user-nav
{
	width: 100%;

	margin-top: 30px;
}

.c-user-nav__list
{
	display: flex;

	flex-direction: column;
	gap: 16px;

	width: 100%;

	margin: 0;
	padding: 0;
}

.c-user-nav__item
{
	width: 100%;
}

.c-user-nav__link
{
	display: flex;

	width: 100%;

	padding: 10px 15px;

	font-weight: 500;
	color: var(--carbon);
	text-decoration: none;

	border-radius: 3px;
	border: 1px solid #DEDEDE;

	align-items: center;
	justify-content: flex-start;
}

a.c-user-nav__link:focus
{
	border-color: #A5A5A5;
}

a.c-user-nav__link:hover
{
	background-color: #DEDEDE;
}
.c-user-panel
{
	position: fixed;

	height: 100%;
	max-height: none;
	width: 100%;
	max-width: none;

	margin: 0;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	padding: 0;

	background: none;

	border: none;

	overflow: hidden;

	animation-fill-mode: forwards;

	z-index: 20;
}

.c-user-panel::backdrop
{
	opacity: 0;
}

.c-user-panel__toggle-btn
{
	position: relative;
	display: flex;

	flex-direction: row-reverse;

	height: 1em;
	width: 1em;

	margin-left: auto;
	margin-bottom: 25px;

	background-color: transparent;

	font-size: 48px;
	color: var(--carbon);

	border-radius: 6px;
	border: 2px solid currentColor;

	transition: background-color 320ms ease, border-color 320ms ease, color 320ms ease;

	align-items: center;
	justify-content: center;
}

.c-user-panel__toggle-btn:hover
{
	background-color: var(--secondary);

	color: #FFF;

	border-color: var(--secondary);
}

.c-user-panel__toggle-btn:focus
{
	border-color: var(--carbon);
}

.c-user-panel__toggle-label
{
	position: absolute;

	right: 100%;
	padding: 12px 18px;

	font-weight: 500;
	font-size: 1.3rem;

	letter-spacing: .8px;
}

.c-user-panel__toggle-btn:hover .c-user-panel__toggle-label
{
	color: var(--secondary);
}

.c-user-panel__toggle-icon-svg
{
	height: 1em;
	width: 1em;

	font-size: 42px;

	transform: rotate(45deg);
}

.c-user-panel__title
{
	margin: 0;
	padding: 0;

	font-weight: 600;
	font-size: 2.2rem;
	color: var(--primary);
}

.c-user-panel__panel
{
	position: absolute;
	display: flex;

	flex-direction: column;

	height: 100%;
	width: 450px;
	max-width: 100%;

	right: 0;
	padding: 12px 20px;

	background-color: #FFF;

	color: #FFF;

	transition-timing-function: ease;
	transition-duration: 320ms;
	transition-property: transform;
	transform: translateX(100%);

	z-index: 1;
}

.c-user-panel--open .c-user-panel__panel
{
	transform: translateX(0);
}

.c-panel__spacer
{
	flex-grow: 1;
}

.c-user-panel__form
{
	display: flex;

	flex-direction: column;
	gap: 12px;

	width: 100%;

	margin-top: auto;
	padding: 0 15px;

	align-self: center;
	justify-content: center;
}

.c-panel__title
{
	margin: 0 0 1rem 0;

	font-family: var(--title-font);
	font-size: 1.7rem;
	color: #FFF;

	text-align: center;
}

.c-panel__or
{
	display: flex;

	gap: 12px;

	margin: 2rem 0;
	padding: 0 50px;

	font-family: var(--title-font);
	font-size: 1.2rem;
	color: #FFF;

	align-items: center;
}

.c-panel__or::before,
.c-panel__or::after
{
	display: block;

	height: 2px;
	width: 10px;

	background-color: currentColor;

	content: "";

	border-radius: 8px;

	flex-grow: 1;
}

.c-user-panel__bg
{
	position: fixed;
	opacity: 0;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background-color: rgba(0, 0, 0, .5);

	transition-timing-function: ease;
	transition-duration: 320ms;
	transition-property: opacity;
	transform: translateX(0);
	animation-name: show-user-panel-bg;
	animation-duration: 320ms;
	animation-timing-function: ease;

	z-index: 0;
}

.c-user-panel--open .c-user-panel__bg
{
	opacity: 1;
}

@keyframes show-user-panel-bg
{
	0%
	{
		opacity: 0;
	}

	100%
	{
		opacity: 1;
	}
}

.c-user-panel__login-form
{
	display: flex;

	flex-wrap: wrap;
	gap: 20px;

	width: 100%;
}

.c-user-panel__logout
{
	width: 100%;

	margin-top: auto;
	padding: 12px 15px 0;

	border-top: 2px solid #DDD;
}

.c-user-panel__logout-btn
{
	display: flex;

	width: 100%;

	padding: 10px 20px;

	background-color: var(--red);

	font-weight: 600;
	font-size: 1.1rem;
	color: #FFF;

	text-transform: uppercase;

	border-radius: 4px;
	border: 2px solid var(--red);

	transition: background-color 240ms ease, color 240ms ease 20ms;

	align-items: center;
	justify-content: flex-start;
}

.c-user-panel__logout-btn:hover
{
	background-color: #FFF;

	color: var(--red);

	transition: background-color 240ms ease, color 200ms ease;
}

.c-user-panel__logout-btn:focus
{
	border-color: var(--carbon);
}
.c-week-day-picker
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 0 8px;

	width: 100%;

	align-items: stretch;
}

.c-week-day-picker__col
{
	display: flex;

	flex-grow: 1;
}

.c-week-day-picker__label
{
	width: 100%;

	margin-top: 12px;
	padding-left: 0;
	padding-bottom: 6px;

	font-family: inherit;
	font-weight: 400;
	font-size: .9em;
	color: #000;

	cursor: default;
	user-select: none;
	text-align: left;
	letter-spacing: .02em;
	text-transform: uppercase;

	order: -1;
}
.auth-page__left
{
	display: flex;

	flex-direction: column;

	width: 45%;

	padding: 25px 80px;

	overflow: hidden;

	align-items: center;
	align-self: stretch;
}

/* ----------------- Laptop ------------------- */
@media (min-width: 1201px) and (max-width: 1536px)
{
	.auth-page__left
	{
		padding: 0 75px;
	}
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.auth-page__left
	{
		width: 100%;

		padding-right: 35px;
		padding-left: 35px;

		flex-grow: 1;
		justify-content: center;
		flex-shrink: 0;
	}
}

/* ------------ Tablet (landscape) ------------ */
@media (min-width: 901px) and (max-width: 1200px)
{
	.auth-page__left
	{
		padding: 0 30px;
	}
}

/* ------------ Tablet (portrait) ------------- */
@media (min-width: 600px) and (max-width: 900px)
{
	.auth-page__left
	{
		padding-right: 120px;
		padding-left: 120px;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.auth-page__left
	{
		padding-right: 20px;
		padding-left: 20px;
	}
}

/* -------------- Mobile (small) -------------- */
@media (max-width: 369px)
{
	.auth-page__left
	{
		padding-right: 12px;
		padding-left: 12px;
	}
}

/* ------------------------------------ */
/* --------- auth-page__right -------- */
/* ------------------------------------ */

.auth-page__right
{
	position: relative;
	display: flex;

	width: 55%;
}

.auth-page__right-img
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	object-fit: cover;
	object-position: center;
}

.auth-page__right::before
{
	position: absolute;
	display: block;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;

	background: #E9F2F4;
	background: linear-gradient(to bottom, #E9F2F4 0%, #E3EFFF 100%);
	background-position: center;
	background-size: cover;

	content: "";
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.auth-page__right
	{
		height: 35vh;
		min-height: 20vh;
		width: 100%;

		order: -1;
		flex-grow: 0;
		flex-shrink: 1;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.auth-page__right
	{
		display: none;
	}
}

/* ------------------------------------ */
/* --------- auth-page__title -------- */
/* ------------------------------------ */

.auth-page__title
{
	line-height: 1.2em;

	margin: 0;
	padding: 15px 100px;

	font-weight: 500;
	font-size: 2.3em;
	color: var(--primary);

	letter-spacing: .05em;
}

/* ----------------- Laptop ------------------- */
@media (min-width: 1201px) and (max-width: 1536px)
{
	.auth-page__title
	{
		font-size: 2.4em;
	}
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.auth-page__title
	{
		text-align: center;
	}
}

/* -------------- Mobile, Tablet -------------- */
@media (max-width: 1200px)
{
	.auth-page__title
	{
		padding-top: 12px;
		padding-bottom: 12px;

		font-size: 2em;
	}
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.auth-page__title
	{
		padding: 0 15px;

		font-weight: 600;
		font-size: 1.25em;
	}
}

a.auth-page__logo-link
{
	position: relative;

	margin-bottom: 2rem;
}

a.auth-page__logo-link::before
{
	position: absolute;

	height: 100%;
	width: 104%;

	top: 1%;
	left: 2%;
	bottom: 0;

	background: #DADADA;

	content: "";

	border-radius: 20px;

	transform: rotate(6deg);
	transform-origin: left;

	z-index: -1;
}

.auth-page__logo
{
	display: block;

	height: auto !important;
	width: 200px !important;
	max-width: 100%;

	margin: 0;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.auth-page__logo
	{
		width: 140px;
	}
}

.auth-page__top-return
{
	margin-right: auto;
}

/* ----------------- Desktop ------------------ */
@media (min-width: 1537px)
{
	.auth-page__top-return
	{
		margin-left: 15%;
	}
}

/* ------------------------------------ */
/* --------- auth-page__form --------- */
/* ------------------------------------ */

.auth-page__form
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 15px;

	width: 100%;

	margin: 30px 0 0;
	margin-right: auto;
	margin-left: auto;
}

/* ----------------- Desktop ------------------ */
@media (min-width: 1537px)
{
	.auth-page__form
	{
		width: 70%;
	}
}

/* -------- Mobile, Tablet (portrait) --------- */
@media (max-width: 900px)
{
	.auth-page__form
	{
		margin-top: 12px;
	}
}
.p-home-charts__intro-txt
{
	margin-bottom: 12px;

	font-size: .95rem;
	color: #5C5C5C;
}

.p-home-charts__charts
{
	position: relative;
	display: flex;

	flex-wrap: wrap;
	gap: 20px;

	width: 100%;

	margin: 0 0 40px;
}
.other h2
{
	margin-bottom: 7px;

	font-size: 18px;
	color: #444;
}

.lexical-editor .other a
{
	font-size: 14px;
	color: var(--black-lighter);
	text-decoration: underline;
}

.lexical-editor .other ul
{
	margin: 0;
	padding: 0;

	list-style-type: none;
}

h1
{
	font-size: 24px;
	color: #333;
}

.lexical-editor .ltr
{
	text-align: left;
}

.lexical-editor .rtl
{
	text-align: right;
}

.lexical-editor.main-lexical-editor
{
	position: relative;

	line-height: 20px;
	width: 100%;
	max-width: 100%;

	margin: 0;

	font-weight: 400;
	color: #000;

	text-align: left;

	border-radius: 4px;
	border: 1.5px solid var(--light-purple);

	flex-grow: 1;
}

.lexical-editor .editor-inner
{
	position: relative;

	background: var(--input-background);

	border-bottom-right-radius: var(--input-radius);
	border-bottom-left-radius: var(--input-radius);
}

.lexical-editor.has-error .editor-inner
{
	background-color: var(--error-background);
}

.c-modal--editor .lexical-editor .editor-inner
{
	max-height: calc(100vh - 30px - 57px - 45px - 4px - 60px);

	overflow: auto;
}

.lexical-editor .editor-input
{
	position: relative;

	min-height: 150px;

	padding: 15px 10px;

	font-size: 15px;

	resize: none;
	tab-size: 1;

	outline: 0;

	caret-color: rgb(5, 5, 5);
	caret-color: #444;
}

.lexical-editor .editor-placeholder
{
	position: absolute;
	display: inline-block;

	top: 15px;
	left: 10px;

	font-size: 15px;
	color: #999;

	user-select: none;
	text-overflow: ellipsis;
	pointer-events: none;

	overflow: hidden;
}

.lexical-editor .editor-text-bold
{
	font-weight: bold;
}

.lexical-editor .editor-text-italic
{
	font-style: italic;
}

.lexical-editor .editor-text-underline
{
	text-decoration: underline;
}

.lexical-editor .editor-text-strikethrough
{
	text-decoration: line-through;
}

.lexical-editor .editor-text-underlineStrikethrough
{
	text-decoration: underline line-through;
}

.lexical-editor .editor-text-code
{
	padding: 1px .25rem;

	background-color: rgb(240, 242, 245);

	font-family: Menlo, Consolas, Monaco, monospace;
	font-size: 94%;
}

.lexical-editor .editor-link
{
	color: rgb(33, 111, 219);
	text-decoration: none;
}

.lexical-editor .tree-view-output
{
	position: relative;
	display: block;

	line-height: 14px;
	max-height: 250px;

	margin: 1px auto 10px auto;
	padding: 5px;

	background: #222;

	font-size: 12px;
	color: #FFF;

	white-space: pre-wrap;

	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;

	overflow: auto;
}

.lexical-editor .editor-code
{
	position: relative;
	display: block;

	line-height: 1.53;

	margin: 0;
	margin-top: 8px;
	margin-bottom: 8px;
	padding: 8px 8px 8px 52px;

	background-color: rgb(240, 242, 245);

	font-family: Menlo, Consolas, Monaco, monospace;
	font-size: 13px;

	tab-size: 2;

/* white-space: pre; */

	overflow-x: auto;
}

.lexical-editor .editor-code:before
{
	position: absolute;

	min-width: 25px;

	top: 0;
	left: 0;
	padding: 8px;

	background-color: #EEE;

	color: var(--black-lighter);

	content: attr(data-gutter);
	text-align: right;
	white-space: pre-wrap;

	border-right: 1px solid #CCC;
}
.editor-code:after
{
	position: absolute;

	top: 0;
	right: 3px;
	padding: 3px;

	font-size: 10px;
	color: rgba(0, 0, 0, .5);

	content: attr(data-highlight-language);
	text-transform: uppercase;
}

.lexical-editor .editor-tokenComment
{
	color: slategray;
}

.lexical-editor .editor-tokenPunctuation
{
	color: #999;
}

.lexical-editor .editor-tokenProperty
{
	color: #905;
}

.lexical-editor .editor-tokenSelector
{
	color: #690;
}

.lexical-editor .editor-tokenOperator
{
	color: #9A6E3A;
}

.lexical-editor .editor-tokenAttr
{
	color: #07A;
}

.lexical-editor .editor-tokenVariable
{
	color: #E90;
}

.lexical-editor .editor-tokenFunction
{
	color: #DD4A68;
}

.lexical-editor .editor-paragraph
{
	position: relative;

	margin: 0;
	margin-bottom: 8px;
}

.lexical-editor .editor-paragraph:last-child
{
	margin-bottom: 0;
}

.lexical-editor .editor-heading-h2,
.lexical-editor .editor-heading-h3,
.lexical-editor .editor-heading-h4,
.lexical-editor .editor-heading-h5
{
	margin: 0;
	margin-top: 1.4rem;
	margin-bottom: 1rem;
	padding: 0;

	font-weight: 500;
	font-size: 2.2rem;

	text-transform: uppercase;
}

.lexical-editor .editor-heading-h3
{
	font-size: 1.7rem;
}

.lexical-editor .editor-heading-h4
{
	font-size: 1.3rem;
}

.lexical-editor .editor-heading-h5
{
	font-size: 1rem;

	text-transform: uppercase;
}

.lexical-editor .editor-input > :first-child
{
	margin-top: 0;
}

.lexical-editor .editor-input > :last-child
{
	margin-bottom: 0;
}

.lexical-editor .editor-quote
{
	margin: 0;
	margin-left: 20px;
	padding-left: 16px;

	font-size: 15px;
	color: rgb(101, 103, 107);

	border-left-width: 4px;
	border-left-style: solid;
	border-left-color: rgb(206, 208, 212);
}

.lexical-editor .editor-list-ol
{
	margin: 0;
	margin-left: 49px;
	padding: 0;
}

.lexical-editor .editor-list-ol .editor-list-ol
{
	list-style-type: lower-latin;
}

.lexical-editor .editor-list-ol .editor-list-ol .editor-list-ol
{
	list-style-type: lower-roman;
}

.lexical-editor .editor-list-ol .editor-list-ol .editor-list-ol .editor-list-ol
{
	list-style-type: numeric;
}

.lexical-editor .editor-list-ul
{
	margin: 0;
	margin-left: 16px;
	padding: 0;

	list-style: none;
}

.lexical-editor .editor-list-ul > li
{
	position: relative;

	padding-left: 30px;
}

.lexical-editor .editor-list-ul > li::before
{
	position: absolute;
	display: flex;

	height: 1em;
	width: 1em;

	top: 50%;
	margin-top: -.5em;
	left: 16px;

	background-color: currentcolor;

	font-size: 6px;

	content: "";

	border-radius: 50%;
}

.lexical-editor .editor-list-ul > li.editor-nested-listitem::before
{
	display: none;
}

.lexical-editor .editor-listitem
{
	margin: 8px 32px 8px 0;
}

.lexical-editor .editor-nested-listitem
{
	list-style-type: none;
}

.lexical-editor  pre::-webkit-scrollbar
{
	width: 10px;

	background: transparent;
}

.lexical-editor  pre::-webkit-scrollbar-thumb
{
	background: #999;
}

.lexical-editor .debug-timetravel-panel
{
	display: flex;

	margin: auto;
	padding: 0 0 10px 0;

	overflow: hidden;
}

.lexical-editor .debug-timetravel-panel-slider
{
	padding: 0;

	flex: 8;
}

.lexical-editor .debug-timetravel-panel-button
{
	padding: 0;

	background: none;

	font-size: 12px;
	color: #FFF;

	border: 0;

	flex: 1;
}

.lexical-editor .debug-timetravel-panel-button:hover
{
	text-decoration: underline;
}

.lexical-editor .debug-timetravel-button
{
	position: absolute;

	top: 10px;
	right: 15px;
	padding: 0;

	background: none;

	font-size: 12px;
	color: #FFF;

	border: 0;
}

.lexical-editor .debug-timetravel-button:hover
{
	text-decoration: underline;
}

.lexical-editor .emoji
{
	vertical-align: middle;

	margin: 0 -1px;

	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px 16px;

	color: transparent;
}

.lexical-editor .emoji-inner
{
	padding: 0 .15em;
}

.lexical-editor .emoji-inner::selection
{
	background-color: rgba(150, 150, 150, .4);

	color: transparent;
}

.lexical-editor .emoji-inner::moz-selection
{
	background-color: rgba(150, 150, 150, .4);

	color: transparent;
}

.lexical-editor .toolbar
{
	display: flex;

	width: 100%;

	vertical-align: middle;

	margin-bottom: 0;
	padding: 4px;

	background: #FFF;

	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	border: 1.5px solid var(--primary-light);

	overflow: auto;
}

.lexical-editor .toolbar button.toolbar-item
{
	display: flex;

	vertical-align: middle;

	padding: 6px;

	background: none;

	cursor: pointer;

	border-radius: 10px;
	border: 0;

	flex-shrink: 0;
	align-items: center;
}

.lexical-editor .toolbar button.toolbar-item:disabled
{
	cursor: not-allowed;
}

.lexical-editor .toolbar button.toolbar-item.spaced
{
	margin-right: 2px;
}

.lexical-editor .toolbar button.toolbar-item i.format
{
	display: flex;
	opacity: .6;

	height: 18px;
	width: 18px;

	vertical-align: -.25em;

	margin-top: 1px;

	background-size: contain;
}

.lexical-editor .toolbar button.toolbar-item:disabled i.format
{
	opacity: .2;
}

.lexical-editor .toolbar button.toolbar-item.active
{
	background-color: var(--input-background);
}

.lexical-editor .toolbar button.toolbar-item.active i
{
	opacity: 1;
}

.lexical-editor .toolbar .toolbar-item:hover:not([disabled])
{
	background-color: #EEE;
}

.lexical-editor .toolbar .divider
{
	width: 1px;

	margin: 0 4px;

	background-color: #EEE;
}

.lexical-editor .toolbar select.toolbar-item
{
	display: flex;

	width: 70px;

	vertical-align: middle;

	padding: 8px;

	background: none;

	font-size: 14px;
	color: var(--black-lighter);

	text-overflow: ellipsis;

	border-radius: 10px;
	border: 0;
}

.lexical-editor .toolbar select.code-language
{
	width: 130px;

	text-transform: capitalize;
}

.lexical-editor .toolbar .toolbar-item .text
{
	display: flex;

	height: 20px;
	line-height: 20px;

	vertical-align: middle;

	font-size: 14px;
	color: var(--black-lighter);

	text-align: left;
	text-overflow: ellipsis;

	overflow: hidden;
}

.lexical-editor .toolbar .toolbar-item-indent .text
{
	color: inherit;
}

.lexical-editor .toolbar .toolbar-item .icon
{
	display: flex;

	height: 20px;
	line-height: 16px;
	width: 20px;

	margin-right: 6px;

	background-size: contain;

	user-select: none;
}

.lexical-editor .toolbar i.chevron-down
{
	display: flex;

	height: 16px;
	width: 16px;

	margin-top: 3px;

	user-select: none;
}

.lexical-editor .toolbar i.chevron-down.inside
{
	display: flex;

	height: 16px;
	width: 16px;

	margin-top: 11px;
	margin-right: 10px;
	margin-left: -25px;

	pointer-events: none;
}

.lexical-editor i.chevron-down
{
	display: inline-block;

	height: 8px;
	width: 8px;

	background-color: transparent;
	background-image: url(/images/lexical-icons/chevron-down.svg);
	background-size: contain;
}

.lexical-editor #block-controls button:hover
{
	background-color: #EFEFEF;
}

.lexical-editor #block-controls button:focus-visible
{
	border-color: blue;
}

.lexical-editor #block-controls span.block-type
{
	display: block;

	height: 18px;
	width: 18px;

	margin: 2px;

	background-size: contain;
}

.lexical-editor #block-controls span.block-type.paragraph
{
	background-image: url(/images/lexical-icons/text-paragraph.svg);
}

.lexical-editor #block-controls span.block-type.h1
{
	background-image: url(/images/lexical-icons/type-h1.svg);
}

.lexical-editor #block-controls span.block-type.h2
{
	background-image: url(/images/lexical-icons/type-h2.svg);
}

.lexical-editor #block-controls span.block-type.quote
{
	background-image: url(/images/lexical-icons/chat-square-quote.svg);
}

.lexical-editor #block-controls span.block-type.ul
{
	background-image: url(/images/lexical-icons/list-ul.svg);
}

.lexical-editor #block-controls span.block-type.ol
{
	background-image: url(/images/lexical-icons/list-ol.svg);
}

.lexical-editor #block-controls span.block-type.code
{
	background-image: url(/images/lexical-icons/code.svg);
}

.lexical-editor.dropdown
{
	position: absolute;
	display: block;

	min-height: 40px;
	min-width: 100px;

	background-color: #FFF;

	border-radius: 8px;

	box-shadow: 0 12px 28px 0 rgba(0, 0, 0, .2), 0 2px 4px 0 rgba(0, 0, 0, .1),
	inset 0 0 0 1px rgba(255, 255, 255, .5);

	z-index: 300;
}

.lexical-editor .text-format-buttons
{
	display: flex;

	gap: 6px;

	align-items: center;
}

.lexical-editor.dropdown .item,
.lexical-editor .text-format-buttons .item
{
	display: flex;

	flex-direction: row;

	line-height: 16px;
	min-width: 268px;

	margin: 0 8px 0 8px;
	padding: 6px;

	background-color: #FFF;

	font-size: 15px;
	color: #050505;

	cursor: pointer;

	border-radius: 8px;
	border: 0;

	align-content: center;
	flex-shrink: 0;
	justify-content: space-between;
}

.lexical-editor .text-format-buttons .item
{
	display: flex;

	gap: 12px;

	min-width: 0;

	margin: 0;
}

.lexical-editor .text-format-buttons .item.is-active
{
	background-color: var(--input-background);

	font-weight: 500;
}

.lexical-editor.dropdown .item .active,
.lexical-editor .text-format-buttons .item .active
{
	display: flex;

	height: 20px;
	width: 20px;

	background-size: contain;
}

.lexical-editor.dropdown .item:first-child
{
	margin-top: 8px;
}

.lexical-editor.dropdown .item:last-child
{
	margin-bottom: 8px;
}

.lexical-editor.dropdown .item:hover,
.lexical-editor .text-format-buttons .item:hover
{
	background-color: #EEE;
}

.lexical-editor.dropdown .item .text,
.lexical-editor .text-format-buttons .item .text
{
	display: flex;

	line-height: 20px;
	width: 200px;

	flex-grow: 1;
}

.lexical-editor .text-format-buttons .item .text
{
	width: auto;
}

.lexical-editor.dropdown .item .icon,
.lexical-editor .text-format-buttons .item .icon
{
	display: flex;

	height: 1em;
	line-height: 16px;
	width: 1em;

	background-size: contain;

	font-size: 25px;

	user-select: none;
}

.lexical-editor .editor-toolbar-svg
{
	display: flex;

	height: 1em;
	line-height: 16px;
	width: 1em;

	background-size: contain;

	font-size: 24px;

	user-select: none;
}

.lexical-editor .editor-toolbar-svg.icon--undo
{
	transform: rotate(175deg);
}

.lexical-editor .editor-toolbar-svg.icon--redo
{
	transform: rotate(175deg) scaleX(-1);
}

.lexical-editor .editor-toolbar-svg.icon--italics,
.lexical-editor .editor-toolbar-svg.icon--bold
{
	font-size: 20px;
}

.lexical-editor.link-editor
{
	position: absolute;
	opacity: 0;

	width: 100%;
	max-width: 345px;

	top: -10000px;
	margin-top: -6px;
	left: -10000px;

	background-color: #FFF;

	border-radius: 8px;

	box-shadow: 0 5px 10px rgba(0, 0, 0, .3);

	transition: opacity .5s;

	z-index: 300;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.lexical-editor.link-editor
	{
		max-width: 90vw;
	}
}

.lexical-editor.link-editor .link-input
{
	position: relative;
	display: block;

	width: calc(100% - 24px);

	margin: 8px 12px;
	padding: 8px 12px;

	background-color: #EEE;

	font-family: inherit;
	font-size: 15px;
	color: rgb(5, 5, 5);

	border-radius: 15px;
	border: 0;

	outline: 0;

	box-sizing: border-box;
}

.lexical-editor.link-editor div.link-edit
{
	position: absolute;

	width: 35px;

	vertical-align: -.25em;

	top: 0;
	right: 0;
	bottom: 0;

	background-image: url(/images/lexical-icons/pencil-fill.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 16px;

	cursor: pointer;
}

.lexical-editor.link-editor .link-input a
{
	display: block;

	margin-right: 30px;

	color: rgb(33, 111, 219);

	white-space: nowrap;
	text-overflow: ellipsis;

	overflow: hidden;
}

.lexical-editor.link-editor .button
{
	display: inline-block;

	height: 20px;
	width: 20px;

	margin: 0 2px;
	padding: 6px;

	cursor: pointer;

	border-radius: 8px;
}

.lexical-editor.link-editor .button.hovered
{
	display: inline-block;

	height: 20px;
	width: 20px;

	background-color: #EEE;
}

.lexical-editor.link-editor .button i,
.actions i
{
	display: inline-block;

	height: 20px;
	width: 20px;

	vertical-align: -.25em;

	background-size: contain;
}

.lexical-editor a.editor-link,
.lexical-editor a.editor-link:visited
{
	color: var(--blue);
}

.lexical-editor a.editor-link + a
{
	margin-left: 2px;
}

.lexical-editor a.editor-link
{
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, currentColor 0 1.5px 0 0;
}

.lexical-editor a.editor-link:hover,
.lexical-editor a.editor-link:focus
{
	background-color: var(--light-grey);

	color: var(--primary);
	text-decoration: none;

	box-shadow: transparent 0 0 0 0, transparent 0 0 0 0, currentColor 0 2px 0 0;
}
.primeract-calendar
{
	position: relative;
	display: flex;

	flex-wrap: wrap;

	width: 100%;
	min-width: 155px;

	font-size: 1rem;
}

.primeract-calendar--50\%
{
	width: 33.1%;

	flex-grow: 1;
}

.primeract-calendar--33\%
{
	width: 25.1%;

	flex-grow: 1;
}

.primeract-calendar--25\%
{
	width: 20.1%;

	flex-grow: 1;
}

.primeract-calendar--75\%
{
	width: 51.1%;

	flex-grow: 1;
}

.primeract-calendar__wrapper
{
	position: relative;
	display: flex;

	width: 100%;

	background-color: var(--input-background);

	border-radius: var(--input-radius);
}

.primeract-calendar--error .primeract-calendar__wrapper
{
	background-color: var(--error-background);
}

.primeract-calendar--disabled .primeract-calendar__wrapper
{
	background-color: #EBEBEB;
}

.primeract-calendar__calendar
{
	position: absolute;
	display: flex;
	visibility: hidden;
	opacity: 0;

	width: auto;

	top: 100%;
	left: 0;

	transition: opacity 240ms ease, transform 240ms ease, visibility 240ms ease;
	transform: translate3d(0, 6px, 0);

	z-index: 10;

	will-change: opacity, transform, visibility;
}

.primeract-calendar--year .primeract-calendar__calendar > div:first-child
{
	width: auto !important;
}

.primeract-calendar__calendar-background
{
	display: none;
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.primeract-calendar__calendar-background
	{
		position: fixed;
		display: flex;

		height: 100%;
		width: 100%;

		top: 0;
		right: 0;
		left: 0;
		bottom: 0;

		background-color: rgb(71 71 71 / 90%);

		z-index: 10;
	}

	.primeract-calendar__calendar
	{
		position: fixed;

		width: 324px;

		top: 50%;
		margin-top: -150px;
		left: 50%;
		margin-left: -162px;

		transform: none;

		z-index: 10;
	}
}

.primeract-calendar__calendar.visible
{
	visibility: visible;
	opacity: 1;

	transform: translate3d(0, 0px, 0);
}

/* ------------------ Mobile ------------------ */
@media (max-width: 599px)
{
	.primeract-calendar__calendar.visible
	{
		transform: none;
	}
}

.primeract-calendar input,
.primeract-calendar__mask
{
	position: relative;
	display: flex;

	height: var(--input-height);
	width: 100%;

	padding: 0 8px;

	background-color: transparent;

	font-family: "Source Code Pro", monospace;
	font-weight: 500;
	font-size: 1em;

	text-align: left;

	border-radius: 0;
	border: none;

	outline: none;

	z-index: 2;

	align-items: center;
	justify-content: flex-start;
}

.primeract-calendar__mask
{
	position: absolute;

	top: 0;
	left: 0;

	color: #7F7F7F;

	z-index: 0;
}

.primeract-calendar__mask__letter[aria-hidden="true"]
{
	visibility: hidden;
}

.primeract-calendar--disabled input
{
	color: #ABABAB;
}

.primeract-calendar input + button
{
	position: relative;
	display: flex;

	width: 38px;

	text-align: center;

	border-top-right-radius: var(--input-radius);
	border-bottom-right-radius: var(--input-radius);

	z-index: 1;

	flex-shrink: 0;
	align-items: center;
	justify-content: center;
}

.primeract-calendar input + button:disabled
{
	cursor: default;
}

.primeract-calendar input + button:after
{
	position: absolute;
	opacity: 0;

	top: 0;
	right: 0;
	left: 0;
	bottom: 0;

	background-color: #000;

	content: "";

	transition: opacity 240ms ease;
}

.primeract-calendar input + button:not(:disabled):hover:after,
.primeract-calendar input + button:not(:disabled):focus:after
{
	opacity: .08;
}

.primeract-calendar svg + span
{
	display: none;
}

.primeract-calendar [data-pc-section="panel"]
{
	display: flex;

	flex-direction: column;

	width: 100%;

	background-color: #FFF;

	border-bottom-right-radius: var(--multi-select-radius);
	border-bottom-left-radius: var(--multi-select-radius);
	border: 2px solid #F3F3F3;

	justify-content: center;
}

.primeract-calendar [data-pc-section="header"]
{
	display: flex;

	margin-bottom: 6px;

	align-items: stretch;
	justify-content: space-around;
}

.primeract-calendar [data-pc-section="monthtitle"],
.primeract-calendar [data-pc-section="yeartitle"],
.primeract-calendar [data-pc-section="previousbutton"],
.primeract-calendar [data-pc-section="nextbutton"]
{
	display: flex;

	min-height: 38px;
	min-width: 42px;

	text-align: center;

	transition: background-color 240ms ease;

	justify-content: center;
	align-items: center;
}

.primeract-calendar [data-pc-section="monthtitle"]:not([data-p-disabled="true"]):hover,
.primeract-calendar [data-pc-section="yeartitle"]:not([data-p-disabled="true"]):hover,
.primeract-calendar [data-pc-section="previousbutton"]:not([data-p-disabled="true"]):hover,
.primeract-calendar [data-pc-section="nextbutton"]:not([data-p-disabled="true"]):hover,
.primeract-calendar [data-pc-section="monthtitle"]:not([data-p-disabled="true"]):focus,
.primeract-calendar [data-pc-section="yeartitle"]:not([data-p-disabled="true"]):focus,
.primeract-calendar [data-pc-section="previousbutton"]:not([data-p-disabled="true"]):focus,
.primeract-calendar [data-pc-section="nextbutton"]:not([data-p-disabled="true"]):focus
{
	background-color: rgb(0 0 0 / 10%);
}

.primeract-calendar [data-pc-section="monthtitle"],
.primeract-calendar [data-pc-section="yeartitle"]
{
	padding: 2px 8px;
}

.primeract-calendar [data-pc-section="previousbutton"],
.primeract-calendar [data-pc-section="nextbutton"]
{
	padding: 2px 4px;
}

.primeract-calendar [data-pc-section="title"]
{
	display: flex;

	align-items: stretch;
}

.primeract-calendar [data-pc-section="decadetitle"]
{
	display: flex;

	align-items: stretch;
}

.primeract-calendar [data-pc-section="decadetitletext"]
{
	display: flex;

	align-items: center;
}

.primeract-calendar [data-pc-section="table"]
{
	width: 100%;

	border-collapse: collapse;
}

.primeract-calendar td
{
	position: relative;

	padding: 2px;

	text-align: center;
}

.primeract-calendar td > span
{
	display: flex;

	height: 40px;
	width: 40px;

	padding: 0;

	background-color: transparent;

	text-align: center;
	text-align: center;

	transition: background-color 240ms ease;

	align-items: center;
	justify-content: center;
}

.primeract-calendar td > span[aria-selected="true"]
{
	height: 34px;
	width: 34px;

	margin: auto;
}

.primeract-calendar td > span:not([data-p-disabled="true"])
{
	cursor: pointer;
}

.primeract-calendar td > span:not([data-p-disabled="true"]):hover
{
	background-color: rgb(0 0 0 / 10%);
}

.primeract-calendar td[data-p-today="true"] > span::after
{
	position: absolute;

	height: 3px;
	width: 20px;

	bottom: 8px;

	background-color: var(--primary);

	content: "";

	border-radius: 3px;
}

.primeract-calendar td > span[data-p-highlight="true"],
.primeract-calendar td > span[data-p-highlight="true"]:hover,
.primeract-calendar td > span[data-p-highlight="true"]:focus
{
	background-color: var(--primary);

	color: #FFF;

	border-radius: 50%;
}

.primeract-calendar [data-pc-section="yearpicker"]
{
	display: flex;

	flex-wrap: wrap;
	gap: 10px 0;

	width: auto;
	max-width: 275px;

	margin: auto;
	padding-bottom: 10px;

	justify-content: space-between;
	flex-shrink: 1;
}

.primeract-calendar [data-pc-section="yearpicker"] > span
{
	padding: 10px 10px;
}

.primeract-calendar [data-pc-section="yearpicker"] > span:not([data-p-disabled="true"]):hover
{
	background-color: rgba(0 0 0 / 10%);

	cursor: pointer;
}

.primeract-calendar [data-pc-section="monthpicker"]
{
	display: flex;

	flex-wrap: wrap;
	gap: 10px 0;

	width: 275px;
	max-width: 100%;

	margin: auto;
	padding-bottom: 10px;

	justify-content: space-between;
	flex-shrink: 1;
}

.primeract-calendar [data-pc-section="monthpicker"] > span
{
	padding: 10px 10px;
}

.primeract-calendar [data-pc-section="monthpicker"] > span:hover
{
	background-color: rgba(0 0 0 / 10%);

	cursor: pointer;
}

.primeract-calendar [data-p-other-month="true"]
{
	opacity: .2;
}

.primeract-calendar__visual-helper
{
	position: absolute;
	display: flex;
	visibility: hidden;
	opacity: 0;

	width: 100%;

	margin: 0;
	top: 100%;
	margin-top: -3px;
	right: 0;
	left: 0;
	padding: 0 6px;

	background-color: #FFF;

	font-family: "Source Code Pro", monospace;
	font-weight: 500;
	font-size: 1em;
	color: #7F7F7F;

	text-align: left;

	border-bottom-right-radius: var(--multi-select-radius);
	border-bottom-left-radius: var(--multi-select-radius);
	border: 2px solid #F3F3F3;
	border-top-width: 3px;

	overflow: auto;
	overflow: hidden;

	transition: visibility 160ms ease, opacity 160ms ease, transform 220ms ease;
	transform: scale(.95);

	z-index: 10;

	align-items: center;
}

.primeract-calendar__input:focus ~ .primeract-calendar__visual-helper.is-visible
{
	visibility: visible;
	opacity: 1;

	transform: scale(1);
}

.primeract-calendar__visual-helper__letter.is-valid
{
	color: #408174;
}

.primeract-calendar__visual-helper__letter.is-invalid
{
	color: var(--red);
}

.primeract-calendar__visual-helper-icon
{
	margin-left: 12px;

	font-size: 20px;
	color: #408174;
}

.primeract-calendar__visual-helper.is-invalid .primeract-calendar__visual-helper-icon
{
	color: var(--secondary);

	transform: scale(1.05);
}

.primeract-calendar [data-pc-section="weeklabel"]
{
	font-weight: 400;
	color: var(--blue);
}

.primeract-calendar [data-pc-section="weeknumber"]
{
	font-weight: 400;
	color: var(--blue);
}

.primeract-calendar [data-pc-section="weekheader"],
.primeract-calendar [data-pc-section="weeknumber"]
{
	border-spacing: 0;

	border-right: 2px solid #EBEBEB;
}

.primeract-calendar--week [data-pc-section="tablebodyrowprops"]:hover
{
	background-color: #EAEAEA;
}
[data-pc-name="ripple"]
{
	position: absolute;

	background-color: rgba(0, 0, 0, .4);

	border-radius: 50%;
}

[data-pc-name="ripple"]:not(.p-ink-active)
{
	visibility: hidden;
}
:root
{
	--rt-color-white: #FFF;
	--rt-color-dark: #222;
	--rt-color-success: #8DC572;
	--rt-color-error: #BE6464;
	--rt-color-warning: #F0AD4E;
	--rt-color-info: #337AB7;
	--rt-opacity: .9;
	--rt-transition-show-delay: .15s;
	--rt-transition-closing-delay: .15s;
}.core-styles-module_tooltip__3vRRp
{
	position: absolute;
	opacity: 0;

	top: 0;
	left: 0;

	pointer-events: none;

	will-change: opacity;
}.core-styles-module_fixed__pcSol
{
	position: fixed;
}.core-styles-module_arrow__cvMwQ
{
	position: absolute;

	background: inherit;
;
}.core-styles-module_noArrow__xock6
{
	display: none;
}.core-styles-module_clickable__ZuTTB
{
	pointer-events: auto;
}.core-styles-module_show__Nt9eE
{
	opacity: var(--rt-opacity);

	transition: opacity var(--rt-transition-show-delay) ease-out;
}.core-styles-module_closing__sGnxF
{
	opacity: 0;

	transition: opacity var(--rt-transition-closing-delay) ease-in;
}.styles-module_tooltip__mnnfp
{
	width: max-content;

	padding: 8px 16px;

	font-size: 90%;

	border-radius: 3px;
;
}.styles-module_arrow__K0L3T
{
	height: 8px;
	width: 8px;
}[class*=react-tooltip__place-top] > .styles-module_arrow__K0L3T
{
	transform: rotate(45deg);
}[class*=react-tooltip__place-right] > .styles-module_arrow__K0L3T
{
	transform: rotate(135deg);
}[class*=react-tooltip__place-bottom] > .styles-module_arrow__K0L3T
{
	transform: rotate(225deg);
}[class*=react-tooltip__place-left] > .styles-module_arrow__K0L3T
{
	transform: rotate(315deg);
}.styles-module_dark__xNqje
{
	background: var(--rt-color-dark);

	color: var(--rt-color-white);
}.styles-module_light__Z6W-X
{
	background-color: var(--rt-color-white);

	color: var(--rt-color-dark);
}.styles-module_success__A2AKt
{
	background-color: var(--rt-color-success);

	color: var(--rt-color-white);
}.styles-module_warning__SCK0X
{
	background-color: var(--rt-color-warning);

	color: var(--rt-color-white);
}.styles-module_error__JvumD
{
	background-color: var(--rt-color-error);

	color: var(--rt-color-white);
}.styles-module_info__BWdHW
{
	background-color: var(--rt-color-info);

	color: var(--rt-color-white);
}
.admin-home-logo
{
	display: block;

	height: 140px;
	width: auto;
	max-width: 80%;

	margin: 0 auto;

	object-position: center;
	object-fit: contain;
}
.modal-image-fullscreen
{
	display: block;

	height: 100px;
	width: 100%;

	flex-grow: 1;
	object-fit: contain;
	object-position: center;
}
@media print
{
	.p-hide
	{
		display: none !important;
	}

	@page
	{
		margin: 50px 50px;

		size: A4 portrait;

		@bottom-right
		{
			margin-bottom: 30px;

			font-family: circular, Rubik, sans-serif !important;
			font-size: 12px;

			content: "Page " counter(page) " / " counter(pages);
		}

		@bottom-center
		{
			margin-bottom: 30px;

			font-family: circular, Rubik, sans-serif !important;
			font-size: 12px;
		}

		@bottom-left
		{
			margin-bottom: 30px;

			font-family: circular, Rubik, sans-serif !important;
			font-size: 12px;
		}
	}
}
.u-lock-scroll,
[class^="u-lock-scroll-"]
{
	overflow: hidden !important;
}

.u-overflow-x-hidden
{
	    overflow-x: hidden;

	-ms-overflow-x: hidden;
}

.u-overflow-hidden
{
	overflow: hidden;
}

.u-responsive-img
{
	display: block;

	width: 100%;
	max-width: 100%;
}

.u-scroll-y
{
	    overflow-y: auto;

	-ms-overflow-y: auto;
}

.u-scroll-x
{
	    overflow-x: auto;

	-ms-overflow-x: auto;
}

.u-uppercase
{
	text-transform: uppercase;
}

.u-center
{
	text-align: center;

	align-items: center;
	justify-content: center;
}

.u-self-center
{
	align-self: center;
}

.u-no-padding
{
	padding: 0;
}

.u-padding-left-0
{
	padding-left: 0;
}

.u-no-padding-right
{
	padding-right: 0;
}

.u-block
{
	display: block;
}

.u-flex
{
	display: flex;
}

.u-flex-wrap
{
	flex-wrap: wrap;
}

.u-flex-column
{
	flex-flow: column;
}

.u-items-center
{
	align-items: center;
}

.u-items-end
{
	align-items: flex-end;
}

.u-items-start
{
	align-items: flex-start;
}

.u-content-end
{
	justify-content: flex-end;
}

.u-content-start
{
	justify-content: flex-start;
}

.u-content-center
{
	justify-content: center;
}

.u-content-between
{
	justify-content: space-between;
}

.u-content-around
{
	justify-content: space-around;
}

.u-flex-gap-5
{
	gap: 5px;
}

.u-flex-gap-10
{
	gap: 10px;
}

.u-flex-gap-15
{
	gap: 15px;
}

.u-flex-gap-20
{
	gap: 20px;
}

.u-flex-gap-25
{
	gap: 25px;
}

.u-flex-gap-30
{
	gap: 30px;
}

.u-flex-gap-35
{
	gap: 35px;
}

.u-flex-gap-40
{
	gap: 40px;
}

.u-flex-gap-45
{
	gap: 45px;
}

.u-flex-gap-50
{
	gap: 50px;
}

.u-flex-basis-10
{
	flex-basis: 10px;
}

.u-order--1
{
	-ms-order: -1;
	    order: -1;
}

.u-order-0
{
	-ms-order: 0;
	    order: 0;
}

.u-order-1
{
	-ms-order: 1;
	    order: 1;
}

.u-order-2
{
	-ms-order: 2;
	    order: 2;
}

.u-order-3
{
	-ms-order: 3;
	    order: 3;
}

.u-flex-grow-0
{
	flex-grow: 0;
}

.u-flex-grow-1
{
	flex-grow: 1;
}

.u-flex-grow-2
{
	flex-grow: 2;
}

.u-flex-grow-3
{
	flex-grow: 3;
}

.u-flex-shrink-0
{
	flex-shrink: 0;
}

.u-table-row
{
	display: table-row;
}

.u-table-cell
{
	display: table-cell;
}

.u-inline-block
{
	display: inline-block;
}

.u-small
{
	font-size: .8em;
}

.u-no-wrap
{
	white-space: nowrap;
}

.u-link-only
{
	position: absolute;

	height: 100%;
	width: 100%;

	top: 0;
	left: 0;
}

.u-no-margins
{
	margin: 0;
}

.u-margin-top-60
{
	margin-top: 60px;
}

.u-margin-top-50
{
	margin-top: 50px;
}

.u-margin-top-40
{
	margin-top: 40px;
}

.u-margin-top-35
{
	margin-top: 35px;
}

.u-margin-top-30
{
	margin-top: 30px;
}

.u-margin-top-25
{
	margin-top: 25px;
}

.u-margin-top-20
{
	margin-top: 20px;
}

.u-margin-top-15
{
	margin-top: 15px;
}

.u-margin-top-10
{
	margin-top: 10px;
}

.u-margin-top-5
{
	margin-top: 5px;
}

.u-margin-bottom-50
{
	margin-bottom: 50px;
}

.u-margin-bottom-45
{
	margin-bottom: 45px;
}

.u-margin-bottom-40
{
	margin-bottom: 40px;
}

.u-margin-bottom-35
{
	margin-bottom: 35px;
}

.u-margin-bottom-30
{
	margin-bottom: 30px;
}

.u-margin-bottom-25
{
	margin-bottom: 25px;
}

.u-margin-bottom-20
{
	margin-bottom: 20px;
}

.u-margin-bottom-15
{
	margin-bottom: 15px;
}

.u-margin-bottom-10
{
	margin-bottom: 10px;
}

.u-margin-bottom-5
{
	margin-bottom: 5px;
}

.u-no-margin-bottom,
.u-margin-bottom-0
{
	margin-bottom: 0;
}

.u-no-margin-top,
.u-margin-top-0
{
	margin-top: 0;
}

.u-margin-left-auto
{
	margin-left: auto;
}

.u-margin-left-40
{
	margin-left: 40px;
}

.u-margin-left-30
{
	margin-left: 30px;
}

.u-margin-left-25
{
	margin-left: 25px;
}

.u-margin-left-20
{
	margin-left: 20px;
}

.u-margin-left-15
{
	margin-left: 15px;
}

.u-margin-left-10
{
	margin-left: 10px;
}

.u-margin-left-5
{
	margin-left: 5px;
}

.u-margin-right-40
{
	margin-right: 40px;
}

.u-margin-right-30
{
	margin-right: 30px;
}

.u-margin-right-25
{
	margin-right: 25px;
}

.u-margin-right-20
{
	margin-right: 20px;
}

.u-margin-right-15
{
	margin-right: 15px;
}

.u-margin-right-10
{
	margin-right: 10px;
}

.u-margin-right-5
{
	margin-right: 5px;
}

.u-padding-top-30
{
	padding-top: 30px;
}

.u-padding-top-25
{
	padding-top: 25px;
}

.u-padding-top-20
{
	padding-top: 20px;
}

.u-padding-top-15
{
	padding-top: 15px;
}

.u-padding-top-10
{
	padding-top: 10px;
}

.u-padding-top-5
{
	padding-top: 5px;
}

.u-padding-bottom-25
{
	padding-bottom: 25px;
}

.u-padding-bottom-30
{
	padding-bottom: 30px;
}

.u-padding-bottom-20
{
	padding-bottom: 20px;
}

.u-padding-bottom-15
{
	padding-bottom: 15px;
}

.u-padding-bottom-10
{
	padding-bottom: 10px;
}

.u-padding-bottom-5
{
	padding-bottom: 5px;
}

.u-no-padding-bottom
{
	padding-bottom: 0;
}

.u-no-padding-top,
.u-padding-top-0
{
	padding-top: 0;
}

.no-horizontal-padding
{
	padding-right: 0;
	padding-left: 0;
}

.no-vertical-padding
{
	padding-top: 0;
	padding-bottom: 0;
}

.u-padding-left-25
{
	padding-left: 25px;
}

.u-padding-left-20
{
	padding-left: 20px;
}

.u-padding-left-15
{
	padding-left: 15px;
}

.u-padding-left-10
{
	padding-left: 10px;
}

.u-padding-left-5
{
	padding-left: 5px;
}

.u-padding-right-5
{
	padding-right: 5px;
}

.u-padding-right-10
{
	padding-right: 10px;
}

.u-padding-right-15
{
	padding-right: 15px;
}

.u-padding-right-20
{
	padding-right: 20px;
}

.u-padding-right-25
{
	padding-right: 25px;
}

.u-padding-right-30
{
	padding-right: 30px;
}

.u-centered
{
	margin-right: auto;
	margin-left: auto;

	-ms-grid-row-align: center;
	align-self: center;
}

.u-full-width
{
	width: 100%;
}

.u-width-auto
{
	width: auto;
}

.u-negative-margin,
.u-negative-margins
{
	margin-right: -10px;
	margin-left: -10px;
}

.u-clearfix:after,
.u-clearfix:before
{
	display: block;

	height: 0;
	width: 100%;

	content: "";

	clear: both;
}

.u-weight-normal
{
	font-weight: normal;
}

.u-weight-500
{
	font-weight: 500;
}

.u-weight-600
{
	font-weight: 600;
}

.u-weight-700
{
	font-weight: 700;
}

.u-weight-800
{
	font-weight: 800;
}

.u-no-select,
.u-no-select *:not(input):not(textarea):not(select)
{
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;

	-webkit-touch-callout: none;
}

.u-table
{
	display: table;
}

.u-text-center
{
	text-align: center;
}

.u-text-left
{
	text-align: left;
}

.u-text-right
{
	text-align: right;
}

.u-text-justify
{
	text-align: justify;
}

.u-italic
{
	font-style: italic;
}

.u-positioned
{
	position: relative;
}

.u-float-right
{
	float: right;
}

.u-float-left
{
	float: left;
}

.u-vertical-align-top
{
	vertical-align: top;
}

.u-vertical-align-middle
{
	vertical-align: middle;
}

.u-readers-only
{
	position: absolute;

	margin: -1px;
	padding: 0;

	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);

	clip-path: inset(50%);
}

.u-hidden
{
	display: none;
}

.u-list
{
	list-style: disc;
}

.u-lowercase
{
	text-transform: lowercase;
}

/* -------- Mobile -------- */
@media (max-width: 640px)
{
	.u-mobile-hidden
	{
		display: none;
	}
}

/* ------ Tablette ------ */
@media (min-width: 640px) and (max-width: 992px)
{
	.u-tablet-hidden
	{
		display: none;
	}
}

/* -------- Laptop -------- */
@media (min-width: 992px) and (max-width: 1399px)
{
	.u-laptop-hidden
	{
		display: none;
	}
}

/* -------- Desktop -------- */
@media (min-width: 1400px)
{
	.u-desktop-hidden
	{
		display: none;
	}
}

.u-hide-visually
{
	position: absolute !important;
	opacity: 0;

	height: 1px !important;
	width: 1px !important;

	margin: -1px !important;
	padding: 0 !important;

	white-space: nowrap !important;

	border: 0 !important;

	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
}

.u-auto-grid:after,
.u-auto-grid:before
{
	height: 1px;
	width: 1em;

	content: "";

	flex-grow: 1;
	order: 1000;
}

.u-width-50
{
	width: 50%;
}

.u-width-30
{
	width: 30%;
}
.u-width-33
{
	width: 33%;
}

.u-min-width-200
{
	min-width: 200px;
}

.u-space-between
{
	justify-content: space-between;
}

.u-inline-flex
{
	display: inline-flex;
}

.u-self-stretch
{
	align-self: stretch;
}

.u-self-start
{
	align-self: flex-start;
}

.u-self-end
{
	align-self: flex-end;
}

.u-row-gap-10
{
	row-gap: 10px;
}

.u-row-gap-15
{
	row-gap: 15px;
}

.u-row-gap-20
{
	row-gap: 20px;
}

.u-row-gap-25
{
	row-gap: 25px;
}

.u-row-gap-30
{
	row-gap: 30px;
}

.u-row-gap-35
{
	row-gap: 35px;
}

.u-row-gap-40
{
	row-gap: 40px;
}

.u-row-gap-45
{
	row-gap: 45px;
}

.u-row-gap-50
{
	row-gap: 50px;
}

.u-col-gap-10
{
	column-gap: 10px;
}

.u-col-gap-15
{
	column-gap: 15px;
}

.u-col-gap-20
{
	column-gap: 20px;
}

.u-col-gap-25
{
	column-gap: 25px;
}

.u-col-gap-30
{
	column-gap: 30px;
}

.u-col-gap-35
{
	column-gap: 35px;
}

.u-col-gap-40
{
	column-gap: 40px;
}

.u-col-gap-45
{
	column-gap: 45px;
}

.u-col-gap-50
{
	column-gap: 50px;
}

@media print
{
	.u-print-hidden,
	[data-noprint]
	{
		display: none !important;
	}

	.u-print-nowrap,
	[data-print-nowrap]
	{
		break-inside: avoid;
		page-break-inside: avoid;
	}
}
