@charset "UTF-8";
/* CSS Document */

/*

rose : #c02774
	rgba(192,39,116,1)
prune : #571433
	rgba(87,20,51,1)
bleu : #0092b0
	rgba(0,146,176,1)
vert : #095e4d
	rgba(0,146,176,1)
grey : #eeede5
	rgba(238,237,229,1)
gris : #d0d0b8
	rgba(208,208,184,1)
black : #3d3d34
	rgba(61,61,52,1)

.saira-regular {
  font-family: "Saira Condensed", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.saira-semibold {
  font-family: "Saira Condensed", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.oleo-script {
  font-family: "Oleo Script Swash Caps", system-ui;
  font-weight: 400;
  font-style: normal;
}

.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

*/

:root {
  --color-rose: #c02774;
  --color-prune: #571433;
  --color-bleu: #0092b0;
  --color-vert: #095e4d;
  --color-grey: #eeede5;
  --color-gris: #d0d0b8;
  --color-black: #3d3d34;
  --color-blanc: #ffffff;
  --color-noir: #000000;
}

html {
	scroll-behavior: smooth;

}

body {
	font-family: "Roboto", sans-serif;
	font-size: 1rem;
	font-weight: 300;
	line-height: 2rem;
	background-color: var(--color-blanc);
	transition: all 0.3s ease-in;
	color: var(--color-black);
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

@font-face {
  font-family: 'parcdebellevue';
  src: url('../font/parcdebellevue.eot?49496614');
  src: url('../font/parcdebellevue.eot?49496614#iefix') format('embedded-opentype'),
       url('../font/parcdebellevue.woff2?49496614') format('woff2'),
       url('../font/parcdebellevue.woff?49496614') format('woff'),
       url('../font/parcdebellevue.ttf?49496614') format('truetype'),
       url('../font/parcdebellevue.svg?49496614#parcdebellevue') format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "parcdebellevue";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: .2em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-arrow-square-left:before { content: '\e800'; } /* '' */
.icon-arrow-square-right:before { content: '\e801'; } /* '' */
.icon-contact-circle:before { content: '\e802'; } /* '' */
.icon-phone-circle:before { content: '\e803'; } /* '' */
.icon-ferme:before { content: '\e805'; } /* '' */
.icon-location:before { content: '\e806'; } /* '' */
.icon-mail:before { content: '\e807'; } /* '' */
.icon-photos:before { content: '\e809'; } /* '' */
.icon-piscine:before { content: '\e80a'; } /* '' */
.icon-promo:before { content: '\e80c'; } /* '' */
.icon-snack:before { content: '\e80d'; } /* '' */
.icon-tente:before { content: '\e80e'; } /* '' */
.icon-toboggans:before { content: '\e80f'; } /* '' */
.icon-videos:before { content: '\e810'; } /* '' */
.icon-chambre:before { content: '\e811'; } /* '' */
.icon-map:before { content: '\e813'; } /* '' */
.icon-people:before { content: '\e814'; } /* '' */
.icon-surface:before { content: '\e815'; } /* '' */
.icon-phone:before { content: '\e816'; } /* '' */
.icon-burger:before { content: '\e817'; } /* '' */
.icon-flag-en:before { content: '\e818'; } /* '' */
.icon-flag-fr:before { content: '\e819'; } /* '' */
.icon-resa:before { content: '\e81a'; } /* '' */
.icon-docs:before { content: '\e81b'; } /* '' */
.icon-facebook:before { content: '\f09a'; } /* '' */
.icon-youtube:before { content: '\f16a'; } /* '' */


h1, h2, h3 {
	font-family: "Saira Condensed", sans-serif;
	font-weight: 600;
  font-style: normal;
}

h1, h2 {
	color: var(--color-rose);
	font-size: 3rem;
}
h1 + h2 {
	font-size: 1.8rem;
	margin: 30px 0;
	color: var(--color-black);
	text-transform: none;
}
h3 {
	font-size: 1.5rem;
	margin: 20px 0;
	color: var(--color-bleu);
}
.titre-bloc {
	background-color: var(--color-blanc);
	padding: 30px 40px;
	border-radius: 30px;
	margin-left: -200px;
	margin-bottom: 30px;
}
h2.titre-bloc {
	margin-top: 50px;
}

strong, b {
	font-weight: 700;
}

.txt-color-rose {
	color: var(--color-rose);
}
.txt-color-black {
	color: var(--color-black);
}
.txt-color-blanc {
	color: var(--color-blanc);
}

a, a:hover {
	text-decoration: none;
}
a {
	color: var(--color-rose);
	transition: all 0.3s ease-in;
}
a:hover {
	color: var(--color-bleu);
}
section p > a {
	font-weight: 700;
}

ul {
	list-style: none;
}
ul.liste {
	padding: 0;
}
ul.liste li::before {
	font-family: 'chalandsfleuris';
	content: '\e801';
	margin-right: 10px;
	color: var(--color-orange);
}

img {
	height: auto;
	max-width: 100%;
}

.btn {
	padding: 7px 13px;
	transition: all 0.3s ease-in;
	font-size: 1rem;
	border-radius: 50px;
	border: 1px solid;
	margin: 5px 0;
	font-family: "Saira Condensed", sans-serif;
  font-weight: 100;
  font-style: normal;
}
.btn i, .btn i::before {
	padding: 0;
	margin: 0;
	text-align: center;
}
.btn:hover {
	background-color: var(--color-black);
	color: var(--color-blanc);
}
.btn-rose {
	border-color: var(--color-rose);
	color: var(--color-rose);
}
.btn-rose:hover {
	background-color: var(--color-rose);
	color: var(--color-blanc);
}
.btn-prune {
	border-color: var(--color-prune);
	color: var(--color-prune);
}
.btn-prune:hover {
	background-color: var(--color-prune);
	color: var(--color-blanc);
}
.btn-bleu {
	border-color: var(--color-bleu);
	color: var(--color-bleu);
}
.btn-bleu:hover {
	background-color: var(--color-bleu);
	color: var(--color-blanc);
}
.btn-vert {
	border-color: var(--color-vert);
	color: var(--color-vert);
}
.btn-vert:hover {
	background-color: var(--color-vert);
	color: var(--color-blanc);
}
.btn-black {
	background-color: var(--color-black);
}
.btn-black:hover {
	background-color: var(--color-rose);
}
.btn-blanc {
	border-color: var(--color-blanc);
	color: var(--color-blanc);
	background-color: transparent;
}
.btn-blanc:hover {
	background-color: var(--color-blanc);
	color: var(--color-rose);
}
.btn-groupe {
	margin-top: 30px;
}
.btn-groupe-right {
	display: flex;
	justify-content: end;
}

.center {
	text-align: center;
}

.bloc-margin {
	margin-top: 80px;
	margin-bottom: 80px;
}
.bloc-padding {
	padding-top: 80px;
	padding-bottom: 80px;
}

.bg-bloc-rose {
	background-color: var(--color-rose);
	color: var(--color-blanc);
}
.bg-bloc-prune {
	background-color: var(--color-prune);
	color: var(--color-blanc);
}
.bg-bloc-bleu {
	background-color: var(--color-bleu);
	color: var(--color-black);
}
.bg-bloc-vert {
	background-color: var(--color-vert);
	color: var(--color-blanc);
}
.bg-bloc-grey {
	background-color: var(--color-grey);
	color: var(--color-blanc);
}
.bg-bloc-gris {
	background-color: var(--color-gris);
	color: var(--color-blanc);
}
.bg-bloc-black {
	background-color: var(--color-black);
	color: var(--color-blanc);
}

.bg-cover {
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  background-blend-mode: multiply;
  color: var(--color-blanc);
  /*min-height: 500px;*/
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.bg-cover * {
	color: var(--color-blanc);
}
.bg-pattern {
	background-size: inherit;
}

.border-radius {
	border-radius: 30px;
	overflow: hidden;
}

header {
	text-align: center;
	color: var(--color-prune);
}
header #header-top {
	padding: 20px 50px;
	display: flex;
  align-items: center;
  justify-content: end;
}
header #header-top nav.navbar > .container-fluid {
	display: grid;
  gap: 1rem;
  
  @media (width >= 48rem) {
    grid-template-columns: 1fr auto 1fr;
    grid-template-areas: "top-menu-left logo top-menu-right";
    align-items: center;
    
    & #top-menu-left {
      grid-area: top-menu-left;
      justify-self: start;
    }
    & .logo {
      grid-area: logo;
    }
    & #top-menu-right {
      grid-area: top-menu-right;
      justify-self: end;
    }
  }
}
header #header-top .btn {
	font-size: 1.5rem;
	font-family: "Saira Condensed", sans-serif;
	font-weight: 600;
  font-style: normal;
}
header #header-top .btn-menu {
	background-color: var(--color-prune);
	color: var(--color-blanc);
}
header #header-top .btn-menu:hover {
	background-color: var(--color-blanc);
	color: var(--color-prune);
	border-color: var(--color-prune);
}
header #header-top .logo img {
	height: 110px;
}

#menuSidebar {
	background-color: var(--color-rose);
}
#menuSidebarLabel {
	font-family: "Saira Condensed", sans-serif;
	font-weight: 600;
  font-style: normal;
  font-size: 1.5rem;
}
#main-navigation {
	display: flex;
	flex-direction: column;
}
#main-navigation.nav-pills .nav-link {
	color: var(--color-blanc);
	text-align: left;
}
#main-navigation .dropdown-menu.show {
	position: relative !important;
	transform: none !important;
}
#main-navigation .nav-link:hover, #main-navigation .nav-link.show, .nav-pills .nav-link.active, .nav-pills .show > .nav-link, #main-navigation .dropdown-item.active, #main-navigation .dropdown-item.active:hover {
	background-color: var(--color-prune);
}
#main-navigation .dropdown-item:hover {
	background-color: var(--color-grey);
}

#header-main, #header-content, #header-main-contenu, #header-img {
	min-height: 600px;
	height: 70vh;
}
header #header-main {
	margin: 0 75px;
	position: relative;
}
#header-content {
	position: absolute;
  z-index: 10;
  width: 100%;
}
#index #header-content {
	position: absolute;
	z-index: 10;
}
#header-main-contenu {
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}
#header-titre {
	font-family: "Oleo Script Swash Caps", system-ui;
  font-weight: 400;
  font-style: normal;
  color: var(--color-blanc);
  font-size: 5rem;
  text-shadow: 0px 0px 7px rgba(0,0,0,0.5)
}
#header-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px;
	overflow: hidden;
	object-position: center;
}
#index #header-img {
	object-position: bottom;
}
#btn-header-main {
	display: flex;
	flex-direction: column;
	position: absolute;
	right: 25px;
	top: 50%; /* à 50%/50% du parent référent */
  transform: translate(0,-50%); /* décalage de 50% de sa propre taille */
}
#btn-header-main > div {
	margin: 15px;
}
#btn-header-main a {
	border-radius: 30px;
	padding: 7px 2px;
	font-size: 2.5rem;
	color: var(--color-blanc);
}
#btn-header-main > div:first-child a {
	background-color: var(--color-bleu);
}
#btn-header-main > div:last-child a {
	background-color: var(--color-rose);
}
#btn-header-main > div a:hover {
	background-color: var(--color-black);
}

#header-resa {
	bottom: -30px;
  background-color: #fff;
  padding: 30px 30px 0;
  border-radius: 20px 20px 0 0;
  position: absolute;
  width: 710px;
  left: 50%; /* à 50%/50% du parent référent */
  transform: translate(-50%,0); /* décalage de 50% de sa propre taille */
}
#header-resa div.oleo-script {
	display: block;
	color: var(--color-rose);
	padding: 5px 5px 30px;
  font-family: "Oleo Script Swash Caps", system-ui;
  font-weight: 400;
  font-style: normal;
	font-size: 3rem;
	line-height: 2.5rem;
  transform: rotate(-10deg);
}
#header-resa div.oleo-script span:first-child {
	margin-right: 50px;
}
#header-resa div.oleo-script span:last-child {
	margin-left: 50px;
}
#header-resa img {
	width: 195px;
	margin-top: -50px;
}

.title-page {
	font-family: "Saira Condensed", sans-serif;
	font-weight: 100;
  font-style: normal;
  font-size: 1.5rem;
  line-height: 1rem;
}

.wrapper-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 15px;
  grid-auto-rows: minmax(100px, auto);
}
.wrapper-grid > img:first-child {
  grid-column: 1 / 3;
  grid-row: 1;
}
.wrapper-grid > img:nth-child(2) {
  grid-column: 1;
  grid-row: 2;
}
.wrapper-grid > img:nth-child(3) {
  grid-column: 2;
  grid-row: 2;
}

.btn-icons {
	display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 30px;
  margin-top: 50px;
}
.btn-icons a {
	font-size: 1.5rem;
	font-family: "Saira Condensed", sans-serif;
	font-weight: 100;
  font-style: normal;
  display: flex;
  align-items: center;
  color: var(--color-bleu);
}
.btn-icons a:hover {
  color: var(--color-rose);
}
.btn-icons a i {
	font-size: 2.5rem;
}

.swiper-info, .swiper-galerie {
	margin-top: 50px;
}
.swiper-info .swiper-slide, .swiper-galerie .swiper-slide {
	display: flex;
	padding: 0 100px;
}
.swiper-info .swiper-slide .encart-thumb img, .swiper-galerie img {
	border-radius: 30px;
}
.swiper-info .swiper-slide i::before {
	font-size: 4rem;
	padding: 0;
	margin: 0;
}
.swiper-info .swiper-slide h3 {
	font-family: "Oleo Script Swash Caps", system-ui;
  font-weight: 400;
  font-style: normal;
  font-size: 2rem;
}
.swiper-info-next, .swiper-info-prev, .swiper-galerie-next, .swiper-galerie-prev {
	font-family: 'parcdebellevue';
  font-size: 2.5rem;
  color: var(--color-gris);
}
.bg-cover .swiper-info-next, .bg-cover .swiper-info-prev, .bg-cover .swiper-galerie-next, .bg-cover .swiper-galerie-prev {
  color: var(--color-blanc);
}
.swiper-info-next::after, .swiper-galerie-next::after {
  content: '\e801';
}
.swiper-info-prev::after, .swiper-galerie-prev::after {
  content: '\e800';
}
.swiper-info-next svg, .swiper-info-prev svg, .swiper-galerie-next svg, .swiper-galerie-prev svg {
  display: none;
}

#illu-absolute {
	position: absolute;
	z-index: 2000;
	bottom: -50px;
	left: 30px;
	width: 200px;
}
.relative {
	position: relative;
}

.content-encart {
	width: 100%;
  padding: 80px;
}
.content-encart a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
	font-size: 2rem;
	font-family: "Saira Condensed", sans-serif;
	font-weight: 400;
  font-style: normal;
}
.content-encart a i {
  font-size: 5rem;
  transition: all 0.3s ease-in;
}
.content-encart a:hover i {
  color: var(--color-bleu);
}

#partenaires {
	background-color: var(--color-blanc);
}
#partenaires > div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-around;
}
#partenaires a {
  margin: 0 10px;
}
#partenaires img {
	filter: saturate(0);
  transition: all .3s ease-in;
}
#partenaires img:hover {
  filter: saturate(1);
}

.media-grid .media-box {
	background-color: rgba(130,135,139,0.1);
	border-radius: 20px;
	overflow: hidden;
	margin: 15px 0;
}
.media-grid .media-box .media-box-image {
	height: 200px;
}
.media-grid .media-box .media-box-image img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}
.media-grid .media-box .media-box-content {
	padding: 0 20px 20px;
}
.media-grid .media-box .media-box-content .media-box-title h3 {
	color: var(--color-bleu);
	
}
.media-grid .media-box .media-box-content .media-box-text {
	line-height: 1.2rem;
	margin: 15px 0;
}
.media-grid .media-box .media-box-content .media-box-text span {
	display: inline-block;
	margin-top: 15px;
}

.encarts-mh .media-box-footer {
    background-color: var(--color-black);
    color: var(--color-grey);
    font-size: 0.8rem;
    display: flex;
    justify-content: space-between;
    padding: 4px 20px;
}
.encarts-mh .media-box-image {
	overflow: hidden;
	position: relative;
}
.encarts-mh .media-box-image > img {
	transition: all 0.3s ease-in;
}
.encarts-mh .media-box-image:hover > img {
	transform: scale(1.1);
}
.encarts-mh .media-box-image .thumbnail-overlay {
  position: absolute;
  z-index: 2;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  background-color: rgba(34,34,34,0);
  top: 0px;
  left: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: all 0.3s ease-in;
}
.encarts-mh .media-box-image:hover .thumbnail-overlay {
	background-color: rgba(34,34,34,0.5);
  opacity: 1;
}
.encarts-mh .media-box-image:hover .thumbnail-overlay .btn-rose {
	border-color: var(--color-blanc);
	color: var(--color-blanc);
}
.encarts-mh .media-box-image:hover .thumbnail-overlay .btn-rose:hover {
	border-color: var(--color-rose);
}


#meteor {
    text-align: center; 
    font-weight: 100;
    background: #fff;
    border-radius: 10px;
    margin: 80px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
#meteor > div, #meteor > div > span {
    display: block;
}
#meteor > div#temperature {
    font-size: 5rem;
}
#meteor > div#icone {
    margin-top: 20px;
}
#meteor > div#icone img {
    width: 100%;
    max-width: 200px;
}
#meteor > div#ville {
    font-size: 1rem;
}
#meteor > div#ville > span:nth-child(2) {
    font-size: 2rem;
}


#coordonees .coord-logo {
    text-align: right;
}
#coordonees .coord-logo img {
    width: 250px;
}


ctv-offers {
  text-align: center;
  display: flex;
  justify-content: center;
}

.table {
	line-height: 1.2rem;
}
.table thead th, .table tbody td {
    text-align: center;
    vertical-align: middle;
    border-color: var(--color-blanc);
}
.table thead th, .table-extra tbody td:first-child, .table-we tbody td:first-child {
    color: var(--color-blanc);
}
.table > :not(:first-child) {
    border-top: 2px solid var(--color-blanc);
}
.table-emplacements tr th:nth-child(1), .table-chalet tr th:nth-child(1), .table-extra tr td:nth-child(1), .table-we tr td:nth-child(1) {
    background: #a13e7b;
}
.table-emplacements tr th:nth-child(2), .table-chalet tr th:nth-child(2) {
    background: #e52c16;
}
.table-emplacements tr th:nth-child(3), .table-chalet tr th:nth-child(3) {
    background: #fe8f00;
}
.table-emplacements tr th:nth-child(4), .table-chalet tr th:nth-child(4) {
    background: #14b8d5;
}
.table-emplacements tr th:nth-child(5), .table-chalet tr th:nth-child(5) {
    background: #afc211;
}
.table-emplacements tr td:nth-child(1), .table-chalet tr td:nth-child(1), .table-extra tr td:nth-child(2), .table-we tr td {
    background: #e9d6e6;
}
.table-emplacements tr td:nth-child(2), .table-chalet tr td:nth-child(2) {
    background: #fcd9d1;
}
.table-emplacements tr td:nth-child(3), .table-chalet tr td:nth-child(3) {
    background: #fee3cc;
}
.table-emplacements tr td:nth-child(4), .table-chalet tr td:nth-child(4) {
    background: #d5edfa;
}
.table-emplacements tr td:nth-child(5), .table-chalet tr td:nth-child(5) {
    background: #eef7d1;
}
.table-we tr th {
    background: #571433;
}


#galerie-photos .gridzyItem {
	border-radius: 20px;
	overflow: hidden;
}


#video-gallery h2 {
	font-size: 2rem;
}
#video-gallery .video {
	margin-bottom: 30px;
}
.video {
  position: relative;
  cursor: pointer;
  border-radius: 15px;
  overflow: hidden;
}
.video .video-capture {
  transition: all 0.3s;
  filter: brightness(100%);
  -webkit-filter: brightness(100%);
  -moz-filter: brightness(100%);
  -o-filter: brightness(100%);
  -ms-filter: brightness(100%);
  z-index: 1;
  width: 100%;
}
.video:hover .video-capture {
  filter: brightness(50%);
  -webkit-filter: brightness(50%);
  -moz-filter: brightness(50%);
  -o-filter: brightness(50%);
  -ms-filter: brightness(50%);
}
.video .video-bt {
	width: 75px;
  position: absolute; 
  top: 50%; left: 50%; 
  transform: translate(-50%, -50%);
  z-index: 20;
}
.video .video-caption {
	width: 100%;
  position: absolute; 
  bottom: 0;
  text-align: center;
  background-color: rgba(4,5,6,0.6);
  color: var(--color-blanc);
  padding: 5px 15px;
  font-size: 0.8rem;
  line-height: 1.2rem;
  z-index: 10;
}


#map-canvas {
    width: 100%;
    height: 500px;
    margin: 30px 0;
}
#map-canvas, .video {
    background: var(--color-grey) url(/img/loader.svg) center no-repeat;
}
#map-iframe {
    position: relative;
}
#map-iframe > span {
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 10px 0 24px 10px;
    padding: 0;
    z-index: 50000;
}


.encart-dl > div > div {
  background-color: rgba(130,135,139,0.1);
  border-radius: 20px;
  padding: 15px;
  margin: 15px 0;
}
.encart-dl > div > .row > div:first-child > div {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.encart-dl img {
  object-fit: contain;
  max-height: 100%;
  max-width: 80%;
  object-position: center;
}
.encart-dl > div > div p {
  margin: 0 0 10px;
  font-size: 1rem;
  font-weight: 700;
}
.encart-dl > div > div small {
  display: block;
  line-height: 1rem;
  font-size: 0.8rem;
  margin-bottom: 10px;
}
.encart-dl .btn {
  margin-top: 0;
}





/* ////// 404 ////// */

#error-404 header {
  margin-bottom: 50px;
}
#error-404 header .logo, #error-404 header .header-blocs {
  display: none;
}

.page-404 {
  text-align: center;
}
.page-404 .page-404-gif {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 30px 0;
}
.page-404 .page-404-gif span {
  font-size: 130px;
  font-weight: 700;
  height: 200px;
  line-height: 200px;
}
.page-404 .page-404-gif div {
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  width: 200px;
  margin: 0 20px;
  overflow: hidden;
  border: 12px solid var(--color-black);
}
.page-404 small {
  display: block;
  padding: 20px 0;
  opacity: 0.7;
  font-size: 0.8rem;
}


/* ////// FORMULAIRE ////// */

form.formulaire {
  margin: 0;
}
form.formulaire input, form.formulaire textarea {
  box-sizing: border-box;
  padding: 5px;
  border: none;
  border-radius: 3px;
  border: 1px solid rgba(0,0,0,.1);
  width: 100%;
  margin-bottom: 15px;
}
form.formulaire #validation {
  text-align: center;
}
form.formulaire input[type="radio"] {
  margin-left: 10px;
  width: initial;
}
form.formulaire input[type="checkbox"] {
  width: initial;
  margin: 0;
}
form.formulaire small {
  font-size: 0.8rem;
}
form.formulaire input[type="submit"] {
  background: #004259;
  color: #ffffff;
  cursor: pointer;
  border-radius: 3px;
  border: none;
  margin: 15px 0 0 0;
  padding: .375rem 1rem;
  transition: all 0.3s;
  width: inherit;
}
form.formulaire input[type="submit"]:hover {
  background: #e56e1f;
}

form.formulaire .form-type {
display: inline;
}
form.formulaire .form-type span {
display: inline-flex;
align-items: baseline;
}

#validation .btn {
  transition: all ease-in 0.5s;
  margin: 15px 0 0;
}
#validation .opt-out {
  opacity: 0.5;
  cursor: inherit;
  pointer-events: none;
}
#validation .opt-in {
  opacity: 1;
  cursor: pointer;
}

p.errors, p.success {
  margin: 30px 0;
  padding: 20px 60px;
  text-align: center; 
  clear: both;
  border-radius: 3px;
}
p.success {
  color: #5c6a06;
  background: #c5e21a;
}
p.errors, form div.error input, form div.error textarea, .formulaire .g-recaptcha.error {
  color: #bc3d2d;
  background: #fddcdf;
}


/* ////// FOOTER //////*/

footer {
    background-color: var(--color-gris);
    padding: 50px 0;
}
footer .footer-row {
    background-image: url(/img/carte-france.svg);
    background-position: top left;
    background-repeat: no-repeat;
    display: flex;
    justify-content: space-between;
}
footer h3 {
    color: var(--color-rose);
    font-family: "Saira Condensed", sans-serif;
		font-weight: 600;
	  font-style: normal;
}
footer p {
    margin: 15px 0;
    font-size: 1.2rem;
}
footer .footer-row > div:first-child h3 {
    font-family: "Oleo Script Swash Caps", system-ui;
	  font-weight: 400;
	  font-style: normal;
    font-size: 2.5rem;
}
footer .footer-row > div {
    margin-top: 20px;
}
footer .footer-row > div:first-child {
    margin-top: 0;
    padding-left: 120px;
}
footer .footer-row > div > ul {
    padding: 0;
    list-style: none;
}
footer .footer-row > div:first-child > ul {
    margin-top: 30px;
}
footer .footer-row > div:first-child > ul > li {
    display: inline-block;
    margin-right: 10px;
}
footer .footer-row > div:first-child > ul > li:last-child {
    margin: 0;
}
footer .footer-row > div:last-child > img {
    width: 100%;
    max-width: 200px;
}
footer a {
    color: var(--color-black);
}
footer a:hover {
    color: var(--color-rose);
}
footer .btn {
	font-size: 1.5rem;
  font-family: "Saira Condensed", sans-serif;
  font-weight: 600;
  font-style: normal;
  background-color: transparent;
}
footer hr {
	margin: 50px 0 20px;
	border-color: var(--color-grey);
}
footer #mentions {
    color: var(--color-dark);
    font-size: 0.7rem;
    padding: 30px 10px 0;
}
footer #mentions a {
    color: var(--color-dark);
}
footer #mentions a:hover, footer #mentions a:focus {
    color: var(--color-blanc);
}

.to-top {
  background-color: var(--color-rose);
  position: fixed;
  bottom: 12px;
  right: 24px;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  opacity: 0;
  pointer-events: none;
  transition: all .5s ease-in;
  z-index: 1000;
}
.to-top:hover {
  background-color: var(--color-black);
}
.to-top.active {
  bottom: 24px;
  pointer-events: auto;
  opacity: 1;
}
.to-top svg {
  color: var(--color-blanc);
  margin-top: 3px;
}
