@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Quicksand:wght@300;500;700&display=swap');

:root {
	--scrollbar-width: 0px;
	--bar-menu-real-height: 45px;
	--place-free-height: calc(100% - var(--bar-menu-real-height));
	--footer-visible: 0px;
	--place-free-height-footer: calc(var(--place-free-height) - var(--footer-visible));
	--color1: #92d1e4;
	--color1a: #cae7f1;
	--color1b: #0a73ce;
	--color1c: #3b86d1;
	--color1d: #0085e1;
	--color1e: #0086ae;
	--color1f: #005771;
	--color1g: #daf6ff;
	--color1h: #6ab4ca;
	--color2: #d72929;
	--color2a: #ff3636;
	--color2b: #ea3737;
	--color2od: #ff2f2add;
	--color3: #e84446;
	--bar-menu-color: #384547;
	--top-bg-color: #c13d3d;
	--btn-hover-color: #187489;
	--important-color: #e84446;
	--select: #a4d842;
	--select-hover: #a4d842;
	--normal-font: Inter, Helvetica, Arial;
	--normal-size-font: 1.6rem;
	--titre-font: Quicksand, Inter, Helvetica, Arial;
	--img-accorde: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 9l5 4 5-4 1 1-6 6-6-6 1-1z"/></svg>');
	--img-accorde-b: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" stroke="white" d="M7 9l5 4 5-4 1 1-6 6-6-6 1-1z"/></svg>');
	--img-doc: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="14"><path d="M12 14H1 0V0h8l4 3zM11 4H8a1 1 0 010-1V1H1v12h10zM4 2a1 1 0 101 1 1 1 0 00-1-1zm5 4H2v1h7zm0 2H2v1h7zm0 2H2v1h7z"/></svg>');
	--img-doc2: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="20"><path fill="%230a73ce" d="M0 2a2 2 0 012-2h8a1 1 0 011 0l5 5a1 1 0 010 1v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm14 4l-4-4v4h4zM8 2H2v16h12V8H9a1 1 0 01-1-1V2zm-4 9a1 1 0 011-1h6a1 1 0 110 2H5a1 1 0 01-1-1zm0 4a1 1 0 011-1h6a1 1 0 110 2H5a1 1 0 01-1-1z"/></svg>');
	--img-doc2b: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="20"><path fill="white" d="M0 2a2 2 0 012-2h8a1 1 0 011 0l5 5a1 1 0 010 1v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm14 4l-4-4v4h4zM8 2H2v16h12V8H9a1 1 0 01-1-1V2zm-4 9a1 1 0 011-1h6a1 1 0 110 2H5a1 1 0 01-1-1zm0 4a1 1 0 011-1h6a1 1 0 110 2H5a1 1 0 01-1-1z"/></svg>');
	--img-defaut: url('//www.partirou.com/images/accueil/ban/mobi/defaut-1.jpg');
}

/* html {scroll-behavior:smooth;} */

html.cacheBM {
	--bar-menu-real-height: 0px;
}

html.menuflo-ouv {
	overflow: hidden;
	margin-right: var(--scrollbar-width);
}

/* 14/10/2023
@media (pointer: coarse) {
	:root {
		--scrollbar-width: 0px;
	}
}
*/

/* Init */
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible;}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0;}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0;/* color:var(--color2); */}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder;}dfn{font-style:italic}h1{margin:.67em 0;}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none;border-width:0}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}button,input,optgroup,select,textarea{font:caption;font-size:16px;margin:0;}optgroup{font-weight:700}button,select{text-transform:none;font:inherit;}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button;cursor:pointer;}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
/*! Gilles v04/06/2016 */
html{font-size:calc(1em * .625);}
body{font-size:1.4rem;background-color:#fff;line-height:1.65;margin:0;}
blockquote,caption,details,dl,figure,label,ol,p,pre,td,textarea,th,ul{margin-top:.75em;margin-bottom:0;line-height:1.65;}
blockquote,code,img,input,legend,pre,svg,table,td,textarea,video{max-width:100%;}
table,td,textarea,th{vertical-align:top;}
table{table-layout:fixed;width:100%;border-collapse:collapse;margin-bottom:2rem;}
td,th{text-align:left;min-width:2rem;cursor:default;padding:.3em .8em;}
img{vertical-align:middle;}
hr{display:block;height:1px;margin:1em 0 2em;border:0;color:#ccc;background-color:#ccc;}
* {box-sizing:border-box;}
button,input,optgroup,select,textarea{font:inherit;/* pour IOS, ne zoom pas */}
iframe {max-width:100%;border:0;/* exemple dans /australie/ iframe YouTube */}
/* img:not([src$=".svg"]) {height:auto;} */ /* à garder au cas où */
/* *** */
textarea, select, input[type="text"], input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button, input[type="button"], input[type="submit"] {
	-webkit-appearance: none; /* IOS */
	appearance: none;
}
ul li::marker {font-size:1.2em;line-height:1;}

@media (max-width: 640px) {
	code,div,pre,samp,table,td,textarea,th{word-wrap:break-word;hyphens:auto;}
	input,select,textarea {font-size:16px;} /* pour éviter le zoom automatique sur IOS */
}

@keyframes opa01 {
	0% {opacity:0;}
	100% {opacity:1;}
}

.google-auto-placed {display:none !important; /* sécurité, si jamais insertion d'une bannière Google "Annonces automatique", faire disparaitre son affichage */}

html {scroll-padding-top:160px;}
html.cacheBM {scroll-padding-top:70px;}
html.cacheBM .topiSticky {top:0 !important;}

html, body {font-family:var(--normal-font);}

/* .h1 est utilisé dans les pages photos */
h1, .h1, h2, h3, h4, h5, .h2, #BM212, #menuflo {
	font-family: var(--titre-font);
	line-height: 1.1;
}

h1, .h1 {
	color: var(--color2);
	line-height: 1em;
}

.h1 {
	font-size: 1.6em;
	font-weight: bold;
	text-align: left;
}

.sh1 {
	margin: 4px 0 25px 0;
	text-transform: uppercase;
	font-size: .9em;
	letter-spacing: .1em;
}

h2, .h2 {color:#2D4462;font-size:1.8em;margin-top:4em;}
h3 {color:#2D4462;font-size:1.55em;margin-top:3.5em;}
h4 {color:#2D4462;font-size:1.3em;margin-top:3em;}
h5 {color:#2D4462;font-size:1.13em;margin-top:2.5em;}

.h2 {margin-bottom:.83em;font-weight:bold;text-align:left;}

.chapo {
	margin-bottom: 45px;
	font-size: 1.12em;
	line-height: 1.4;
}

.chapo:not(.sansBarre) {
	margin-left: 2px;
	border-left: 5px solid var(--color1);
	padding-left: 12px;
}

.chapo p {
	line-height: 1.4;
}

.box {display:none;}
.flex {display:flex;}
.displayNone {display:none;}
.big {font-size:1.2em;}
.coul1 {color:var(--color2);}
.clear {clear:both;}
.clear0 {clear:both;display:block;width:100%;height:0;}
.small {font-size:.8em;}
.nowrap {white-space:nowrap;}
.hyphens, .nowrap {hyphens:none;}

.box .lvind > *:not(.lvindGrp), .kalendae .k-days span.k-in-month.k-active:not(.k-selected) {color:var(--color1f);}

#BarreDeMenu {
	width: 100%;
	z-index: 100;
	position: relative;
	left: 0;
	top: 0;
}

#BarreDeMenu.pasFixe #BM {
	position: relative;
}

html.cacheBM #BarreDeMenu #BM {
	top: -45px;
}

#BarreDeMenu:not(.opa) {
	height: 45px; /* très important de le garder */
}

#BarreDeMenu.opa #BM {
	background-color: transparent;
}

#BM {
	height: 45px;
	position: fixed;
	width: 100%;
	background-color: #384547;
	transition: top .3s, opacity .8s;
	top: 0;
}

html.menuflo-ouv #BM {
	padding-right: var(--scrollbar-width);
}

#BMO {
	position: absolute;
	width: 100%;
	height: 0;
	top: 0;
	box-shadow: 0 0 20px 45px #00000099;
	z-index: -1;
}

#BM111, #BM1111, #BM1111 a, #BM212 {
	height: inherit;
}

#BM111 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 2880px;
	margin: auto;
}

#BM111 nav {
	flex: 1;
}

#BM1111 {
	padding-left: 2%;
	width: 110px;
}

#BM1111 a img {
	margin-top: 1.5%;
	height: 42px;
	width: 90.7px; /* CLS */
}

#BM1113 {
	width: 13%;
	max-width: 150px;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

#BM1113 img {
	width: 26px;
	height: 22px;
}

#BM212 {
	font-size: .9em;
}

#BM212 img {
	display: block;
	margin: auto;
	height: 25px;
	width: 25px;
}

#BM212 img[alt="Vols"] {/* transform:scale(1.25); */width:2.2em;}
#BM212 img[alt="Où et Quand partir"] {/* transform:scale(.85); */width:1.5em;}

#BM212 span {
	display: none;
}

#BM212 ul {
	margin: 0;
	padding: 0;
	list-style: none;
	white-space: nowrap;
	font-size: 1.2em;
	letter-spacing: .02em;
	height: 100%;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	overflow: hidden;
}

#BM212 ul li {
	display: inline-block;
	text-align: center;
	width: 24%;
	max-width: 70px;
	align-items: center;
	justify-content: center;
	height: inherit;
}

#BM212 ul li.sel::after {
	content: '';
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 10px solid var(--bar-menu-color);
	position: relative;
	top: -10px;
	display: block;
	margin: auto;
}

#BM212 ul li > a:hover, #BM1113:hover {
	background-color: #187489d9;
	background: linear-gradient(0deg, transparent, var(--color1e));
}

#BM212 ul li a:active {
	background-color: yellowgreen;
}

#BM212 ul li > a {
	color: #fff;
	text-decoration: none;
	display: block;
	height: inherit;
	display: flex;
	justify-content: center;
	flex-direction: column;
	width: 100%;
}

#menucache, #rechcache {
	display: none;
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
	bottom: 0;
	background-color: #6b6b6b80;
	z-index: 100;
}

html.menuflo-ouv #menucache {
	display: block;
}

#rechcache {
	background-color: #112d49e6;
	backdrop-filter: blur(9px) brightness(90%);
	-webkit-backdrop-filter: blur(9px) brightness(90%); /* IOS */
}

#menuflo {
	position: fixed;
	right: 0;
	top: 0;
	bottom: 0;
	font-size: 2.1rem;
	color: #282828;
	background-color: #fff;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	transform: translateX(100%);
	transition: all .5s;
	z-index: 100;
	padding: 15px 0;
}

html.menuflo-ouv #menuflo {
	transform: translateX(0);
}

#menuflo > span {
	background-color: inherit;
	border-radius: 3px;
	cursor: pointer;
	position: absolute;
	right: 8px;
	top: 8px;
	width: 50px;
	text-align: center;
	font-size: 1.8em;
}

#menuflo ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#menuflo li.deb {
	margin-top: 10px;
	border-top: 5px solid #ddd;
	padding-top: 10px;
}

#menuflo a {
	text-decoration: none;
	color: inherit;
	display: block;
	padding: 10px 35px 10px 15px;
	line-height: 1;
}

#menuflo a:hover, #menuflo span:hover {
	background-color: #187489;
	color: #fff;
}

#accueil {
	position: relative; /* important, sinon parfois un dépassement vers le bas de l'image de fond */
	width: 100%;
	height: 68.75vw; /* ratio calculé par l'image d'origine 550x100/800=68.75 */
	max-height: 45vh;
}

#accueil.abs {
	position: absolute;
	top: 0;
}

#accueil .fond {
	position: absolute;
	background-position: 50% 0;
	background-size: 100%;
	background-repeat: no-repeat;
	background-attachment: fixed;
	width: 100%;
	height: 100%;
	max-height: 100%;
}

html.menuflo-ouv #accueil .fond {
	background-size: calc(100% - var(--scrollbar-width));
	background-position-x: calc(50% - calc(var(--scrollbar-width) / 2));
}

#accueil .texte {
	padding: calc(45px + 1.5vw) 2vw 1.5vw 2vw;
	position: relative;
	height: 100%;
	width: 100%;
	max-width: 2880px;
	margin: auto;
	max-height: 100vw;
}

#accueil .flo {
	display: flex;
	width: 100%;
	height: 100%;
}

#accueil .titre {
	font-family: var(--titre-font);
	font-weight: normal;
	font-size: calc(1em + 3vw);
	line-height: 1;
	color: #fff;
	text-shadow: 0 0 3px #000, 0 0 1px #000;
}

#accueil .titre .petit {
	font-size: .55em;
	line-height: 1;
	display: block;
	max-width: 45vw;
	white-space: normal;
}

#accueil .flo .titre {
	position: sticky;
	top: 60px;
	/* margin-bottom: calc(-.1em - 14px); */ /* à garder au cas ou */
}

#accLegende {
	display: none;
	z-index: 1;
	position: absolute;
	bottom: 9px;
	right: 0;
	font-family: var(--titre-font);
	font-size: .9em;
	color: #fff;
	overflow: hidden;
}

#accLegende > * {
	text-align: center;
	line-height: 1.1;
	padding: 3px 22px;
	text-shadow: 0 0 10px #000;
	background-color: #0004;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px); /* IOS */
	transition: .3s all;
	border-radius: 4px 0 0 4px;
}

#accLegende > *:hover {
	background-color: #0006;
}

#accLegende1 {
	cursor: pointer;
}

#accLegende1 span {
	margin: 0 9px;
}

#accLegende1 span:first-child::before {
	content: "C'est quoi ?";
}

#accLegende1 span:last-child::before {
	content: "C'est où ?";
}

#accLegende2 {
	display: none;
	font-size: 1.1em;
	cursor: default;
	transform: translateX(999px);
}

#accLegende2 span + span::before {
	content: '-';
	margin: 0 6px;
}

#repDesti {
	display: none;
	position: absolute;
	font-family: var(--titre-font);
	font-size: 2.2rem;
	line-height: 1.2;
	color: #fff;
	margin: 2px 5px;
	white-space: initial; /* important wrap */
	text-align: left;
}

#repDestiFerme {
	display: none;
	position: absolute;
	right: -50px;
	font-size: 1.8em;
	cursor: pointer;
	margin: 0 15px;
	line-height: .8;
	color: #000;
	filter: invert(1);
}

#repDesti .lesDesti {
	overflow: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	font-size: .9em;
	max-height: none;
	color: #fff;
	height: inherit;
	width: 100%;
	max-width: inherit;
	align-content: flex-start;
	padding-bottom: 400px;
	justify-content: flex-start;
}

#repDesti .lesDesti.err {
	justify-content: center;
}

#repDesti .uneDesti {
	margin: 25px 0;
	width: 100%;
}

#repDesti .uneDesti:not(:has(.i)) { /* Fait disparaire les propositions qui ne contiennent aucun lien (class i) */
	display: none;
}

#repDesti .ti {
	font-size: 1.3em;
	border-bottom: 3px solid #fff;
	padding-bottom: 5px;
	margin-bottom: 5px;
	line-height: 1.1;
}

#repDesti .ti div {
	font-size: .6em;
	opacity: .6;
}

#repDesti .i, #repDesti a {
	color: #fff;
	margin: 0;
	padding: 5px;
	white-space: normal;
	border-radius: 3px;
	text-align: left; /* important */
}

#repDesti a:hover, #repDesti .c a:hover, #repDesti .c:hover a:hover {
	color: #000;
	background-color: #a4d842;
	text-decoration: none;
}

#repDesti .i {
	display: flex;
}

#repDesti .c span {
	cursor: pointer;
	display: inline-block;
	margin-bottom: 4px;
}

#repDesti .c:hover {
	box-shadow: 0 0 0 2px #ffffff3d;
	border-radius: 9px
}

#repDesti .c:hover a {
	color: #fff;
}

#repDesti .i::before {
	content:'';
	width: 22px;
	height: 22px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 12px;
	filter: invert(1);
	opacity: .5;
	flex: 0 0 22px;
}

#repDesti a.i:hover::before {
	filter: invert(0);
	opacity: .7;
}

#repDesti .o::before {background-image:url(/images/i/svg/ou.svg);}
#repDesti .q::before {background-image:url(/images/i/svg/quand.svg);}
#repDesti .f::before {background-image:url(/images/i/svg/oeil.svg);}
#repDesti .b::before {background-image:url(/images/i/svg/euro.svg);}
#repDesti .v::before {background-image:url(/images/i/svg/avion.svg);}
#repDesti .s::before {background-image:url(/images/i/svg/sejour.svg);}
#repDesti .h::before {background-image:url(/images/i/svg/coeur.svg);}
#repDesti .c::before {background-image:url(/images/i/svg/recit.svg);background-size:20px;}

#repDesti .c a:first-child {
	margin-top: 5px;
}

#repDesti .c a {
	display: flex;
	font-size: .85em;
	padding: 2px;
	color: #ccc;
}

#repDesti .c a::before {
	content: '\2022';
	margin-right: 0;
	flex: 0 0 15px;
}


/*************** 08/05/2021
idéalement, le corps de la page doit être ainsi :
<main class="centre"> = centré avec marge droite et gauche automatique
ou <main class="centre pad23"> = centré + padding (marges interne) droite et gauche de 10px que pour les mobiles et de 15px pour les tablettes et 0px pour les desktop
ou (à créer) <main class="centre pad123"> = centré + padding (marges interne) droite et gauche de 5px que pour les mobiles et de 10px pour les tablettes et 15px pour les desktop
pad[mobile][tablette][desktop]
1=5px, 2=10px et 3=15px
ou utiliser la méthode avec l'ID "corps", qui équivant à class="centre pad23"
Exemple : <main id="corps">
ou avec option sans padding <main id="corps" class="sansPad"> = juste centré
*/
#corps {
	position: relative;
	min-height: calc(100vh - 287px);
}
.centre, #corps {
	max-width: 990px;
	margin-left: auto;
	margin-right: auto;
}
.pad33, #corps:not(.sansPad) {
	padding-left: 15px;
	padding-right: 15px;
}
.pad23 {
	padding-left: 10px;
	padding-right: 10px;
}
.pad1, .pad11, .pad13, .pad111 {
	padding-left: 5px;
	padding-right: 5px;
}
.pad222 {
	padding-left: 10px;
	padding-right: 10px;
}
.pad333 {
	padding-left: 15px;
	padding-right: 15px;
}
/**********************/


#fixObj1 {
	position: fixed;
	visibility: hidden;
	z-index: 9;
	width: 100%;
	left: 0;
	transition: all .3s;
	top: 44px;
	height: 35px;
}
html.cacheBM #fixObj1 {top:0;}
#fixObj1 > div {height:100%;}
#fixObj1 > div > div {height:100%;text-align:center;vertical-align:middle;background-color:var(--bar-menu-color);font-size:1.3em;color:#fff;cursor:pointer;padding-top:2px;}

/* Formulaire haut */
#spaceContForm {
	min-height: 16.5vw;
}

#contForm {
	opacity: 1;
	transition: opacity .8s, filter .8s;
	padding: 20px 15px;
	border-radius: 9px 9px 0 0;
	box-shadow: 0 0 8px #0006;
	margin: 120px auto 0 auto;
	background-color: #fff9;
	backdrop-filter: blur(9px) brightness(90%);
	-webkit-backdrop-filter: blur(9px) brightness(90%); /* IOS */
}

#contFormGlisse {
	position: absolute;
	height: 25px;
	top: 3px;
	left: 47%;
	cursor: s-resize;
}

#contFormGlisse div {
	border: 2px solid #999;
	border-left: 0;
	border-right: 0;
	width: 30px;
	height: 6px;
}

#contForm .titres {
	padding: 0 5px;
	margin-bottom: 10px;
}

#contForm .titres h1 {
	font-size: 1.6em;
	font-weight: bold;
	margin: 0;
	color: #111;
}

#contForm .titres .sh1 {
	margin-bottom: 0;
}

#contForm .case {
	border-radius: 2px;
	box-shadow: 0 0 3px #aaad;
}
/* *** */

/* barre de nav */
#navTB {
	display: flex;
	justify-content: flex-end;
}

#navTB > ul {
	margin: 0;
	padding: 0;
	list-style: none;
	white-space: nowrap;
	height: 100%;
	display: flex;
	justify-content: flex-end;
}

#navTB > ul li {
	display: inline-block;
	text-align: center;
	flex: 70px 0 0;
}

#navTB > ul li > * {
	display: block;
	height: 100%;
	color: #000;
}

#navTB > ul li:not(.actif) > * {
	cursor: pointer;
	border-radius: 5px;
}

#navTB > ul li:not(.actif) > *:hover {
	background-color: var(--color1a);
	background: linear-gradient(180deg, transparent, var(--color1a));
}

#navTB > ul li > * div {
	padding: 5px;
}

#navTB > ul li > * img {
	height: 20px;
	width: 20px; /* CLS */
}

#navTB > ul li > * span {
	display: block;
	font-size: .7em;
	white-space: normal;
	line-height: 1;
	padding: 4px 0;
}

#navTB > ul li.actif > * span {
	border-bottom: 4px solid #187489d9;
}

#navTB .ariane {
	padding-left: 10px;
}
/* *** */



hr {clear:initial;}

a {word-break:normal; /* a cause de init */outline:none;text-decoration:none;color:var(--color1b);}

/* *** style ae1 (pour récit) *** */
a.ae1, .ae1 p a:not([class]), .ae1 li a:not([class]), .ae1 nav a:not([class]) {
	background:
		linear-gradient(
			to right,
			rgba(100, 200, 200, 1),
			rgba(100, 200, 200, 1)
		),
		linear-gradient(
			to right,
			rgba(255, 0, 0, 1),
			rgba(255, 0, 180, 1),
			rgba(0, 100, 200, 1)
		);
	background-size: 100% .1em, 0 0.1em;
	background-position: 100% 100%, 0 100%;
	background-repeat: no-repeat;
	transition: background-size 400ms;
	text-decoration: none;
}
a.ae1:hover, .ae1 p a:not([class]):hover, .ae1 li a:not([class]):hover, .ae1 nav a:not([class]):hover {
	background-size: 0 .1em, 100% .1em;
}
/* exclusions */
.ae1 nav a:not(:hover), .ae1 span.photos a, .ae1 a[href="javascript:window.print();"], .ae1 a[onclick*="return hs.expand"] {
	background-image: none !important;
}

h2.ae1::before, .ae1 h2::before {
	content: '';
	display: block;
	background-color: #cde7f2;
	background: linear-gradient(135deg, var(--color1), transparent 75%);
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	width: 4.5em;
	height: 4.5em;
	margin-top: -0.9em;
	margin-left: -13px;
}
/* *** */

img {height:auto; /* pour loading lazy */}
img[onclick] {cursor:pointer;}

td, th {border:0;}

footer {
	margin-top: 100px;
	background-color: #384547;
	color: #d9d9d9;
	text-align: left;
	clear: both;
	line-height: 2;
	position: relative; /* a cause de la barre de navigation des récits et de la pub */
	z-index: 1;
}

footer a {
	color: var(--color1);
	text-decoration: none;
}

footer a:hover {color:var(--color1d);}

#pied_pied .rs img {
	margin: 9px 9px 0 0;
	width: 35px;
	height: 35px;
	opacity: .7;
}

#pied_pied .rs img[src="/images/i/svg/instagram-b.svg"] {transform:scale(1.04);}

#pied_pied .rs > div:last-child {
	display: inline-block;
	padding: 5px 15px;
	margin-top: 15px;
	color: #fff;
	text-transform: uppercase;
	border: 2px solid #fff;
	border-radius: 15px;
	text-align: center;
	font-size: .9em;
	opacity: .7;
	width: 95%;
}

#pied_pied .rs > div:last-child a {
	color: #fff !important;
}

#pied_pied .rs img:hover, #pied_pied .rs > div:last-child:hover {
	opacity: 1;
}

#pied_pied {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	line-height: 1.05;
	padding: 10px 0 5px 0;
	font-size: .9em;
}

#pied_pied > div {padding:0 15px 15px 15px;}
#pied_pied > div:first-child img {margin-left:-5px;height:75px;width:162px;/*CLS*/}
#pied_pied > div:nth-child(2) {flex:1;}
#pied_pied > div.liens > div {margin:1.3em 0;}

#pied_pied .cr div {
	display: inline-block;
	white-space: nowrap;
	hyphens: none;
}

footer .cr div::after {
	content: '-';
	margin: 0 5px 0 9px;
}

footer .cr div:last-child::after {display:none;}

#print {display:none;}
#print #msgRecit {display:none;}

.invert, .invertIMG img {filter:invert(100%);}

/* bouttons, champs et cases */
.b0 {
	color: #000;
	border: 0;
	cursor: pointer;
	padding: 2px 10px;
	font: inherit;
	font-size: 1.08em;
	background-color: #fff;
	cursor: pointer;
	white-space: nowrap;
	position: relative;
}

.b1 {
	min-height: 26px;
	font-size: 18px;
	line-height: 1;
	color: #fff;
	background-color: var(--color2);
	background-image: linear-gradient(135deg, #ffffff33 0%, transparent 30%, transparent 70%, #00000022 100%);
	border: 0;
	border-radius: 6px;
	cursor: pointer;
	transition: .2s all;
}

.bRech {
	min-height: 35px;
	font-size: 18px;
	line-height: 1;
	color: #fff;
	background-color: var(--color2);
	background-image: linear-gradient(135deg, #ffffff33 0%, transparent 30%, transparent 70%, #00000022 100%);
	border: 0;
	border-radius: 4px;
	cursor: pointer;
	transition: .2s all;
	padding: 3px 15px;
	letter-spacing: .03em;
}

.b1:hover, .bRech:hover {
	background-color: var(--color2b);
}

.b0:disabled {
	background-color: #e4e4e4;
	cursor: default;
	opacity: .4;
}

.b2 {
	background-color: var(--bar-menu-color);
	color: #eee;
	border: 0;
	cursor: pointer;
	margin-top: 3px;
	margin-bottom: 3px;
	letter-spacing: 1px;
	line-height: 1.1em;
	font-size: 1.5rem;
	padding: 10px 15px;
	min-height: 40px; /* mobile */
}

.b2:hover {
	background-color: #323737;
	color: #fff;
}

input[type="number"] {
	appearance: textfield;
	text-align: center;
}

.ch3, .ch4, .ch7, .ch9, .ch10 {
	font-size: 18px;
	text-align: left;
	border: 0;
	background-color: #fff;
	height: 35px;
}

.ch1 {
	border: 0;
	background-color: #fff;
	margin: 0;
	font-size: 16px; /* pour éviter le zoom sur IOS */
	padding-left: 5px;
	height: 35px;
	line-height: 35px;
	cursor: pointer;
}

.ch2 {
	font: inherit;
	background: var(--bar-menu-color);
	color: #fff;
	padding: 10px 15px;
	text-transform: uppercase;
	border: 0;
	cursor: pointer;
}

.ch3 {
	padding: 0 9px;
	margin: 1px 0;
	-webkit-appearance: none; /* IOS */
	appearance: none;
}

.ch4 {
	width: 135px;
	padding: 3px 9px 0;
	margin: 5px 0;
	cursor: pointer;
}

.ch6 {
	font: inherit;
	font-size: 1em;
	background: #ff7b47;
	color: #fff;
	padding: 4px 12px;
	border: 0;
	cursor: pointer;
}

.ch6:hover {
	background: #ff500b;
}

.ch7 {
	width: 30px;
	margin: 4px;
	-webkit-appearance: none; /* IOS */
	appearance: none;
	text-align: center;
	font-size: 19px;
}

.ch8 {
	font: inherit;
	font-size: 1em;
	background: #ff7b47;
	color: #fff;
	padding: 4px 12px;
	border: 0;
	cursor: pointer;
}

.ch9 {
	padding: 0 9px;
	-webkit-appearance: none; /* IOS */
	appearance: none;
	border: 1px solid #b6c3c6;
	border-radius: 6px;
}

#contForm .ch9 {
	border: 0;
	box-shadow: 0 0 3px #aaa7;
}

.ch11 {
	border: 0;
	background-color: #fff;
	margin: 0;
	padding-left: .4em;
	height: 1.7em;
	line-height: 1.7em;
	cursor: pointer;
}

.pointer {
	cursor: pointer;
}

.ch-poi, .ch-avion-d, .ch-avion-a, .ch-cal, .ch-euro, .ch-lou, .ch-pers, .ch-sejour {
	padding-right: 28px !important;
	background-repeat: no-repeat;
	background-position: calc(100% - 5px) center;
}

.ch-poi {
	background-image: url(/images/i/svg/ch/poi.svg);
	background-size: 21px;
}

.ch-avion-d {
	background-image: url(/images/i/svg/ch/avion.svg);
	background-size: 26px;
}

.ch-avion-a {
	background-image: url(/images/i/svg/ch/avion-a.svg);
	background-size: 26px;
}

.ch-cal {
	background-image: url(/images/i/svg/ch/calendrier.svg);
	background-size: 22px;
}

.ch-euro {
	background-image: url(/images/i/svg/ch/euro.svg);
	background-size: 20px;
}

.ch-lou {
	background-image: url(/images/i/svg/ch/loupe.svg);
	background-size: 20px;
}

.ch-pers {
	background-image: url(/images/i/svg/ch/personne.svg);
	background-size: 11px;
	background-position-x: calc(100% - 10px);
}

.ch-sejour {
	background-position: calc(100% - 5px) center;
	background-image: url(/images/i/svg/ch/sejour.svg);
	background-size: 24px;
}

.cp {
	padding: 4px 30px 4px 9px;
	background-image: url('/images/i/svg/fleche-bas.svg');
	background-size: 1.5em 1.5em;
	background-repeat: no-repeat;
	background-position: right 50%;
	cursor: pointer;
}

.cpp, .cppp {
	padding: 0 24px 0 4px;
	min-height: 26px;
	background-image: url('/images/i/svg/fleche-bas.svg');
	background-size: 1.5em 1.5em;
	background-repeat: no-repeat;
	background-position: right 50%;
	cursor: pointer;
}

.cp2::before, .cp2::after {
	content: '';
	display: inline-block;
	width: .6em;
	height: .6em;
	background-image: url(/images/i/svg/fleche-bas.svg);
	background-size: 1.5em 1.5em;
	background-repeat: no-repeat;
	background-position: center 50%;
	margin: 0 .6em;
}

.cb {border:1px solid #bbb;}
.cbb {border:1px solid #333;}
.cr {border-radius:4px;}
.cbt {background-color:transparent;}

.wait, .waitC {
	background-image: url(/images/loading.gif);
	background-repeat: no-repeat;
	background-position: right .2em center;
	background-size: 1.2em;
	cursor: wait !important;
}

.waitC {
	background-position: center;
	background-color: #fff0 !important;
	color: #0002 !important;
}

.wait:disabled, .waitC:disabled {
	background-color: inherit;
	opacity: 1;
}

@media screen and (max-width: 990px) {
	.ch3, .ch4 {padding:0 9px;}
	.b0::after {font-size:1em;top:5px}
	.cpp {padding:4px 35px 4px 9px;}
}


/* *** Controles Gilles *** */
.gil-ctrl {
	display: inline-flex;
	align-items: center;
	position: relative;
	cursor: pointer;
	margin: 0;
}
.gil-ctrl > label {
	margin: 0;
}
.gil-ctrl input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.gil-ctrl .case {
	box-sizing: content-box; /* permet de ne pas devoir modifier les "em" lorsqu'un "border" est ajouté */
	position: absolute;
	width: 1.2em;
	min-width: 1.2em;
	height: 1.2em;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-right: .3em;
}
.gil-ctrl.droite {
	float: right;
	margin-left: .3em;
}
/* Pour changer la taille de la case, ajouter par exemple à .case font-size:2em;top:-.2em; */
.gil-ctrl.radio .case {border-radius:50%;}
.gil-ctrl:hover input ~ .case {}
/* focus-visible */
.gil-ctrl input:focus ~ .case {outline:none;}
.gil-ctrl input:focus-visible ~ .case {outline:auto;}
/* */
.gil-ctrl input:disabled ~ .case {
	background: #e6e6e6;
	opacity: .6;
	pointer-events: none;
}
.gil-ctrl .case::after {
	content: '';
	position: absolute;
	opacity: 0;
	transition: all .5s;
}
.gil-ctrl input:checked ~ .case::after {
	opacity:1;
	transform: scale(1) translate(0, 0) rotate(-55deg);
}
.gil-ctrl.coche-v .case::after {
	width: .7em;
	height: .4em;
	background: transparent;
	border: .15em solid #3a3a3a;
	border-top: none;
	border-right: none;
	top: .18em;
	left: .18em;
	transform: scale(.3) translate(0, .3em) rotate(-55deg);
}
.gil-ctrl.coche-grand-v .case::after {
	width: 1.4em;
	height: .7em;
	background: transparent;
	border: .2em solid #3a3a3a;
	border-top: none;
	border-right: none;
	top: -.35em;
	left: -.2em;
	transform: scale(.3) translate(0, .8em) rotate(-55deg);
}
.gil-ctrl.coche-point .case::after {
	width: .8em;
	height: .8em;
	background: #3a3a3a;
	border-radius: 50%;
}
.gil-ctrl.coche-cercle .case::after {
	width: .4em;
	height: .4em;
	background: transparent;
	border: .2em solid #3a3a3a;
	border-radius: 50%;
}
.gil-ctrl input:disabled ~ .case::after {
	border-color: #7b7b7b;
}

.gil-ctrl.cartouche {
	flex-wrap: wrap;
	gap: 5px;
	align-items: stretch;
}

.gil-ctrl.cartouche .cont {
	border-radius: 4px;
	border: 2px solid #dadada;
	padding: .25em .5em;
	background-color: #eee;
	cursor: pointer;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 1.1;
	hyphens: none;
}

label.gil-ctrl.cartouche:hover input:not(:checked) ~ .cont, .gil-ctrl.cartouche label:hover input:not(:checked) ~ .cont {
	color: red;
	border-color: #888;
}

.gil-ctrl.cartouche input:checked ~ .cont {
	border-color: #ff9335;
	background-color: #fff;
}

.gil-ctrl.cartouche input:checked ~ .cont.leger {
	border-color: #b99f86;
}

ul.gil-ctrl-tab {
	padding: 0;
	margin: 0;
}

ul.gil-ctrl-tab li {
	line-height: 1.3;
	border-radius: 5px 5px 0 0;
	height: 36px;
	background-color: #d9d9d9a8;
	overflow: visible;
	text-overflow: ellipsis;
	display: inline-block;
	font-size: 1.7rem;
	padding: 0;
	white-space: nowrap;
	margin: 3px 3px 0 0;
}

ul.gil-ctrl-tab li:hover {
	background-color: #ffe6d0;
}

ul.gil-ctrl-tab li:last-of-type {margin-right:6px !important;}

ul.gil-ctrl-tab li a {
	padding: .4em 1em !important;
	display: block;
	float: none !important;
	overflow: visible;
	text-overflow: ellipsis;
	color: #003359;
	text-decoration: none;
	cursor: pointer;
}

ul.gil-ctrl-tab li:hover a {color:red;}
ul.gil-ctrl-tab li.gil-ctrl-tab-selected {background-color:white !important;}
.gil-ctrl-tab-cont:not(.gil-ctrl-tab-cont-selected) {display:none;}

/* *** */


#barSup1 {z-index:2;}

#DivListePages {min-width:200px;} /* <div> de la liste des pages dans le fil d'ariane */

.lien, .www {border:1px dashed #3399ff;padding:0 4px 1px 4px;margin:0 1px;text-decoration:none;border-radius:6px;font-size:.9em;display:inline-block;line-height:1.1em;position:relative;}
.www::before {content:'www';position:absolute;font-size:.7em;top:-2px;left:5px;padding:0 2px;background-color:#ffffec;line-height:.1em;vertical-align:top;height:4px;}
.reserve {text-decoration:none;border-radius:9px;font-size:.9em;padding:1px 6px 1px 4px;margin:0 1px;white-space:nowrap;display:inline-block;line-height:1.1em;background-color:var(--color1h);color:#fff;cursor:pointer;}
.reserve:visited {color:#fff;}
.reserve:hover {color:#fff;text-decoration:none;background-color:var(--color1b);}
.reserve::before {content:'\27A0';padding-right:3px;}
.reserveMulti {border:1px dashed #3399ff;border-radius:6px;padding:0 0 1px 4px;margin:0 1px;white-space:nowrap;display:inline-block;line-height:1.1em;position:relative;background-color:#e6fbff;}
.reserveMulti .reserve {animation-duration:1.5s;animation-name:opa01;}

.clampOuv {
	-webkit-line-clamp: inherit;
	max-height: 100vh;
}

.synFluxMois {display:flex;}
.synFluxMois.synFluxMoisGrand {container-type:inline-size;/* utile pour cqw */}
.synFluxMois div {
	width: 100%;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
}
.synFluxMois.synFluxMoisGrand div {font-size:min(1em,3.2cqw);}

.illuBande {
	text-align: center;
	font-size: 0;
	clear: both;
	display: flex;
	gap: .6vw;
	margin: 20px 0;
}

.illuBande > div {
	width: 100%;
	border-radius: 1vw;
	overflow: hidden;
}

.illuBande > div img {
	height: 100%;
	width: 100%;
	cursor: zoom-in;
}

.illuBande + .synthese {
	margin-top: 30px;
}


nav ul, nav ol {line-height:1.2;margin-bottom:.75em;}

/* vollet de navigation verticale gauche */
#navv {
	color: #5e5e5e;
	display: none;
	position: absolute;
	top: 0;
	height: 100%;
}

#navv.boxOuvert {
	display: block;
	position: fixed;
	top: calc(2vw + 29px);
	right: 4vw;
	height: 0; /* évite un léger scroll de la page lorsque l'on ouvre le navv */
	z-index: 1000;
}

#navv nav {
	position: sticky;
	top: 105px;
	max-height: calc(100vh - 120px);
	width: 225px;
	overflow-y: auto;
	overflow-x: hidden;
	line-height: 1.3;
	font-size: .85em;
	border-radius: 4px;
	margin-top: 2px;
	margin-left: -260px;
	transition: .3s all;
	padding: 5px;
}

#navv nav hr {height:5px;background-color:transparent;position:relative;margin:0;width:100%;}
#navv nav .n_t {font-weight:normal;font-size:1.2em;text-transform:uppercase;color:#7f7f7f;}
#navv nav .n_t, #navv nav .n_r {margin:1px 0 0;padding:0;border:0;}
#navv nav .n_r[onclick] {cursor:pointer;}
#navv nav > div {padding:7px 5px 0 5px;margin:5px 0;font-weight:bold;width:100%;}


#navv nav > div:not([class])::before {
	content: '';
	display: block;
	background-color: #cde7f2;
	background: linear-gradient(135deg, #cbe7ee, transparent 75%);
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	margin-top: -0.3em;
	margin-left: -0.4em;
	width: 1.7em;
	height: 1.7em;
}

#navv nav:has(div > div) > div, #navv nav hr + div {border-top:3px solid var(--color1a);}
#navv:not(.boxOuvert) nav:has(div > div) > div:not([class]) {margin-bottom:15px;}
#navv nav > div div {font-size:.9em;}
#navv nav > div div {margin:0;padding:3px 0 2px 11px;font-weight:normal;}
#navv nav > div > div:first-of-type, #navv nav > div > a > div:first-of-type {margin-top:3px;}
#navv nav > div > div div:first-of-type {margin-top:3px;}
#navv nav > div > div:last-of-type {margin-bottom:2px;}

#navv.boxOuvert nav {
	position: relative;
	top: 0;
	width: 92vw;
	max-width: 400px;
	border: 6px solid #fff;
	font-size: 1.4em;
	margin: 0;
	box-shadow: 0 0 200px 30px #000;
	max-height: 80vh;
	padding: 15px;
	background-color: #fff;
}

#navv.boxOuvert nav > div {
	width: 100%;
}

html.cacheBM #navv nav {
	top: 15px;
	max-height: calc(100vh - 32px);
}

html.cacheBM #navv.boxOuvert nav {
	top: 0;
	max-height: 80vh;
}
/* *** */

/* *** class responsives **** */
.w25p {width:100%;}
.w450 {width:50%;}
.w400 {width:100%;}
.w300 {width:300px;}

@media (pointer:fine) {
	#menuflo {padding-top:50px;}
}

/* Barres de défilement */
/* barre 1 */
.barDef { /* Firefox */
	scrollbar-width: thin;
	scrollbar-color: transparent transparent;
}
.barDef:hover { /* Firefox */
	scrollbar-color: #bdc8d2 #eee;
}
.barDef::-webkit-scrollbar {
	width: 10px;
	height: 10px;
	background-color: #eee0;
}
.barDef::-webkit-scrollbar-track {
	background-color: #eee3;
	box-shadow: inset 0 0 1px 1px #bbb;
	border-radius: 6px;
}
.barDef::-webkit-scrollbar-thumb {
	box-shadow: inset 0 0 12px #333;
	border-radius: 5px;
	border: 2px solid rgba(0, 0, 0, 0);
}
.barDef::-webkit-scrollbar-thumb:hover {
	box-shadow: inset 0 0 12px #000;
}
.barDef::-webkit-scrollbar-button {
	display:none;
}
@media screen and (max-width: 989.5px) {
	.barDef.barEtrMob::-webkit-scrollbar {
		width: 7px;
		height: 7px;
	}
}
/* barre 2 */
.barDef2 { /* Firefox */
	/* scrollbar-width: thin; */
	scrollbar-color: transparent transparent;
}
.barDef2:hover { /* Firefox */
	scrollbar-color: #bdc8d2 #eee;
}
.barDef2::-webkit-scrollbar {
	width:15px;
	padding:10px;
	margin:10px;
}
.barDef2::-webkit-scrollbar-track {
	box-shadow: inset 0 0 6px rgba(0,0,0,.2);
	border-radius: 10px;
}
.barDef2::-webkit-scrollbar-thumb {
	border-radius: 10px;
	box-shadow: inset 0 0 6px #1d1d1d;
	border: 3px solid rgba(0, 0, 0, 0);
}
.barDef2::-webkit-scrollbar-thumb:hover {
	box-shadow: inset 0 0 20px rgba(0,0,0,1);
}
.barDef2::-webkit-scrollbar-button {
	display:none;
}
/* barre 3 */
.barDef3 { /* Firefox */
	scrollbar-width: thin;
	scrollbar-color: transparent transparent;
}
.barDef3:hover { /* Firefox */
	scrollbar-color: #bdc8d2 #eee;
}
.barDef3::-webkit-scrollbar {
	width: 7px;
	height: 7px;
	background-color: #eee0;
}
.barDef3::-webkit-scrollbar-track {
	background-color: #adadad33;
	border-radius: 6px;
}
.barDef3::-webkit-scrollbar-thumb {
	box-shadow: inset 0 0 12px #999;
	border-radius: 5px;
	border: 2px solid rgba(0, 0, 0, 0);
}
.barDef3::-webkit-scrollbar-thumb:hover {
	box-shadow: inset 0 0 12px #484848;
}
.barDef3::-webkit-scrollbar-button {
	display:none;
}
/* commun */
.barDefHid::-webkit-scrollbar, .barDefHid::-webkit-scrollbar-track, .barDefHid::-webkit-scrollbar-thumb {visibility:hidden;}
.barDefHid:hover::-webkit-scrollbar, .barDefHid:hover::-webkit-scrollbar-track, .barDefHid:hover::-webkit-scrollbar-thumb {visibility:visible;}
@media (pointer:coarse) {
	.barDef:not(.barVisTac)::-webkit-scrollbar, .barDef2:not(.barVisTac)::-webkit-scrollbar, .barDef3:not(.barVisTac)::-webkit-scrollbar {display:none;}
}
/* *** */

/* *** Miniatures Guides *** */
.MiniaGuide {
	text-align: left;
	font-size: 1.35rem;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: calc(100% + 20px);
	margin: -10px;
}

/* permet d'aligner à gauche la dernière ligne flex */
.MiniaGuide::after {
	content: '';
	flex: auto;
}

.MiniaGuide article {
	width: calc(100% - 20px);
	margin: 10px;
	line-height: 1.3em;
	overflow: hidden;
	cursor: pointer;
}

.MiniaGuide .ouv {
	background-color: #fff;
	position: relative;
	display: flex;
	flex-direction: column;
	/* ne pas modifier, car utile lorsque le titre est sur plusieurs lignes et permet un alignement du texte à coté de l'image */
	justify-content: flex-end;
}

.MiniaGuide.coulAlt .ouv {
	background-color: #efefef;
}

.MiniaGuide .ouv > div {
	background-color: inherit;
	height: 100px;
}

.MiniaGuide article .t {
	padding: 0 4px 9px 9px;
	width: auto;
	position: relative;
}

.MiniaGuide .ouv .t {
	background: inherit;
	transition: all .5s;
	color: #000;
	height: 110px;
	z-index: 1; /* important pour concervé l'effet de vollet sur les images "récits" */
	-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 40%, rgba(255, 255, 255, 0) 65%, rgba(255, 255, 255, 0) 100%);
}

.MiniaGuide .ouv .t {
	height: auto;
	max-height: 47px;
	overflow: hidden;
	transition: max-height .8s;
	-webkit-mask-image: none;
	line-height: 1.1;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	padding-bottom: 0;
	border-bottom: 0 solid transparent;
}

.MiniaGuide article h2, .MiniaGuide article h3, .MiniaGuide article h4 {
	border: 0;
	margin: 0;
	padding: 6px 4px 6px 8px;
	font-size: 1.3em;
	line-height: 1.1;
	color: #2b2b2b;
}

.MiniaGuide article h2 span, .MiniaGuide article h3 span, .MiniaGuide article h4 span {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-size: .71em;
	font-weight: normal;
	color: #000;
}

.MiniaGuide article.sansSTitre h2 span, .MiniaGuide article.sansSTitre h3 span, .MiniaGuide article.sansSTitre h4 span {
	display: none;
}

.MiniaGuide article h2 span:nth-child(2), .MiniaGuide article h3 span:nth-child(2), .MiniaGuide article h4 span:nth-child(2) {
}

.MiniaGuide .tu {
	border-radius: 6px;
	border: 6px solid white;
	background-color: #fff;
	transition: box-shadow .3s;
}

.MiniaGuide .tu:hover, .MiniaGuide.contour .tu {
	box-shadow: 0 0 9px #888;
}

.MiniaGuide .ouv a {
	font-weight: bold;
	z-index: 0; /* cas d'un titre sur 2 ligne et d'un texte qui superpose l'image */
}

.MiniaGuide .ouv:hover .t {
	position: relative;
	z-index: 1;
	height: 350px;
	-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 60px, rgba(255, 255, 255, 1) 90px, rgba(255, 255, 255, 0) 100%);
}

.MiniaGuide .ouv:not(.sansTexte):hover .t {
	position: relative;
	z-index: 1;
	height: auto;
	max-height: 250px;
	-webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 5px, rgba(0, 0, 0, 1) 100%);
	-webkit-line-clamp: initial;
	display: block; /* pour Firefox, à cause du line-clamp */
	padding-bottom: 10px;
}

.MiniaGuide article > div > a > img {
	width: 100%;
	aspect-ratio: 1.838;
}

.MiniaGuide .ouv > div + a img {
	transition: opacity .5s;
}

.MiniaGuide .b {
	display: flex;
}

.MiniaGuide .b > * {
	width: 20%;
	padding: 5px 5px 7px;
	text-align: center;
}

.MiniaGuide .b > *:hover {
	background-color: var(--btn-hover-color);
}

.MiniaGuide .b > *:hover img {
	filter: invert(1);
	opacity: 1;
}

.MiniaGuide .b img {
	height: 18px;
	opacity: .7;
}

.MiniaGuide .b img[src="/images/i/svg/avion.svg"] {transform:scale(1.6);}

.MiniaGuide .ouv > div .b {
	position: absolute;
	text-transform: none;
	bottom: -100px;
	width: 100%;
	z-index: 1;
	font-size: .9em;
	line-height: 1.5em;
	transition: all .2s;
	background-color: inherit;
}

.MiniaGuide .ouv > div:hover .b, .MiniaGuide .ouv:hover .b {
	bottom: 0;
}

.MiniaGuide .ouv > div div.PlusLarge:hover {
	left: 0;
	width: 100%;
}

.MiniaGuide article > a > img {
	width: 100%;
	aspect-ratio: 1.5;
	transition: opacity .5s;
}

/* Bloc sans sous-titre */
.MiniaGuide article.sansSTitre > div {height:84px;}

/* Bloc sans texte */
.MiniaGuide article > div {min-height:initial;}
.MiniaGuide article.sansTexte > div {height:auto;}
.MiniaGuide article.sansTexte > div .t {display:none;}

.MiniaGuide article.rech > div {margin:1px 0 .47em;background-color:whitesmoke;}
.MiniaGuide article.rech > div:last-child {margin:1px 0 0;}
.MiniaGuide article.rech a {display:block;border:1px solid #e1e1ff;padding:5px;}
.MiniaGuide article.rech a:hover {background-color:var(--color1);}

.MiniaGuide .tu.mappemonde h3, .MiniaGuide .tu.rech h3 {padding:6px;}


/* MiniaGuide type mspec */
.MiniaGuide.mspec {width:100%;margin:0;}
.MiniaGuide.mspec .tu.mappemonde > div > a > img {margin:10px 0 15px;}
/* */

/* MiniaGuide type sansBox */
.MiniaGuide.sansBox article {margin-bottom:30px;}
.MiniaGuide.sansBox article h2, .MiniaGuide.sansBox article h3 {color:#666;padding:0 0 8px 0;}
.MiniaGuide.sansBox article .t {padding:0;}
.MiniaGuide.sansBox article h2, .MiniaGuide.sansBox article h3, .MiniaGuide.sansBox article h4 {padding-top:3px;}
/* */

/* MiniaGuide type txtInt */
.MiniaGuide.txtInt {align-items:flex-start;}
.MiniaGuide.txtInt article > div h3 {
	position: absolute;
	z-index: 1;
	width: 100%;
	background-color: #0000001a;
	color: #fff;
	text-shadow: 0 0 3px #000, 0 0 5px #000;
	backdrop-filter: blur(3px) brightness(85%);
	-webkit-backdrop-filter: blur(3px) brightness(85%);
	font-weight: normal;
}
.MiniaGuide.txtInt article h3 span {color:#eee;}
.MiniaGuide.txtInt article.rech h3, .MiniaGuide.txtInt article.mappemonde h3 {background-color:#5985b0;color:#fff;text-shadow:0 0 3px #000, 0 0 5px #000;font-weight:normal;}
.MiniaGuide.txtInt article.rech > div {margin:5px 0;background-color:#f6f6f6;}
.MiniaGuide.txtInt article.rech > div a {border:0;font-size:1.2em;font-weight:bold;font-family:var(--titre-font);}
.MiniaGuide.txtInt .tu.mappemonde > div > a > img {margin:10px 0 0;}
/* */




/* AFTER MOBILE - Miniatures Guides */
@media screen and (min-width: 480px) and (max-width: 639.9px) {
	.MiniaGuide.coulAlt .ouv:nth-child(4n+2), .MiniaGuide.coulAlt .ouv:nth-child(4n+3) {background-color:#cdc6b7;}
}
@media screen and (min-width: 480px) {
	.MiniaGuide article {width:calc(50% - 20px);}
	.MiniaGuide article > a > img, .MiniaGuide article > div > a > img {width:342px;}
	.MiniaGuide.txtInt article.rech > div a {font-size:1em;}
}
@media screen and (min-width: 640px) and (max-width: 960.9px) {
	.MiniaGuide.coulAlt .ouv:nth-child(2n+2) {background-color:#cdc6b7;}
}
@media screen and (min-width: 640px) {
	.MiniaGuide article {width:calc(33.33% - 20px);}
	.MiniaGuide .ouv .t {-webkit-mask-image:linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 60px, rgba(255, 255, 255, 0) 80px, rgba(255, 255, 255, 0) 100%);}
}
@media screen and (min-width: 960px) {
	.MiniaGuide.mspec {width:calc(100% + 20px);margin:-10px;}
	.MiniaGuide article {width:calc(25% - 20px);}
	.MiniaGuide.coulAlt .ouv:nth-child(8n+2), .MiniaGuide.coulAlt .ouv:nth-child(8n+4), .MiniaGuide.coulAlt .ouv:nth-child(8n+5), .MiniaGuide.coulAlt .ouv:nth-child(8n+7) {background-color:#cdc6b7;color:#fff;}
}
@media screen and (min-width: 1600px) {
	.MiniaGuide {font-size:1.45rem;}
}

@media (pointer:coarse) {
	.MiniaGuide .ouv > div + a img {margin-bottom:48px;}
	.MiniaGuide .ouv > div .b {bottom:0;}
	.MiniaGuide .b > * {padding-top:14px;padding-bottom:16px;}
	.MiniaGuide.mspec .tu.mappemonde > div > a > img {margin-bottom:55px;}
	.MiniaGuide.txtInt .ouv > div .b {background-color:#f1f1f1;}
}
/* *** *** */

.btnPlus {
	background-image: url(/images/i/svg/circle-plus.svg);
	background-repeat: no-repeat;
	background-position: center;
	width: 20px;
	height: 20px;
	opacity: .4;
	display: inline-block;
	vertical-align: middle;
	margin: 4px;
}

.hover:hover .btnPlus {opacity:.9;}

#BarreDeMenu #destiForm {display:none;}

#BarreDeMenu .preAvantRech > div {
	height: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	cursor: pointer;
}
.avantRech {z-index:1000;}
.avantRech #repDesti, .avantRech #repDestiFerme {display:block;}

.blocRech {
	display: flex;
	align-items: center;
	position: relative;
}

.avantRech .blocRech {width:calc(100% - 45px);}

#reqDesti.wait {background-position:right .5em center;}

#BarreDeMenu input#reqDesti::placeholder {opacity:.8;}

.blocRech input {
	width: 100%;
	outline: none;
	margin: auto;
	border: 0 !important;
	border-radius: 20px;
	vertical-align: bottom;
	padding: 5px 15px;
	height: 33px;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px); /* IOS */
}

#BM212 ul li.clicLoupe #destiLoupe {display:none;}
#BarreDeMenu .clicLoupe #destiForm {display:flex;}
#BM212 ul li.clicLoupe {
	width: 100%;
	max-width: none;
	position: absolute;
	left: 0;
	padding: 5px;
}

.focus1:focus, .bfocus1.boxFocus {
	outline: none;
	box-shadow: 0 0 1px 4px #a4d842;
}

@media screen and (min-width: 480px) {
	.blocRech input {width:170px;}
	.avantRech .blocRech {
		width: fit-content;
		margin: auto;
	}
}
@media screen and (min-width: 640px) {
	.blocRech input {
		font-size: .85em;
		height: 28px; /* IOS */
	}
}
@media screen and (min-width: 990px) {
	#BarreDeMenu #destiForm {display:flex;}
}








/* accordéon dynamique (avec ou sans <details>) */
/* si utilisation de <details>, mettre un <div> dans <summary> */
.accorde {
	margin-top: 1em;
	border-bottom: 1px solid #ddd;
}

.accorde + .accorde {
	margin-top: 0;
}

.accorde + p:not(.accorde) {
	margin-top: 1.5em;
}

.accorde > *:first-child:not(summary), .accorde > summary div {
	display: flex;
	font-weight: bold;
	cursor: pointer;
	padding-top: 10px;
	padding-bottom: .3em;
	width: 100%;
	line-height: 1.2em;
	color: var(--color1b);
}

.accorde > *:first-child:not(summary)::before, .accorde > summary div::before {
	background: var(--img-accorde-b);
}

.accorde[data-etat='open'] {
	padding-bottom: 1em;
	background: linear-gradient(to top, #204cffaa 0, transparent 2px);
}

.accorde + .accorde[data-etat='open'] {
	background: linear-gradient(to bottom, #204cffaa 0, transparent 2px), linear-gradient(to top, #204cffaa 0, transparent 2px);
}

.accorde[data-etat='open'] > *:first-child:not(summary)::before, .accorde[data-etat='open'] > summary div::before {
	transform: rotate(180deg);
}

.accorde > *:nth-child(2) > p:first-child {
	margin-top: .45em;
}

.accorde > *:nth-child(2) {
	overflow: hidden;
}

.accorde > *:nth-child(2) p:first-child {
	margin-top: 0;
}

.accorde[data-etat='open'] > *:nth-child(2) {
	max-height: none;
	padding-bottom: 15px;
}

.accorde:not([data-etat='open']) > *:nth-child(2) {
	max-height: 0;
}

/* IOS */
.accorde summary {outline:none;}
.accorde summary::-webkit-details-marker {display:none;}
/* *** */

/* accorde + rechWid */
.accorde > *:first-child:not(summary)::before, .accorde > summary div::before, .rechWid::before {
	content: '';
	position: relative;
	background-repeat: no-repeat;
	top: -.2em;
	margin-right: .6em;
	height: 1.5em;
	line-height: 1.5em;
	transition: all .2s;
	flex: 0 0 1.5em;
	background-color: var(--color1c);
	border-radius: 50%;
	color: #fff;
	font-weight: normal;
	text-align: center;
}
.accorde:not([data-etat='open']):hover > *:first-child:not(summary), .accorde:hover > summary div, .rechWid:hover {color:var(--color1c);}
.accorde:not([data-etat='open']):hover > *:first-child:not(summary)::before, .accorde:not([data-etat='open']):hover > summary div::before, .rechWid:hover::before {
	box-shadow: 0 0 0 2px white, 0 0 0 4px var(--color1);
	opacity: 1;
}
/* ** */

/* line clamp (nb de ligne maxi) */
/* Attention : fonctionne seulement sans tag enfant (sur Firefox, Safari... ; fonctionne pourtant sur Chrome */
.lineClamp {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
}
.lineClampPlus {
	text-align: center;
	cursor: pointer;
	line-height: 1;
	border-top: 5px solid #e9e9e9;
	opacity: .6;
	margin-top: 5px;
}
.lineClampPlus:hover {opacity:1;}
.lineClampPlus::after {
	content: '\00a0\00a0\2B9F\00a0\00a0suite\00a0\00a0\2B9F\00a0\00a0';
	display: inline-block;
	top: -12px;
	position: relative;
	background-color: white;
	color: #525252;
}
.lineClamp.lineClampOuvert {display:block;}
.lineClamp.lineClampOuvert ~ .lineClampPlus {display:none;}
/* *** */

.iAv, .iAp {cursor:pointer;}

.iAv::before, .iAp::after {
	content: 'i';
	display: inline-block;
	position: relative;
	text-align: center;
	width: 1.15em;
	height: 1.15em;
	border-radius: 50%;
	font-size: .85em;
	font-weight: bold;
	line-height: 1.2;
	font-family: Verdana;
	box-shadow: 0 0 1px 1px #b0afaf;
	background-color: #fff6;
	color: #777;
}

.iAv::before {margin-right:6px;}
.iAp::after {margin-left:6px;}

.iAv:hover::before, .iAp:hover::after {
	box-shadow: 0 0 1px 1px var(--color2);
	background-color: var(--color2);
	color: #fff;
}

.cligne {box-shadow:#fff 0 0 1px 2px inset, red 0 0 1px 4px inset;}

@supports (-webkit-touch-callout: none) and (not (translate: none)) { /* gap pour IOS ; a transformer, puis supprimer en 2024 */
	.illuBande {margin:20px -2px;}
	.illuBande > div {margin:0 2px;}
	.gil-ctrl.cartouche {margin:-5px;}
	.gil-ctrl.cartouche > * {margin:2px;}
}

.bonplan .wAutres {
	margin-top: 30px;
}

.bonplan .wAutres a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 12px 22px;
	color: #fff;
	text-decoration: none;
}

.bonplan .wAutres ul {
	text-align: left;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.bonplan .wAutres ul li {
	background-color: var(--color2b);
	background-image: linear-gradient(135deg, #ffffff33 0%, transparent 30%, transparent 70%, #00000022 100%);
	color: #fff;
	border-radius: 20px;
	margin: 5px;
	line-height: 1;
	white-space: nowrap;
	transition: .2s all;
	padding: 0;
}

.bonplan .wAutres ul li:hover {
	background-color: var(--color2a);
	box-shadow: 0 0 0 2px #fff, 0 0 0 4px #89b2e3bf;
}

.titre .legende {
	font-size: .8em;
	font-style: italic;
	text-align: right;
	margin-top: -12px;
	position: relative;
	z-index: 1;
	opacity: .8;
}


/*** fil d'ariane ***/
.ariane {
	flex: 1; /* cas où le fil se trouve dans une barre de nav ; exemple récits ou vols */
	color: #000;
}

.ariane ul { /* init */
	display: inline-block;
	margin: 0;
	padding: 0;
	line-height: 1.2;
}
.ariane ul > li { /* init */
	display: inline;
	margin: 0;
	padding: 0;
	list-style-type: none;
	color: inherit;
}

.ariane ul > li > a {opacity:.8;}
.ariane ul > li > a:hover, .ariane ul div[onclick]:hover {text-decoration:underline;opacity:1;}
.ariane ul > li > a {color:inherit;display:inline-block;/*inline-block important en cas d'écran très étroit, et beaucoup d'icône*/}
.ariane ul > li > div {font-weight:bold;}
.ariane ul > li:last-child > div {opacity:1;}
.ariane ul > li > div {display:inline-block;}
.ariane ul > li + li:not(.plus)::before {content:'\203A';margin:0 11px;opacity:.5;font-weight:normal;}

.ariane .autresRecits, .ariane .plus, .ariane *[onclick] {cursor:pointer;}
.ariane .autresRecits::after {content:'\25BC';font-size:.6em;margin-left:5px;opacity:.8;display:inline-block;}
.ariane .autresRecits:hover, .ariane .plus:hover {text-decoration:underline;}
.ariane .plus {color:#ddd;padding-left:10px;}

@media (max-width: 520px) {
	.ariane .hm {display:none;}
	.ariane ul > li + li::before {margin:0 4px;}
}
/* *** */




.flexBtn {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	justify-content: center;
}

.flexBtn > * {
	box-shadow: 0 0 9px 2px #cecece;
	border-radius: 20px;
	flex: 0 1 11.7em;
}

.flexBtn > * a {
	padding: .7em .4em;
	height: 100%;
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 9px;
	line-height: 1.1;
	font-weight: normal;
	border: 0;
	background: #fff;
	border-radius: 9px;
}

.flexBtn > * a img {
	height: 30px;
	aspect-ratio: 1 / 1;
	opacity: .8;
}

.flexBtn > * a div {
	color: #000;
	font-size: .85em;
}

.flexBtn > * a::after {
	color: #3a95dd;
}

.flexBtn > * a:hover img {filter:brightness(15);}
.flexBtn > * a:hover div {color:#d0d0d0;}
.flexBtn > * a:hover::after {color:#fff;}

.flexBtn .savoirPlus {
	margin: 0;
}

.flexBtn .savoirPlus b {
	font-size: 2em;
	margin: 1px 0 0;
}






/* *** btn savoirPlus *** */
.savoirPlus {
	position: relative;
	max-width: 550px;
	margin: 14px auto;
	text-align: center;
}

.savoirPlus.grand {
	margin: 25px auto;
}

.savoirPlus.tit1::before {font-size:.8em;content:'En savoir plus';}
.savoirPlus.tit1 ~ .savoirPlus.tit1::before {display:none;}

.savoirPlus.tit2::before {font-size:.8em;content:'Rendez-vous sur';}
.savoirPlus.tit2 ~ .savoirPlus.tit2::before {display:none;}

.savoirPlus a, .savoirPlus *[onclick] {
	display: block;
	position: relative;
	cursor: pointer;
	transition: all .2s;
	width: 100%;
	background-color: #fafafa;
	background-image: linear-gradient(135deg, #ffffff66 0%, transparent 30%, transparent 70%, #00000011 100%);
	padding: .8em;
	border: .13em solid var(--color1d);
	border-radius: 4px;
	line-height: 1.3;
	color: var(--color1b);
	font-weight: bold;
}

.savoirPlus.grand a, .savoirPlus.grand *[onclick] {
	padding: 11px 30px;
}

.savoirPlus a:hover, .savoirPlus *[onclick]:hover {
	background-color: var(--color1b);
	color: #fff;
}

.savoirPlus.int1 > a::before {content:'Tout savoir sur ';}
.savoirPlus.int2 > a::before {content:'En savoir plus sur ';}
.savoirPlus.int-ico > a::before {
	content: '';
	display: block;
	width: 2em;
	height: 2em;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.savoirPlus.int-ico > a:hover::before {filter:brightness(15);}

.savoirPlus.int-ico.ico-avion > a::before {background-image:url(/images/i/svg/bleu/avion4.svg);}
.savoirPlus.int-ico.ico-calendrier > a::before {background-image:url(/images/i/svg/bleu/calendrier.svg);}
.savoirPlus.int-ico.ico-euro > a::before {background-image:url(/images/i/svg/bleu/euro.svg);}
.savoirPlus.int-ico.ico-hebergement > a::before {background-image:url(/images/i/svg/bleu/hebergement.svg);}
.savoirPlus.int-ico.ico-horloge > a::before {background-image:url(/images/i/svg/bleu/horloge2.svg);}
.savoirPlus.int-ico.ico-oeil > a::before {background-image:url(/images/i/svg/bleu/oeil.svg);}
.savoirPlus.int-ico.ico-sablier > a::before {background-image:url(/images/i/svg/bleu/sablier.svg);}
.savoirPlus.int-ico.ico-sejour > a::before {background-image:url(/images/i/svg/bleu/sejour.svg);}
.savoirPlus.int-ico.ico-thermo > a::before {background-image:url(/images/i/svg/bleu/thermo.svg);}
.savoirPlus.int-ico.ico-voiture > a::before {background-image:url(/images/i/svg/bleu/voiture2.svg);}

.savoirPlus.intPos1 > a::before {
	font-family: var(--titre-font);
	font-weight: normal;
	position: absolute;
	top: -7px;
	left: 12px;
	color: #000;
	font-size: .7em;
	border-radius: 7px;
	line-height: 1;
	background-color: #fff;
	padding: 1px 7px;
}

.savoirPlus > a::after {display:block;font-size:.8em;font-weight:normal;margin-top:.326em;}
.savoirPlus.bas1 > a::after {content:'Description complète. Comment y aller\0000A0? Quand y aller\0000A0? Où loger\0000A0?...';}
.savoirPlus.bas2 > a::after {content:'Climat - Activités touristiques - Budget...';}
.savoirPlus.bas3 > a::after {content:'Comparez les tarifs - Quand réserver\0000A0? Durée du vol...';}
.savoirPlus.bas4 > a::after {content:'Que voir - Comment y aller - Décalage horaire...';}
.savoirPlus.bas5 > a::after {content:'Comparez les tarifs';}
.savoirPlus.bas6 > a::after {content:'Selon le climat - Selon le budget...';}
.savoirPlus.bas7 > a::after {content:'Tous les détails';}

/* *** */


/* *** mur *** */
.mur {position:relative;}
.mur > * {break-inside:avoid;page-break-inside:avoid;}
/* *** */

#patiente {
	display: none;
	position: absolute;
	z-index: 1;
	padding: 3px;
}

#patiente > div {
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: radial-gradient(#ffffff78, #fff0);
	backdrop-filter: blur(1px);
}

@keyframes anim_patiente {
	from {margin-left:5px;}
	to {margin-left:calc(100% - 7px);}
}

#patiente > div > div {
	background-color: #ffffff7d;
	width: 5px;
	height: 100%;
	margin-left: -6px;
	animation: 2s cubic-bezier(.45,.05,.55,.95) infinite alternate anim_patiente;
}

.barR1 {
	height: 50px;
	height: 45px;
	width: 100%;
	z-index: 10;
	position: sticky;
	top: 44px; /* 45px - 1px */
	margin-top: -1px; /* -1px */
	background-color: #ad1a17dd;
	transition: top 0.3s;
}

.barR1 > div {height:inherit;padding:0 10px;}

.barR1 > div > nav {
	display: flex;
	align-items: center;
	margin: 0;
	text-align: left;
	line-height: 1.2em;
	height: 100%;
	gap: 20px;
	overflow: hidden;
}

#navz > div {
	width: 25px;
}

#navz > img {
	cursor: pointer;
}

.barR1 > div img {
	height: 25px;
}

.barR1 > div > nav > div:not(.ariane) img {
	max-width: 31px;
	max-height: 18px;
	vertical-align: top;
}

.barR1 .ariane {color:#fff;}
.barR1 .ariane ul > li > div {font-weight:normal;}

div[data-tiqets-widget] {
	margin-top: 15px;
	margin-bottom: 25px;
}

.mMargin10 {
	margin-left: -10px;
	margin-right: -10px;
	width: calc(100% + 19px) !important;
}

main ul, main ol {line-height:1.4;}
main ul > li, main ol > li {padding:0 0 .7em;}

/* Sommaire */
.navs {
	margin: 30px 0 40px;
	padding: 1em 3em .3em 1em;
	font-weight: bold;
	background-color: #f6f6f6;
}

.navs > div {
	line-height: 1;
	margin-bottom: 1.2em;
}

.navs ul {
	padding-left: 2em;
}

.nbcol2 > ul, .nbcol3 > ul {margin:0;}
.nbcol2 > ul li, .nbcol3 > ul li, .navs > ul li {break-inside:avoid-column;page-break-inside:avoid;-webkit-column-break-inside:avoid;}



/* *** vueMetre *** */

.vueMetre svg {display:block;}

.vueMetre.cercle {
	width: 70px;
	height: 70px;
	flex: 0 0 70px;
}

.vueMetre.barre svg {
	width: 100%;
	height: 100%;
}

@keyframes VMC-0 {to {stroke-dasharray:0 100;}}
@keyframes VMC-20 {to {stroke-dasharray:20 100;}}
@keyframes VMC-40 {to {stroke-dasharray:40 100;}}
@keyframes VMC-60 {to {stroke-dasharray:60 100;}}
@keyframes VMC-80 {to {stroke-dasharray:80 100;}}
@keyframes VMC-100 {to {stroke-dasharray:100 100;}}

.vueMetre.cercle {
	position: relative;
}

.vueMetre.cercle div:first-child {
	width: 100%;
	height: 100%;
	display: inline-block;
	transform: rotate(-90deg);
	transform-origin: 50%;
	position: relative;
}

.vueMetre.cercle svg {
	border-radius: 50%;
}

.vueMetre.cercle circle {
	fill: #dfdfdf;
	stroke-width: 9;
}

.vueMetre.cercle[data-val="0"] circle {animation:VMC-0 1.2s .5s ease-out forwards;}
.vueMetre.cercle[data-val="20"] circle {animation:VMC-20 1.2s .5s ease-out forwards;}
.vueMetre.cercle[data-val="40"] circle {animation:VMC-40 1.2s .5s ease-out forwards;}
.vueMetre.cercle[data-val="60"] circle {animation:VMC-60 1.2s .5s ease-out forwards;}
.vueMetre.cercle[data-val="80"] circle {animation:VMC-80 1.2s .5s ease-out forwards;}
.vueMetre.cercle[data-val="100"] circle {animation:VMC-100 1.2s .5s ease-out forwards;}
.vueMetre.cercle.rapide circle {animation-duration:.2s;animation-delay:0s;}
.vueMetre.cercle.inst circle {animation-duration:0s;animation-delay:0s;}

.vueMetre.cercle div:first-child::before {
	width: 78%;
	height: 78%;
	background-color: #fff;
	display: block;
	content: "";
	top: 50%;
	left: 50%;
	border-radius: 50%;
	position: absolute;
	z-index: 1;
	transform: translate(-50%, -50%);
}

.vueMetre.cercle div:first-child:after {
	width: 30px;
	height: 2px;
	background-color: #fff;
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -1px;
	right: -10px;
	z-index: 2;
}

.vueMetre.cercle img {
	width: 52%;
	height: 52%;
	position: absolute;
	background-color: #fff;
	background-size: contain;
	background-origin: content-box;
	background-repeat: no-repeat;
	background-position: center;
	padding: 0;
	top: 50%;
	left: 50%;
	z-index: 2;
	transform: translate(-50%, -50%);
	opacity: .7;
}

.vueMetre.cercle svg circle {stroke:#ff4c4c;}

.contBarre img {
	width: 42%;
	height: 42%;
	opacity: .7;
}

@keyframes VMB-0 {to {transform:scaleX(0);}}
@keyframes VMB-20 {to {transform:scaleX(20%);}}
@keyframes VMB-40 {to {transform:scaleX(40%);}}
@keyframes VMB-60 {to {transform:scaleX(60%);}}
@keyframes VMB-80 {to {transform:scaleX(80%);}}
@keyframes VMB-100 {to {transform:scaleX(100%);}}

.vueMetre.barre svg rect.vmFond {fill:#dfdfdf;}
.vueMetre.barre svg rect.vmNiv {fill:#e80000;width:100%;transform:scaleX(0);}

.vueMetre.barre[data-val="0"] rect.vmNiv {animation:VMB-0 1.2s .5s ease-out forwards;}
.vueMetre.barre[data-val="20"] rect.vmNiv {animation:VMB-20 1.2s .5s ease-out forwards;}
.vueMetre.barre[data-val="40"] rect.vmNiv {animation:VMB-40 1.2s .5s ease-out forwards;}
.vueMetre.barre[data-val="60"] rect.vmNiv {animation:VMB-60 1.2s .5s ease-out forwards;}
.vueMetre.barre[data-val="80"] rect.vmNiv {animation:VMB-80 1.2s .5s ease-out forwards;}
.vueMetre.barre[data-val="100"] rect.vmNiv {animation:VMB-100 1.2s .5s ease-out forwards;}

.vueMetre.barre.rapide rect.vmNiv {animation-duration:.2s;animation-delay:0s;}
.vueMetre.barre.inst rect.vmNiv {animation-duration:0s;animation-delay:0s;}

/* *** */



/* MAX */

@media (max-width: 990px) {
	.barR1 > div > .ariane {margin-left:1px;}
}

@media (max-width: 640px) {
	div.fd[data-tiqets-widget] {float:initial;max-width:none;}
}

@media screen and (max-width: 359.5px) {.h360v {display:none !important;}}
@media screen and (max-width: 639.5px) {.h640v {display:none !important;}}
@media screen and (max-width: 1599.5px) {.h1600v {display:none !important;}}




/* AFTER MOBILE */

@media screen and (min-width: 480px) {
	.w25p {width:50%;}
	.w400 {width:400px;}
}

@media (min-width: 521px) {
	.nbcol2, .nbcol3 {column-count:2;}
	.navs {width:fit-content;}
}

@media screen and (min-width: 640px) {
	body {font-size:var(--normal-size-font);}
	#corps:not(.sansPad) {
		padding-left: 15px;
		padding-right: 15px;
	}
	.pad23, .pad13 {
		padding-left: 15px;
		padding-right: 15px;
	}
	.pad1 {
		padding-left: 0;
		padding-right: 0;
	}
	.barR1 > div {
		padding: 0 15px;
	}
	#accueil {
		height: 480px;
		max-height: 24.6vw; /* ratio calculé par l'image d'origine 480x100/1920=25 ; moins .4 pour la scrollbar */
	}
	#accueil .titre {
		font-size: 3vw;
	}
	#repDesti {
		width: 100vw;
		font-size: 1em;
	}
	#repDesti .lesDesti {
		font-size: 1em;
	}
	#repDesti .uneDesti {
		margin: 18px 30px 45px 30px;
		width: initial;
	}
	#repDesti .lesDesti.err {
		justify-content: inherit;
		padding: 2px 30px;
	}
	#navv.boxOuvert nav {
		font-size: 1em;
	}
	#navv.boxOuvert .b-btn-close {
		font-size: 1.55em;
		width: 35px;
		height: 35px;
	}
	#contForm {
		border-radius: 9px;
	}
	.ariane {
		padding-right: 20px;
	}
	#navTB > ul li {flex:none;}
	#navTB > ul li > * div {padding:5px 15px;}
	#navTB > ul li > * span {font-size:.8em;}
	#navTB > ul li > * img {height:30px;width:30px;/*CLS*/}
}

@media (min-width: 800px) {
	.nbcol2, .nbcol3 {column-count:2;column-gap:50px;}
	.navs:has(li:nth-child(8)), .navs:has(li ul) {width:100%;}
	.navs:has(li:nth-child(8)) > ul, .navs:has(li ul) > ul {width:100%;column-count:2;column-gap:50px;}
}

@media screen and (min-width: 990px) {
	:root {
		--bar-menu-real-height: 90px;
	}
	html.cacheBM {
		--bar-menu-real-height: 0px;
	}
	#BMO {
		box-shadow: 0 0 40px 90px #00000099;
	}
	#BM1111 {
		width: 220px;
	}
	.barR1 {
		top: 89px; /* 90px = pb ligne 1px */
	}
	.barR1 > div > nav > div:not(.ariane) img {
		max-width: 36px;
		max-height: 23px;
	}
	h1, .h1 {
		font-size: 2.2em;
		margin-top: 1.5em;
	}
	#accueil .texte {
		padding-top: calc(90px + .8vw);
	}
	#BarreDeMenu:not(.opa) {
		height: 90px; /* très important */
	}
	#BM {
		height: 90px;
	}
	html.cacheBM #BarreDeMenu #BM {
		top: -90px;
	}
	#BM1111 a img {
		margin-top: 4%;
		height: 75px;
		width: 162px; /* CLS */
	}
	#BM212 a span {
		display: block;
		margin-top: 3px;
	}
	#BM212 ul li {
		max-width: 120px;
	}
	#BM212 img {
		height: 30px;
		width: 30px;
	}
	li.preAvantRech:not(.clicLoupe) > div:hover {background-color:transparent;}
	.w25p {width:33%;}
	.w450 {width:450px;}
	#navv nav {
		line-height: 1.1;
	}
	#fixObj1 {top:89px;height:40px;}
	#BarreDeMenu #reqDesti {
		display: block;
		background-color: #ffffff36;
		color: #fff;
	}
	#BarreDeMenu #destiLoupe {
		display: none;
	}
	#BM212 ul li.preAvantRech {
		width: auto;
		max-width: none;
		margin-right: 50px;
	}
	#accLegende {
		display: block;
	}
	#contForm {
		padding: 25px 20px;
		margin: calc(3.8vw + 70px) 0 0 0;
	}
	#contForm .titres h1 {
		font-size: 1.9em;
	}
	#contFormGlisse {
		display: none;
	}
	.b2 {
		font-size: var(--normal-size-font);
		padding: 6px 20px;
		min-height: auto;
	}
	.gilles-encadre-k .k-btn-close, .kalendae .k-btn-close {
		display: none;
	}
	.flex990 {display:flex;}
	.navs {padding:1.5em 1.5em .7em;}
}

@media screen and (min-width: 1010px) {
	#corps:not(.sansPad) {
		padding-left: 0;
		padding-right: 0;
	}
	.pad11, .pad33, .pad23 {
		padding-left: 0;
		padding-right: 0;
	}
	#pied_pied {
		padding: 25px 15px 5px 15px;
	}
	#navTB .ariane {padding-left:0;}
}

@media screen and (min-width: 1040px) {
	h2.ae1::before, .ae1 h2::before {
		margin-left: -0.6em;
	}
}

@media screen and (min-width: 1200px) {
	main ul > li, main ol > li {padding-bottom:.4em;}
	main li > ul, main li > ol {margin-top:.5em;font-size:.95em;font-weight:normal;}
}

@media screen and (min-width: 1400px) and (max-width: 1530px) {
	#navv nav {
		width: calc(calc(100vw - var(--scrollbar-width) - 1040px) / 2);
		width: calc(calc(100vw - var(--scrollbar-width) - 1060px) / 2);
		margin-left: calc(calc(-100vw + var(--scrollbar-width) + 1010px) / 2);
		padding-right: 3px;
	}
}

@media screen and (min-width: 1400px) {
	#navv {
		display: block;
		transition: all .6s;
	}
}

@media screen and (min-width: 1600px) and (max-width: 1770px) {
	#navv nav {
		width: calc(calc(100vw - var(--scrollbar-width) - 1280px) / 2);
		width: calc(calc(100vw - var(--scrollbar-width) - 1300px) / 2);
		margin-left: calc(calc(-100vw + var(--scrollbar-width) + 1245px) / 2);
	}
	.largSpec1 #navv nav {
		width: calc(calc(100vw - var(--scrollbar-width) - 1200px) / 2);
		margin-left: calc(calc(-100vw + var(--scrollbar-width) + 1165px) / 2);
	}
}

@media screen and (min-width: 1600px) {
	#corps, #corps.centre, .centre {max-width:1230px;}
	#corps.largSpec1, .largSpec1 {max-width:1150px;}
	#corps.centre1150, centre1150 {max-width:1150px;}
	.w25p {width:25%;}
	.w25p {width:25%;}
	#accLegende {font-size:1.1em;}
	.wEx ul li div {padding:4px;}
	#pied_pied > div.liens > div {margin:.5em 0;}
	.nbcol3, .navs:has(li:nth-child(16)) > ul, .navs:has(li ul) > ul {width:100% !important; column-count:3 !important;}
	div[data-tiqets-widget][data-item_count="4"] {
		margin-left: auto;
		margin-right: auto;
		width: 100% !important;
		max-width: 1000px;
	}
}

@media screen and (min-width: 1900px) {
	#spaceContForm {
		min-height: 330px;
	}
}




/* MAX-HEIGHT, MAX-WIDTH */
@media screen and (max-width: 579.5px) {div.phs img {max-height:31vw;}}




/* Version imprimable */
/* le reste est fait par menu.js */
@media print {
	#corps {width:auto;margin:auto;box-shadow:none;font-size:.8em;}
	img.ph, .illu img {max-width:200px;max-height:200px;}
	#navigation, #navigation *, aside {display:none;visibility:hidden;}
	#BarreDeMenu, #BM, .contPub, .pub1, .barR1 {display:none;}
	#print {display:block;}
}

/* permet de réduire les photos en cas de zoom système ou navigateur */
@media screen and (min-width: 580px) and (min-resolution: 1.09dppx) {/*zoom 110%*/div.phs img, .illu img, .fd img, .fg img {zoom:.9090909090;}}
@media screen and (min-width: 580px) and (min-resolution: 1.12dppx) {/*zoom 112,5% (125% + 90%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.8888888888;}}
@media screen and (min-width: 580px) and (min-resolution: 1.16dppx) {/*zoom 116,67% (175% + 67%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.857142857;}}
@media screen and (min-width: 580px) and (min-resolution: 1.19dppx) {/*zoom 120% (150% + 80%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.8333333333;}}
@media screen and (min-width: 580px) and (min-resolution: 1.24dppx) {/*zoom 125%*/div.phs img, .illu img, .fd img, .fg img {zoom:.8;}}
@media screen and (min-width: 580px) and (min-resolution: 1.31dppx) {/*zoom 131,25% (175% + 75%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.761904762;}}
@media screen and (min-width: 580px) and (min-resolution: 1.31dppx) {/*zoom 133,33% (200% + 67%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.75;}}
@media screen and (min-width: 580px) and (min-resolution: 1.34dppx) {/*zoom 135% (150% + 90%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.740740741;}}
@media screen and (min-width: 580px) and (min-resolution: 1.37dppx) {/*zoom 137,5% (125% + 110%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.72727;}}
@media screen and (min-width: 580px) and (min-resolution: 1.39dppx) {/*zoom 140% (175% + 80%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.714285714;}}
@media screen and (min-width: 580px) and (min-resolution: 1.49dppx) {/*zoom 150%*/div.phs img, .illu img, .fd img, .fg img {zoom:.6666666667;}}
@media screen and (min-width: 580px) and (min-resolution: 1.56dppx) {/*zoom 156,25% (125% + 125%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.64;}}
@media screen and (min-width: 580px) and (min-resolution: 1.57dppx) {/*zoom 157,5% (175% + 90%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.634920635;}}
@media screen and (min-width: 580px) and (min-resolution: 1.59dppx) {/*zoom 160% (200% + 80%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.625;}}
@media screen and (min-width: 580px) and (min-resolution: 1.64dppx) {/*zoom 165% (150% + 110%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.6060606061;}}
@media screen and (min-width: 580px) and (min-resolution: 1.74dppx) {/*zoom 175%*/div.phs img, .illu img, .fd img, .fg img {zoom:.571428571;}}
@media screen and (min-width: 580px) and (min-resolution: 1.79dppx) {/*zoom 180% (200% + 90%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.5555555556;}}
@media screen and (min-width: 580px) and (min-resolution: 1.87dppx) {/*zoom 187,5% (125% + 150%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.5333333333;}}
@media screen and (min-width: 580px) and (min-resolution: 1.92dppx) {/*zoom 192,5% (175% + 110%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.519480519;}}
@media screen and (min-width: 580px) and (min-resolution: 1.99dppx) {/*zoom 200%*/div.phs img, .illu img, .fd img, .fg img {zoom:.5;}}
@media screen and (min-width: 580px) and (min-resolution: 2.18dppx) {/*zoom 218,75% (125% + 175%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.457142857;}}
@media screen and (min-width: 580px) and (min-resolution: 2.19dppx) {/*zoom 220% (200% + 110%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.4545454545;}}
@media screen and (min-width: 580px) and (min-resolution: 2.24dppx) {/*zoom 225% (150% + 150%)*/div.phs img, .illu img, .fd img, .fg img {zoom:.4444444444;}}
@media screen and (min-width: 580px) and (min-resolution: 2.49dppx) {/*zoom 250%*/div.phs img, .illu img, .fd img, .fg img {zoom:.4;}}
@media screen and (min-width: 580px) and (min-resolution: 2.62dppx) {/*pour finir*/div.phs img, .illu img, .fd img, .fg img {zoom:.6;}}
@media screen and (min-width: 580px) and (pointer:coarse) {/*tactile*/div.phs img, .illu img, .fd img, .fg img {zoom:.8;}}
div.phs .pub1 img, .gm-style img {/*exclusion : pub, Google Maps*/zoom:normal;}
/* *** */
