/*
Theme Name: Falcon Heavy I
Author: Tuvedlacom
Description: Thème personnalisé
Version: 1.0
Text Domain: tuvedlacom
Domain Path: /languages
*/

/****************************
		GENERAL 
****************************/
html{ overflow-x: hidden; position: relative; scroll-behavior: smooth; }
html, body{ 
	-webkit-overflow-scrolling: touch;
}
body{ 
    height: 100%!important;
    padding-top: 80px;
    margin: 0;
}
a:hover { text-decoration: underline; }
* { font-family:'Myriad'; font-size:  medium; box-sizing: border-box; color:#403f3c;}
p { font-size: medium; margin: 0.2em 0; text-align: justify; line-height: 1.5; }
@media screen and (max-width: 720px){
	p{ line-height: 1.3; }
}
p > * { font-size: inherit; }
li { list-style-position: inside; text-align:justify;}
img { max-width: 100%; }
.center{ text-align: center; }
.white{ color:#fff; }
img.alignright { float: right; margin-left: 10px; }
img.alignleft { float: left; margin-right: 10px; }
.light { font-weight: 100; }
.bold { font-weight: bold; }
.black{ color:#000; }
.uppercase{ text-transform: uppercase; }
.js-link{ text-decoration: none; }
.hide-link, .hide-link:hover{text-decoration: none; cursor: inherit;}
.js-link:hover{ cursor: pointer; text-decoration: underline; }
.color1 { color: #34BDEF; }
.color2 { color: #b3afa7; }
.color3 { color: #34BDEF; }
.bggrey{ background: #e6e5e2; }
@media screen and (min-width: 720px){ 
    .container{ width: 75%; max-width: 65rem; margin:0 auto; display: block; }
    .row{ display: flex; flex-wrap: wrap; }
    .col-6{ width: 50%; }
}
@media screen and (min-width: 1201px){ .container.full { max-width: inherit; width: 100%; }  }
@media screen and (min-width: 1201px){ .container.extralarge { max-width: 80rem; width: 100%; }  }
@media screen and (min-width: 1201px){ .container.large { max-width: 80rem; }  }
@media screen and (max-width: 1200px){ .container {	width: 100%; max-width: none;}  }
a[href^="tel"] { color:inherit; text-decoration:none; }
p > span[class^=col] {
    margin: 0!important;
    float: inherit!important;
    min-height: inherit!important;
}

.h2 {
    font-size: x-large;
    margin: 0;
    font-weight: bold;
}
a.btn-cart {
    display: none;
}
/***************************
		Fonts
***************************/
@font-face {
    font-family: 'Cheddar';
    src: url('fonts/CheddarJack.eot');
    src: url('fonts/CheddarJack.eot?#iefix') format('embedded-opentype'),
        url('fonts/CheddarJack.woff2') format('woff2'),
        url('fonts/CheddarJack.woff') format('woff'),
        url('fonts/CheddarJack.ttf') format('truetype'),
        url('fonts/CheddarJack.svg#CheddarJack') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display:swap;
}

@font-face {
    font-family: 'Myriad';
    src: url('fonts/MyriadPro-Regular.eot');
    src: url('fonts/MyriadPro-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/MyriadPro-Regular.woff2') format('woff2'),
        url('fonts/MyriadPro-Regular.woff') format('woff'),
        url('fonts/MyriadPro-Regular.ttf') format('truetype'),
        url('fonts/MyriadPro-Regular.svg#MyriadPro-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display:swap;
}

@font-face {
    font-family: 'Myriad';
    src: url('fonts/MyriadPro-Bold.eot');
    src: url('fonts/MyriadPro-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/MyriadPro-Bold.woff2') format('woff2'),
        url('fonts/MyriadPro-Bold.woff') format('woff'),
        url('fonts/MyriadPro-Bold.ttf') format('truetype'),
        url('fonts/MyriadPro-Bold.svg#MyriadPro-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display:swap;
}

@font-face {
  font-family: "ursula";
  src: url('fonts/ursula-handschrift-beta-02-webfont.eot');
    src: url('fonts/ursula-handschrift-beta-02-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/ursula-handschrift-beta-02-webfont.woff2') format('woff2'),
         url('fonts/ursula-handschrift-beta-02-webfont.woff') format('woff'),
         url('fonts/ursula-handschrift-beta-02-webfont.ttf') format('truetype'),
         url('fonts/ursula-handschrift-beta-02-webfont.svg') format('svg');
  font-weight: normal;
  font-style: normal;
    font-display:swap;
}

/******************************
        SCROLLBAR
******************************/
html::-webkit-scrollbar {
    width: 10px;
    background-color: #F5F5F5;
} 
html::-webkit-scrollbar-thumb {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
    background-color: #34BDEF;
}
html::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
    background-color: #F5F5F5;
}


/******************************
		BACK TO TOP
******************************/

#top{ 
	position: absolute; 
	top: 0;
	left: 0;
}

a#back-to-top::before {
    content: "";
    display: block;
    width: 22px;
    height: 17px;
    background: url(/wp-content/themes/falconheavy/images/ux.png) no-repeat;
    background-size: 130px;
    background-position: -87px 0;
    transform: rotate(180deg) scale(0.8);
    transition: 0.2s ease-in-out;
}

a#back-to-top {
    position: fixed;
    bottom: 1rem;
    background: rgba(52, 189, 239, .7);
    border: 1px solid #fff;
    border-right: 0;
    right: 0;
    border-radius: 15px 0 0 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    text-align: center;
    line-height: 3rem;
    padding-top: 5px;
    font-weight: bold;
    cursor: pointer;
    z-index: 999999999;
    transition: 0.2s ease-out;
}

a#back-to-top:hover {
    background: rgba(86, 191, 201, 1);
}

@media screen and (min-width: 800px){
	#back-to-top{ transform: translateX(100%); }
	body.sticky #back-to-top{ transform: translateX(0%); }
}

@media screen and (max-width: 720px){
    a#back-to-top{ bottom: 50px; }
}


/********************************
	Horizontal scroll mobile
********************************/

.scroll-x-title{ display: none; }
@media screen and (max-width: 720px){
	.scroll-x-mobile {
		position: relative;
		height: auto;
	    overflow-x: scroll;
	    white-space: nowrap;
	    overflow-y: hidden;
        -ms-overflow-style: none;
        margin:0;
        line-height: 0;
	}

    .scroll-x-mobile [class^=col] {
        width: 250px!important;
        display: inline-block;
        float: none!important;
        margin-bottom: 0!important;
    }
	.scroll-x-title {
        display: block;
        margin: 0 2%;
        font-size: x-small;
        font-weight: bold;
        text-transform: uppercase;
        text-align: left;
        white-space: nowrap;
        position: relative;
	    display: table;
	    padding-right: .5rem;
	    margin-top: 1rem;
    }

    .scroll-x-title i{ display: none; }
    .scroll-x-title::after{
    	content: "";
    	display: block;
    	width: 8px;
    	height: 8px;
    	border-top: 1px solid;
    	border-right: 1px solid;
    	position: absolute;
    	top: 50%;
    	left: 100%;
    	transform: translateY(-50%) rotate(45deg);
        -webkit-animation: bounce 2s infinite ease-in-out;
        -moz-animation: bounce 2s infinite ease-in-out;
        -ms-animation: bounce 2s infinite ease-in-out;
        -o-animation: bounce 2s infinite ease-in-out;
        animation: bounce 2s infinite ease-in-out;
    }
}

@-webkit-keyframes bounce {
    0%, 20%, 60%, 100%  {  
        transform: translateX(0) translateY(-50%) rotate(45deg); 
    }
    40%  { 
        transform: translateX(-10px) translateY(-50%) rotate(45deg); 
    }
    80% { 
        transform: translateX(-5px) translateY(-50%) rotate(45deg); 
    }
}
@keyframes bounce {
    0%, 20%, 60%, 100%  {  
        transform: translateX(0) translateY(-50%) rotate(45deg); 
    }
    40%  { 
        transform: translateX(-10px) translateY(-50%) rotate(45deg); 
    }
    80% { 
        transform: translateX(-5px) translateY(-50%) rotate(45deg); 
    }
}

/*********************
		Header
*********************/


.customize-support:not(.hide-adminbar) #header { top: 32px!important; }
.customize-support.hide-adminbar{ margin-top: -32px; }
.customize-support.hide-adminbar #wpadminbar{ display: none!important; }
.customize-support.hide-adminbar #header { top: 0; }

#header {
    display: flex;
    justify-content: space-between;
    padding: 0 1rem;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background: #fff;
    z-index: 99999;
    align-items: center;
}

/* Logo */

#header-logo img { max-width: 215px; margin-top: 4rem;}

/* Menu Desktop */

@media screen and (min-width: 800px){

    #nav-container {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    #nav-container .menu {
        list-style: none;
        display: flex;
        margin: 0;
        padding: 0;
        justify-content: space-around;
    }

    #nav-container .menu > li{ 
        position: relative; 
    }

    #nav-container .menu > li > a::before{ 
        content: "";
        position: absolute;
        top: -5%;
        left: 0;
        width: 100%;
        height: 110%;
        background: #34BDEF;
        z-index: -1;
        transform: scale(0.5);
        opacity: 0;
        border-radius: 0%;
        transition: 0.2s ease-out;
    }

    #nav-container .menu > li.current_page_item > a,
    #nav-container .menu > li:hover > a { 
        color:#fff; 
    }

    #nav-container .menu > li.current_page_item > a::before,
    #nav-container .menu > li:hover > a::before {
        opacity: 1;
        transform: scale(1);
        border-radius: 0px;
    }

    #nav-container .menu > li > a {
        text-transform: uppercase;
        font-weight: bold;
        text-decoration: none;
        color: #b3afa7;
        letter-spacing: 1px;
        line-height: 1;
        height: 80px;
        display: block;
        position: relative;
        overflow: hidden;
        z-index: 1;
        padding: 0 1em;
        display: flex;
        align-items: center;
        text-align: center;
        transition: 0.2s ease-in-out;
    }

    #nav-container .menu > li > .sub-menu {
	    position: absolute;
	    top: 100%;
	    padding: 0;
	    list-style: none;
	    width: 190px;
	    left: 50%;
	    transform: translateX(-50%);
	    display: none;
	}

	#nav-container .menu > li > .sub-menu a {
	    background: rgba(179, 175, 167, .7);
	    text-decoration: none;
	    display: block;
	    position: relative;
	    padding: .75em .5em;
	    color: #fff;
	    text-transform: uppercase;
	    font-size: .9em;
	    border-bottom: .5px solid;
	    transition: 0.2s ease-in-out;
	}

	#nav-container .menu > li > .sub-menu li:last-of-type a {
	    border-bottom: none;
	}

	#nav-container .menu > li.menu-item-has-children::after {
	    content: "";
	    position: absolute;
	    bottom: 10px;
	    left: 50%;
	    transform: translate(-50%, 50%) rotate(45deg);
	    width: 10px;
	    height: 10px;
	    background: #34BDEF;
	    z-index: 1;
	    opacity: 0;
	    transition: 0s;
	}

	#nav-container .menu > li.menu-item-has-children:hover::after{
		bottom: 0;
		opacity: 1;
		transition: 0.2s ease-in-out .2s;
	}

	#nav-container .menu > li > .sub-menu a:hover {
	    background: #34BDEF;
	}

	#nav-container .menu > li > .sub-menu a::after {
	    content: "+";
	    font-family: cheddar;
	    font-size: xx-large;
	    font-weight: bold;
	    position: absolute;
	    top: 50%;
	    right: .25em;
	    transform: translateY(-50%);
	    transition: 0.2s ease-in-out;
	}

	#nav-container .menu > li > .sub-menu a:hover::after {
	    transform: translateY(-50%) rotate(360deg);
	}

	#nav-container .menu > li:hover > .sub-menu {
	    display: block;
	}

}


@media screen and (max-width: 1650px) and (min-width: 800px){
    #nav-container .menu > li > a {
        font-size: .9em;
        letter-spacing: 0;
    }
}

@media screen and (max-width: 1350px) and (min-width: 800px){

    body { padding-top: 60px; }

    #header { height: 60px; }

    #header-logo img { max-width: 200px; }

    #nav-container .menu > li > a {
        height: 60px;
        padding: 0 .75rem;
        font-weight: 300;
    }

    #nav-container .menu > li.current_page_item > a, #nav-container .menu > li:hover > a {
        background: #34BDEF;
        border-radius: 20px;
    }

    #nav-container .menu > li > a::before { content: none; }

}

@media screen and (max-width: 1150px) and (min-width: 800px){
    #header-logo {
        position: absolute;
        top: 100%;
        background: #fff;
        left: 50%;
        border-radius: 0 0 40px 40px;
        transform: translateX(-50%);
        width: 220px;
        text-align: center;
    }

    #header-logo img { max-width: 75%; }

    #nav-container {
        width: 100%;
        justify-content: center;
    }

    #nav-container .menu { display: block; }

    #nav-container .menu > li { float: left; }

    #nav-container .menu > li > a { font-weight: bold; }
}

@media screen and (max-width: 992px) and (min-width: 800px){
    #nav-container .menu > li > a {
        font-size: .8em;
        padding: 0 .5rem;
        font-weight: 300;
    }
}

/* contact top */

#contact-top {
    display: flex;
    justify-content: center;
}

/* Mail top */

#mail-top {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    transition: 0.2s ease-in-out;
    margin-right: 10px;
}

#mail-top::before {
    content: "";
    display: block;
    width: 22px;
    height: 16px;
    background: url(/wp-content/themes/falconheavy/images/ux.png) no-repeat;
    background-size: 130px;
    background-position: -44px -25px;
    transition: 0.2s ease-in-out;
}

#mail-top:hover::before { background-position: -22px -25px; }

#mail-top:hover{background: #34BDEF;}

/* Flags */

.falconheavy-switcher{
    max-height: 24px;
    width: 40px;
    overflow: hidden;
    padding: 0;
    top: 25px;
    z-index: 4;
    position: relative;
}

.falconheavy-switcher ul {
    padding: 0;
    margin: 0;
}

.falconheavy-switcher-item { display: block!important; }


.falconheavy-flag {
    width: auto;
    height: auto;
}

.falconheavy-switcher:hover { max-height:  inherit; }

.falconheavy-switcher-item:not(:first-of-type) img:hover{
    -webkit-transform: scale(0.9) rotate(5deg);
    -moz-transform: scale(0.9) rotate(5deg);
    -ms-transform: scale(0.9) rotate(5deg);
    -o-transform: scale(0.9) rotate(5deg);
        transform: scale(0.9) rotate(5deg);
    cursor: pointer;
}

.wpml-ls-current-language a:hover{ cursor:default!important; }

@media screen and (max-width: 1450px) and (min-width: 800px){
    #contact-top {
        position: absolute;
        top: 100%;
        background: rgba(255,255,255,0.8);
        right: 0;
        border-radius: 0 0 0 15px;
        border: 1px solid #34BDEF;
        border-top: 0;
        border-right: 0;
    }

    .falconheavy-switcher{ top: 12px; }

    #mail-top {
        height: 50px;
        width: 50px;
    }
}

@media screen and (max-width: 800px){
    .falconheavy-switcher{ top: 12px; }
}

/* Responsive nav */
input#burger, .book-resp, .tel-resp{
    display: none;
}

@media screen and (min-width: 800px){
    #header label { display: none; }
}

@media screen and (max-width: 800px){
    body{ padding-top: 50px; }

    #header{
        top: 0;
        left:  0;
        width: 100%;
        z-index: 9999;
        display: block!important;
        height: 50px;
        padding:0 .25rem;
        box-shadow: 1px 1px 5px rgba(0,0,0,.5);
    }

    #header-logo {
        position: absolute;
        top: 50%;
        z-index: 99;
        transform: translateY(-50%);
    }

    #header-logo img {
        width: 150px;
    }

    #contact-top {
	    position: absolute;
	    z-index: 99;
	    left: 200px;
	}

	#header input:checked ~ #nav-container #contact-top { left: 216px; }

	#mail-top {
	    width: 20px;
	    height: 50px;
	    margin-right: 1.5rem;
    	margin-left: .75rem;
	}

    #nav-container::before {
	    content: "";
	    position: fixed;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 50px;
	    background: #fff;
	    z-index: 2;
	}

    #header input + label{
        position: fixed;
        top: 15px;
        right: 15px;
        height: 20px;
        width: 2rem;
        z-index: 5;
    }

    #header input + label span{
        position: absolute;
        width: 100%;
        height: 3px;
        top: 50%;
        margin-top: -1px;
        left: 0;
        display: block;
        background: #34BDEF;
        transition: .5s;
    }

    #header input + label span:first-child{
        top: 3px;
    }

    #header input + label span:last-child{
        top: 17px;
    }

    #header label:hover{
        cursor: pointer;
    }

    #header input:checked + label span{
        opacity: 0;
        top: 50%;
    }

    #header input:checked + label span:first-child{
        opacity: 1;
        -webkit-transform: rotate(405deg);
        -moz-transform: rotate(405deg);
        -ms-transform: rotate(405deg);
        -o-transform: rotate(405deg);
        transform: rotate(405deg);
    }

    #header input:checked + label span:last-child{
        opacity: 1;
        -webkit-transform: rotate(-405deg);
        -moz-transform: rotate(-405deg);
        -ms-transform: rotate(-405deg);
        -o-transform: rotate(-405deg);
        transform: rotate(-405deg);
    }

    #header input ~ #nav-container{
        top: 0;
        left: 0;
        width: 100%;
        position: relative;
        height: 50px;
        z-index: 3;
        transition: .2s;
        transition-delay: .2s;
        background: rgba(0, 128, 180, .9);
    }

    #header input ~ #nav-container > ul{
        max-width: 22rem;
        text-align: left;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%,-50%);
        -moz-transform: translate(-50%,-50%);
        -ms-transform: translate(-50%,-50%);
        -o-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%);
        margin: 0;
        list-style: none;
        padding: 0;
        width: 90%;
        height:0;
        overflow:hidden;
    }

    #header input ~ #nav-container > ul > li{
        opacity: 0;
        transition-delay: 0s;
        padding: 10px 0 !important;
        margin:10px 0!important;
        width: 100%;
        border-bottom: 1px solid rgba(255,255,255,0.6);
        cursor: pointer !important;
        display: block;
        position: relative;
    }

    .menu-item-has-children:after {
	    content: "";
	    display: block;
	    width: 22px;
	    height: 17px;
	    background: url(/wp-content/themes/falconheavy/images/ux.png) no-repeat;
	    background-size: 130px;
	    background-position: -87px 0;
	    transform: translateY(-50%) scale(0.5);
	    position: absolute;
	    top: 40%;
	    right: 0;
	    transition: 0.2s ease-in-out;
	}

     .menu-item-has-children:hover::after {
     	top: 0;
        -webkit-transform: translateY(0%) scale(0.5) rotate(180deg);
        -moz-transform: translateY(0%) scale(0.5) rotate(180deg);
        -ms-transform: translateY(0%) scale(0.5) rotate(180deg);
        -o-transform: translateY(0%) scale(0.5) rotate(180deg);
            transform: translateY(0%) scale(0.5) rotate(180deg);
    }

    #header input ~ #nav-container > ul > li > a{
        padding: 0!important;
    }
    #header input ~ #nav-container > ul ul{
        position: relative;
        width: 100%;
        padding-top: 0;
        height:  0;
        opacity: 0;
        overflow: hidden;
        transition:all .2s ease-in-out .2s;
    }
    #header input ~ #nav-container > ul ul > li > a{
        text-transform: uppercase;
        margin: 0 !important;
        color:#fff;
        display: block;
        position: relative;
        line-height: 2!important;
    }
    #header input ~ #nav-container > ul ul > li {
        margin: 5px 0 !important;
        display: block;
        position: relative;
    }

    #header a, #header a *{
        text-decoration: none;
        line-height: 1!important;
    }
    #header input ~ #nav-container > ul > li > a{
        text-transform: uppercase;
        display: block;
        font-size: large;
        font-weight: bold;
        color: #fff!important;
        letter-spacing: 0.1rem;
        border-right: 0!important;
        border-bottom: 0 !important;
    }

    #header input:checked ~ #nav-container{
        height: 100%;
        transition-delay: 0s;
        position: fixed;
    }

    #header input:checked ~ #nav-container > ul{
        height: auto;
        overflow: initial;
    }

    #header input:checked ~ #nav-container > ul > li{
        opacity: 1;
        transition-delay: .2s;
        position: relative;
    }
    
    #header .sub-menu li{ 
        display: block;
        float: none; 
    }
    #header .sub-menu li a{
        width: auto;
        min-width: 100px;
        padding: 0 20px;
    }
    #header .menu-item-has-children:hover .sub-menu {
        height: 100%!important;
        padding-top: 10px!important;
        overflow: visible!important;
        opacity: 1!important;
    }
}

@media screen and (max-width: 500px){
	#header input ~ #nav-container > ul > li { margin: .25rem!important; }
	#header input ~ #nav-container > ul > li > a { font-size: small; }
	#contact-top { left: 155px; }
	#header input:checked ~ #nav-container #contact-top { left: 171px; }
}

/* header img */

#header-banner { 
	position: relative; 
	overflow: hidden;
    display: block;
    line-height: 0;
    width: 100%;
}

@media screen and (max-width: 720px){
    #header-banner {
        height: 240px;
    }
    body:not(.home) #header-img {
        height: 240px;
    }
}

.no-object-fit .home #header-banner{ max-height: calc(100vh - 80px); }

.no-object-fit body:not(.home) #header-banner { max-height: 400px!important; }


#header-banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.13);
    z-index: 1;
}


#header-img {
    display:  block;
    width: 100%;
    position:  relative;
    z-index: -1;
    height: calc(100vh - 80px);
    max-height: 800px;
    overflow: hidden;
}

#header-img img {
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

body:not(.home) #header-img{ height: 350px; }

.no-object-fit #header-banner #header-img { 
    height: auto; 
    width: auto;
    min-width: 100%;
    min-height: 100%;
}

@media screen and (max-width: 720px){
    .no-object-fit #header-banner{ height: 300px; }
    #header-img {
        position: absolute;
        top: 50%;
        left:  50%;
        width:  100%;
        height: 100%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    html.no-object-fit #header-img{
        width: auto;
        height: auto;
        min-width: 100%;
        max-width: none;
        min-height: 100%;
    }
}

/* Slogan home */

.slogan-header {
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
    top: 50%;
    line-height: 1;
    color: #fff;
    z-index: 2;
    display: table;
    border: 0;
    text-align: center;
    padding: 0 2rem;
    width: 96%;
    text-transform: uppercase;
    font-size: 3em;
}

.slogan-header span {
    font-family: cheddar;
    text-transform: none;
    font-size: 2em;
    line-height: .5em;
    color: #e6e5e2;
}

@media screen and (max-width:992px){ 
	.slogan-header, .slogan-header * {
		font-size: xx-large;
	} 
}

@media screen and (max-width:720px){ .slogan-header { display: none; } }


/* Progressive images */
a.progressive {
  position: relative;
  display: block;
  overflow: hidden;
  outline: none;
}

a.progressive:not(.replace) {
  cursor: default;
}

a.progressive img {
  display: block;
  width: 100%;
  max-width: none;
  height: auto;
  border: 0 none;
}

a.progressive img.preview {
  filter: blur(2vw);
  transform: scale(1.05);
}

a.progressive img.reveal {
  position: absolute;
  left: 0;
  top: 0;
  will-change: transform, opacity;
  animation: reveal 1s ease-out;
}

@keyframes reveal {
    0% { transform: scale(1.05); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

/**************************
        Bloc Promo
**************************/

/* Promo thème option */
#bloc-promo {
    position:  absolute;
    top: 2rem;
    right: 0;
    z-index:  4;
    width: 250px;
    overflow: hidden;
}

#promo-wrap{  
    white-space: nowrap;
    overflow: hidden;
    padding: 0;
    margin:0;
    list-style: none;
}

.promo {
    display:  inline-block;
    width: 250px;
    white-space: normal;
    vertical-align: top;
}

#titre-bloc-promo {
    padding: .15rem 1rem;
    color:  #fff;
    text-transform:  uppercase;
    font-weight:  bold;
    font-size: small;
}

#titre-bloc-promo i {
    color: #fff;
    font-size: large;
    position: absolute;
    padding-left: 10px;
}

.promo .titre {
    color: #fff;
    text-transform: uppercase;
    font-size: large;
    font-weight: bold;
    padding: .25rem 1rem 0;
}

.promo .content {
    color:  #fff;
    font-size: small;
    padding:  0 1rem 1rem;
}

#nav-promo {
    position:  absolute;
    top: -5px;
    right: 1rem;
}

#nav-promo span {
    color:  #fff;
    font-weight:  bold;
    font-size: x-large;
    margin: 0 2px;
    display:  inline-block;
    vertical-align:  middle;
    cursor: pointer;
}

@media screen and (max-width: 1000px){
    #bloc-promo {
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg);
        transform-origin: top right;
        right: 25px;
        width: 200px;
        transition:  0.2s ease-in-out;
        top: .5rem;
    }

    #promo-wrap li{ width: 200px; }

    #titre-bloc-promo::before {
        content: "<";
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        transform: rotate(90deg);
        display:  inline-block;
        vertical-align:  middle;
        margin-right:  10px;
    }

    #nav-promo { opacity:  0; }

    #bloc-promo:hover {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        right:  0;
    }

    #bloc-promo:hover #nav-promo { opacity:  1; }

    #bloc-promo:hover #titre-bloc-promo::before {
        opacity: 0;
        margin-right: 0;
    }
    #bloc-promo:hover #titre-bloc-promo i{
        left: 0;
        padding-left: 5px;
    }
}

@media screen and (max-width: 720px){
	.promo .titre { font-size: smaller; }
	.promo img {
	    height: 50px;
	    object-fit: cover;
	    object-position: center center;
	    width: 100%;
	}
}


/*************************
    Open Dates
**************************/
@media screen and (min-width: 721px){
    #open-dates {
        position: absolute;
        bottom: 65px;
        right: 0;
        z-index: 4;
        padding: .5rem 1rem;
        text-align: center;
        border-radius: 20px 0 0 0;
        overflow: hidden;
        color: #fff;
    }

    #open-dates::before {
	    content: "\62";
	    font-family: "falconheavy" !important;
	    position: absolute;
	    z-index: 1;
	    line-height: 375px;
	    color: #fff;
	    opacity: 0.2;
	    display: block;
	    font-size: 60px;
	    height: 60px;
	    top: 50%;
	    left: 50%;
	    -webkit-transform: translate(-50%,-50%) rotate(15deg);
	    -moz-transform: translate(-50%,-50%) rotate(15deg);
	    -ms-transform: translate(-50%,-50%) rotate(15deg);
	    -o-transform: translate(-50%,-50%) rotate(15deg);
	    transform: translate(-50%,-50%) rotate(15deg);
	}

	#open-dates span{ 
		font-size:large; 
		margin: 0 5px;
		font-weight:bold;
		color: #fff;
	}
}

@media screen and (max-width: 720px){
    #open-dates {
        color: #fff;
        text-align: center;
        font-size: x-small;
        z-index: 2;
        position: absolute;
        line-height: 1!important;
        display: block;
        bottom: 0;
        padding: .5rem .25rem;
        width: 100%;
        text-transform: uppercase;
    }

    #open-dates span {
        color: #fff;
        margin-left: 3px;
        display:  inline-block;
        line-height: 1;
        font-size: small;
        font-weight: bold;
    }
}
/************************
		Bloc resa
************************/

@media screen and (min-width: 720px){

	#bloc-resa {
	    position: absolute;
	    left: 50%;
	    bottom: 1rem;
	    transform: translateX(-50%);
	    z-index: 2;
	    background: #fff;
	    border-radius: 50px;
	    width: 75%;
	    max-width: 65rem;
	    padding: 1.5rem 2rem;
	}

	#bloc-resa form {
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}

	#titre-resa-mobile {
	    display: none;
	}

	#bloc-resa form > div {
	    position: relative;
	    height: 35px;
	    width: 25%;
	    margin: 0 .5rem;
	    z-index: 1;
	    border: 1px solid #b3afa7!important;
	    border-radius: 50px;
	}

	#bloc-resa input, #bloc-resa select {
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: calc(100% + 30px);
	    height: 100%;
	    border: none;
	    padding: 0 1rem;
	    color: #b3afa7;
	    clip-path: inset(0 30px 0 0);
	    outline: none;
	    background: transparent;
	}

	#bloc-resa #submit-resa input {
	    color: #fff;
	    padding-right: calc(30px + 1rem);
	    text-transform: uppercase;
	    font-weight: bold;
	    transition: 0.2s ease-in-out;
	}

	#bloc-resa input, #bloc-resa select{
	    cursor: pointer;
	    -webkit-appearance: none;
	    -moz-appearance: none;
	    appearance: none;
	}

	#bloc-resa input::-webkit-inner-spin-button, /* Removes arrows */
	.input-date input::-webkit-clear-button { /* Removes blue cross */
	    -webkit-appearance: none;
	    -moz-appearance: none;
	    margin: 0;
	    display: none;
	}

	#bloc-resa input[type=date]::-webkit-calendar-picker-indicator {
	    background: transparent!important;
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    color:transparent;
	}

	#bloc-resa select::-ms-expand { display: none; }

	#bloc-resa .input-date::after, #bloc-resa #select-type::after, #bloc-resa #submit-resa::after, #tel-resa::after {
	    content: "";
	    display: block;
	    width: 18px;
	    height: 18px;
	    background: url(/wp-content/themes/falconheavy/images/ux.png) no-repeat;
	    background-size: 110px;
	    background-position: -55px 0;
	    transition: 0.2s ease-in-out;
	    position: absolute;
	    right: 1rem;
	    top: 50%;
	    transform: translateY(-50%);
	    z-index: -1;
	}

	#bloc-resa #select-type::after {
	    background-position: 0px -13px;
	    background-size: 70px;
	    width: 12px;
	    height: 8px;
	}


	#bloc-resa #submit-resa:hover input {
	    text-indent:-50px;
	    background:transparent;
	}

	#bloc-resa #submit-resa::after {
	    transform: translate(50%, -50%);
	    background-position: -37px -37px;
	    transition: 0.2s ease-in-out;
	    right: 50%;
	    opacity: 0;
	    height: 18px;
	}

	#bloc-resa #submit-resa:hover::after {
	    right: 28%;
	    opacity: 1;
	}

	#bloc-resa #submit-resa {
	    border-color:#34BDEF!important;
	    background: #34BDEF;
	    border-radius: 50px;
	}

	#tel-resa {
	    background: #b3afa7;
	    color: #fff;
	    font-size: 1.5em;
	    font-weight: bold;
	    padding: 1.25rem 2rem;
	    border-radius: 40px;
	    position: absolute;
	    top: 0;
	    left: 50%;
	    transform: translate(-50%, -75%);
	    transition: 0.2s ease-in-out;
	    width: 285px;
	    text-align: center;
	}


	#tel-resa::after {
	    background-position: -55px -55px;
	    right: 2rem;
	    opacity: 0;
	}

	#tel-resa:hover::after {
	    opacity: 1;
	    transform: translate(0%, -50%);
	    right: 1rem;
	}

	#tel-resa:hover {
	    text-indent: -20px;
	    background: #34BDEF; 
	}
}

@media screen and (max-width: 992px) and (min-width: 720px){
	#bloc-resa {
	    width: 95%;
	    padding: 1rem .5rem;
	}

	#tel-resa {
	    font-size: 1.2em;
	    padding: 1rem;
	    width: 220px;
	}
}

/* Sticky */
@media screen and (min-width: 720px){
.sticky #bloc-resa {
    position: fixed;
    right: -242px;
    top: 50%;
    z-index: 99999;
    bottom: inherit!important;
    left: inherit;
    padding: 1rem;
    width: 300px!important;
    background: #fff;
    transform: rotate(-90deg) translateX(50%);
    transition: 0.2s ease-in-out;
    border-radius: 0;
}

.sticky #bloc-resa .input-date, 
    .sticky #bloc-resa #select-type, 
    .sticky #bloc-resa #submit-resa, 
    .sticky #bloc-resa .btn-cart {
        width: 100%!important;
        max-width: none!important;
        flex-basis: inherit!important;
        flex-grow: inherit!important;
        margin: 0 auto .25rem;
    }

    .sticky #bloc-resa form {max-width: none;display: block;}

    .sticky #titre-resa-mobile {
        display: block;
        position: absolute;
        bottom: 100%;
        color: #fff;
        font-size: large;
        width: 100%;
        line-height: 1;
        background: #34BDEF;
        padding: 1rem;
        text-transform: uppercase;
        left: 0;
        border-radius: 15px 15px 0 0;
    }

    .sticky #bloc-resa:not(.clicked) #titre-resa-mobile{ cursor: pointer; }

    .sticky #bloc-resa.clicked {
        transform: rotate(0deg) translateY(-50%);
        right: 0;
        border-radius: 0 0 0 15px;
    }

    .sticky #bloc-resa:not(.clicked) #titre-resa-mobile::after {
        content: "\72";
        font-family: falconheavy;
        font-size: x-large;
        position: absolute;
        right: 1rem;
        top: 50%;
        transform: translateY(-50%);
        height: 100%;
        overflow: hidden;
        line-height: 175px;
    }
    body.sticky #bloc-resa #tel-resa {
        display:none;
    }

    .sticky #bloc-resa #submit-resa {
        margin-bottom: 0;
    }

    .sticky #bloc-resa.clicked #titre-resa-mobile {
        border-radius: 15px 0 0 0;
    }
}

/* resa mobile */

@media screen and (max-width: 720px){

	#header-banner::before { background: rgba(0,0,0,0.2); }

	#tel-resa {
        z-index: 99;
        background: #b3afa7;
        color: #fff;
        padding: .25rem 1rem;
        border-radius: 0 10px 0 0;
        position: absolute;
        left: 0;
        bottom: 100%;
        margin-bottom: 40px;
	}

	#bloc-resa {
        position: fixed;
        display: table;
        line-height: 1;
        width: 100%;
        border-radius: 0;
        z-index: 999999999999;
        bottom: 0;
        transform: translateY(100%);
        transition: 0.2s ease-in-out;
	}

    #titre-resa-mobile {
        position: absolute;
        bottom: 100%;
        background: #34BDEF;
    }

    #bloc-resa.clicked { transform: translateX(0%); }

	#bloc-resa form {
	    display: flex;
	    flex-wrap: wrap;
	    background: #fff;
	    padding: 1rem;
	    border-radius: 0;
	}

	#bloc-resa form > div {
	    width: calc(50% - .5rem);
	    position: relative;
	    height: 35px;
	    margin: .25rem;
	    z-index: 1;
	}

	#titre-resa-mobile {
	    display: block;
	    width: 100%;
	    font-family: cheddar;
	    color: #fff;
	    font-size: 2.5em;
	    text-align: center;
	}

	#bloc-resa input, #bloc-resa select {
	    background: transparent;
	    position: absolute;
	    width: 100%;
	    height: 100%;
	    border: 1px solid;
	    color: #b3afa7;
	    padding: 0 .5rem;
	    border-radius: 10px;
	}

	#bloc-resa .input-date::after, #bloc-resa #select-type::after{
	    content: "";
	    display: block;
	    width: 18px;
	    height: 18px;
	    background: url(/wp-content/themes/falconheavy/images/ux.png) no-repeat;
	    background-size: 110px;
	    background-position: -55px 0;
	    transition: 0.2s ease-in-out;
	    position: absolute;
	    right: .5rem;
	    top: 50%;
	    transform: translateY(-50%);
	    z-index: -1;
	}

	#bloc-resa #select-type::after {
	    background-position: 0px -13px;
	    background-size: 70px;
	    width: 12px;
	    height: 8px;
	}

	#submit-resa input {
	    background: #34BDEF;
	    color: #fff;
	    border-color: #34BDEF;
	    text-transform: uppercase;
	}

	#bloc-resa input, #bloc-resa select {
	    cursor: pointer;
	    -webkit-appearance: none;
	    -moz-appearance: none;
	    appearance: none;
	}
}

@media screen and (max-width: 350px){
	#bloc-resa form { padding: .5rem; }
}

/*************************
	YOAST
*************************/


.yoast_bread {
    padding: .5rem .5rem 0;
    text-align: right;
    text-transform: uppercase;
    font-size: small;
    height: 0;
    z-index: 2;
    position: relative;
}

.yoast_bread .breadcrumb_last {
    font-family: cheddar;
    text-transform: none;
    text-decoration: none;
    font-size: 1.8em;
}

.yoast_bread a {color: #34BDEF;text-decoration: none;}

@media screen and (max-width: 720px){
	.yoast_bread * {
	    font-size: small;
	}

	.yoast_bread {
	    height: auto;
	    background: #e6e5e2;
	    padding: .25rem 1rem;
	}
}


/*************************
	Sections
*************************/

/* Global */

section{ padding: 3rem 0; }
section:first-of-type{
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.no_padding_top{ padding-top:0!important; }
.no_padding_bottom{ padding-bottom:0!important; }

@media screen and (max-width: 720px){
	section { padding: 1.5rem 0; }
}

/* Titre section */

.section-title {
    text-transform: uppercase;
    color: #34BDEF;
    font-weight: bold;
    font-size: 1.8em;
    letter-spacing: 2px;
}


.section-title.white{ color:#fff; }

h1, h2, h3{ font-size: x-large; margin: 0; font-family: ursula; }

h1.section-title {
    color: #34BDEF;
    font-weight: bold;
    font-size: 1.8em;
    display: table;
    margin: 0 auto 1rem;
    background: #fff;
    position: relative;
    padding: 0 1em;
    letter-spacing: 1px;
}

h1.section-title::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 1px;
    background: #34BDEF;
    width: 100vw;
    z-index: -1;
}

.bggrey h1.section-title {
    background: #e6e5e2;
}

.section-title span,
.inline-title span {
    display: block;
    font-family: ursula;
    text-transform: none;
    font-size: 1.5em;
    font-weight: normal;
    line-height: 0.3;
    color: #b3afa7;
    margin-bottom: 1rem;
}


@media screen and (max-width: 720px){
    .section-title { 
    	font-size: large!important; 
		margin: 0 2%;
		max-width: 96%;
    }
    h1, h2{ font-size: large!important; }
}

h3 {
    font-family: cheddar;
    font-weight: normal;
    font-size: xx-large;
}


/* Inline titre */

h1.inline-title, h2.inline-title, div.inline-title  {
    text-transform: uppercase;
    color: #34BDEF;
    font-weight: bold;
    font-size: 1.8em;
    letter-spacing: 2px;
    margin-bottom: .5em;
}

.section-subtitle {
    text-transform: uppercase;
    color: #b3afa7;
    font-weight: bold;
    font-size: 1.2em;
    margin-bottom: .5em;
    letter-spacing: 1px;
}

@media screen and (max-width: 720px){
	.section-subtitle {
	    font-size: medium;
	    font-weight: 300;
	}
	h1.inline-title, h2.inline-title { font-size: larger;}
}

/* Button */

.tiktok-button {
    display: table;
    color: #34BDEF !important;
    text-transform: uppercase;
    text-decoration: none;
    margin: 1rem auto 0;
    font-size: 1.3em;
    border: 2px solid;
    letter-spacing: 1px;
    padding: .25rem 3em;
    border-radius: 40px;
    transition: 0.2s ease-in-out;
}

.tiktok-button:hover {
    background-color: #c9e4ee !important;
    color: #34BDEF !important;
}

.button {
    display: table;
    color: #fff;
    text-transform: uppercase;
    text-decoration: none;
    margin: 1rem auto 0;
    font-size: 1.3em;
    border: 2px solid;
    letter-spacing: 1px;
    padding: .25rem 3em;
    border-radius: 40px;
    transition: 0.2s ease-in-out;
}

.button:hover {
    background: #fff;
    color: #34BDEF;
    text-decoration: none;
    border-color: #fff;
}

.button::after {
    content: "+";
    font-family: cheddar;
    font-weight: bold;
    font-size: 2.5em;
    display: inline-block;
    height: 20px;
    vertical-align: middle;
    line-height: 15px;
    width: 0;
    color: #34BDEF;
    opacity: 0;
    text-align: right;
    transform: rotate(365deg);
    transition: 0.2s ease-in-out;
}

.button:hover::after {
    opacity: 1;
    width: 30px;
    transform: rotate(0deg);
}

/* Home first */

#home-first .bloc-code {
    display: flex;
    justify-content: space-around;
    text-align: center; 
    text-transform: uppercase;
    font-weight: bold;
    padding: 0 3rem 1rem;
    margin-bottom: 2rem;
    border-bottom: .5px solid #b3afa7;
}

#home-first .bloc-code > div {
    color: #b3afa7;
    line-height: 1;
    padding: 1rem 2rem;
    transition: 0.2s ease-in-out;
}

#home-first .bloc-code > div:hover,
#home-first .bloc-code > div.active {
    background: #f9f9f9;
    color:#34BDEF;
}

#home-first .bloc-code > div::before {
    content: "";
    display: block;
    width: 115px;
    margin: 0 auto;
    height: 115px;
    background: url('/wp-content/themes/falconheavy/images/camping-charente-maritime.png') no-repeat;
    background-size: 450px;
    transition: 0.2s ease-in-out;
}

#home-first .bloc-code > div:hover::before,
#home-first .bloc-code > div.active::before {
    transform: translateY(-12.5%);
}

#home-first .bloc-code > #secu::before { background-position: -110px 0; }

#home-first .bloc-code > #dispo::before { background-position: -220px 0; }

#home-first .bloc-code > #trip::before { background-position: -335px 0; }

#home-first .bloc-text p {
    margin: 1em 0;
}

@media screen and (max-width: 720px){
	#home-first .bloc-code {
		width: 100%;
		overflow-x: scroll;
		justify-content: flex-start;
		padding: 0;
        margin-bottom: 0;
        border-bottom: none !important;
	}

	#home-first .bloc-code * {
	    font-size: small!important;
	}

	#home-first .bloc-code > div {
	    min-width: 200px;
	}

	#home-first .bloc-code > div::before {
	    transform: scale(.7);
	    height: 103px;
	}

	#home-first .bloc-code > div:hover::before, #home-first .bloc-code > div.active::before {
	    transform: scale(.7) translateY(-12.5%);
	}
}

/* Home piscine */

#home-piscine img {
    object-fit: cover;
    max-height: 300px;
    object-position: center;
}

#home-piscine .button{ margin-top: 1.5rem; }

/* Home region */

#home-region .slick-dots {
    position: absolute;
    bottom: 0px;
}

@media screen and (min-width: 720px){
	#home-region .col-6.left {
	    width: 50%;
	    padding: 5em;
	}
}

#home-region .row {
    justify-content: space-between;
}

#home-region .col-6 img{max-width: 700px;margin-left: auto;}

#home-region .col-6.left p {
    text-align: justify;
}

iframe.map-oleron {
    width: 560px;
    border: none;
    height: 900px;
    display: block;
    margin: 0 auto;
    max-width: 100%;
}

@media screen and (max-width: 992px) and (min-width: 720px){
	#home-region .col-6.left { padding: 1rem; }
}


@media screen and (min-width: 720px){
	body.mobile #home-region .col-6.left {
	    width: 75%;
	    max-width: 65rem;
	    margin: 0 auto;
	    padding: 0;
	}

	body.mobile #home-region .col-6.left h2.inline-title.left {
	    text-align: center;
	}

	body.mobile #home-region .col-6.left .section-subtitle {
	    text-align: center;
	}

	body:not(.mobile) #home-region .col-6:last-of-type::before {
		content: "carte interactive";
		display: block;
		height: 50px;
		background: url('/wp-content/themes/falconheavy/images/carte-interactive.png');
		background-position: right center;
		background-repeat: no-repeat;
		background-size: contain;
	    position: absolute;
	    bottom: 20%;
	    left: 0;
	    text-transform: uppercase;
	    display: flex;
	    align-items: center;
	    padding-right: 60px;
	    font-size: x-large;
	    color: #34BDEF;
	}
    body:not(.mobile) #home-region .col-6:lang(en):last-of-type::before {
        content: "interactive map";
        display: block;
        height: 50px;
        background: url('/wp-content/themes/falconheavy/images/carte-interactive.png');
        background-position: right center;
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        bottom: 20%;
        left: 0;
        text-transform: uppercase;
        display: flex;
        align-items: center;
        padding-right: 60px;
        font-size: x-large;
        color: #34BDEF;
    }

	body:not(.mobile) #home-region .col-6:last-of-type {
	    position: relative;
	}
}


@media screen and (max-width: 720px){
	iframe.map-oleron{ display: none; }
}

/* Bloc text + images */

@media screen and (min-width: 992px){
	.col-6.left { padding: 1rem 5rem; }
}

@media screen and (max-width: 992px) and (min-width: 720px){
	.col-6.left { padding: 1rem; }
}

/* 2 cols */

.valign .row.two-col{ align-items: center; }

.row.two-col .col-6 { padding: 1em; }

/* Video youtube */

.container-video-youtube {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
}

.video-youtube {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: -25px 25px #34BDEF;
    border-radius: 4px;
}



/* Bloc text */

.bloc-text { margin: 0 2%; }

.full > .bloc-text {
    max-width: 65rem;
    width: 75%;
    margin: 0 auto;
}

.container.full .bloc-text, 
.container.extralarge > .bloc-text {
    max-width: 65rem;
    margin: 0 auto;
}

.container .bloc-text:not(:last-child){ margin-bottom: 2rem; }


@media screen and (max-width: 720px){
	.container.full .bloc-text, .container.extralarge > .bloc-text, .bloc-text-with-image {
	    max-width: none!important;
	    width: 96%;
	    margin: 0 2%;
	}
	.container .bloc-text:not(:last-child){ margin-bottom: 2rem; }

    .bloc-text-with-image ul,
    .bloc-text ul {
        padding: 0;
    }

    .bloc-text-with-image ul li,
    .bloc-text ul li {
        margin-bottom: 1rem;
        text-align: left;
    }

    .section-title, .inline-title { margin: 2rem auto!important; }

    .bloc-text, .bloc-text-with-image .col-6 { padding: 0 1rem; }

	.bloc-text p:not(:last-child), .bloc-text-with-image p:not(:last-child) { margin-bottom: 1rem; }


}

/* Citation */

.citation {
    position: relative;
    display: block;
    padding: 0.5rem 0;
    font-size: large;
    text-transform: uppercase;
}

.citation::before {
    content: "\42";
    font-family: falconheavy;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%) rotate(15deg);
    -moz-transform: translate(-50%,-50%) rotate(15deg);
    -ms-transform: translate(-50%,-50%) rotate(15deg);
    -o-transform: translate(-50%,-50%) rotate(15deg);
    transform: translate(-50%,-50%) rotate(15deg);
    font-size: 60px;
    height: 70px;
    z-index: -1;
    opacity: 0.1;
    line-height: 390px;
}

/* Img full */

.image-full-width { position: relative; }

.object-fit .img-full {
    width: 100%;
    max-height: 350px;
    object-fit:  cover;
    object-position: center center;
    line-height: 0;
    display: block;
}

.no-object-fit .img-full{ width: 100%; }

@media screen and (min-width: 720px){
	.image-full-width .content {
	    position: absolute;
	    top: 50%;
	    left: 50%;
	    -webkit-transform: translate(-50%, -50%);
	    -moz-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	    -o-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	    z-index: 1;
	}
}

@media screen and (max-width: 720px){
	.image-full-width > .full {
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    z-index: -1;
	}

	.image-full-width > .full img {
	    position: absolute;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 100%;
	    max-height: none!important;
	    object-fit: cover;
	}

	.image-full-width .content { padding: 2rem 1rem; }

	.button { font-size: medium; }
}

/* Btn vidéo */

.video-btn {
    text-transform: uppercase;
    font-size: large;
    background: #fff;
    padding: .5rem 2rem;
    cursor: pointer;
    overflow: hidden;
    border: none;
    transition: 0.2s ease-in-out;
}
.video-btn:hover{ color: #fff; }
.video-btn::after{
    content:"\65";
    font-family: falconheavy;
    text-transform: none;
    font-size: xx-large;
    height: 0;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    line-height: 160px;
    margin-left: .25rem;
    width: 0px;
    opacity: 0;
    color: #fff;
    transition: 0.2s ease-in-out;
}
.video-btn:hover::after{
    width: 20px;
    opacity: 1;
}

/* Section list pages */

.list-pages {
    margin: 0;
    display: flex;
    justify-content: center;
    padding: 1rem 0 3rem;
    align-items: center;
    overflow: hidden;
}

.cta {
    flex-grow: 1;
    flex-basis: 0;
    list-style: none; 
    cursor: pointer;
    max-width: 700px;
    position: relative;
    transition: 0.2s ease-out;
}

a.cta-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}


@media screen and (max-width: 720px){
	.list-pages{
		display: block;
		overflow-x: scroll;
	}
	.cta{
		width: 45vw;
		display: inline-block;
		min-width: 280px;
		white-space: normal;
	}
	.cta-title {
	    font-size: medium!important;
	}
	.cta-link::after {
	    content: "En savoir plus";
	    position: absolute;
	    bottom: .5rem;
	    right: 1rem;
	    color: #fff;
	    line-height: 1;
	    padding: .5rem;
	    text-transform: uppercase;
	    font-weight: bold;
	    font-size: small;
	}

	.link-home a::after {
	    content: "En savoir plus";
	    display: block;
	    margin-top: 1rem;
	    font-size: 1.2em;
	    letter-spacing: 2px;
	}

	#home-first .bloc-code a::after {
	    content: "En savoir plus";
	    display: block;
	    font-size: 1.3em;
	    margin-top: 1rem;
	    font-weight: 100;
	}


	:lang(en) .cta-link::after, 
	:lang(en) .link-home a::after,
	:lang(en) #home-first .bloc-code a::after{ content:"See more"; }

	.list-pages:not(.list-alt) .cta-link::after {
	    bottom: initial;
	    right: initial;
	    border-right: 1px solid;
	    border-bottom: 1px solid;
	    background: rgba(0,0,0,0.5);
	}
}

.cta:hover,
.cta.ishover {
    transform: scale(1.1);
    z-index:3;
}

.list-pages:not(.list-alt) .cta-descr {
    position: absolute;
    bottom: 0;
    background: rgba(179, 175, 167, .7);
    width: 80%;
    line-height: initial;
    left: 50%;
    transform: translateX(-50%);
    padding: .5em .5em 1.5em;
    text-align: center;
    line-height: initial;
    transition: 0.2s ease-in-out;
}

.list-pages:not(.list-alt) .cta-descr::after {
    content: "+";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
    color: #fff;
    font-size: 2em;
    font-weight: bold;
    line-height: 40px;
    width: 40px;
    height: 40px;
    background: #b3afa7;
    border-radius: 17px;
    transition: 0.2s ease-in-out;
}


.list-pages:not(.list-alt) .cta-title {
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 1.2em;
    letter-spacing: 1px;
    transition: 0.2s ease-in-out;
}

.list-pages:not(.list-alt) .cta.ishover .cta-descr{
    background: rgba(52, 189, 239, .7);
    transform: translateX(-50%) scale(0.9);
}

.list-pages:not(.list-alt) .cta.ishover .cta-descr::after{
    background: #34BDEF;
    transform:translate(-50%, 50%) rotate(360deg);
}

.list-alt {
    margin: 0;
    padding:0;
}

.list-alt .cta {
    display: inline-block;
    width: 30%;
    white-space: normal;
    background: #000;
    line-height: 0;
    margin:2rem 0;
    transition: 0.2s ease-in-out;
}

.list-alt .cta-descr {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 96%;
    text-align: center;
    line-height: initial;
}

.list-alt .cta-title {
    color: #fff;
    font-size: 1.5em;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 1px;
}

.list-alt .cta img { 
    opacity: .7; 
    transition: 0.2s ease-in-out;
}


.list-alt .cta.ishover {
    background: #34BDEF;
    transform: scale(1.1);
    z-index: 99;
}

.list-alt .cta.ishover img {
    opacity: 0.22;
}

@media screen and (max-width: 992px){
	.list-pages:not(.list-alt) .cta-descr {
	    width: 96%;
	}

	.list-pages:not(.list-alt) .cta-title {
	    font-size: medium;
	}
}
/* Catégories */

#section-category .cta-descr::after {content: none;}

#section-category .cta-descr {
    padding: .5rem;
    bottom: 1rem;
}

#section-category .list-pages .cta {
    min-width: 300px;
}

/* bg1 */

.bg1 { background: #34BDEF; }

.bg1 * { color: #fff; }

.bg1 .section-title span { color: #e6e5e2; }

.bg1 .list-pages:not(.list-alt) .cta.ishover .cta-descr::after {
    background: #fff;
    color: #34BDEF;
}

/* FIlters */

.filters {
    padding: .5rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.button-group {
    margin: .5rem;
    display: inline-flex;
    flex-wrap: wrap;
}

.filter-title {
    font-size: smaller;
    width: 100%;
}

.button-group button {
    text-transform: uppercase;
    border: .5px solid;
    cursor: pointer;
    transition: 0.2s ease-in-out;
    flex-basis: 0;
    flex-grow: 1;
    flex: 1 1 auto;
    font-size: smaller;
    margin: .125rem;
    padding: .25rem;
}

.button-group button:hover, 
.button-group button.active{
	color: #fff;
}

.button-group button.active {
    background: #34BDEF;
    border-color: #34BDEF;
}

.button-group button:not(.active):hover {
    background: #b3afa7;
    border-color: #b3afa7;
}

@media screen and (max-width: 720px){
	.filters {
	    display: block;
	    white-space: nowrap;
	    overflow-x: scroll;
	}
}

/* Hebergements */

.large-list .heberg-list .cta-heberg {
    width: 25%!important;
    flex-grow: inherit;
    flex-basis: inherit;
    min-width: 350px!important;
}


@media screen and (max-width: 720px){
	.large-list .heberg-list .cta-heberg {
	    width: 50vw!important;
	    min-width: 300px!important;
	}
}

.large-list .heberg-list .cta-heberg .cta-descr { bottom: 2rem; }

.heberg-list {
    height: auto!important;
}

.cta-heberg {
    position: relative!important;
    top: 0!important;
    left: 0!important;
}


.cta-info {
    display: flex;
    justify-content: center;
    align-items: center;
}

.cta-info * {
    color: #fff;
    text-transform: uppercase;
    font-size: 0.9em;
}

.cta-info > div:not(:last-of-type)::after {
    content: "";
    width: 5px;
    height: 5px;
    display: inline-block;
    vertical-align: middle;
    background: #fff;
    border-radius: 100%;
    margin: 0 1em;
}

.cta-info > div {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cta-price {
    position: absolute;
    top: 1rem;
    left: 0;
    background: #34BDEF;
    line-height: 1;
    padding: 1rem;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 0 40px 40px 0;
    transition: 0.2s ease-in-out;
}

.cta-heberg:hover .cta-price, 
.cta-heberg.ishover .cta-price { padding-left: 2rem; }

/* Heberg details */

.heberg-detail {
    width: 100%;
    margin: 0 auto;
    background: #fff;
    overflow: hidden;
    padding: 2rem;
    position: relative;
}

.close-detail{
    background: red;
    position: absolute;
    top: 0px;
    right: 0px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    font-size: 2em;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border-radius: 0 0 0 15px;

    transition: 0.2s ease-in-out;
}

.heberg-title {
    text-align: center;
    font-size: xx-large;
    color: #34BDEF;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 1;
}

.heberg-icons {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 500px;
    margin: 0 auto;
    text-align: center;
}

.heberg-icons > div {
    flex-grow: 1;
    font-family: cheddar;
    font-size: 2.5em;
    flex-basis: 0;
    line-height: 1;
    color: #b3afa7;
}

.heberg-description {
    padding: 0 5rem;
}

.heberg-description li {
    text-align: initial;
}

@media screen and (max-width: 1200px){
	.heberg-description { padding: 0 0 0 2rem; }
}


.heberg-img {
    box-shadow: -25px 25px #34BDEF;
    border-radius: 4px;
    width: 50%;
}

.heberg-img .slick-list {
    height: auto!important;
}

.heberg-content {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 96%;
    margin: 0 auto;
}

.heberg-img .slick-arrow::before {
    font-size: 80px;
    opacity: 0.7;
    transition: 0.2s ease-in-out;
}

.heberg-img .slick-arrow {
    z-index: 99;
}

.heberg-img .slick-next {
    right: 4rem;
}

.heberg-img .slick-prev {
    left: .5rem;
}

.heberg-img .slick-arrow:hover::before {
    opacity: 1;
}


.heberg-resa iframe {
	border: 0;
	margin: 0 auto;
	display: block;
}

.heberg-resa {
    background: #e6e5e2;
    padding-top: 2rem;
    margin: 3rem auto 0;
}


.resa-title {
    text-align: center;
    font-size: 3em;
    color: #34BDEF;
    font-family: cheddar;
}

.resa-title::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-bottom: 3px solid #34BDEF;
    border-right: 3px solid #34BDEF;
    margin: 0 auto;
    transform: rotate(45deg) skew(-20deg, -20deg);
}

@media screen and (max-width: 992px){
	.heberg-content {
	    display: block;
	}

	.heberg-description{ padding: 0 1rem; }

	.heberg-img {
	    margin: 0 auto 3rem;
	    width: 100%;
	    max-width: 500px;
	}
}

@media screen and (max-width: 720px){
	.heberg-detail{ padding: 4rem 0; }

	.heberg-title {
	    font-size: larger;
	}

	.heberg-icons > div {
	    font-size: xx-large;
	}
}

/* Accordeon slider */

@media screen and (min-width: 720px){
    .flexbox-slider {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 350px;
        visibility: hidden;
    }
    .flexbox-slider .flexbox-slide {
        -webkit-transition-property: all;
            transition-property: all;
        -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s;
        -webkit-transition-timing-function: linear;
            transition-timing-function: linear;
        -webkit-transition-delay: 0s;
            transition-delay: 0s;
        width: 20%;
        height: 100%;
        position: relative;
        overflow: hidden;
        cursor: pointer;
        visibility: visible;
        border-right: 5px solid #fff;
        max-width: 90%;
    }
    .flexbox-slider.slides-1 .flexbox-slide { width: 100%; }
    .flexbox-slider.slides-2 .flexbox-slide { width: 50%; }
    .flexbox-slider.slides-3 .flexbox-slide { width: 33.3333%; }
    .flexbox-slider.slides-4 .flexbox-slide { width: 25%; }
    .flexbox-slider .flexbox-slide:last-of-type{ border-right: none; }
    .flexbox-slider .flexbox-slide:after {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.6);
        z-index: 2;
        opacity: 0;
    }
    .flexbox-slide a { position: static; }
    .flexbox-slider .flexbox-slide img {
        position: absolute;
        top: 50%;
        left: 50%;
        height: auto;
        width: auto;
        max-width: none;
        min-width: 100%;
        min-height: 100%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        z-index: 1;
    }
    html:not(.no-object-fit) .flexbox-slider .flexbox-slide img { object-fit: cover; }
    html.no-object-fit .flexbox-slider .flexbox-slide img { max-width: none!important; height:auto!important; }

    .flexbox-slider:not(.slides-1):hover .flexbox-slide:hover {
        -ms-flex-negative: 0;
            flex-shrink: 0;
        width: 50%;
    }
}
@media screen and (max-width: 720px){
    .flexbox-slider{ height:auto!important; }
    .scroll-x-mobile .flexbox-slide{
        display: inline-block;
        height: 175px;
        vertical-align: top;
        position: relative;
    }
    .scroll-x-mobile .flexbox-slide img{
        height: 100%;
        max-width: none;
    }
    .slider-container .scroll-x-title { margin-top: 1rem; }

    .scroll-x-mobile .flexbox-slide {
	    height: auto;
	    width: 45vw;
	    min-width: 280px;
	}

	.flexbox-slider {
	    display: flex;
	}

	.scroll-x-mobile .flexbox-slide a.progressive.full {
	    height: 100%;
	}

	.scroll-x-mobile .flexbox-slide a.progressive.full img {
	    object-fit: cover;
	}
}


/* Bloc de texte + image */
@media screen and (min-width: 720px){
	.flex-row {
	    display: flex;
	    flex-wrap: wrap;
	}
	.v-align { align-items: center; }

	.reverse-row { flex-direction: row-reverse; }
}

a.full, img.full {
    max-width: none;
    width: 100%;
}

/* Map */

img.leaflet-marker-icon {
    top: -18px;
    left: -2px;
}

#map-row > .col-6 {
	margin: 0 .5%;
	width: 49%;
}

#gmaps{
	height: 350px;
    height: 100%;
    width: 100%;
}

#map-list {
    margin: 0;
    padding: 0;
}

.list-of-6 #map-list .cta { width: 32.333%; }

@media screen and (max-width: 1200px){
	#map-list .cta-descr {
	    font-size: x-small;
	    font-weight: bold;
	}
}
@media screen and (max-width: 720px){
	#map-list.scroll-x-mobile [class^=col] { width: 150px!important; }
    #map-row > .col-6 { width: 99%; }
    #gmaps{ height: 350px; }
    .list-of-3 .cta { width: 32.33%!important; }
    .list-of-2 .cta { width: 49%!important; }
    .list-of-2 .cta { width: 99%!important; }
    .list-of-3 .scroll-x-title { display: none; }
    .list-of-2 .scroll-x-title { display: none; }
    .list-of-1 .scroll-x-title { display: none; }
}
@media screen and (max-width: 450px){
 .list-of-3 .scroll-x-title { display: block!important; }
 .list-of-3 .cta { width: 150px!important; }
}
.list-of-5 #map-list .cta { width: 32.333%; }
.list-of-5 #map-list .cta:nth-last-of-type(1), 
.list-of-5 #map-list .cta:nth-last-of-type(2) { width: 49%; }


/* WPCF7 */

.wpcf7-text, .wpcf7-textarea, .wpcf7-captchar {
    border: none !important;
    margin:5px 0;
    width: 100% !important;
    -moz-border-radius: 0 !important;
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
    -moz-box-sizing: border-box;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.wpcf7-submit {
    color:#fff!important;
    margin: 0!important;
    cursor: pointer;
    font-weight: bold!important;
    font-size: medium;
    display: block;
    padding: 6px 20px;
    border-radius: 0;
    background: transparent;
    letter-spacing: 2px;
    text-transform: uppercase;
    width: 100%;
    font-size: small;
    border: 2px solid;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}

@media screen and (max-width: 720px){
	#map-row.contact-row {
	    display: block;
	    width: 100%;
	    flex-wrap: inherit;
	}

	#map-row.contact-row > .col-6 {
	    width: 100%;
	    max-width: 450px;
	    display:  block;
	    margin: 0 auto;
	    float: none;
	}

	#map-row.contact-row #gmaps { height: 200px; }
}

/* Numbers row */

.numbers-row {
    justify-content: space-around;
    margin: 3rem 0 4rem;
}

.number-box * { 
    color: #b3afa7; 
    transition: 0.2s ease-in-out;
}

.number {
    text-align: center;
    font-size: 5em;
    font-family: cheddar;
    width: 1.25em;
    height: 1.25em;
    margin: 0 auto;
    border: 1px solid;
    border-radius: .45em;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: .05em;
}

.subtitle-number {
    text-transform: uppercase;
    margin-top: 1em;
    font-weight: bold;
    letter-spacing: 1px;
}

.number-box.active .number {
    background: #34BDEF;
    color: #fff;
}

.number-box.active .subtitle-number {
    color: #34BDEF;
}

@media screen and (max-width: 720px){
	.number-box {
	    display: inline-block;
	    padding: 1rem;
	    white-space: normal;
	}

	.numbers-row {
	    margin: 0 0 2rem;
	    line-height: 1;
	}
}

/* Home number */

#home-number {
    z-index: 1;
    position: relative;
    overflow: visible;
}

#home-number .bloc-code {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    line-height: 1;
}

#home-number .bloc-code{
    color: #b3afa7;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding-bottom: .5rem;
    font-size: large;
}

#home-number .bloc-code::before{
    content:"";
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%) rotate(45deg) skew(-20deg, -20deg);
    z-index: 1;
    border-bottom: 2px solid #b3afa7;
    border-right: 2px solid #b3afa7;
}

#home-number .bloc-code::after {
    content: "";
    width: 70px;
    height: 70px;
    background: #fff;
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%) rotate(45deg) skew(-20deg, -20deg);
    z-index: -1;
}

/* Home atouts */

#home-atouts {
    overflow: visible;
    position: relative;
    z-index: 0;
}

section{
    padding: 5rem 0;
}

#home-atouts .content {
    height: 100%;
    width: 75%;
    max-width: 65rem;
    display: flex;
    justify-content: space-around;
}

#home-atouts .content > div {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-grow: 1;
    flex-basis: 0;
    position: relative;
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.2em;
    letter-spacing: 1px;
    padding: .5em;
    text-align: center;
}

#home-atouts .content > div::after {
    content: "";
    background: rgba(52, 189, 239, .7);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 0;
    transition: 0.2s ease-in-out;
    z-index: -1;
}

#home-atouts .content > div:hover::after,
#home-atouts .content > div.active::after {
    height: 105%;
}

#home-atouts .content > div::before {
    content: "";
    display: block;
    width: 115px;
    margin: 0 auto;
    height: 115px;
    background: url(/wp-content/themes/falconheavy/images/camping-charente-maritime.png) no-repeat;
    background-size: 450px;
    background-position: 0 -115px!important;
    transition: 0.2s ease-in-out;
}

#home-atouts #velo::before {
    background-position: -115px -115px!important;
}

#home-atouts #anim::before {
    background-position: -230px -115px!important;
}

#home-atouts #mer::before {
    background-position: -345px -115px!important;
}

#home-atouts .content > div:hover::before,
#home-atouts .content > div.active::before
{ transform: translateY(-12.5%); }

#home-atouts .full img {
    min-height: 250px;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 720px){
	#home-atouts .content {
	    padding: 0;
	    max-width: none;
	    display: block;
	    overflow-x: scroll;
	    width: 100%;
	    white-space: nowrap;
	}

	#home-atouts .content > div {
	    padding: 2rem .5rem;
	    width: 28vw!important;
	    font-size: medium;
	    max-width: none;
	    min-width: 200px;
	    display: inline-flex;
	    height: 280px;
	}

	.link-home a{ font-size:medium!important; }
}

/* Socials */

#section-socials .bloc-code {
    display: flex;
    justify-content: space-around;
    margin-top: 1.5rem;
}

.social {
    color: #34BDEF;
    text-transform: uppercase;
    text-decoration: none!important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2em;
    letter-spacing: 2px;
    padding: 0 60px;
    min-height: 40px;
    position: relative;
}

.social::before {
    content: "";
    width: 60px;
    height: 60px;
    display: block;
    background: url('images/socials.png') no-repeat;
    position: absolute;
    left: 0%;
    transition: 0.2s ease-in;
}

#tripadvisor::before { background-position: -60px 0px; }

#zoover::before { background-position: -120px 0; }

#tiktok::before { 
    background: url('images/tiktok.png') no-repeat center center !important;
    background-size: 35px 35px !important;
}

#tiktok {
    padding-left: 75px;
}

.social:hover::before {
	left: 50%;
	transform: translateX(-50%) rotate(360deg) scale(1.5);
	opacity: 0.2;
}

@media screen and (max-width: 720px){
	#payement .row {
	    justify-content: flex-start;
	    max-width: 100%;
	    overflow-x: scroll;
	}

	#section-socials .bloc-code {
	    flex-wrap: wrap;
        justify-content: center;
	}

    .social {
        padding: 0 10px 0 60px !important;
    }

}

/* Avis */

#section-avis .section-subtitle {
    font-size: 1.5em;
    margin-bottom: .5em;
}

#section-avis p { font-size: 1.1em; }

#section-avis .button {
    margin-top: 1em;
    font-size: 1em;
}

#section-avis .button:hover { color: #34BDEF; }

#section-avis *{
	color:#fff;
	text-align: center;
}

@media screen and (min-width: 720px){
	#img-avis {
	    position: absolute;
	    width: 550px;
	    left: 50%;
	    transform: translate(-50%, 50%);
	}
}

@media screen and (max-width: 720px){
	#section-avis{ padding-bottom: 0; }
	#img-avis { margin-top: 1rem; }
	#section-avis p, #section-avis p * {
	    font-size: 1em;
	    font-weight: 300;
	}
	#section-avis p { text-align: justify; }
}



/* Moyens de paiement */

#payement {
    padding: 3rem 0;
    text-align: center;
}

#payement .section-title {
    font-size: x-large;
    font-weight: normal;
    margin-bottom: 1rem;
}

#payement .row {
    display: flex;
    justify-content: space-around;
}

@media screen and (max-width: 720px){
	#payement{ margin-top: 0; }
	#payement .row {
	    justify-content: flex-start;
	    max-width: 100%;
	    overflow-x: scroll;
	}
}

#payement .row > div {
    display: flex;
    align-items: center;
    text-transform: uppercase;
    text-align: left;
    line-height: 1;
}

#payement .row > div::before{
	content:"";
	display: block;
	margin-right: .25rem;
	width: 75px;
	height: 75px;
	background: url(images/reservation-camping-charente-maritime.png) no-repeat;
}

#payement .row > div:nth-child(2)::before {
    background-position: -75px 0px;
}

#payement .row > div:nth-child(3)::before {
    background-position: -150px 0;
}

#payement .row > div:nth-child(4)::before {
    background-position: -225px 0;
}

#payement * {  color: #b3afa7; }

@media screen and (max-width: 720px){
	#payement .row > div { margin: 0 .5rem; }
}

/* Gallery */

.falcon-gallery {
    display: flex;
    flex-wrap: wrap;
    height: 400px;
    position: relative;
}

.falcon-gallery > * {
    flex-grow: 1;
    flex-basis: 0;
}

.falcon-gallery a {
    height: 100%;
    object-fit: cover;
    object-position: center center;
    width: 100%;
    -webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
        transform: scale(1.1);
    z-index: -1;
    transition: 0.2s ease-in-out;
}

.falcon-gallery a img {
    height: 100%!important;
    object-fit: cover;
    object-position: center center;
}

.img-grid-wrap:hover a{
    -webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
        transform: scale(1);
}

.img-grid-wrap {
    position: relative;
    overflow: hidden;
    height: 100%;
    border-left: 3px solid;
    border-right: 3px solid;
    border-top: 6px solid;
    border-bottom: 6px solid;
    flex-grow: 1;
    flex-basis: 0;
    color: #fff;
}

.img-grid-wrap::before {
    content: "";
    position: absolute;
    z-index: 1;
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    border: .5px solid;
    transition: 0.2s ease-out;
}

.img-grid-wrap:hover::before{
    width: 100%;
    height: 100%;
}

.falcon-gallery > .img-grid-wrap:last-of-type { border-right: 6px solid; }

.falcon-gallery > .img-grid-wrap:first-of-type { border-left: 6px solid; }

@media screen and (min-width: 720px){
	.grid-middle {
	    flex-basis: 0;
	    position: relative;
	    height: 100%;
	    width: 100%;
	    flex-grow: 1;
	}
}

.grid-middle .img-grid-wrap {
    width: 100%;
    height: 50%;
}

.grid-middle .img-grid-wrap:first-of-type {
    border-bottom: 3px solid;
}

.grid-middle .img-grid-wrap:last-of-type {
    border-top: 3px solid;
}

.grid-middle img {
    flex-grow: 1;
    flex-basis: 0;
    height: 100%!important;
    width: 100%;
}

.falcon-gallery.gallery-of-5 .grid-middle .img-grid-wrap:nth-last-of-type(1), .falcon-gallery.gallery-of-5 .grid-middle .img-grid-wrap:nth-last-of-type(2) {
    width: 50%;
    float: left;
}
.falcon-gallery.gallery-of-5 .grid-middle .img-grid-wrap:nth-last-of-type(2) { border-top: 1.5px solid; }

.falcon-gallery.gallery-of-6 .grid-middle .img-grid-wrap{
    width: 50%;
    float: left;
}
.falcon-gallery.gallery-of-6 .grid-middle .img-grid-wrap:nth-last-of-type(1), 
.falcon-gallery.gallery-of-6 .grid-middle .img-grid-wrap:nth-last-of-type(2){
    border-top: 3px solid;
}
.falcon-gallery.gallery-of-6 .grid-middle .img-grid-wrap:nth-child(1), 
.falcon-gallery.gallery-of-6 .grid-middle .img-grid-wrap:nth-child(2){
    border-bottom: 3px solid;
}

@media screen and (max-width: 720px){
	.falcon-gallery {
	    display: block;
	    white-space: nowrap;
	    overflow-x: scroll;
	    height: auto;
	}

	.img-grid-wrap {
	    display: inline-block;
	    width: 200px!important;
	    height: 150px!important;
	}

	.grid-middle { display: inline-block; }

	.grid-middle > .img-grid-wrap {
	    float: none!important;
	    border: 6px solid;
	}
}

/* Widget produits ctoutvert */

.widgets-price-ctoutvert-wrap { overflow: auto; }

.widget-price-ctoutvert {
    display: inline-block;
    margin: .5rem;
    vertical-align: top;
    float: left;
}

/************************
        BLOG
*************************/
#section-single .section-title { margin: 0; }
#sidebar { padding: 1rem; }
#sidebar .widget:not(:last-of-type) {  margin-bottom: 1rem; }
#sidebar ul {
    margin: 0;
    padding-left: 2rem;
}
#sidebar .inline-title { font-size:  smaller; }
#sidebar a { font-size: small; }

.single-meta {
    margin: 2rem 0;
    text-align: right;
}

.single-meta, .single-meta * {
    font-size: small;
    font-style: italic;
}
#section-blog span {
    float: unset;
    margin: 0;
    min-height: unset;
}


/****************************
        SOCIAL SHARE
*****************************/
.social-share{
    display: table;
    margin:1rem auto 0;
}

#social-share-fixed i.icon-x { display: none; }

.social-share > a {
    display: inline-block;
    float:  left;
    margin: .10rem;
}

.social-share > a {
    width: 35px;
    height:  35px;
    display:  block;
    text-align: center;
    line-height:  35px;
    text-decoration:  none;
    position: relative;
    color: initial!important;
    background: #fff;
}
.social-share > a:not(:last-of-type){ border-bottom: 1px solid; }

.social-share > a > i {
    font-size: large;
    display:inline-block;
    width: 35px;
    height:  35px;
    line-height:35px;
    padding-top:3px;
    transition: 0.2s ease-in-out;
}


.social-share > a:hover > i {
    color: #fff;
	-webkit-transform: scale(1.3) rotate(360deg);
	-moz-transform: scale(1.3) rotate(360deg);
	-ms-transform: scale(1.3) rotate(360deg);
	-o-transform: scale(1.3) rotate(360deg);
        transform: scale(1.3) rotate(360deg);
}

@media screen and (min-width: 721px){
	#social-share-fixed {
	    position:  fixed;
	    z-index:  999999;
	    top: 50%;
	    left:  0;
	    -webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
	        transform: translateY(-50%);
	    transition: 0.2s ease-in-out;
	}

	#social-share-fixed i.icon-x {
	    position: absolute;
	    font-size: small;
	    top: 0;
	    right: 0;
	    color: #fff;
	    line-height: 1;
	    -webkit-transform: translate(50%, -50%);
	    -moz-transform: translate(50%, -50%);
	    -ms-transform: translate(50%, -50%);
	    -o-transform: translate(50%, -50%);
	    transform: translate(50%, -50%);
	    z-index: 2;
	    text-shadow: 2px 2px 5px rgba(0,0,0,0.8);
	    opacity: 0;
	    display: block;
	    line-height: 110px;
	    display: block;
	    transition: 0.2s ease-in-out;
	}

	#social-share-fixed:hover i.icon-x{ opacity: 0.8; }

	#social-share-fixed i.icon-x:hover{
		cursor: pointer;
	    opacity: 1;
	}
	#social-share-fixed a {
	    display: block;
	    float: none;
	    margin: 0;
	    overflow: hidden;
	}
}

#social-share-single{
    display: table;
    margin-left:auto;
    margin-top: .5rem;
}

#social-share-single a{ border: none; }
#social-share-single a i{ color:#fff; }

@media screen and (max-width: 720px){
	.social-share > a { border: none!important; }
}

/**************************
		Footer
*************************/

#footer {
    text-align: center;
    padding: 2rem 0 0;
    background: url(/wp-content/themes/falconheavy/images/camping-en-charente-maritime.jpg);
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
}

#footer .section-title {
    color: #fff;
    font-size: x-large;
    margin-bottom: 1rem;
}

#section-avis {
    padding-bottom: 0;
}

#footer .row { display: flex; }

/* PDF */

#pdf-col {
    width: 25%;
    display: grid;
    grid-template-columns: 48% 48%;
    gap: 5px;
}

a.link-pdf {
    display: flex;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: large;
    justify-content: center;
    align-items: center;
    border: 1px solid;
    border-radius: 15px;
    padding: .5rem .5rem;
    width: 100%;
    max-width: 230px;
    margin: 0 auto;
    transition: 0.2s ease-in-out;
}

a.link-pdf:not(:last-of-type) { margin-bottom: 1rem; }

#pdf-col a.link-pdf:not(:last-of-type) { margin-bottom: 0; }

a.link-pdf:hover { 
	background:#e6e5e2; 
	border-color:#e6e5e2;
}

/* Contact col */

#contact-col {
    width: 75%;
    display: flex;
    flex-wrap: wrap;
}

#contact-col * {
    color: #fff;
    line-height: 1.3;
}

#contact-col .title {
    text-transform: uppercase;
    font-size: large;
    color: #e6e5e2;
}


#contact-foot, #horaires-foot {
    width: 50%;
    padding: 0 1rem;
    text-align: left;
}


/* Labels */

#partenaire {
    display: flex;
    width: 100%;
    margin-top: 1rem;
}

.label-link {
    margin-right: 1rem;
    transition: 0.2s ease-in-out;
}

a.label-link:hover{
	transform: scale(0.9);
}

.label-link i {
    display: block;
    width: 70px;
    height: 70px;
    background: url('images/partenaires-camping-charente-maritime.png') no-repeat;
    background-size: 400px;
}

i.icon-alloc-familiales {
/*    background-position: -254px 0px;*/
background: url('/wp-content/uploads/2024/05/vacaf-3.jpg') no-repeat;
    width: 79px;
}

i.icon-ancv {
    background-position: -254px 0px;
    width: 79px;
}

i.icon-handicap {
    background-position: -188px 0;
    width: 55px;
}

i.icon-clefverte {
    background-position: -349px 0;
    width: 52px;
}

i.icon-familleplus {
    background-position: -80px 0;
    width: 85px;
}

body.mobile a.btn-contact-foot::before {
    content:"";
    background-image: url('/wp-content/themes/falconheavy/images/ux.png');
    width: 25px;
    height: 25px;
    margin-right: .5rem;
    background-size: 150px;
}
body.mobile .btn-contact-foot--tel::before {
    background-position: 75px -75px;
}

body.mobile .btn-contact-foot--mail::before {
    background-position: -25px -25px;
}

body.mobile .btn-contact-foot--pin::before {
    background-position: 0px -100px;
}

body.mobile a.btn-contact-foot {
    display: flex;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: large;
    justify-content: center;
    align-items: center;
    border: 1px solid;
    border-radius: 15px;
    padding: .5rem .5rem;
    width: 100%;
    max-width: 230px;
    margin: 0 auto 1rem;
    transition: 0.2s ease-in-out;
}

@media screen and (max-width: 720px){

    #footer .row {
        display: flex;
        flex-direction: column-reverse;
    }

    #contact-col {
        margin-bottom: 1rem;
    }

	#pdf-col {
	    width: 100%;
	    margin-bottom: 1rem;
	}

	#contact-col {
	    display: block;
	    width: 100%;
	}

	#contact-foot, #horaires-foot {
	    width: 100%;
	    margin-bottom: 1rem;
	}

	#partenaire {
	    padding-left: 1rem;
	    overflow-x: scroll;
	}
}

/* Copyrights */

#copyrights {
    text-align: center;
    padding: 0.5rem;
    border-top: .5px solid #fff;
    margin-top: 1rem;
}

#copyrights * {
	text-align: center;
	color: #fff;
	font-size: medium;
	text-decoration: none;
}

@media screen and (max-width: 720px) {
	#copyrights { padding-bottom: 7rem!important; }
}

/* Logo foot */

#logo-foot {
    margin: 0 auto;
    display: block;
}


/* RGPD */
aside#moove_gdpr_cookie_info_bar {
    z-index: 9999999999;
}

.gdpr.gdpr-privacy-bar .gdpr-wrapper, 
.gdpr.gdpr-reconsent-bar .gdpr-wrapper {
    padding: 5px 30px;
}
div.gdpr.gdpr-privacy-bar div.gdpr-wrapper div.gdpr-content {
    padding: 0;
}
div.gdpr-wrapper .gdpr-info p, 
.gdpr-wrapper .gdpr-info .gdpr-cookies span, 
.gdpr-wrapper .gdpr-info .gdpr-cookies span a {
    font-size: small;
}
.gdpr.gdpr-privacy-bar .gdpr-wrapper .gdpr-right .gdpr-buttons button.gdpr-agreement,
 .gdpr.gdpr-reconsent-bar .gdpr-wrapper .gdpr-right .gdpr-buttons button.gdpr-agreement {
    margin: 0 10px !important;
}
.gdpr.gdpr-privacy-bar, 
.gdpr.gdpr-reconsent-bar {
    bottom: -1px;
    top: auto;
    z-index: 999999999;
    position: fixed !important;
}
.gdpr.gdpr-privacy-preferences .gdpr-wrapper form>footer input[type="submit"]:active,
.gdpr.gdpr-privacy-preferences .gdpr-wrapper form>footer input[type="submit"].focus,
.gdpr.gdpr-general-confirmation .gdpr-wrapper form>footer input[type="submit"]:active, 
.gdpr.gdpr-general-confirmation .gdpr-wrapper form>footer input[type="submit"].focus {
    vertical-align: top;
}
.gdpr.gdpr-privacy-preferences .gdpr-wrapper .gdpr-content .gdpr-tab-content>div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active, 
.gdpr.gdpr-general-confirmation .gdpr-wrapper .gdpr-content .gdpr-tab-content>div .gdpr-info .gdpr-cookies-used .gdpr-cookie-title .gdpr-always-active {
    font-size: smaller;
}
.gdpr.gdpr-privacy-preferences .gdpr-wrapper form>footer input[type="submit"]:hover, 
.gdpr.gdpr-general-confirmation .gdpr-wrapper form>footer input[type="submit"]:hover {
    color: #fff;
    text-shadow: none;
    text-decoration: none;
}
.gdpr.gdpr-privacy-preferences .gdpr-wrapper form>footer input[type="submit"], 
.gdpr.gdpr-general-confirmation .gdpr-wrapper form>footer input[type="submit"] {
    color: #fff;
    text-shadow: none;
    text-decoration: none;
}
div.gdpr-content p a {
    font-size: inherit;
}
.gdpr.gdpr-privacy-bar .gdpr-agreement:active, 
.gdpr.gdpr-privacy-bar .gdpr-agreement:focus, 
.gdpr.gdpr-reconsent-bar .gdpr-agreement:active, 
.gdpr.gdpr-reconsent-bar .gdpr-agreement:focus{
    border-color: rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 2px 0 rgba(0, 0, 0, 0.1);
}
.gdpr.gdpr-privacy-bar .gdpr-agreement, 
.gdpr.gdpr-reconsent-bar .gdpr-agreement{
    color: #fff;
}
.bloc-text.center p {
    text-align: center;
}

@media screen and (max-width: 720px){
	.bloc-text.center p { text-align: justify; }
}

/** AJOUT THÉO **/

.link-home a {
    text-decoration: none;
    color: white;
    font-size: 1.2em;
}

/******************************* BANDEAU GDPR *******************************/
#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme {
  background: #b3afa7 !important; /* Couleur Background */
  border-top: 3px solid #56c0ca !important; /* Couleur 1 */ /* Bordure au choix */
  padding: 10px !important;
}
span.change-settings-button {
  color: #56c0ca !important; /* Couleur 1 */
  text-decoration: none !important;
}
span.change-settings-button:hover {
  color: #56c0ca !important; /* Couleur 2 */
  transform: scale(1.1);
}
#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close i, #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon {
  background-color: #b3afa7 !important; /* Couleur 2 */
  border: 1px solid #b3afa7 !important; /* Couleur 2 */
}
#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a i, #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-icon, #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button i, #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-icon {
  color: #b3afa7 !important; /* Couleur 2 */
}
#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close:hover i, #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close:hover span.gdpr-icon {
  background-color: #fff !important;
  color: #b3afa7 !important; /* Couleur 2 */
}
#moove_gdpr_cookie_modal .cookie-switch .cookie-slider {
  background-color: #34BDEF !important; /* Couleur 1 */
}
#moove_gdpr_cookie_modal .cookie-switch .cookie-slider:after {
  color: #34BDEF !important; /* Couleur 1 */
}
#moove_gdpr_cookie_modal .checkbox-selected .cookie-switch .cookie-slider {
  background: #191919 !important; /* Couleur Switch Off */
}
#moove_gdpr_cookie_modal .checkbox-selected .cookie-switch .cookie-slider:after {
  color: #191919 !important; /* Couleur Switch Off */
}

div#moove_gdpr_cookie_info_bar {
  z-index: 9999999999 !important;
}
.lity {
  z-index: 99999999999 !important;
}

@media screen and (max-width: 767px) {
  button.mgbutton.moove-gdpr-modal-save-settings.button-visible, #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton, #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton {
    font-size: 14px !important;
    padding: 8px 16px !important;
    float: right;
  }
}

#home-first .bloc-code a {
    color: #baafa7;
    text-decoration: none;
}
#home-first .bloc-code .active a {
    color: #34BDEF;
}

.btn-velo {
    text-decoration: none;
    margin-top: 15px;
    display: block;
    color: white;
    text-align: center;
    background: #0080B4;
    padding: 1rem;
    border: solid 1px #0080B4;
    transition: background 0.3s;
}

.btn-velo:hover {
    background: transparent;
    color: #0080B4;
    transition: background 0.3s;
}

.button.btn-bleu, .button.btn-bleu:hover {
    color: #34BDEF;
    border-color: #34BDEF;
}
.ensavoir {
    background: #0080B4;
    padding: 20px;
    border-radius: 25px;
    border: solid 1px #0080B4;
    color: #fff;
    text-decoration: none !important;
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    text-transform: uppercase;
    transition: background 0.3s;
}

.ensavoir:hover {
    background: transparent;
    color: #0080B4;
    transition: background 0.3s;
}

#animationsEnfants::before, #animationsSoirees::before {
    content: " ";
    width: 50px;
    height: 75px;
    position: relative;
    display: block;
    margin-top: -75px;
}

img.logo-flower{
    height: auto !important;
        display: flex !important;
        flex-direction: column;
        width: 85px !important;
        float: right;
        position: absolute!important;
        right: 0!important;
        top: 80px;
}

@media screen and (max-width: 1450px) and (min-width: 1350px){
    img.logo-flower{
        position: absolute!important;
        right: 0px!important;
        top:130px!important;
    }
}
@media screen and (max-width: 1350px) and (min-width: 800px){
    img.logo-flower{
        position: absolute!important;
        right: 0px!important;
        top:110px!important;
    }
}
@media screen and (max-width: 800px){
    img.logo-flower{
        display: none!important;
    }
}


/* Fix CSS 2020 */
#home-atouts .content > div {
    overflow-y: hidden;
}

@media screen and (max-width: 720px){
    #home-atouts .bloc-code {
        position: absolute;
        bottom: 5px;
        left: 5px;
    }
    #home-atouts .scroll-x-title {
        color: #fff !important;
        text-shadow: 0 0 3px rgba(0, 0, 0, 0.44);
    }
}


span.close-resa-mobile{
    color: #fff;
    font-weight: 700;
    font-size: x-large;
    position: absolute;
    right: 15px;
    bottom: 7px
}

.frame-ctoutvert{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

img#logo-paradis {
    position: absolute;
    top: 20%;
    right: 1%;
    width: 250px;
    z-index: 1;
    background: rgba(255,255,255, 1);
    border-radius: 25px;
    padding: 20px;
}
@media screen and (max-width: 799px){
    img#logo-paradis {
        width: 160px;
        top: 15%;
        right: 50%;
        transform: translateX(50%);
    }
}

.home #home-piscine .content * {
    color: white;
}

.home #home-piscine .image-full-width {
    background: black;
}

.home #home-piscine .image-full-width img {
    opacity: 0.7;
}

.home #home-piscine img {
    height: 500px;
    max-height: none;
}

.avis-faq .inline-title {
    font-family: 'ursula';
}

.avis-slider {
    max-width: 80%;
    margin: auto;
    background: #e6e5e2;
    padding: 40px;
    border-radius: 20px;
}

.avis-faq .avis-slider .avis {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    height: auto !important;
}

.avis-contenu {
    text-align: center;
    margin-bottom: 15px;
}

.slick-track {
    display: flex !important;
}

.avis-auteur {
    font-size: 20px;
    color: #34bdef;
    font-family: 'ursula';
}

.avis-auteur {
    font-size: 20px;
    color: #34bdef;
    font-family: 'ursula';
}

.faq {
    padding: 10px;
    margin: 10px;
    border: solid 1px #34bdef;
    border-radius: 20px;
}

.faq summary {
    color: #34bdef;
    font-family: 'ursula';
    cursor: pointer;
    font-size: 18px
}

.faq summary::marker {
    content: none;
}

.faq summary::after {
    content: "+";
    border-radius: 100%;
    border: solid 1px;
    display: inline-block;
    width: 20px;
    height: 20px;
    text-align: center;
    font-size: 21px;
    float: right;
    margin-right: 10px;
    transition: ease-in-out .2s;
    transform: rotate(0);
}

.faq details[open] summary::after {
    transform: rotate(45deg);
}

.faq details div {
    padding: 5px 10px
}