/*
Theme Name: Esprit Garonne
Text Domain: esg
Version: 1.0
Requires at least: 4.7
Requires PHP: 5.2.4
Author: C2 Studios
Author URI: https://c2-studios.fr/
License: © 2020 - C2 Studios 
// License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

	0. 	CSS Reset
	1. 	Document Setup
	2. 	Element Base
	3. 	Helper Classes
	4. 	Site Header
	5. 	Menu Modal
	6. 	Search Modal
	7. 	Page Templates
		a. 	Template: Cover Template
		c. 	Template: Full Width
	8.  Post: Archive
	9.  Post: Single
	10. Blocks
	11. Entry Content
	12. Comments
	13. Site Pagination
	14. Error 404
	15. Widgets
	16. Site Footer
	17. Media Queries

----------------------------------------------------------------------------- */


/* -------------------------------------------------------------------------- */

/*	0. CSS Reset
/* -------------------------------------------------------------------------- */

/* @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Roboto:wght@300;400;500;700&display=swap'); */

 

html,
body {
	border: none;
	margin: 0;
	padding: 0;
    position: relative;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
address,
big,
cite,
code,
em,
font,
img,
small,
strike,
sub,
sup,
li,
ol,
ul,
fieldset,
form,
label,
legend,
button,
table,
caption,
tr,
th,
td {
	border: none;
	font-size: inherit;
	line-height: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
}

blockquote::before,
blockquote::after {
	content: "";
}

ul {
    list-style: outside none none;
    padding: 0;
}

/* =WordPress Core
-------------------------------------------------------------- */
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}


/* -------------------------------------------------------------------------- */

/*	1. Document Setup
/* -------------------------------------------------------------------------- */

* {
	box-sizing: border-box; outline:0; -webkit-tap-highlight-color: transparent;

}


/* @font-face {font-family: "Futura Light"; src: url("//db.onlinewebfonts.com/t/2167e76f00e569cc11b3665679996380.eot"); src: url("//db.onlinewebfonts.com/t/2167e76f00e569cc11b3665679996380.eot?#iefix") format("embedded-opentype"), url("//db.onlinewebfonts.com/t/2167e76f00e569cc11b3665679996380.woff2") format("woff2"), url("//db.onlinewebfonts.com/t/2167e76f00e569cc11b3665679996380.woff") format("woff"), url("//db.onlinewebfonts.com/t/2167e76f00e569cc11b3665679996380.ttf") format("truetype"), url("//db.onlinewebfonts.com/t/2167e76f00e569cc11b3665679996380.svg#Futura Light") format("svg"); } */




/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
	
}

/* Firefox */
input[type=number] {
  -moz-appearance:textfield;
}

button {
	cursor: pointer;
	background-color: transparent;
	cursor: pointer;
}






* {
    box-sizing: border-box;
    outline: 0 none;
}
 

.only_smart {
    display: none;
}

body {
    color: #4E3C16;
    font-family: 'Raleway', sans-serif;
    margin: 0;
    padding: 0;
	overflow-x: hidden;
	font-weight: 100;
    font-size: 14px;
 
}

.cormorant {
    font-family: 'Cormorant Infant';
}
.raleway {
    font-family: 'Raleway', sans-serif;
}
figure {
    margin: 0;
    padding: 0;
}



h1 {
    font-family: 'Cormorant Infant';
    font-weight: normal;
    font-size: 40px;
    line-height: 48px;
    margin-bottom: 30px;
    text-transform: inherit;
}


h2 {
    font-family: 'Cormorant Infant';
    font-size: 40px;
    font-weight: normal;
    line-height: 48px;
    margin-bottom: 20px;
}
 

h3 {
    font-family: 'Cormorant Infant';
	font-size: 18px;
	margin-bottom: 30px;
	font-weight: normal;
	  letter-spacing: 1px;
}




p, ul {
    font-size: 14px;
    line-height: 24px;
    margin-bottom: 30px;
    letter-spacing: 1.4px;
}
 


input[type="text"], input[type="email"], input[type="tel"], input[type="submit"] {
    background-color: #fff;
    border: 1px solid #aeaeae;
    border-radius: 0;
    display: inline-block;
    font-family: "Aaux Next";
    font-size: 14px;
    margin: 10px 0 20px;
    padding: 10px;
    width: 100%;
}

textarea {
    background-color: #fff;
    border: 1px solid #aeaeae;
    display: inline-block;
    font-family: "Aaux Next";
    font-size: 14px;
    margin: 10px 0 20px;
    padding: 10px;
    resize: none;
    width: 100%;
}


input[type="submit"] {
	 background-color: #c19960;
    border: medium none;
    color: #fff;
	width: auto;
	cursor: pointer;
	padding: 10px 20px;
}



input[type="text"], input[type="email"], input[type="tel"],  input[type="submit"] {
	margin-right: 10px;
}




.wpcf7-form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.wpcf7-form p {
    position: relative;
    width: calc(50% - 15px);
}

.wpcf7-form p:last-of-type {
    display: block;
    width: 100%;
}

.wpcf7 form .wpcf7-response-output {
    background-color: #fff;
    border: medium none;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.8);
    left: 50%;
    margin: 2em 0.5em 1em;
    padding: 20px;
    position: fixed;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}


.open_menu {
    overflow: hidden;
}

.wrap {
    margin: 0 auto;
    max-width: 1170px;
    padding: 0 40px;
    position: relative;
    width: 100%;
}

.flex {
	display: flex;
	
}

.big {
	font-size: 20px;
}

a {
	text-decoration: none;
	color: #4E3C16;
}

ol {
    list-style-position: inside;
}


.upp {
	text-transform: uppercase;
}


.or {
	color: #c6a16c;
}


strong {
	font-weight: bold;
}


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


.btn a {
    padding: 22px 40px;
    color: #FFF;
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    line-height: 16px;
    letter-spacing: 2.1px;
    display: inline-block;
    font-weight: 300;
    text-transform: uppercase;
    transition: all 0.3s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.3s cubic-bezier(.45,0,.55,1);
    background-color: #AA905B;
}

.btn a.bg_marron {
    background-color: #4E3C16;
}


.gold {
    color: #AA905B;
}

.bg_gold {
    background-color: #AA905B;
}


.marron {
    color: #4E3C16;
}
.bg_marron {
    background-color: #4E3C16;
}


.white {
    color: #FFF;
}
.bg_white {
    background-color: #FFF;
}



.beige {
    color: #EFE8DF;
}

.bg_beige {
    background-color: #EFE8DF;
}



.btn:hover a {
    transform: scale(1.01);
}
.btn:hover a.bg_gold {
    background-color: #BC9E68;
    
}


.shadow_box {
    position: relative;
    display: inline-block;
    
}
.shadow_box:before {
    content: "";
    display: block;
    width: 0%;
    height: 100%;
    background-color: #EFE8DF;
    position: absolute;
    top: 40px;
    right: -40px;
    transition: all 0.9s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.9s cubic-bezier(.45,0,.55,1);
}

.left .shadow_box:before {
    right: auto;
    top: 40px;
    left: -40px;
}



.shadow_box > * {
    position: relative;
    z-index: 1;
    background-color: #FFF;
}

.right .shadow_box {
left: -40px;
}
.intro_odd .right .shadow_box {
left: 0px;
}


.img_box {
    overflow: hidden;
    height: 100%;
    width: 0%;
    float: right;
    margin: 0;
    transition: all 0.7s cubic-bezier(.45,0,.55,1) 0.6s;
    -webkit-transition: all 0.7s cubic-bezier(.45,0,.55,1) 0.6s;
}

.img_box img {
    height: 100%;
    width: auto;
    max-width: inherit;
    float: right;
}

.intro_odd .shadow_box:before {
     float: left;
     left: 40px;
}
.intro_odd  .img_box img, .intro_odd  .img_box {
    float: left;
}


.section {
    opacity: 0;
     transition: all 0.9s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.9s cubic-bezier(.45,0,.55,1);
}

.section.sectionview {
    opacity: 1;
}


section.sectionview .img_box {
    width: 100%;
}
    
section.sectionview  .shadow_box:before {
    width: 100%;
}   








.section {
    padding: 110px 0;
}

.section h3 {
    
}
.section_titre {
    padding: 80px;
}




 

/* HEADER */

#site-header, #site-header-mobile {
    position: fixed;
    left: 0;
    width: 100%;
    z-index: 2;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    z-index: 5;
    transition: all 0.4s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1);
}

 

body:not(.home) #site-header {
    background-color: #FFF;
}
body:not(.home) #site-header a {
    color: #4E3C16;
}





.down #site-header, .down  #site-header-mobile {
     position: fixed;
    height: 80px;
    border-bottom: 1px solid #EFE8DF;
     transition: all 0.4s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1);
    top: 0px;
    background-color: #FFF;
    
}
.down  #site-header .logo  {
    font-size: 58px;
    width: 100px;
    height: 80px;
    line-height: 90px;
    
}

 
 
.video-container  {
    position: absolute;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.video-container video  {
        display: block;
        width: 100%;
        height: auto;

    }
@media (max-aspect-ratio: 16/9) {
.video-container video  {
    display: block;
    width: auto;
    height: 100%;
    
}
}


.home #site-header {
    /* position: absolute; */
}
.admin-bar #site-header, .admin-bar #site-header-mobile {
    top: 32px;
}

#site-header .inner.flex, #site-header-mobile .inner.flex {
    align-items: center;
    justify-content: space-between;
    color: #FFF;
    flex-wrap: wrap;
}

#site-header .logo, #site-header-mobile .logo {
    font-size: 98px;
    width: 100px;
    height: 100px;
    display: block;
    overflow: hidden;
    line-height: 100px;
    color: #FFF;
    transition: all 0.4s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1);
}


#site-header nav {
    width: calc(100% - 100px);
    padding: 0px 0 0 100px;
}

#site-header nav a {
    letter-spacing: 1.4px;
    font-weight: normal;
    padding-left: 20px;
    color: #FFF;
    height: 80px;
    display: inline-block;
    display: flex;
    align-items: center;
    border-bottom: 2px solid transparent;
    padding-right: 20px;
}

.down #site-header .logo, .down #site-header nav a {
    color: #4E3C16;
}



#site-header nav li:hover a {
    color: #AA905B;
}
.down #site-header nav li:hover a {
    border-bottom: 2px solid #EFE8DF;

}
#site-header nav li.current_page_item a, #site-header nav li a:focus {
    font-weight:500;
    color: #AA905B;
}



.down #site-header nav li.current_page_item a {
    /* border-bottom: 2px solid #AA905B; */
    color: #AA905B;
}



#site-header .primary-menu  {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    font-size: 18px;
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    z-index: 2;
    margin-bottom: 0;
    
}
 


.banner {
    height: 100vh;
    width: 100vw;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-position: center;
    color: #FFF;
    position: relative;
    min-height: 800px;
}

body:not(.home) .banner {
    
    height: calc(100vh - 150px);
    min-height: 650px;
}



body:not(.home) main {
    padding-top: 150px;
}
   
body:not(.home) .banner .btn a {
    margin-top: 40px;
}

.banner .wrap {
    position: relative;
    z-index: 2;
    margin: auto;
}
.banner .inner {
    max-width: 720px;
    margin: auto;
}

.banner:after {
    background-color: rgb(0,0,0,0.6);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
}
.banner:before {
    background-color: #AA905B;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    opacity: 0.4;
    mix-blend-mode: color;
}

.banner h4 {
    text-align: center;
    font-size: 12px;
    font-weight: lighter;
    letter-spacing: 1.8px;
    margin-bottom: 20px;
}

.banner .icon-wave {
    font-size: 58px;
}


 

.banner p {
    font-size: 24px;
    line-height: 34px;
    font-weight: 400;
    font-family: 'Cormorant Infant';
    letter-spacing: 0;

}
.banner h1 {
margin-bottom: 48px;
}


.banner .btn {
        background-color: #AA905B;
    color: #FFF;

}

 

body.home .banner .inner {
    max-width: 810px;
}



.banner .inner {
    position: relative;
    top: 20px;
    opacity: 0;
    transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.5s;
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.5s;
}

body.body_loaded .banner .inner {
    top: 0px;
    opacity: 1;
}



/* FOOTER */


#footer_reservation {
    height: 400px;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-image: url("assets/img/illustrations/algues.png");
    background-repeat: no-repeat;
    background-position: center;
    background-position: 30% 18px;
}

#footer_reservation .btn a {
    min-width: 50%;
}

footer {
    position: relative;
}

footer .left {
    width: 25%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-size: 180px;
    padding-top: 80px;
    padding-bottom: 80px;
    position: relative;
}


footer .left:before {
    background-color:#EFE8DF;
    content: "";
    position: absolute;
    right: 100%;
    top: 0;
    width: 100vw;
    height: 100%;
}



footer .right {
    width: 75%;
    padding-top: 80px;
    padding-bottom: 80px;
    padding-left: 90px;
}

footer h4 {
    font-weight: normal;
    font-size: 40px;
    line-height: 42px;
    margin-bottom: 40px;
    text-transform: inherit;
    font-family: 'Cormorant Infant';
}

footer p, footer ul li a {
    font-family:'Raleway', sans-serif; 
    font-weight: normal;
    letter-spacing: 1.4px;
    font-size: 14px;
    line-height: 30px;
}


footer .icon-instagram {
    font-size: 26px;
    vertical-align: middle;
    margin-left: -4px;
    margin-right: -4px;
    top: -1px;
    position: relative;
}


footer .right .col-1 {
    width: 64%;
    margin-bottom: 80px;
}

footer .right .col-1 a {
    color: #FFF;
}
footer .right .col-2, footer .right .col-3 {
    width: 18%;
}


footer .right .col-3 {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    flex-flow: column;
    text-align: right;
}
footer .right .col-3 ul {
    margin: 0;
}


footer .right .col-3 ul li a, footer .right .col-3 p {
    font-size: 12px;
    color: #AA905B;
}

footer ul  li a {
    color: #FFF;
}

footer .btn {
    padding: 5px 10px;
    border-radius: 5px;
    margin-right: 0;
    margin-left: 10px;
    font-size: 12px;
    
}

footer .line.last {
    justify-content: space-between;
}

footer .line.last .lang a {
    color: #FFF;
    margin-left: 10px;
}

footer .line.last .lang a.current_language {
    font-weight: bold;
}


footer .line.last .partenaires p {
    font-family: 'Cormorant Infant';
}


footer .line.last .partenaires a {
    padding: 5px 10px;
    border-radius: 5px;
    margin-right: 0;
    margin-left: 10px;
    font-size: 12px;
    background-color: #FFF;
    color: #AA905B;
    font-family: 'Raleway', sans-serif;
}



.lang a {
    color: #FFF;
}
.lang .current_language {
    color: #4E3C16;
    font-weight: bold;
}


/* HOME */



.intro:last-of-type {
    padding-bottom: 220px;
}

.intro .inner {
    align-items: center;
}



.intro .inner .left {
    padding: 0 90px;
    width: 50%;
}
.intro .inner .right {
    text-align: right;
    width: 50%;
}

.intro .inner  {
    background-image: url("assets/img/illustrations/wave.png"), url("assets/img/illustrations/corail.png") ;
    background-repeat: no-repeat;
    background-position: 46% 50px, 46% 390px;
}


.home .section.intro {
    background-image: url("assets/img/illustrations/wave.png");
    background-repeat: no-repeat;
    background-position: left bottom;
}
.home .section.intro_odd {
    background-position: top right;
}
.home .section.intro_odd .inner {
    background-image: url(assets/img/illustrations/wave.png), url(assets/img/illustrations/corail.png);
    background-repeat: no-repeat;
    background-position: 49% 440px, 56% 90px;
}



#assiette .inner  {
    background-image: url("assets/img/illustrations/wave.png"), url("assets/img/illustrations/carrotte.png") ;
    background-position: 49% 440px, 59% 0px;
}
#croisiere .inner  {
    background-image: url("assets/img/illustrations/wave.png"), url("assets/img/illustrations/plante.png") ;
    background-position: 46% 50px, 50% 329px;
}
#prestation .inner  {
    background-image: url("assets/img/illustrations/wave.png"), url("assets/img/illustrations/st-jacques.png") ;
    background-position: 49% 440px, 51% 80px;
}






.intro_odd .inner {
    flex-flow: row-reverse;
}

.intro_odd .inner .left {
    padding: 0 0px 0px 180px;    
    
}
.intro_odd .inner .right {
    text-align: left;
}


#plan-bateau {
    background-image: url(assets/img/illustrations/wave.png), url(assets/img/illustrations/wave.png);
    background-repeat: no-repeat;
    background-position: 0 210px, right 390px;
}
#plan-bateau .inner {
    background-image: none, none;
}

#le-bateau {
    position: relative;
}
#le-bateau img {
    position: relative;
    z-index: 1;
}


#le-bateau:before {
    content: "";
    height: 50%;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    z-index: 0;
    background-color: #FFF;
}


.lettrine {
    position: absolute;
    font-size: 278px;
    color: #EFE8DF;
    z-index: -1;
    left: 87px;
    top: -114px;
}


.fiche_bateau {
    border: 1px solid #EFE8DF;
    padding: 40px;
    text-align: center;
    font-family: 'Cormorant Infant';
}

.fiche_bateau {
    border: 1px solid #EFE8DF;
    padding: 40px;
    text-align: center;
    left: -80px;
    opacity: 0;
    transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.3s;
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.3s;
}
.sectionview .fiche_bateau {
    left: 0;
    opacity: 1;
}
.fiche_bateau img {
    margin-bottom: 60px;
}

.fiche_bateau p {
    font-size: 24px;
    line-height: 34px;
}



.accroche h2 {
    padding: 90px 0;
    background-image: url("assets/img/illustrations/st-jacques.png");
    background-repeat: no-repeat;
    background-position: center;
}
.accroche p {
    font-family: 'Cormorant Infant';
    font-size: 40px;
    font-weight: 300;
    line-height: 48px;
    margin: auto;
    margin-bottom: 0px;
    max-width: 900px;
    letter-spacing: 0;
    color: #AA905B;
    
}

.section_titre {
    background-image: url("assets/img/illustrations/wave.png");
    background-position: left center;
    background-repeat: no-repeat;
}




.section_assiette {
    background-image: url(assets/img/illustrations/wave.png), url(assets/img/illustrations/wave.png);
    background-repeat: no-repeat;
    background-position: right 180px, left 390px; 
}



.fiche_assiette {
    border: 1px solid #EFE8DF;
    padding: 50px 100px;
    text-align: center;
    max-width: 535px;
    position: relative;
    left: -80px;
    transition: all 0.4s cubic-bezier(.45,0,.55,1)s;
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1)s;
}

.sectionview .fiche_assiette {
    
    left: 0;
}

.fiche_assiette h2 {
    font-size: 24px;
    line-height: 34px;
    margin-bottom: 10px;
}


.fiche_assiette .icon-wave {
    font-size: 58px;
    margin-bottom: 10px;
}
.fiche_assiette p {
    margin-bottom: 10px;
}

.shadow_box.assiette:before {
    top: -40px;
}




.presta {
    position: absolute;
    right: 40px;
    bottom: -80px;
    background-color: #FFF;
}

.fiche_presta {
    border: 1px solid #EFE8DF;
    padding: 50px 35px;
    text-align: left;
    max-width: 445px;
    transition: all 0.4s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1);
    position: relative;
    right: -40px;
    
}
.sectionview .fiche_presta {
 right: 0px;
}

.fiche_presta h2 {
    font-size: 22px;
    line-height: 34px;
    margin-bottom: 10px;
    font-weight: 500;
}


.fiche_presta .icon-wave {
    font-size: 58px;
    margin-bottom: 10px;
    padding-left: 34px;
    display: block;
}
.fiche_presta p {
    margin-bottom: 10px;
}

 

.section.prestation {
    padding-bottom: 320px;
    background-image: url(assets/img/illustrations/wave.png), url("assets/img/illustrations/corail.png"), url("assets/img/illustrations/choux.png");
    background-repeat: no-repeat;
    background-position: right center, right bottom, 37% calc(100% - 94px);
}
.section.prestation_odd {
    background-image: url(assets/img/illustrations/wave.png), none, url("assets/img/illustrations/plante_2.png");
    background-position: right center, right bottom, 24% 100px;
}


.prestation .thumb {
    width: 66.66%;
    transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.4s;
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.4s;
    position: relative;
    left: -40px;
    opacity: 0;
}

.sectionview.prestation .thumb {
    left: 0;
    opacity: 1;
}

.fiche_presta ul {
    max-width: 330px;
    letter-spacing: 0;
}

.fiche_presta ul li {
    margin-bottom: 4px;
    position: relative;
    padding-left: 42px;
    min-height: 38px;
}

.section.prestation_odd {
    text-align: right;
}

.section.prestation_odd .presta {
    right: auto;
    left: 40px;
}

.section.prestation .presta:before {
    content: "";
    background-color: #EFE8DF;
    width: 0%;
    height: calc(100% + 170px);
    position: absolute;
    z-index: -1;
    top: -80px;
    left: -50%;
    mix-blend-mode: multiply;
    transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.3s;
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1) 0.3s;
}
.sectionview.prestation .presta:before {
    width: 100%;
}


.section.prestation_odd .presta:before {
     left: auto;
    right: -50%;
}



.fiche_presta ul li span {
   font-size: 38px;
    vertical-align: middle;
    margin-right: 7px;
    width: 35px;
    display: inline-block;
    text-align: center;
    
    position: absolute;
    left: 0;
    top: -6px;
    
    
    
}


 

.fiche_assiette img {
    position: absolute;
    left: -90%;
    top: 14%;
    transition: all 0.4s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1);
}

.sectionview .fiche_assiette img {
    position: absolute;
    left: -60%;
}


.section_assiette img.img_2 {
    position: absolute;
    bottom: 110px;
    z-index: 0;
    right: -80%;
    background-color: transparent;
    transition: all 0.4s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.4s cubic-bezier(.45,0,.55,1) s;
    opacity: 0;
}

.section_assiette.sectionview  img.img_2 {
    right: -50%;
     opacity: 1;
}




.section_assiette {
    background-image: url("assets/img/illustrations/wave.png"), url("assets/img/illustrations/wave.png");
    background-position: right bottom, right 90px;
    background-repeat: no-repeat;
}



.page-template-contact .banner h2 {
    text-align: center;
    font-size: 96px;
    color: #AA905B;
}
.page-template-contact .banner,
.page-template-default .banner {
    padding-bottom: 300px;
}

.page-template-contact .box,
.page-template-default .box {
    padding: 90px;
    height: 530px;
    max-width: 720px;
    margin: auto;
    margin-top: -300px;
    margin-bottom: 500px;
    
}


 






/* FORULAIRE */

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}

.validation_msg, .msg_send .form .flex, .msg_send .submit {
    display: none;
}
.msg_send .validation_msg {
	margin-top: 1em;
	display: block;
}

.content.form .flex {
    flex-flow: column;
    width: 100%;
    margin-top: 56px;
}
.content.form .line {
    margin-bottom: 50px;
    position: relative;
    width: 100%;
}
.content.form .line label {
    position: absolute;
    font-size: 12px;
    bottom: 18px;
    left: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
    pointer-events: none;
    transition: all 0.3s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.3s cubic-bezier(.45,0,.55,1);
    letter-spacing: 1.2px;
    line-height: 24px;
}

.content.form .line input, .content.form .line textarea {
    border: none;
    border-bottom: 1px solid #EFE8DF;
    padding: 19px 0;
    font-size: 14px;
    font-family: 'Raleway', sans-serif;
    font-weight: 300;
    color: #4E3C16;
    margin: 0!important;
    width: 100%;
}

.content.form .line.textarea label {
    bottom: auto;
    top: 18px;
    font-family: 'Cormorant Infant';
    text-transform: none;
    font-size: 18px;

}

p.error {
    color: #b8364e;
    font-size: 12px;
    bottom: -30px;
    margin-bottom: 0;
    position: absolute;text-align: left;
}

.content.form .line input.error, .content.form .line textarea.error {
    border-bottom: 1px solid #b8364e;
}


.content.form .line textarea {
    font-size: 14px;
    height: 170px;
}

.content.form .line.focus label {
    bottom: 44px;
    font-size: 10px;
     transition: all 0.3s cubic-bezier(.45,0,.55,1);
    -webkit-transition: all 0.3s cubic-bezier(.45,0,.55,1);
}
.content.form .line.textarea.focus label {
    top: -14px;
    font-size: 16px;
}

























section.diaporama {
    position: relative;
    padding-bottom: 240px;
}


.swiper-container-frize  {
    cursor: url("assets/img/cursor-fr.svg"), auto;
}

 
.swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 160px;
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 10px;
}

.swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    display: inline-block;
    border-radius: 100%;
    background: #EFE8DF;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    background-color: #AA905B;
}

.swiper-container-frize .swiper-slide img {
    height: 600px;
    width: auto;
}


.swiper-container-frize .swiper-slide  {
    width: auto;
}












 

.pointer {
    display: block;
    width: 14px;
    height: 14px;
    transform: translate(-7px, -7px);
    background-color: #AA905B;
    border-radius: 20px;
    position: absolute;
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    -webkit-transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);

    }
   
    
 .disable .pointer  {
     background-color: #AA905B;
     z-index: 0;
}   
 
    
.bullet_container.active {
        z-index: 1000;
    }
 
 
.pointer.active:after {
    content: "";
    border: 1px solid #4E3C16;
    width: 100%;
    height: 100%;
    display: block;
    transform: scale(1.2);
    position: absolute;
    top: -1px;
    left: -1px;
    border-radius: 12px;
    -webkit-animation: 1s linear 0s infinite normal move_eye;
    animation: 1s linear 0s infinite normal move_eye;
}
    
 
    
@-webkit-keyframes move_eye { 
    0% { transform: scale(0.5); opacity: 1;  } 
    80% { transform: scale(2); opacity: 0; } 
    100% { transform: scale(2); opacity: 0; }  }
    
    
@keyframes move_eye { 0% { transform: scale(0.5); opacity: 1;  } 
    80% { transform: scale(2); opacity: 0; }
    100% { transform: scale(2); opacity: 0; } }
    
    
    

 
.bullet_container {
    position: absolute;
    z-index: 2;
}
.pointer:hover, .pointer.active  {
    transform: scale(1.2) translate(-6px, -6px);
}
 
.pointer.active  {
    background-color: #4E3C16;
}

.pointer.boat  {
    background-color: transparent;
    font-size: 40px;
    width: 40px;
    height: 40px;
    transform: translate(-20px, -20px);
    line-height: 40px;
    pointer-events: none;
}


.pointer .title {
    font-size: 14px;
    position: absolute;
    left: 44px;
    display: inline-block;
    width: 200px;
    text-align: left;
    top: 2px;
}



.legende {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 120px;
}
.legende .pointer {
    position: relative;
    pointer-events: none;
}
.legende .pointer .title {
    width: 320px;
}

.legende .pointer:not(.boat) .title  {
    margin-left: -12px;
}




.windows {
    position: fixed;
    top: 80px;
    right: -50vw;
    width: 44vw;
    /*width: 522px;*/
    z-index: 4;
    height: calc(100vh - 80px);
    display: flex;
    align-items: flex-start;
    transition: right 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    -webkit-transition: right 0.5s cubic-bezier(0.25, 1, 0.5, 1);
     
    
    
}
.windows.active {
    right: 0;
}

.floatline .windows {
   position: absolute;
    top: 0;
    height: calc(100vh - 80px);
}

.footerline .windows {
   position: absolute;
    top: auto;
    bottom: 0;
}

.windows:before {
    content: "";
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
     
}
.map_box {
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 44px;
    width: 100%;
    overflow: hidden;
     
    height: calc(100% - 85px);
    opacity: 0;
    left: 30px;
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
    -webkit-transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
}

.windows.active .map_box {
    opacity: 1;
    left: 0;
}

.map_box_item {
    transition: left 0.6s cubic-bezier(0.25, 1, 0.5, 1) 0.3s, opacity 0.6s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
    -webkit-transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0.3s, opacity 0.6s cubic-bezier(0.25, 1, 0.5, 1) 0.3s;
    opacity: 0;
    position: absolute;
    left: 100px;
    top: -5000px;
}
.map_box_item.active {
    opacity: 1;
    left: 0px;
    top: auto;
    position: relative;
    height: calc(100vh - 220px); 
}


.map_box .inner {
    max-width: 462px;
    height: 100%;
    
}

.map_box .inner .swiper {
    height: 100%;
    overflow: hidden;
}
.map_box .inner .swiper-slide {
        height: auto;
}


.swiper-container-vertical>.swiper-scrollbar {
    right: -20px;
    height: 100%;
}

.swiper-scrollbar-drag {
    background: #AA905B;
    
    
}
    
    
.map_box .content img {
    width: 100%;
    margin: 0;
}

.map_box .back {
    font-size: 12px;
    margin-bottom: 46px;
    display: inline-block;
}
.map_box .back span {
    font-size: 18px;
    vertical-align: middle;
    position: relative;
    top: -1px;
}
.map_box .footer_box {
    background-color: #D2BEA4;
    padding: 30px;
    position: absolute;
    left: 0;
    width: 100%;
    bottom: 0;
    
}








.footer_box .inner_footer_box {
    max-width: 462px;
    width: 100%;
    display: flex;
    justify-content: space-between;
}



.map_box .footer_box a {
    background-color: #D2BEA4;
    font-size: 12px;
}
.map_box .footer_box a span {
    font-size: 18px;
    vertical-align: middle;
    position: relative;
    top: -1px;
    border: 1px solid;
    border-radius: 30px;
    height: 25px;
    width: 25px;
    display: inline-block;
    line-height: 23px;
    text-align: center;
    margin-right: 9px;
}
.map_box .footer_box a span.icon-arrow-right {
    margin-right: 0;
    margin-left: 9px;

}

.map_box .footer_box a.inactive {
    opacity: 0.4;
    pointer-events: none;
}


.inner .map_box_container {
    position: relative;
    transform: translate(20%, 0px);
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    -webkit-transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    margin-top: -280px;
}
#map .inner {
    overflow: hidden;
}


#map.active .inner .map_box_container {
    transform: translate(0%, 0px);
     
}

 


main,  .parallax-mirror img {
    opacity: 0!important;
    transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    -webkit-transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

.body_loaded main {
    opacity: 1!important;
    transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0s;
    -webkit-transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1) 0s;
}
.body_loaded .parallax-mirror img {
     opacity: 1!important;
     transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0s;
    -webkit-transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1) 0s;
}






@media all and (max-width: 980px) {
 
 
 .only_smart {
    display: block;
}
    .flex {
        display: block;
    }
    
    .right, .left, .col {
        width: 100%!important;
        padding: 0!important;
    }
    
    
    #site-header nav {
        display: none;
    }
    
    
#site-header .logo, #site-header-mobile .logo {
    
   margin: auto;
} 

	
 body section .img_box {
    height: auto;
    width: 100%;
    float: none;
    display: block;
    overflow: auto;
    margin-bottom: 20px;
}

.right .shadow_box {
    left: auto;
    right: auto;
    width: 100%;
}

.img_box img {
    height: auto;
    width: 100%;
    max-width: inherit;
    float: right;
}



.sectionview.prestation .presta:before {
   display: none;
}

    
    
    
.menu_smart_container {
    position: fixed;
    top:110vh;
    z-index: 100;
    transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    -webkit-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
    
.open_menu .menu_smart_container {
    top:0;
}
    
.menu_smart {
    left: 0;
    width: 100vw;
    height: 100vh;
     
    
}   
.open_menu  .menu_smart {
     
}
    
.menu_smart p, .menu_smart ul li a {
    font-family: 'Raleway', sans-serif;
    font-weight: normal;
    letter-spacing: 1.4px;
    font-size: 14px;
    line-height: 30px;
}
 
.menu_smart ul li a {
    text-transform: uppercase;
    font-weight: bold;
}  
.menu_smart .icon-instagram {
    font-size: 26px;
    vertical-align: middle;
    margin-left: -4px;
    margin-right: -4px;
    top: -1px;
    position: relative;
}
    
.menu_smart .btn {
    padding: 5px 10px;
    border-radius: 5px;
    margin-right: 10px;
    margin-left: 0px;
    font-size: 12px;
    background-color: #EFE8DF;
}
    
.menu_smart .last .cormorant {
    display: block;
    font-family: 'Raleway', sans-serif;
    font-size: 14px;
    font-weight: bold;
    line-height: 28px;
}
    


    
body:not(.home) main {
    padding-top: 90px;
}
    
.banner .wrap {
    position: relative;
    z-index: 2;
}
    
    
    
.wrap {
    padding: 0 30px;
    
    }
.section {
    padding: 40px 0;
}
    
    
    
    .open_menu {
        overflow: hidden;
    }
    
#site-header-mobile  {
    position: inherit;
    }
#site-header, #site-header-mobile  {
    height: 90px;
}
 
.home #site-header  {
    background-color: #FFF;
}
#site-header-mobile  {
    background-color: transparent;
    position: relative;
    margin-bottom: 40px;
}
    
#site-header .inner.flex, #site-header-mobile  .inner.flex{
    display: flex;
}
    
#site-header .logo, #site-header-mobile .logo {
    position: absolute;
    left: 50%;
    top: 0px;
    transform: translateX(-50%);
    line-height: 90px;
    background-color: #FFF;
    border-radius: 60px;
    text-align: center;
    vertical-align: middle;
    color: #4E3C16; 
}
 
    
#site-header .burger_menu, #site-header .tel,
#site-header-mobile .burger_menu, #site-header-mobile .tel {
    font-size: 64px;
    display: block;
    width: 64px;
    height: 64px;
    line-height: 64px;
}   
    
.open_menu #site-header-mobile .logo {
    background-color: transparent;
    }
    
    
.home #site-header, .home #site-header a,
#site-header-mobile  {
       color: #4E3C16; 
}
    
.banner .icon-wave {
        display: none;
}
    
.banner h4 {   
    max-width: 330px;
    margin-left: auto;
    margin-right: auto;
}

body:not(.home) .banner {
    height: auto;
    min-height: calc(80vh - 90px);
    padding-top: 40px;
    padding-bottom: 40px;
}
    
  
    
 
    
.intro .inner {
    align-items: center;
    flex-flow: column-reverse;
    display: flex;
    text-align: center;
}
.intro .inner .right {
    text-align: left;
    width: 100%;
    margin-bottom: 20px;
    
} 
    
.intro:last-of-type {
    padding-bottom: 90px;
}
    
#footer_reservation {
    display: flex;
    height: 200px;
}
    
    footer .right .col-1, footer .right .col-2, footer .left, footer .line.last {
        display: none;
    }
    
    
footer .right .col-3 {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
footer .right .col-3 ul {
    display: flex;
    margin-bottom: 14px;
    margin-top: 14px;
}
 footer .right .col-3 ul li {
     margin-right: 20px;
    }
    
    .shadow_box:before {
        display: none;
    }   
    
.fiche_assiette {
    border: none;
    padding: 0;
}
    
    
section.diaporama {
    position: relative;
    padding-bottom: 82px;
}
.swiper-container-frize .swiper-slide img {
    height: 400px;
    width: auto;
}
    .swiper-pagination {
        display: none;
    }
    
  
    
.section.prestation {
    padding-bottom: 0;
}
    
.presta {
    position: inherit;
    right: auto;
    bottom: auto;
    background-color: #FFF;
} 
 .prestation .thumb {
    width: 100%;
     margin-bottom: 40px;
}
.section.prestation_odd .presta {
    right: auto;
    left: auto;
}
    
.fiche_presta {
    border: none;
    padding: 0;
    text-align: left;
    max-width: 445px;
}
    
    
    
.windows {
    top: 90px;
    right: -120vw;
    width: 100vw;
    z-index: 4;
    height: calc(100vh - 90px);
    
}
.footerline .windows {
    position: fixed;
    top: 80px;
    bottom: 0;
    height: calc(100% - 80px);
}
    
    
    
    
.sectionview .fiche_assiette img  {
   position: inherit;
    margin-bottom: 50px;
    right: auto;
    top: auto;
    bottom: auto;
    margin-top: -20px;
}
    
 .section_assiette.sectionview img.img_2 {
   position: inherit;
    margin-bottom: 40px;
    right: auto;
    top: auto;
    bottom: auto;
    margin-top: 40px;
}   
    

    
.page-template-contact .banner .wrap,
.page-template-default .banner .wrap {
    padding-bottom: 330px;
}

.page-template-contact .banner h1,
.page-template-default .banner h1 {
    margin-bottom: 30px;
}
    
.page-template-contact .box,
.page-template-default .box {
    padding: 20px;
    height: 970px;
    margin-bottom: 0;
}
    
    
    
    
    
.inner .map_box_container {
    position: relative;
    transform: translate(-30vw, 0px);
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    -webkit-transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
    width: calc(100vw + 100vw);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -160px;
}
    
.legende {
    display: none;
}    
.pointer.boat {
    height: 30px;
    
    }

    
    
}