html { scroll-behavior: smooth; }

body { max-width: 1920px; margin: auto; padding: 0; overflow-x: hidden !important; width: 100%; height: 100%; background-color: #FCFEFF; }

* { -webkit-box-sizing: border-box; box-sizing: border-box; font-weight: 400; font-style: normal; max-width: 100%; margin: 0; padding: 0; background-repeat: no-repeat; background-position: center; background-size: cover; }

main { max-width: 1920px; width: 100%; margin: auto; overflow: hidden; position: relative; }

section { width: 100%; }

section > div { width: 100%; height: 100%; padding: 100px 200px 0 200px; }

#succes { z-index: 100; display: none; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: fixed; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); -webkit-transition-duration: .6s; transition-duration: .6s; }

#succes.active { display: -webkit-box; display: -ms-flexbox; display: flex; }

#succes.hidden { visibility: hidden !important; opacity: 0 !important; }

#succes > div { text-align: center; font-size: 24px; z-index: 1; color: #FCFEFF; background-color: #E8DACE; padding: 60px; line-height: 1.5; position: relative; }

.close { position: absolute; top: -45%; left: 100%; background: none; border: none; width: 20px; height: 20px; font-size: 40px; color: #FCFEFF; z-index: 9999; }

p, a { font-size: 16px; font-weight: 300; letter-spacing: 1px; line-height: 1.4; margin-bottom: 15px; color: #4B4F6A; font-family: "Lato", sans-serif; }

a, button, input[type="submit"] { -webkit-transition-duration: .3s; transition-duration: .3s; font-size: 16px; text-decoration: none; cursor: pointer; }

h1 { color: #E8DACE; }

h1, h2, h3 { font-family: "Playfair Display", serif; font-weight: 100; }

h2 { font-size: 42px; margin-bottom: 1em; color: #4B4F6A; }

.button { background-color: transparent; height: 57px; border: none; padding: 0 15px; min-width: 120px; }

.button { background-color: #E8DACE; color: #4B4F6A; border: 1px solid #E8DACE; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: 16px; text-align: center; padding: 0.4em 3em; margin: 2em auto; -webkit-transition: all 0.3s linear; transition: all 0.3s linear; }

.button:hover { background-color: transparent; color: #4B4F6A; }

/* width */
::-webkit-scrollbar { width: 10px; overflow: hidden; }

/* Track */
::-webkit-scrollbar-track { background: #E8DACE; }

/* Handle */
::-webkit-scrollbar-thumb { background: #FCFEFF; border-radius: 7.5px; }

/* Handle on hover */
::-webkit-scrollbar-thumb:hover { background: #FCFEFF; }

.fade-in { opacity: 0; -webkit-transition: opacity 450ms ease-in; transition: opacity 450ms ease-in; }

.fade-in.appear { opacity: 1; }

.from-left { -webkit-transform: translateX(-50%); transform: translateX(-50%); }

.from-right { -webkit-transform: translateX(50%); transform: translateX(50%); }

.from-left, .from-right { -webkit-transition: opacity 550ms ease-in, -webkit-transform 500ms ease-in; transition: opacity 550ms ease-in, -webkit-transform 500ms ease-in; transition: opacity 550ms ease-in, transform 500ms ease-in; transition: opacity 550ms ease-in, transform 500ms ease-in, -webkit-transform 500ms ease-in; opacity: 0; }

.from-left.appear, .from-right.appear { -webkit-transform: translateX(0); transform: translateX(0); opacity: 1; }

.img-scale { overflow: hidden; -webkit-transform: scale(1.2); transform: scale(1.2); }

.img-scale.appear { overflow: hidden; }

.img-scale.appear img { -webkit-animation: img-scale 1.8s linear; animation: img-scale 1.8s linear; }

@-webkit-keyframes img-scale { 0% { -webkit-transform: scale(1.2); transform: scale(1.2); }
  100% { -webkit-transform: scale(1); transform: scale(1); } }

@keyframes img-scale { 0% { -webkit-transform: scale(1.2); transform: scale(1.2); }
  100% { -webkit-transform: scale(1); transform: scale(1); } }

/* HEADER ***********************************/
header { width: 100%; max-width: 1920px; overflow-x: hidden; height: 80px; position: fixed; margin: auto; padding: 10px 200px; z-index: 101; left: 0; right: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-transition-duration: .6s; transition-duration: .6s; background-color: #E8DACE; color: #4B4F6A; -webkit-box-shadow: 0 0 5px #FCFEFF; box-shadow: 0 0 5px #FCFEFF; }

header.active .button { border: 1px solid #FCFEFF; }

#menu-btn { display: none; background-color: transparent; position: fixed; cursor: pointer; z-index: 105; height: 50px; border: none; width: 50px; right: 55px; top: 15px; padding: 0 5px; outline: none; }

#menu-btn span, #menu-btn span::before, #menu-btn span::after { content: ""; width: 40px; height: 2px; display: block; position: absolute; background-color: #4B4F6A; -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.5); box-shadow: 0 0 2px rgba(0, 0, 0, 0.5); }

#menu-btn span::before { top: 13px; }

#menu-btn span::after { bottom: 13px; }

.menu { margin-left: auto; }

.menu ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-line-pack: center; align-content: center; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }

.menu ul li { list-style: none; cursor: pointer; display: inline-block; font-size: 0; }

.menu ul li a { color: #4B4F6A; font-family: "Playfair Display", serif; font-size: 18px; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: 0.2em; padding: 0 1em; letter-spacing: 1px; -webkit-transition: all 0.2s linear; transition: all 0.2s linear; display: inline-block; }

.menu ul li a:hover { font-weight: bold; }

.menu ul li a:before { display: block; content: attr(title); font-weight: bold; height: 0; overflow: hidden; visibility: hidden; }

.logo a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; height: 45px; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-bottom: 0; }

.logo a img { width: 100%; height: 100%; -o-object-fit: contain; object-fit: contain; }

.logo-img { margin-top: 1em; height: 200px; -ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center; width: auto; text-align: center; margin: 0 auto; -o-object-fit: contain; object-fit: contain; }

.logo-img3 { margin: 1em 0 3em; height: 200px; width: auto; -o-object-fit: contain; object-fit: contain; }

/* ACCUEIL **********************************/
section#accueil > div { padding: 0; }

#accueil { position: relative; height: 100vh; width: 100vw; }

#accueil img { -webkit-transition: opacity 15s ease-in-out; transition: opacity 15s ease-in-out; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

#accueil::after { content: ''; position: absolute; top: 0; right: 0; width: 100%; background-color: rgba(0, 0, 0, 0.25); height: 100%; }

#accueil .accueil-container { width: 85%; height: auto; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); z-index: 44; text-align: center; }

#accueil .accueil-container img, #accueil .accueil-container svg { width: 200px; height: auto; visibility: hidden; -webkit-filter: brightness(0) invert(1); filter: brightness(0) invert(1); }

#accueil .accueil-container h2 { text-transform: uppercase; }

#accueil .accueil-container h2, #accueil .accueil-container h3 { color: #FCFEFF; }

.overflow { overflow: hidden; margin: 0; padding: 0 !important; }

.parallax { width: 100%; height: 100%; background-position: center; }

.parallax::after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }

.parallax > div { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 60px; z-index: 1; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

/* PROJET ***********************************/
.combe-row { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }

.combe-row .text { width: 35%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.combe-row .image { width: 60%; overflow: hidden; }

.combe-row .image img { -webkit-transition: all 0.7s linear; transition: all 0.7s linear; }

#projet h3 { text-align: left; font-size: 22px; color: #4B4F6A; margin-bottom: 0.5em; }

#projet .projet-quote { font-size: 25px; margin-bottom: 1em; font-weight: bold; }

#projet .text h2 { color: #4B4F6A; margin-top: 1em; }

#projet .text-container { text-align: center; }

#projet .text-container h2, #projet .text-container p { text-align: left; }

/*ARCHITECTURE ********************************/
#architecture .combe-row { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }

#architecture .text-container { text-align: center; }

#architecture .text-container h2, #architecture .text-container p { text-align: left; }

.img-section { margin: 6em 0 0 0; }

/* SITUATION ********************************/
#situation * { color: #4B4F6A; }

#environnement * { color: #4B4F6A; }

/* VILLAS ****************************/
.table { max-width: 100%; border-collapse: collapse; border-spacing: 0; }

.table td { padding: 1em 2em; border: none; width: auto; }

.table .table-header td { font-size: 18px; font-weight: bold; text-transform: uppercase; }

.table .table-data:nth-child(even) { background-color: #E8DACE; }

.table .table-data { cursor: pointer; -webkit-transition: all 0.5s linear; transition: all 0.5s linear; }

.table .table-data:hover { background-color: #b9a99a; }

.villaA-svg:hover .table-data { background-color: red; }

.villas { padding: 100px 200px 0px 200px; text-align: center; }

.villas * { color: #4B4F6A; }

.villas h2 { letter-spacing: 3px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.villas h2 img { width: 40%; margin-left: 1.5em; }

.villas .text-villas { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; text-align: justify; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-bottom: 5em; }

.villas .text-villas div { width: 45%; }

.villas .logo-img2 { display: inline-block; position: relative; height: 200px; margin: 0 auto; width: auto; -o-object-fit: contain; object-fit: contain; }

.villas .button { margin: 2em 0; }

.villas .plan-container { margin: 100px auto 50px; max-width: 100%; padding: 1em 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }

.villas .plan-container .plan-details { width: 35%; }

.villas .plan-container .plan-details .plan-tables { color: #4B4F6A; text-align: left; }

.villas .plan-container .plan-details .plan-tables table { width: 100%; border-collapse: separate; border-spacing: 0 0.8em; }

.villas .plan-container .plan-details .plan-tables table tr { font-size: 18px; padding-bottom: 1em; }

.villas .plan-container .plan-details .plan-tables table th { font-weight: bold; width: 55%; }

.villas .plan-container .plan-details .small-plan-img { margin: 2em 0; }

.villas .plan-container .plan-details .small-plan-img img { height: 150px; -o-object-fit: contain; object-fit: contain; }

.villas .plan-container .plan-img { width: 45%; height: 850px; }

.villas .plan-container .plan-img img { width: 100%; height: 100%; -o-object-fit: contain; object-fit: contain; }

.villas .plan-container .plan-img .image-container { height: 500px; position: relative; display: block; }

.villas .plan-container .plan-img .image-container img { width: 100%; height: 100%; -o-object-fit: contain; object-fit: contain; display: block; }

.villas .plan-container .plan-img .image-container .span-title { position: absolute; top: 0%; left: 0%; font-size: 22px; z-index: 100; background-color: rgba(255, 255, 255, 0.6); color: #4B4F6A; text-align: center; display: none; width: 100%; height: 100%; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-weight: bold; }

.villas .plan-container .plan-img .image-container:hover .span-title { display: -webkit-box; display: -ms-flexbox; display: flex; }

.villas .plan-container .plan-img .image-thumbs { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 2em 0; }

.villas .plan-container .plan-img .image-thumbs div { width: 25%; opacity: 0.8; height: 300px; cursor: pointer; }

.villas .plan-container .plan-img .image-thumbs div span { display: inline-block; width: 100%; text-align: center !important; }

.villas .plan-container .plan-img .image-thumbs div:hover { opacity: 1; }

.facade-wrapper { margin: 50px 0; }

.facade-wrapper svg { width: 100%; height: 100%; }

.facade-wrapper svg .villaA-svg, .facade-wrapper svg .villaB-svg, .facade-wrapper svg .villaC-svg { -webkit-transition: all 0.4s linear; transition: all 0.4s linear; }

.facade-wrapper svg .villaA-svg:hover, .facade-wrapper svg .villaB-svg:hover, .facade-wrapper svg .villaC-svg:hover { fill: rgba(231, 218, 206, 0.7); }

.facade-wrapper svg g:hover .text-test { fill: #4B4F6A; }

text:hover .villaA-svg { width: 100%; height: 100%; fill: rgba(231, 218, 206, 0.7) !important; }

.villas-nav-container { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 4em auto; width: 70%; }

.tab { width: 100%; overflow-x: auto; }

.fullscreen, .fullMap { position: fixed; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height: 100%; z-index: 999; background-color: rgba(255, 255, 255, 0.75); -webkit-transition-duration: .5s; transition-duration: .5s; opacity: 0; visibility: hidden; padding: 40px; }

.fullscreen .close-btn, .fullMap .close-btn { position: absolute; top: 10px; right: 20px; background: none; border: none; width: 40px; height: 40px; font-size: 30px; color: #4B4F6A !important; z-index: 9999; }

.fullMap { padding: 50px !important; }

.fullscreen.active, .fullMap.active { opacity: 1; visibility: visible; }

.fullscreen * { width: 100%; height: 100%; }

.fullMap * { width: 100%; height: 100%; }

.fullMap * img { -o-object-fit: contain; object-fit: contain; }

.fullscreen > div > div, .fullMap > div > div { opacity: 0; visibility: hidden; }

.fullscreen.active > div > div, .fullMap.active > div > div { opacity: 1; visibility: visible; -webkit-transition-duration: .5s; transition-duration: .5s; }

.full-img-wrap { position: relative; }

.fullscreen.active .full-img { -webkit-transform: scale(1); transform: scale(1); }

.fullscreen iframe, .fullMap img { display: none; }

.fullscreen iframe.active, .fullMap img.active { display: block; }

/* GALERIE **********************************/
section.galerie > div { padding: 50px 0 50px 0; }

.galerie { background-color: #FFF; margin: 50px 0; }

.galerie h2 { text-align: center; color: #4B4F6A; }

.splide { position: relative; width: 100%; }

.splide .splide__track .splide__list .splide__slide { width: 50%; -webkit-transition: all 0.4s linear; transition: all 0.4s linear; }

.splide .splide__track .splide__list .splide__slide img { width: 100%; height: 100%; -o-object-fit: contain; object-fit: cover; cursor: pointer; }

.splide .arrows { margin: auto; text-align: center; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; margin: 0 auto; }

.splide .arrows div { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: relative; }

.splide .arrows div button { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); border: none; padding: 5px 20px; background: transparent; font-size: 70px; color: #E8DACE; -webkit-transition: all 0.2s linear; transition: all 0.2s linear; }

.splide .arrows div .prev { left: 26%; }

.splide .arrows div .prev span { font-weight: 100; }

.splide .arrows div .prev:hover { left: 25%; }

.splide .arrows div .next { right: 26%; }

.splide .arrows div .next:hover { right: 25%; }

.splide .splide__pagination { display: none !important; }

.splide .st0 { fill: #FFFFFF; stroke: #4D4D4D; stroke-width: 3; stroke-miterlimit: 10; }

/* PARTENAIRES **********************************/
section#partenaires > div { padding-top: 0; }

#partenaires { margin-bottom: 4em; }

#partenaires h2 { text-align: center; margin-bottom: 2em; }

#partenaires .partenaires-box { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }

#partenaires .partenaires-box div { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-preferred-size: 30%; flex-basis: 30%; margin-bottom: 2em; min-height: 200px; }

#partenaires .partenaires-box div h3 { position: relative; padding: 0 1em; }

#partenaires .partenaires-box div h3:before { content: ''; width: 100%; height: 1px; background-color: #E8DACE; position: absolute; bottom: -4px; left: 0; }

#partenaires .partenaires-box div a { display: inline-block; max-width: 250px; }

#partenaires .partenaires-box div a img { width: 100%; height: 100%; }

/* CONTACT **********************************/
section#contact > div { padding: 0 0px; }

#contact { background-color: #F3F3F4; position: relative; }

#contact h2 { margin-bottom: 1.5em; font-size: 36px; }

#contact .button { margin: 2em 0 0 0; }

#contact .button:hover { border: 1px solid #4B4F6A; }

#contact .contact-container { display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; height: 100%; }

#contact .contact-container .contact-container-child { width: 50%; position: relative; }

#contact .contact-container .contact-container-child h3 { text-align: center; font-size: 24px; }

#contact .contact-container .contact-container-child:nth-child(1) { padding: 100px 0 100px 200px; }

#contact .contact-container .contact-container-child:nth-child(2) { padding: 100px 0px 100px 0; }

#contact .contact-container .contact-container-child:nth-child(2) h2 { text-align: center; padding: 0 2em; }

#contact .contact-container .contact-container-child::after { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; background-color: rgba(255, 255, 255, 0.4); z-index: -2; }

#contact .contact-container .contact-container-child .client-detail { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

#contact .contact-container .contact-container-child .client-detail div { width: 80%; margin: 2em 0; text-align: center; }

#contact .contact-container .contact-container-child .client-detail div .client-logo { width: 350px; margin: 0.5em auto; border: none; }

#contact .contact-container .contact-container-child .client-detail div a:hover { font-weight: bold; }

#avp { position: absolute; bottom: 0.5em; width: 100%; text-align: right; padding-right: 20px; color: #4B4F6A; }

#avp p, #avp a { font-size: 12px; }

input[type="text"], input[type="email"], textarea { background-color: transparent; margin-bottom: 15px; color: #4B4F6A; font-weight: bold; padding: 15px; border: none; resize: none; width: 70%; border-bottom: solid 2px #4B4F6A; font-size: 18px; font-family: "Lato", sans-serif; }

input:focus, textarea:focus { -webkit-box-shadow: 0 0 0 4px #A4A39F; box-shadow: 0 0 0 4px #A4A39F; }

textarea { color: #4B4F6A; }

input::-webkit-input-placeholder, message::-webkit-input-placeholder { color: #4B4F6A; font-size: 16px; }

input:-ms-input-placeholder, message:-ms-input-placeholder { color: #4B4F6A; font-size: 16px; }

input::-moz-placeholder, message::-moz-placeholder { color: #4B4F6A; font-size: 16px; }

::-webkit-input-placeholder { /* Chrome */ color: #4B4F6A; font-size: 16px; }

:-ms-input-placeholder { /* IE 10+ */ color: #4B4F6A; font-size: 16px; }

::-moz-placeholder { /* Firefox 19+ */ color: #4B4F6A; font-size: 16px; }

:-moz-placeholder { /* Firefox 4 - 18 */ color: #4B4F6A; font-size: 16px; }

/* FOOTER ***********************************/
footer { background-color: #FCFEFF; padding: 15px 200px; }

footer * { color: #4B4F6A; font-weight: 600; }

footer > div { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

footer > div .logos img { width: 150px; }

footer > div .menu a { margin-left: 1.5em; font-size: 15px; }

footer > div .menu a:hover { color: #E8DACE; }

/******************************/
@media only screen and (max-width: 1700px) { .accueil-container h2 { font-size: 48px; right: 8%; }
  #contact .contact-container .contact-container-child:nth-child(2) { padding-left: 0px; }
  .from-left { -webkit-transform: translateX(-30%); transform: translateX(-30%); }
  .from-right { -webkit-transform: translateX(30%); transform: translateX(30%); }
  section.galerie > div { padding: 50px 0; }
  #villa-B { margin-bottom: 100px; } }

@media only screen and (max-width: 1500px) { header .logo h1 { font-size: 22px; }
  header .menu ul li a { font-size: 15px; }
  .accueil-container h2 { font-size: 48px; right: 6%; }
  .villas .plan-container { margin-bottom: 50px; }
  #galerie { margin-bottom: 0; }
  section#partenairesn > div { padding: 50px 100px 0 100px; }
  #contact h2 { font-size: 32px; }
  #contact .contact-container .contact-container-child:nth-child(1) { padding: 100px 0 50px 100px; }
  #contact .contact-container .contact-container-child:nth-child(2) { padding: 100px 0px 100px 0; }
  #contact .contact-container .contact-container-child h3 { font-size: 22px; }
  #contact .contact-container .contact-container-child .client-detail div .client-logo { width: 250px; } }

@media only screen and (max-width: 1400px) { h2 { font-size: 36px; }
  header { padding: 10px 100px; }
  section > div { padding: 100px 100px 0 100px; }
  .from-left { -webkit-transform: translateX(-20%); transform: translateX(-20%); }
  .from-right { -webkit-transform: translateX(20%); transform: translateX(20%); }
  .villas { padding: 100px 100px 0 100px; }
  .villas .plan-container { margin-bottom: 50px; }
  .splide .arrows div .prev { left: 27%; }
  .splide .arrows div .prev:hover { left: 26%; }
  .splide .arrows div .next { right: 24%; }
  .splide .arrows div .next:hover { right: 23%; } }

@media only screen and (max-width: 1280px) { h1 { font-size: 26px; }
  #menu-btn { display: block; }
  header .menu { position: fixed; top: 80px; background: #E8DACE; padding: 15px; width: 300px; height: 100%; right: -300px; -webkit-transition-duration: .6s; transition-duration: .6s; }
  header .menu ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; height: 80%; }
  header .menu li a { color: #4B4F6A; margin: 1em 0; padding: 0em 1.5em; }
  header .menu.active { right: 0; }
  section#situation > div { padding-bottom: 0 !important; }
  section#partenaires > div { padding: 100px 50px 0 50px; }
  #partenaires .partenaires-box div a { max-width: 200px; }
  #contact .contact-container .contact-container-child:nth-child(2) h2 { padding: 0 1em; }
  section.galerie > div { padding: 0px 0; }
  section.villas > div { padding: 0 !important; }
  .img-section { margin: 4em 0 0 0; }
  .splide .is-prev { margin-left: -30px; }
  .galerie { margin: 80px 0 !important; }
  .splide .arrows { top: 100%; margin-top: 6em; }
  .splide .arrows div button { position: static; } }

@media only screen and (max-width: 1080px) { .table td { padding: 0.5em 1em; }
  .table .table-header td { font-size: 16px; }
  #accueil .accueil-container h2 { font-size: 48px; }
  #accueil .accueil-container h3 { margin-bottom: 10px; }
  section > div { padding: 50px 100px 0 100px; }
  .combe-row { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  .combe-row .text { width: 100%; }
  .combe-row .image { width: 100%; margin-top: 1em; }
  #projet .button { width: 60%; margin-top: 2em; }
  #architecture .button { width: 60%; margin-top: 3em; }
  #architecture .combe-row { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  #architecture .combe-row .image { margin-top: 2em; }
  #architecture .text-container:last-child { margin-top: 30px; }
  #partenaires .partenaires-box div a { max-width: 200px; }
  section#architecture > div { padding-top: 0; }
  #environnement .combe-row { -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; }
  .villas { padding: 100px  100px 0; }
  .villas .logo-img2 { height: 150px; margin-top: 2em; }
  .villas .text-villas { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  .villas .text-villas div { width: 100%; }
  .villas .facade-wrapper { margin-top: 30px; }
  .villas h2 { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .villas .plan-container { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  .villas .plan-container .plan-details { width: 70%; margin: 0 auto; }
  .villas .plan-container .plan-details .plan-tables table td { text-align: right; }
  .villas .plan-container .plan-details .button { width: 70%; margin: 2em auto; }
  .villas .plan-container .small-plan-img { text-align: center; }
  .villas .plan-container .plan-img { width: 100%; height: auto; margin-top: 1em; }
  .villas .plan-container .plan-img .image-container { height: 400px; }
  .villas .plan-container .plan-img .image-container img { width: 100%; height: 100%; }
  .villas .plan-container .plan-img .image-thumbs { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; gap: 1em; }
  .villas .plan-container .plan-img .image-thumbs div { height: 150px; }
  .villas .plan-container .plan-img .image-thumbs div img { width: 100%; height: 100%; }
  .villas .plan-container#villa-B { -webkit-box-orient: vertical !important; -webkit-box-direction: reverse !important; -ms-flex-direction: column-reverse !important; flex-direction: column-reverse !important; }
  .villas-nav-container { width: 85%; }
  .splide .is-prev { margin-left: -25px; }
  .splide .arrows { margin-top: 5.5em; }
  section#partenaires > div { padding: 50px 50px 0 50px; }
  #contact .contact-container .contact-container-child { padding: 100px; }
  #contact .contact-container .contact-container-child:nth-child(1) { padding: 100px 0 100px 100px; }
  #contact .contact-container .contact-container-child:nth-child(2) { padding: 100px 0px 100px 0; }
  .from-left { -webkit-transform: translateX(-10%); transform: translateX(-10%); }
  .from-right { -webkit-transform: translateX(10%); transform: translateX(10%); } }

@media only screen and (max-width: 900px) { .splide .is-prev { margin-left: -20px; }
  .splide .arrows div button { font-size: 50px; }
  #partenaires { margin-bottom: 0em; }
  #partenaires .partenaires-box div a { max-width: 150px; margin-top: 1em; }
  #partenaires .partenaires-box div { -ms-flex-preferred-size: 100%; flex-basis: 100%; margin-bottom: 2em; min-height: auto; } }

@media only screen and (max-width: 800px) { .table { margin-top: 3em; display: block; }
  .table .table-header td { font-size: 15px; }
  .table td { font-size: 13px; padding: 0.5em; }
  .from-left { -webkit-transform: translateX(-5%); transform: translateX(-5%); }
  .from-right { -webkit-transform: translateX(5%); transform: translateX(5%); }
  header { padding: 10px 50px; }
  .logo { height: 40px; }
  h2 { font-size: 32px; }
  h3 { font-size: 24px; }
  section > div { padding: 50px 50px 0px 50px; }
  #accueil .accueil-container h3 { font-size: 24px; }
  .villas { padding: 50px 50px 0 50px; }
  .villas .text-villas { margin-bottom: 0; }
  .villas-nav-container { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  .villas-nav-container div .button { margin: 0.5em; min-width: 300px; }
  #contact .contact-container { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  #contact .contact-container .contact-container-child { padding: 50px 100px; width: 100%; }
  #avp { text-align: center; padding-right: 0px; }
  .img-section { margin: 2em 0 0 0; } }

@media only screen and (max-width: 725px) { .splide .arrows div .next { right: 25%; }
  .splide .arrows div .next:hover { right: 24%; } }

@media only screen and (max-width: 600px) { .table { width: 100%; }
  .table td:nth-child(3), .table td:nth-child(2) { display: none; }
  header { padding: 0px 30px; }
  header .logo a { height: 35px; }
  h2 { font-size: 28px; }
  p { font-size: 15px; }
  #accueil .accueil-container { width: 100%; padding: 0 0.5em; }
  #accueil .accueil-container h2 { font-size: 36px; }
  #accueil .accueil-container h3 { font-size: 22px; }
  #menu-btn { right: 30px; }
  #menu-btn span { height: 1px; }
  #menu-btn span:before { top: 10px; height: 1px; }
  #menu-btn span:after { bottom: 10px; height: 1px; }
  #accueil .accueil-container svg { width: 150px; }
  #projet .button, #architecture .button { width: 100%; }
  #projet h3 { font-size: 19px; }
  #projet .projet-quote { font-size: 21px; }
  #projet .text-container h2 { margin-top: .5em; }
  .villas .plan-container .plan-details .button { width: 100%; }
  .villas-nav-container { width: 100%; }
  .galerie { margin-top: 70px; }
  .arrows button { padding: 25px 30px 0 30px; }
  .villas .plan-container { margin-bottom: 30px; }
  .villas .plan-container .plan-details { width: 90%; }
  .villas .plan-container .plan-img { height: 550px; }
  #partenaires { margin-bottom: 0em; }
  #partenaires .partenaires-box div a { max-width: 150px; margin-top: 1em; }
  #partenaires .partenaires-box div { -ms-flex-preferred-size: 100%; flex-basis: 100%; margin-bottom: 2em; min-height: auto; }
  .facade-wrapper { margin: 0 0 2em 0; }
  #contact h2 { font-size: 26px; }
  #contact .contact-container .contact-container-child:nth-child(1) { padding: 100px 50px; }
  input[type=text], input[type=email], textarea { width: 100%; }
  #contact .contact-container .contact-container-child .client-detail .client-detail-data .tel-email div span { font-size: 15px; }
  .img-section { margin: 2em 0 0 0; }
  .splide .arrows div button { font-size: 45px; } }

@media only screen and (max-width: 500px) { .splide .is-prev { margin-left: -8px; }
  .splide .arrows { margin-top: 4em; } }

@media only screen and (max-width: 405px) { header { padding: 5px 15px; }
  #accueil .accueil-container h2 { font-size: 34px; letter-spacing: 1.5px; }
  #accueil .accueil-container h3 { font-size: 20px; margin-bottom: 1em; }
  section > div { padding: 50px 30px 0 30px; }
  section#architecture > div { margin-bottom: 0; }
  #architecture .button { margin-bottom: 0; }
  .button { padding: 0.5em 1em; width: 100%; height: auto; }
  .villas { padding: 50px 30px 0 30px; }
  .facade-wrapper { margin-bottom: 0; }
  .villas-nav-container div .button { margin: 0.5em; min-width: 220px; }
  section#partenaires > div { padding: 50px 30px 0 30px; }
  .gal-pan { height: calc(75vw - 120px); }
  input[type="submit"] { padding: 0.8em 2em; }
  #contact .contact-container .contact-container-child:nth-child(1) { padding: 70px 30px; }
  #contact .contact-container .contact-container-child:nth-child(2) { padding: 70px 0px 100px 0; }
  #contact h2 { text-align: center; }
  #contact .contact-container .contact-container-child h3 { font-size: 18px; }
  #avp { padding: 0 0.5em; } }

@media only screen and (max-width: 350px) { .table td:last-child { display: none; } }

@media only screen and (max-width: 740px) and (orientation: landscape) { #accueil .accueil-container img { display: none; }
  #accueil .accueil-container h2 { display: none; } }
/*# sourceMappingURL=style.css.map */