/*
Theme Name: goldflare
Author: Goldflare
Author URI: goldflare.ca
Version: 1
Text Domain: gold
*/

/**
* main style sheet
* @author		charroma@gmail.com
* @creationDate 2024-07-25
* @editDate		2024-07-25
*/

/** http://meyerweb.com/eric/tools/css/reset/ 	v2.0 | 20110126		License: none (public domain) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, button, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input[type=checkbox], input[type=radio] { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main { display: block; } body { line-height: 1; } ol, ul { list-style: none; } blockquote, q { quotes: none; } blockquote::before, blockquote::after, q::before, q::after { content: ''; content: none; } table { border-collapse: collapse; border-spacing: 0; }

/** defaults */
h1, h2, h3, h4, h5, h6 { font-weight: normal; }
strong { font-weight: bold; }
em { font-style: italic; }
/*a, button { outline: none; }*/
/*abbr { text-decoration: none; }*/
img { vertical-align: bottom; }
sup { font-size: 60%; }
mark { background-color: inherit; color: inherit; }
ins { text-decoration: none; }
template { display: none; }
input[type="submit"], button { border-radius: 0; }
button::-moz-focus-inner { padding: 0; border: 0; }
details summary { cursor: pointer; list-style-type: none; }
details > summary::-webkit-details-marker { display: none; }

/*:is(::selection, ::-moz-selection) { background: var(--c-text); color: var(--c-white); }*/

html {
	font-size      : 0.625em;
	--main-pad     : 30px;
	--main-pad     : max(30px, env(safe-area-inset-left));
	--main-pad--   : calc(var(--main-pad) * -1);

	--c-white      : #fff;
	--c-black      : #000;

	--c-border     : #ddd;
	--maxw         : 708px;

	--input-h      : 4rem;

	--c-msg        : #857755;
	--c-msg-l      : #dbc9a2;
	--c-msg-ll     : #ffedc5;
	--c-success    : #3c763d;
	--c-success-l  : #c6d9b6;
	--c-success-ll : #e1f1d3;
	--c-error      : #a94442;
	--c-error-l    : #d4adb1;
	--c-error-ll   : #fad5d8;

	--c-text       : #222;
	--c-main       : #1d462c;
	--c-main-l     : #5f8971;
	--c-main-ll    : #adc2b6;
	--c-sec        : #f4c147;
	--c-gray       : #d7d8db;
	--c-gray-l     : #f2f2f2;
	--c-gray-ll    : #efefef;

	--section-pad  : 7.5rem;

	--grid-extend  : 1fr;
}
@media (prefers-contrast: more) {
	html {
		--c-main-l: #1d462c;
	}
	html .copy { background-color: var(--c-sec); color: var(--c-main); }
}
body { background: var(--c-white); line-height: 1.5; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; -webkit-text-size-adjust: none; }
body, input:is([type=text], [type=password], [type=number], [type=email], [type=tel], [type=url], [type=range]), select, textarea { font-size: 1.6rem; color: var(--c-text); }


/** links */
a { color: var(--c-main); text-decoration: underline; }
a:is(:hover, :active, :focus) { color: var(--c-black); }
.disabled, button[disabled="disabled"] { cursor: default; }

@font-face {
	font-family: 'raleway';
	src: url('css/fonts/Raleway-Regular.woff2') format('woff2'),
		 url('css/fonts/Raleway-Regular.woff') format('woff');
	font-weight: normal; font-style: normal; font-display: swap; ascent-override: 100%;
}
@font-face {
	font-family: 'raleway';
	src: url('css/fonts/Raleway-Medium.woff2') format('woff2'),
		 url('css/fonts/Raleway-Medium.woff') format('woff');
	font-weight: bold; font-style: normal; font-display: swap; ascent-override: 100%;
}
@font-face {
	font-family: 'raleway';
	src: url('css/fonts/Raleway-Bold.woff2') format('woff2'),
		 url('css/fonts/Raleway-Bold.woff') format('woff');
	font-weight: 600; font-style: normal; font-display: swap; ascent-override: 100%;
}
@font-face {
	font-family: 'raleway';
	src: url('css/fonts/Raleway-ExtraBold.woff2') format('woff2'),
		 url('css/fonts/Raleway-ExtraBold.woff') format('woff');
	font-weight: 900; font-style: normal; font-display: swap; ascent-override: 100%;
}

/** fonts */
body, input, select, textarea { font-family: 'raleway', 'Helvetica Neue', Helvetica, Arial, sans-serif;}

/* **************************** */
/** transitions */
:where(.box-click, .news-pdf)::before,
:where(.pj-gal, .media-bloc) a::after,
:where(.head, .foot, .ls-pag, .nav-side) a, .logo img, button, .bt, input[type="submit"] { /* autoprefixer: off */ transition: all 0.2s linear; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
/* { transition: none; } */


/* **************************** */
/** animations */
.slideTxt { display: inline-block; animation: slideTxt 0.5s ease-in-out forwards; visibility: hidden; }

.fixed { animation: slideIn 0.5s ease-in-out forwards; }
.fixed.slideOut { animation: slideOut 0.5s ease-in-out forwards; }
.fadeIn { animation: fadeIn 0.5s ease-in-out forwards; }
.fadeOut { max-height: 0; opacity: 0; transition: opacity 1s, max-height 0s 1s; }

@keyframes slideIn {
	0% { transform: translateY(-100%); visibility: visible; }
	100% { transform: translateY(0); visibility: visible; }
}
@keyframes slideTxt {
	0% { transform: translateY(100%); visibility: visible; }
	100% { transform: translateY(0); visibility: visible; }
}
@keyframes slideOut {
	to { opacity: 0; transform: translateY(-100%); }
}
@keyframes fadeIn {
	0%   { opacity: 0; }
	100% { opacity: 1; }
}

/* **************************** */
/** class gen */
.hide, .screen-reader-text, .visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); }
.hidden { visibility: hidden; }
.none, .printonly { display: none!important; }
.ir { display: block; background-position: 0 0; background-repeat: no-repeat; overflow: hidden; text-indent: -9999px; }

.clear { clear: both; }
.clearer { display: block!important; width: 100%!important; clear: both!important; height: 0!important; line-height: 0!important; font-size: 1px!important; float: none!important; overflow: hidden; margin: 0!important; padding: 0!important; border: none!important; }

.-text-center { text-align: center; }
.-text-right { text-align: right; }
.-text-left { text-align: left; }

.-auto { margin-inline: auto; }
.-max { max-width: var(--maxw); }

.no-space { margin-bottom: 0; }
.space-sml { margin-bottom: 0.5rem; }
.spaced { margin-bottom: 1.5rem; }
.space-big { margin-bottom: 3rem; }
.space-bigger { margin-bottom: 4.5rem; }
.space-biggest { margin-bottom: 6rem; }
.space-top { margin-top: 1.5rem; }
.space-top-big { margin-top: 3rem; }

.spinner { margin: 0!important; padding: 0!important; }

#tip { display: none; position: absolute; max-width: 300px; padding: 4px 10px; font-size: 1.1rem; line-height: 1; background: var(--c-text); color: var(--c-white); white-space: nowrap; border-radius: 5px; box-shadow: 0 1px 5px var(--c-text); z-index: 9999; }

/* **************************** */
/** forms */
fieldset, .fieldset { margin-bottom: 2rem; }
:is(fieldset, .fieldset) > :last-child { margin-bottom: 0; }

.form-group { margin-bottom: 1.5rem; }
input:where([type="text"], [type="password"], [type="number"], [type="email"], [type="tel"], [type="url"], [type="range"]),
select,
textarea { width: 250px; height: var(--input-h); padding: 0 10px 0; background: var(--c-gray-l); border: 1px solid var(--c-border); outline: none; box-sizing: border-box; border-radius: 0; }

select { padding: 0 10px; background: var(--c-gray-l); border-radius: 0; appearance: none; -webkit-appearance: none; appearance: none; }
.select { display: block; position: relative; overflow: hidden; padding: 0; background-color: var(--c-gray-l); border: 1px solid var(--c-border); text-align: left; box-sizing: border-box; }
.select::after { position: absolute; top: 50%; right: 10px; z-index: 1; content: '↓'; display: block; transform: translateY(-50%); font-size: 1rem; }
.select select { position: relative; z-index: 2; width: calc(100% + 35px); max-width: none; height: calc(var(--input-h) - 2px); padding-right: 55px; background-color: transparent; border: none; }
.select select::-ms-expand { display: none; }
.select select:-moz-focusring { color: transparent; text-shadow: 0 0 0 var(--c-black); }

input:is([type="checkbox"], [type="radio"], [type="file"]) { accent-color: var(--c-main); }

input:where([type="text"], [type="password"], [type="email"], [type="number"], [type="tel"], [type="url"], [type="range"]):focus,
:is(select, textarea):focus,
.select:focus-within { border-color: #999; }

textarea { height: 150px; padding-top: 10px; padding-bottom: 10px; overflow: auto; vertical-align: top; appearance: none; -webkit-appearance: none; }
textarea.-sml { height: 50px; }
select { max-width: 100%; }
input[type="file"] { font-size: 1.2rem; }
input:is([type="text"], [type="email"], [type="password"], [type="submit"]) { appearance: none; -webkit-appearance: none; }

input.-sml { width: 60px; }
input.-med { width: 125px; }
input.-disabled, input[disabled="disabled"],
button.disabled, button.disabled:is(:hover, :focus) { background-color: #ddd; color: #666; }

::placeholder { }
input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px var(--c-gray-l) inset; }

.i-info { color: #ccc; font-size: 1.1rem; line-height: 1; font-style: italic; }

form :is(label, .label) { display: block; width: auto; margin-bottom: 0.5rem; line-height: 1.2; float: none; text-align: left; }

.i-multi .wpcf7-form-control { display: flex; flex-wrap: wrap; margin-bottom: -7px; }
.cols2 .i-multi .wpcf7-form-control { align-items: center; min-height: var(--input-h); }
.i-multi .wpcf7-list-item { margin-bottom: 0.7rem; margin-right: 30px; }
.i-multi .wpcf7-list-item label { display: flex; margin-bottom: 0; }
.i-multi .wpcf7-list-item input { margin-top: 2px; }
.i-multi .wpcf7-list-item-label { flex: 1 1 auto; margin-left: 5px; font-size: 1.4rem; }

.i-checkbox label { display: flex; align-items: flex-start; }
	.i-checkbox label input { flex: 0 0 auto; margin: 3px 10px 0 0; }

.-full textarea,
.-full input:where([type="text"], [type="password"], [type="email"], [type="tel"], [type="url"], [type="range"]),
.-full .select { width: 100%; max-width: inherit; }

form .submit { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 15px; margin: 3rem 0 0; }

/** buttons */
button, input[type="submit"] { display: inline; background: none; cursor: pointer; }
	button, .bt, input[type="submit"] { display: inline-block; padding: 1.5rem 30px; background: var(--c-sec); border: none; color: var(--c-main); font-size: 1.6rem; text-transform: uppercase; font-weight: 900; text-align: center; text-decoration: none; touch-action: manipulation; user-select: none; }
	:is(.bt, button):is(:hover, :focus),
	input[type="submit"]:is(:hover, :focus) { background: var(--c-main); color: var(--c-white); }
	.bt small { font-size: 80%; }

.bt.-sml { padding: 0.7rem 15px; font-size: 1.1rem; }
.bt.-med { padding: 1rem 25px; font-size: 1.2rem; }

.msgbox, .wpcf7-response-output { position: relative; margin-bottom: 1.5rem; padding: 15px var(--main-pad); line-height: 1.4; background-color: var(--c-msg-ll); border: 1px solid var(--c-msg-l); color: var(--c-msg); }
	.msgbox :is(p, ul) { margin-bottom: 1.5rem; }
	.msgbox > :last-child { margin-bottom: 0; }
	.msgbox ul { margin-left: 20px; list-style-type: disc; }
	.msgbox.-success ul { margin-left: 0; list-style-type: none; }
	.msgbox label { display: block; float: none; margin: 0; }
	.msgbox .close { position: absolute; top: 2px; right: 2px; display: none; }
	.wpcf7-response-output { padding-top: 1.5rem; }

.msgbox.-success, .sent .wpcf7-response-output { background: var(--c-success-ll); border-color: var(--c-success-l); color: var(--c-success); }
.msgbox.-success a { color: var(--c-success); text-decoration: underline; }
.msgbox.-success a:is(:hover, :focus) { color: var(--c-black); }

.msgbox.-errors, .browsehappy,
:is(.invalid, .aborted, .failed, .spam) .wpcf7-response-output { background: var(--c-error-ll); border-color: var(--c-error-l); color: var(--c-error); }
.msgbox.-errors a { color: var(--c-error); text-decoration: underline; }
.msgbox.-errors a:is(:hover, :focus) { color: var(--c-black); }

:is(input, .select, textarea).wpcf7-not-valid, .woocommerce-invalid input,
:is(input, textarea)[aria-invalid=true] { border-color: var(--c-error); }
.wpcf7-not-valid-tip, .wpcf7-valid-tip { display: block; margin-top: 0.5rem; font-size: 1.2rem; color: var(--c-error); }
.wpcf7-valid-tip { color: var(--c-success); }
.woocommerce-invalid label { color: var(--c-error); }

.screen-reader-response, .wpcf7-response-output { display: none; }
:is(.invalid, .sent, .unaccepted, .spam, .aborted, .failed) .wpcf7-response-output { display: block; }

/* **************************** */
/** header */
.head { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr; border-bottom: 1px solid var(--c-main-ll); }
	.head .skip-main { order: 1; }
	.head .skip-main:focus { transition: all 0s linear; top: 0; left: 0; width: auto; height: auto; padding: 3px 5px; overflow: hidden; clip-path: unset; font-size: 1.2rem; background-color: var(--c-black); color: var(--c-white); }

	.head a { text-decoration: none; }
	.logo img { display: block; }
	.logo a:is(:hover, :focus) img { opacity: 0.5; }
	.home .logo a:is(:hover, :focus) img { opacity: 1; }

	.head > .container { order: 3; display: flex; align-items: center; justify-content: space-between; gap: 0 30px; padding: 3rem 0; }
	.head .logo { flex: 0 0 auto; }

	.nav { flex: 1 1 auto; display: flex; align-items: center; justify-content: flex-end; gap: 0.5rem 25px; }
		.nav > ul:nth-child(1) svg { display: block; width: auto; height: 16px; }
		.nav > ul { display: flex; align-items: center; flex-wrap: wrap; gap: 0.5rem 25px; }
		.nav > ul > li > a { font-weight: bold; text-transform: uppercase; letter-spacing: 0.1rem; }
		.nav a::after { color: var(--c-sec); }
		.nav :is(.current_page_item, .current-menu-ancestor, .current-page-ancestor, .current-menu-item) > a { text-decoration: underline; }
		.nav :is(.current_page_item, .current-menu-ancestor, .current-page-ancestor, .current-menu-item) > a,
		.nav > ul > li > a:is(:hover, :focus) { color: var(--c-black); }

	.sec { position: relative; order: 2; background-color: var(--c-main-ll); color: var(--c-white); font-size: 1.4rem; }
		.sec::before { content: ''; position: absolute; z-index: 0; top: 0; right: 0; bottom: 0; left: 33.33%; background-color: var(--c-main-l); }
		.sec .container { display: flex; align-items: center; justify-content: flex-end; }
		.sec ul { display: flex; align-items: center; flex-wrap: wrap; gap: 0 30px; padding-left: var(--main-pad); background-color: var(--c-main-l); }
		.sec :is(a, dd) { color: var(--c-sec); }
		.sec a:is(:hover, :focus) { color: var(--c-white); }

		.sec dl { display: flex; font-weight: bold; gap: 10px; }
		.sec dl dd + dt { padding-left: 10px; border-left: 1px solid var(--c-white); }

		.head .frm-search { position: relative; }
			.head .frm-search input { display: block; background-color: transparent; color: var(--c-white); border: none; border-left: 1px solid rgba(255, 255, 255, 0.5); border-right: 1px solid rgba(255, 255, 255, 0.5); }
			.head .frm-search button { position: absolute; top: 0; right: 1px; bottom: 0; width: 40px; padding: 0; background: var(--c-main-l); color: var(--c-white); }
			.head .frm-search button::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: url(img/icn-search.svg) 50% 50%/50% no-repeat; }
			.head .frm-search input::placeholder { color: rgba(255, 255, 255, 0.85); }
			.head .frm-search input:focus { border-color: var(--c-sec); }
			.head .frm-search button:is(:hover, :focus) { background-color: rgba(0, 0, 0, 0.15); }

	.has-sm, .menu-item-has-children { position: relative; }
		:is(.has-sm, .menu-item-has-children) > a::after { content: ''; display: inline-block; width: 0.65em; height: 0.65em; margin-left: 5px; background: url('data:image/svg+xml;utf8,<svg width="14" height="14" clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg"><path d="m5.5 5.5v-5.5h3v5.5h5.5v3h-5.5v5.5h-3v-5.5h-5.5v-3z" fill="%23f4c147"/></svg>') 0 0/100% no-repeat; }
		:is(.has-sm, .menu-item-has-children) ul { display: none; position: absolute; min-width: 200px; padding: 0 0; background-color: #fff; box-shadow: 0 20px 5px rgba(0, 0, 0, 0.05), 0 20px 15px rgba(0, 0, 0, 0.15), 0 20px 25px rgba(0, 0, 0, 0.3) }
		:is(.has-sm, .menu-item-has-children) ul > li > a { display: block; padding: 0.7rem 10px; line-height: 1.2; border-left: 5px solid #fff; border-right: 5px solid #fff; }
		:is(.has-sm, .menu-item-has-children) ul > li > a:is(:hover, :focus),
		:is(.has-sm, .menu-item-has-children) ul .current-menu-item > a { border-left-color: var(--c-sec); }

	.no-js .has-sm > a:is(:hover, :focus) ~ ul,
	.no-js .has-sm > ul:is(:hover, :focus),
	.no-js .has-sm:focus-within > ul { display: block; }

	.bt-nav-mobile, #mobile-overlay, .nav-mobile { display: none; }

/* **************************** */
/** content */
#wrapper { }
.content { position: relative; z-index: 1; }
.container { position: relative; width: 960px; margin: 0 auto; text-align: left; }
	h1, .h1 { margin-bottom: 3rem; font-size: 4rem; line-height: 1.1; text-transform: uppercase; font-weight: 900; text-wrap: balance; }
	h2, .h2 { margin-bottom: 3rem; font-size: 3rem; line-height: 1.1; color: var(--c-main); text-transform: uppercase; font-weight: 900; text-wrap: balance; }
	h3 { margin-bottom: 1.5rem; font-size: 2.4rem; line-height: 1.2; font-weight: 900; }
	h4 { font-size: 2rem; font-weight: 900; }

	:where(.text, .box) + h2 { margin-top: 4.5rem; }

/*	.text a[rel*="external"]::after { content: ''; font-size: 1.2rem; font-weight: normal; }*/

.text { margin-bottom: 3rem; line-height: 1.4; }
.text.-big { font-size: 1.8rem; }
	.text :where(p, ul, ol, dl) { margin-bottom: 1.5rem; }
	.text ul { list-style-type: disc; margin-left: 20px; }
	.text ul ul { margin-bottom: 0; margin-top: 5px; list-style-type: circle; }
	.-max, .lost_reset_password { max-width: var(--maxw); }

	.text li + li { margin-top: 0.5rem; }
	.text .vid { display: block; }

	.text :is(p, ol, ul, dl, iframe) + h2 { margin-top: 6rem; }
	.text :is(p, ol, ul, dl, iframe) + h3 { margin-top: 3rem; }

	.text ol { margin-left: 0; counter-reset: term; list-style-type: none; }
		.text ol > li { position: relative; margin-top: 1rem; padding-left: 40px; }
		.text ol > li:first-of-type { margin-top: 0; }
		.text ol > li::before { content: counter(term, decimal-leading-zero) '.'; position: absolute; left: 0; top: 0.2rem; color: var(--c-main); text-align: center; font-size: 2rem; font-weight: 600; line-height: 1; counter-increment: term; }

	.text .no-ls { list-style-type: none; margin-left: 0; }
	.text > :last-child, .text.no-space { margin-bottom: 0; }

.out { width: 100vw; transform: translateX( calc( -1 * (100vw - 960px)/2 ) ); }
.img-replace { position: relative; }
	.img-replace .to-replace { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }

.cols2, .cols1-2, .cols2-1, .cols3, .cols4, .col2-set { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 3.8%; justify-content: start; align-items: start; }
.cols1-2 { grid-template-columns: minmax(0, 1fr) 65.4%; }
.cols2-1 { grid-template-columns: 65.4% minmax(0, 1fr); }
.cols3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cols4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.-reverse { grid-auto-flow: dense; }
	.-reverse > *:nth-child(1) { grid-column: 2; }
	.-reverse > *:nth-child(2) { grid-column: 1; }

.bloc-content :is(.cols2 > div, .container) > :last-child { margin-bottom: 0; }

.w-img, .alignleft, .alignright, .wp-block-image { margin-bottom: 1.5rem; }
.aligncenter { display: block; margin-inline: auto; margin-bottom: 1.2rem; }
.alignleft { float: left; max-width: 48%; height: auto; margin-right: 3.8%; margin-top: 0.5rem; }
.alignright { float: right; max-width: 48%; height: auto; margin-left: 3.8%; margin-top: 0.5rem; }
	:is(.w-img, .wp-block-image) img { display: block; max-width: 100%; height: auto; }
	.w-img .desc, .wp-block-image figcaption { margin-top: 1rem; font-size: 1.2rem; color: #999; text-align: left; }
	.w-img .desc p:last-of-type { margin-bottom: 0; }

.gallery { margin-bottom: 3rem; }
	.gallery img { width: 100%; height: auto; object-fit: cover; }
	.gallery a:is(:hover, :focus) img { opacity: 0.5; }

.h-scroll-nav { display: none; justify-content: center; margin-top: 1rem; }
	.h-scroll-nav span { display: block; width: 8px; height: 8px; margin: 0 3px; border-radius: 50%; background-color: #999; }
	.h-scroll-nav .selected { background-color: #666; }

.section { padding-top: var(--section-pad); padding-bottom: var(--section-pad); }
	.section > :last-child { margin-bottom: 0; }
.section.-top { padding-top: var(--section-pad); padding-bottom: 0; }
.section.-bottom { padding-top: 0; padding-bottom: var(--section-pad); }
.section.-gray { background-color: var(--c-gray-ll); }
:is(.section, .box).-green { background-color: var(--c-main); color: var(--c-white); }
	:is(.section, .box).-green a:not(.bt) { color: currentColor; text-decoration: underline; }
:is(.section, .box).-yellow { background-color: var(--c-sec); }
:is(.section, .container).-split { margin-block: calc(var(--section-pad) / 2); padding-block: calc(var(--section-pad) / 2); border-top: 1px solid var(--c-border); border-bottom: 1px solid var(--c-border); }
	:is(.section, .container).-split > :last-child { margin-bottom: 0; }

.section.-split-top { padding-top: var(--section-pad); border-top: 1px solid var(--c-border); }
.section .-split-top { margin-top: calc(var(--section-pad) / 2); padding-top: calc(var(--section-pad) / 2); border-top: 1px solid var(--c-border); }

.more { font-weight: bold; }
	.more::after { content: ' →'; }

.hero { background-color: var(--c-gray-ll); padding: 3rem 0; border-bottom: 1px solid var(--c-main-ll); color: var(--c-main); font-size: 1.8rem; }
	.hero .container { position: relative; z-index: 3; }
	.hero .container > :last-child { margin-bottom: 0; }
	.hero h4 { font-size: 1.6rem; font-weight: normal; }
	.hero h4 a { text-decoration: none; }
	.hero h1 { margin: 0 0 1rem; font-weight: normal; color: var(--c-main); font-weight: 600; }
.hero.img-replace { display: grid; place-content: center; min-height: 400px; padding: 7.5rem 0; color: var(--c-white); box-sizing: border-box; }
	.hero.img-replace::before { content: ''; position: absolute; z-index: 2; top: 0; right: 0; bottom: 0; left: 0; background-color: var(--c-black); opacity: 0.5; }
	.hero.img-replace h4 a { color: var(--c-white); }
	.hero.img-replace h1 { color: var(--c-white); }
	.hero img { z-index: 1; }

.ls-pag { margin-top: 4.5rem; }
	.ls-pag ul { display: flex; flex-wrap: wrap; gap: 0.5rem 0.5rem; align-items: center; justify-content: center; }
	.ls-pag .pages { display: grid; place-content: center; width: 2em; height: 2em; border: 2px solid var(--c-main); font-weight: bold; text-decoration: none; box-sizing: border-box; border-radius: 50%; overflow: hidden; text-overflow: ellipsis; }
	.ls-pag .selected { color: var(--c-main-ll); border-color: var(--c-main-ll); cursor: default; }
	.ls-pag .pages:not(.selected):is(:hover, :focus) { background-color: var(--c-main); border-color: var(--c-main); color: var(--c-white); }

	.ls-pag .bt { display: grid; place-content: center; width: 2em; height: 2em; padding: 0; background: transparent; border: 0; box-sizing: border-box; }
	.ls-pag .bt svg { width: 2em; height: auto; }
	.ls-pag .bt:is(:hover, :focus) { background: transparent; color: var(--c-sec); }
	.ls-pag .prev { margin-right: 1.5rem; transform: rotate(180deg); }
	.ls-pag .next { margin-left: 1.5rem; }

.col-archives { display: grid; grid-template-columns: 100px 1fr; gap: 4.5rem 3.8%; }
	.col-archives .side { border-right: 1px solid var(--c-border); }

.ls-archives { display: grid; gap: 0.5rem 20px; font-weight: 900; }
	.ls-archives a { display: block; }
	.ls-archives a[aria-current] { color: var(--c-text); text-decoration: none; }

.box { padding: var(--main-pad); background-color: var(--c-gray); }
	.box > :last-child { margin-bottom: 0; }

blockquote { margin-bottom: 3rem; padding: 1rem 0 1rem var(--main-pad); font-size: 1.4em; line-height: 1.3; font-style: italic; border-left: 2px solid var(--c-main); color: var(--c-main); }
blockquote > :last-child { margin-bottom: 0; }
:where(*) + blockquote { margin-top: 3rem; }

table { width: 100%; border: 1px solid var(--c-main-ll); font-size: 1.4rem; line-height: 1.3; }
	table thead { background-color: var(--c-main); color: var(--c-white); font-weight: 900; text-transform: uppercase; font-size: 1.2rem; }
	table thead th { vertical-align: middle; }
	table th small { display: block; font-size: 85%; }
	table tr { border-bottom: 1px solid var(--c-main-ll); }
	table :is(td, th) { padding: 0.5rem 10px; }
	table tbody tr:nth-child(2n) { background-color: rgba(173, 194, 182, 0.25); }
	table tbody td { border-right: 1px solid var(--c-main-ll); }

.tbl-legend { margin-top: 0.5rem; font-size: 1.4rem; opacity: 0.75; }

/** home */
.main { position: relative; display: flex; align-items: center; min-height: 500px; background-color: var(--c-text); }
	.main.img-replace::before, .home-bloc.img-replace::before { content: ''; position: absolute; z-index: 2; top: 0; right: 0; bottom: 0; left: 0; background: #000; opacity: 0.65; }
	.main .container { display: flex; justify-content: center; align-items: center; }
	.main .txt { position: relative; z-index: 3; max-width: 80%; margin: 0 auto; padding: 7.5rem 0; font-size: 2rem; color: var(--c-white); text-align: center; }
	.main h1 { font-size: 4.5rem; }
	.main .bt:is(:hover, :focus) { background-color: var(--c-white); color: var(--c-main); }

.home-blocs { --grid-content : 232px; --pad-top: 3rem; display: grid; grid-template-columns: var(--grid-extend) var(--grid-content) var(--grid-content) var(--grid-content) var(--grid-content) var(--grid-extend); gap: 8px; }
	.home-bloc { position: relative; min-height: 200px; box-sizing: border-box; }
	.bloc3, .home-bloc .box-click { padding: var(--pad-top) 15px 3rem; height: 100%; box-sizing: border-box; }

	.home-bloc > a, .home-bloc .inner > a { position: relative; text-decoration: none; }

	.home-bloc .box-click { position: relative; z-index: 3; display: block; color: currentColor; }
	.home-bloc .box-click::before { content: ''; position: absolute; top: 100%; right: 0; bottom: 0; left: 0; background-color: var(--c-black); opacity: 0.25; }
	.bloc2 .box-click::before { background-color: var(--c-white); }
	.home-bloc .box-click:is(:hover, :focus)::before { top: 0; }
	.home-bloc .box-click:is(:hover, :focus) h3 { color: var(--c-sec); }
	.home-bloc .box-click:is(:hover, :focus) h3 span { color: var(--c-white); }
	.bloc2 .box-click:is(:hover, :focus) h3 { color: var(--c-main); }

	.home-bloc a h3 { position: relative; display: flex; padding-left: calc(24px + 20px); font-size: 1.8rem; text-transform: uppercase; font-weight: normal; }
	.home-bloc h3 span { position: absolute; top: calc(-0px - var(--pad-top)); left: 0; bottom: 0; width: 24px; display: flex; align-items: flex-end; justify-content: center; background-color: var(--c-sec); }
	.home-bloc h3 span svg { display: block; width: 18px; height: 18px; margin-bottom: 5px; object-fit: contain; }
	.home-bloc h3 .arrow { flex: 0 0 auto; position: relative; top: 2px; width: 1em; height: 1em; margin-left: 25px; color: var(--c-sec); }
	:is(.bloc2, .bloc3) h3 span { background-color: var(--c-main); color: var(--c-white); }
	:is(.bloc2, .bloc3) h3 .arrow { color: var(--c-main); }


	:is(.bloc2, .bloc3) .inner { max-width: 458px; }
	.bloc1 { grid-column: 2 / span 2; background-color: var(--c-main); color: var(--c-white); }
	.bloc2 { grid-column: 4 / span 3; background-color: var(--c-gray); }
	.bloc3 { grid-column: 1 / span 3; background-color: var(--c-gray-ll); }
		.bloc3 .inner { margin-left: auto; }
	.bloc4 { background-color: var(--c-main); color: var(--c-white); }
	.bloc5 { background-color: var(--c-main); color: var(--c-white); }

	.tns-outer { position: relative; }
	.home-blocs .tns-controls { position: absolute; z-index: 2; bottom: 0; right: 0; display: flex; align-items: center; gap: 5px; }
	.home-blocs .tns-controls button { display: block; width: 30px; height: 30px; padding: 0; background: transparent; }
	.home-blocs .tns-controls button .arrow { width: 100%; height: auto; }
	.home-blocs .tns-controls button:is(:hover, :focus) { color: var(--c-sec); }
	.home-blocs [data-controls="prev"] { transform: rotate(180deg); }

.map-project { --grid-content: 316.8px; display: grid; grid-template-columns: var(--grid-extend) var(--grid-content) var(--grid-content) var(--grid-content) var(--grid-extend); background-color: var(--c-main-l); color: #fff; }
	.map-project h2, .map-project h2 a { color: currentColor; }
	.map-project h2 a:is(:hover, :focus) { opacity: 0.75; }
	.map-project .col-map { position: relative; grid-column: 1 / span 2; display: flex; align-items: flex-end; }
	.map-project .map { flex: 1 0 auto; position: relative; display: inline-block; width: 90%; max-width: 500px; max-height: 500px; }
	.map-project .map img { display: block; width: auto; height: 100%; }
	.map-project .legend { position: absolute; z-index: 2; left: var(--main-pad); bottom: var(--main-pad); color: var(--c-white); font-size: 1.8rem; line-height: 1.2; text-transform: uppercase; }
	.map-project .legend strong { color: var(--c-sec); }
	.map-project .points li { position: absolute; transform: translate(-50%, -50%); }
	.map-project .points :is(a, span, button) { display: grid; place-content: center; width: 20px; height: 20px; padding: 0; background: var(--c-sec); color: var(--c-main); border-radius: 50%; line-height: 1; text-decoration: none; }
	.map-project .points span { cursor: default; }
	.map-project .points button { font-weight: normal; font-size: 1em; text-transform: none; }
	.map-project .points button:is(:hover, :focus) { background-color: var(--c-main); color: var(--c-sec); }
	.point-info { position: absolute; z-index: 10; top: 20px; left: 20px; display: block; width: max-content; max-width: 250px; margin: 0; padding: 1rem 10px; border: none; background-color: var(--c-main); color: var(--c-white); font-size: 1.2rem; box-shadow: 0 0 10px rgba(255, 255, 255, 0.1), 0 0 20px rgba(255, 255, 255, 0.2), 0 0 30px rgba(255, 255, 255, 0.3); box-sizing: border-box; }
		.point-info h4 { margin-bottom: 0.5rem; font-weight: 900; font-size: 1.4rem; }
		.point-info ul { margin-left: 15px; list-style-type: disc; }

	.map-project .txt { grid-column: 3 / span 2; padding-left: var(--section-pad); padding-top: var(--section-pad); padding-bottom: var(--section-pad); box-sizing: border-box; }
	.pj-ls-map { counter-reset: term; columns: 2; gap: 3.8%; }
		.pj-ls-map > li { position: relative; margin-top: 1rem; }
		.pj-ls-map > li:first-of-type { margin-top: 0; }
		.pj-ls-map > li :is(a, span)::before { content: counter(term, decimal); position: absolute; left: 0; top: 0; width: 1.25em; height: 1.25em; border-radius: 50%; color: var(--c-main); background-color: var(--c-sec); text-align: center; font-size: 1.8rem; line-height: 1; counter-increment: term; }
		.pj-ls-map :is(a, span) { padding-left: 1.875em; color: var(--c-white); text-decoration: none; }
		.pj-ls-map a { text-decoration: underline; }
		.pj-ls-map a:is(:hover, :focus) { opacity: 0.75; }

.home-news {}
	.home-news h2 { margin-bottom: 4.5rem; text-align: center; }

.home-foot { display: grid; grid-template-columns: 1fr 640px 320px 1fr; }
	.home-foot > * { box-sizing: border-box; }
	.home-foot .home-newsletter { grid-column: 2; padding-right: var(--main-pad); }
	.home-newsletter h3 { margin-bottom: 3rem; text-transform: none; font-weight: 900; color: var(--c-main); }
	.home-newsletter input { background-color: transparent; border: none; border-bottom: 1px solid var(--c-border); }

	.home-foot .home-quote { grid-column: span 2; padding-right: var(--main-pad); background-color: var(--c-gray); font-size: 1.8rem; color: var(--c-main); }
	.home-foot .inner { max-width: 320px; padding-left: var(--main-pad); }
	.home-quote h3 { font-size: 1.3333em; font-weight: 900; color: var(--c-main); }

/** news */
.bloc-news {}
	:is(.bloc-news, .-news) time { display: block; opacity: 0.75; }
	.-news time { margin-bottom: 1.5rem; }
	.bloc-news h3 { font-weight: 600; text-transform: none; }
	.bloc-news .text { margin-bottom: 1.5rem; }

.home-bloc .bloc-news { font-size: 1.4rem; }
	.home-bloc .bloc-news h3 { font-size: 1em; }

.ls-news { row-gap: 6rem; }
	.ls-news h3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
	.ls-news time { margin-bottom: 1.5rem; }
	:is(.ls-news, .-news) h3 { margin-bottom: 0; font-size: 1.6rem; text-transform: uppercase; font-weight: 600; }
.ls-news:where(:not(.cols3)) { display: grid; grid-template-columns: 1fr; font-size: 1.6rem; }
	.ls-news:where(:not(.cols3)) article:not(:last-child)::after { content: ''; display: block; height: 1px; background-color: var(--c-border); transform: translateY(3rem); }
	.ls-news:where(:not(.cols3)) h3 { font-size: 1.125em; }
	.ls-news:where(:not(.cols3)) time { font-size: 1em; }
.-news {}
	.-news h3 { font-size: 1em; }
	.-news time { font-size: 0.875em; }
	.-news .text { margin-bottom: 1.5rem; }

.news-pdf { position: relative; display: inline-block; padding: 0.5rem 0 0 34px; text-decoration: none; text-transform: uppercase; font-size: 1.4rem; line-height: 1.2; font-weight: bold; }
	.news-pdf::before { content: ''; position: absolute; top: 0; left: 0; display: block; width: 24px; height: 24px; background: var(--c-sec) url(img/icn-download.svg) 50% 50%/60% no-repeat; }
	.news-pdf:is(:hover, :focus)::before { background-color: var(--c-main); }

/** reports */
.ls-report { row-gap: 4.5rem; }
	.ls-report article { row-gap: 4.5rem; }
	:is(.ls-report, .-report) h3 { margin-bottom: 1.5rem; font-size: 1.8rem; font-weight: 600; }
	:is(.ls-report, .-report) h3 small { display: block; margin-top: 0.25rem; text-transform: none; font-weight: normal; font-style: italic; color: var(--c-text); font-size: 1.4rem; opacity: 0.75; }
	:is(.ls-report, .-report) ul { display: grid; row-gap: 0.5rem; }

/** prensentation */
.page-id-857 {}
	.page-id-857 ol { margin-bottom: 3rem; }
	.page-id-857 ol li + li { margin-top: 2.5rem; }
	.page-id-857 ol h3 { margin-bottom: 0; font-size: 2rem; text-transform: none; font-weight: 900; }
	.page-id-857 ol p { opacity: 0.75; }

/** project */
.col-projet { display: grid; grid-template-columns: 200px 1fr; align-items: start; gap: 3rem 3.8%; padding-top: var(--section-pad); }
	.col-projet .side { position: sticky; z-index: 100; top: -1px; padding-top: 1px; }
	.col-projet .home-news { padding-inline: var(--main-pad); }

.nav-side { font-size: 1.4rem; }
	.nav-side ul { display: grid; border-top: 1px solid var(--c-main-ll); }
	.nav-side li { border-bottom: 1px solid var(--c-main-ll); }
	.nav-side a { display: block; padding: 0.5rem; text-decoration: none; line-height: 1.1; font-weight: bold; }
	.nav-side .active { background-color: var(--c-main); color: var(--c-white); }

.pj-info { display: grid; grid-template-columns: auto 1fr; gap: 1rem 15px; }
	.pj-info dt { position: relative; top: 0.2rem; text-transform: uppercase; font-size: 0.875em; font-weight: 900; }

.pj-tbl { margin-bottom: 4.5rem; }
	.pj-tbl table { margin-top: 0.5rem; }

.pj-gal { padding-top: var(--section-pad); }
	:is(.pj-gal, .media-bloc) ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; }
	:is(.pj-gal, .media-bloc) ul a { position: relative; display: block; cursor: zoom-in; }
	:is(.pj-gal, .media-bloc) ul a::after { content: ''; position: absolute; z-index: 5; top: 100%; right: 0; bottom: 0; left: 0; background: var(--c-main); opacity: 0.5; }
	:is(.pj-gal, .media-bloc) img { display: block; width: 100%; height: auto; object-fit: cover; border: 1px solid var(--c-border); aspect-ratio: 1; box-sizing: border-box; }
	:is(.pj-gal, .media-bloc) ul a:is(:hover, :focus)::after { top: 0; }

/** media */
.media-bloc {}
	.media-bloc ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }
:is(.media-bloc, .bloc-content) + .media-bloc { margin-top: var(--section-pad); }

/** about */
.text :is(.timeline, .ls-team) { margin: 0; list-style-type: none; }
.timeline { display: grid; gap: 1.5rem 0; }
	.timeline > li { display: flex; align-items: flex-start; gap: 0 3.8%; }
	.timeline > li + li { margin-top: 3rem; }
	.timeline .txt { flex: 1 1 auto; display: grid; gap: 1.5rem 0; }
	.timeline .text { padding: 1.5rem 15px; background-color: rgba(255, 255, 255, 0.5); border-radius: 7px; }
	.timeline h2 { position: sticky; top: 5px; margin: 0; flex: 0 0 150px; font-size: 4.5rem; font-weight: normal; line-height: 1; background-color: var(--c-sec); border-top: 2px solid var(--c-main); }
	.timeline h3 { margin-bottom: 1rem; font-size: 2rem; }

.team-tax + .team-tax { margin-top: var(--section-pad); }

.ls-team { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 3.8%; font-size: inherit; }
	.text .ls-team li { padding: 0; }
	.text .ls-team li::before { display: none; }
	.ls-team li { display: grid; grid-template-columns: 150px 1fr; gap: 0 20px; align-items: center; font-size: 1.6rem; }
	.ls-team img { display: block; width: 100%; height: auto; }
	:is(.ls-team, .team-desc) h3 { margin-bottom: 0; font-size: 1.125em; }
	:is(.ls-team, .team-desc) h4 { font-size: 1em; line-height: 1.2; font-weight: normal; }
	.ls-team button { margin-top: 1rem; padding: 0; font-size: 1.2rem; background-color: transparent; color: var(--c-main); font-weight: bold; text-transform: uppercase; text-decoration: underline; }
	.ls-team button:is(:hover, :focus) { background-color: transparent; color: var(--c-sec); }

.team-desc { padding: 0; border: none; }
.-no-dialog .team-desc { position: fixed; z-index: 100; top: 0; right: 0; bottom: 0; left: 0; display: flex; align-items: center; overflow: auto; }
	.team-desc .overlay { position: fixed; z-index: 100; top: 0; right: 0; bottom: 0; left: 0; }
	.team-desc::backdrop, .-no-dialog .team-desc .overlay { background-color: var(--c-black); opacity: 0.75; }
	.team-desc .inner { position: relative; z-index: 101; min-width: calc(320px - (var(--main-pad) * 2)); max-width: 580px; margin: auto; padding: var(--main-pad); background-color: var(--c-white); box-sizing: border-box; }
	.team-desc h3 { color: var(--c-main); }
	.team-desc h4 { opacity: 0.65; }
	.team-desc .text { margin-top: 3rem; }
	.team-desc .close { position: absolute; top: 0; right: 0; padding: 0; width: 32px; height: 32px; color: var(--c-text); background-color: transparent; }
	.team-desc .close svg { position: absolute; top: 7px; right: 7px; bottom: 7px; left: 7px; }
	.team-desc .close path { fill: currentColor; }
	.team-desc .close:is(:hover, :focus) { color: var(--c-sec); }

/** search */
.search-box { line-height: 1.3; row-gap: 1.5rem; align-items: center; }

	.frm-search > div { position: relative; max-width: 520px; }
	.frm-search input { width: 100%; }
	.frm-search button { position: absolute; top: 0; right: 1px; bottom: 0; width: 40px; padding: 0; background: var(--c-main); color: var(--c-white); }
	.frm-search button::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: url(img/icn-search.svg) 50% 50%/50% no-repeat; }
	.frm-search button:is(:hover, :focus) { background-color: var(--c-sec); }

.result-count { margin: var(--section-pad) 0 1.5rem; opacity: 0.75; }

.ls-results { display: grid; row-gap: 3rem; padding-top: 3rem; font-size: 1.125em; border-top: 1px solid var(--c-border); }
	.ls-results > li { padding-bottom: 3rem; border-bottom: 1px solid var(--c-border); }
	.ls-results li > h3 { margin-bottom: 0; font-size: 1.8rem; text-transform: uppercase; }
	.ls-results h3 a { font-weight: 600; }
	.ls-results a { text-decoration: none; }
	.ls-results p { margin-top: 1rem; }

/** contact */
.content .bloc-addr { padding: var(--main-pad); background-color: var(--c-main); color: var(--c-white); }

/** newsletter */
.frm-news {}
	.frm-news .msgbox { padding: 10px; font-size: 1.4rem; }
	.frm-news .form-group { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 15px; margin: 0; }
	.frm-news input { width: 100%; }
	.frm-news input:focus { border-color: var(--c-main); }
	.frm-news button { display: flex; justify-content: center; align-items: center; width: 40px; padding: 0; }

/** cookie */
.cmplz-cookiebanner { --cmplz_button_font_size: 1.3rem; text-align: left; }
html .cmplz-cookiebanner .cmplz-title { font-weight: bold; }
html .cmplz-cookiebanner .cmplz-header { display: block; }
html .cmplz-cookiebanner .cmplz-divider { display: none; }
.cmplz-cookiebanner button { text-align: center; }
.cmplz-message { text-align: left; }

#cmplz-document { max-width: 708px; }
div.cmplz-document h2 { margin-bottom: 15px; font-size: 24px; }
div.cmplz-document h3 { margin-bottom: 0; font-size: 18px; font-weight: bold; }
div.cmplz-document i { font-style: italic; }
.cmplz-categories { margin-bottom: 15px; }
.cmplz-contact-organisation { font-weight: bold; }

#cmplz-cookies-overview .cmplz-dropdown.cmplz-dropdown-cookiepolicy summary div,
#cmplz-document .cmplz-dropdown.cmplz-dropdown-cookiepolicy summary div { grid-template: "heading paragraph chevron"; grid-template-columns: 2fr auto 25px; }

#cmplz-cookies-overview { margin-bottom: 45px; }
	#cmplz-cookies-overview details { font-size: 12px; }
	#cmplz-cookies-overview details + details { border-top: 1px solid #ddd; }
	#cmplz-cookies-overview summary { position: relative; }
	#cmplz-cookies-overview summary::after { content: '+'; position: absolute; top: 0; right: 0; font-size: 36px; line-height: 1; color: var(--c-main); }
	#cmplz-cookies-overview [open] summary::after { content: '-'; }
	#cmplz-cookies-overview p { margin: 0; }
	#cmplz-cookies-overview h4 { font-weight: bold; font-size: 14px; }
.cmplz-service-header { padding: 7px 0; }
	.cmplz-service-header p + p { display: none; }
.cmplz-service-description, .cmplz-sharing-data { margin-top: 10px; }
.cmplz-service-description { padding-right: 10px; }
.cookies-per-purpose { margin: 15px 0 10px; }
	.cookies-per-purpose h5 { font-size: 12px; font-weight: bold; color: #000; }
.cmplz-subtitle { font-weight: bold; }

html #cmplz-manage-consent .cmplz-manage-consent { left: 20px; }
@media (max-width: 768px) {
	html #cmplz-manage-consent .cmplz-manage-consent { display: inline-block; }
}
.cmplz-marketing.cmplz-statistics .cmplz-manage-consent { display: none; }
#cmplz-manage-consent .cmplz-manage-consent { --cmplz-manage-consent-offset: -25px; }

/* **************************** */
/** footer */
.foot { clear: both; background-color: var(--c-main); color: var(--c-white); }
	.foot > .container { padding-bottom: var(--section-pad); }
	.foot a { color: currentColor; }
	.foot h4 { margin-bottom: 1.5rem; color: var(--c-sec); text-transform: uppercase; font-size: 1.8rem; line-height: 1.3; }

	.foot .logo { margin-bottom: 3rem; }
	.foot .logo a { display: inline-block; }

	.bloc-addr {}
		.bloc-addr p { padding-left: 45px; background-position: 0 2px; background-repeat: no-repeat; }
		.bloc-addr a { text-decoration: none; color: currentColor; }
		.bloc-addr .addr { margin-bottom: 1.5rem; background-image: url(img/icn-home.svg); background-size: 24px; }
		.bloc-addr .tel { margin-bottom: 1.5rem; background-image: url(img/icn-tel.svg); background-size: 22px; }
		.bloc-addr .fax { margin-bottom: 1.5rem; background-image: url(img/icn-fax.svg); background-size: 24px; }
		.bloc-addr .email { background-image: url(img/icn-mail.svg); background-size: 24px; }
		.bloc-addr a:is(:hover, :focus) { color: var(--c-sec); }

	.foot nav a { display: block; padding: 5px 0; text-decoration: none; }
	.foot nav a:is(:hover, :focus) { color: var(--c-sec); }

	.foot-newsletter {}
		.foot-newsletter .text { margin-bottom: 1.5rem; }
		.foot-newsletter input { background-color: #fff; border: 1px solid var(--c-white); }
		.foot-newsletter button:is(:hover, :focus) { background-color: var(--c-white); color: var(--c-main); }

	.follow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 1.5rem; font-size: 1.8rem; }
		.follow a { position: relative; display: block; width: 32px; height: 32px; }
		.follow a svg { display: block; width: 100%; height: 100%; }
		.follow a:is(:hover, :focus) { color: var(--c-sec); }

	.copy { padding: 1rem 0; background-color: var(--c-main-l); line-height: 1.3; }
	.copy .container { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; }
	.copy :is(nav, p) { flex: 0 1 auto; }
	.copy nav ul { display: flex; flex-wrap: wrap; }
	.copy p::before { content:' / '; display: inline; }

/* **************************** */
/** responsive */
/** 768 */
@media screen and (max-width: 1023px) {
	.container, :is(.head, .foot) .container { width: 100%; padding-left: var(--main-pad); padding-right: var(--main-pad); box-sizing: border-box; }
	.container .container { padding-left: 0; padding-right: 0; }
	.out { transform: translateX(var(--main-pad--)); }
	.out .container { padding-left: var(--main-pad); padding-right: var(--main-pad); }

	/* head */
	.head > .container { flex-wrap: wrap; row-gap: 3rem; }
	.nav { flex: 0 0 100%; justify-content: flex-start; }
	.sec { background-color: var(--c-main-l); }
	.sec ul { padding-left: 0; }

	/* home */
	html { --grid-extend: var(--main-pad); }

	.main { min-height: inherit; }
	.main h1 { font-size: calc(2.2vw + 1em); }
	.main .txt { max-width: inherit; }

	.home-blocs { --grid-content : 1fr; }
	.bloc2 .inner { margin-right: var(--main-pad); }
	:is(.bloc2, .bloc3) .inner { max-width: inherit; }
	.bloc3 { grid-column: 1 / 6; }
		.bloc3 .inner { margin-left: var(--main-pad); }
	.bloc4 { grid-column: 2 / span 2; }
	.bloc5 { grid-column: 4 / span 2; }

	.map-project { --grid-content: 1fr; grid-template-columns: 1fr; }
	.map-project :is(.col-map, .txt) { grid-column: 1; }
	.map-project .col-map { order: 2; margin-top: 3rem; }
	.map-project .txt { padding-left: var(--main-pad); padding-right: var(--main-pad); padding-bottom: 0; }

	.home-foot { grid-template-columns: var(--main-pad) 2fr 1fr var(--main-pad); }

	/* gen */
	.hero.img-replace { min-height: inherit; }
	h1 { font-size: calc(3vw + 1em); }
	.box.cols2 { grid-template-columns: 1fr; }

	/* project */
	.col-projet { display: block; }
	.nav-side { z-index: 100; width: 100vw; margin: 0 var(--main-pad--) 3rem; border-bottom: 1px solid var(--c-main-ll); overflow: hidden; }
	.side.-stuck .nav-side { box-shadow: 0 0 1px rgba(0, 0, 0, 0.2), 0 0 15px rgba(0, 0, 0, 0.4), 0 0 25px rgba(0, 0, 0, 0.6); }
		.nav-side ul {
			display: flex;
			white-space: nowrap;
			overflow: scroll;
			overflow-x: scroll;
			overflow-y: hidden;
			background-image: linear-gradient(to right, var(--c-white), var(--c-white)), linear-gradient(to right, var(--c-white), var(--c-white)), linear-gradient(to right, rgba(0, 0, 20, .50), rgba(255, 255, 255, 0)), linear-gradient(to left, rgba(0, 0, 20, .50), rgba(255, 255, 255, 0));
			background-position: left center, right center, left center, right center;
			background-repeat: no-repeat;
			background-color: var(--c-white);
			background-size: 20px 100%, 20px 100%, 10px 100%, 10px 100%;
			background-attachment: local, local, scroll, scroll;
		}
		.nav-side ul::-webkit-scrollbar { display: none; }
		.nav-side ul { scrollbar-width: none; -ms-overflow-style: none; }
		.nav-side li { border: none; border-right: 1px solid var(--c-main-ll); }
		.nav-side a { padding-inline: 10px; }

	/* reports */
	.ls-report article { grid-template-columns: 1fr; }

	/* contact */
	.contact-content { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	/* foot */
	.foot .cols3 { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 4.5rem; }
	.foot .bloc-addr { grid-column: 1 / -1; }
	.copy .container { justify-content: flex-start; }
	.copy p { flex: 0 0 100%; }
	.copy p::before { display: none; }

	/* h scroll */
	.h-1023 { position: relative; margin-left: var(--main-pad--); margin-right: var(--main-pad--); padding-left: 0; padding-right: 0; }
		.h-1023 .scroll { z-index: 2; display: grid; grid-template-columns: 295px; grid-auto-columns: 295px; grid-auto-flow: column; column-gap: 45px; padding: 0 var(--main-pad); overflow: auto; -webkit-overflow-scrolling: touch; }
			.h-1023 .scroll::-webkit-scrollbar { display: none; -webkit-appearance: none; width: 14px; height: 8px; }
			.h-1023 .scroll::-webkit-scrollbar-thumb { border-radius: 8px; border: none; background-color: rgba(0, 0, 0, .3); }
			.h-1023 .scroll { scrollbar-width: none; -ms-overflow-style: none; }
			.h-1023 .scroll > * { margin-bottom: 8px; }
		.h-1023 .h-scroll-nav { display: flex; }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.ls-team li { grid-template-columns: 100px 1fr; font-size: 1.4rem; }

	table { font-size: 1.2rem; }
	table thead { font-size: 1.1rem; }

	.home-newsletter h3 { font-size: 2.4rem; }
	.home-foot .home-quote { font-size: 1.6rem; }
}

@media screen and (max-width: 810px) {
	.media-bloc ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.text.-big, .ls-news:where(:not(.cols3)), .ls-results, .hero { font-size: inherit; }
}
/** 640 */
@media screen and (max-width: 767px) {
	.content { overflow-x: clip; }
	.bloc-content .cols2 { grid-template-columns: 1fr; }
	.alignright, .alignleft { float: none; display: block; max-width: 100%; height: auto; }
	.alignleft { margin-right: 0; }
	.alignright { margin-left: 0; }

	/* head */
	.nav { display: none; }
	.sec ul { margin-left: 0; padding: 0.7rem 0; }
	.sec li:nth-child(2) { display: none; }

	.head { --secH: 2.1875em; }
	.head .logo { padding-left: 47px; }

	/* home */
	.home-foot { grid-template-columns: 1fr; }
	.home-foot .home-newsletter { padding-left: var(--main-pad); }
	.home-foot .home-quote { font-size: 1.8rem; }
	.home-foot .inner { max-width: inherit; }

	/* content */
	.tbl-responsive thead { display: none; }
	.tbl-responsive tr { display: grid; grid-template-columns: 1fr; }
	.tbl-responsive tr:last-child { border-bottom: none; }
	.tbl-responsive td { padding-top: 4px; padding-bottom: 4px; text-align: right; }
	.tbl-responsive td:not(:first-child) { border-top: 1px dotted var(--c-main-ll); }
	.tbl-responsive td::before { content: attr(data-title); float: left; margin-right: 10px; font-weight: 900; text-transform: uppercase; font-size: 1.2rem; }
	.tbl-responsive tbody td { border-bottom-style: dotted; }
	.tbl-responsive tbody td:last-of-type { border-bottom: none; }
	.tbl-responsive td { border-right: none; }

	/* about */
	.timeline h2 { flex-basis: 100px; font-size: 3.6rem; }
	.timeline h3 { font-size: 1.8rem; }

	.ls-team { grid-template-columns: 1fr; }

	/* search */
	.search-box { grid-template-columns: 1fr; }

	/* contact */
	.contact-content { grid-template-columns: 1fr; }

	/* mobile nav */
	.bt-nav-mobile { display: block; position: absolute; z-index: 101; top: calc(50% + calc(var(--secH) / 2)); left: var(--main-pad); width: 32px; height: 27px; padding: 0; background: transparent; transform: translateY(-50%); border-radius: 0; }
		.bt-nav-mobile span, .bt-nav-mobile span::before, .bt-nav-mobile span::after { transition-duration: 0.5s; position: absolute; left: 0; height: 3px; width: 32px; background-color: var(--c-main); }
		.bt-nav-mobile span { top: 12px; text-indent: -9999px; }
		.bt-nav-mobile span::before { content: ""; top: -12px; left: 0; }
		.bt-nav-mobile span::after { content: ""; top: 12px; left: 0; }
		.bt-nav-mobile.open span { transition-duration: 0.5s; background: transparent; }
		.bt-nav-mobile.open span::before { background-color: #333; transform: rotateZ(45deg) translate(8px, 9px); }
		.bt-nav-mobile.open span::after { background-color: #333; transform: rotateZ(-45deg) translate(8px, -9px); }
	.bt-nav-mobile:is(:hover, :focus) { background: transparent; }
	#mobile-overlay { display: none; position: absolute; top: var(--secH); right: 0; left: 0; height: 100%; z-index: 99; background-color: rgba(0, 0, 0, 0.25); }

	.nav-mobile { position: absolute; z-index: 100; top: var(--secH); left: 0; right: 0; padding: 8rem var(--main-pad) 3rem; background-color: var(--c-white); box-shadow: 0 10px 15px rgba(0, 0, 0, 0.25); }
		.nav-mobile dl { display: none; }

		.nav-mobile > ul { columns: 2; gap: 2px 3.8%; font-size: 1.8rem; }
		.nav-mobile > ul > li { break-inside: avoid; }
		.nav-mobile > ul > li > a { text-transform: uppercase; font-weight: 600; }
		.nav-mobile .sub-menu { position: static; display: block; min-width: inherit; padding: 0 0 0 10px; background: none; box-shadow: none; }
		.nav-mobile :is(.has-sm ul, .menu-item-has-children .sub-menu) { break-inside: avoid; }
		.nav-mobile a, .nav-mobile .sub-menu > li > a { display: block; padding: 0.7rem 0; line-height: 1.2; border: none; }
		.nav-mobile a:is(:hover, :focus),
		.nav-mobile :is(.current-menu-ancestor, .current_page_item, .current-menu-item) > a { text-decoration: underline; color: var(--c-black); }
		.nav-mobile :is(.has-sm, .menu-item-has-children) > a::after { display: none; }

		.nav-mobile .frm-search { margin-bottom: 3rem; }
		.nav-mobile .frm-search div { display: flex; }
		.nav-mobile .frm-search input { flex: 1 1 auto; background-color: var(--c-gray-ll); border: 1px solid var(--c-border); color: var(--c-text); }
		.nav-mobile .frm-search input::placeholder { color: inherit; }
		.nav-mobile .frm-search button { background-color: var(--c-main); color: #fff; }
		.nav-mobile .frm-search button:is(:hover, :focus) { background-color: var(--c-sec); }

	/* h scroll */
	.h-767 { position: relative; margin-left: var(--main-pad--); margin-right: var(--main-pad--); padding-left: 0; padding-right: 0; }
		.h-767::after { content: ''; position: absolute; z-index: 3; right: 0; top: 0; bottom: 0; width: 40px; background: linear-gradient(to left, var(--c-white) 45%, rgba(255, 255, 255, 0) 100%); }
		.h-767 .scroll { z-index: 2; display: grid; grid-template-columns: 295px; grid-auto-columns: 295px; grid-auto-flow: column; column-gap: 15px; padding: 0 var(--main-pad); overflow: auto; -webkit-overflow-scrolling: touch; }
			.h-767 .scroll::-webkit-scrollbar { display: none; -webkit-appearance: none; width: 14px; height: 8px; }
			.h-767 .scroll::-webkit-scrollbar-thumb { border-radius: 8px; border: none; background-color: rgba(0, 0, 0, .3); }
			.h-767 .scroll { scrollbar-width: none; -ms-overflow-style: none; }
			.h-767 .scroll > * { margin-bottom: 8px; }
		.h-767 .h-scroll-nav { display: flex; }
}

@media screen and (min-width: 480px) and (max-width: 767px) {

}

@media screen and (max-width: 640px) {
	/* h scroll */
	.tbl-wrap { position: relative; margin-left: var(--main-pad--); margin-right: var(--main-pad--); }
	.tbl-wrap::after { content: ''; position: absolute; z-index: 3; right: 0; top: 0; bottom: 0; width: 40px; background: linear-gradient(to left, var(--c-white) 45%, rgba(255, 255, 255, 0) 100%); }
	.tbl-wrap .scroll { z-index: 1; overflow: hidden; display: flex; flex-wrap: nowrap; overflow: auto; -webkit-overflow-scrolling: touch; padding-left: var(--main-pad); }
		.tbl-wrap .scroll::after { content: ''; display: block; flex: 0 0 var(--main-pad); height: 1px; overflow: hidden; }
		.tbl-wrap::-webkit-scrollbar { display: none; -webkit-appearance: none; width: 14px; height: 8px; }
		.tbl-wrap::-webkit-scrollbar-thumb { border-radius: 8px; border: none; background-color: rgba(0, 0, 0, .3); }
		.tbl-wrap .scroll { scrollbar-width: none; -ms-overflow-style: none; }
		.tbl-wrap table { flex: 0 0 580px; width: 580px; margin-bottom: 8px; }
}

/** 480 */
@media screen and (max-width: 639px) {
	html {
		--section-pad: 6rem;
	}
	h2 { font-size: 2.6rem; }
	h3 { font-size: 2rem; }

	/* head */
	.sec li:first-child { display: none; }
	.nav-mobile dl { display: grid; grid-template-columns: auto 1fr; gap: 0 5px; margin-bottom: 3rem; font-weight: 900; font-size: 1.6rem; }
	.nav-mobile dt { color: var(--c-sec); }
	.nav-mobile dd { color: var(--c-main); }

	/* home */
	.main .txt { padding: var(--section-pad) 0; font-size: 1.8rem; }
	.home-blocs { grid-template-columns: 100%; padding: var(--section-pad) var(--main-pad); }
	.home-blocs .home-bloc { grid-column: 1; }
	.home-bloc .inner { margin: 0; }

	/* content */
	.bt:not(.-med, .-sml, .next, .prev) { padding: 10px 20px; }
	.gallery.cols4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hero.img-replace { padding: var(--section-pad) 0; }

	.col-archives { display: grid; grid-template-columns: 1fr; }
	.col-archives .side { border-right: none; }
	.ls-archives { display: flex; flex-wrap: wrap; }

	/* project */
	.pj-info { grid-template-columns: 1fr; }
	:is(.pj-gal, .media-bloc) ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	/* about */
	.timeline > li { display: block; }
	.timeline h2 { margin-bottom: 3rem; }

	/* foot */
	.foot .cols3 { grid-template-columns: 1fr; }
}

@media screen and (max-width: 579px) {
	.team-desc { left: var(--main-pad); right: var(--main-pad); }
}
@media screen and (max-width: 480px) {
	html { --main-pad: 20px; --main-pad : max(20px, env(safe-area-inset-left)); }
	.out, .h-767, .tbl-wrap { width: auto; margin-left: var(--main-pad--); margin-right: var(--main-pad--); }
}
/** 414 */
@media screen and (max-width: 479px) {
	.main h1 { font-size: calc(2vw + 1em); }

	/* home */
	.map-project .map { width: 95%; height: 95%; }
	.pj-ls-map { columns: 1; }

	.home-newsletter h3 { font-size: 2rem; }

	/* content */
	.gallery.cols4, .gallery.cols3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	blockquote { font-size: 1.2em; }

	/* about */
	.ls-team li { grid-template-columns: 100px 1fr; font-size: 1.4rem; gap: 0 15px; }

	.h-1023 .scroll { column-gap: 30px; }
}
/** 375 */
@media screen and (max-width: 413px) {
	body { font-size: 1.4rem; }

	.main h1 { font-size: calc(1vw + 1em); }
	h2 { font-size: calc(2.5vw + 1em); }
	h3 { font-size: calc(1.5vw + 1em); }

	/* head */
	.head { --secH: 2.5em; }
	.bt-nav-mobile { --secH: 2em; }

	.nav-mobile > ul { columns: 1; }

	/* about */
	.timeline h3 { font-size: 1.6rem; }

	/* foot */
	.bloc-addr p { padding-left: 40px; }
	.bloc-addr :is(.addr, .fax, .email) { background-size: 20px; }
	.bloc-addr .tel { background-size: 18px; }
}
/** 320 */
@media screen and (max-width: 359px) {
	html { --main-pad: 15px; --main-pad : max(15px, env(safe-area-inset-left)); }

	.ls-team li { grid-template-columns: 80px 1fr; }
	.ls-team h4 { font-size: 1.2rem; }

	.-no-dialog .team-desc { left: 0; right: 0; }
}

/** clear */
.clearfix::after { content: "."; display: block; height: 0; clear: both; visibility: hidden; overflow: hidden; }

/**
 * glightbox
 */
.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;touch-action:none;-webkit-text-size-adjust:100%;text-size-adjust:100%;backface-visibility:hidden;outline:0;overflow:hidden}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{transition:transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:flex!important;justify-content:center;align-items:center;transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;opacity:1;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:flex;justify-content:center;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;touch-action:auto}.gslide-image{align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;object-fit:cover;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:grabbing!important;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';display:block;position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:var(--c-white);text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:grabbing!important;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:flex;width:100%;min-width:100%;background:var(--c-white);padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:flex;width:auto}.zoomed .gslide-media{box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;flex-direction:column}.gslide-description{position:relative;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;background:0 0;position:absolute;bottom:15px;padding:19px 11px;max-width:100vw!important;order:2!important;max-height:78vh;overflow:auto!important;background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:var(--c-white);font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:var(--c-white);font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc string{color:var(--c-white)}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:var(--c-white);opacity:.4}.gdesc-open .gslide-media{transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{transition:opacity .5s ease;opacity:1}.greset{transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;animation:lightboxLoader .8s infinite linear;border:2px solid var(--c-white);border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:var(--c-black);will-change:opacity}.glightbox-mobile .goverlay{background:var(--c-black)}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:flex;justify-content:center;align-items:center;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:var(--c-white)}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:var(--c-white)}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:var(--c-black);margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:var(--c-black)}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:var(--c-white)}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{animation:gfadeIn .5s ease}.gfadeOut{animation:gfadeOut .5s ease}.gslideOutLeft{animation:gslideOutLeft .3s ease}.gslideInLeft{animation:gslideInLeft .3s ease}.gslideOutRight{animation:gslideOutRight .3s ease}.gslideInRight{animation:gslideInRight .3s ease}.gzoomIn{animation:gzoomIn .5s ease}.gzoomOut{animation:gzoomOut .5s ease}@keyframes lightboxLoader{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gslideInLeft{from{opacity:0;transform:translate3d(-60%,0,0)}to{visibility:visible;transform:translate3d(0,0,0);opacity:1}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;transform:translate3d(0,0,0)}to{transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideInRight{from{opacity:0;visibility:visible;transform:translate3d(60%,0,0)}to{transform:translate3d(0,0,0);opacity:1}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;transform:translate3d(0,0,0)}to{transform:translate3d(60%,0,0);opacity:0}}@keyframes gzoomIn{from{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{order:1}.glightbox-container .ginner-container.desc-left .gslide-description{order:0}.glightbox-container .ginner-container.desc-left .gslide-image{order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:var(--c-black)}}
.gbtn { padding: 0; }
.glightbox-clean :is(.gnext, .gprev) { top: 50%; transform: translateY(-50%); }
@media screen and (max-width: 768px) {
	.glightbox-clean .gnext { right: 10px; }
	.glightbox-clean .gprev { left: 10px; }
}

/* https://ganlanyuan.github.io/tiny-slider/ */
.tns-outer{padding:0 !important}.tns-outer [hidden]{display:none !important}.tns-outer [aria-controls],.tns-outer [data-action]{cursor:pointer}.tns-slider{transition:all 0s}.tns-slider>.tns-item{box-sizing:border-box}.tns-horizontal.tns-subpixel{white-space:nowrap}.tns-horizontal.tns-subpixel>.tns-item{display:inline-block;vertical-align:top;white-space:normal}.tns-horizontal.tns-no-subpixel:after{content:'';display:table;clear:both}.tns-horizontal.tns-no-subpixel>.tns-item{float:left}.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item{margin-right:-100%}.tns-no-calc{position:relative;left:0}.tns-gallery{position:relative;left:0;min-height:1px}.tns-gallery>.tns-item{position:absolute;left:-100%;transition:transform 0s, opacity 0s}.tns-gallery>.tns-slide-active{position:relative;left:auto !important}.tns-gallery>.tns-moving{transition:all 0.25s}.tns-autowidth{display:inline-block}.tns-lazy-img{transition:opacity 0.6s;opacity:0.6}.tns-lazy-img.tns-complete{opacity:1}.tns-ah{transition:height 0s}.tns-ovh{overflow:hidden}.tns-visually-hidden{position:absolute;left:-10000em}.tns-transparent{opacity:0;visibility:hidden}.tns-fadeIn{opacity:1;filter:alpha(opacity=100);z-index:0}.tns-normal,.tns-fadeOut{opacity:0;filter:alpha(opacity=0);z-index:-1}.tns-vpfix{white-space:nowrap}.tns-vpfix>div,.tns-vpfix>li{display:inline-block}.tns-t-subp2{margin:0 auto;width:310px;position:relative;height:10px;overflow:hidden}.tns-t-ct{width:2333.3333333%;width:calc(100% * 70 / 3);position:absolute;right:0}.tns-t-ct:after{content:'';display:table;clear:both}.tns-t-ct>div{width:1.4285714%;width:calc(100% / 70);height:10px;float:left}
