/* VARIABILI */
:root {
    --red: #A73E2D;
    --purple: #513337;
    --dark_purple: #422C2F;
    --green: #66917D;
    --dark_sand: #BFAF9B;
    --sand: #ECE5DD;
    --dark_grey: #383838;
    --black: #000;
    --grey: #B2AAA2;
    --light_grey: #F1F1F1;
    --white: #fff;
    --orange: #ff5722;

    --sans: 'Helvetica';
    --serif: 'Gabriela Stencil';
    --icon: 'Font Awesome 6 Pro';
    --icon_brands: 'Font Awesome 6 Brands';

    --thin: 100;
    --icon_light: 200;
    --light: 300;
    --regular: 400;
    --bold: 700;
    --solid: 900;

    --big: 48px;
    --large: 42px;
    --medium: 32px;
    --lgt_medium: 25px;
    --average: 20px;
    --standard: 17px;
    --mini: 14px;
    --nano: 12px;

}

@font-face { font-family: 'Gabriela Stencil'; src: url('../fonts/GabrielaStencil-Light.woff') format('woff'); font-weight: 300; font-style: normal; font-display: swap; }
@font-face { font-family: 'Helvetica'; src: url('../fonts/Helvetica.woff') format('woff'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Helvetica'; src: url('../fonts/Helvetica-Bold.woff') format('woff'); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Font Awesome 6 Pro'; src:url('../fonts/FontAwesome6Pro-Solid.woff') format('woff'); font-style: normal; font-weight: 900; font-display: swap;}
@font-face { font-family: "Font Awesome 6 Brands"; src:url("../fonts/FontAwesome6Brands-Regular.woff") format("woff"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: 'Font Awesome 6 Pro'; src:url('../fonts/FontAwesome6Pro-Light.woff') format('woff'); font-style: normal; font-weight: 300; font-display: swap;}
@font-face { font-family: 'Font Awesome 6 Pro'; src:url('../fonts/FontAwesome6Pro-Regular.woff') format('woff'); font-style: normal; font-weight: 400; font-display: swap;}

body::-webkit-scrollbar { display: none; }
body { -ms-overflow-style: none; font-family: var(--sans); font-size: var(--standard); }
a { -webkit-transition: all .6s; -moz-transition: all .6s; -o-transition: all .6s; transition: all .6s; }
.text_dyn a, .text_dyn a:hover, .text_dyn a:focus, .text_dyn a:visited {/* color:#5DB59A; */}
.text_dyn .accordion a, .text_dyn .accordion a:hover, .text_dyn .accordion a:focus, .text_dyn .accordion a:visited { color:#3c3c3c; }
input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { opacity:0.9; }
.clear { clear: both; }
.overflow { overflow: hidden; }
.documents, .videos { margin: 20px auto 40px auto; }
.documents .document { margin: 10px; padding: 0  10px 10px 10px; display: block; clear:both; border-bottom: 1px solid #D5D5D5; overflow:hidden; }
.documents .document a { }
.documents .document a:before { margin:0px 10px 0px 0px !important; float:left; }
.documents .document .document_size { float:right; color: #D5D5D5; }
ul.cnt { margin:0; padding:0; display:flex; list-style: none; -ms-box-orient: horizontal; -webkit-align-items: stretch; }
ul.cnt li.half { width:50%; }
.cnt { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -moz-flex; display: -webkit-flex; display: flex; list-style: none; -ms-box-orient: horizontal; -webkit-align-items: center; align-items: flex-start; justify-content: center; }
form .caption-fields .field input[type="phone"]::-webkit-input-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::-moz-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::-ms-input-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::-moz-placeholder { opacity: 0.1; }
form .caption-fields .field input[type="phone"]::placeholder { opacity: 0.1; }
form #showprivacy { width: 100%; }
form .g-recaptcha { width: 100%; }
.form_cnt form .caption-fields .form.field { width: calc(50% - 10px); margin-bottom: 20px; }

#page_error { display: flex; position: fixed; top: 0px; left: 0px; width: 100%; height: 100vh; background-color: rgba(0,0,0,0.75); justify-content: center; align-items: center; z-index: 5000; }
#page_error .cnt-message { background-color: var(--white); padding: 80px; position: relative; }
#page_error .cnt-message .close { position: absolute; top: 10px; right: 10px; cursor: pointer; }
#page_error.none { display: none; }

h1, h2, h3, h4, h5, h6 { margin: 0px; }
* { outline: none; }

.overlay { display: none;}

/* Header */
header { width: 60px; height: 100%; background-color: var(--white); text-align: center; z-index: 99; position: fixed; right: 0; top: 0; bottom: 2px; padding: 0;}
header .sections { justify-content: space-between; flex-direction: column; height: 100%; display: flex; text-align: left; align-items: center; }
header .sections .top { width: 100%; text-align: left; }
header .sections .bottom { width: 100%; text-align: left; }
header #menu_btn { justify-content: space-between; flex-direction: column; width: 100%; height: 108px; display: flex; background-color: var(--grey); font-family: var(--serif); font-size: 16px; color: var(--white); text-transform: lowercase; text-align: center; line-height: 16px; letter-spacing: 0; cursor: pointer; }
header #menu_btn .bars { text-align: left; }
header #menu_btn .bars .bar { width: 20px; background-color: var(--white); text-align: left; }
header #booking_btn { justify-content: center; height: 60px; display: flex; background-color: var(--green); text-align: center; align-items: center; cursor: pointer; }
header .language_cnt { text-align: center; position: relative; }
header .language_cnt #language_btn { width: 60px; height: 60px; background-color: var(--light_grey); font-family: "Helvetica"; font-size: 14px; color: #2A2A2A; text-transform: uppercase; text-align: center; line-height: 60px; letter-spacing: 0; z-index: 2; position: relative; }
header .language_cnt #language { text-align: center; z-index: 1; position: absolute; left: 0px; right: -100%; top: 0; bottom: 0px; }
header .language_cnt #language li { text-align: center; }
header .language_cnt #language li a { width: 60px; display: block; background-color: var(--grey); font-family: "Helvetica"; font-size: 14px; color: var(--white); text-transform: uppercase; text-align: center; line-height: 60px; letter-spacing: 0; }
header #contact_btn { text-align: center; cursor: pointer; }
header #contact_btn a { display: inline-block; background-color: var(--red); text-align: center; }
header #contact_btn a:before { font-family: 'Font Awesome 6 Pro'; font-weight: var(--light); font-size: 28px; color: var(--white); text-transform: lowercase; text-align: center; line-height: 60px; letter-spacing: 0; content: "\f0e0"; }
header #sidebar_logo { text-align: center; }
.whatsapp_btn a {  display: block; background-color: #25d366; text-align: center; font-size: 0;}
.whatsapp_btn a:before { font-family: 'Font Awesome 6 Brands'; font-weight: var(--light); font-size: 28px; color: var(--white); text-transform: lowercase; text-align: center; line-height: 60px; letter-spacing: 0; content: "\f232"; }
/* slideshow */
.slideshow_cnt { background-color: #D8D8D8; text-align: center; position: relative; }
.slideshow_cnt:before { position: absolute; left: 0; bottom: 0; content: ''; z-index: 2; width: 100%; height: 290px; background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7175463935574229) 100%); }
.slideshow_cnt:after { position: absolute; left: 0; top: 0; content: ''; z-index: 2; width: 100%; height: 290px; background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7175463935574229) 100%); }
.slideshow_cnt .logo_cnt { width: 150px; text-align: center; z-index: 9; position: absolute; left: 0; right: 0; top: 40px; }
.slideshow_cnt .section_caption { text-align: center; z-index: 2; position: absolute; left: 0; right: 0; bottom: 10%; }
.slideshow_cnt .section_caption .top_seo { color: var(--white); font-size: var(--nano); margin-bottom: 15px; padding: 0 15px;}
.slideshow_cnt .section_caption .title { font-family: var(--serif); font-size: var(--big); color: var(--white); text-align: center; line-height: 1; letter-spacing: 0; text-shadow: 0 0 14px rgba(0,0,0,0.50); }
.slideshow_cnt .section_caption .text { font-family: var(--serif); font-size: 23px; color: var(--white); text-align: center; line-height: 1; letter-spacing: 0; text-shadow: 0 0 14px rgba(0,0,0,0.50); }
.slideshow_cnt .slick-dots { text-align: center; z-index: 2; position: absolute; left: 0; right: 0; bottom: 30px; }
.slideshow_cnt .slick-dots li { text-align: left;  margin: 0 5px; transition: .4s; transform: rotate(45deg); }
.slideshow_cnt .slick-dots li button { width: 10px; height: 10px; background-color: rgba(255, 255, 255, 0.2749945367132867); text-align: left; }
.slideshow_cnt .slick-dots li.slick-active { text-align: left; transform: rotate(135deg);}
.slideshow_cnt .slick-dots li.slick-active button { width: 10px; height: 10px; background-color: var(--white); text-align: left; }
.slideshow_cnt img { width: 100%; text-align: left; }
#slideshow img { min-width: 100%; min-height: 60vh; max-width: 100vw; object-fit: cover; opacity: .8;}
#slideshow { background-color: var(--black); }

/* language */
#language_btn { cursor: pointer; }

.slideshow_cnt .logo_cnt { margin: 0 auto; width: 550px;}
#wrapper { padding-right: 60px }
#slideshow img {max-height: 100vh;object-fit: cover;}
body.home #slideshow img { height: 100vh; }
.slideshow_cnt .section_caption {bottom: 210px; padding: 0 15px;}
.slideshow_cnt .section_caption .title #page_name { margin: 0 0 10px 0;}
.slideshow_cnt .slick-dots {bottom: 8px;}

.no_slideshow .topbar {display: flex;justify-content: center;align-items: center;position: relative;width: 100%;height: 108px;background-color: #422c30;}
.no_slideshow #booking_destination {display: block;position: relative;width: 100%;height: auto; padding: 30px 15px; background-color: var(--purple);}
.no_slideshow #booking_destination #booking_cnt { position: relative; bottom: unset; }
.no_slideshow .bottombar {display: flex;justify-content: center;align-items: center;flex-direction: column;padding-top: 30px;background-color: var(--sand);}
.no_slideshow .section_caption .title {font-family: var(--serif);font-size: var(--big);color: var(--red);text-align: center;line-height: 1;letter-spacing: 0;/* text-shadow: 0 0 14px rgba(0,0,0,0.50); */}
.no_slideshow .section_caption_alt .title {font-family: var(--serif);font-size: var(--big);color: var(--red);text-align: center;line-height: 1;letter-spacing: 0;/* text-shadow: 0 0 14px rgba(0,0,0,0.50); */}
.no_slideshow .section_caption .text { font-family: var(--serif); font-size: 23px; color: var(--white); text-align: center; line-height: 1; letter-spacing: 0; text-shadow: 0 0 14px rgba(0,0,0,0.50); }
.no_slideshow .sub_title { margin-top: 0; color: var(--dark_grey);}

header #contact_btn a { font-size: 0; width: 100% }
header .sections .bottom {padding-bottom: 20px}

/* language */
header .language_cnt #language {left: inherit; transition: .4s}
header .language_cnt #language.fired { right: 60px }
header .language_cnt #language ul {margin: 0; display: flex;}
header .language_cnt #language_btn {transition: .4s}
header .language_cnt #language_btn.fired { color: #ccc }

/* menu btn */
header #menu_btn .bars { margin: 0 auto }
header #menu_btn { padding: 20px; transition: .4s }
header #menu_btn span { transform: rotate(-90deg); }
header #menu_btn.fired { background-color: #513337 }

/* Menu Open */
#menu_open { z-index: 2000; display: none;}

/* 404 */
.body_404 #page { padding-top: 100px; min-height: calc(100vh - 267px);}
.body_404 .section_title_3 { font-size: 10vw;}
