/*
Theme Name: Déniche ton chien
Author: Boréale Média - Chloé Gauthier
Author URI: http://borealemedia.com
Description: Thème entièrement fait pour Déniche ton chien
Version: 1.0
License: Agence Boréale - Déniche ton chien
*/

/* --------- 1. Reset CSS --------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, a-propos, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display en block pour les anciens fureteurs */
article, aside, a-propos, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style-type: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* --------- 2. Base (général) --------- */
:root {
	--darkgreen: #7F8774;
	--middarkgreen: #BACBB5;
	--midgreen: #759361;
	--green: #A6C892;
	--lightgreen: #DCE6D2;
	--darkpeach: #8F7D68;
	--middarkpeach: #EEC7B0;
	--midpeach: #AA7D6B;
	--peach: #E7BCA9;
	--lightpeach: #FFE1CD;
	--darkpurple: #725A61;
	--middarkpurple: #;
	--midpurple: #BCAAAF;
	--purple: #D3C5C8;
	--lightpurple: #E2D5D8;
	--red: #DB4056;
	--darkblue: #91C1D2;
	--blue: #6C89A7;
	--lightblue: #D3E8F2;
	--midcream: #E2D6CF;
	--cream: #F0EAE6;
	--lightgrey: #D0D0D0;
	--grey: #A8A8A8;
	--midgrey: #A9A4A1;
	--darkgrey: #787878;
	--title: plantin, serif;
	--text: Satoshi, sans-serif;
}
html {
	
}
body {
	background: var(--cream);
	font: 400 18px var(--text);
	-webkit-font-smoothing: antialiased;
}
* {
	box-sizing: border-box;
}
button {
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	font: 400 16px/1.5em var(--text);
	transition: all 0.2s ease;
    	-webkit-transition: all 0.2s ease;
    	-moz-transition: all 0.2s ease;
    	-o-transition: all 0.2s ease;
}
img, svg {
	display: block;
	height: auto;
	max-width: 100%;
}
.flexwrap {
	display: flex;
	display: -webkit-flex; /* Safari */
		-webkit-flex-wrap: wrap; /* Safari 6.1+ */
	flex-wrap: wrap;
}
.flex {
	display: flex;
		display: -webkit-flex; /* Safari */
}
ins.adsbygoogle {
	text-align: center;
}
::-webkit-scrollbar {
    display: block;
    width: 10px;
}
::-webkit-scrollbar-track {
    background: #fff;
}
::-webkit-scrollbar-thumb {
    background-color: #000;
    border-radius: 5px;
    border-right: none;
    border-left: none;
    transition: all 0.2s ease;
    	-webkit-transition: all 0.2s ease;
    	-moz-transition: all 0.2s ease;
    	-o-transition: all 0.2s ease;
    width: 10px;
}
::-webkit-scrollbar-thumb:hover {
    background: #000;
}
::selection {
  background: #A37C66; /* WebKit/Blink Browsers */
}		
/*  --------- 3. Structure (layout) --------- */
body *:focus {
	outline: none;
}
/*WRAPPER*/
.wrapper {
	margin: 0 auto;
	max-width: 1720px;
	padding: 0 60px;
	width: 100%;
}
/*MENU*/
body:not(.home,.page-template-paiement,.page-template-connexion,.page-template-password-reset,.page-template-default) nav#language-menu {
	display: none;
}
nav#language-menu {
	display: none !important;
	left: 0;
	position: absolute;
	right: 0;
	top: 75px;
}
nav#language-menu ul {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	-webkit-justify-content: flex-end;
	width: 100%;
}
nav#language-menu ul li {
	margin-left: 40px;
}
nav#language-menu ul li.wpml-ls-current-language {
	opacity: 0.2;
	pointer-events: none;
}
nav#language-menu ul li a:hover {
	color: var(--blue);
}
/*ACCUEIL*/
section#accueil {
	align-items: center;
	-webkit-align-items: center;
	min-height: 100vh;
	padding: 150px 0;
}
section#accueil .content {
	align-items: center;
	-webkit-align-items: center;
}
section#accueil .content>.buttons {
	display: none;
}
section#accueil .image {
	margin-right: 150px;
	width: calc(50% - 150px);
}
section#accueil .image .flexwrap {
	align-items: center;
	-webkit-align-items: center;
}
section#accueil h1 {
	display: inline;
	letter-spacing: -0.01em;
	position: relative;
	white-space: nowrap;
	width: calc(100% - 180px);
}
section#accueil h1:before {
	content: '';
	display: inline-block;
	height: 0;
	width: 120px;
}
section#accueil  img {
	display: inline;
	left: 0;
	margin-right: 0px;
	position: absolute;
	top: -20px;
	width: 130px;
}
section#accueil .image .texte {
	margin-top: 75px;
	width: 100%;
}
section#accueil .image .texte em{
	font-size: 1rem;
	margin-top: 2em;
	display: block;
}
section#accueil form {
    width: 100%;
    padding: 40px;
    background-color: #fff;
    border-radius: 32px;
	margin-top: 40px;
}
section#entete div.container button.btn {
    background-color: var(--blue);
    border: 1px solid var(--blue);
    border-radius: 28px;
    color: #FFF;
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    margin-top: 20px;
    padding: 12px 45px;
	margin-right: 20px;
}
section#accueil form input[type="email"], section#accueil form input[type="password"], section#accueil form input[type="text"]{
	display: block;
	width: 100%;
	border: none;
	background-color: transparent;
	border-bottom: 1px solid #000;
	border-radius: 0;
	padding: 0;
	height: 55px;
	font-size: 20px;
}
section#accueil form input[type="checkbox"]{
	background-color: #fff;
	width: 20px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	height: 20px;
	position: relative;
	top: 6px;
	border-radius: 3px;
	border: 1px solid #000;
}
section#accueil form input[type="checkbox"]:checked{
	background-color: #000;
	background-image: url("assets/img/check-w.svg");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
section#accueil form button{
    background-color: var(--blue);
    border: 1px solid var(--blue);
    border-radius: 28px;
    color: #FFF;
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    margin-top: 20px;
    padding: 12px 45px;
}
section#accueil form button:hover {
    background: var(--cream);
    border-color: var(--blue);
    color: var(--blue);
}
section#accueil form a{
	display: block;
	font-size: 16px;
	text-decoration: underline;
}
section#accueil form div.flex{
	display: block;
	justify-content: space-between;
	align-items: center;
}
section#accueil form div.flex a{
	margin-top: 15px;
}
section#accueil .image .texte p {
	font: italic 400 32px/1.25em var(--title);
}
section#accueil .image .buttons {
	margin-top: 35px;
}
section#accueil a.button {
	background-color: var(--blue);
	border: 1px solid var(--blue);
	border-radius: 28px;
	color: #FFF;
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	margin-top: 20px;
	padding: 12px 45px;
	margin-right: 20px;
}
section#accueil a.button:hover {
    background: var(--cream);
    border-color: var(--blue);
    color: var(--blue);
}
section#accueil a.button:nth-child(2) {
	margin-right: 20px;
}
section#accueil a.button.blanc {
	background-color: #FFF;
	border: 1px solid #FFF;
	color: var(--blue);
	margin-right: 20px;
}
section#accueil a.button:nth-child(2):hover,
section#accueil a.button.blanc:hover {
	background: var(--cream);
	border-color: var(--blue);
	color: var(--blue);
}
section#accueil .box {
	background-color: #fff;
	border-radius: 32px;
	width: 50%;
}
section#accueil .box .texte {
	padding: 40px 40px 80px;
}
section#accueil .box .texte>div:nth-child(1) {
	display: block;
}
section#accueil .box .texte>div {
	display: none;
}
section#accueil .box .texte p {
	font-size: 24px;
	color: var(--darkgrey);
}
section#accueil .box .navigation {
	align-items: center;
	-webkit-align-items: center;
	border-top: 1px solid var(--lightgrey);
	justify-content: space-between;
	-webkit-justify-content: space-between;
	padding: 40px;
}
section#accueil .box .navigation .count {
	color: #A8A8A8;
	font-size: 32px;
}
section#accueil .box .navigation .count span {
	color: #000;
	font-size: 32px;
}
section#accueil .box .navigation .arrows {
	align-items: center;
	-webkit-align-items: center;
}
section#accueil .box .navigation .arrows .arrow.disabled {
	opacity: 50%;
	pointer-events: none;
}
section#accueil .box .navigation .arrows .arrow svg * {
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#accueil .box .navigation .arrows .arrow:hover svg * {
	stroke: #000;
}
section#accueil .box .navigation .arrows .arrow {
	cursor: pointer;
}
section#accueil .box .navigation .arrows .arrow svg {
	width: 48px;
}
section#accueil .box .navigation .arrows .arrow.arrow-prev {
	margin-right: 22px;
}
section#accueil h1 br {
    
}
section#accueil[data-quiz='2'] .image{
	width: 100%;
}
section#accueil div.box-right{
	width: 50%;
}
/*PAIEMENT*/
section#paiement {
	align-items: center;
	-webkit-align-items: center;
	min-height: 100vh;
	padding: 150px 0;
}
section#paiement .content {
	align-items: flex-start;
}
section#paiement .image {
	margin-right: 60px;
	width: calc(50% - 60px);
}
section#paiement .image .flexwrap {
	align-items: center;
	-webkit-align-items: center;
}
section#paiement .image h1 {
	display: inline;
	letter-spacing: -0.01em;
	position: relative;
	width: calc(100% - 180px);
}
section#paiement .image h1:before {
	content: '';
	display: inline-block;
	height: 0;
	width: 100px;
}
section#paiement .image img {
	display: inline;
	left: 0;
	margin-right: 0px;
	position: absolute;
	top: 0;
	width: 130px;
}
section#paiement .image .texte {
	margin-top: 75px;
	width: 100%;
}
section#paiement .image .texte p {
	font: italic 400 32px/1.25em var(--title);
}
section#paiement a.button {
	background-color: var(--cream);
	border: 1px solid #000;
	border-radius: 28px;
	color: #000;
	display: inline-block;
	font-size: 20px;
	margin-top: 55px;
	padding: 12px 45px;
}
section#paiement a.button:hover {
	background: #000;
	color: var(--cream);
}
section#paiement .box {
	background-color: #fff;
	border-radius: 32px;
	padding: 40px;
	width: 50%;
}
section#paiement .box .step h2 {
	color: var(--grey);
	margin-bottom: 45px;
}
section#paiement .box .step strong {
	color: #000;
	font-weight: 400;
}
section#paiement .box h3 {
	margin-bottom: 30px;
}
#rcp_registration_form legend {
	font: 500 16px/1.5em var(--text);
	margin-bottom: 15px;
}
#rcp_registration_form p#rcp_discount_code_wrap {
	margin: 0;
}
#rcp_registration_form .box .rcp-renewal-date p,
#rcp_registration_form .box .rcp-total p,
#rcp_registration_form .membership-level-price>div:nth-child(1),
#rcp_registration_form .rcp_registration_total main>div,
#rcp_registration_form .rcp_registration_total footer>div {
	font-weight: 500;
	margin-bottom: 0;
}
#rcp_registration_form .rcp_registration_total main>div>div,
#rcp_registration_form .rcp_registration_total footer>div>div {
	font: 500 16px/1.5em var(--text);
}
#rcp_registration_form .rcp_registration_total .discounts-fees {
	border-bottom: 0;
	padding-bottom: 0;
}
#rcp_registration_form .rcp_registration_total .discounts-fees p {
	margin: 0;
}
#rcp_registration_form .total-row,
#rcp_registration_form .rcp_registration_total main>div,
#rcp_registration_form .rcp_registration_total footer>div {
	display: flex;
    justify-content: space-between;
    max-width: 100%;
    border-bottom: 1px solid #222222;
    padding-block: 10px;
}
#rcp_registration_form {
	justify-content: space-between;
	-webkit-justify-content: space-between;
	padding: 0;
}
#rcp_registration_form .rcp_login_link,
#rcp_registration_form #rcp_submit_wrap input[type="submit"] {
	display: none;
}
#rcp_registration_form #rcp_submit_wrap {
	margin-top: 30px;
	min-height: initial;
}
#rcp_registration_form .rcp_discounts_fieldset {
	border-top: 1px solid #000;
	margin-top: 15px;
	padding-top: 30px;
}
#rcp_registration_form fieldset.rcp_user_fieldset>p,
#rcp_registration_form fieldset.rcp_card_fieldset>div,
#rcp_registration_form .rcp_avatax_fieldset>p {
	margin-bottom: 25px;
	padding-top: 15px;
	position: relative;
}
#rcp_registration_form label {
	color: var(--midgrey);
	display: block;
}
#rcp_registration_form .rcp_user_fieldset label,
#rcp_registration_form .rcp_discounts_fieldset label {
	color: var(--midgrey);
	display: block;
	font: 400 14px var(--text);
	left: 0;
	position: absolute;
	top: 0px;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
#rcp_registration_form.rcp_user_fieldset label.focus-fill,
#rcp_registration_form .rcp_discounts_fieldset label.focus-fill,
#rcp_registration_form .rcp_card_fieldset label {
	font-size: 14px;
	top: 0;
}
#rcp_registration_form #rcp_discount_code_wrap {
	padding-top: 15px;
	position: relative;
}
#rcp_registration_form .membership-level-price div {
	margin: 0;
}
#rcp_registration_form .rcp_registration_total {
	border-bottom: 1px solid #000;
	border-top: 1px solid #000;
	margin: 30px 0;
	padding: 40px 0;
}
#rcp_registration_form .rcp_registration_total_details .rcp-total {
	border-bottom: 0;
}
#rcp_registration_form .rcp_registration_total_details .rcp-renewal-date,
#rcp_registration_form .rcp_registration_total_details .rcp-recurring-total {
	border-bottom: 0;
	display: none !important;
}
#rcp_registration_form input {
	appearance: none;
	-webkit-appearance: none;
	background-color: #FFF;
	border: 0;
	border-bottom: 1px solid var(--grey);
	border-radius: 0;
	color: #000;
	font: 500 18px var(--text);
	max-width: initial;
	padding: 15px 0;
	width: 100%;
}
#rcp_registration_form li.rcp_subscription_level {
	display: flex;
	display: -webkit-flex;
}
#rcp_registration_form .rcp_gateway_option_label {
	color: #000 !important;
}
#rcp_registration_form .rcp_gateway_option_label input[type="radio"] {
	top: 6px;
}
#rcp_registration_form input[type="radio"] {
	border: 1px solid var(--grey);
	border-radius: 100%;
	height: 24px;
	margin: 0 10px 0 0;
	padding: 0;
	position: relative;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	width: 24px;
}
#rcp_registration_form input[type="radio"]:before {
	background-color: var(--blue);
	border-radius: 100%;
	content: '';
	display: block;
	height: 16px;
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 16px;
}
#rcp_registration_form input[type="radio"]:checked:before {
	opacity: 1;
}
#rcp_registration_form li.rcp_subscription_level label {
	width: calc(100% - 34px);
}
#rcp_registration_form li.rcp_subscription_level label span:nth-child(4),
#rcp_registration_form li.rcp_subscription_level label span:nth-child(5) {
	display: none;
}
#rcp_registration_form p#rcp_agree_to_terms_wrap {
	margin: 25px 0 0;
}
#rcp_registration_form p#rcp_agree_to_terms_wrap a:hover {
	opacity: 0.6;
}
#rcp_registration_form input[type="checkbox"] {
	background-image: none;
	background-size: 15px;
	background-position: center;
	background-repeat: no-repeat;
	border: 1px solid var(--grey);
	border-radius: 5px;
	cursor: pointer;
	height: 25px;
	margin: 0 15px 0 0;
	padding: 0;
	position: relative;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	width: 25px;
}
#rcp_registration_form input[type="checkbox"]:checked {
	background-image: url(assets/img/check.png);
}
#rcp_registration_form label[for="rcp_agree_to_terms"] {
	position: initial;
}
#rcp_registration_form select {
	background-image: url(assets/svg/dropdown-arrow.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 15px;
	cursor: pointer;
}
#rcp_registration_form input:-webkit-autofill,
#rcp_registration_form input:-webkit-autofill:hover,
#rcp_registration_form input:-internal-autofill-selected {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset !important;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
	-webkit-text-fill-color: #000;
}
#rcp_registration_form input:-webkit-autofill:focus,
#rcp_registration_form input:-webkit-autofill:active {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset !important;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
	-webkit-text-fill-color: #000;
}
#rcp_registration_form input:-webkit-autofill::first-line {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
}
section#paiement .box button {
	background-color: var(--blue);
	border: 1px solid var(--blue);
	border-radius: 28px;
	color: #FFF;
	display: inline-block;
	font-size: 20px;
	padding: 12px 45px;
	text-align: center;
	width: 100%;
}
section#paiement .box button:hover {
	background: #FFF;
	color: var(--blue);
}
#rcp_registration_form button#rcp_apply_discount {
	margin: 20px 0 15px;
	width: initial;
}
#rcp_registration_form .rcp_user_fieldset {
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
    -webkit-justify-content: space-between;
}
#rcp_registration_form .rcp_user_fieldset p {
	display: block;
	position: relative;
	width: 100%;
}
#rcp_registration_form .rcp_user_fieldset p:nth-child(1),
#rcp_registration_form .rcp_user_fieldset p:nth-child(2),
#rcp_registration_form .rcp_user_fieldset p:nth-child(3),
#rcp_registration_form .rcp_user_fieldset p:nth-child(4),
#rcp_registration_form .rcp_user_fieldset p:nth-child(5),
#rcp_registration_form .rcp_user_fieldset p:nth-child(6) {
	width: calc(50% - 20px);
}
#rcp_registration_form .rcp_form p {
	min-height: initial;
}
#rcp_registration_form .rcp_registration_total main>div,
#rcp_registration_form .rcp_registration_total footer>div {
	width: 100% !important;
}
#rcp_registration_form #rcp_auto_renew_wrap {
	display: none !important;
	margin-top: 15px;
}
#rcp_registration_form #rcp_auto_renew_wrap label {
	color: #000;
}
/*QUESTIONS*/
section#questions .top-bar {
	align-items: flex-end;
	-webkit-align-items: flex-end;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	width: 100%;
}
section#questions .progress-bar {
	justify-content: space-between;
	-webkit-justify-content: space-between;
	position: relative;
	width: calc(100% - 140px);
}
section#questions .progress-bar .step {
	display: none;
	position: absolute;
	top: 0;
}
section#questions .progress-bar .step p,
section#questions .progress-bar .step p span {
	color: var(--grey);
	font-size: 11px;
	font-weight: 500;
}
section#questions .progress-bar img {
	left: 0%;
	position: absolute;
	top: -24px;
	transform: translateX(-50%);
	width: 64px;
    transition: left .3s linear;
    -webkit-transition: left .3s linear;
    -moz-transition: left .3s linear;
    -o-transition: left .3s linear;
}
section#questions .progress-bar .bar {
	height: 16px;
}
section#questions .progress-bar .title {
	align-items: center;
	-webkit-align-items: center;
	margin-top: 30px;
}
section#questions .progress-bar .title .check {
	display: none;
	margin-right: 10px;
}
section#questions .progress-bar .title .check svg {
	width: 21px;
}
section#questions .progress-bar .title span {
	color: #605F5D;
	display: block;
	font-weight: 700;
}
section#questions .progress-bar .title span.active {
	color: #000;
}
section#questions .progress-bar .progress-1 {
	width: calc(100% - 0px);
}
section#questions .progress-bar .progress-2 {
	width: calc(17% - 11px);
}
section#questions .progress-bar .progress-3 {
	width: calc(53% - 5.5px);
}
section#questions .progress-bar .bar .blank {
	background-color: #fff;
	box-shadow: 0 0 0 1px #808080 inset;
	height: 16px;
	overflow: hidden;
	position: relative;
}
section#questions .progress-bar .progress-1 .bar .blank {
	border-radius: 8px 0 0 8px;
}
section#questions .progress-bar .progress-3 .bar .blank {
	border-radius: 0 8px 8px 0;
}
section#questions .progress-bar .bar .progress {
	height: 16px;
	left: 0;
	position: absolute;
	top: 0;
	transition: all .3s linear;
    -webkit-transition: all .3s linear;
    -moz-transition: all .3s linear;
    -o-transition: all .3s linear;
}
section#questions .progress-bar .progress-1 .bar .progress {
	background-color: var(--green);
	border-radius: 8px 0 0 8px;
}
section#questions .progress-bar .progress-2 .bar .progress {
	background-color: var(--peach);
}
section#questions .progress-bar .progress-3 .bar .progress {
	background-color: var(--purple);
	border-radius: 0 8px 8px 0;
}
section#questions .progress-bar .percent-progress {
	bottom: 0;
	position: absolute;
	right: 0;
}
section#questions .progress-bar .percent-progress span {
	color: #000;
	font-size: 24px;
	font-weight: 700;
}
section#questions .content {
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	padding: 50px 0 80px;
}
section#questions .content .section-page {
	background-color: var(--cream);
	bottom: 0;
	display: none;
	left: 0;
	min-height: calc(100vh - 120px);
	padding: 0 30px;
	position: fixed;
	top: 120px;
	width: 100%;
	z-index: 1;
}
section#questions .content .section-page h2 {
	font-size: 96px;
	margin: 40px 0 80px;
	text-align: center;
}
section#questions .content .section-page .content-wrap {
	align-items: center;
	-webkit-align-items: center;
	box-sizing: border-box;
	min-height: calc(100vh - 120px);
}
section#questions .content .section-page .content-wrap>div {
	padding: 50px 30px;
	width: 100%;
}
section#questions .content .section-page img {
	margin: 0 auto;
	max-width: 130px;
}
section#questions .image {
	width: calc(50% - 20px);
}
section#questions .image img {
	height: auto;
	margin: 0 auto;
    transition: opacity .5s ease;
}
section#questions .box {
	align-content: space-between;
	-webkit-align-content: space-between;
	background-color: #fff;
	border-radius: 48px;
	min-height: 715px;
	padding: 50px;
	width: calc(50% - 20px);
}
section#questions .box.cat-1 {
	background-color: var(--lightgreen);
}
section#questions .box.cat-2 {
	background-color: var(--lightpeach);
}
section#questions .box.cat-3 {
	background-color: var(--lightpurple);
}
section#questions .box h1 {
	font: 700 16px var(--text);
	margin-bottom: 25px;
	text-transform: uppercase;
}
section#questions .box h1 span {
	font-weight: 700;
}
section#questions .box.cat-1 h1 span {
	color: var(--darkgreen);
}
section#questions .box.cat-2 h1 span {
	color: var(--darkpeach);
}
section#questions .box.cat-3 h1 span {
	color: var(--darkpurple);
}
section#questions .box h2 {
	font-style: italic;
	margin-bottom: 50px;
}
section#questions .box .texte {
	margin-bottom: 40px;
}
section#questions .box .texte p {
	color: #000;
	font-weight: 400;
	line-height: 1.5em;
}
section#questions .box .radios,
section#questions .box .checkboxes {
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
section#questions .box .radios label,
section#questions .box .checkboxes label,
section#questions .box .validation label,
section#questions .box .libre input {
	align-items: center;
	-webkit-align-items: center;
	background-color: transparent;
	border: 1px solid #000;
	border-radius: 16px;
	margin-bottom: 30px;
	padding: 25px;
	position: relative;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	width: calc(100% - 0px);
	z-index: 0;
}
section#questions .box .validation label,
section#questions .box .libre input {
	width: 100%;
}
section#questions .box.cat-1 .radios label,
section#questions .box.cat-1 .checkboxes label,
section#questions .box.cat-1 .validation label {
	border-color: var(--darkgreen);
}
section#questions .box.cat-2 .radios label,
section#questions .box.cat-2 .checkboxes label,
section#questions .box.cat-2 .validation label {
	border-color: var(--darkpeach);
}
section#questions .box.cat-3 .radios label,
section#questions .box.cat-3 .checkboxes label,
section#questions .box.cat-3 .validation label {
	border-color: var(--darkpurple);
}
section#questions .box .radios label.selected,
section#questions .box .checkboxes label.selected,
section#questions .box .validation label.selected {
	border: 1px solid #000;
	box-shadow: 0px 0px 0px 1px #000 inset;
}
section#questions .box .radios label .radio-custom {
	border-radius: 100%;
	border: 1px solid #000;
	display: block;
	height: 28px;
	margin-right: 20px;
	position: relative;
	width: 28px;
	z-index: -1;
}
section#questions .box.cat-1 .radios label .radio-custom {
	border-color: var(--darkgreen);
}
section#questions .box.cat-2 .radios label .radio-custom {
	border-color: var(--darkpeach);
}
section#questions .box.cat-3 .radios label .radio-custom {
	border-color: var(--darkpurple);
}
section#questions .box .radios label .radio-custom:after {
	background-color: transparent;
	border-radius: 100%;
	content: '';
	height: 20px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 20px;
}
section#questions .box .radios label input:checked ~ .radio-custom:after {
	background-color: #000;
}
section#questions .box .checkboxes label .checkbox-custom,
section#questions .box .validation label .checkbox-custom {
	border-radius: 6px;
	border: 1px solid #000;
	display: block;
	height: 28px;
	margin-right: 20px;
	position: relative;
	width: 28px;
	z-index: -1;
}
section#questions .box.cat-1 .checkboxes label .checkbox-custom,
section#questions .box.cat-1 .validation label .checkbox-custom {
	border-color: var(--darkgreen);
}
section#questions .box.cat-2 .checkboxes label .checkbox-custom,
section#questions .box.cat-2 .validation label .checkbox-custom {
	border-color: var(--darkpeach);
}
section#questions .box.cat-3 .checkboxes label .checkbox-custom,
section#questions .box.cat-3 .validation label .checkbox-custom {
	border-color: var(--darkpurple);
}
section#questions .box .checkboxes label.selected .checkbox-custom,
section#questions .box .validation label.selected .checkbox-custom {
	background-color: #000;
	border-color: #000;
}
section#questions .box .checkboxes label .checkbox-custom svg,
section#questions .box .validation label .checkbox-custom svg {
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	width: 19px; 
}
section#questions .box .checkboxes label.selected .checkbox-custom svg,
section#questions .box .validation label.selected .checkbox-custom svg {
	opacity: 1;
}
section#questions .box .validation label.selected {
	pointer-events: none;
}
section#questions .box .radios label span,
section#questions .box .checkboxes label span,
section#questions .box .validation label span {
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	width: calc(100% - 48px);
}
section#questions .box label input {
	bottom: 0;
	left: 0;
	margin: 0;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}
section#questions .box .radios label input,
section#questions .box .checkboxes label input,
section#questions .box .validation label input {
	cursor: pointer;
	z-index: 1;
}
section#questions .box .checkboxes label,
section#questions .box .validation label {
	border-radius: 16px;
}
section#questions .box.cat-1 .radios label,
section#questions .box.cat-1 .checkboxes label,
section#questions .box.cat-1 .validation label {
	color: var(--darkgreen);
}
section#questions .box.cat-1 .radios label span,
section#questions .box.cat-1 .checkboxes label span,
section#questions .box.cat-1 .validation label span {
	color: var(--darkgreen);
}
section#questions .box.cat-2 .radios label,
section#questions .box.cat-2 .checkboxes label,
section#questions .box.cat-2 .validation label {
	color: var(--darkpeach);
}
section#questions .box.cat-2 .radios label span,
section#questions .box.cat-2 .checkboxes label span,
section#questions .box.cat-2 .validation label span {
	color: var(--darkpeach);
}
section#questions .box.cat-3 .radios label,
section#questions .box.cat-3 .checkboxes label,
section#questions .box.cat-3 .validation label {
	border-color: var(--darkpurple);
}
section#questions .box.cat-3 .radios label span,
section#questions .box.cat-3 .checkboxes label span,
section#questions .box.cat-3 .validation label span {
	color: var(--darkpurple);
}
section#questions .box .radios label.selected span,
section#questions .box .checkboxes label.selected span,
section#questions .box .validation label.selected span {
	color: #000;
}
section#questions .box .slider .slider-bar {
	border: 0;
	border-radius: 12px;
	height: 24px;
	position: relative;
	z-index: 0;
}
section#questions .box.cat-1 .slider .slider-bar {
	background-color: var(--green);
}
section#questions .box.cat-2 .slider .slider-bar {
	background-color: var(--peach);
}
section#questions .box.cat-3 .slider .slider-bar {
	background-color: var(--purple);
}
section#questions .box .slider .slider-bar .ui-slider-handle {
	align-items: center;
	-webkit-align-items: center;
	background-color: #000;
	border: 0;
	border-radius: 100%;
	color: #fff;
	display: flex;
	display: -webkit-flex;
	font: 700 20px var(--text);
	height: 48px;
	justify-content: center;
	-webkit-justify-content: center;
	left: 42.2%;
	position: absolute;
	top: 50%;
	transform: translate(-25%,-50%);
	transition: all 0.1s ease;
		-webkit-transition: all 0.1s ease;
		-moz-transition: all 0.1s ease;
		-o-transition: all 0.1s ease;
	width: 48px;
	z-index: 1;
}
section#questions .box .slider.slider-km .ui-slider-handle {
	font-size: 16px;
}
section#questions .box .slider .slider-bar .dots {
	bottom: 8px;
	left: 10px;
	position: absolute;
	right: 12px;
	top: 8px;
}
section#questions .box .slider .slider-bar .dot {
	background-color: #000;
	border-radius: 100%;
	height: 4px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) scale(1);
	width: 4px;
}
section#questions .box.cat-1 .slider .slider-bar .dot {
	background-color: var(--darkgreen);
}
section#questions .box.cat-2 .slider .slider-bar .dot {
	background-color: var(--darkpeach);
}
section#questions .box.cat-3 .slider .slider-bar .dot {
	background-color: var(--darkpurple);
}
section#questions .box .slider .slider-bar .dot-2,
section#questions .box .slider .slider-bar .dot-4,
section#questions .box .slider .slider-bar .dot-6,
section#questions .box .slider .slider-bar .dot-8,
section#questions .box .slider .slider-bar .dot-10 {
	transform: translate(-50%, -50%) scale(2);
}
section#questions .box .slider .slider-bar .dot-1 {
	left: 0%;
}
section#questions .box .slider .slider-bar .dot-2 {
	left: calc(100%/9);
}
section#questions .box .slider .slider-bar .dot-3 {
	left: calc(100%/9 * 2);
}
section#questions .box .slider .slider-bar .dot-4 {
	left: calc(100%/9 * 3);
}
section#questions .box .slider .slider-bar .dot-5 {
	left: calc(100%/9 * 4);
}
section#questions .box .slider .slider-bar .dot-6 {
	left: calc(100%/9 * 5);
}
section#questions .box .slider .slider-bar .dot-7 {
	left: calc(100%/9 * 6);
}
section#questions .box .slider .slider-bar .dot-8 {
	left: calc(100%/9 * 7);
}
section#questions .box .slider .slider-bar .dot-9 {
	left: calc(100%/9 * 8);
}
section#questions .box .slider .slider-bar .dot-10 {
	left: 100%;
}
section#questions .box .slider .min-max {
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	margin-top: 25px;
}
section#questions .box .slider .min-max .min,
section#questions .box .slider .min-max .max {
	align-items: center;
	-webkit-align-items: center;
}
section#questions .box .slider .min-max svg {
	width: 20px;
}
section#questions .box.cat-1 .slider .min-max svg * {
	stroke: var(--darkgreen);
}
section#questions .box.cat-2 .slider .min-max svg * {
	stroke: var(--darkpeach);
}
section#questions .box.cat-3 .slider .min-max svg * {
	stroke: var(--darkpurple);
}
section#questions .box .slider .min-max .min svg {
	margin-right: 12px;
}
section#questions .box .slider .min-max .max svg {
	margin-left: 12px;
}
section#questions .box.cat-1 .slider .min-max span {
	color: var(--darkgreen);
}
section#questions .box.cat-2 .slider .min-max span {
	color: var(--darkpeach);
}
section#questions .box.cat-3 .slider .min-max span {
	color: var(--darkpurple);
}
section#questions .box .multiple label {
	border: 1px solid #000;
	border-radius: 20px;
	display: block;
	font-size: 17px;
	margin: 0 10px 10px 0;
	padding: 6.25px 15px;
	position: relative;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
    cursor: pointer;
}
section#questions .box.cat-1 .multiple label {
	border-color: var(--darkgreen);
	color: var(--darkgreen);
}
section#questions .box.cat-2 .multiple label {
	border-color: var(--darkpeach);
	color: var(--darkpeach);
}
section#questions .box.cat-3 .multiple label {
	border-color: var(--darkpurple);
	color: var(--darkpurple);
}
section#questions .box .multiple label.selected {
	background-color: #000;
	border-color: #000;
	color: #fff;
}
section#questions .box .multiple label:hover{
    opacity: 0.6;
}
section#questions .box.cat-1 .multiple label.selected {
	color: var(--lightgreen);
}
section#questions .box.cat-2 .multiple label.selected {
	color: var(--lightpeach);
}
section#questions .box.cat-3 .multiple label.selected {
	color: var(--lightpurple);
}
section#questions .box .multiple label input {
	cursor: pointer;
}
section#questions div.questions {
    width: 100%;
}
section#questions .drag-drop div.proposition div.option {
    height: 40px;
    min-width: 120px;
    border-radius: 20px;
    border: 1px solid #000;
    margin-right: 10px;
    margin-bottom: 10px;
}
section#questions .box.cat-1 .drag-drop div.proposition div.option {
	border-color: var(--darkgreen);
	color: var(--darkgreen);
}
section#questions .box.cat-2 .drag-drop div.proposition div.option {
	border-color: var(--darkpeach);
	color: var(--darkpeach);
}
section#questions .box.cat-3 .drag-drop div.proposition div.option {
	border-color: var(--darkpurple);
	color: var(--darkpurple);
}
section#questions .drag-drop div.proposition {
    margin-bottom: 30px;
}
section#questions .drag-drop div.card {
	align-items: center;
	-webkit-align-items: center;
	border-radius: 20px;
	cursor: move;
	display: flex;
	display: -webkit-flex;
	font-size: 1rem;
    height: 100%;
    justify-content: center;
    -webkit-justify-content: center;
    min-width: 148px;
    margin-right: 0px;
    padding: 9px 40px;
    z-index: 3;
}
section#questions .box.cat-1 .drag-drop div.card {
	background-color: var(--lightgreen);
}
section#questions .box.cat-2 .drag-drop div.card {
	background-color: var(--lightpeach);
}
section#questions .box.cat-3 .drag-drop div.card {
	background-color: var(--lightpurple);
}
section#questions .drag-drop div.card.ui-draggable-dragging {
	box-shadow: 0 0 0 1px #000 inset;
	color: #000;
}
section#questions .drag-drop div.reponse div.answer {
	border: 1px dashed #000;
	border-radius: 21px;
    min-height: 40px;
    margin: 0 10px 10px 0;
    min-width: 120px;
    position: relative;
    z-index: 2;
}
section#questions .drag-drop div.reponse div.answer div.card {
	background-color: #000;
	color: #FFF;
}
section#questions .drag-drop label {
	display: block;
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 15px;
	text-transform: uppercase;
}
section#questions .drag-drop div.reponse div.answer:after {
	align-items: center;
	-webkit-align-items: center;
	background-color: #000;
	border-radius: 50%;
	color: #fff;
	display: flex;
	display: -webkit-flex;
	font: 700 15px var(--text);
	height: 20px;
	justify-content: center;
	-webkit-justify-content: center;
	left: 10px;
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    width: 20px;
    z-index: 4;
}
section#questions .drag-drop div.reponse div.answer[data-num="1"]:after {
    content: '1';
}
section#questions .drag-drop div.reponse div.answer[data-num="2"]:after {
    content: '2';
}
section#questions .drag-drop div.reponse div.answer[data-num="3"]:after {
    content: '3';
}
section#questions .drag-drop div.reponse div.answer[data-num="4"]:after {
    content: '4';
}
section#questions .drag-drop div.reponse div.answer[data-num="5"]:after {
    content: '5';
}
section#questions .dropdown select {
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: transparent;
	background-position: right 30px center;
	background-repeat: no-repeat;
	background-size: 19px;
    border: 1px solid #000;
    border-radius: 12px;
    cursor: pointer;
    font: 500 18px var(--text);
    padding: 28px 30px;
    position: relative;
    width: 100%;
}
section#questions .box.cat-1 .dropdown select {
	background-image: url(assets/img/dropdown-arrow-question-cat-1.png);
	border-color: var(--darkgreen);
	color: var(--darkgreen);;
}
section#questions .box.cat-2 .dropdown select {
	background-image: url(assets/img/dropdown-arrow-question-cat-2.png);
	border-color: var(--darkpeach);
	color: var(--darkpeach);;
}
section#questions .box.cat-3 .dropdown select {
	background-image: url(assets/img/dropdown-arrow-question-cat-3.png);
	border-color: var(--darkpurple);
	color: var(--darkpurple);
}
section#questions .box form>div.adresse {
	padding-top: 25px;
	position: relative;
}
section#questions .box form>div.adresse label {
	color: #000;
	display: block;
	font: 400 18px var(--text);
	left: 15px;
	pointer-events: none;
	position: absolute;
	top: -5px;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#questions .box.cat-1 form>div.adresse label {
	color: var(--darkgreen);
}
section#questions .box.cat-2 form>div.adresse label {
	color: var(--darkpeach);
}
section#questions .box.cat-3 form>div.adresse label {
	color: var(--darkpurple);
}
section#questions .box form>div.adresse label.focus-fill {
	font-size: 14px;
	top: 0;
}
section#questions .box form>div.adresse input {
	appearance: none;
	-webkit-appearance: none;
	background-color: transparent;
	border: 1px solid #000;
	border-radius: 16px;
	color: #000;
	font: 500 18px var(--text);
	padding: 15px;
	width: 100%;
}
section#questions .box form input#submit-form {
	display: none;
}
section#questions .box .buttons {
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	margin-top: 50px;
	width: 100%;
}
section#questions .box .buttons button,
section#questions .content .section-page button {
	align-items: center;
	-webkit-align-items: center;
	background-color: #000;
	border: 1px solid #000;
	border-radius: 28px;
	font-weight: 700;
	padding: 15px 35px;
}
section#questions .content .section-page button {
	color: var(--cream);
	margin: 0 auto;
}
section#questions .box .buttons button.prev {
	background-color: transparent;
}
section#questions .box .buttons button.prev svg {
	display: none;
	width: 48px;
}
section#questions .box .buttons button.prev svg * {
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#questions .box.cat-1 .buttons button.prev {
	border-color: var(--darkgreen);
	color: var(--darkgreen);
}
section#questions .box.cat-1 .buttons button.prev.disabled{
    cursor: not-allowed;
    opacity: .2;
}
section#questions .box.cat-1 .buttons button.prev:hover {
	background-color: var(--darkgreen);
	color: var(--lightgreen);
}
section#questions .box.cat-1 .buttons button.prev svg * {
	stroke: var(--darkgreen);
}
section#questions .box.cat-1 .buttons button.prev:hover svg line,
section#questions .box.cat-1 .buttons button.prev:hover svg polyline {
	stroke: var(--lightgreen);
}
section#questions .box.cat-2 .buttons button.prev {
	border-color: var(--darkpeach);
	color: var(--darkpeach);
}
section#questions .box.cat-2 .buttons button.prev:hover {
	background-color: var(--darkpeach);
	color: var(--lightpeach);
}
section#questions .box.cat-2 .buttons button.prev svg * {
	stroke: var(--darkpeach);
}
section#questions .box.cat-2 .buttons button.prev:hover svg line,
section#questions .box.cat-2 .buttons button.prev:hover svg polyline {
	stroke: var(--lightpeach);
}
section#questions .box.cat-3 .buttons button.prev {
	border-color: var(--darkpurple);
	color: var(--darkpurple);
}
section#questions .box.cat-3 .buttons button.prev:hover {
	background-color: var(--darkpurple);
	color: var(--lightpurple);
}
section#questions .box.cat-3 .buttons button.prev:hover svg line,
section#questions .box.cat-3 .buttons button.prev:hover svg polyline {
	stroke: var(--lightpurple);
}
section#questions .box.cat-3 .buttons button.prev svg * {
	stroke: var(--darkpurple);
}
section#questions .box .buttons button.next.disabled {
	cursor: not-allowed;
	opacity: 25%;
}
section#questions .box .buttons button.next svg,
section#questions .content .section-page button svg {
	margin-left: 10px;
	width: 25px;
}
section#questions .box .buttons button.next svg *,
section#questions .content .section-page button svg * {
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#questions .box.cat-1 button.next {
	color: var(--lightgreen);
}
section#questions .box.cat-1 button.next svg * {
	stroke: var(--lightgreen);
}
section#questions .box.cat-2 button.next {
	color: var(--lightpeach);
}
section#questions .box.cat-2 button.next svg * {
	stroke: var(--lightpeach);
}
section#questions .box.cat-3 button.next {
	color: var(--lightpurple);
}
section#questions .box.cat-3 button.next svg * {
	stroke: var(--lightpurple);
}
/*MEILLEUR RÉSULTAT*/
section#resultats {
	padding: 100px 0;
}
section#resultats .wrapper {
	max-width: 1400px;
}
section#resultats h1 {
	font-size: 88px;
	margin-bottom: 70px;
	text-align: center;
}
section#resultats #autres-resultats h2 {
	font-size: 88px;
	margin-bottom: 80px;
	text-align: center;
}
section#resultats .box {
	align-items: flex-start;
	-webkit-align-items: flex-start;
	border-radius: 48px;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
section#resultats .box.race-1 {
	background-color: var(--lightblue);
	margin-bottom: 200px;
	padding: 75px 70px;
}
section#resultats .image-wrap {
	position: relative;
}
section#resultats .box.race-1 .image-wrap {
	padding: 40px 40px 85px;
	width: calc(47% - 55px);
}
section#resultats .image-wrap svg {
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
section#resultats .box.race-1 h2 {
	font-size: 64px;
	margin-bottom: 35px;
}
section#resultats .box.race-1 .compatibility-bar {
	stroke: var(--darkblue);
}
section#resultats .box.race-2 .compatibility-bar {
	stroke: var(--peach);
}
section#resultats .box.race-3 .compatibility-bar {
	stroke: var(--midpurple);
}
section#resultats .box.race-4 .compatibility-bar {
	stroke: var(--green);
}
section#resultats .image-wrap .image {
	padding-bottom: 100%;
	position: relative;
}
section#resultats .image-wrap img {
	border-radius: 100%;
	height: 100%;
	left: 0;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	width: 100%;
}
section#resultats .image-wrap .compatibilite {
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	text-align: center;
}
section#resultats .image-wrap .compatibilite span {
	font-weight: 700;
}
section#resultats .box.race-1 .image-wrap .compatibilite span {
	font-size: 40px;
}
section#resultats #autres-resultats .image-wrap .compatibilite span {
	font-size: 32px;
	position: relative;
	top: -5px;
}
section#resultats .box.race-1 .image-wrap .compatibilite span,
section#resultats #autres-resultats .image-wrap .compatibilite span {
	line-height: 1em;
}
section#resultats .image-wrap .compatibilite p {
	color: var(--blue);
}
section#resultats .box .title-mobile {
	display: none;
}
section#resultats .box.race-1 .texte {
	width: calc(53% - 55px);
}
section#resultats .box.race-1 .texte p a{
	font-weight: 700;
	text-decoration: underline;
}
section#resultats p.match {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 35px;
	text-transform: uppercase;
}
section#resultats .texte p.incompatibilite {
	font-size: 16px;
	margin-bottom: 22px;
}
section#resultats .box.race-1 .texte p.incompatibilite {
	color: var(--blue);
}
section#resultats .box.race-2 .texte p.incompatibilite {
	color: var(--midpeach);
}
section#resultats .box.race-3 .texte p.incompatibilite {
	color: var(--darkpurple);
}
section#resultats .box.race-4 .texte p.incompatibilite {
	color: var(--midgreen);
}
section#resultats h3 {
	font: italic 400 64px/1.125em var(--title);
	margin-bottom: 40px;
	text-transform: initial;
}
section#resultats .texte ul {
	align-items: center;
	-webkit-align-items: center;
	margin-bottom: 0;
}
section#resultats .texte ul li {
	display: none;
}
section#resultats .texte ul li:nth-child(-n+5) {
	display: block;
}
section#resultats .texte ul li,
section#resultats .texte ul div.more {
	border: 1px solid #000;
	border-radius: 20px;
	padding: 7px 20px;
	margin: 0 10px 10px 0;
}
section#resultats .texte ul li:first-letter,
section#resultats .texte ul div.more:first-letter {
	text-transform: capitalize;
}
section#resultats .texte ul div.more {
	background-color: #000;
	color: #FFF;
	cursor: pointer;
	display: none;
	min-width: 40px;
	padding: 7px 9px;
	transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
}
section#resultats .texte ul div.more:hover {
	background-color: transparent;
	color: #000;
}
section#resultats .box.race-2 .texte ul li.more {
	color: var(--lightpeach);
}
section#resultats .box.race-3 .texte ul li.more {
	color: var(--lightpurple);
}
section#resultats .box.race-4 .texte ul li.more {
	color: var(--lightgreen);
}
section#resultats .box.race-1 .texte a.button {
	background-color: #000;
	border: 1px solid #000;
	border-radius: 28px;
	color: var(--lightblue);
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	margin-top: 35px;
	padding: 12px 22px;
}
section#resultats .box.race-1 .texte a.button:hover {
	background-color: transparent;
	color: #000;
}
section#resultats .box.race-2 {
	background-color: var(--lightpeach);
}
section#resultats .box.race-3 {
	background-color: var(--lightpurple);
}
section#resultats .box.race-4 {
	background-color: var(--lightgreen);
}
section#resultats #autres-resultats .box {
	padding: 60px 45px 50px;
	margin-bottom: 30px;
}
section#resultats .box.race-4 {
	margin-bottom: 0;
}
section#resultats button{
	background-color: var(--blue);
    border: 1px solid var(--blue);
    border-radius: 28px;
    color: #FFF;
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    margin-top: 20px;
    padding: 12px 45px;
	margin-right: 20px;
}
section#resultats button:hover {
    background: var(--cream);
    border-color: var(--blue);
    color: var(--blue);
}
section#resultats #autres-resultats .image-wrap {
	padding: 25px 25px 40px;
	width: calc(28% - 50px);
}
section#resultats #autres-resultats .texte {
	width: calc(72% - 50px);
}
section#resultats .resultats p, section#resultats .resultats p a{
	font-size: 22px;
	line-height: 1.3;
}
section#resultats .resultats p a{
	font-weight: 700;
	text-decoration: underline;
}
/*FICHE REFUGE*/
section#fiche-refuge {
	padding: 105px 0;
}
section#fiche-refuge .wrapper {
	max-width: 1400px;
}
section#fiche-refuge .dog-bubble {
	margin: 0 auto 40px;
}
section#fiche-refuge h1 {
	font-size: 88px;
	margin-bottom: 70px;
	text-align: center;
}
section#fiche-refuge h2 {
	font-size: 64px;
	margin-bottom: 25px;
}
section#fiche-refuge h2 span {
	font-size: 38px;
}
section#fiche-refuge .box {
	background-color: var(--lightpeach);
	border-radius: 32px;
	overflow: hidden;
}
section#fiche-refuge .box .image {
	width: 50%;
}
section#fiche-refuge .box .image img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}
section#fiche-refuge .box .texte {
	padding: 70px;
	width: 50%;
}
section#fiche-refuge .box .texte ul.infos {
	margin-bottom: 35px;
}
section#fiche-refuge .box .texte ul.infos li {
	display: flex;
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 5px;
}
section#fiche-refuge .box .texte ul.infos svg {
	margin-right: 15px;
	width: 20px;
}
section#fiche-refuge .box .texte ul.infos span {
	font-size: 24px;
	width: calc(100% - 37px);
}
section#fiche-refuge .box .texte ul.infos a {
	font-size: 24px;
	text-decoration: underline;
}
section#fiche-refuge .box .texte ul.infos a:hover {
	color: var(--darkpeach);
}
section#fiche-refuge .box h3 {
	color:var(--darkpeach);
	font-size: 16px;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}
section#fiche-refuge .box .texte p {
	font-size: 18px;
	margin-bottom: 15px;
}
section#fiche-refuge .box .texte p:last-of-type {
	margin: 0;
}
section#fiche-refuge .box .buttons {
	margin-top: 25px;
}
section#fiche-refuge .box .buttons a {
	align-items: center;
	-webkit-align-items: center;
	background-color: #000;
	border: 1px solid #000;
	border-radius: 28px;
	color: var(--lightpeach);
	display: flex;
    display: -webkit-flex;
	font-size: 20px;
	justify-content: center;
	-webkit-justify-content: center;
	margin: 15px 25px 0 0;
	padding: 12px 45px;
	text-align: center;
}
section#fiche-refuge .box .buttons a.lien-refuge {
	margin: 0;
	width: 100%;
}
section#fiche-refuge .box .buttons a.addtoany_share {
	background-color: transparent;
	color: #000;
}
section#fiche-refuge .box .buttons a.addtoany_share:hover {
	background-color: #000;
	color: var(--lightpeach);
}
section#fiche-refuge .box .buttons a.addtoany_share:after {
	background-image: url(assets/img/share-icon.png);
	background-position: center;
	background-size: 20px;
	content: '';
	display: block;
	height: 20px;
	margin-left: 10px;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	width: 20px;
}
section#fiche-refuge .box .buttons a.addtoany_share:hover:after{
	filter: invert(84%) sepia(15%) saturate(483%) hue-rotate(342deg) brightness(103%) contrast(95%);
}
div.a2a_full_footer {
	display: none !important;
}
section#fiche-refuge .box .buttons a:hover {
	background-color: transparent;
	color: #000;
}
section#fiche-refuge .box .buttons a svg {
	margin-left: 8px;
	width: 24px;
}
section#fiche-refuge .box .buttons a svg * {
	transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
}
section#fiche-refuge .box .buttons a.lien-refuge:hover svg * {
	stroke: #000;
}
section#fiche-refuge .box .buttons a.itineraire:hover svg * {
	stroke: #000;
}
/*FOOTER*/
footer {
	
}
/* ADMIN */
section#entete{
    padding: 50px 0 0;
}
section#entete form{
    display: flex;
    border-radius: 30px;
    height: 60px;
    border: 0px solid #000;
    color: #000;
    transition: all .5s ease;
    width: 700px;
    overflow: hidden;
    background-color: #fff;
    margin-top: 20px;
	align-items: center;
	padding: 0 20px;
}
section#entete form select{
	height: 60px;
	padding: 0 20px;
	background-color: transparent;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	font-size: 28px;
	border: none;
}
section#entete form input{
    width: calc( 100% - 60px);
    height: 53px;
    padding: 0 30px;
    color: #000;
    background-color: transparent;
    border: none;
    box-shadow: none;
    font-size: 28px;
}
section#entete form button{
    width: 60px;
    height: 60px;
    font-size: 0;
    background-image: url("assets/img/search.svg");
    background-size: 40px;
    background-position: top 40% center;
    background-repeat: no-repeat;
    background-color: transparent;
    border: none;
}
section#entete div.page{
    margin-top: 10px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
section#entete div.page a{
    color: #000;
    font-size: 24px;
    margin-right: 10px;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: transparent;
    border-radius: 50%;
}
section#entete div.page a.current{
    font-weight: 700;
    background-color: #fff;
}
section#entete div.page a:hover{
    text-decoration: underline;
}
section#entete div.container{
    max-width: 1200px;
    display: block;
    margin: 0 auto;
	padding: 0 25px;
}
section#entete .back{
    margin: 30px 0;
    text-decoration: none;
    font-size: 24px;
    background-color: #fff;
    height: 60px;
    border-radius: 30px;
    color: #000;
    padding: 5px 30px;
    justify-content: center;
    align-items: center;
    display: inline-flex;
}
section#users{
    padding-bottom: 100px;
	max-width: 1200px;
	padding: 0 25px 100px;
	display: block;
	margin: 0 auto;
}
section#users div.section{
    display: block;
    margin: 0 auto;
    padding: 50px;
    background-color: #fff;
    border-radius: 50px;
}
section#users div.table{
    width: 100%;
    border-bottom: 1px solid #f1f1f1;
    padding: 10px 0;
}
section#users div.table:last-of-type{
    border-bottom: 0;
}
section#users div.ranger{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
section#users div.colonne:nth-child(1){
    width: calc( 100% - 650px);
}
section#users div.colonne:nth-child(2){
    width: calc( 250px);
    padding: 0 20px;
}
section#users div.colonne:nth-child(3){
    width: calc( 200px);
    padding: 0 20px;
}
section#users div.colonne:nth-child(4){
    width: calc( 200px);
    padding: 0 20px;
}
section#users div.colonne button{
    border-radius: 30px;
    height: 60px;
    width: 100%;
    border: 2px solid #000;
    background-color: transparent;
    color: #000;
    transition: all .5s ease;
}
section#users div.colonne button:hover{
    background-color: #000;
    color: #fff;
}
section#users div.question{
    width: 100%;
    border-bottom: 1px solid #f1f1f1;
    padding: 10px 0;
}
section#users div.question div.colonne{
    width: 50%;
}
section#users div.question div.colonne:nth-child(1) p{
        font-weight: 700;
}
section#users div.questions div.ranger{
    align-items: flex-start;
}
section#connexion {
	align-items: center;
	-webkit-align-items: center;
	display: flex;
	display: -webkit-flex;
	min-height: 100vh;
	padding: 140px 0 200px; 
}
section#connexion h1 {
	margin-bottom: 20px;
	text-align: center;
}
.popup {
    display: none;
}
.dog-bubble {
	align-items: center;
	-webkit-align-items: center;
	display: flex;
	display: -webkit-flex; /* Safari */
	justify-content: center;
	-webkit-justify-content: center;
}
.dog-bubble img {
	width: 110px;
}
.dog-bubble .bubble {
	background-color: var(--midcream);
	border-radius: 12px;
	margin-left: 35px;
	padding: 20px 30px;
	position: relative;
}
section#questions .dog-bubble {
	justify-content: flex-start;
	-webkit-justify-content: flex-start;
}
section#questions .dog-bubble .bubble {
	margin-left: 25px;
	width: calc(100% - 135px);
}
section#questions .box.cat-1 .dog-bubble .bubble {
	background-color: var(--middarkgreen);
}
section#questions .box.cat-2 .dog-bubble .bubble {
	background-color: var(--middarkpeach);
}
section#questions .box.cat-3 .dog-bubble .bubble {
	background-color: var(--purple);
}
.dog-bubble .bubble:before {
	border: 10px solid transparent;
	border-right: 15px solid var(--midcream);
	content: '';
	display: block;
	height: 0;
	position: absolute;
	right: 100%;
	top: calc(50% - 10px);
	width: 0;
}
section#questions .box.cat-1 .dog-bubble .bubble:before {
	border-right: 15px solid var(--middarkgreen);
}
section#questions .box.cat-2 .dog-bubble .bubble:before {
	border-right: 15px solid var(--middarkpeach);
}
section#questions .box.cat-3 .dog-bubble .bubble:before {
	border-right: 15px solid var(--purple);
}
.dog-bubble .bubble p {
	font-size: 20px;
	font-weight: 700;
}
section#questions .dog-bubble .bubble p {
	font: italic 400 20px var(--title);
}
section#connexion .login-form {
	background-color: #fff;
	border-radius: 32px;
	margin: 100px auto 0;
	padding: 40px;
	width: 50%;
}
section#connexion .login-form p.error {
	color: var(--red);
	display: none;
	margin-bottom: 30px;
}
section#connexion .login-form form>p {
	margin-bottom: 30px;
	padding-top: 15px;
	position: relative;
}
section#connexion .login-form form>p.login-submit {
	margin-top: 30px;
	text-align: center;
}
section#connexion .login-form label {
	color: var(--midgrey);
	display: block;
	font: 400 14px var(--text);
	left: 0;
	pointer-events: none;
	position: absolute;
	top: 0;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#connexion .login-form input[type="text"],
section#connexion .login-form input[type="password"] {
	appearance: none;
	-webkit-appearance: none;
	background-color: #FFF;
	border: 0;
	border-bottom: 1px solid var(--grey);
	border-radius: 0;
	color: #000;
	font: 500 18px var(--text);
	padding: 15px 0;
	width: 100%;
}
section#connexion .login-form input:-webkit-autofill,
section#connexion .login-form input:-webkit-autofill:hover,
section#connexion .login-form input:-internal-autofill-selected {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset !important;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
	-webkit-text-fill-color: #000;
}
section#connexion .login-form input:-webkit-autofill:focus,
section#connexion .login-form input:-webkit-autofill:active {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset !important;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
	-webkit-text-fill-color: #000;
}
section#connexion .login-form input:-webkit-autofill::first-line {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
}
section#connexion .login-form input[type="submit"] {
	background-color: var(--blue);
	border: 1px solid var(--blue);
	appearance: none;
	-webkit-appearance: none;
	border-radius: 28px;
	color: #FFF;
	cursor: pointer;
	margin: 0;
	font: 700 20px/1.5em var(--text);
	padding: 12px 70px;
	transition: all 0.2s ease;
    	-webkit-transition: all 0.2s ease;
    	-moz-transition: all 0.2s ease;
    	-o-transition: all 0.2s ease;
}
section#connexion .login-form input[type="submit"]:hover {
	background-color: transparent;
	color: var(--blue);
}
section#connexion .login-form p.lost-pw {
	text-align: center;
}
section#connexion .login-form p.lost-pw a {
	color: var(--red);
	font-size: 20px;
}
section#connexion .login-form p.lost-pw a:hover {
	opacity: 50%;
}
/*PAGE*/
section#page {
    align-items: center;
    -webkit-align-items: center;
    min-height: 100vh;
    padding: 150px 0;
}
section#page h1 {
	font-size: 85px;
    letter-spacing: -0.01em;
    margin: 0 auto 80px;
    position: relative;
    text-align: center;
    width: 55%;
}
section#page .box {
	background-color: #fff;
    border-radius: 32px;
    margin: 0 auto 35px;
    padding: 40px;
    width: 50%;
}
section#page .box .som-password-sent-message,
section#page .box .som-password-error-message {
	display: none;
}
section#page .box legend {
	display: none;
}
section#page .box p {
	font-size: 24px;
	color: var(--darkgrey);
}
section#page .box p.extra-space {
	margin-bottom: 0;
	padding-top: 0;
}
section#page .box .somfrp-lost-pass-form-text {
	margin-bottom: 30px;
}
section#page .box fieldset>p,
section#page .box fieldset>div>p {
	margin-bottom: 25px;
	padding-top: 15px;
	position: relative;
}
section#page .box label {
	color: var(--midgrey);
	display: block;
	font: 400 18px var(--text);
	left: 0;
	pointer-events: none;
	position: absolute;
	top: 25px;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#page .box label.focus-fill {
	font-size: 14px;
	top: 0;
}
section#page .box form input {
	appearance: none;
	-webkit-appearance: none;
	background-color: #FFF;
	border: 0;
	border-bottom: 1px solid var(--grey);
	border-radius: 0;
	color: #000;
	font: 500 18px var(--text);
	max-width: initial;
	padding: 15px 0;
	width: 100%;
}
section#page .box form input:-webkit-autofill,
section#page .box form input:-webkit-autofill:hover,
section#page .box form input:-internal-autofill-selected {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset !important;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
	-webkit-text-fill-color: #000;
}
section#page .box form input:-webkit-autofill:focus,
section#page .box form input:-webkit-autofill:active {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset !important;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
	-webkit-text-fill-color: #000;
}
section#page .box form input:-webkit-autofill::first-line {
	background-color: #FFF;
	box-shadow: 0 0 0 50px #FFF inset;
		-webkit-box-shadow: 0 0 0 50px #FFF inset;
	color: #000;
	font: 500 18px var(--text);
}
section#page .box button,
section#page .box p>a {
	background-color: var(--blue);
	border: 1px solid var(--blue);
	border-radius: 28px;
	color: #FFF;
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	margin: 5px auto 0;
	padding: 12px 45px;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
section#page .box p>a {
	margin-top: 35px;
}
section#page .box button:hover,
section#page .box p>a:hover {
	background: #FFF;
	color: var(--blue);
}
section#page .box .lostpassword-submit {
	margin-bottom: 0;
}
div#loading {
	display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--cream);
    z-index: 9999;
}
div#loading .loading-wrap {
	align-items: center;
	-webkit-align-items: center;
	height: 100%;
	justify-content: center;
	-webkit-justify-content: center;
	width: 100%;
}
div#loading h3 {
    text-align: center;
}
div#loading img {
    width: 80px;
    display: block;
    margin: 40px auto 0;
}
/*404*/
section#error-404 {
	align-items: center;
	-webkit-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	min-height: 100vh;
	padding: 100px 0;
}
section#error-404 .texte {
	text-align: center;
}
section#error-404 a.button {
	background-color: var(--blue);
	border: 1px solid var(--blue);
	border-radius: 28px;
	color: #FFF;
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	margin: 40px auto 0;
	padding: 12px 45px;
}
section#error-404 a.button:hover {
	background-color: transparent;
	border-color: var(--blue);
	color: var(--blue);
}
section#alertes {
	height: 100vh;
}
#lightbox .lightbox-wrap {
	align-items: center;
	-webkit-align-items: center;
	height: 100%;
	justify-content: center;
	-webkit-justify-content: center;
	padding: 80px;
	width: 100%;
}
#lightbox .lightbox-wrap article {
	background-color: #FFF;
	border-radius: 24px;
	max-width: 800px;
	padding: 20px 5px;
	position: relative;
	top: 0;
	width: 100%;
}
#lightbox .lightbox-wrap article .close:hover {
	opacity: 50%
}
#lightbox .lightbox-wrap article .content {
	padding: 20px 30px;
}
#lightbox .lightbox-wrap article .rcp_header,
#lightbox .lightbox-wrap article #rcp-membership-new-signup-notice,
#lightbox .lightbox-wrap article #rcp_auto_renew_wrap,
#lightbox .lightbox-wrap article .rcp_discounts_fieldset {
	display: none !important;
}
#lightbox .lightbox-wrap article #rcp_registration_form .rcp_registration_total {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}
#lightbox .lightbox-wrap article .buttons {
	align-items: center;
	-webkit-align-items: center;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
#lightbox .lightbox-wrap article button {
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
}
#lightbox .lightbox-wrap article button,
#lightbox .lightbox-wrap article a.button {
	background-color: var(--blue);
	border: 1px solid var(--blue);
	border-radius: 28px;
	color: #FFF;
	display: inline-block;
	font-size: 20px;
	font-weight: 500;
	padding: 12px 45px;
	text-align: center;
	width: calc(50% - 20px);
}
#lightbox .lightbox-wrap article button:hover {
	background-color: transparent;
	color: var(--blue);
}
#lightbox .lightbox-wrap article a.button {
	background-color: #000;
	border-color: #000;
}
#lightbox .lightbox-wrap article a.button:hover {
	background-color: #FFF;
	color: #000;
}
#lightbox #rcp_registration_form .rcp_registration_total_details .rcp-recurring-total,
#lightbox #rcp_registration_form .rcp_registration_total_details .rcp-renewal-date {
	display: flex !important;
}

/* ---------- 4. liens et navigation ---------- */
a {
	text-decoration: none;
	transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
}
		
/* ---------- 5. fonts et textes ---------- */
@font-face {
    font-family: 'Satoshi';
    src: url('assets/fonts/Satoshi-Regular.woff2') format('woff2'),
        url('assets/fonts/Satoshi-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Satoshi';
    src: url('assets/fonts/Satoshi-Medium.woff2') format('woff2'),
        url('assets/fonts/Satoshi-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Satoshi';
    src: url('assets/fonts/Satoshi-Medium.woff2') format('woff2'),
        url('assets/fonts/Satoshi-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Satoshi';
    src: url('assets/fonts/Satoshi-Bold.woff2') format('woff2'),
        url('assets/fonts/Satoshi-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

html {
	font-size: 100%;
}
body {
	font-size: 62.5%;
}
h1 {
	font: italic 400 120px/0.92em var(--title);
}
h2 {
	font: italic 400 48px/1.167em var(--title);
	letter-spacing: -0.01em;
}
h3 {
	font: 700 16px var(--text);
	text-transform: uppercase;
}
p, ul, ol, a, span, label, input {
	color: #000;
	font: 500 16px/1.5em var(--text);
}
span, label {
	font: 500 16px/1.5em var(--text);
}
p strong,
p b,
ul strong,
ul b,
ol strong,
ol b,
a strong,
a b {
	font-weight: 700;
}
p i,
p em,
ul i,
ul em,
ol i,
ol em {
	font-style: italic;
}
a {
	color: #000;
	transition: all 0.2s ease;
		-webkit-transition: all 0.2s ease;
		-moz-transition: all 0.2s ease;
		-o-transition: all 0.2s ease;
}

/* ---------- 7. mediaQueries ---------- */
@media screen and (max-width: 1440px) {
	section#accueil .image img,
	section#paiement .image img {
		width: 110px;
	}
	section#accueil  h1:before,
	section#paiement  h1:before {
		width: 105px;
	}
	section#accueil .image .texte,
	section#paiement .image .texte {
		margin-top: 60px;
	}
	section#accueil .image .texte p,
	section#paiement .image .texte p {
		font-size: 27px;
	}
	section#accueil a.button,
	section#paiement a.button {
		border-radius: 25px;
		font-size: 18px;
		margin-top: 35px;
	}
	section#accueil .box .texte,
	section#paiement .box .texte {
		padding: 40px 40px 60px;
	}
	section#accueil .box .texte p,
	section#paiement .box .texte p {
		font-size: 22px;
	}
	section#accueil .box .navigation {
		padding: 30px 40px;
	}
	section#accueil .box .navigation .count,
	section#accueil .box .navigation .count span {
		font-size: 28px;
	}
	section#questions .content .section-page h2 {
		font-size: 86px;
	}
	section#questions .box {
		border-radius: 40px;
		padding: 40px;
	}
	section#questions .box .radios label,
	section#questions .box .checkboxes label,
	section#questions .box .validation label {
		padding: 20px;
	}
	section#resultats .box.race-1 {
		padding: 70px 60px;
	}
	section#resultats .box.race-1 .image-wrap {
		padding: 35px 35px 80px;
		width: calc(42% - 45px);
	}
	section#resultats .box.race-1 .image-wrap .compatibilite span {
		font-size: 35px;
	}
	section#resultats .box.race-1 .texte {
		width: calc(58% - 45px);
	}
	section#resultats .box.race-1 h2 {
		font-size: 59px;
	}
	section#resultats #autres-resultats .image-wrap {
		width: calc(34% - 40px);
	}
	section#resultats #autres-resultats .image-wrap .compatibilite span {
		font-size: 27px;
	}
	section#resultats #autres-resultats .texte {
		width: calc(66% - 40px);
	}
	section#resultats .texte ul li {
		padding: 7px 15px;
	}
	section#resultats .texte ul div.more {
		padding: 7px 9px;
	}
	section#resultats #autres-resultats h2 {
		font-size: 78px;
	}
	section#fiche-refuge .box .image {
		width: 40%;
	}
	section#fiche-refuge .box .texte {
		padding: 60px;
		width: 60%;
	}
	section#fiche-refuge h1 {
		font-size: 78px;
		margin-bottom: 60px;
	}
	section#page h1 {
		width: 60%;
	}
	section#page .box p {
		font-size: 22px;
	}
	h1 {
		font-size: 100px;
	}
	h2 {
		font-size: 38px;
	}
	section#accueil form div.flex{
		display: block;
	}
	section#accueil form div.flex a{
		margin-top: 30px;
	}
}
@media screen and (min-width: 1201px) {
	section#questions .box .buttons button:hover,
	section#questions .content .section-page button:hover {
		background-color: transparent;
		color: #000;
	}
	section#questions .box .buttons button:hover svg *,
	section#questions .content .section-page button:hover svg * {
		stroke: #000;
	}
}
@media screen and (max-width: 1200px) {
	.wrapper {
		padding: 0 40px;
	}
	nav#language-menu {
		top: 20px;
	}
	.dog-bubble .bubble p {
		font-size: 18px !important;
	}
	.dog-bubble img {
		width: 95px;
	}
	section#accueil .buttons a.button {
		border-radius: 24.5px;
		font-size: 18px;
		padding: 10px 35px;
	}
	section#questions .dog-bubble .bubble {
		width: calc(100% - 120px);
	}
	section#accueil,
	section#paiement,
	section#connexion {
		padding: 80px 0;
	}
	section#accueil .image {
		margin-right: 100px;
		width: calc(50% - 100px);
	}
	section#accueil img,
	section#paiement img {
		width: 100px;
	}
	section#accueil h1:before,
	section#paiement h1:before {
		width: 95px;
	}
	section#accueil .image .texte,
	section#paiement .image .texte {
		margin-top: 45px;
	}
	section#accueil .image .texte p,
	section#paiement .image .texte p {
		font-size: 25px;
	}
	section#accueil .box .texte {
		padding: 30px 30px 50px;
	}
	section#accueil .box .navigation {
		padding: 25px 30px;
	}
	section#accueil .box .navigation .count,
	section#accueil .box .navigation .count span {
		font-size: 22px;
	}
	section#paiement .box {
		padding: 30px;
	}
	section#paiement .box .rcp_user_fieldset p:nth-child(1),
	section#paiement .box .rcp_user_fieldset p:nth-child(2),
	section#paiement .box .rcp_user_fieldset p:nth-child(3),
	section#paiement .box .rcp_user_fieldset p:nth-child(4),
	section#paiement .box .rcp_user_fieldset p:nth-child(5),
	section#paiement .box .rcp_user_fieldset p:nth-child(6) {
		width: 100%;
	}
	section#questions {
		padding-top: 20px;
	}
	section#questions .progress-bar {
		padding-top: 60px;
		width: 100%;
	}
	section#questions .progress-bar img {
		top: 41px;
		transform: translate(-35%);
		width: 54px;
	}
	section#questions .progress-bar .step {
		display: block;
	}
	section#questions .progress-bar .title {
		left: 0;
		margin-top: 15px;
		position: absolute;
		top: 0;
	}
	section#questions .progress-bar .title span {
		display: none;
	}
	section#questions .progress-bar .title span.active {
		display: block;
	}
	section#questions .progress-bar .percent-progress span {
		font-size: 22px;
		display: block;
	}
	section#questions .progress-bar .title .check {
		display: none !important;
	}
	section#questions .house {
		display: none;
	}
	section#questions .image {
		width: calc(35% - 20px);
	}
	section#questions .content .section-page {
		min-height: calc(100vh - 96px);
	}
	section#questions .content .section-page h2 {
		font-size: 76px;
		margin: 30px 0 60px;
	}
	section#questions .box {
		width: calc(65% - 20px);
	}
	section#questions .content {
		padding: 30px 0 40px;
	}
	section#questions .progress-bar .percent-progress {
		top: 0;
	}
	section#questions .box {
		min-height: 625px;
	}
	section#questions .box h1,
	section#questions .box h1 span {
		font-size: 14px;
	}
	section#questions .box h2 {
		font-size: 33px;
	}
	section#questions .box .buttons button.next {
		margin-left: 20px;
		padding: 11px 20px;
	}
	section#resultats .box {
		border-radius: 38px;
	}
	section#resultats .box.race-1 {
		margin-bottom: 100px;
		padding: 60px 40px;
	}
	section#resultats .box.race-1 .image-wrap {
		padding: 30px 30px 75px;
		width: calc(40% - 20px);
	}
	section#resultats .box.race-1 .image-wrap .compatibilite span {
		font-size: 30px;
	}
	section#resultats #autres-resultats .image-wrap .compatibilite span {
		font-size: ;
	}
	section#resultats h1,
	section#resultats #autres-resultats h2 {
		margin-bottom: 60px;
	}
	section#resultats .box .title-mobile {
		width: calc(60% - 20px);
	}
	section#resultats .box.race-1 h2 {
		font-size: 54px;
	}
	section#resultats .box.race-1 .texte {
		width: calc(60% - 20px);
	}
	section#resultats .box.race-1 .texte a.button {
		border-radius: 26.5px;
		font-size: 18px;
	}
	section#resultats #autres-resultats .image-wrap {
		width: calc(35% - 20px);
	}
	section#resultats #autres-resultats .texte {
	    width: calc(65% - 20px);
	}
	section#resultats p.match {
		font-size: 18px;
		margin-bottom: 30px;
	}
	section#connexion .login-form {
		margin: 60px auto 0;
		width: 65%;
	}
	section#connexion .login-form input[type="submit"] {
		border-radius: 26.5px;
		font-size: 18px;
		padding: 12px 40px;
	}
	section#connexion .login-form p.lost-pw a {
		border-radius: 26.5px;
		font-size: 18px;
	}
	section#fiche-refuge h1 {
		font-size: 68px;
	}
	section#fiche-refuge .box .texte {
		padding: 50px;
	}
	section#fiche-refuge h2 {
		margin-bottom: 10px;
	}
	section#fiche-refuge .box .texte ul.infos {
		margin-bottom: 30px;
	}
	section#fiche-refuge .box .texte ul.infos svg {
		margin-right: 10px;
		width: 18px;
	}
	section#fiche-refuge .box .texte ul.infos span,
	section#fiche-refuge .box .texte ul.infos span a {
		font-size: 22px;
	}
	section#fiche-refuge .box h3 {
		margin-bottom: 10px;
	}
	section#fiche-refuge h2 {
		font-size: 54px;
	}
	section#fiche-refuge h2 span {
		font-size: 28px;
	}
	section#page {
		padding: 50px 0;
	}
	section#page h1 {
		font-size: 80px;
		margin-bottom: 60px;
		width: 70%;
	}
	section#page .box {
	    width: 65%;
	}
	section#page .box button {
		border-radius: 26.5px;
		font-size: 18px;
		padding: 12px 40px;
	}
	h1 {
		font-size: 85px;
	}
	section#accueil form{
		padding: 30px;
		border-radius: 24px;
	}
}
@media screen and (max-width: 1024px) {
	.wrapper {
		padding: 0 30px;
	}
	section#accueil .image,
	section#paiement .image {
		margin: 0;
		width: 100%;
	}
	section#accueil div.box-right{
		width: 100%;
	}
	section#accueil  h1,
	section#paiement h1 {
		white-space: initial;
		width: 100%;
	}
	section#accueil h1 br {
	}
	section#accueil .image .texte,
	section#paiement .image .texte {
		margin-top: 35px;
	}
	
	section#accueil .content>.buttons {
		display: none;
	}
	section#accueil .box,
	section#paiement .box {
		border-radius: 24px;
		margin-top: 50px;
		width: 100%;
	}
	section#accueil a.button,
	section#paiement a.button {
		margin-top: 25px;
	}
	section#paiement .box .rcp_user_fieldset p:nth-child(1),
	section#paiement .box .rcp_user_fieldset p:nth-child(2),
	section#paiement .box .rcp_user_fieldset p:nth-child(3)
	section#paiement .box .rcp_user_fieldset p:nth-child(4)
	section#paiement .box .rcp_user_fieldset p:nth-child(5)
	section#paiement .box .rcp_user_fieldset p:nth-child(6) {
		width: calc(50% - 20px);
	}
	section#questions .content .section-page {
		padding: 0 0 30px;
	}
	section#questions .content .section-page img {
		max-width: 100px;
	}
	section#questions .content .section-page h2 {
		font-size: 61px;
		margin: 20px 0 40px;
	}
	section#questions .box .radios label,
	section#questions .box .checkboxes label,
	section#questions .box .validation label {
		padding: 15px;
	}
	section#questions .box .radios label,
	section#questions .box .checkboxes label {
		width: calc(50% - 15px);
	}
	section#questions .box .radios label:nth-child(2n+1),
	section#questions .box .checkboxes label:nth-child(2n+1) {
		margin: 0 15px 30px 0;
	}
	section#questions .box .radios label:nth-child(2n+2),
	section#questions .box .checkboxes label:nth-child(2n+2) {
		margin: 0 0 30px 15px;
	}
	section#questions .box .radios label .radio-custom,
	section#questions .box .checkboxes label .checkbox-custom,
	section#questions .box .validation label .checkbox-custom {
		height: 20px;
		margin-right: 10px;
		width: 20px;
	}
	section#questions .box .checkboxes label .checkbox-custom svg,
	section#questions .box .validation label .checkbox-custom svg {
		width: 13px;
	}
	section#questions .box .radios label .radio-custom:after {
		height: 14px;
		width: 14px;
	}
	section#resultats .box.race-1 {
		align-items: center;
		-webkit-align-items: center;
	}
	section#resultats .box .title-mobile h2 {
		margin-bottom: 50px;
	}
	section#resultats .box .title-mobile h3 {
		margin-bottom: 0;
	}
	section#resultats .box .title-mobile {
		display: block;
		width: calc(60% - 30px);
	}
	section#resultats .box .title-desktop {
		display: none;
	}
	section#resultats .box.race-1 .texte,
	section#resultats #autres-resultats .texte {
		margin-top: 0px;
		width: 100%;
	}
	section#resultats .box.race-1 h2 {
		font-size: 45px;
	}
	section#resultats .box.race-1 .image-wrap {
		padding: 25px 25px 70px;
		width: calc(40% - 30px);
	}
	section#resultats #autres-resultats .image-wrap {
		padding: 20px 20px 40px;
	}
	section#resultats p.match {
		font-size: 16px;
		margin-bottom: 25px;
	}
	section#fiche-refuge .box .image,
	section#fiche-refuge .box .texte {
		width: 100%;
	}
	section#fiche-refuge .box .texte ul.infos span,
	section#fiche-refuge .box .texte ul.infos span a {
		font-size: 20px;
	}
	section#page h1 {
		font-size: 70px;
		width: 80%;
	}
	section#page .box p {
		font-size: 20px;
	}
}
@media screen and (max-width: 768px) {
	.wrapper {
		padding: 0 20px;
	}
	.dog-bubble .bubble {
		padding: 10px;
	}
	.dog-bubble .bubble p {
		font-size: 16px !important;
	}
	section#accueil,
	section#paiement,
	section#connexion,
	section#fiche-refuge {
		padding: 50px 0;
	}
	section#accueil .buttons a.button {
		border-radius: 24.5px;
		font-size: 16px;
		padding: 11px 30px;
	}
	section#accueil .buttons a.button:nth-child(1) {
		margin-right: 15px;
	}
	section#accueil img,
	section#paiement img {
		width: 90px;
	}
	section#accueil h1:before,
	section#paiement h1:before {
		width: 85px;
	}
	section#accueil .image .texte,
	section#paiement .image .texte {
		margin-top: 25px;
	}
	section#accueil .image .texte p,
	section#paiement .image .texte p {
		font-size: 22px;
	}
	section#accueil .box,
	section#paiement .box {
		margin-top: 35px;
	}
	section#accueil .box .texte,
	section#paiement .box .texte {
		padding: 25px 25px 50px;
	}
	section#accueil .box .texte p,
	section#paiement .box .texte p {
		font-size: 20px;
	}
	section#accueil .box .navigation {
		padding: 20px 25px;
	}
	section#accueil .box .navigation .count,
	section#accueil .box .navigation .count span {
		font-size: 20px;
	}
	section#accueil a.button,
	section#paiement a.button {
		font-size: 16px;
	}
	section#questions .wrapper {
		padding: 0;
	}
	section#questions .top-bar {
		padding: 0 20px;
	}
	section#questions .progress-bar .progress-1 {
		width: calc(100%);
	}
	section#questions .progress-bar .progress-2 {
		width: calc(17% - 5px);
	}
	section#questions .progress-bar .progress-3 {
		width: calc(53% - 2.5px);
	}
	section#questions .content {
		padding: 30px 0 0;
	}
	section#questions .content .section-page .content-wrap>div {
		padding: 30px 20px;
		width: 100%;
	}
	section#questions .content .section-page h2 {
		font-size: 46px;
	}
	section#questions .image {
		display: none;
	}
	section#questions .box {
		border-radius: 24px 24px 0 0;
		min-height: calc(100vh - 126px);
		padding: 30px 20px 80px;
		width: 100%;
	}
	section#questions .box h1 {
		font-size: 12px;
		margin-bottom: 15px;
	}
	section#questions .box h1 span {
		font-size: 12px;
	}
	section#questions .box h2 {
		font-size: 26px;
		margin-bottom: 25px;
	}
	section#questions .box .radios label,
	section#questions .box .checkboxes label,
	section#questions .box .validation label {
		padding: 15px;
		width: 100%;
	}
	section#questions .box .radios label:nth-child(2n+1),
	section#questions .box .checkboxes label:nth-child(2n+1),
	section#questions .box .validation label:nth-child(2n+1),
	section#questions .box .radios label:nth-child(2n+2),
	section#questions .box .checkboxes label:nth-child(2n+2),
	section#questions .box .validation label:nth-child(2n+2) {
		margin: 0 0 10px;
	}
	.dog-bubble .bubble {
		padding: 10px 15px;
	}
	section#questions .dog-bubble {
		margin-top: 30px;
	}
	section#questions .box .buttons {
		margin-top: 30px;
	}
	section#questions .box .buttons button.prev {
		border: 0;
		border-radius: 100%;
		padding: 0;
	}
	section#questions .box .buttons button.prev svg {
		display: block;
	}
	section#questions .box .buttons button.prev .text {
		display: none;
	}
	.dog-bubble img {
		width: 77px;
	}
	section#questions .dog-bubble .bubble {
		margin-left: 20px;
		width: calc(100% - 97px);
	}
	section#paiement .box .rcp_user_fieldset p:nth-child(1),
	section#paiement .box .rcp_user_fieldset p:nth-child(2),
	section#paiement .box .rcp_user_fieldset p:nth-child(3),
	section#paiement .box .rcp_user_fieldset p:nth-child(4),
	section#paiement .box .rcp_user_fieldset p:nth-child(5),
	section#paiement .box .rcp_user_fieldset p:nth-child(6) {
		width: 100%;
	}
	#rcp_registration_form fieldset.rcp_card_fieldset>div,
	#rcp_registration_form .rcp_avatax_fieldset>p {
		margin-bottom: 20px;
	}
	#rcp_registration_form input {
		padding: 10px 0;
	}
	section#resultats {
		padding: 50px 0;
	}
	section#resultats h1,
	section#resultats #autres-resultats h2 {
		font-size: 72px;
		margin-bottom: 40px;
		text-align: left;
	}
	section#resultats #autres-resultats h2 {
		font-size: 72px;
	}
	section#resultats .box.race-1,
	section#resultats #autres-resultats .box {
		padding: 40px 30px;
	}
	section#resultats .box .title-mobile {
		width: 100%;
	}
	section#resultats .box.race-1 .image-wrap,
	section#resultats #autres-resultats .box .image-wrap {
		margin: 0 auto 50px;
		padding: 25px 25px 65px;
		width: 75%;
	}
	section#resultats .box .texte {
		margin-top: 0 !important;
	}
	section#resultats p.match {
		font-size: 15px;
		margin-bottom: 20px;
	}
	section#resultats .box.race-1 h2,
	section#resultats .box .title-mobile h3 {
		font-size: 30px;
		margin-bottom: 30px;
	}
	section#resultats .box.race-1 .texte a.button {
		border-radius: 24px;
		font-size: 16px;
		padding: 11px 15px;
	}
	section#resultats .texte p.incompatibilite {
		font-size: 14px;
	}
	section#resultats .texte ul {
		font-size: 15px;
	}
	section#resultats .texte ul li {
		border-radius: 18px;
		padding: 5.75px 15px;
	}
	section#resultats .texte ul div.more {
		padding: 5.75px 7.8px;
	}
	section#resultats .box.race-1 .texte a.button {
		margin-top: 20px;
	}
	section#connexion .login-form {
		padding: 30px;
		width: 85%;
	}
	section#resultats .box {
		border-radius: 24px;
	}
	section#connexion .login-form p.lost-pw a {
		font-size: 16px;
	}
	section#fiche-refuge .box {
		border-radius: 24px;
	}
	section#fiche-refuge .box .texte ul.infos svg {
		margin-right: 15px;
		width: 16px;
	}
	section#fiche-refuge .box .texte ul.infos span,
	section#fiche-refuge .box .texte ul.infos span a {
		font-size: 16px;
	}
	section#fiche-refuge .box h3 {
		font-size: 10px;
	}
	section#fiche-refuge .box .texte {
		padding: 30px;
	}
	section#fiche-refuge .box .texte p {
		font-size: 14px;
	}
	section#fiche-refuge .box .buttons {
		justify-content: space-between;
		-webkit-justify-content: space-between;
		margin-top: 20px;
	}
	section#fiche-refuge .box .buttons>a,
	section#fiche-refuge .box .buttons>div {
		width: calc(50% - 5px);
	}
	section#fiche-refuge .box .buttons a {
		border-radius: 20px;
		font-size: 14px;
		margin-right: 0;
		margin-top: 10px;
		padding: 8.5px 15px;
	}
	section#fiche-refuge .box .buttons a svg {
		margin-left: 8px;
		width: 18px;
	}
	section#fiche-refuge .box .buttons a.addtoany_share:after {
		background-size: 18px;
		height: 18px;
		margin-left: 8px;
		width: 18px;
	}
	section#page h1 {
		font-size: 65px;
		margin-bottom: 40px;
		width: 90%;
	}
	section#page .box {
		padding: 30px;
	}
	section#page .box .somfrp-lost-pass-form-text {
		margin-bottom: 25px;
	}
	section#page .box p {
		font-size: 18px;
	}
	section#page .box {
	    width: 85%;
	}
	#lightbox .lightbox-wrap {
		padding: 30px;
	}
	#lightbox .lightbox-wrap article button,
	#lightbox .lightbox-wrap article a.button {
		width: 100%;
	}
	#lightbox .lightbox-wrap article a.button {
		margin-bottom: 20px;
	}
	h1 {
		font-size: 60px;
	}
	section#error-404 a.button {
		font-size: 18px !important;
		padding: 10px 25px;
	}
	section#accueil form{
		padding: 25px;
		margin-top: 30px;
	}
}
@media screen and (max-width: 600px) {
	section#accueil h1:before,
	section#paiement h1:before {
		display: none;
	}
	section#accueil img,
	section#paiement img {
		display: block;
		margin-bottom: 15px;
		position: initial;
		width: 85px;
	}
	section#accueil .box .texte p,
	section#paiement .box .texte p {
		font-size: 18px;
	}
	section#connexion .login-form {
		padding: 20px;
		width: 100%;
	}
	.dog-bubble .bubble p {
		font-size: 14px !important;
	}
	section#fiche-refuge .dog-bubble {
		margin: 0 auto 30px;
	}
	section#fiche-refuge h1 {
	    font-size: 36px;
	    margin-bottom: 30px;
	}
	section#fiche-refuge .box .texte {
		padding: 25px;
	}
	section#page h1 {
		font-size: 55px;
	}
	section#page h1,
	section#page .box {
	    width: 100%;
	}
	section#page .box {
		padding: 20px;
	}
}
@media screen and (max-width: 500px) {
	.wrapper {
		padding: 0 20px;
	}
	section#accueil,
	section#paiement,
	section#connexion,
	section#fiche-refuge {
		padding: 30px 0;
	}
	section#accueil .image .texte p,
	section#paiement .image .texte p {
		font-size: 20px;
	}
	section#page h1 {
		font-size: 45px;
	}
	form label {
		font-size: 14px !important;
		top: 0 !important;
	}
	section#questions .content .section-page img {
		max-width: 85px;
	}
	section#questions .content .section-page h2 {
		font-size: 36px;
		margin: 15px 0 30px;
	}
	section#resultats .box.race-1 {
		padding: 35px 25px;
	}
	section#resultats .box.race-1 .image-wrap,
	section#resultats #autres-resultats .box .image-wrap {
		margin-bottom: 40px;
		width: 90%;
	}
	.dog-bubble .bubble {
		margin-left: 25px;
	}
	section#fiche-refuge h2 {
		font-size: 32px;
	}
	section#fiche-refuge h2 span {
		font-size: 19px;
	}
	h1 {
		font-size: 45px;
	}
}
@media screen and (max-width: 400px) {
	section#accueil .box .texte p,
	section#paiement .box .texte p,
	section#page .box p {
		font-size: 16px;
	}
	section#connexion h1 {
		font-size: 55px;
	}
	section#resultats h1,
	section#resultats #autres-resultats h2 {
		font-size: 45px;
		padding: 0 20px;
	}
	section#resultats .box.race-1 .image-wrap,
	section#resultats #autres-resultats .box .image-wrap {
		width: 100%;
	}
	section#resultats p.match {
		font-size: 12px;
		margin-bottom: 15px;
	}
	section#resultats .texte p.incompatibilite {
		font-size: 12px;
	}
	.dog-bubble .bubble p {
		font-size: 13px !important;
	}
	section#page h1 {
		font-size: 35px;
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 350px) {
	section#fiche-refuge .box .buttons>a,
	section#fiche-refuge .box .buttons>div {
		width: 100%;
	}
}